xref: /aosp_15_r20/external/angle/third_party/glslang/src/Test/baseResults/hlsl.buffer.frag.out (revision 8975f5c5ed3d1c378011245431ada316dfb6f244)
1hlsl.buffer.frag
2Shader version: 500
3gl_FragCoord origin is upper left
40:? Sequence
50:30  Function Definition: foo( ( temp float)
60:30    Function Parameters:
70:?     Sequence
80:31      Branch: Return with expression
90:31        Constant:
100:31          1.000000
110:43  Function Definition: @PixelShaderFunction(vf4; ( temp structure{ temp 4-component vector of float a})
120:43    Function Parameters:
130:43      'input' ( in 4-component vector of float)
140:?     Sequence
150:45      move second child to first child ( temp 4-component vector of float)
160:45        a: direct index for structure ( temp 4-component vector of float)
170:45          'ret' ( temp structure{ temp 4-component vector of float a})
180:45          Constant:
190:45            0 (const int)
200:45        add ( temp 4-component vector of float)
210:45          v24: direct index for structure (layout( row_major std140) uniform 4-component vector of float)
220:45            'anon@4' (layout( row_major std140) uniform block{layout( row_major std140) uniform 4-component vector of float v24})
230:45            Constant:
240:45              0 (const uint)
250:45          vector-scale ( temp 4-component vector of float)
260:45            add ( temp 4-component vector of float)
270:45              add ( temp 4-component vector of float)
280:45                add ( temp 4-component vector of float)
290:45                  add ( temp 4-component vector of float)
300:45                    'input' ( in 4-component vector of float)
310:45                    v1: direct index for structure (layout( row_major std140) uniform 4-component vector of float)
320:45                      'anon@0' (layout( row_major std140) uniform block{layout( row_major std140) uniform 4-component vector of float v1})
330:45                      Constant:
340:45                        0 (const uint)
350:45                  v2: direct index for structure (layout( row_major std430) buffer 4-component vector of float)
360:45                    'anon@1' (layout( row_major std430) readonly buffer block{layout( row_major std430) buffer 4-component vector of float v2})
370:45                    Constant:
380:45                      0 (const uint)
390:45                v3: direct index for structure (layout( row_major std140 offset=0) uniform 4-component vector of float)
400:45                  'anon@2' (layout( row_major std140) uniform block{layout( row_major std140 offset=0) uniform 4-component vector of float v3, layout( row_major std140 offset=20) uniform int i3})
410:45                  Constant:
420:45                    0 (const uint)
430:45              v4: direct index for structure (layout( row_major std430 offset=16) buffer 4-component vector of float)
440:45                'anon@3' (layout( binding=8 row_major std430) readonly buffer block{layout( row_major std430 offset=16) buffer 4-component vector of float v4, layout( row_major std430 offset=48) buffer int i4, layout( row_major std430 offset=60) buffer float f1, layout( row_major std430 offset=64) buffer float f3, layout( row_major std430 offset=68) buffer float f4, layout( row_major std430 offset=72) buffer float f5, layout( row_major std430) buffer float f6, layout( row_major std430 offset=128) buffer float f7, layout( row_major std430 offset=112) buffer 3X4 matrix of float m1, layout( column_major std430 offset=176) buffer 3X4 matrix of float m2, layout( row_major std430 offset=240) buffer 3X4 matrix of float m3, layout( row_major std430 offset=304) buffer 3X4 matrix of float m4})
450:45                Constant:
460:45                  0 (const uint)
470:45            Function Call: foo( ( temp float)
480:46      Branch: Return with expression
490:46        'ret' ( temp structure{ temp 4-component vector of float a})
500:43  Function Definition: PixelShaderFunction( ( temp void)
510:43    Function Parameters:
520:?     Sequence
530:43      move second child to first child ( temp 4-component vector of float)
540:?         'input' ( temp 4-component vector of float)
550:?         'input' ( in 4-component vector of float FragCoord)
560:43      Sequence
570:43        move second child to first child ( temp 4-component vector of float)
580:?           '@entryPointOutput.a' (layout( location=0) out 4-component vector of float)
590:43          a: direct index for structure ( temp 4-component vector of float)
600:43            Function Call: @PixelShaderFunction(vf4; ( temp structure{ temp 4-component vector of float a})
610:?               'input' ( temp 4-component vector of float)
620:43            Constant:
630:43              0 (const int)
640:?   Linker Objects
650:?     'anon@0' (layout( row_major std140) uniform block{layout( row_major std140) uniform 4-component vector of float v1})
660:?     'anon@1' (layout( row_major std430) readonly buffer block{layout( row_major std430) buffer 4-component vector of float v2})
670:?     'anon@2' (layout( row_major std140) uniform block{layout( row_major std140 offset=0) uniform 4-component vector of float v3, layout( row_major std140 offset=20) uniform int i3})
680:?     'anon@3' (layout( binding=8 row_major std430) readonly buffer block{layout( row_major std430 offset=16) buffer 4-component vector of float v4, layout( row_major std430 offset=48) buffer int i4, layout( row_major std430 offset=60) buffer float f1, layout( row_major std430 offset=64) buffer float f3, layout( row_major std430 offset=68) buffer float f4, layout( row_major std430 offset=72) buffer float f5, layout( row_major std430) buffer float f6, layout( row_major std430 offset=128) buffer float f7, layout( row_major std430 offset=112) buffer 3X4 matrix of float m1, layout( column_major std430 offset=176) buffer 3X4 matrix of float m2, layout( row_major std430 offset=240) buffer 3X4 matrix of float m3, layout( row_major std430 offset=304) buffer 3X4 matrix of float m4})
690:?     'anon@4' (layout( row_major std140) uniform block{layout( row_major std140) uniform 4-component vector of float v24})
700:?     '@entryPointOutput.a' (layout( location=0) out 4-component vector of float)
710:?     'input' ( in 4-component vector of float FragCoord)
72
73
74Linked fragment stage:
75
76
77Shader version: 500
78gl_FragCoord origin is upper left
790:? Sequence
800:30  Function Definition: foo( ( temp float)
810:30    Function Parameters:
820:?     Sequence
830:31      Branch: Return with expression
840:31        Constant:
850:31          1.000000
860:43  Function Definition: @PixelShaderFunction(vf4; ( temp structure{ temp 4-component vector of float a})
870:43    Function Parameters:
880:43      'input' ( in 4-component vector of float)
890:?     Sequence
900:45      move second child to first child ( temp 4-component vector of float)
910:45        a: direct index for structure ( temp 4-component vector of float)
920:45          'ret' ( temp structure{ temp 4-component vector of float a})
930:45          Constant:
940:45            0 (const int)
950:45        add ( temp 4-component vector of float)
960:45          v24: direct index for structure (layout( row_major std140) uniform 4-component vector of float)
970:45            'anon@4' (layout( row_major std140) uniform block{layout( row_major std140) uniform 4-component vector of float v24})
980:45            Constant:
990:45              0 (const uint)
1000:45          vector-scale ( temp 4-component vector of float)
1010:45            add ( temp 4-component vector of float)
1020:45              add ( temp 4-component vector of float)
1030:45                add ( temp 4-component vector of float)
1040:45                  add ( temp 4-component vector of float)
1050:45                    'input' ( in 4-component vector of float)
1060:45                    v1: direct index for structure (layout( row_major std140) uniform 4-component vector of float)
1070:45                      'anon@0' (layout( row_major std140) uniform block{layout( row_major std140) uniform 4-component vector of float v1})
1080:45                      Constant:
1090:45                        0 (const uint)
1100:45                  v2: direct index for structure (layout( row_major std430) buffer 4-component vector of float)
1110:45                    'anon@1' (layout( row_major std430) readonly buffer block{layout( row_major std430) buffer 4-component vector of float v2})
1120:45                    Constant:
1130:45                      0 (const uint)
1140:45                v3: direct index for structure (layout( row_major std140 offset=0) uniform 4-component vector of float)
1150:45                  'anon@2' (layout( row_major std140) uniform block{layout( row_major std140 offset=0) uniform 4-component vector of float v3, layout( row_major std140 offset=20) uniform int i3})
1160:45                  Constant:
1170:45                    0 (const uint)
1180:45              v4: direct index for structure (layout( row_major std430 offset=16) buffer 4-component vector of float)
1190:45                'anon@3' (layout( binding=8 row_major std430) readonly buffer block{layout( row_major std430 offset=16) buffer 4-component vector of float v4, layout( row_major std430 offset=48) buffer int i4, layout( row_major std430 offset=60) buffer float f1, layout( row_major std430 offset=64) buffer float f3, layout( row_major std430 offset=68) buffer float f4, layout( row_major std430 offset=72) buffer float f5, layout( row_major std430) buffer float f6, layout( row_major std430 offset=128) buffer float f7, layout( row_major std430 offset=112) buffer 3X4 matrix of float m1, layout( column_major std430 offset=176) buffer 3X4 matrix of float m2, layout( row_major std430 offset=240) buffer 3X4 matrix of float m3, layout( row_major std430 offset=304) buffer 3X4 matrix of float m4})
1200:45                Constant:
1210:45                  0 (const uint)
1220:45            Function Call: foo( ( temp float)
1230:46      Branch: Return with expression
1240:46        'ret' ( temp structure{ temp 4-component vector of float a})
1250:43  Function Definition: PixelShaderFunction( ( temp void)
1260:43    Function Parameters:
1270:?     Sequence
1280:43      move second child to first child ( temp 4-component vector of float)
1290:?         'input' ( temp 4-component vector of float)
1300:?         'input' ( in 4-component vector of float FragCoord)
1310:43      Sequence
1320:43        move second child to first child ( temp 4-component vector of float)
1330:?           '@entryPointOutput.a' (layout( location=0) out 4-component vector of float)
1340:43          a: direct index for structure ( temp 4-component vector of float)
1350:43            Function Call: @PixelShaderFunction(vf4; ( temp structure{ temp 4-component vector of float a})
1360:?               'input' ( temp 4-component vector of float)
1370:43            Constant:
1380:43              0 (const int)
1390:?   Linker Objects
1400:?     'anon@0' (layout( row_major std140) uniform block{layout( row_major std140) uniform 4-component vector of float v1})
1410:?     'anon@1' (layout( row_major std430) readonly buffer block{layout( row_major std430) buffer 4-component vector of float v2})
1420:?     'anon@2' (layout( row_major std140) uniform block{layout( row_major std140 offset=0) uniform 4-component vector of float v3, layout( row_major std140 offset=20) uniform int i3})
1430:?     'anon@3' (layout( binding=8 row_major std430) readonly buffer block{layout( row_major std430 offset=16) buffer 4-component vector of float v4, layout( row_major std430 offset=48) buffer int i4, layout( row_major std430 offset=60) buffer float f1, layout( row_major std430 offset=64) buffer float f3, layout( row_major std430 offset=68) buffer float f4, layout( row_major std430 offset=72) buffer float f5, layout( row_major std430) buffer float f6, layout( row_major std430 offset=128) buffer float f7, layout( row_major std430 offset=112) buffer 3X4 matrix of float m1, layout( column_major std430 offset=176) buffer 3X4 matrix of float m2, layout( row_major std430 offset=240) buffer 3X4 matrix of float m3, layout( row_major std430 offset=304) buffer 3X4 matrix of float m4})
1440:?     'anon@4' (layout( row_major std140) uniform block{layout( row_major std140) uniform 4-component vector of float v24})
1450:?     '@entryPointOutput.a' (layout( location=0) out 4-component vector of float)
1460:?     'input' ( in 4-component vector of float FragCoord)
147
148Validation failed
149// Module Version 10000
150// Generated by (magic number): 8000b
151// Id's are bound by 73
152
153                              Capability Shader
154               1:             ExtInstImport  "GLSL.std.450"
155                              MemoryModel Logical GLSL450
156                              EntryPoint Fragment 4  "PixelShaderFunction" 65 68
157                              ExecutionMode 4 OriginUpperLeft
158                              Source HLSL 500
159                              Name 4  "PixelShaderFunction"
160                              Name 8  "foo("
161                              Name 12  "id"
162                              MemberName 12(id) 0  "a"
163                              Name 15  "@PixelShaderFunction(vf4;"
164                              Name 14  "input"
165                              Name 21  "ret"
166                              Name 24  "cbufName2"
167                              MemberName 24(cbufName2) 0  "v24"
168                              Name 26  ""
169                              Name 31  "buf1"
170                              MemberName 31(buf1) 0  "v1"
171                              Name 33  ""
172                              Name 37  "buf2"
173                              MemberName 37(buf2) 0  "v2"
174                              Name 39  ""
175                              Name 43  "cbufName"
176                              MemberName 43(cbufName) 0  "v3"
177                              MemberName 43(cbufName) 1  "i3"
178                              Name 45  ""
179                              Name 50  "tbufName"
180                              MemberName 50(tbufName) 0  "v4"
181                              MemberName 50(tbufName) 1  "i4"
182                              MemberName 50(tbufName) 2  "f1"
183                              MemberName 50(tbufName) 3  "f3"
184                              MemberName 50(tbufName) 4  "f4"
185                              MemberName 50(tbufName) 5  "f5"
186                              MemberName 50(tbufName) 6  "f6"
187                              MemberName 50(tbufName) 7  "f7"
188                              MemberName 50(tbufName) 8  "m1"
189                              MemberName 50(tbufName) 9  "m2"
190                              MemberName 50(tbufName) 10  "m3"
191                              MemberName 50(tbufName) 11  "m4"
192                              Name 52  ""
193                              Name 63  "input"
194                              Name 65  "input"
195                              Name 68  "@entryPointOutput.a"
196                              Name 69  "param"
197                              Decorate 24(cbufName2) Block
198                              MemberDecorate 24(cbufName2) 0 Offset 0
199                              Decorate 26 Binding 3
200                              Decorate 26 DescriptorSet 0
201                              Decorate 31(buf1) Block
202                              MemberDecorate 31(buf1) 0 Offset 0
203                              Decorate 33 Binding 0
204                              Decorate 33 DescriptorSet 0
205                              Decorate 37(buf2) BufferBlock
206                              MemberDecorate 37(buf2) 0 NonWritable
207                              MemberDecorate 37(buf2) 0 Offset 0
208                              Decorate 39 NonWritable
209                              Decorate 39 Binding 1
210                              Decorate 39 DescriptorSet 0
211                              Decorate 43(cbufName) Block
212                              MemberDecorate 43(cbufName) 0 Offset 0
213                              MemberDecorate 43(cbufName) 1 Offset 20
214                              Decorate 45 Binding 2
215                              Decorate 45 DescriptorSet 0
216                              Decorate 50(tbufName) BufferBlock
217                              MemberDecorate 50(tbufName) 0 NonWritable
218                              MemberDecorate 50(tbufName) 0 Offset 16
219                              MemberDecorate 50(tbufName) 1 NonWritable
220                              MemberDecorate 50(tbufName) 1 Offset 48
221                              MemberDecorate 50(tbufName) 2 NonWritable
222                              MemberDecorate 50(tbufName) 2 Offset 60
223                              MemberDecorate 50(tbufName) 3 NonWritable
224                              MemberDecorate 50(tbufName) 3 Offset 64
225                              MemberDecorate 50(tbufName) 4 NonWritable
226                              MemberDecorate 50(tbufName) 4 Offset 68
227                              MemberDecorate 50(tbufName) 5 NonWritable
228                              MemberDecorate 50(tbufName) 5 Offset 72
229                              MemberDecorate 50(tbufName) 6 NonWritable
230                              MemberDecorate 50(tbufName) 6 Offset 76
231                              MemberDecorate 50(tbufName) 7 NonWritable
232                              MemberDecorate 50(tbufName) 7 Offset 128
233                              MemberDecorate 50(tbufName) 8 RowMajor
234                              MemberDecorate 50(tbufName) 8 MatrixStride 16
235                              MemberDecorate 50(tbufName) 8 NonWritable
236                              MemberDecorate 50(tbufName) 8 Offset 112
237                              MemberDecorate 50(tbufName) 9 ColMajor
238                              MemberDecorate 50(tbufName) 9 MatrixStride 16
239                              MemberDecorate 50(tbufName) 9 NonWritable
240                              MemberDecorate 50(tbufName) 9 Offset 176
241                              MemberDecorate 50(tbufName) 10 RowMajor
242                              MemberDecorate 50(tbufName) 10 MatrixStride 16
243                              MemberDecorate 50(tbufName) 10 NonWritable
244                              MemberDecorate 50(tbufName) 10 Offset 240
245                              MemberDecorate 50(tbufName) 11 RowMajor
246                              MemberDecorate 50(tbufName) 11 MatrixStride 16
247                              MemberDecorate 50(tbufName) 11 NonWritable
248                              MemberDecorate 50(tbufName) 11 Offset 304
249                              Decorate 52 NonWritable
250                              Decorate 52 Binding 8
251                              Decorate 52 DescriptorSet 0
252                              Decorate 65(input) BuiltIn FragCoord
253                              Decorate 68(@entryPointOutput.a) Location 0
254               2:             TypeVoid
255               3:             TypeFunction 2
256               6:             TypeFloat 32
257               7:             TypeFunction 6(float)
258              10:             TypeVector 6(float) 4
259              11:             TypePointer Function 10(fvec4)
260          12(id):             TypeStruct 10(fvec4)
261              13:             TypeFunction 12(id) 11(ptr)
262              17:    6(float) Constant 1065353216
263              20:             TypePointer Function 12(id)
264              22:             TypeInt 32 1
265              23:     22(int) Constant 0
266   24(cbufName2):             TypeStruct 10(fvec4)
267              25:             TypePointer Uniform 24(cbufName2)
268              26:     25(ptr) Variable Uniform
269              27:             TypePointer Uniform 10(fvec4)
270        31(buf1):             TypeStruct 10(fvec4)
271              32:             TypePointer Uniform 31(buf1)
272              33:     32(ptr) Variable Uniform
273        37(buf2):             TypeStruct 10(fvec4)
274              38:             TypePointer Uniform 37(buf2)
275              39:     38(ptr) Variable Uniform
276    43(cbufName):             TypeStruct 10(fvec4) 22(int)
277              44:             TypePointer Uniform 43(cbufName)
278              45:     44(ptr) Variable Uniform
279              49:             TypeMatrix 10(fvec4) 3
280    50(tbufName):             TypeStruct 10(fvec4) 22(int) 6(float) 6(float) 6(float) 6(float) 6(float) 6(float) 49 49 49 49
281              51:             TypePointer Uniform 50(tbufName)
282              52:     51(ptr) Variable Uniform
283              64:             TypePointer Input 10(fvec4)
284       65(input):     64(ptr) Variable Input
285              67:             TypePointer Output 10(fvec4)
28668(@entryPointOutput.a):     67(ptr) Variable Output
2874(PixelShaderFunction):           2 Function None 3
288               5:             Label
289       63(input):     11(ptr) Variable Function
290       69(param):     11(ptr) Variable Function
291              66:   10(fvec4) Load 65(input)
292                              Store 63(input) 66
293              70:   10(fvec4) Load 63(input)
294                              Store 69(param) 70
295              71:      12(id) FunctionCall 15(@PixelShaderFunction(vf4;) 69(param)
296              72:   10(fvec4) CompositeExtract 71 0
297                              Store 68(@entryPointOutput.a) 72
298                              Return
299                              FunctionEnd
300         8(foo():    6(float) Function None 7
301               9:             Label
302                              ReturnValue 17
303                              FunctionEnd
30415(@PixelShaderFunction(vf4;):      12(id) Function None 13
305       14(input):     11(ptr) FunctionParameter
306              16:             Label
307         21(ret):     20(ptr) Variable Function
308              28:     27(ptr) AccessChain 26 23
309              29:   10(fvec4) Load 28
310              30:   10(fvec4) Load 14(input)
311              34:     27(ptr) AccessChain 33 23
312              35:   10(fvec4) Load 34
313              36:   10(fvec4) FAdd 30 35
314              40:     27(ptr) AccessChain 39 23
315              41:   10(fvec4) Load 40
316              42:   10(fvec4) FAdd 36 41
317              46:     27(ptr) AccessChain 45 23
318              47:   10(fvec4) Load 46
319              48:   10(fvec4) FAdd 42 47
320              53:     27(ptr) AccessChain 52 23
321              54:   10(fvec4) Load 53
322              55:   10(fvec4) FAdd 48 54
323              56:    6(float) FunctionCall 8(foo()
324              57:   10(fvec4) VectorTimesScalar 55 56
325              58:   10(fvec4) FAdd 29 57
326              59:     11(ptr) AccessChain 21(ret) 23
327                              Store 59 58
328              60:      12(id) Load 21(ret)
329                              ReturnValue 60
330                              FunctionEnd
331