yum-mirror/glslang

git clone https://git.yummers.dev/yum-mirror/glslang

Hector, TobiasOmit SPV NonUniform decoration with descriptor heaps3dc6399e

main
7.8 KiB145 linesraw
1spv.descriptorHeap.valid.frag
2// Module Version 10400
3// Generated by (magic number): 8000b
4// Id's are bound by 83
5
6                              Capability Shader
7                              Capability DescriptorHeapEXT
8                              Capability ShaderNonUniformEXT
9                              Capability RuntimeDescriptorArrayEXT
10                              Capability UniformBufferArrayNonUniformIndexingEXT
11                              Capability StorageBufferArrayNonUniformIndexingEXT
12                              Extension  "SPV_EXT_descriptor_heap"
13                              Extension  "SPV_EXT_descriptor_indexing"
14               1:             ExtInstImport  "GLSL.std.450"
15                              MemoryModel Logical GLSL450
16                              EntryPoint Fragment 4  "main" 9 15 25 34 40 42 54 67 82
17                              ExecutionMode 4 OriginUpperLeft
18                              Source GLSL 460
19                              SourceExtension  "GL_EXT_descriptor_heap"
20                              SourceExtension  "GL_EXT_nonuniform_qualifier"
21                              Name 4  "main"
22                              Name 9  "fragColor"
23                              Name 15  "heapTexture2D"
24                              Name 25  "heapSampler"
25                              Name 34  "uvs"
26                              Name 37  "UniformBuffer"
27                              MemberName 37(UniformBuffer) 0  "colorOffset"
28                              Name 40  "heapUniformBuffer"
29                              Name 42  "index"
30                              Name 50  "StorageBufferA"
31                              MemberName 50(StorageBufferA) 0  "a"
32                              Name 54  "heapStorageBufferA"
33                              Name 64  "StorageBufferB"
34                              MemberName 64(StorageBufferB) 0  "b"
35                              Name 67  "heapStorageBufferB"
36                              Name 82  "heapTexture3D"
37                              Decorate 9(fragColor) Location 0
38                              Decorate 15(heapTexture2D) Binding 1
39                              Decorate 15(heapTexture2D) DescriptorSet 0
40                              Decorate 25(heapSampler) Binding 0
41                              Decorate 25(heapSampler) DescriptorSet 0
42                              Decorate 34(uvs) Location 0
43                              Decorate 37(UniformBuffer) Block
44                              MemberDecorate 37(UniformBuffer) 0 Offset 0
45                              Decorate 40(heapUniformBuffer) Binding 4
46                              Decorate 40(heapUniformBuffer) DescriptorSet 0
47                              Decorate 42(index) Flat
48                              Decorate 42(index) Location 1
49                              Decorate 50(StorageBufferA) Block
50                              MemberDecorate 50(StorageBufferA) 0 Offset 0
51                              Decorate 54(heapStorageBufferA) Binding 2
52                              Decorate 54(heapStorageBufferA) DescriptorSet 0
53                              Decorate 64(StorageBufferB) Block
54                              MemberDecorate 64(StorageBufferB) 0 Offset 0
55                              Decorate 67(heapStorageBufferB) Binding 3
56                              Decorate 67(heapStorageBufferB) DescriptorSet 0
57                              Decorate 82(heapTexture3D) Binding 0
58                              Decorate 82(heapTexture3D) DescriptorSet 0
59               2:             TypeVoid
60               3:             TypeFunction 2
61               6:             TypeFloat 32
62               7:             TypeVector 6(float) 4
63               8:             TypePointer Output 7(fvec4)
64    9(fragColor):      8(ptr) Variable Output
65              10:             TypeImage 6(float) 2D sampled format:Unknown
66              11:             TypeInt 32 0
67              12:     11(int) Constant 28
68              13:             TypeArray 10 12
69              14:             TypePointer UniformConstant 13
7015(heapTexture2D):     14(ptr) Variable UniformConstant
71              16:             TypeInt 32 1
72              17:     16(int) Constant 27
73              18:             TypePointer UniformConstant 10
74              21:             TypeSampler
75              22:     11(int) Constant 1
76              23:             TypeArray 21 22
77              24:             TypePointer UniformConstant 23
78 25(heapSampler):     24(ptr) Variable UniformConstant
79              26:     16(int) Constant 0
80              27:             TypePointer UniformConstant 21
81              30:             TypeSampledImage 10
82              32:             TypeVector 6(float) 2
83              33:             TypePointer Input 32(fvec2)
84         34(uvs):     33(ptr) Variable Input
8537(UniformBuffer):             TypeStruct 7(fvec4)
86              38:             TypeRuntimeArray 37(UniformBuffer)
87              39:             TypePointer Uniform 38
8840(heapUniformBuffer):     39(ptr) Variable Uniform
89              41:             TypePointer Input 11(int)
90       42(index):     41(ptr) Variable Input
91              45:             TypePointer Uniform 7(fvec4)
9250(StorageBufferA):             TypeStruct 7(fvec4)
93              51:     11(int) Constant 2
94              52:             TypeArray 50(StorageBufferA) 51
95              53:             TypePointer StorageBuffer 52
9654(heapStorageBufferA):     53(ptr) Variable StorageBuffer
97              55:     16(int) Constant 1
98              56:    6(float) Constant 1065353216
99              57:    6(float) Constant 1073741824
100              58:    6(float) Constant 1077936128
101              59:    6(float) Constant 1082130432
102              60:    7(fvec4) ConstantComposite 56 57 58 59
103              61:             TypePointer StorageBuffer 7(fvec4)
104              63:             TypeVector 6(float) 3
10564(StorageBufferB):             TypeStruct 63(fvec3)
106              65:             TypeRuntimeArray 64(StorageBufferB)
107              66:             TypePointer StorageBuffer 65
10867(heapStorageBufferB):     66(ptr) Variable StorageBuffer
109              70:     11(int) Constant 0
110              71:             TypePointer StorageBuffer 6(float)
111              74:             TypePointer Output 6(float)
112              79:             TypeImage 6(float) 3D sampled format:Unknown
113              80:             TypeArray 79 22
114              81:             TypePointer UniformConstant 80
11582(heapTexture3D):     81(ptr) Variable UniformConstant
116         4(main):           2 Function None 3
117               5:             Label
118              19:     18(ptr) AccessChain 15(heapTexture2D) 17
119              20:          10 Load 19
120              28:     27(ptr) AccessChain 25(heapSampler) 26
121              29:          21 Load 28
122              31:          30 SampledImage 20 29
123              35:   32(fvec2) Load 34(uvs)
124              36:    7(fvec4) ImageSampleImplicitLod 31 35
125                              Store 9(fragColor) 36
126              43:     11(int) Load 42(index)
127              44:     11(int) CopyObject 43
128              46:     45(ptr) AccessChain 40(heapUniformBuffer) 44 26
129              47:    7(fvec4) Load 46
130              48:    7(fvec4) Load 9(fragColor)
131              49:    7(fvec4) FAdd 48 47
132                              Store 9(fragColor) 49
133              62:     61(ptr) AccessChain 54(heapStorageBufferA) 55 26
134                              Store 62 60
135              68:     11(int) Load 42(index)
136              69:     11(int) CopyObject 68
137              72:     71(ptr) AccessChain 67(heapStorageBufferB) 69 26 70
138              73:    6(float) Load 72
139              75:     74(ptr) AccessChain 9(fragColor) 70
140              76:    6(float) Load 75
141              77:    6(float) FAdd 76 73
142              78:     74(ptr) AccessChain 9(fragColor) 70
143                              Store 78 77
144                              Return
145                              FunctionEnd