blob: 8d1a6bef4d9730b762d57d09ccc48a93cf4115a0 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
|
result code = 0
standard error = {
}
standard output = {
// Module Version 10000
// Generated by (magic number): 80007
// Id's are bound by 129
Capability Shader
Capability Float16
Capability StorageImageExtendedFormats
1: ExtInstImport "GLSL.std.450"
MemoryModel Logical GLSL450
EntryPoint GLCompute 4 "main" 13
ExecutionMode 4 LocalSize 4 4 1
Source GLSL 450
SourceExtension "GL_EXT_shader_16bit_storage"
SourceExtension "GL_EXT_shader_explicit_arithmetic_types"
SourceExtension "GL_GOOGLE_cpp_style_line_directive"
Name 4 "main"
Name 9 "pos_0"
Name 13 "gl_GlobalInvocationID"
Name 22 "pos2_0"
Name 36 "h_0"
Name 40 "halfTexture_0"
Name 51 "h2_0"
Name 54 "halfTexture2_0"
Name 65 "h4_0"
Name 68 "halfTexture4_0"
Name 108 "index_0"
Name 117 "_S1"
MemberName 117(_S1) 0 "_data"
Name 119 "outputBuffer_0"
Decorate 13(gl_GlobalInvocationID) BuiltIn GlobalInvocationId
Decorate 40(halfTexture_0) DescriptorSet 0
Decorate 40(halfTexture_0) Binding 1
Decorate 54(halfTexture2_0) DescriptorSet 0
Decorate 54(halfTexture2_0) Binding 2
Decorate 68(halfTexture4_0) DescriptorSet 0
Decorate 68(halfTexture4_0) Binding 3
Decorate 116 ArrayStride 4
MemberDecorate 117(_S1) 0 Offset 0
Decorate 117(_S1) BufferBlock
Decorate 119(outputBuffer_0) DescriptorSet 0
Decorate 119(outputBuffer_0) Binding 0
Decorate 128 BuiltIn WorkgroupSize
2: TypeVoid
3: TypeFunction 2
6: TypeInt 32 1
7: TypeVector 6(int) 2
8: TypePointer Function 7(ivec2)
10: TypeInt 32 0
11: TypeVector 10(int) 3
12: TypePointer Input 11(ivec3)
13(gl_GlobalInvocationID): 12(ptr) Variable Input
19: TypeVector 10(int) 2
23: 6(int) Constant 3
24: 10(int) Constant 1
25: TypePointer Function 6(int)
29: 10(int) Constant 0
34: TypeFloat 16
35: TypePointer Function 34(float16_t)
37: TypeFloat 32
38: TypeImage 37(float) 2D nonsampled format:R16f
39: TypePointer UniformConstant 38
40(halfTexture_0): 39(ptr) Variable UniformConstant
45: TypeVector 37(float) 4
49: TypeVector 34(float16_t) 2
50: TypePointer Function 49(f16vec2)
52: TypeImage 37(float) 2D nonsampled format:Rg16f
53: TypePointer UniformConstant 52
54(halfTexture2_0): 53(ptr) Variable UniformConstant
60: TypeVector 37(float) 2
63: TypeVector 34(float16_t) 4
64: TypePointer Function 63(f16vec4)
66: TypeImage 37(float) 2D nonsampled format:Rgba16f
67: TypePointer UniformConstant 66
68(halfTexture4_0): 67(ptr) Variable UniformConstant
84:34(float16_t) Constant 0
113: 6(int) Constant 4
116: TypeRuntimeArray 6(int)
117(_S1): TypeStruct 116
118: TypePointer Uniform 117(_S1)
119(outputBuffer_0): 118(ptr) Variable Uniform
120: 6(int) Constant 0
124: TypePointer Uniform 6(int)
127: 10(int) Constant 4
128: 11(ivec3) ConstantComposite 127 127 24
4(main): 2 Function None 3
5: Label
9(pos_0): 8(ptr) Variable Function
22(pos2_0): 8(ptr) Variable Function
36(h_0): 35(ptr) Variable Function
51(h2_0): 50(ptr) Variable Function
65(h4_0): 64(ptr) Variable Function
108(index_0): 25(ptr) Variable Function
14: 11(ivec3) Load 13(gl_GlobalInvocationID)
15: 10(int) CompositeExtract 14 0
16: 10(int) CompositeExtract 14 1
17: 10(int) CompositeExtract 14 2
18: 11(ivec3) CompositeConstruct 15 16 17
20: 19(ivec2) VectorShuffle 18 18 0 1
21: 7(ivec2) Bitcast 20
Store 9(pos_0) 21
26: 25(ptr) AccessChain 9(pos_0) 24
27: 6(int) Load 26
28: 6(int) ISub 23 27
30: 25(ptr) AccessChain 9(pos_0) 29
31: 6(int) Load 30
32: 6(int) ISub 23 31
33: 7(ivec2) CompositeConstruct 28 32
Store 22(pos2_0) 33
41: 38 Load 40(halfTexture_0)
42: 7(ivec2) Load 22(pos2_0)
43: 19(ivec2) Bitcast 42
44: 7(ivec2) Bitcast 43
46: 45(fvec4) ImageRead 41 44
47: 37(float) CompositeExtract 46 0
48:34(float16_t) FConvert 47
Store 36(h_0) 48
55: 52 Load 54(halfTexture2_0)
56: 7(ivec2) Load 22(pos2_0)
57: 19(ivec2) Bitcast 56
58: 7(ivec2) Bitcast 57
59: 45(fvec4) ImageRead 55 58
61: 60(fvec2) VectorShuffle 59 59 0 1
62: 49(f16vec2) FConvert 61
Store 51(h2_0) 62
69: 66 Load 68(halfTexture4_0)
70: 7(ivec2) Load 22(pos2_0)
71: 19(ivec2) Bitcast 70
72: 7(ivec2) Bitcast 71
73: 45(fvec4) ImageRead 69 72
74: 63(f16vec4) FConvert 73
Store 65(h4_0) 74
75: 38 Load 40(halfTexture_0)
76: 7(ivec2) Load 9(pos_0)
77: 19(ivec2) Bitcast 76
78: 7(ivec2) Bitcast 77
79: 35(ptr) AccessChain 51(h2_0) 29
80:34(float16_t) Load 79
81: 35(ptr) AccessChain 51(h2_0) 24
82:34(float16_t) Load 81
83:34(float16_t) FAdd 80 82
85: 63(f16vec4) CompositeConstruct 83 84 84 84
86: 45(fvec4) FConvert 85
ImageWrite 75 78 86
87: 52 Load 54(halfTexture2_0)
88: 7(ivec2) Load 9(pos_0)
89: 19(ivec2) Bitcast 88
90: 7(ivec2) Bitcast 89
91: 63(f16vec4) Load 65(h4_0)
92: 49(f16vec2) VectorShuffle 91 91 0 1
93:34(float16_t) CompositeExtract 92 0
94:34(float16_t) CompositeExtract 92 1
95: 63(f16vec4) CompositeConstruct 93 94 84 84
96: 45(fvec4) FConvert 95
ImageWrite 87 90 96
97: 66 Load 68(halfTexture4_0)
98: 7(ivec2) Load 9(pos_0)
99: 19(ivec2) Bitcast 98
100: 7(ivec2) Bitcast 99
101: 49(f16vec2) Load 51(h2_0)
102:34(float16_t) Load 36(h_0)
103:34(float16_t) Load 36(h_0)
104:34(float16_t) CompositeExtract 101 0
105:34(float16_t) CompositeExtract 101 1
106: 63(f16vec4) CompositeConstruct 104 105 102 103
107: 45(fvec4) FConvert 106
ImageWrite 97 100 107
109: 25(ptr) AccessChain 9(pos_0) 29
110: 6(int) Load 109
111: 25(ptr) AccessChain 9(pos_0) 24
112: 6(int) Load 111
114: 6(int) IMul 112 113
115: 6(int) IAdd 110 114
Store 108(index_0) 115
121: 6(int) Load 108(index_0)
122: 10(int) Bitcast 121
123: 6(int) Load 108(index_0)
125: 124(ptr) AccessChain 119(outputBuffer_0) 120 122
Store 125 123
Return
FunctionEnd
}
|