hlsl.hull.ctrlpt-1.tesc Shader version: 500 vertices = 3 vertex spacing = fractional_odd_spacing triangle order = cw 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 Sequence 0:27 move second child to first child ( temp 3-component vector of float) 0:27 val: direct index for structure ( temp 3-component vector of float) 0:27 direct index ( 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:27 Constant: 0:27 0 (const int) 0:27 Constant: 0:27 0 (const int) 0:27 direct index (layout( location=0) in 3-component vector of float) 0:? 'i.val' (layout( location=0) in 3-element array of 3-component vector of float) 0:27 Constant: 0:27 0 (const int) 0:27 move second child to first child ( temp 3-component vector of float) 0:27 val: direct index for structure ( temp 3-component vector of float) 0:27 direct index ( 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:27 Constant: 0:27 1 (const int) 0:27 Constant: 0:27 0 (const int) 0:27 direct index (layout( location=0) in 3-component vector of float) 0:? 'i.val' (layout( location=0) in 3-element array of 3-component vector of float) 0:27 Constant: 0:27 1 (const int) 0:27 move second child to first child ( temp 3-component vector of float) 0:27 val: direct index for structure ( temp 3-component vector of float) 0:27 direct index ( 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:27 Constant: 0:27 2 (const int) 0:27 Constant: 0:27 0 (const int) 0:27 direct index (layout( location=0) in 3-component vector of float) 0:? 'i.val' (layout( location=0) in 3-element array of 3-component vector of float) 0:27 Constant: 0:27 2 (const int) 0:27 move second child to first child ( temp uint) 0:? 'cpid' ( temp uint) 0:? 'cpid' ( in uint InvocationID) 0:27 Sequence 0:27 move second child to first child ( temp 3-component vector of float) 0:27 indirect index (layout( location=0) out 3-component vector of float) 0:? '@entryPointOutput.val' (layout( location=0) out 3-element array of 3-component vector of float) 0:? 'cpid' ( in uint InvocationID) 0:27 val: direct index for structure ( temp 3-component vector of float) 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:27 Constant: 0:27 0 (const int) 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.val' (layout( location=0) out 3-element array of 3-component vector of float) 0:? 'i.val' (layout( location=0) in 3-element array of 3-component vector of float) 0:? 'cpid' ( in uint InvocationID) 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: 500 vertices = 3 vertex spacing = fractional_odd_spacing triangle order = cw 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 Sequence 0:27 move second child to first child ( temp 3-component vector of float) 0:27 val: direct index for structure ( temp 3-component vector of float) 0:27 direct index ( 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:27 Constant: 0:27 0 (const int) 0:27 Constant: 0:27 0 (const int) 0:27 direct index (layout( location=0) in 3-component vector of float) 0:? 'i.val' (layout( location=0) in 3-element array of 3-component vector of float) 0:27 Constant: 0:27 0 (const int) 0:27 move second child to first child ( temp 3-component vector of float) 0:27 val: direct index for structure ( temp 3-component vector of float) 0:27 direct index ( 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:27 Constant: 0:27 1 (const int) 0:27 Constant: 0:27 0 (const int) 0:27 direct index (layout( location=0) in 3-component vector of float) 0:? 'i.val' (layout( location=0) in 3-element array of 3-component vector of float) 0:27 Constant: 0:27 1 (const int) 0:27 move second child to first child ( temp 3-component vector of float) 0:27 val: direct index for structure ( temp 3-component vector of float) 0:27 direct index ( 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:27 Constant: 0:27 2 (const int) 0:27 Constant: 0:27 0 (const int) 0:27 direct index (layout( location=0) in 3-component vector of float) 0:? 'i.val' (layout( location=0) in 3-element array of 3-component vector of float) 0:27 Constant: 0:27 2 (const int) 0:27 move second child to first child ( temp uint) 0:? 'cpid' ( temp uint) 0:? 'cpid' ( in uint InvocationID) 0:27 Sequence 0:27 move second child to first child ( temp 3-component vector of float) 0:27 indirect index (layout( location=0) out 3-component vector of float) 0:? '@entryPointOutput.val' (layout( location=0) out 3-element array of 3-component vector of float) 0:? 'cpid' ( in uint InvocationID) 0:27 val: direct index for structure ( temp 3-component vector of float) 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:27 Constant: 0:27 0 (const int) 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.val' (layout( location=0) out 3-element array of 3-component vector of float) 0:? 'i.val' (layout( location=0) in 3-element array of 3-component vector of float) 0:? 'cpid' ( in uint InvocationID) 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): 8000b // Id's are bound by 135 Capability Tessellation 1: ExtInstImport "GLSL.std.450" MemoryModel Logical GLSL450 EntryPoint TessellationControl 4 "main" 42 57 60 105 119 ExecutionMode 4 OutputVertices 3 ExecutionMode 4 Triangles ExecutionMode 4 SpacingFractionalOdd ExecutionMode 4 VertexOrderCw Source HLSL 500 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 42 "i.val" Name 55 "cpid" Name 57 "cpid" Name 60 "@entryPointOutput.val" Name 62 "param" Name 64 "param" Name 79 "pcf_out" Name 80 "i" Name 81 "param" Name 83 "param" Name 86 "i" Name 88 "param" Name 90 "param" Name 93 "i" Name 94 "param" Name 96 "param" Name 100 "@patchConstantResult" Name 105 "@patchConstantOutput.tfactor" Name 119 "@patchConstantOutput.flInFactor" Name 123 "o" Decorate 42(i.val) Location 0 Decorate 57(cpid) BuiltIn InvocationId Decorate 60(@entryPointOutput.val) Location 0 Decorate 105(@patchConstantOutput.tfactor) Patch Decorate 105(@patchConstantOutput.tfactor) BuiltIn TessLevelOuter Decorate 119(@patchConstantOutput.flInFactor) Patch Decorate 119(@patchConstantOutput.flInFactor) BuiltIn TessLevelInner 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: TypeArray 7(fvec3) 10 41: TypePointer Input 40 42(i.val): 41(ptr) Variable Input 43: TypePointer Input 7(fvec3) 47: 29(int) Constant 1 51: 29(int) Constant 2 56: TypePointer Input 9(int) 57(cpid): 56(ptr) Variable Input 59: TypePointer Output 40 60(@entryPointOutput.val): 59(ptr) Variable Output 68: TypePointer Output 7(fvec3) 70: 9(int) Constant 2 71: 9(int) Constant 4 72: 9(int) Constant 0 74: TypeBool 78: TypePointer Function 20 87: 9(int) Constant 1 99: TypePointer Function 22(hs_pcf_t) 103: TypeArray 6(float) 71 104: TypePointer Output 103 105(@patchConstantOutput.tfactor): 104(ptr) Variable Output 106: TypePointer Function 6(float) 109: TypePointer Output 6(float) 117: TypeArray 6(float) 70 118: TypePointer Output 117 119(@patchConstantOutput.flInFactor): 118(ptr) Variable Output 130: 6(float) Constant 1082130432 4(main): 2 Function None 3 5: Label 39(i): 12(ptr) Variable Function 55(cpid): 13(ptr) Variable Function 62(param): 12(ptr) Variable Function 64(param): 13(ptr) Variable Function 79(pcf_out): 78(ptr) Variable Function 80(i): 12(ptr) Variable Function 81(param): 12(ptr) Variable Function 83(param): 13(ptr) Variable Function 86(i): 12(ptr) Variable Function 88(param): 12(ptr) Variable Function 90(param): 13(ptr) Variable Function 93(i): 12(ptr) Variable Function 94(param): 12(ptr) Variable Function 96(param): 13(ptr) Variable Function 100(@patchConstantResult): 99(ptr) Variable Function 44: 43(ptr) AccessChain 42(i.val) 30 45: 7(fvec3) Load 44 46: 34(ptr) AccessChain 39(i) 30 30 Store 46 45 48: 43(ptr) AccessChain 42(i.val) 47 49: 7(fvec3) Load 48 50: 34(ptr) AccessChain 39(i) 47 30 Store 50 49 52: 43(ptr) AccessChain 42(i.val) 51 53: 7(fvec3) Load 52 54: 34(ptr) AccessChain 39(i) 51 30 Store 54 53 58: 9(int) Load 57(cpid) Store 55(cpid) 58 61: 9(int) Load 57(cpid) 63: 11 Load 39(i) Store 62(param) 63 65: 9(int) Load 55(cpid) Store 64(param) 65 66:14(hs_out_t) FunctionCall 18(@main(struct-hs_in_t-vf31[3];u1;) 62(param) 64(param) 67: 7(fvec3) CompositeExtract 66 0 69: 68(ptr) AccessChain 60(@entryPointOutput.val) 61 Store 69 67 ControlBarrier 70 71 72 73: 9(int) Load 57(cpid) 75: 74(bool) IEqual 73 30 SelectionMerge 77 None BranchConditional 75 76 77 76: Label 82: 11 Load 80(i) Store 81(param) 82 Store 83(param) 72 84:14(hs_out_t) FunctionCall 18(@main(struct-hs_in_t-vf31[3];u1;) 81(param) 83(param) 85: 27(ptr) AccessChain 79(pcf_out) 30 Store 85 84 89: 11 Load 86(i) Store 88(param) 89 Store 90(param) 87 91:14(hs_out_t) FunctionCall 18(@main(struct-hs_in_t-vf31[3];u1;) 88(param) 90(param) 92: 27(ptr) AccessChain 79(pcf_out) 47 Store 92 91 95: 11 Load 93(i) Store 94(param) 95 Store 96(param) 70 97:14(hs_out_t) FunctionCall 18(@main(struct-hs_in_t-vf31[3];u1;) 94(param) 96(param) 98: 27(ptr) AccessChain 79(pcf_out) 51 Store 98 97 101: 20 Load 79(pcf_out) 102:22(hs_pcf_t) FunctionCall 25(PCF(struct-hs_out_t-vf31[3];) 101 Store 100(@patchConstantResult) 102 107: 106(ptr) AccessChain 100(@patchConstantResult) 30 30 108: 6(float) Load 107 110: 109(ptr) AccessChain 105(@patchConstantOutput.tfactor) 30 Store 110 108 111: 106(ptr) AccessChain 100(@patchConstantResult) 30 47 112: 6(float) Load 111 113: 109(ptr) AccessChain 105(@patchConstantOutput.tfactor) 47 Store 113 112 114: 106(ptr) AccessChain 100(@patchConstantResult) 30 51 115: 6(float) Load 114 116: 109(ptr) AccessChain 105(@patchConstantOutput.tfactor) 51 Store 116 115 120: 106(ptr) AccessChain 100(@patchConstantResult) 47 121: 6(float) Load 120 122: 109(ptr) AccessChain 119(@patchConstantOutput.flInFactor) 30 Store 122 121 Branch 77 77: 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 123(o): 99(ptr) Variable Function 124: 6(float) CompositeExtract 24(pcf_out) 0 0 0 125: 106(ptr) AccessChain 123(o) 30 30 Store 125 124 126: 6(float) CompositeExtract 24(pcf_out) 1 0 0 127: 106(ptr) AccessChain 123(o) 30 47 Store 127 126 128: 6(float) CompositeExtract 24(pcf_out) 2 0 0 129: 106(ptr) AccessChain 123(o) 30 51 Store 129 128 131: 106(ptr) AccessChain 123(o) 47 Store 131 130 132:22(hs_pcf_t) Load 123(o) ReturnValue 132 FunctionEnd