1hlsl.matType.bool.frag
2Shader version: 500
3gl_FragCoord origin is upper left
40:? Sequence
50:3  Function Definition: TestBoolMatTypes( ( temp void)
60:3    Function Parameters:
70:?     Sequence
80:25      Sequence
90:25        move second child to first child ( temp 1X1 matrix of bool)
100:25          'r00' ( temp 1X1 matrix of bool)
110:25          transpose ( temp 1X1 matrix of bool)
120:25            'b1x1' ( temp 1X1 matrix of bool)
130:26      Sequence
140:26        move second child to first child ( temp 1X2 matrix of bool)
150:26          'r01' ( temp 1X2 matrix of bool)
160:26          transpose ( temp 1X2 matrix of bool)
170:26            'b2x1' ( temp 2X1 matrix of bool)
180:27      Sequence
190:27        move second child to first child ( temp 1X3 matrix of bool)
200:27          'r02' ( temp 1X3 matrix of bool)
210:27          transpose ( temp 1X3 matrix of bool)
220:27            'b3x1' ( temp 3X1 matrix of bool)
230:28      Sequence
240:28        move second child to first child ( temp 1X4 matrix of bool)
250:28          'r03' ( temp 1X4 matrix of bool)
260:28          transpose ( temp 1X4 matrix of bool)
270:28            'b4x1' ( temp 4X1 matrix of bool)
280:30      Sequence
290:30        move second child to first child ( temp 2X1 matrix of bool)
300:30          'r10' ( temp 2X1 matrix of bool)
310:30          transpose ( temp 2X1 matrix of bool)
320:30            'b1x2' ( temp 1X2 matrix of bool)
330:31      Sequence
340:31        move second child to first child ( temp 2X2 matrix of bool)
350:31          'r11' ( temp 2X2 matrix of bool)
360:31          transpose ( temp 2X2 matrix of bool)
370:31            'b2x2' ( temp 2X2 matrix of bool)
380:32      Sequence
390:32        move second child to first child ( temp 2X3 matrix of bool)
400:32          'r12' ( temp 2X3 matrix of bool)
410:32          transpose ( temp 2X3 matrix of bool)
420:32            'b3x2' ( temp 3X2 matrix of bool)
430:33      Sequence
440:33        move second child to first child ( temp 2X4 matrix of bool)
450:33          'r13' ( temp 2X4 matrix of bool)
460:33          transpose ( temp 2X4 matrix of bool)
470:33            'b4x2' ( temp 4X2 matrix of bool)
480:35      Sequence
490:35        move second child to first child ( temp 3X1 matrix of bool)
500:35          'r20' ( temp 3X1 matrix of bool)
510:35          transpose ( temp 3X1 matrix of bool)
520:35            'b1x3' ( temp 1X3 matrix of bool)
530:36      Sequence
540:36        move second child to first child ( temp 3X2 matrix of bool)
550:36          'r21' ( temp 3X2 matrix of bool)
560:36          transpose ( temp 3X2 matrix of bool)
570:36            'b2x3' ( temp 2X3 matrix of bool)
580:37      Sequence
590:37        move second child to first child ( temp 3X3 matrix of bool)
600:37          'r22' ( temp 3X3 matrix of bool)
610:37          transpose ( temp 3X3 matrix of bool)
620:37            'b3x3' ( temp 3X3 matrix of bool)
630:38      Sequence
640:38        move second child to first child ( temp 3X4 matrix of bool)
650:38          'r23' ( temp 3X4 matrix of bool)
660:38          transpose ( temp 3X4 matrix of bool)
670:38            'b4x3' ( temp 4X3 matrix of bool)
680:40      Sequence
690:40        move second child to first child ( temp 4X1 matrix of bool)
700:40          'r30' ( temp 4X1 matrix of bool)
710:40          transpose ( temp 4X1 matrix of bool)
720:40            'b1x4' ( temp 1X4 matrix of bool)
730:41      Sequence
740:41        move second child to first child ( temp 4X2 matrix of bool)
750:41          'r31' ( temp 4X2 matrix of bool)
760:41          transpose ( temp 4X2 matrix of bool)
770:41            'b2x4' ( temp 2X4 matrix of bool)
780:42      Sequence
790:42        move second child to first child ( temp 4X3 matrix of bool)
800:42          'r32' ( temp 4X3 matrix of bool)
810:42          transpose ( temp 4X3 matrix of bool)
820:42            'b3x4' ( temp 3X4 matrix of bool)
830:43      Sequence
840:43        move second child to first child ( temp 4X4 matrix of bool)
850:43          'r33' ( temp 4X4 matrix of bool)
860:43          transpose ( temp 4X4 matrix of bool)
870:43            'b4x4' ( temp 4X4 matrix of bool)
880:49  Function Definition: @main( ( temp structure{ temp 4-component vector of float color})
890:49    Function Parameters:
900:?     Sequence
910:51      move second child to first child ( temp 4-component vector of float)
920:51        color: direct index for structure ( temp 4-component vector of float)
930:51          'ps_output' ( temp structure{ temp 4-component vector of float color})
940:51          Constant:
950:51            0 (const int)
960:?         Constant:
970:?           0.000000
980:?           0.000000
990:?           0.000000
1000:?           0.000000
1010:52      Branch: Return with expression
1020:52        'ps_output' ( temp structure{ temp 4-component vector of float color})
1030:49  Function Definition: main( ( temp void)
1040:49    Function Parameters:
1050:?     Sequence
1060:49      Sequence
1070:49        move second child to first child ( temp 4-component vector of float)
1080:?           '@entryPointOutput.color' (layout( location=0) out 4-component vector of float)
1090:49          color: direct index for structure ( temp 4-component vector of float)
1100:49            Function Call: @main( ( temp structure{ temp 4-component vector of float color})
1110:49            Constant:
1120:49              0 (const int)
1130:?   Linker Objects
1140:?     '@entryPointOutput.color' (layout( location=0) out 4-component vector of float)
115
116
117Linked fragment stage:
118
119
120Shader version: 500
121gl_FragCoord origin is upper left
1220:? Sequence
1230:3  Function Definition: TestBoolMatTypes( ( temp void)
1240:3    Function Parameters:
1250:?     Sequence
1260:25      Sequence
1270:25        move second child to first child ( temp 1X1 matrix of bool)
1280:25          'r00' ( temp 1X1 matrix of bool)
1290:25          transpose ( temp 1X1 matrix of bool)
1300:25            'b1x1' ( temp 1X1 matrix of bool)
1310:26      Sequence
1320:26        move second child to first child ( temp 1X2 matrix of bool)
1330:26          'r01' ( temp 1X2 matrix of bool)
1340:26          transpose ( temp 1X2 matrix of bool)
1350:26            'b2x1' ( temp 2X1 matrix of bool)
1360:27      Sequence
1370:27        move second child to first child ( temp 1X3 matrix of bool)
1380:27          'r02' ( temp 1X3 matrix of bool)
1390:27          transpose ( temp 1X3 matrix of bool)
1400:27            'b3x1' ( temp 3X1 matrix of bool)
1410:28      Sequence
1420:28        move second child to first child ( temp 1X4 matrix of bool)
1430:28          'r03' ( temp 1X4 matrix of bool)
1440:28          transpose ( temp 1X4 matrix of bool)
1450:28            'b4x1' ( temp 4X1 matrix of bool)
1460:30      Sequence
1470:30        move second child to first child ( temp 2X1 matrix of bool)
1480:30          'r10' ( temp 2X1 matrix of bool)
1490:30          transpose ( temp 2X1 matrix of bool)
1500:30            'b1x2' ( temp 1X2 matrix of bool)
1510:31      Sequence
1520:31        move second child to first child ( temp 2X2 matrix of bool)
1530:31          'r11' ( temp 2X2 matrix of bool)
1540:31          transpose ( temp 2X2 matrix of bool)
1550:31            'b2x2' ( temp 2X2 matrix of bool)
1560:32      Sequence
1570:32        move second child to first child ( temp 2X3 matrix of bool)
1580:32          'r12' ( temp 2X3 matrix of bool)
1590:32          transpose ( temp 2X3 matrix of bool)
1600:32            'b3x2' ( temp 3X2 matrix of bool)
1610:33      Sequence
1620:33        move second child to first child ( temp 2X4 matrix of bool)
1630:33          'r13' ( temp 2X4 matrix of bool)
1640:33          transpose ( temp 2X4 matrix of bool)
1650:33            'b4x2' ( temp 4X2 matrix of bool)
1660:35      Sequence
1670:35        move second child to first child ( temp 3X1 matrix of bool)
1680:35          'r20' ( temp 3X1 matrix of bool)
1690:35          transpose ( temp 3X1 matrix of bool)
1700:35            'b1x3' ( temp 1X3 matrix of bool)
1710:36      Sequence
1720:36        move second child to first child ( temp 3X2 matrix of bool)
1730:36          'r21' ( temp 3X2 matrix of bool)
1740:36          transpose ( temp 3X2 matrix of bool)
1750:36            'b2x3' ( temp 2X3 matrix of bool)
1760:37      Sequence
1770:37        move second child to first child ( temp 3X3 matrix of bool)
1780:37          'r22' ( temp 3X3 matrix of bool)
1790:37          transpose ( temp 3X3 matrix of bool)
1800:37            'b3x3' ( temp 3X3 matrix of bool)
1810:38      Sequence
1820:38        move second child to first child ( temp 3X4 matrix of bool)
1830:38          'r23' ( temp 3X4 matrix of bool)
1840:38          transpose ( temp 3X4 matrix of bool)
1850:38            'b4x3' ( temp 4X3 matrix of bool)
1860:40      Sequence
1870:40        move second child to first child ( temp 4X1 matrix of bool)
1880:40          'r30' ( temp 4X1 matrix of bool)
1890:40          transpose ( temp 4X1 matrix of bool)
1900:40            'b1x4' ( temp 1X4 matrix of bool)
1910:41      Sequence
1920:41        move second child to first child ( temp 4X2 matrix of bool)
1930:41          'r31' ( temp 4X2 matrix of bool)
1940:41          transpose ( temp 4X2 matrix of bool)
1950:41            'b2x4' ( temp 2X4 matrix of bool)
1960:42      Sequence
1970:42        move second child to first child ( temp 4X3 matrix of bool)
1980:42          'r32' ( temp 4X3 matrix of bool)
1990:42          transpose ( temp 4X3 matrix of bool)
2000:42            'b3x4' ( temp 3X4 matrix of bool)
2010:43      Sequence
2020:43        move second child to first child ( temp 4X4 matrix of bool)
2030:43          'r33' ( temp 4X4 matrix of bool)
2040:43          transpose ( temp 4X4 matrix of bool)
2050:43            'b4x4' ( temp 4X4 matrix of bool)
2060:49  Function Definition: @main( ( temp structure{ temp 4-component vector of float color})
2070:49    Function Parameters:
2080:?     Sequence
2090:51      move second child to first child ( temp 4-component vector of float)
2100:51        color: direct index for structure ( temp 4-component vector of float)
2110:51          'ps_output' ( temp structure{ temp 4-component vector of float color})
2120:51          Constant:
2130:51            0 (const int)
2140:?         Constant:
2150:?           0.000000
2160:?           0.000000
2170:?           0.000000
2180:?           0.000000
2190:52      Branch: Return with expression
2200:52        'ps_output' ( temp structure{ temp 4-component vector of float color})
2210:49  Function Definition: main( ( temp void)
2220:49    Function Parameters:
2230:?     Sequence
2240:49      Sequence
2250:49        move second child to first child ( temp 4-component vector of float)
2260:?           '@entryPointOutput.color' (layout( location=0) out 4-component vector of float)
2270:49          color: direct index for structure ( temp 4-component vector of float)
2280:49            Function Call: @main( ( temp structure{ temp 4-component vector of float color})
2290:49            Constant:
2300:49              0 (const int)
2310:?   Linker Objects
2320:?     '@entryPointOutput.color' (layout( location=0) out 4-component vector of float)
233
234// Module Version 10000
235// Generated by (magic number): 80007
236// Id's are bound by 130
237
238                              Capability Shader
239               1:             ExtInstImport  "GLSL.std.450"
240                              MemoryModel Logical GLSL450
241                              EntryPoint Fragment 4  "main" 127
242                              ExecutionMode 4 OriginUpperLeft
243                              Source HLSL 500
244                              Name 4  "main"
245                              Name 6  "TestBoolMatTypes("
246                              Name 10  "PS_OUTPUT"
247                              MemberName 10(PS_OUTPUT) 0  "color"
248                              Name 12  "@main("
249                              Name 18  "r00"
250                              Name 19  "b1x1"
251                              Name 25  "r01"
252                              Name 28  "b2x1"
253                              Name 34  "r02"
254                              Name 37  "b3x1"
255                              Name 43  "r03"
256                              Name 46  "b4x1"
257                              Name 49  "r10"
258                              Name 50  "b1x2"
259                              Name 55  "r11"
260                              Name 56  "b2x2"
261                              Name 61  "r12"
262                              Name 64  "b3x2"
263                              Name 69  "r13"
264                              Name 72  "b4x2"
265                              Name 75  "r20"
266                              Name 76  "b1x3"
267                              Name 79  "r21"
268                              Name 80  "b2x3"
269                              Name 85  "r22"
270                              Name 86  "b3x3"
271                              Name 91  "r23"
272                              Name 94  "b4x3"
273                              Name 97  "r30"
274                              Name 98  "b1x4"
275                              Name 101  "r31"
276                              Name 102  "b2x4"
277                              Name 105  "r32"
278                              Name 106  "b3x4"
279                              Name 111  "r33"
280                              Name 112  "b4x4"
281                              Name 116  "ps_output"
282                              Name 127  "@entryPointOutput.color"
283                              Decorate 127(@entryPointOutput.color) Location 0
284               2:             TypeVoid
285               3:             TypeFunction 2
286               8:             TypeFloat 32
287               9:             TypeVector 8(float) 4
288   10(PS_OUTPUT):             TypeStruct 9(fvec4)
289              11:             TypeFunction 10(PS_OUTPUT)
290              14:             TypeBool
291              15:             TypeVector 14(bool) 1
292              16:             TypeMatrix 15(bvec) 1
293              17:             TypePointer Function 16
294              22:             TypeVector 14(bool) 2
295              23:             TypeMatrix 22(bvec2) 1
296              24:             TypePointer Function 23
297              26:             TypeMatrix 15(bvec) 2
298              27:             TypePointer Function 26
299              31:             TypeVector 14(bool) 3
300              32:             TypeMatrix 31(bvec3) 1
301              33:             TypePointer Function 32
302              35:             TypeMatrix 15(bvec) 3
303              36:             TypePointer Function 35
304              40:             TypeVector 14(bool) 4
305              41:             TypeMatrix 40(bvec4) 1
306              42:             TypePointer Function 41
307              44:             TypeMatrix 15(bvec) 4
308              45:             TypePointer Function 44
309              53:             TypeMatrix 22(bvec2) 2
310              54:             TypePointer Function 53
311              59:             TypeMatrix 31(bvec3) 2
312              60:             TypePointer Function 59
313              62:             TypeMatrix 22(bvec2) 3
314              63:             TypePointer Function 62
315              67:             TypeMatrix 40(bvec4) 2
316              68:             TypePointer Function 67
317              70:             TypeMatrix 22(bvec2) 4
318              71:             TypePointer Function 70
319              83:             TypeMatrix 31(bvec3) 3
320              84:             TypePointer Function 83
321              89:             TypeMatrix 40(bvec4) 3
322              90:             TypePointer Function 89
323              92:             TypeMatrix 31(bvec3) 4
324              93:             TypePointer Function 92
325             109:             TypeMatrix 40(bvec4) 4
326             110:             TypePointer Function 109
327             115:             TypePointer Function 10(PS_OUTPUT)
328             117:             TypeInt 32 1
329             118:    117(int) Constant 0
330             119:    8(float) Constant 0
331             120:    9(fvec4) ConstantComposite 119 119 119 119
332             121:             TypePointer Function 9(fvec4)
333             126:             TypePointer Output 9(fvec4)
334127(@entryPointOutput.color):    126(ptr) Variable Output
335         4(main):           2 Function None 3
336               5:             Label
337             128:10(PS_OUTPUT) FunctionCall 12(@main()
338             129:    9(fvec4) CompositeExtract 128 0
339                              Store 127(@entryPointOutput.color) 129
340                              Return
341                              FunctionEnd
3426(TestBoolMatTypes():           2 Function None 3
343               7:             Label
344         18(r00):     17(ptr) Variable Function
345        19(b1x1):     17(ptr) Variable Function
346         25(r01):     24(ptr) Variable Function
347        28(b2x1):     27(ptr) Variable Function
348         34(r02):     33(ptr) Variable Function
349        37(b3x1):     36(ptr) Variable Function
350         43(r03):     42(ptr) Variable Function
351        46(b4x1):     45(ptr) Variable Function
352         49(r10):     27(ptr) Variable Function
353        50(b1x2):     24(ptr) Variable Function
354         55(r11):     54(ptr) Variable Function
355        56(b2x2):     54(ptr) Variable Function
356         61(r12):     60(ptr) Variable Function
357        64(b3x2):     63(ptr) Variable Function
358         69(r13):     68(ptr) Variable Function
359        72(b4x2):     71(ptr) Variable Function
360         75(r20):     36(ptr) Variable Function
361        76(b1x3):     33(ptr) Variable Function
362         79(r21):     63(ptr) Variable Function
363        80(b2x3):     60(ptr) Variable Function
364         85(r22):     84(ptr) Variable Function
365        86(b3x3):     84(ptr) Variable Function
366         91(r23):     90(ptr) Variable Function
367        94(b4x3):     93(ptr) Variable Function
368         97(r30):     45(ptr) Variable Function
369        98(b1x4):     42(ptr) Variable Function
370        101(r31):     71(ptr) Variable Function
371       102(b2x4):     68(ptr) Variable Function
372        105(r32):     93(ptr) Variable Function
373       106(b3x4):     90(ptr) Variable Function
374        111(r33):    110(ptr) Variable Function
375       112(b4x4):    110(ptr) Variable Function
376              20:          16 Load 19(b1x1)
377              21:          16 Transpose 20
378                              Store 18(r00) 21
379              29:          26 Load 28(b2x1)
380              30:          23 Transpose 29
381                              Store 25(r01) 30
382              38:          35 Load 37(b3x1)
383              39:          32 Transpose 38
384                              Store 34(r02) 39
385              47:          44 Load 46(b4x1)
386              48:          41 Transpose 47
387                              Store 43(r03) 48
388              51:          23 Load 50(b1x2)
389              52:          26 Transpose 51
390                              Store 49(r10) 52
391              57:          53 Load 56(b2x2)
392              58:          53 Transpose 57
393                              Store 55(r11) 58
394              65:          62 Load 64(b3x2)
395              66:          59 Transpose 65
396                              Store 61(r12) 66
397              73:          70 Load 72(b4x2)
398              74:          67 Transpose 73
399                              Store 69(r13) 74
400              77:          32 Load 76(b1x3)
401              78:          35 Transpose 77
402                              Store 75(r20) 78
403              81:          59 Load 80(b2x3)
404              82:          62 Transpose 81
405                              Store 79(r21) 82
406              87:          83 Load 86(b3x3)
407              88:          83 Transpose 87
408                              Store 85(r22) 88
409              95:          92 Load 94(b4x3)
410              96:          89 Transpose 95
411                              Store 91(r23) 96
412              99:          41 Load 98(b1x4)
413             100:          44 Transpose 99
414                              Store 97(r30) 100
415             103:          67 Load 102(b2x4)
416             104:          70 Transpose 103
417                              Store 101(r31) 104
418             107:          89 Load 106(b3x4)
419             108:          92 Transpose 107
420                              Store 105(r32) 108
421             113:         109 Load 112(b4x4)
422             114:         109 Transpose 113
423                              Store 111(r33) 114
424                              Return
425                              FunctionEnd
426      12(@main():10(PS_OUTPUT) Function None 11
427              13:             Label
428  116(ps_output):    115(ptr) Variable Function
429             122:    121(ptr) AccessChain 116(ps_output) 118
430                              Store 122 120
431             123:10(PS_OUTPUT) Load 116(ps_output)
432                              ReturnValue 123
433                              FunctionEnd
434