hlsl.hull.ctrlpt-1.tesc Shader version: 450 vertices = 3 0:? Sequence 0:27 Function Definition: @main(struct-hs_in_t-vf31[3];u1; ( temp structure{ temp 3-component vector of float val}) 0:27 Function Parameters: 0:27 'i' ( in 3-element array of structure{ temp 3-component vector of float val}) 0:27 'cpid' ( in uint) 0:? Sequence 0:29 move second child to first child ( temp 3-component vector of float) 0:29 val: direct index for structure ( temp 3-component vector of float) 0:29 'o' ( temp structure{ temp 3-component vector of float val}) 0:29 Constant: 0:29 0 (const int) 0:29 Construct vec3 ( temp 3-component vector of float) 0:29 Convert uint to float ( temp float) 0:29 'cpid' ( in uint) 0:30 Branch: Return with expression 0:30 'o' ( temp structure{ temp 3-component vector of float val}) 0:27 Function Definition: main( ( temp void) 0:27 Function Parameters: 0:? Sequence 0:27 move second child to first child ( temp 3-element array of structure{ temp 3-component vector of float val}) 0:? 'i' ( temp 3-element array of structure{ temp 3-component vector of float val}) 0:? 'i' (layout( location=0) in 3-element array of structure{ temp 3-component vector of float val}) 0:27 move second child to first child ( temp uint) 0:? 'cpid' ( temp uint) 0:? 'cpid' ( in uint InvocationID) 0:27 move second child to first child ( temp structure{ temp 3-component vector of float val}) 0:? '@entryPointOutput' (layout( location=0) out structure{ temp 3-component vector of float val}) 0:27 Function Call: @main(struct-hs_in_t-vf31[3];u1; ( temp structure{ temp 3-component vector of float val}) 0:? 'i' ( temp 3-element array of structure{ temp 3-component vector of float val}) 0:? 'cpid' ( temp uint) 0:? Barrier ( temp void) 0:? Test condition and select ( temp void) 0:? Condition 0:? Compare Equal ( temp bool) 0:? 'cpid' ( in uint InvocationID) 0:? Constant: 0:? 0 (const int) 0:? true case 0:? Sequence 0:? move second child to first child ( temp structure{ temp 3-component vector of float val}) 0:? direct index ( temp structure{ temp 3-component vector of float val}) 0:? 'pcf_out' ( temp 3-element array of structure{ temp 3-component vector of float val}) 0:? Constant: 0:? 0 (const int) 0:? Function Call: @main(struct-hs_in_t-vf31[3];u1; ( temp structure{ temp 3-component vector of float val}) 0:? 'i' ( temp 3-element array of structure{ temp 3-component vector of float val}) 0:? Constant: 0:? 0 (const uint) 0:? move second child to first child ( temp structure{ temp 3-component vector of float val}) 0:? direct index ( temp structure{ temp 3-component vector of float val}) 0:? 'pcf_out' ( temp 3-element array of structure{ temp 3-component vector of float val}) 0:? Constant: 0:? 1 (const int) 0:? Function Call: @main(struct-hs_in_t-vf31[3];u1; ( temp structure{ temp 3-component vector of float val}) 0:? 'i' ( temp 3-element array of structure{ temp 3-component vector of float val}) 0:? Constant: 0:? 1 (const uint) 0:? move second child to first child ( temp structure{ temp 3-component vector of float val}) 0:? direct index ( temp structure{ temp 3-component vector of float val}) 0:? 'pcf_out' ( temp 3-element array of structure{ temp 3-component vector of float val}) 0:? Constant: 0:? 2 (const int) 0:? Function Call: @main(struct-hs_in_t-vf31[3];u1; ( temp structure{ temp 3-component vector of float val}) 0:? 'i' ( temp 3-element array of structure{ temp 3-component vector of float val}) 0:? Constant: 0:? 2 (const uint) 0:? move second child to first child ( temp structure{ temp 3-element array of float tfactor, temp float flInFactor}) 0:? '@patchConstantResult' ( temp structure{ temp 3-element array of float tfactor, temp float flInFactor}) 0:? Function Call: PCF(struct-hs_out_t-vf31[3]; ( temp structure{ temp 3-element array of float tfactor, temp float flInFactor}) 0:? 'pcf_out' ( temp 3-element array of structure{ temp 3-component vector of float val}) 0:? Sequence 0:? move second child to first child ( temp float) 0:? direct index ( patch out float TessLevelOuter) 0:? '@patchConstantOutput_tfactor' ( patch out 4-element array of float TessLevelOuter) 0:? Constant: 0:? 0 (const int) 0:? direct index ( temp float) 0:? tfactor: direct index for structure ( temp 3-element array of float) 0:? '@patchConstantResult' ( temp structure{ temp 3-element array of float tfactor, temp float flInFactor}) 0:? Constant: 0:? 0 (const int) 0:? Constant: 0:? 0 (const int) 0:? move second child to first child ( temp float) 0:? direct index ( patch out float TessLevelOuter) 0:? '@patchConstantOutput_tfactor' ( patch out 4-element array of float TessLevelOuter) 0:? Constant: 0:? 1 (const int) 0:? direct index ( temp float) 0:? tfactor: direct index for structure ( temp 3-element array of float) 0:? '@patchConstantResult' ( temp structure{ temp 3-element array of float tfactor, temp float flInFactor}) 0:? Constant: 0:? 0 (const int) 0:? Constant: 0:? 1 (const int) 0:? move second child to first child ( temp float) 0:? direct index ( patch out float TessLevelOuter) 0:? '@patchConstantOutput_tfactor' ( patch out 4-element array of float TessLevelOuter) 0:? Constant: 0:? 2 (const int) 0:? direct index ( temp float) 0:? tfactor: direct index for structure ( temp 3-element array of float) 0:? '@patchConstantResult' ( temp structure{ temp 3-element array of float tfactor, temp float flInFactor}) 0:? Constant: 0:? 0 (const int) 0:? Constant: 0:? 2 (const int) 0:? move second child to first child ( temp float) 0:? direct index ( patch out float TessLevelInner) 0:? '@patchConstantOutput_flInFactor' ( patch out 2-element array of float TessLevelInner) 0:? Constant: 0:? 0 (const int) 0:? flInFactor: direct index for structure ( temp float) 0:? '@patchConstantResult' ( temp structure{ temp 3-element array of float tfactor, temp float flInFactor}) 0:? Constant: 0:? 1 (const int) 0:34 Function Definition: PCF(struct-hs_out_t-vf31[3]; ( temp structure{ temp 3-element array of float tfactor, temp float flInFactor}) 0:34 Function Parameters: 0:34 'pcf_out' ( const (read only) 3-element array of structure{ temp 3-component vector of float val}) 0:? Sequence 0:37 move second child to first child ( temp float) 0:37 direct index ( temp float) 0:37 tfactor: direct index for structure ( temp 3-element array of float) 0:37 'o' ( temp structure{ temp 3-element array of float tfactor, temp float flInFactor}) 0:37 Constant: 0:37 0 (const int) 0:37 Constant: 0:37 0 (const int) 0:37 direct index ( temp float) 0:37 val: direct index for structure ( temp 3-component vector of float) 0:37 direct index ( temp structure{ temp 3-component vector of float val}) 0:37 'pcf_out' ( const (read only) 3-element array of structure{ temp 3-component vector of float val}) 0:37 Constant: 0:37 0 (const int) 0:37 Constant: 0:37 0 (const int) 0:37 Constant: 0:37 0 (const int) 0:38 move second child to first child ( temp float) 0:38 direct index ( temp float) 0:38 tfactor: direct index for structure ( temp 3-element array of float) 0:38 'o' ( temp structure{ temp 3-element array of float tfactor, temp float flInFactor}) 0:38 Constant: 0:38 0 (const int) 0:38 Constant: 0:38 1 (const int) 0:38 direct index ( temp float) 0:38 val: direct index for structure ( temp 3-component vector of float) 0:38 direct index ( temp structure{ temp 3-component vector of float val}) 0:38 'pcf_out' ( const (read only) 3-element array of structure{ temp 3-component vector of float val}) 0:38 Constant: 0:38 1 (const int) 0:38 Constant: 0:38 0 (const int) 0:38 Constant: 0:38 0 (const int) 0:39 move second child to first child ( temp float) 0:39 direct index ( temp float) 0:39 tfactor: direct index for structure ( temp 3-element array of float) 0:39 'o' ( temp structure{ temp 3-element array of float tfactor, temp float flInFactor}) 0:39 Constant: 0:39 0 (const int) 0:39 Constant: 0:39 2 (const int) 0:39 direct index ( temp float) 0:39 val: direct index for structure ( temp 3-component vector of float) 0:39 direct index ( temp structure{ temp 3-component vector of float val}) 0:39 'pcf_out' ( const (read only) 3-element array of structure{ temp 3-component vector of float val}) 0:39 Constant: 0:39 2 (const int) 0:39 Constant: 0:39 0 (const int) 0:39 Constant: 0:39 0 (const int) 0:40 move second child to first child ( temp float) 0:40 flInFactor: direct index for structure ( temp float) 0:40 'o' ( temp structure{ temp 3-element array of float tfactor, temp float flInFactor}) 0:40 Constant: 0:40 1 (const int) 0:40 Constant: 0:40 4.000000 0:42 Branch: Return with expression 0:42 'o' ( temp structure{ temp 3-element array of float tfactor, temp float flInFactor}) 0:? Linker Objects 0:? '@entryPointOutput' (layout( location=0) out structure{ temp 3-component vector of float val}) 0:? 'i' (layout( location=0) in 3-element array of structure{ temp 3-component vector of float val}) 0:? 'cpid' ( in uint InvocationID) 0:? '@patchConstantOutput' (layout( location=1) patch out structure{}) 0:? '@patchConstantOutput_tfactor' ( patch out 4-element array of float TessLevelOuter) 0:? '@patchConstantOutput_flInFactor' ( patch out 2-element array of float TessLevelInner) Linked tessellation control stage: Shader version: 450 vertices = 3 0:? Sequence 0:27 Function Definition: @main(struct-hs_in_t-vf31[3];u1; ( temp structure{ temp 3-component vector of float val}) 0:27 Function Parameters: 0:27 'i' ( in 3-element array of structure{ temp 3-component vector of float val}) 0:27 'cpid' ( in uint) 0:? Sequence 0:29 move second child to first child ( temp 3-component vector of float) 0:29 val: direct index for structure ( temp 3-component vector of float) 0:29 'o' ( temp structure{ temp 3-component vector of float val}) 0:29 Constant: 0:29 0 (const int) 0:29 Construct vec3 ( temp 3-component vector of float) 0:29 Convert uint to float ( temp float) 0:29 'cpid' ( in uint) 0:30 Branch: Return with expression 0:30 'o' ( temp structure{ temp 3-component vector of float val}) 0:27 Function Definition: main( ( temp void) 0:27 Function Parameters: 0:? Sequence 0:27 move second child to first child ( temp 3-element array of structure{ temp 3-component vector of float val}) 0:? 'i' ( temp 3-element array of structure{ temp 3-component vector of float val}) 0:? 'i' (layout( location=0) in 3-element array of structure{ temp 3-component vector of float val}) 0:27 move second child to first child ( temp uint) 0:? 'cpid' ( temp uint) 0:? 'cpid' ( in uint InvocationID) 0:27 move second child to first child ( temp structure{ temp 3-component vector of float val}) 0:? '@entryPointOutput' (layout( location=0) out structure{ temp 3-component vector of float val}) 0:27 Function Call: @main(struct-hs_in_t-vf31[3];u1; ( temp structure{ temp 3-component vector of float val}) 0:? 'i' ( temp 3-element array of structure{ temp 3-component vector of float val}) 0:? 'cpid' ( temp uint) 0:? Barrier ( temp void) 0:? Test condition and select ( temp void) 0:? Condition 0:? Compare Equal ( temp bool) 0:? 'cpid' ( in uint InvocationID) 0:? Constant: 0:? 0 (const int) 0:? true case 0:? Sequence 0:? move second child to first child ( temp structure{ temp 3-component vector of float val}) 0:? direct index ( temp structure{ temp 3-component vector of float val}) 0:? 'pcf_out' ( temp 3-element array of structure{ temp 3-component vector of float val}) 0:? Constant: 0:? 0 (const int) 0:? Function Call: @main(struct-hs_in_t-vf31[3];u1; ( temp structure{ temp 3-component vector of float val}) 0:? 'i' ( temp 3-element array of structure{ temp 3-component vector of float val}) 0:? Constant: 0:? 0 (const uint) 0:? move second child to first child ( temp structure{ temp 3-component vector of float val}) 0:? direct index ( temp structure{ temp 3-component vector of float val}) 0:? 'pcf_out' ( temp 3-element array of structure{ temp 3-component vector of float val}) 0:? Constant: 0:? 1 (const int) 0:? Function Call: @main(struct-hs_in_t-vf31[3];u1; ( temp structure{ temp 3-component vector of float val}) 0:? 'i' ( temp 3-element array of structure{ temp 3-component vector of float val}) 0:? Constant: 0:? 1 (const uint) 0:? move second child to first child ( temp structure{ temp 3-component vector of float val}) 0:? direct index ( temp structure{ temp 3-component vector of float val}) 0:? 'pcf_out' ( temp 3-element array of structure{ temp 3-component vector of float val}) 0:? Constant: 0:? 2 (const int) 0:? Function Call: @main(struct-hs_in_t-vf31[3];u1; ( temp structure{ temp 3-component vector of float val}) 0:? 'i' ( temp 3-element array of structure{ temp 3-component vector of float val}) 0:? Constant: 0:? 2 (const uint) 0:? move second child to first child ( temp structure{ temp 3-element array of float tfactor, temp float flInFactor}) 0:? '@patchConstantResult' ( temp structure{ temp 3-element array of float tfactor, temp float flInFactor}) 0:? Function Call: PCF(struct-hs_out_t-vf31[3]; ( temp structure{ temp 3-element array of float tfactor, temp float flInFactor}) 0:? 'pcf_out' ( temp 3-element array of structure{ temp 3-component vector of float val}) 0:? Sequence 0:? move second child to first child ( temp float) 0:? direct index ( patch out float TessLevelOuter) 0:? '@patchConstantOutput_tfactor' ( patch out 4-element array of float TessLevelOuter) 0:? Constant: 0:? 0 (const int) 0:? direct index ( temp float) 0:? tfactor: direct index for structure ( temp 3-element array of float) 0:? '@patchConstantResult' ( temp structure{ temp 3-element array of float tfactor, temp float flInFactor}) 0:? Constant: 0:? 0 (const int) 0:? Constant: 0:? 0 (const int) 0:? move second child to first child ( temp float) 0:? direct index ( patch out float TessLevelOuter) 0:? '@patchConstantOutput_tfactor' ( patch out 4-element array of float TessLevelOuter) 0:? Constant: 0:? 1 (const int) 0:? direct index ( temp float) 0:? tfactor: direct index for structure ( temp 3-element array of float) 0:? '@patchConstantResult' ( temp structure{ temp 3-element array of float tfactor, temp float flInFactor}) 0:? Constant: 0:? 0 (const int) 0:? Constant: 0:? 1 (const int) 0:? move second child to first child ( temp float) 0:? direct index ( patch out float TessLevelOuter) 0:? '@patchConstantOutput_tfactor' ( patch out 4-element array of float TessLevelOuter) 0:? Constant: 0:? 2 (const int) 0:? direct index ( temp float) 0:? tfactor: direct index for structure ( temp 3-element array of float) 0:? '@patchConstantResult' ( temp structure{ temp 3-element array of float tfactor, temp float flInFactor}) 0:? Constant: 0:? 0 (const int) 0:? Constant: 0:? 2 (const int) 0:? move second child to first child ( temp float) 0:? direct index ( patch out float TessLevelInner) 0:? '@patchConstantOutput_flInFactor' ( patch out 2-element array of float TessLevelInner) 0:? Constant: 0:? 0 (const int) 0:? flInFactor: direct index for structure ( temp float) 0:? '@patchConstantResult' ( temp structure{ temp 3-element array of float tfactor, temp float flInFactor}) 0:? Constant: 0:? 1 (const int) 0:34 Function Definition: PCF(struct-hs_out_t-vf31[3]; ( temp structure{ temp 3-element array of float tfactor, temp float flInFactor}) 0:34 Function Parameters: 0:34 'pcf_out' ( const (read only) 3-element array of structure{ temp 3-component vector of float val}) 0:? Sequence 0:37 move second child to first child ( temp float) 0:37 direct index ( temp float) 0:37 tfactor: direct index for structure ( temp 3-element array of float) 0:37 'o' ( temp structure{ temp 3-element array of float tfactor, temp float flInFactor}) 0:37 Constant: 0:37 0 (const int) 0:37 Constant: 0:37 0 (const int) 0:37 direct index ( temp float) 0:37 val: direct index for structure ( temp 3-component vector of float) 0:37 direct index ( temp structure{ temp 3-component vector of float val}) 0:37 'pcf_out' ( const (read only) 3-element array of structure{ temp 3-component vector of float val}) 0:37 Constant: 0:37 0 (const int) 0:37 Constant: 0:37 0 (const int) 0:37 Constant: 0:37 0 (const int) 0:38 move second child to first child ( temp float) 0:38 direct index ( temp float) 0:38 tfactor: direct index for structure ( temp 3-element array of float) 0:38 'o' ( temp structure{ temp 3-element array of float tfactor, temp float flInFactor}) 0:38 Constant: 0:38 0 (const int) 0:38 Constant: 0:38 1 (const int) 0:38 direct index ( temp float) 0:38 val: direct index for structure ( temp 3-component vector of float) 0:38 direct index ( temp structure{ temp 3-component vector of float val}) 0:38 'pcf_out' ( const (read only) 3-element array of structure{ temp 3-component vector of float val}) 0:38 Constant: 0:38 1 (const int) 0:38 Constant: 0:38 0 (const int) 0:38 Constant: 0:38 0 (const int) 0:39 move second child to first child ( temp float) 0:39 direct index ( temp float) 0:39 tfactor: direct index for structure ( temp 3-element array of float) 0:39 'o' ( temp structure{ temp 3-element array of float tfactor, temp float flInFactor}) 0:39 Constant: 0:39 0 (const int) 0:39 Constant: 0:39 2 (const int) 0:39 direct index ( temp float) 0:39 val: direct index for structure ( temp 3-component vector of float) 0:39 direct index ( temp structure{ temp 3-component vector of float val}) 0:39 'pcf_out' ( const (read only) 3-element array of structure{ temp 3-component vector of float val}) 0:39 Constant: 0:39 2 (const int) 0:39 Constant: 0:39 0 (const int) 0:39 Constant: 0:39 0 (const int) 0:40 move second child to first child ( temp float) 0:40 flInFactor: direct index for structure ( temp float) 0:40 'o' ( temp structure{ temp 3-element array of float tfactor, temp float flInFactor}) 0:40 Constant: 0:40 1 (const int) 0:40 Constant: 0:40 4.000000 0:42 Branch: Return with expression 0:42 'o' ( temp structure{ temp 3-element array of float tfactor, temp float flInFactor}) 0:? Linker Objects 0:? '@entryPointOutput' (layout( location=0) out structure{ temp 3-component vector of float val}) 0:? 'i' (layout( location=0) in 3-element array of structure{ temp 3-component vector of float val}) 0:? 'cpid' ( in uint InvocationID) 0:? '@patchConstantOutput' (layout( location=1) patch out structure{}) 0:? '@patchConstantOutput_tfactor' ( patch out 4-element array of float TessLevelOuter) 0:? '@patchConstantOutput_flInFactor' ( patch out 2-element array of float TessLevelInner) // Module Version 10000 // Generated by (magic number): 80001 // Id's are bound by 124 Capability Tessellation 1: ExtInstImport "GLSL.std.450" MemoryModel Logical GLSL450 EntryPoint TessellationControl 4 "main" 41 45 48 91 105 123 ExecutionMode 4 OutputVertices 3 Name 4 "main" Name 8 "hs_in_t" MemberName 8(hs_in_t) 0 "val" Name 14 "hs_out_t" MemberName 14(hs_out_t) 0 "val" Name 18 "@main(struct-hs_in_t-vf31[3];u1;" Name 16 "i" Name 17 "cpid" Name 22 "hs_pcf_t" MemberName 22(hs_pcf_t) 0 "tfactor" MemberName 22(hs_pcf_t) 1 "flInFactor" Name 25 "PCF(struct-hs_out_t-vf31[3];" Name 24 "pcf_out" Name 28 "o" Name 39 "i" Name 41 "i" Name 43 "cpid" Name 45 "cpid" Name 48 "@entryPointOutput" Name 49 "param" Name 51 "param" Name 63 "pcf_out" Name 64 "i" Name 65 "param" Name 67 "param" Name 71 "i" Name 72 "param" Name 74 "param" Name 78 "i" Name 79 "param" Name 81 "param" Name 85 "@patchConstantResult" Name 91 "@patchConstantOutput_tfactor" Name 105 "@patchConstantOutput_flInFactor" Name 109 "o" Name 121 "hs_pcf_t" Name 123 "@patchConstantOutput" Decorate 41(i) Location 0 Decorate 45(cpid) BuiltIn InvocationId Decorate 48(@entryPointOutput) Location 0 Decorate 91(@patchConstantOutput_tfactor) Patch Decorate 91(@patchConstantOutput_tfactor) BuiltIn TessLevelOuter Decorate 105(@patchConstantOutput_flInFactor) Patch Decorate 105(@patchConstantOutput_flInFactor) BuiltIn TessLevelInner Decorate 123(@patchConstantOutput) Patch Decorate 123(@patchConstantOutput) Location 1 2: TypeVoid 3: TypeFunction 2 6: TypeFloat 32 7: TypeVector 6(float) 3 8(hs_in_t): TypeStruct 7(fvec3) 9: TypeInt 32 0 10: 9(int) Constant 3 11: TypeArray 8(hs_in_t) 10 12: TypePointer Function 11 13: TypePointer Function 9(int) 14(hs_out_t): TypeStruct 7(fvec3) 15: TypeFunction 14(hs_out_t) 12(ptr) 13(ptr) 20: TypeArray 14(hs_out_t) 10 21: TypeArray 6(float) 10 22(hs_pcf_t): TypeStruct 21 6(float) 23: TypeFunction 22(hs_pcf_t) 20 27: TypePointer Function 14(hs_out_t) 29: TypeInt 32 1 30: 29(int) Constant 0 34: TypePointer Function 7(fvec3) 40: TypePointer Input 11 41(i): 40(ptr) Variable Input 44: TypePointer Input 9(int) 45(cpid): 44(ptr) Variable Input 47: TypePointer Output 14(hs_out_t) 48(@entryPointOutput): 47(ptr) Variable Output 54: 9(int) Constant 2 55: 9(int) Constant 1 56: 9(int) Constant 0 58: TypeBool 62: TypePointer Function 20 70: 29(int) Constant 1 77: 29(int) Constant 2 84: TypePointer Function 22(hs_pcf_t) 88: 9(int) Constant 4 89: TypeArray 6(float) 88 90: TypePointer Output 89 91(@patchConstantOutput_tfactor): 90(ptr) Variable Output 92: TypePointer Function 6(float) 95: TypePointer Output 6(float) 103: TypeArray 6(float) 54 104: TypePointer Output 103 105(@patchConstantOutput_flInFactor): 104(ptr) Variable Output 116: 6(float) Constant 1082130432 121(hs_pcf_t): TypeStruct 122: TypePointer Output 121(hs_pcf_t) 123(@patchConstantOutput): 122(ptr) Variable Output 4(main): 2 Function None 3 5: Label 39(i): 12(ptr) Variable Function 43(cpid): 13(ptr) Variable Function 49(param): 12(ptr) Variable Function 51(param): 13(ptr) Variable Function 63(pcf_out): 62(ptr) Variable Function 64(i): 12(ptr) Variable Function 65(param): 12(ptr) Variable Function 67(param): 13(ptr) Variable Function 71(i): 12(ptr) Variable Function 72(param): 12(ptr) Variable Function 74(param): 13(ptr) Variable Function 78(i): 12(ptr) Variable Function 79(param): 12(ptr) Variable Function 81(param): 13(ptr) Variable Function 85(@patchConstantResult): 84(ptr) Variable Function 42: 11 Load 41(i) Store 39(i) 42 46: 9(int) Load 45(cpid) Store 43(cpid) 46 50: 11 Load 39(i) Store 49(param) 50 52: 9(int) Load 43(cpid) Store 51(param) 52 53:14(hs_out_t) FunctionCall 18(@main(struct-hs_in_t-vf31[3];u1;) 49(param) 51(param) Store 48(@entryPointOutput) 53 ControlBarrier 54 55 56 57: 9(int) Load 45(cpid) 59: 58(bool) IEqual 57 30 SelectionMerge 61 None BranchConditional 59 60 61 60: Label 66: 11 Load 64(i) Store 65(param) 66 Store 67(param) 56 68:14(hs_out_t) FunctionCall 18(@main(struct-hs_in_t-vf31[3];u1;) 65(param) 67(param) 69: 27(ptr) AccessChain 63(pcf_out) 30 Store 69 68 73: 11 Load 71(i) Store 72(param) 73 Store 74(param) 55 75:14(hs_out_t) FunctionCall 18(@main(struct-hs_in_t-vf31[3];u1;) 72(param) 74(param) 76: 27(ptr) AccessChain 63(pcf_out) 70 Store 76 75 80: 11 Load 78(i) Store 79(param) 80 Store 81(param) 54 82:14(hs_out_t) FunctionCall 18(@main(struct-hs_in_t-vf31[3];u1;) 79(param) 81(param) 83: 27(ptr) AccessChain 63(pcf_out) 77 Store 83 82 86: 20 Load 63(pcf_out) 87:22(hs_pcf_t) FunctionCall 25(PCF(struct-hs_out_t-vf31[3];) 86 Store 85(@patchConstantResult) 87 93: 92(ptr) AccessChain 85(@patchConstantResult) 30 30 94: 6(float) Load 93 96: 95(ptr) AccessChain 91(@patchConstantOutput_tfactor) 30 Store 96 94 97: 92(ptr) AccessChain 85(@patchConstantResult) 30 70 98: 6(float) Load 97 99: 95(ptr) AccessChain 91(@patchConstantOutput_tfactor) 70 Store 99 98 100: 92(ptr) AccessChain 85(@patchConstantResult) 30 77 101: 6(float) Load 100 102: 95(ptr) AccessChain 91(@patchConstantOutput_tfactor) 77 Store 102 101 106: 92(ptr) AccessChain 85(@patchConstantResult) 70 107: 6(float) Load 106 108: 95(ptr) AccessChain 105(@patchConstantOutput_flInFactor) 30 Store 108 107 Branch 61 61: Label Return FunctionEnd 18(@main(struct-hs_in_t-vf31[3];u1;):14(hs_out_t) Function None 15 16(i): 12(ptr) FunctionParameter 17(cpid): 13(ptr) FunctionParameter 19: Label 28(o): 27(ptr) Variable Function 31: 9(int) Load 17(cpid) 32: 6(float) ConvertUToF 31 33: 7(fvec3) CompositeConstruct 32 32 32 35: 34(ptr) AccessChain 28(o) 30 Store 35 33 36:14(hs_out_t) Load 28(o) ReturnValue 36 FunctionEnd 25(PCF(struct-hs_out_t-vf31[3];):22(hs_pcf_t) Function None 23 24(pcf_out): 20 FunctionParameter 26: Label 109(o): 84(ptr) Variable Function 110: 6(float) CompositeExtract 24(pcf_out) 0 0 0 111: 92(ptr) AccessChain 109(o) 30 30 Store 111 110 112: 6(float) CompositeExtract 24(pcf_out) 1 0 0 113: 92(ptr) AccessChain 109(o) 30 70 Store 113 112 114: 6(float) CompositeExtract 24(pcf_out) 2 0 0 115: 92(ptr) AccessChain 109(o) 30 77 Store 115 114 117: 92(ptr) AccessChain 109(o) 70 Store 117 116 118:22(hs_pcf_t) Load 109(o) ReturnValue 118 FunctionEnd