1hlsl.flatten.return.frag 2Shader version: 500 3gl_FragCoord origin is upper left 40:? Sequence 50:11 Function Definition: Func1( ( temp structure{ temp 4-component vector of float color, temp float other_struct_member1, temp float other_struct_member2, temp float other_struct_member3}) 60:11 Function Parameters: 70:? Sequence 80:12 Branch: Return with expression 90:? Constant: 100:? 1.000000 110:? 1.000000 120:? 1.000000 130:? 1.000000 140:? 2.000000 150:? 3.000000 160:? 4.000000 170:16 Function Definition: @main( ( temp structure{ temp 4-component vector of float color, temp float other_struct_member1, temp float other_struct_member2, temp float other_struct_member3}) 180:16 Function Parameters: 190:? Sequence 200:17 Branch: Return with expression 210:17 Function Call: Func1( ( temp structure{ temp 4-component vector of float color, temp float other_struct_member1, temp float other_struct_member2, temp float other_struct_member3}) 220:16 Function Definition: main( ( temp void) 230:16 Function Parameters: 240:? Sequence 250:16 Sequence 260:16 move second child to first child ( temp structure{ temp 4-component vector of float color, temp float other_struct_member1, temp float other_struct_member2, temp float other_struct_member3}) 270:16 'flattenTemp' ( temp structure{ temp 4-component vector of float color, temp float other_struct_member1, temp float other_struct_member2, temp float other_struct_member3}) 280:16 Function Call: @main( ( temp structure{ temp 4-component vector of float color, temp float other_struct_member1, temp float other_struct_member2, temp float other_struct_member3}) 290:16 move second child to first child ( temp 4-component vector of float) 300:? '@entryPointOutput.color' (layout( location=0) out 4-component vector of float) 310:16 color: direct index for structure ( temp 4-component vector of float) 320:16 'flattenTemp' ( temp structure{ temp 4-component vector of float color, temp float other_struct_member1, temp float other_struct_member2, temp float other_struct_member3}) 330:16 Constant: 340:16 0 (const int) 350:16 move second child to first child ( temp float) 360:? '@entryPointOutput.other_struct_member1' (layout( location=1) out float) 370:16 other_struct_member1: direct index for structure ( temp float) 380:16 'flattenTemp' ( temp structure{ temp 4-component vector of float color, temp float other_struct_member1, temp float other_struct_member2, temp float other_struct_member3}) 390:16 Constant: 400:16 1 (const int) 410:16 move second child to first child ( temp float) 420:? '@entryPointOutput.other_struct_member2' (layout( location=2) out float) 430:16 other_struct_member2: direct index for structure ( temp float) 440:16 'flattenTemp' ( temp structure{ temp 4-component vector of float color, temp float other_struct_member1, temp float other_struct_member2, temp float other_struct_member3}) 450:16 Constant: 460:16 2 (const int) 470:16 move second child to first child ( temp float) 480:? '@entryPointOutput.other_struct_member3' (layout( location=3) out float) 490:16 other_struct_member3: direct index for structure ( temp float) 500:16 'flattenTemp' ( temp structure{ temp 4-component vector of float color, temp float other_struct_member1, temp float other_struct_member2, temp float other_struct_member3}) 510:16 Constant: 520:16 3 (const int) 530:? Linker Objects 540:? '@entryPointOutput.color' (layout( location=0) out 4-component vector of float) 550:? '@entryPointOutput.other_struct_member1' (layout( location=1) out float) 560:? '@entryPointOutput.other_struct_member2' (layout( location=2) out float) 570:? '@entryPointOutput.other_struct_member3' (layout( location=3) out float) 58 59 60Linked fragment stage: 61 62 63Shader version: 500 64gl_FragCoord origin is upper left 650:? Sequence 660:11 Function Definition: Func1( ( temp structure{ temp 4-component vector of float color, temp float other_struct_member1, temp float other_struct_member2, temp float other_struct_member3}) 670:11 Function Parameters: 680:? Sequence 690:12 Branch: Return with expression 700:? Constant: 710:? 1.000000 720:? 1.000000 730:? 1.000000 740:? 1.000000 750:? 2.000000 760:? 3.000000 770:? 4.000000 780:16 Function Definition: @main( ( temp structure{ temp 4-component vector of float color, temp float other_struct_member1, temp float other_struct_member2, temp float other_struct_member3}) 790:16 Function Parameters: 800:? Sequence 810:17 Branch: Return with expression 820:17 Function Call: Func1( ( temp structure{ temp 4-component vector of float color, temp float other_struct_member1, temp float other_struct_member2, temp float other_struct_member3}) 830:16 Function Definition: main( ( temp void) 840:16 Function Parameters: 850:? Sequence 860:16 Sequence 870:16 move second child to first child ( temp structure{ temp 4-component vector of float color, temp float other_struct_member1, temp float other_struct_member2, temp float other_struct_member3}) 880:16 'flattenTemp' ( temp structure{ temp 4-component vector of float color, temp float other_struct_member1, temp float other_struct_member2, temp float other_struct_member3}) 890:16 Function Call: @main( ( temp structure{ temp 4-component vector of float color, temp float other_struct_member1, temp float other_struct_member2, temp float other_struct_member3}) 900:16 move second child to first child ( temp 4-component vector of float) 910:? '@entryPointOutput.color' (layout( location=0) out 4-component vector of float) 920:16 color: direct index for structure ( temp 4-component vector of float) 930:16 'flattenTemp' ( temp structure{ temp 4-component vector of float color, temp float other_struct_member1, temp float other_struct_member2, temp float other_struct_member3}) 940:16 Constant: 950:16 0 (const int) 960:16 move second child to first child ( temp float) 970:? '@entryPointOutput.other_struct_member1' (layout( location=1) out float) 980:16 other_struct_member1: direct index for structure ( temp float) 990:16 'flattenTemp' ( temp structure{ temp 4-component vector of float color, temp float other_struct_member1, temp float other_struct_member2, temp float other_struct_member3}) 1000:16 Constant: 1010:16 1 (const int) 1020:16 move second child to first child ( temp float) 1030:? '@entryPointOutput.other_struct_member2' (layout( location=2) out float) 1040:16 other_struct_member2: direct index for structure ( temp float) 1050:16 'flattenTemp' ( temp structure{ temp 4-component vector of float color, temp float other_struct_member1, temp float other_struct_member2, temp float other_struct_member3}) 1060:16 Constant: 1070:16 2 (const int) 1080:16 move second child to first child ( temp float) 1090:? '@entryPointOutput.other_struct_member3' (layout( location=3) out float) 1100:16 other_struct_member3: direct index for structure ( temp float) 1110:16 'flattenTemp' ( temp structure{ temp 4-component vector of float color, temp float other_struct_member1, temp float other_struct_member2, temp float other_struct_member3}) 1120:16 Constant: 1130:16 3 (const int) 1140:? Linker Objects 1150:? '@entryPointOutput.color' (layout( location=0) out 4-component vector of float) 1160:? '@entryPointOutput.other_struct_member1' (layout( location=1) out float) 1170:? '@entryPointOutput.other_struct_member2' (layout( location=2) out float) 1180:? '@entryPointOutput.other_struct_member3' (layout( location=3) out float) 119 120// Module Version 10000 121// Generated by (magic number): 8000a 122// Id's are bound by 49 123 124 Capability Shader 125 1: ExtInstImport "GLSL.std.450" 126 MemoryModel Logical GLSL450 127 EntryPoint Fragment 4 "main" 29 36 41 45 128 ExecutionMode 4 OriginUpperLeft 129 Source HLSL 500 130 Name 4 "main" 131 Name 8 "PS_OUTPUT" 132 MemberName 8(PS_OUTPUT) 0 "color" 133 MemberName 8(PS_OUTPUT) 1 "other_struct_member1" 134 MemberName 8(PS_OUTPUT) 2 "other_struct_member2" 135 MemberName 8(PS_OUTPUT) 3 "other_struct_member3" 136 Name 10 "Func1(" 137 Name 12 "@main(" 138 Name 26 "flattenTemp" 139 Name 29 "@entryPointOutput.color" 140 Name 36 "@entryPointOutput.other_struct_member1" 141 Name 41 "@entryPointOutput.other_struct_member2" 142 Name 45 "@entryPointOutput.other_struct_member3" 143 Decorate 29(@entryPointOutput.color) Location 0 144 Decorate 36(@entryPointOutput.other_struct_member1) Location 1 145 Decorate 41(@entryPointOutput.other_struct_member2) Location 2 146 Decorate 45(@entryPointOutput.other_struct_member3) Location 3 147 2: TypeVoid 148 3: TypeFunction 2 149 6: TypeFloat 32 150 7: TypeVector 6(float) 4 151 8(PS_OUTPUT): TypeStruct 7(fvec4) 6(float) 6(float) 6(float) 152 9: TypeFunction 8(PS_OUTPUT) 153 14: 6(float) Constant 1065353216 154 15: 7(fvec4) ConstantComposite 14 14 14 14 155 16: 6(float) Constant 1073741824 156 17: 6(float) Constant 1077936128 157 18: 6(float) Constant 1082130432 158 19:8(PS_OUTPUT) ConstantComposite 15 16 17 18 159 25: TypePointer Function 8(PS_OUTPUT) 160 28: TypePointer Output 7(fvec4) 16129(@entryPointOutput.color): 28(ptr) Variable Output 162 30: TypeInt 32 1 163 31: 30(int) Constant 0 164 32: TypePointer Function 7(fvec4) 165 35: TypePointer Output 6(float) 16636(@entryPointOutput.other_struct_member1): 35(ptr) Variable Output 167 37: 30(int) Constant 1 168 38: TypePointer Function 6(float) 16941(@entryPointOutput.other_struct_member2): 35(ptr) Variable Output 170 42: 30(int) Constant 2 17145(@entryPointOutput.other_struct_member3): 35(ptr) Variable Output 172 46: 30(int) Constant 3 173 4(main): 2 Function None 3 174 5: Label 175 26(flattenTemp): 25(ptr) Variable Function 176 27:8(PS_OUTPUT) FunctionCall 12(@main() 177 Store 26(flattenTemp) 27 178 33: 32(ptr) AccessChain 26(flattenTemp) 31 179 34: 7(fvec4) Load 33 180 Store 29(@entryPointOutput.color) 34 181 39: 38(ptr) AccessChain 26(flattenTemp) 37 182 40: 6(float) Load 39 183 Store 36(@entryPointOutput.other_struct_member1) 40 184 43: 38(ptr) AccessChain 26(flattenTemp) 42 185 44: 6(float) Load 43 186 Store 41(@entryPointOutput.other_struct_member2) 44 187 47: 38(ptr) AccessChain 26(flattenTemp) 46 188 48: 6(float) Load 47 189 Store 45(@entryPointOutput.other_struct_member3) 48 190 Return 191 FunctionEnd 192 10(Func1():8(PS_OUTPUT) Function None 9 193 11: Label 194 ReturnValue 19 195 FunctionEnd 196 12(@main():8(PS_OUTPUT) Function None 9 197 13: Label 198 22:8(PS_OUTPUT) FunctionCall 10(Func1() 199 ReturnValue 22 200 FunctionEnd 201