hlsl.init2.frag Shader version: 450 gl_FragCoord origin is upper left 0:? Sequence 0:3 Function Definition: Test1( (temp void) 0:3 Function Parameters: 0:? Sequence 0:5 Sequence 0:5 move second child to first child (temp structure{temp 2-component vector of float a}) 0:5 'test1' (temp structure{temp 2-component vector of float a}) 0:5 Constant: 0:5 1.000000 0:5 2.000000 0:9 Sequence 0:9 move second child to first child (temp structure{temp 2-component vector of float a}) 0:9 'test2' (temp structure{temp 2-component vector of float a}) 0:9 Constant: 0:9 3.000000 0:9 4.000000 0:17 Sequence 0:17 move second child to first child (temp float) 0:17 'test4' (temp float) 0:17 Constant: 0:17 7.000000 0:20 Sequence 0:20 move second child to first child (temp structure{temp float a, temp float b, temp float c}) 0:20 'test5' (temp structure{temp float a, temp float b, temp float c}) 0:20 Constant: 0:20 8.000000 0:20 9.000000 0:20 10.000000 0:26 Function Definition: main( (temp structure{temp 4-component vector of float color}) 0:26 Function Parameters: 0:? Sequence 0:27 Function Call: Test1( (temp void) 0:30 move second child to first child (temp 4-component vector of float) 0:30 color: direct index for structure (temp 4-component vector of float) 0:30 'ps_output' (temp structure{temp 4-component vector of float color}) 0:30 Constant: 0:30 0 (const int) 0:30 Constant: 0:30 1.000000 0:30 1.000000 0:30 1.000000 0:30 1.000000 0:31 Sequence 0:31 Sequence 0:31 move second child to first child (temp 4-component vector of float) 0:? 'color' (layout(location=0 ) out 4-component vector of float) 0:31 color: direct index for structure (temp 4-component vector of float) 0:31 'ps_output' (temp structure{temp 4-component vector of float color}) 0:31 Constant: 0:31 0 (const int) 0:31 Branch: Return 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: Test1( (temp void) 0:3 Function Parameters: 0:? Sequence 0:5 Sequence 0:5 move second child to first child (temp structure{temp 2-component vector of float a}) 0:5 'test1' (temp structure{temp 2-component vector of float a}) 0:5 Constant: 0:5 1.000000 0:5 2.000000 0:9 Sequence 0:9 move second child to first child (temp structure{temp 2-component vector of float a}) 0:9 'test2' (temp structure{temp 2-component vector of float a}) 0:9 Constant: 0:9 3.000000 0:9 4.000000 0:17 Sequence 0:17 move second child to first child (temp float) 0:17 'test4' (temp float) 0:17 Constant: 0:17 7.000000 0:20 Sequence 0:20 move second child to first child (temp structure{temp float a, temp float b, temp float c}) 0:20 'test5' (temp structure{temp float a, temp float b, temp float c}) 0:20 Constant: 0:20 8.000000 0:20 9.000000 0:20 10.000000 0:26 Function Definition: main( (temp structure{temp 4-component vector of float color}) 0:26 Function Parameters: 0:? Sequence 0:27 Function Call: Test1( (temp void) 0:30 move second child to first child (temp 4-component vector of float) 0:30 color: direct index for structure (temp 4-component vector of float) 0:30 'ps_output' (temp structure{temp 4-component vector of float color}) 0:30 Constant: 0:30 0 (const int) 0:30 Constant: 0:30 1.000000 0:30 1.000000 0:30 1.000000 0:30 1.000000 0:31 Sequence 0:31 Sequence 0:31 move second child to first child (temp 4-component vector of float) 0:? 'color' (layout(location=0 ) out 4-component vector of float) 0:31 color: direct index for structure (temp 4-component vector of float) 0:31 'ps_output' (temp structure{temp 4-component vector of float color}) 0:31 Constant: 0:31 0 (const int) 0:31 Branch: Return 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 47 Capability Shader 1: ExtInstImport "GLSL.std.450" MemoryModel Logical GLSL450 EntryPoint Fragment 4 "main" 43 ExecutionMode 4 OriginUpperLeft Name 4 "main" Name 6 "Test1(" Name 10 "mystruct" MemberName 10(mystruct) 0 "a" Name 12 "test1" Name 17 "test2" Name 23 "test4" Name 25 "mystruct2" MemberName 25(mystruct2) 0 "a" MemberName 25(mystruct2) 1 "b" MemberName 25(mystruct2) 2 "c" Name 27 "test5" Name 34 "PS_OUTPUT" MemberName 34(PS_OUTPUT) 0 "color" Name 36 "ps_output" Name 43 "color" Decorate 43(color) Location 0 2: TypeVoid 3: TypeFunction 2 8: TypeFloat 32 9: TypeVector 8(float) 2 10(mystruct): TypeStruct 9(fvec2) 11: TypePointer Function 10(mystruct) 13: 8(float) Constant 1065353216 14: 8(float) Constant 1073741824 15: 9(fvec2) ConstantComposite 13 14 16:10(mystruct) ConstantComposite 15 18: 8(float) Constant 1077936128 19: 8(float) Constant 1082130432 20: 9(fvec2) ConstantComposite 18 19 21:10(mystruct) ConstantComposite 20 22: TypePointer Function 8(float) 24: 8(float) Constant 1088421888 25(mystruct2): TypeStruct 8(float) 8(float) 8(float) 26: TypePointer Function 25(mystruct2) 28: 8(float) Constant 1090519040 29: 8(float) Constant 1091567616 30: 8(float) Constant 1092616192 31:25(mystruct2) ConstantComposite 28 29 30 33: TypeVector 8(float) 4 34(PS_OUTPUT): TypeStruct 33(fvec4) 35: TypePointer Function 34(PS_OUTPUT) 37: TypeInt 32 1 38: 37(int) Constant 0 39: 33(fvec4) ConstantComposite 13 13 13 13 40: TypePointer Function 33(fvec4) 42: TypePointer Output 33(fvec4) 43(color): 42(ptr) Variable Output 4(main): 2 Function None 3 5: Label 36(ps_output): 35(ptr) Variable Function 32: 2 FunctionCall 6(Test1() 41: 40(ptr) AccessChain 36(ps_output) 38 Store 41 39 44: 40(ptr) AccessChain 36(ps_output) 38 45: 33(fvec4) Load 44 Store 43(color) 45 Return FunctionEnd 6(Test1(): 2 Function None 3 7: Label 12(test1): 11(ptr) Variable Function 17(test2): 11(ptr) Variable Function 23(test4): 22(ptr) Variable Function 27(test5): 26(ptr) Variable Function Store 12(test1) 16 Store 17(test2) 21 Store 23(test4) 24 Store 27(test5) 31 Return FunctionEnd