2263200879b68655af1f188614e50c1b64ed7c61
[platform/upstream/glslang.git] / Test / baseResults / hlsl.semantic.geom.out
1 hlsl.semantic.geom
2 Shader version: 450
3 invocations = -1
4 max_vertices = 4
5 input primitive = triangles
6 output primitive = line_strip
7 0:? Sequence
8 0:12  Function Definition: @main(u1[3];struct-S-f1-f1-u1-u1-i11; ( temp structure{ temp float clip0,  temp float cull0,  temp uint vpai,  temp uint rtai,  temp int ii})
9 0:12    Function Parameters: 
10 0:12      'VertexID' ( in 3-element array of uint)
11 0:12      'OutputStream' ( out structure{ temp float clip0,  temp float cull0,  temp uint vpai,  temp uint rtai,  temp int ii})
12 0:?     Sequence
13 0:14      Branch: Return with expression
14 0:14        's' ( temp structure{ temp float clip0,  temp float cull0,  temp uint vpai,  temp uint rtai,  temp int ii})
15 0:12  Function Definition: main( ( temp void)
16 0:12    Function Parameters: 
17 0:?     Sequence
18 0:12      move second child to first child ( temp 3-element array of uint)
19 0:?         'VertexID' ( temp 3-element array of uint)
20 0:?         'VertexID' (layout( location=0) in 3-element array of uint)
21 0:12      Sequence
22 0:12        move second child to first child ( temp structure{ temp float clip0,  temp float cull0,  temp uint vpai,  temp uint rtai,  temp int ii})
23 0:12          'flattenTemp' ( temp structure{ temp float clip0,  temp float cull0,  temp uint vpai,  temp uint rtai,  temp int ii})
24 0:12          Function Call: @main(u1[3];struct-S-f1-f1-u1-u1-i11; ( temp structure{ temp float clip0,  temp float cull0,  temp uint vpai,  temp uint rtai,  temp int ii})
25 0:?             'VertexID' ( temp 3-element array of uint)
26 0:?             'OutputStream' ( temp structure{ temp float clip0,  temp float cull0,  temp uint vpai,  temp uint rtai,  temp int ii})
27 0:12        move second child to first child ( temp float)
28 0:?           'OutputStream_clip0' ( out float ClipDistance)
29 0:12          clip0: direct index for structure ( temp float)
30 0:12            'flattenTemp' ( temp structure{ temp float clip0,  temp float cull0,  temp uint vpai,  temp uint rtai,  temp int ii})
31 0:12            Constant:
32 0:12              0 (const int)
33 0:12        move second child to first child ( temp float)
34 0:?           'OutputStream_cull0' ( out float CullDistance)
35 0:12          cull0: direct index for structure ( temp float)
36 0:12            'flattenTemp' ( temp structure{ temp float clip0,  temp float cull0,  temp uint vpai,  temp uint rtai,  temp int ii})
37 0:12            Constant:
38 0:12              1 (const int)
39 0:12        move second child to first child ( temp uint)
40 0:?           'OutputStream_vpai' ( out uint ViewportIndex)
41 0:12          vpai: direct index for structure ( temp uint)
42 0:12            'flattenTemp' ( temp structure{ temp float clip0,  temp float cull0,  temp uint vpai,  temp uint rtai,  temp int ii})
43 0:12            Constant:
44 0:12              2 (const int)
45 0:12        move second child to first child ( temp uint)
46 0:?           'OutputStream_rtai' ( out uint Layer)
47 0:12          rtai: direct index for structure ( temp uint)
48 0:12            'flattenTemp' ( temp structure{ temp float clip0,  temp float cull0,  temp uint vpai,  temp uint rtai,  temp int ii})
49 0:12            Constant:
50 0:12              3 (const int)
51 0:12        move second child to first child ( temp int)
52 0:12          ii: direct index for structure ( temp int)
53 0:12            '@entryPointOutput' (layout( location=0) out structure{ temp int ii})
54 0:12            Constant:
55 0:12              0 (const int)
56 0:12          ii: direct index for structure ( temp int)
57 0:12            'flattenTemp' ( temp structure{ temp float clip0,  temp float cull0,  temp uint vpai,  temp uint rtai,  temp int ii})
58 0:12            Constant:
59 0:12              4 (const int)
60 0:?   Linker Objects
61 0:?     '@entryPointOutput' (layout( location=0) out structure{ temp int ii})
62 0:?     'VertexID' (layout( location=0) in 3-element array of uint)
63 0:?     'OutputStream' (layout( location=1) out structure{ temp int ii})
64 0:?     'OutputStream_vpai' ( out uint ViewportIndex)
65
66
67 Linked geometry stage:
68
69
70 Shader version: 450
71 invocations = 1
72 max_vertices = 4
73 input primitive = triangles
74 output primitive = line_strip
75 0:? Sequence
76 0:12  Function Definition: @main(u1[3];struct-S-f1-f1-u1-u1-i11; ( temp structure{ temp float clip0,  temp float cull0,  temp uint vpai,  temp uint rtai,  temp int ii})
77 0:12    Function Parameters: 
78 0:12      'VertexID' ( in 3-element array of uint)
79 0:12      'OutputStream' ( out structure{ temp float clip0,  temp float cull0,  temp uint vpai,  temp uint rtai,  temp int ii})
80 0:?     Sequence
81 0:14      Branch: Return with expression
82 0:14        's' ( temp structure{ temp float clip0,  temp float cull0,  temp uint vpai,  temp uint rtai,  temp int ii})
83 0:12  Function Definition: main( ( temp void)
84 0:12    Function Parameters: 
85 0:?     Sequence
86 0:12      move second child to first child ( temp 3-element array of uint)
87 0:?         'VertexID' ( temp 3-element array of uint)
88 0:?         'VertexID' (layout( location=0) in 3-element array of uint)
89 0:12      Sequence
90 0:12        move second child to first child ( temp structure{ temp float clip0,  temp float cull0,  temp uint vpai,  temp uint rtai,  temp int ii})
91 0:12          'flattenTemp' ( temp structure{ temp float clip0,  temp float cull0,  temp uint vpai,  temp uint rtai,  temp int ii})
92 0:12          Function Call: @main(u1[3];struct-S-f1-f1-u1-u1-i11; ( temp structure{ temp float clip0,  temp float cull0,  temp uint vpai,  temp uint rtai,  temp int ii})
93 0:?             'VertexID' ( temp 3-element array of uint)
94 0:?             'OutputStream' ( temp structure{ temp float clip0,  temp float cull0,  temp uint vpai,  temp uint rtai,  temp int ii})
95 0:12        move second child to first child ( temp float)
96 0:?           'OutputStream_clip0' ( out float ClipDistance)
97 0:12          clip0: direct index for structure ( temp float)
98 0:12            'flattenTemp' ( temp structure{ temp float clip0,  temp float cull0,  temp uint vpai,  temp uint rtai,  temp int ii})
99 0:12            Constant:
100 0:12              0 (const int)
101 0:12        move second child to first child ( temp float)
102 0:?           'OutputStream_cull0' ( out float CullDistance)
103 0:12          cull0: direct index for structure ( temp float)
104 0:12            'flattenTemp' ( temp structure{ temp float clip0,  temp float cull0,  temp uint vpai,  temp uint rtai,  temp int ii})
105 0:12            Constant:
106 0:12              1 (const int)
107 0:12        move second child to first child ( temp uint)
108 0:?           'OutputStream_vpai' ( out uint ViewportIndex)
109 0:12          vpai: direct index for structure ( temp uint)
110 0:12            'flattenTemp' ( temp structure{ temp float clip0,  temp float cull0,  temp uint vpai,  temp uint rtai,  temp int ii})
111 0:12            Constant:
112 0:12              2 (const int)
113 0:12        move second child to first child ( temp uint)
114 0:?           'OutputStream_rtai' ( out uint Layer)
115 0:12          rtai: direct index for structure ( temp uint)
116 0:12            'flattenTemp' ( temp structure{ temp float clip0,  temp float cull0,  temp uint vpai,  temp uint rtai,  temp int ii})
117 0:12            Constant:
118 0:12              3 (const int)
119 0:12        move second child to first child ( temp int)
120 0:12          ii: direct index for structure ( temp int)
121 0:12            '@entryPointOutput' (layout( location=0) out structure{ temp int ii})
122 0:12            Constant:
123 0:12              0 (const int)
124 0:12          ii: direct index for structure ( temp int)
125 0:12            'flattenTemp' ( temp structure{ temp float clip0,  temp float cull0,  temp uint vpai,  temp uint rtai,  temp int ii})
126 0:12            Constant:
127 0:12              4 (const int)
128 0:?   Linker Objects
129 0:?     '@entryPointOutput' (layout( location=0) out structure{ temp int ii})
130 0:?     'VertexID' (layout( location=0) in 3-element array of uint)
131 0:?     'OutputStream' (layout( location=1) out structure{ temp int ii})
132 0:?     'OutputStream_vpai' ( out uint ViewportIndex)
133
134 // Module Version 10000
135 // Generated by (magic number): 80001
136 // Id's are bound by 66
137
138                               Capability Geometry
139                               Capability ClipDistance
140                               Capability CullDistance
141                               Capability MultiViewport
142                1:             ExtInstImport  "GLSL.std.450"
143                               MemoryModel Logical GLSL450
144                               EntryPoint Geometry 4  "main" 25 35 40 45 50 56 65
145                               ExecutionMode 4 Triangles
146                               ExecutionMode 4 Invocations 1
147                               ExecutionMode 4 OutputLineStrip
148                               ExecutionMode 4 OutputVertices 4
149                               Name 4  "main"
150                               Name 12  "S"
151                               MemberName 12(S) 0  "clip0"
152                               MemberName 12(S) 1  "cull0"
153                               MemberName 12(S) 2  "vpai"
154                               MemberName 12(S) 3  "rtai"
155                               MemberName 12(S) 4  "ii"
156                               Name 17  "@main(u1[3];struct-S-f1-f1-u1-u1-i11;"
157                               Name 15  "VertexID"
158                               Name 16  "OutputStream"
159                               Name 19  "s"
160                               Name 23  "VertexID"
161                               Name 25  "VertexID"
162                               Name 27  "flattenTemp"
163                               Name 28  "OutputStream"
164                               Name 29  "param"
165                               Name 31  "param"
166                               Name 35  "OutputStream_clip0"
167                               Name 40  "OutputStream_cull0"
168                               Name 45  "OutputStream_vpai"
169                               Name 50  "OutputStream_rtai"
170                               Name 54  "S"
171                               MemberName 54(S) 0  "ii"
172                               Name 56  "@entryPointOutput"
173                               Name 63  "S"
174                               MemberName 63(S) 0  "ii"
175                               Name 65  "OutputStream"
176                               Decorate 25(VertexID) Location 0
177                               Decorate 35(OutputStream_clip0) BuiltIn ClipDistance
178                               Decorate 40(OutputStream_cull0) BuiltIn CullDistance
179                               Decorate 45(OutputStream_vpai) BuiltIn ViewportIndex
180                               Decorate 50(OutputStream_rtai) BuiltIn Layer
181                               Decorate 56(@entryPointOutput) Location 0
182                               Decorate 65(OutputStream) Location 1
183                2:             TypeVoid
184                3:             TypeFunction 2
185                6:             TypeInt 32 0
186                7:      6(int) Constant 3
187                8:             TypeArray 6(int) 7
188                9:             TypePointer Function 8
189               10:             TypeFloat 32
190               11:             TypeInt 32 1
191            12(S):             TypeStruct 10(float) 10(float) 6(int) 6(int) 11(int)
192               13:             TypePointer Function 12(S)
193               14:             TypeFunction 12(S) 9(ptr) 13(ptr)
194               24:             TypePointer Input 8
195     25(VertexID):     24(ptr) Variable Input
196               34:             TypePointer Output 10(float)
197 35(OutputStream_clip0):     34(ptr) Variable Output
198               36:     11(int) Constant 0
199               37:             TypePointer Function 10(float)
200 40(OutputStream_cull0):     34(ptr) Variable Output
201               41:     11(int) Constant 1
202               44:             TypePointer Output 6(int)
203 45(OutputStream_vpai):     44(ptr) Variable Output
204               46:     11(int) Constant 2
205               47:             TypePointer Function 6(int)
206 50(OutputStream_rtai):     44(ptr) Variable Output
207               51:     11(int) Constant 3
208            54(S):             TypeStruct 11(int)
209               55:             TypePointer Output 54(S)
210 56(@entryPointOutput):     55(ptr) Variable Output
211               57:     11(int) Constant 4
212               58:             TypePointer Function 11(int)
213               61:             TypePointer Output 11(int)
214            63(S):             TypeStruct 11(int)
215               64:             TypePointer Output 63(S)
216 65(OutputStream):     64(ptr) Variable Output
217          4(main):           2 Function None 3
218                5:             Label
219     23(VertexID):      9(ptr) Variable Function
220  27(flattenTemp):     13(ptr) Variable Function
221 28(OutputStream):     13(ptr) Variable Function
222        29(param):      9(ptr) Variable Function
223        31(param):     13(ptr) Variable Function
224               26:           8 Load 25(VertexID)
225                               Store 23(VertexID) 26
226               30:           8 Load 23(VertexID)
227                               Store 29(param) 30
228               32:       12(S) FunctionCall 17(@main(u1[3];struct-S-f1-f1-u1-u1-i11;) 29(param) 31(param)
229               33:       12(S) Load 31(param)
230                               Store 28(OutputStream) 33
231                               Store 27(flattenTemp) 32
232               38:     37(ptr) AccessChain 27(flattenTemp) 36
233               39:   10(float) Load 38
234                               Store 35(OutputStream_clip0) 39
235               42:     37(ptr) AccessChain 27(flattenTemp) 41
236               43:   10(float) Load 42
237                               Store 40(OutputStream_cull0) 43
238               48:     47(ptr) AccessChain 27(flattenTemp) 46
239               49:      6(int) Load 48
240                               Store 45(OutputStream_vpai) 49
241               52:     47(ptr) AccessChain 27(flattenTemp) 51
242               53:      6(int) Load 52
243                               Store 50(OutputStream_rtai) 53
244               59:     58(ptr) AccessChain 27(flattenTemp) 57
245               60:     11(int) Load 59
246               62:     61(ptr) AccessChain 56(@entryPointOutput) 36
247                               Store 62 60
248                               Return
249                               FunctionEnd
250 17(@main(u1[3];struct-S-f1-f1-u1-u1-i11;):       12(S) Function None 14
251     15(VertexID):      9(ptr) FunctionParameter
252 16(OutputStream):     13(ptr) FunctionParameter
253               18:             Label
254            19(s):     13(ptr) Variable Function
255               20:       12(S) Load 19(s)
256                               ReturnValue 20
257                               FunctionEnd