1hlsl.flattenSubset2.frag 2WARNING: AST will form illegal SPIR-V; need to transform to legalize 3Shader version: 500 4gl_FragCoord origin is upper left 50:? Sequence 60:8 Function Definition: @main(vf4; ( temp 4-component vector of float) 70:8 Function Parameters: 80:8 'vpos' ( in 4-component vector of float) 90:? Sequence 100:13 move second child to first child ( temp structure{ temp float y, temp texture2D texNested}) 110:13 n: direct index for structure ( temp structure{ temp float y, temp texture2D texNested}) 120:13 'a1' ( temp structure{ temp structure{ temp float y, temp texture2D texNested} n, temp float x}) 130:13 Constant: 140:13 0 (const int) 150:13 n: direct index for structure ( temp structure{ temp float y, temp texture2D texNested}) 160:13 'a2' ( temp structure{ temp structure{ temp float y, temp texture2D texNested} n, temp float x}) 170:13 Constant: 180:13 0 (const int) 190:14 move second child to first child ( temp structure{ temp float y, temp texture2D texNested}) 200:14 n: direct index for structure ( temp structure{ temp float y, temp texture2D texNested}) 210:14 'b' ( temp structure{ temp structure{ temp float y, temp texture2D texNested} n, temp texture2D tex}) 220:14 Constant: 230:14 0 (const int) 240:14 n: direct index for structure ( temp structure{ temp float y, temp texture2D texNested}) 250:14 'a1' ( temp structure{ temp structure{ temp float y, temp texture2D texNested} n, temp float x}) 260:14 Constant: 270:14 0 (const int) 280:17 Sequence 290:17 move second child to first child ( temp structure{ temp float y, temp texture2D texNested}) 300:17 'n' ( temp structure{ temp float y, temp texture2D texNested}) 310:17 n: direct index for structure ( temp structure{ temp float y, temp texture2D texNested}) 320:17 'b' ( temp structure{ temp structure{ temp float y, temp texture2D texNested} n, temp texture2D tex}) 330:17 Constant: 340:17 0 (const int) 350:20 move second child to first child ( temp texture2D) 360:20 texNested: direct index for structure ( temp texture2D) 370:20 n: direct index for structure ( temp structure{ temp float y, temp texture2D texNested}) 380:20 'a2' ( temp structure{ temp structure{ temp float y, temp texture2D texNested} n, temp float x}) 390:20 Constant: 400:20 0 (const int) 410:20 Constant: 420:20 1 (const int) 430:20 'someTex' ( uniform texture2D) 440:21 move second child to first child ( temp float) 450:21 y: direct index for structure ( temp float) 460:21 n: direct index for structure ( temp structure{ temp float y, temp texture2D texNested}) 470:21 'a1' ( temp structure{ temp structure{ temp float y, temp texture2D texNested} n, temp float x}) 480:21 Constant: 490:21 0 (const int) 500:21 Constant: 510:21 0 (const int) 520:21 Constant: 530:21 1.000000 540:23 Branch: Return with expression 550:? Constant: 560:? 0.000000 570:? 0.000000 580:? 0.000000 590:? 0.000000 600:8 Function Definition: main( ( temp void) 610:8 Function Parameters: 620:? Sequence 630:8 move second child to first child ( temp 4-component vector of float) 640:? 'vpos' ( temp 4-component vector of float) 650:? 'vpos' (layout( location=0) in 4-component vector of float) 660:8 move second child to first child ( temp 4-component vector of float) 670:? '@entryPointOutput' (layout( location=0) out 4-component vector of float) 680:8 Function Call: @main(vf4; ( temp 4-component vector of float) 690:? 'vpos' ( temp 4-component vector of float) 700:? Linker Objects 710:? 'someTex' ( uniform texture2D) 720:? '@entryPointOutput' (layout( location=0) out 4-component vector of float) 730:? 'vpos' (layout( location=0) in 4-component vector of float) 74 75 76Linked fragment stage: 77 78 79Shader version: 500 80gl_FragCoord origin is upper left 810:? Sequence 820:8 Function Definition: @main(vf4; ( temp 4-component vector of float) 830:8 Function Parameters: 840:8 'vpos' ( in 4-component vector of float) 850:? Sequence 860:13 move second child to first child ( temp structure{ temp float y, temp texture2D texNested}) 870:13 n: direct index for structure ( temp structure{ temp float y, temp texture2D texNested}) 880:13 'a1' ( temp structure{ temp structure{ temp float y, temp texture2D texNested} n, temp float x}) 890:13 Constant: 900:13 0 (const int) 910:13 n: direct index for structure ( temp structure{ temp float y, temp texture2D texNested}) 920:13 'a2' ( temp structure{ temp structure{ temp float y, temp texture2D texNested} n, temp float x}) 930:13 Constant: 940:13 0 (const int) 950:14 move second child to first child ( temp structure{ temp float y, temp texture2D texNested}) 960:14 n: direct index for structure ( temp structure{ temp float y, temp texture2D texNested}) 970:14 'b' ( temp structure{ temp structure{ temp float y, temp texture2D texNested} n, temp texture2D tex}) 980:14 Constant: 990:14 0 (const int) 1000:14 n: direct index for structure ( temp structure{ temp float y, temp texture2D texNested}) 1010:14 'a1' ( temp structure{ temp structure{ temp float y, temp texture2D texNested} n, temp float x}) 1020:14 Constant: 1030:14 0 (const int) 1040:17 Sequence 1050:17 move second child to first child ( temp structure{ temp float y, temp texture2D texNested}) 1060:17 'n' ( temp structure{ temp float y, temp texture2D texNested}) 1070:17 n: direct index for structure ( temp structure{ temp float y, temp texture2D texNested}) 1080:17 'b' ( temp structure{ temp structure{ temp float y, temp texture2D texNested} n, temp texture2D tex}) 1090:17 Constant: 1100:17 0 (const int) 1110:20 move second child to first child ( temp texture2D) 1120:20 texNested: direct index for structure ( temp texture2D) 1130:20 n: direct index for structure ( temp structure{ temp float y, temp texture2D texNested}) 1140:20 'a2' ( temp structure{ temp structure{ temp float y, temp texture2D texNested} n, temp float x}) 1150:20 Constant: 1160:20 0 (const int) 1170:20 Constant: 1180:20 1 (const int) 1190:20 'someTex' ( uniform texture2D) 1200:21 move second child to first child ( temp float) 1210:21 y: direct index for structure ( temp float) 1220:21 n: direct index for structure ( temp structure{ temp float y, temp texture2D texNested}) 1230:21 'a1' ( temp structure{ temp structure{ temp float y, temp texture2D texNested} n, temp float x}) 1240:21 Constant: 1250:21 0 (const int) 1260:21 Constant: 1270:21 0 (const int) 1280:21 Constant: 1290:21 1.000000 1300:23 Branch: Return with expression 1310:? Constant: 1320:? 0.000000 1330:? 0.000000 1340:? 0.000000 1350:? 0.000000 1360:8 Function Definition: main( ( temp void) 1370:8 Function Parameters: 1380:? Sequence 1390:8 move second child to first child ( temp 4-component vector of float) 1400:? 'vpos' ( temp 4-component vector of float) 1410:? 'vpos' (layout( location=0) in 4-component vector of float) 1420:8 move second child to first child ( temp 4-component vector of float) 1430:? '@entryPointOutput' (layout( location=0) out 4-component vector of float) 1440:8 Function Call: @main(vf4; ( temp 4-component vector of float) 1450:? 'vpos' ( temp 4-component vector of float) 1460:? Linker Objects 1470:? 'someTex' ( uniform texture2D) 1480:? '@entryPointOutput' (layout( location=0) out 4-component vector of float) 1490:? 'vpos' (layout( location=0) in 4-component vector of float) 150 151// Module Version 10000 152// Generated by (magic number): 80007 153// Id's are bound by 56 154 155 Capability Shader 156 1: ExtInstImport "GLSL.std.450" 157 MemoryModel Logical GLSL450 158 EntryPoint Fragment 4 "main" 49 52 159 ExecutionMode 4 OriginUpperLeft 160 Source HLSL 500 161 Name 4 "main" 162 Name 11 "@main(vf4;" 163 Name 10 "vpos" 164 Name 14 "Nested" 165 MemberName 14(Nested) 0 "y" 166 MemberName 14(Nested) 1 "texNested" 167 Name 15 "A" 168 MemberName 15(A) 0 "n" 169 MemberName 15(A) 1 "x" 170 Name 17 "a1" 171 Name 20 "a2" 172 Name 25 "B" 173 MemberName 25(B) 0 "n" 174 MemberName 25(B) 1 "tex" 175 Name 27 "b" 176 Name 31 "n" 177 Name 36 "someTex" 178 Name 47 "vpos" 179 Name 49 "vpos" 180 Name 52 "@entryPointOutput" 181 Name 53 "param" 182 Decorate 36(someTex) DescriptorSet 0 183 Decorate 49(vpos) Location 0 184 Decorate 52(@entryPointOutput) Location 0 185 2: TypeVoid 186 3: TypeFunction 2 187 6: TypeFloat 32 188 7: TypeVector 6(float) 4 189 8: TypePointer Function 7(fvec4) 190 9: TypeFunction 7(fvec4) 8(ptr) 191 13: TypeImage 6(float) 2D sampled format:Unknown 192 14(Nested): TypeStruct 6(float) 13 193 15(A): TypeStruct 14(Nested) 6(float) 194 16: TypePointer Function 15(A) 195 18: TypeInt 32 1 196 19: 18(int) Constant 0 197 21: TypePointer Function 14(Nested) 198 25(B): TypeStruct 14(Nested) 13 199 26: TypePointer Function 25(B) 200 34: 18(int) Constant 1 201 35: TypePointer UniformConstant 13 202 36(someTex): 35(ptr) Variable UniformConstant 203 38: TypePointer Function 13 204 40: 6(float) Constant 1065353216 205 41: TypePointer Function 6(float) 206 43: 6(float) Constant 0 207 44: 7(fvec4) ConstantComposite 43 43 43 43 208 48: TypePointer Input 7(fvec4) 209 49(vpos): 48(ptr) Variable Input 210 51: TypePointer Output 7(fvec4) 21152(@entryPointOutput): 51(ptr) Variable Output 212 4(main): 2 Function None 3 213 5: Label 214 47(vpos): 8(ptr) Variable Function 215 53(param): 8(ptr) Variable Function 216 50: 7(fvec4) Load 49(vpos) 217 Store 47(vpos) 50 218 54: 7(fvec4) Load 47(vpos) 219 Store 53(param) 54 220 55: 7(fvec4) FunctionCall 11(@main(vf4;) 53(param) 221 Store 52(@entryPointOutput) 55 222 Return 223 FunctionEnd 224 11(@main(vf4;): 7(fvec4) Function None 9 225 10(vpos): 8(ptr) FunctionParameter 226 12: Label 227 17(a1): 16(ptr) Variable Function 228 20(a2): 16(ptr) Variable Function 229 27(b): 26(ptr) Variable Function 230 31(n): 21(ptr) Variable Function 231 22: 21(ptr) AccessChain 20(a2) 19 232 23: 14(Nested) Load 22 233 24: 21(ptr) AccessChain 17(a1) 19 234 Store 24 23 235 28: 21(ptr) AccessChain 17(a1) 19 236 29: 14(Nested) Load 28 237 30: 21(ptr) AccessChain 27(b) 19 238 Store 30 29 239 32: 21(ptr) AccessChain 27(b) 19 240 33: 14(Nested) Load 32 241 Store 31(n) 33 242 37: 13 Load 36(someTex) 243 39: 38(ptr) AccessChain 20(a2) 19 34 244 Store 39 37 245 42: 41(ptr) AccessChain 17(a1) 19 19 246 Store 42 40 247 ReturnValue 44 248 FunctionEnd 249