glslang/Test/baseResults/hlsl.matType.bool.frag.out
John Kessenich 02467d8d94 HLSL: Wrap the entry-point; need to write 'in' args, and support 'inout' args.
This needs some render testing, but is destined to be part of master.

This also leads to a variety of other simplifications.
 - IO are global symbols, so only need one list of linkage nodes (deferred)
 - no longer need parse-context-wide 'inEntryPoint' state, entry-point is localized
 - several parts of splitting/flattening are now localized
2017-02-06 22:58:32 -07:00

433 lines
20 KiB
Plaintext

hlsl.matType.bool.frag
Shader version: 450
gl_FragCoord origin is upper left
0:? Sequence
0:3 Function Definition: TestBoolMatTypes( (temp void)
0:3 Function Parameters:
0:? Sequence
0:25 Sequence
0:25 move second child to first child (temp 1X1 matrix of bool)
0:25 'r00' (temp 1X1 matrix of bool)
0:25 transpose (temp 1X1 matrix of bool)
0:25 'b1x1' (temp 1X1 matrix of bool)
0:26 Sequence
0:26 move second child to first child (temp 1X2 matrix of bool)
0:26 'r01' (temp 1X2 matrix of bool)
0:26 transpose (temp 1X2 matrix of bool)
0:26 'b2x1' (temp 2X1 matrix of bool)
0:27 Sequence
0:27 move second child to first child (temp 1X3 matrix of bool)
0:27 'r02' (temp 1X3 matrix of bool)
0:27 transpose (temp 1X3 matrix of bool)
0:27 'b3x1' (temp 3X1 matrix of bool)
0:28 Sequence
0:28 move second child to first child (temp 1X4 matrix of bool)
0:28 'r03' (temp 1X4 matrix of bool)
0:28 transpose (temp 1X4 matrix of bool)
0:28 'b4x1' (temp 4X1 matrix of bool)
0:30 Sequence
0:30 move second child to first child (temp 2X1 matrix of bool)
0:30 'r10' (temp 2X1 matrix of bool)
0:30 transpose (temp 2X1 matrix of bool)
0:30 'b1x2' (temp 1X2 matrix of bool)
0:31 Sequence
0:31 move second child to first child (temp 2X2 matrix of bool)
0:31 'r11' (temp 2X2 matrix of bool)
0:31 transpose (temp 2X2 matrix of bool)
0:31 'b2x2' (temp 2X2 matrix of bool)
0:32 Sequence
0:32 move second child to first child (temp 2X3 matrix of bool)
0:32 'r12' (temp 2X3 matrix of bool)
0:32 transpose (temp 2X3 matrix of bool)
0:32 'b3x2' (temp 3X2 matrix of bool)
0:33 Sequence
0:33 move second child to first child (temp 2X4 matrix of bool)
0:33 'r13' (temp 2X4 matrix of bool)
0:33 transpose (temp 2X4 matrix of bool)
0:33 'b4x2' (temp 4X2 matrix of bool)
0:35 Sequence
0:35 move second child to first child (temp 3X1 matrix of bool)
0:35 'r20' (temp 3X1 matrix of bool)
0:35 transpose (temp 3X1 matrix of bool)
0:35 'b1x3' (temp 1X3 matrix of bool)
0:36 Sequence
0:36 move second child to first child (temp 3X2 matrix of bool)
0:36 'r21' (temp 3X2 matrix of bool)
0:36 transpose (temp 3X2 matrix of bool)
0:36 'b2x3' (temp 2X3 matrix of bool)
0:37 Sequence
0:37 move second child to first child (temp 3X3 matrix of bool)
0:37 'r22' (temp 3X3 matrix of bool)
0:37 transpose (temp 3X3 matrix of bool)
0:37 'b3x3' (temp 3X3 matrix of bool)
0:38 Sequence
0:38 move second child to first child (temp 3X4 matrix of bool)
0:38 'r23' (temp 3X4 matrix of bool)
0:38 transpose (temp 3X4 matrix of bool)
0:38 'b4x3' (temp 4X3 matrix of bool)
0:40 Sequence
0:40 move second child to first child (temp 4X1 matrix of bool)
0:40 'r30' (temp 4X1 matrix of bool)
0:40 transpose (temp 4X1 matrix of bool)
0:40 'b1x4' (temp 1X4 matrix of bool)
0:41 Sequence
0:41 move second child to first child (temp 4X2 matrix of bool)
0:41 'r31' (temp 4X2 matrix of bool)
0:41 transpose (temp 4X2 matrix of bool)
0:41 'b2x4' (temp 2X4 matrix of bool)
0:42 Sequence
0:42 move second child to first child (temp 4X3 matrix of bool)
0:42 'r32' (temp 4X3 matrix of bool)
0:42 transpose (temp 4X3 matrix of bool)
0:42 'b3x4' (temp 3X4 matrix of bool)
0:43 Sequence
0:43 move second child to first child (temp 4X4 matrix of bool)
0:43 'r33' (temp 4X4 matrix of bool)
0:43 transpose (temp 4X4 matrix of bool)
0:43 'b4x4' (temp 4X4 matrix of bool)
0:49 Function Definition: @main( (temp structure{temp 4-component vector of float color})
0:49 Function Parameters:
0:? Sequence
0:51 move second child to first child (temp 4-component vector of float)
0:51 color: direct index for structure (temp 4-component vector of float)
0:51 'ps_output' (temp structure{temp 4-component vector of float color})
0:51 Constant:
0:51 0 (const int)
0:? Constant:
0:? 0.000000
0:? 0.000000
0:? 0.000000
0:? 0.000000
0:52 Branch: Return with expression
0:52 'ps_output' (temp structure{temp 4-component vector of float color})
0:49 Function Definition: main( (temp void)
0:49 Function Parameters:
0:? Sequence
0:49 Sequence
0:49 move second child to first child (temp 4-component vector of float)
0:? 'color' (layout(location=0 ) out 4-component vector of float)
0:49 color: direct index for structure (temp 4-component vector of float)
0:49 Function Call: @main( (temp structure{temp 4-component vector of float color})
0:49 Constant:
0:49 0 (const int)
0:? Linker Objects
0:? 'color' (layout(location=0 ) out 4-component vector of float)
Linked fragment stage:
Shader version: 450
gl_FragCoord origin is upper left
0:? Sequence
0:3 Function Definition: TestBoolMatTypes( (temp void)
0:3 Function Parameters:
0:? Sequence
0:25 Sequence
0:25 move second child to first child (temp 1X1 matrix of bool)
0:25 'r00' (temp 1X1 matrix of bool)
0:25 transpose (temp 1X1 matrix of bool)
0:25 'b1x1' (temp 1X1 matrix of bool)
0:26 Sequence
0:26 move second child to first child (temp 1X2 matrix of bool)
0:26 'r01' (temp 1X2 matrix of bool)
0:26 transpose (temp 1X2 matrix of bool)
0:26 'b2x1' (temp 2X1 matrix of bool)
0:27 Sequence
0:27 move second child to first child (temp 1X3 matrix of bool)
0:27 'r02' (temp 1X3 matrix of bool)
0:27 transpose (temp 1X3 matrix of bool)
0:27 'b3x1' (temp 3X1 matrix of bool)
0:28 Sequence
0:28 move second child to first child (temp 1X4 matrix of bool)
0:28 'r03' (temp 1X4 matrix of bool)
0:28 transpose (temp 1X4 matrix of bool)
0:28 'b4x1' (temp 4X1 matrix of bool)
0:30 Sequence
0:30 move second child to first child (temp 2X1 matrix of bool)
0:30 'r10' (temp 2X1 matrix of bool)
0:30 transpose (temp 2X1 matrix of bool)
0:30 'b1x2' (temp 1X2 matrix of bool)
0:31 Sequence
0:31 move second child to first child (temp 2X2 matrix of bool)
0:31 'r11' (temp 2X2 matrix of bool)
0:31 transpose (temp 2X2 matrix of bool)
0:31 'b2x2' (temp 2X2 matrix of bool)
0:32 Sequence
0:32 move second child to first child (temp 2X3 matrix of bool)
0:32 'r12' (temp 2X3 matrix of bool)
0:32 transpose (temp 2X3 matrix of bool)
0:32 'b3x2' (temp 3X2 matrix of bool)
0:33 Sequence
0:33 move second child to first child (temp 2X4 matrix of bool)
0:33 'r13' (temp 2X4 matrix of bool)
0:33 transpose (temp 2X4 matrix of bool)
0:33 'b4x2' (temp 4X2 matrix of bool)
0:35 Sequence
0:35 move second child to first child (temp 3X1 matrix of bool)
0:35 'r20' (temp 3X1 matrix of bool)
0:35 transpose (temp 3X1 matrix of bool)
0:35 'b1x3' (temp 1X3 matrix of bool)
0:36 Sequence
0:36 move second child to first child (temp 3X2 matrix of bool)
0:36 'r21' (temp 3X2 matrix of bool)
0:36 transpose (temp 3X2 matrix of bool)
0:36 'b2x3' (temp 2X3 matrix of bool)
0:37 Sequence
0:37 move second child to first child (temp 3X3 matrix of bool)
0:37 'r22' (temp 3X3 matrix of bool)
0:37 transpose (temp 3X3 matrix of bool)
0:37 'b3x3' (temp 3X3 matrix of bool)
0:38 Sequence
0:38 move second child to first child (temp 3X4 matrix of bool)
0:38 'r23' (temp 3X4 matrix of bool)
0:38 transpose (temp 3X4 matrix of bool)
0:38 'b4x3' (temp 4X3 matrix of bool)
0:40 Sequence
0:40 move second child to first child (temp 4X1 matrix of bool)
0:40 'r30' (temp 4X1 matrix of bool)
0:40 transpose (temp 4X1 matrix of bool)
0:40 'b1x4' (temp 1X4 matrix of bool)
0:41 Sequence
0:41 move second child to first child (temp 4X2 matrix of bool)
0:41 'r31' (temp 4X2 matrix of bool)
0:41 transpose (temp 4X2 matrix of bool)
0:41 'b2x4' (temp 2X4 matrix of bool)
0:42 Sequence
0:42 move second child to first child (temp 4X3 matrix of bool)
0:42 'r32' (temp 4X3 matrix of bool)
0:42 transpose (temp 4X3 matrix of bool)
0:42 'b3x4' (temp 3X4 matrix of bool)
0:43 Sequence
0:43 move second child to first child (temp 4X4 matrix of bool)
0:43 'r33' (temp 4X4 matrix of bool)
0:43 transpose (temp 4X4 matrix of bool)
0:43 'b4x4' (temp 4X4 matrix of bool)
0:49 Function Definition: @main( (temp structure{temp 4-component vector of float color})
0:49 Function Parameters:
0:? Sequence
0:51 move second child to first child (temp 4-component vector of float)
0:51 color: direct index for structure (temp 4-component vector of float)
0:51 'ps_output' (temp structure{temp 4-component vector of float color})
0:51 Constant:
0:51 0 (const int)
0:? Constant:
0:? 0.000000
0:? 0.000000
0:? 0.000000
0:? 0.000000
0:52 Branch: Return with expression
0:52 'ps_output' (temp structure{temp 4-component vector of float color})
0:49 Function Definition: main( (temp void)
0:49 Function Parameters:
0:? Sequence
0:49 Sequence
0:49 move second child to first child (temp 4-component vector of float)
0:? 'color' (layout(location=0 ) out 4-component vector of float)
0:49 color: direct index for structure (temp 4-component vector of float)
0:49 Function Call: @main( (temp structure{temp 4-component vector of float color})
0:49 Constant:
0:49 0 (const int)
0:? Linker Objects
0:? 'color' (layout(location=0 ) out 4-component vector of float)
// Module Version 10000
// Generated by (magic number): 80001
// Id's are bound by 130
Capability Shader
1: ExtInstImport "GLSL.std.450"
MemoryModel Logical GLSL450
EntryPoint Fragment 4 "main" 127
ExecutionMode 4 OriginUpperLeft
Name 4 "main"
Name 6 "TestBoolMatTypes("
Name 10 "PS_OUTPUT"
MemberName 10(PS_OUTPUT) 0 "color"
Name 12 "@main("
Name 18 "r00"
Name 19 "b1x1"
Name 25 "r01"
Name 28 "b2x1"
Name 34 "r02"
Name 37 "b3x1"
Name 43 "r03"
Name 46 "b4x1"
Name 49 "r10"
Name 50 "b1x2"
Name 55 "r11"
Name 56 "b2x2"
Name 61 "r12"
Name 64 "b3x2"
Name 69 "r13"
Name 72 "b4x2"
Name 75 "r20"
Name 76 "b1x3"
Name 79 "r21"
Name 80 "b2x3"
Name 85 "r22"
Name 86 "b3x3"
Name 91 "r23"
Name 94 "b4x3"
Name 97 "r30"
Name 98 "b1x4"
Name 101 "r31"
Name 102 "b2x4"
Name 105 "r32"
Name 106 "b3x4"
Name 111 "r33"
Name 112 "b4x4"
Name 116 "ps_output"
Name 127 "color"
Decorate 127(color) Location 0
2: TypeVoid
3: TypeFunction 2
8: TypeFloat 32
9: TypeVector 8(float) 4
10(PS_OUTPUT): TypeStruct 9(fvec4)
11: TypeFunction 10(PS_OUTPUT)
14: TypeBool
15: TypeVector 14(bool) 1
16: TypeMatrix 15(bvec) 1
17: TypePointer Function 16
22: TypeVector 14(bool) 2
23: TypeMatrix 22(bvec2) 1
24: TypePointer Function 23
26: TypeMatrix 15(bvec) 2
27: TypePointer Function 26
31: TypeVector 14(bool) 3
32: TypeMatrix 31(bvec3) 1
33: TypePointer Function 32
35: TypeMatrix 15(bvec) 3
36: TypePointer Function 35
40: TypeVector 14(bool) 4
41: TypeMatrix 40(bvec4) 1
42: TypePointer Function 41
44: TypeMatrix 15(bvec) 4
45: TypePointer Function 44
53: TypeMatrix 22(bvec2) 2
54: TypePointer Function 53
59: TypeMatrix 31(bvec3) 2
60: TypePointer Function 59
62: TypeMatrix 22(bvec2) 3
63: TypePointer Function 62
67: TypeMatrix 40(bvec4) 2
68: TypePointer Function 67
70: TypeMatrix 22(bvec2) 4
71: TypePointer Function 70
83: TypeMatrix 31(bvec3) 3
84: TypePointer Function 83
89: TypeMatrix 40(bvec4) 3
90: TypePointer Function 89
92: TypeMatrix 31(bvec3) 4
93: TypePointer Function 92
109: TypeMatrix 40(bvec4) 4
110: TypePointer Function 109
115: TypePointer Function 10(PS_OUTPUT)
117: TypeInt 32 1
118: 117(int) Constant 0
119: 8(float) Constant 0
120: 9(fvec4) ConstantComposite 119 119 119 119
121: TypePointer Function 9(fvec4)
126: TypePointer Output 9(fvec4)
127(color): 126(ptr) Variable Output
4(main): 2 Function None 3
5: Label
128:10(PS_OUTPUT) FunctionCall 12(@main()
129: 9(fvec4) CompositeExtract 128 0
Store 127(color) 129
Return
FunctionEnd
6(TestBoolMatTypes(): 2 Function None 3
7: Label
18(r00): 17(ptr) Variable Function
19(b1x1): 17(ptr) Variable Function
25(r01): 24(ptr) Variable Function
28(b2x1): 27(ptr) Variable Function
34(r02): 33(ptr) Variable Function
37(b3x1): 36(ptr) Variable Function
43(r03): 42(ptr) Variable Function
46(b4x1): 45(ptr) Variable Function
49(r10): 27(ptr) Variable Function
50(b1x2): 24(ptr) Variable Function
55(r11): 54(ptr) Variable Function
56(b2x2): 54(ptr) Variable Function
61(r12): 60(ptr) Variable Function
64(b3x2): 63(ptr) Variable Function
69(r13): 68(ptr) Variable Function
72(b4x2): 71(ptr) Variable Function
75(r20): 36(ptr) Variable Function
76(b1x3): 33(ptr) Variable Function
79(r21): 63(ptr) Variable Function
80(b2x3): 60(ptr) Variable Function
85(r22): 84(ptr) Variable Function
86(b3x3): 84(ptr) Variable Function
91(r23): 90(ptr) Variable Function
94(b4x3): 93(ptr) Variable Function
97(r30): 45(ptr) Variable Function
98(b1x4): 42(ptr) Variable Function
101(r31): 71(ptr) Variable Function
102(b2x4): 68(ptr) Variable Function
105(r32): 93(ptr) Variable Function
106(b3x4): 90(ptr) Variable Function
111(r33): 110(ptr) Variable Function
112(b4x4): 110(ptr) Variable Function
20: 16 Load 19(b1x1)
21: 16 Transpose 20
Store 18(r00) 21
29: 26 Load 28(b2x1)
30: 23 Transpose 29
Store 25(r01) 30
38: 35 Load 37(b3x1)
39: 32 Transpose 38
Store 34(r02) 39
47: 44 Load 46(b4x1)
48: 41 Transpose 47
Store 43(r03) 48
51: 23 Load 50(b1x2)
52: 26 Transpose 51
Store 49(r10) 52
57: 53 Load 56(b2x2)
58: 53 Transpose 57
Store 55(r11) 58
65: 62 Load 64(b3x2)
66: 59 Transpose 65
Store 61(r12) 66
73: 70 Load 72(b4x2)
74: 67 Transpose 73
Store 69(r13) 74
77: 32 Load 76(b1x3)
78: 35 Transpose 77
Store 75(r20) 78
81: 59 Load 80(b2x3)
82: 62 Transpose 81
Store 79(r21) 82
87: 83 Load 86(b3x3)
88: 83 Transpose 87
Store 85(r22) 88
95: 92 Load 94(b4x3)
96: 89 Transpose 95
Store 91(r23) 96
99: 41 Load 98(b1x4)
100: 44 Transpose 99
Store 97(r30) 100
103: 67 Load 102(b2x4)
104: 70 Transpose 103
Store 101(r31) 104
107: 89 Load 106(b3x4)
108: 92 Transpose 107
Store 105(r32) 108
113: 109 Load 112(b4x4)
114: 109 Transpose 113
Store 111(r33) 114
Return
FunctionEnd
12(@main():10(PS_OUTPUT) Function None 11
13: Label
116(ps_output): 115(ptr) Variable Function
122: 121(ptr) AccessChain 116(ps_output) 118
Store 122 120
123:10(PS_OUTPUT) Load 116(ps_output)
ReturnValue 123
FunctionEnd