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:23 Constant: 560:23 0.000000 570:23 0.000000 580:23 0.000000 590:23 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:23 Constant: 1320:23 0.000000 1330:23 0.000000 1340:23 0.000000 1350:23 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): 8000b 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 36(someTex) Binding 0 184 Decorate 49(vpos) Location 0 185 Decorate 52(@entryPointOutput) Location 0 186 2: TypeVoid 187 3: TypeFunction 2 188 6: TypeFloat 32 189 7: TypeVector 6(float) 4 190 8: TypePointer Function 7(fvec4) 191 9: TypeFunction 7(fvec4) 8(ptr) 192 13: TypeImage 6(float) 2D sampled format:Unknown 193 14(Nested): TypeStruct 6(float) 13 194 15(A): TypeStruct 14(Nested) 6(float) 195 16: TypePointer Function 15(A) 196 18: TypeInt 32 1 197 19: 18(int) Constant 0 198 21: TypePointer Function 14(Nested) 199 25(B): TypeStruct 14(Nested) 13 200 26: TypePointer Function 25(B) 201 34: 18(int) Constant 1 202 35: TypePointer UniformConstant 13 203 36(someTex): 35(ptr) Variable UniformConstant 204 38: TypePointer Function 13 205 40: 6(float) Constant 1065353216 206 41: TypePointer Function 6(float) 207 43: 6(float) Constant 0 208 44: 7(fvec4) ConstantComposite 43 43 43 43 209 48: TypePointer Input 7(fvec4) 210 49(vpos): 48(ptr) Variable Input 211 51: TypePointer Output 7(fvec4) 21252(@entryPointOutput): 51(ptr) Variable Output 213 4(main): 2 Function None 3 214 5: Label 215 47(vpos): 8(ptr) Variable Function 216 53(param): 8(ptr) Variable Function 217 50: 7(fvec4) Load 49(vpos) 218 Store 47(vpos) 50 219 54: 7(fvec4) Load 47(vpos) 220 Store 53(param) 54 221 55: 7(fvec4) FunctionCall 11(@main(vf4;) 53(param) 222 Store 52(@entryPointOutput) 55 223 Return 224 FunctionEnd 225 11(@main(vf4;): 7(fvec4) Function None 9 226 10(vpos): 8(ptr) FunctionParameter 227 12: Label 228 17(a1): 16(ptr) Variable Function 229 20(a2): 16(ptr) Variable Function 230 27(b): 26(ptr) Variable Function 231 31(n): 21(ptr) Variable Function 232 22: 21(ptr) AccessChain 20(a2) 19 233 23: 14(Nested) Load 22 234 24: 21(ptr) AccessChain 17(a1) 19 235 Store 24 23 236 28: 21(ptr) AccessChain 17(a1) 19 237 29: 14(Nested) Load 28 238 30: 21(ptr) AccessChain 27(b) 19 239 Store 30 29 240 32: 21(ptr) AccessChain 27(b) 19 241 33: 14(Nested) Load 32 242 Store 31(n) 33 243 37: 13 Load 36(someTex) 244 39: 38(ptr) AccessChain 20(a2) 19 34 245 Store 39 37 246 42: 41(ptr) AccessChain 17(a1) 19 19 247 Store 42 40 248 ReturnValue 44 249 FunctionEnd 250