hlsl.scalarCast.vert Shader version: 500 0:? Sequence 0:5 Function Definition: r0( ( temp structure{ temp 4-component vector of float position, temp 2-component vector of float texCoord}) 0:5 Function Parameters: 0:? Sequence 0:7 Branch: Return with expression 0:7 Constant: 0:7 2.000000 0:7 2.000000 0:7 2.000000 0:7 2.000000 0:7 2.000000 0:7 2.000000 0:9 Function Definition: r1( ( temp structure{ temp 4-component vector of float position, temp 2-component vector of float texCoord}) 0:9 Function Parameters: 0:? Sequence 0:11 Branch: Return with expression 0:11 Constant: 0:11 3.000000 0:11 3.000000 0:11 3.000000 0:11 3.000000 0:11 3.000000 0:11 3.000000 0:13 Function Definition: r2( ( temp structure{ temp 4-component vector of float position, temp 2-component vector of float texCoord}) 0:13 Function Parameters: 0:? Sequence 0:15 Branch: Return with expression 0:15 Constant: 0:15 0.909297 0:15 0.909297 0:15 0.909297 0:15 0.909297 0:15 0.909297 0:15 0.909297 0:17 Function Definition: r3( ( temp structure{ temp 4-component vector of float position, temp 2-component vector of float texCoord}) 0:17 Function Parameters: 0:? Sequence 0:18 Sequence 0:18 move second child to first child ( temp float) 0:18 'f' ( temp float) 0:18 Constant: 0:18 2.000000 0:19 Branch: Return with expression 0:19 Construct structure ( temp structure{ temp 4-component vector of float position, temp 2-component vector of float texCoord}) 0:19 Construct vec4 ( temp 4-component vector of float) 0:19 'f' ( temp float) 0:19 'f' ( temp float) 0:19 'f' ( temp float) 0:19 'f' ( temp float) 0:19 Construct vec2 ( temp 2-component vector of float) 0:19 'f' ( temp float) 0:19 'f' ( temp float) 0:21 Function Definition: r4( ( temp structure{ temp 4-component vector of float position, temp 2-component vector of float texCoord}) 0:21 Function Parameters: 0:? Sequence 0:22 Sequence 0:22 move second child to first child ( temp float) 0:22 'f' ( temp float) 0:22 Constant: 0:22 2.000000 0:23 Branch: Return with expression 0:23 Comma ( temp structure{ temp 4-component vector of float position, temp 2-component vector of float texCoord}) 0:23 move second child to first child ( temp float) 0:23 'scalarCopy' ( temp float) 0:23 add ( temp float) 0:23 'f' ( temp float) 0:23 Constant: 0:23 1.000000 0:23 Construct structure ( temp structure{ temp 4-component vector of float position, temp 2-component vector of float texCoord}) 0:23 Construct vec4 ( temp 4-component vector of float) 0:23 'scalarCopy' ( temp float) 0:23 'scalarCopy' ( temp float) 0:23 'scalarCopy' ( temp float) 0:23 'scalarCopy' ( temp float) 0:23 Construct vec2 ( temp 2-component vector of float) 0:23 'scalarCopy' ( temp float) 0:23 'scalarCopy' ( temp float) 0:25 Function Definition: r5( ( temp structure{ temp 4-component vector of float position, temp 2-component vector of float texCoord}) 0:25 Function Parameters: 0:? Sequence 0:26 Sequence 0:26 move second child to first child ( temp float) 0:26 'f' ( temp float) 0:26 Constant: 0:26 2.000000 0:27 Branch: Return with expression 0:27 Comma ( temp structure{ temp 4-component vector of float position, temp 2-component vector of float texCoord}) 0:27 move second child to first child ( temp float) 0:27 'scalarCopy' ( temp float) 0:27 sine ( temp float) 0:27 'f' ( temp float) 0:27 Construct structure ( temp structure{ temp 4-component vector of float position, temp 2-component vector of float texCoord}) 0:27 Construct vec4 ( temp 4-component vector of float) 0:27 'scalarCopy' ( temp float) 0:27 'scalarCopy' ( temp float) 0:27 'scalarCopy' ( temp float) 0:27 'scalarCopy' ( temp float) 0:27 Construct vec2 ( temp 2-component vector of float) 0:27 'scalarCopy' ( temp float) 0:27 'scalarCopy' ( temp float) 0:29 Function Definition: @main( ( temp structure{ temp 4-component vector of float position, temp 2-component vector of float texCoord}) 0:29 Function Parameters: 0:? Sequence 0:30 Sequence 0:30 move second child to first child ( temp structure{ temp 4-component vector of float position, temp 2-component vector of float texCoord}) 0:30 'v0' ( temp structure{ temp 4-component vector of float position, temp 2-component vector of float texCoord}) 0:30 Function Call: r0( ( temp structure{ temp 4-component vector of float position, temp 2-component vector of float texCoord}) 0:31 Sequence 0:31 move second child to first child ( temp structure{ temp 4-component vector of float position, temp 2-component vector of float texCoord}) 0:31 'v1' ( temp structure{ temp 4-component vector of float position, temp 2-component vector of float texCoord}) 0:31 Function Call: r1( ( temp structure{ temp 4-component vector of float position, temp 2-component vector of float texCoord}) 0:32 Sequence 0:32 move second child to first child ( temp structure{ temp 4-component vector of float position, temp 2-component vector of float texCoord}) 0:32 'v2' ( temp structure{ temp 4-component vector of float position, temp 2-component vector of float texCoord}) 0:32 Function Call: r2( ( temp structure{ temp 4-component vector of float position, temp 2-component vector of float texCoord}) 0:33 Sequence 0:33 move second child to first child ( temp structure{ temp 4-component vector of float position, temp 2-component vector of float texCoord}) 0:33 'v3' ( temp structure{ temp 4-component vector of float position, temp 2-component vector of float texCoord}) 0:33 Function Call: r3( ( temp structure{ temp 4-component vector of float position, temp 2-component vector of float texCoord}) 0:34 Sequence 0:34 move second child to first child ( temp structure{ temp 4-component vector of float position, temp 2-component vector of float texCoord}) 0:34 'v4' ( temp structure{ temp 4-component vector of float position, temp 2-component vector of float texCoord}) 0:34 Function Call: r4( ( temp structure{ temp 4-component vector of float position, temp 2-component vector of float texCoord}) 0:35 Sequence 0:35 move second child to first child ( temp structure{ temp 4-component vector of float position, temp 2-component vector of float texCoord}) 0:35 'v5' ( temp structure{ temp 4-component vector of float position, temp 2-component vector of float texCoord}) 0:35 Function Call: r5( ( temp structure{ temp 4-component vector of float position, temp 2-component vector of float texCoord}) 0:36 Branch: Return with expression 0:36 Constant: 0:36 1.000000 0:36 1.000000 0:36 1.000000 0:36 1.000000 0:36 1.000000 0:36 1.000000 0:29 Function Definition: main( ( temp void) 0:29 Function Parameters: 0:? Sequence 0:29 Sequence 0:29 move second child to first child ( temp structure{ temp 4-component vector of float position, temp 2-component vector of float texCoord}) 0:29 'flattenTemp' ( temp structure{ temp 4-component vector of float position, temp 2-component vector of float texCoord}) 0:29 Function Call: @main( ( temp structure{ temp 4-component vector of float position, temp 2-component vector of float texCoord}) 0:29 move second child to first child ( temp 4-component vector of float) 0:? '@entryPointOutput_position' ( out 4-component vector of float Position) 0:29 position: direct index for structure ( temp 4-component vector of float) 0:29 'flattenTemp' ( temp structure{ temp 4-component vector of float position, temp 2-component vector of float texCoord}) 0:29 Constant: 0:29 0 (const int) 0:29 move second child to first child ( temp 2-component vector of float) 0:29 texCoord: direct index for structure ( temp 2-component vector of float) 0:29 '@entryPointOutput' (layout( location=0) out structure{ temp 2-component vector of float texCoord}) 0:29 Constant: 0:29 0 (const int) 0:29 texCoord: direct index for structure ( temp 2-component vector of float) 0:29 'flattenTemp' ( temp structure{ temp 4-component vector of float position, temp 2-component vector of float texCoord}) 0:29 Constant: 0:29 1 (const int) 0:? Linker Objects 0:? '@entryPointOutput' (layout( location=0) out structure{ temp 2-component vector of float texCoord}) Linked vertex stage: Shader version: 500 0:? Sequence 0:5 Function Definition: r0( ( temp structure{ temp 4-component vector of float position, temp 2-component vector of float texCoord}) 0:5 Function Parameters: 0:? Sequence 0:7 Branch: Return with expression 0:7 Constant: 0:7 2.000000 0:7 2.000000 0:7 2.000000 0:7 2.000000 0:7 2.000000 0:7 2.000000 0:9 Function Definition: r1( ( temp structure{ temp 4-component vector of float position, temp 2-component vector of float texCoord}) 0:9 Function Parameters: 0:? Sequence 0:11 Branch: Return with expression 0:11 Constant: 0:11 3.000000 0:11 3.000000 0:11 3.000000 0:11 3.000000 0:11 3.000000 0:11 3.000000 0:13 Function Definition: r2( ( temp structure{ temp 4-component vector of float position, temp 2-component vector of float texCoord}) 0:13 Function Parameters: 0:? Sequence 0:15 Branch: Return with expression 0:15 Constant: 0:15 0.909297 0:15 0.909297 0:15 0.909297 0:15 0.909297 0:15 0.909297 0:15 0.909297 0:17 Function Definition: r3( ( temp structure{ temp 4-component vector of float position, temp 2-component vector of float texCoord}) 0:17 Function Parameters: 0:? Sequence 0:18 Sequence 0:18 move second child to first child ( temp float) 0:18 'f' ( temp float) 0:18 Constant: 0:18 2.000000 0:19 Branch: Return with expression 0:19 Construct structure ( temp structure{ temp 4-component vector of float position, temp 2-component vector of float texCoord}) 0:19 Construct vec4 ( temp 4-component vector of float) 0:19 'f' ( temp float) 0:19 'f' ( temp float) 0:19 'f' ( temp float) 0:19 'f' ( temp float) 0:19 Construct vec2 ( temp 2-component vector of float) 0:19 'f' ( temp float) 0:19 'f' ( temp float) 0:21 Function Definition: r4( ( temp structure{ temp 4-component vector of float position, temp 2-component vector of float texCoord}) 0:21 Function Parameters: 0:? Sequence 0:22 Sequence 0:22 move second child to first child ( temp float) 0:22 'f' ( temp float) 0:22 Constant: 0:22 2.000000 0:23 Branch: Return with expression 0:23 Comma ( temp structure{ temp 4-component vector of float position, temp 2-component vector of float texCoord}) 0:23 move second child to first child ( temp float) 0:23 'scalarCopy' ( temp float) 0:23 add ( temp float) 0:23 'f' ( temp float) 0:23 Constant: 0:23 1.000000 0:23 Construct structure ( temp structure{ temp 4-component vector of float position, temp 2-component vector of float texCoord}) 0:23 Construct vec4 ( temp 4-component vector of float) 0:23 'scalarCopy' ( temp float) 0:23 'scalarCopy' ( temp float) 0:23 'scalarCopy' ( temp float) 0:23 'scalarCopy' ( temp float) 0:23 Construct vec2 ( temp 2-component vector of float) 0:23 'scalarCopy' ( temp float) 0:23 'scalarCopy' ( temp float) 0:25 Function Definition: r5( ( temp structure{ temp 4-component vector of float position, temp 2-component vector of float texCoord}) 0:25 Function Parameters: 0:? Sequence 0:26 Sequence 0:26 move second child to first child ( temp float) 0:26 'f' ( temp float) 0:26 Constant: 0:26 2.000000 0:27 Branch: Return with expression 0:27 Comma ( temp structure{ temp 4-component vector of float position, temp 2-component vector of float texCoord}) 0:27 move second child to first child ( temp float) 0:27 'scalarCopy' ( temp float) 0:27 sine ( temp float) 0:27 'f' ( temp float) 0:27 Construct structure ( temp structure{ temp 4-component vector of float position, temp 2-component vector of float texCoord}) 0:27 Construct vec4 ( temp 4-component vector of float) 0:27 'scalarCopy' ( temp float) 0:27 'scalarCopy' ( temp float) 0:27 'scalarCopy' ( temp float) 0:27 'scalarCopy' ( temp float) 0:27 Construct vec2 ( temp 2-component vector of float) 0:27 'scalarCopy' ( temp float) 0:27 'scalarCopy' ( temp float) 0:29 Function Definition: @main( ( temp structure{ temp 4-component vector of float position, temp 2-component vector of float texCoord}) 0:29 Function Parameters: 0:? Sequence 0:30 Sequence 0:30 move second child to first child ( temp structure{ temp 4-component vector of float position, temp 2-component vector of float texCoord}) 0:30 'v0' ( temp structure{ temp 4-component vector of float position, temp 2-component vector of float texCoord}) 0:30 Function Call: r0( ( temp structure{ temp 4-component vector of float position, temp 2-component vector of float texCoord}) 0:31 Sequence 0:31 move second child to first child ( temp structure{ temp 4-component vector of float position, temp 2-component vector of float texCoord}) 0:31 'v1' ( temp structure{ temp 4-component vector of float position, temp 2-component vector of float texCoord}) 0:31 Function Call: r1( ( temp structure{ temp 4-component vector of float position, temp 2-component vector of float texCoord}) 0:32 Sequence 0:32 move second child to first child ( temp structure{ temp 4-component vector of float position, temp 2-component vector of float texCoord}) 0:32 'v2' ( temp structure{ temp 4-component vector of float position, temp 2-component vector of float texCoord}) 0:32 Function Call: r2( ( temp structure{ temp 4-component vector of float position, temp 2-component vector of float texCoord}) 0:33 Sequence 0:33 move second child to first child ( temp structure{ temp 4-component vector of float position, temp 2-component vector of float texCoord}) 0:33 'v3' ( temp structure{ temp 4-component vector of float position, temp 2-component vector of float texCoord}) 0:33 Function Call: r3( ( temp structure{ temp 4-component vector of float position, temp 2-component vector of float texCoord}) 0:34 Sequence 0:34 move second child to first child ( temp structure{ temp 4-component vector of float position, temp 2-component vector of float texCoord}) 0:34 'v4' ( temp structure{ temp 4-component vector of float position, temp 2-component vector of float texCoord}) 0:34 Function Call: r4( ( temp structure{ temp 4-component vector of float position, temp 2-component vector of float texCoord}) 0:35 Sequence 0:35 move second child to first child ( temp structure{ temp 4-component vector of float position, temp 2-component vector of float texCoord}) 0:35 'v5' ( temp structure{ temp 4-component vector of float position, temp 2-component vector of float texCoord}) 0:35 Function Call: r5( ( temp structure{ temp 4-component vector of float position, temp 2-component vector of float texCoord}) 0:36 Branch: Return with expression 0:36 Constant: 0:36 1.000000 0:36 1.000000 0:36 1.000000 0:36 1.000000 0:36 1.000000 0:36 1.000000 0:29 Function Definition: main( ( temp void) 0:29 Function Parameters: 0:? Sequence 0:29 Sequence 0:29 move second child to first child ( temp structure{ temp 4-component vector of float position, temp 2-component vector of float texCoord}) 0:29 'flattenTemp' ( temp structure{ temp 4-component vector of float position, temp 2-component vector of float texCoord}) 0:29 Function Call: @main( ( temp structure{ temp 4-component vector of float position, temp 2-component vector of float texCoord}) 0:29 move second child to first child ( temp 4-component vector of float) 0:? '@entryPointOutput_position' ( out 4-component vector of float Position) 0:29 position: direct index for structure ( temp 4-component vector of float) 0:29 'flattenTemp' ( temp structure{ temp 4-component vector of float position, temp 2-component vector of float texCoord}) 0:29 Constant: 0:29 0 (const int) 0:29 move second child to first child ( temp 2-component vector of float) 0:29 texCoord: direct index for structure ( temp 2-component vector of float) 0:29 '@entryPointOutput' (layout( location=0) out structure{ temp 2-component vector of float texCoord}) 0:29 Constant: 0:29 0 (const int) 0:29 texCoord: direct index for structure ( temp 2-component vector of float) 0:29 'flattenTemp' ( temp structure{ temp 4-component vector of float position, temp 2-component vector of float texCoord}) 0:29 Constant: 0:29 1 (const int) 0:? Linker Objects 0:? '@entryPointOutput' (layout( location=0) out structure{ temp 2-component vector of float texCoord}) // Module Version 10000 // Generated by (magic number): 80001 // Id's are bound by 123 Capability Shader 1: ExtInstImport "GLSL.std.450" MemoryModel Logical GLSL450 EntryPoint Vertex 4 "main" 108 116 Source HLSL 500 Name 4 "main" Name 9 "VertexOut" MemberName 9(VertexOut) 0 "position" MemberName 9(VertexOut) 1 "texCoord" Name 11 "r0(" Name 13 "r1(" Name 15 "r2(" Name 17 "r3(" Name 19 "r4(" Name 21 "r5(" Name 23 "@main(" Name 44 "f" Name 56 "f" Name 57 "scalarCopy" Name 72 "f" Name 73 "scalarCopy" Name 88 "v0" Name 90 "v1" Name 92 "v2" Name 94 "v3" Name 96 "v4" Name 98 "v5" Name 105 "flattenTemp" Name 108 "@entryPointOutput_position" Name 114 "VertexOut" MemberName 114(VertexOut) 0 "texCoord" Name 116 "@entryPointOutput" Decorate 108(@entryPointOutput_position) BuiltIn Position Decorate 116(@entryPointOutput) Location 0 2: TypeVoid 3: TypeFunction 2 6: TypeFloat 32 7: TypeVector 6(float) 4 8: TypeVector 6(float) 2 9(VertexOut): TypeStruct 7(fvec4) 8(fvec2) 10: TypeFunction 9(VertexOut) 25: 6(float) Constant 1073741824 26: 7(fvec4) ConstantComposite 25 25 25 25 27: 8(fvec2) ConstantComposite 25 25 28:9(VertexOut) ConstantComposite 26 27 31: 6(float) Constant 1077936128 32: 7(fvec4) ConstantComposite 31 31 31 31 33: 8(fvec2) ConstantComposite 31 31 34:9(VertexOut) ConstantComposite 32 33 37: 6(float) Constant 1063831479 38: 7(fvec4) ConstantComposite 37 37 37 37 39: 8(fvec2) ConstantComposite 37 37 40:9(VertexOut) ConstantComposite 38 39 43: TypePointer Function 6(float) 59: 6(float) Constant 1065353216 87: TypePointer Function 9(VertexOut) 100: 7(fvec4) ConstantComposite 59 59 59 59 101: 8(fvec2) ConstantComposite 59 59 102:9(VertexOut) ConstantComposite 100 101 107: TypePointer Output 7(fvec4) 108(@entryPointOutput_position): 107(ptr) Variable Output 109: TypeInt 32 1 110: 109(int) Constant 0 111: TypePointer Function 7(fvec4) 114(VertexOut): TypeStruct 8(fvec2) 115: TypePointer Output 114(VertexOut) 116(@entryPointOutput): 115(ptr) Variable Output 117: 109(int) Constant 1 118: TypePointer Function 8(fvec2) 121: TypePointer Output 8(fvec2) 4(main): 2 Function None 3 5: Label 105(flattenTemp): 87(ptr) Variable Function 106:9(VertexOut) FunctionCall 23(@main() Store 105(flattenTemp) 106 112: 111(ptr) AccessChain 105(flattenTemp) 110 113: 7(fvec4) Load 112 Store 108(@entryPointOutput_position) 113 119: 118(ptr) AccessChain 105(flattenTemp) 117 120: 8(fvec2) Load 119 122: 121(ptr) AccessChain 116(@entryPointOutput) 110 Store 122 120 Return FunctionEnd 11(r0():9(VertexOut) Function None 10 12: Label ReturnValue 28 FunctionEnd 13(r1():9(VertexOut) Function None 10 14: Label ReturnValue 34 FunctionEnd 15(r2():9(VertexOut) Function None 10 16: Label ReturnValue 40 FunctionEnd 17(r3():9(VertexOut) Function None 10 18: Label 44(f): 43(ptr) Variable Function Store 44(f) 25 45: 6(float) Load 44(f) 46: 6(float) Load 44(f) 47: 6(float) Load 44(f) 48: 6(float) Load 44(f) 49: 7(fvec4) CompositeConstruct 45 46 47 48 50: 6(float) Load 44(f) 51: 6(float) Load 44(f) 52: 8(fvec2) CompositeConstruct 50 51 53:9(VertexOut) CompositeConstruct 49 52 ReturnValue 53 FunctionEnd 19(r4():9(VertexOut) Function None 10 20: Label 56(f): 43(ptr) Variable Function 57(scalarCopy): 43(ptr) Variable Function Store 56(f) 25 58: 6(float) Load 56(f) 60: 6(float) FAdd 58 59 Store 57(scalarCopy) 60 61: 6(float) Load 57(scalarCopy) 62: 6(float) Load 57(scalarCopy) 63: 6(float) Load 57(scalarCopy) 64: 6(float) Load 57(scalarCopy) 65: 7(fvec4) CompositeConstruct 61 62 63 64 66: 6(float) Load 57(scalarCopy) 67: 6(float) Load 57(scalarCopy) 68: 8(fvec2) CompositeConstruct 66 67 69:9(VertexOut) CompositeConstruct 65 68 ReturnValue 69 FunctionEnd 21(r5():9(VertexOut) Function None 10 22: Label 72(f): 43(ptr) Variable Function 73(scalarCopy): 43(ptr) Variable Function Store 72(f) 25 74: 6(float) Load 72(f) 75: 6(float) ExtInst 1(GLSL.std.450) 13(Sin) 74 Store 73(scalarCopy) 75 76: 6(float) Load 73(scalarCopy) 77: 6(float) Load 73(scalarCopy) 78: 6(float) Load 73(scalarCopy) 79: 6(float) Load 73(scalarCopy) 80: 7(fvec4) CompositeConstruct 76 77 78 79 81: 6(float) Load 73(scalarCopy) 82: 6(float) Load 73(scalarCopy) 83: 8(fvec2) CompositeConstruct 81 82 84:9(VertexOut) CompositeConstruct 80 83 ReturnValue 84 FunctionEnd 23(@main():9(VertexOut) Function None 10 24: Label 88(v0): 87(ptr) Variable Function 90(v1): 87(ptr) Variable Function 92(v2): 87(ptr) Variable Function 94(v3): 87(ptr) Variable Function 96(v4): 87(ptr) Variable Function 98(v5): 87(ptr) Variable Function 89:9(VertexOut) FunctionCall 11(r0() Store 88(v0) 89 91:9(VertexOut) FunctionCall 13(r1() Store 90(v1) 91 93:9(VertexOut) FunctionCall 15(r2() Store 92(v2) 93 95:9(VertexOut) FunctionCall 17(r3() Store 94(v3) 95 97:9(VertexOut) FunctionCall 19(r4() Store 96(v4) 97 99:9(VertexOut) FunctionCall 21(r5() Store 98(v5) 99 ReturnValue 102 FunctionEnd