| hlsl.emptystructreturn.tesc |
| Shader version: 500 |
| vertices = 3 |
| vertex spacing = equal_spacing |
| triangle order = cw |
| 0:? Sequence |
| 0:16 Function Definition: blob(struct-HullInputType-vf41[3]; ( temp void) |
| 0:16 Function Parameters: |
| 0:16 'patch' ( in 3-element array of structure{ temp 4-component vector of float position}) |
| 0:20 Function Definition: ColorPatchConstantFunction(struct-HullInputType-vf41[3];u1; ( temp structure{ temp 3-element array of float edges, temp float inside}) |
| 0:20 Function Parameters: |
| 0:20 'inputPatch' ( in 3-element array of structure{ temp 4-component vector of float position}) |
| 0:20 'patchId' ( in uint) |
| 0:? Sequence |
| 0:24 move second child to first child ( temp float) |
| 0:24 direct index ( temp float) |
| 0:24 edges: direct index for structure ( temp 3-element array of float) |
| 0:24 'output' ( temp structure{ temp 3-element array of float edges, temp float inside}) |
| 0:24 Constant: |
| 0:24 0 (const int) |
| 0:24 Constant: |
| 0:24 0 (const int) |
| 0:24 Constant: |
| 0:24 2.000000 |
| 0:25 move second child to first child ( temp float) |
| 0:25 direct index ( temp float) |
| 0:25 edges: direct index for structure ( temp 3-element array of float) |
| 0:25 'output' ( temp structure{ temp 3-element array of float edges, temp float inside}) |
| 0:25 Constant: |
| 0:25 0 (const int) |
| 0:25 Constant: |
| 0:25 1 (const int) |
| 0:25 Constant: |
| 0:25 2.000000 |
| 0:26 move second child to first child ( temp float) |
| 0:26 direct index ( temp float) |
| 0:26 edges: direct index for structure ( temp 3-element array of float) |
| 0:26 'output' ( temp structure{ temp 3-element array of float edges, temp float inside}) |
| 0:26 Constant: |
| 0:26 0 (const int) |
| 0:26 Constant: |
| 0:26 2 (const int) |
| 0:26 Constant: |
| 0:26 2.000000 |
| 0:29 move second child to first child ( temp float) |
| 0:29 inside: direct index for structure ( temp float) |
| 0:29 'output' ( temp structure{ temp 3-element array of float edges, temp float inside}) |
| 0:29 Constant: |
| 0:29 1 (const int) |
| 0:29 Constant: |
| 0:29 2.000000 |
| 0:31 Branch: Return with expression |
| 0:31 'output' ( temp structure{ temp 3-element array of float edges, temp float inside}) |
| 0:42 Function Definition: @main(struct-EmptyStruct1;struct-HullInputType-vf41[3];u1;u1; ( temp structure{}) |
| 0:42 Function Parameters: |
| 0:42 'stage_input' ( in structure{}) |
| 0:42 'patch' ( in 3-element array of structure{ temp 4-component vector of float position}) |
| 0:42 'pointId' ( in uint) |
| 0:42 'patchId' ( in uint) |
| 0:? Sequence |
| 0:44 Function Call: blob(struct-HullInputType-vf41[3]; ( temp void) |
| 0:44 'patch' ( in 3-element array of structure{ temp 4-component vector of float position}) |
| 0:46 Branch: Return with expression |
| 0:46 'output' ( temp structure{}) |
| 0:42 Function Definition: main( ( temp void) |
| 0:42 Function Parameters: |
| 0:? Sequence |
| 0:42 Sequence |
| 0:42 move second child to first child ( temp structure{}) |
| 0:? 'stage_input' ( temp structure{}) |
| 0:? 'stage_input' ( in structure{}) |
| 0:42 Sequence |
| 0:42 move second child to first child ( temp 4-component vector of float) |
| 0:42 position: direct index for structure ( temp 4-component vector of float) |
| 0:42 direct index ( temp structure{ temp 4-component vector of float position}) |
| 0:? 'patch' ( temp 3-element array of structure{ temp 4-component vector of float position}) |
| 0:42 Constant: |
| 0:42 0 (const int) |
| 0:42 Constant: |
| 0:42 0 (const int) |
| 0:42 direct index ( in 4-component vector of float Position) |
| 0:? 'patch.position' ( in 3-element array of 4-component vector of float Position) |
| 0:42 Constant: |
| 0:42 0 (const int) |
| 0:42 move second child to first child ( temp 4-component vector of float) |
| 0:42 position: direct index for structure ( temp 4-component vector of float) |
| 0:42 direct index ( temp structure{ temp 4-component vector of float position}) |
| 0:? 'patch' ( temp 3-element array of structure{ temp 4-component vector of float position}) |
| 0:42 Constant: |
| 0:42 1 (const int) |
| 0:42 Constant: |
| 0:42 0 (const int) |
| 0:42 direct index ( in 4-component vector of float Position) |
| 0:? 'patch.position' ( in 3-element array of 4-component vector of float Position) |
| 0:42 Constant: |
| 0:42 1 (const int) |
| 0:42 move second child to first child ( temp 4-component vector of float) |
| 0:42 position: direct index for structure ( temp 4-component vector of float) |
| 0:42 direct index ( temp structure{ temp 4-component vector of float position}) |
| 0:? 'patch' ( temp 3-element array of structure{ temp 4-component vector of float position}) |
| 0:42 Constant: |
| 0:42 2 (const int) |
| 0:42 Constant: |
| 0:42 0 (const int) |
| 0:42 direct index ( in 4-component vector of float Position) |
| 0:? 'patch.position' ( in 3-element array of 4-component vector of float Position) |
| 0:42 Constant: |
| 0:42 2 (const int) |
| 0:42 move second child to first child ( temp uint) |
| 0:? 'pointId' ( temp uint) |
| 0:? 'pointId' ( in uint InvocationID) |
| 0:42 move second child to first child ( temp uint) |
| 0:? 'patchId' ( temp uint) |
| 0:? 'patchId' ( in uint PrimitiveID) |
| 0:42 Sequence |
| 0:42 move second child to first child ( temp structure{}) |
| 0:42 indirect index ( out structure{}) |
| 0:? '@entryPointOutput' ( out 3-element array of structure{}) |
| 0:? 'pointId' ( in uint InvocationID) |
| 0:42 Function Call: @main(struct-EmptyStruct1;struct-HullInputType-vf41[3];u1;u1; ( temp structure{}) |
| 0:? 'stage_input' ( temp structure{}) |
| 0:? 'patch' ( temp 3-element array of structure{ temp 4-component vector of float position}) |
| 0:? 'pointId' ( temp uint) |
| 0:? 'patchId' ( temp uint) |
| 0:? Barrier ( temp void) |
| 0:? Test condition and select ( temp void) |
| 0:? Condition |
| 0:? Compare Equal ( temp bool) |
| 0:? 'pointId' ( 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-element array of float edges, temp float inside}) |
| 0:? '@patchConstantResult' ( temp structure{ temp 3-element array of float edges, temp float inside}) |
| 0:? Function Call: ColorPatchConstantFunction(struct-HullInputType-vf41[3];u1; ( temp structure{ temp 3-element array of float edges, temp float inside}) |
| 0:? 'patch' ( temp 3-element array of structure{ temp 4-component vector of float position}) |
| 0:? 'patchId' ( in uint PrimitiveID) |
| 0:? Sequence |
| 0:? move second child to first child ( temp float) |
| 0:? direct index ( patch out float TessLevelOuter) |
| 0:? '@patchConstantOutput.edges' ( patch out 4-element array of float TessLevelOuter) |
| 0:? Constant: |
| 0:? 0 (const int) |
| 0:? direct index ( temp float) |
| 0:? edges: direct index for structure ( temp 3-element array of float) |
| 0:? '@patchConstantResult' ( temp structure{ temp 3-element array of float edges, temp float inside}) |
| 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.edges' ( patch out 4-element array of float TessLevelOuter) |
| 0:? Constant: |
| 0:? 1 (const int) |
| 0:? direct index ( temp float) |
| 0:? edges: direct index for structure ( temp 3-element array of float) |
| 0:? '@patchConstantResult' ( temp structure{ temp 3-element array of float edges, temp float inside}) |
| 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.edges' ( patch out 4-element array of float TessLevelOuter) |
| 0:? Constant: |
| 0:? 2 (const int) |
| 0:? direct index ( temp float) |
| 0:? edges: direct index for structure ( temp 3-element array of float) |
| 0:? '@patchConstantResult' ( temp structure{ temp 3-element array of float edges, temp float inside}) |
| 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.inside' ( patch out 2-element array of float TessLevelInner) |
| 0:? Constant: |
| 0:? 0 (const int) |
| 0:? inside: direct index for structure ( temp float) |
| 0:? '@patchConstantResult' ( temp structure{ temp 3-element array of float edges, temp float inside}) |
| 0:? Constant: |
| 0:? 1 (const int) |
| 0:? Linker Objects |
| 0:? 'patch.position' ( in 3-element array of 4-component vector of float Position) |
| 0:? 'pointId' ( in uint InvocationID) |
| 0:? 'patchId' ( in uint PrimitiveID) |
| 0:? '@patchConstantOutput.edges' ( patch out 4-element array of float TessLevelOuter) |
| 0:? '@patchConstantOutput.inside' ( patch out 2-element array of float TessLevelInner) |
| |
| |
| Linked tessellation control stage: |
| |
| |
| Shader version: 500 |
| vertices = 3 |
| vertex spacing = equal_spacing |
| triangle order = cw |
| 0:? Sequence |
| 0:16 Function Definition: blob(struct-HullInputType-vf41[3]; ( temp void) |
| 0:16 Function Parameters: |
| 0:16 'patch' ( in 3-element array of structure{ temp 4-component vector of float position}) |
| 0:20 Function Definition: ColorPatchConstantFunction(struct-HullInputType-vf41[3];u1; ( temp structure{ temp 3-element array of float edges, temp float inside}) |
| 0:20 Function Parameters: |
| 0:20 'inputPatch' ( in 3-element array of structure{ temp 4-component vector of float position}) |
| 0:20 'patchId' ( in uint) |
| 0:? Sequence |
| 0:24 move second child to first child ( temp float) |
| 0:24 direct index ( temp float) |
| 0:24 edges: direct index for structure ( temp 3-element array of float) |
| 0:24 'output' ( temp structure{ temp 3-element array of float edges, temp float inside}) |
| 0:24 Constant: |
| 0:24 0 (const int) |
| 0:24 Constant: |
| 0:24 0 (const int) |
| 0:24 Constant: |
| 0:24 2.000000 |
| 0:25 move second child to first child ( temp float) |
| 0:25 direct index ( temp float) |
| 0:25 edges: direct index for structure ( temp 3-element array of float) |
| 0:25 'output' ( temp structure{ temp 3-element array of float edges, temp float inside}) |
| 0:25 Constant: |
| 0:25 0 (const int) |
| 0:25 Constant: |
| 0:25 1 (const int) |
| 0:25 Constant: |
| 0:25 2.000000 |
| 0:26 move second child to first child ( temp float) |
| 0:26 direct index ( temp float) |
| 0:26 edges: direct index for structure ( temp 3-element array of float) |
| 0:26 'output' ( temp structure{ temp 3-element array of float edges, temp float inside}) |
| 0:26 Constant: |
| 0:26 0 (const int) |
| 0:26 Constant: |
| 0:26 2 (const int) |
| 0:26 Constant: |
| 0:26 2.000000 |
| 0:29 move second child to first child ( temp float) |
| 0:29 inside: direct index for structure ( temp float) |
| 0:29 'output' ( temp structure{ temp 3-element array of float edges, temp float inside}) |
| 0:29 Constant: |
| 0:29 1 (const int) |
| 0:29 Constant: |
| 0:29 2.000000 |
| 0:31 Branch: Return with expression |
| 0:31 'output' ( temp structure{ temp 3-element array of float edges, temp float inside}) |
| 0:42 Function Definition: @main(struct-EmptyStruct1;struct-HullInputType-vf41[3];u1;u1; ( temp structure{}) |
| 0:42 Function Parameters: |
| 0:42 'stage_input' ( in structure{}) |
| 0:42 'patch' ( in 3-element array of structure{ temp 4-component vector of float position}) |
| 0:42 'pointId' ( in uint) |
| 0:42 'patchId' ( in uint) |
| 0:? Sequence |
| 0:44 Function Call: blob(struct-HullInputType-vf41[3]; ( temp void) |
| 0:44 'patch' ( in 3-element array of structure{ temp 4-component vector of float position}) |
| 0:46 Branch: Return with expression |
| 0:46 'output' ( temp structure{}) |
| 0:42 Function Definition: main( ( temp void) |
| 0:42 Function Parameters: |
| 0:? Sequence |
| 0:42 Sequence |
| 0:42 move second child to first child ( temp structure{}) |
| 0:? 'stage_input' ( temp structure{}) |
| 0:? 'stage_input' ( in structure{}) |
| 0:42 Sequence |
| 0:42 move second child to first child ( temp 4-component vector of float) |
| 0:42 position: direct index for structure ( temp 4-component vector of float) |
| 0:42 direct index ( temp structure{ temp 4-component vector of float position}) |
| 0:? 'patch' ( temp 3-element array of structure{ temp 4-component vector of float position}) |
| 0:42 Constant: |
| 0:42 0 (const int) |
| 0:42 Constant: |
| 0:42 0 (const int) |
| 0:42 direct index ( in 4-component vector of float Position) |
| 0:? 'patch.position' ( in 3-element array of 4-component vector of float Position) |
| 0:42 Constant: |
| 0:42 0 (const int) |
| 0:42 move second child to first child ( temp 4-component vector of float) |
| 0:42 position: direct index for structure ( temp 4-component vector of float) |
| 0:42 direct index ( temp structure{ temp 4-component vector of float position}) |
| 0:? 'patch' ( temp 3-element array of structure{ temp 4-component vector of float position}) |
| 0:42 Constant: |
| 0:42 1 (const int) |
| 0:42 Constant: |
| 0:42 0 (const int) |
| 0:42 direct index ( in 4-component vector of float Position) |
| 0:? 'patch.position' ( in 3-element array of 4-component vector of float Position) |
| 0:42 Constant: |
| 0:42 1 (const int) |
| 0:42 move second child to first child ( temp 4-component vector of float) |
| 0:42 position: direct index for structure ( temp 4-component vector of float) |
| 0:42 direct index ( temp structure{ temp 4-component vector of float position}) |
| 0:? 'patch' ( temp 3-element array of structure{ temp 4-component vector of float position}) |
| 0:42 Constant: |
| 0:42 2 (const int) |
| 0:42 Constant: |
| 0:42 0 (const int) |
| 0:42 direct index ( in 4-component vector of float Position) |
| 0:? 'patch.position' ( in 3-element array of 4-component vector of float Position) |
| 0:42 Constant: |
| 0:42 2 (const int) |
| 0:42 move second child to first child ( temp uint) |
| 0:? 'pointId' ( temp uint) |
| 0:? 'pointId' ( in uint InvocationID) |
| 0:42 move second child to first child ( temp uint) |
| 0:? 'patchId' ( temp uint) |
| 0:? 'patchId' ( in uint PrimitiveID) |
| 0:42 Sequence |
| 0:42 move second child to first child ( temp structure{}) |
| 0:42 indirect index ( out structure{}) |
| 0:? '@entryPointOutput' ( out 3-element array of structure{}) |
| 0:? 'pointId' ( in uint InvocationID) |
| 0:42 Function Call: @main(struct-EmptyStruct1;struct-HullInputType-vf41[3];u1;u1; ( temp structure{}) |
| 0:? 'stage_input' ( temp structure{}) |
| 0:? 'patch' ( temp 3-element array of structure{ temp 4-component vector of float position}) |
| 0:? 'pointId' ( temp uint) |
| 0:? 'patchId' ( temp uint) |
| 0:? Barrier ( temp void) |
| 0:? Test condition and select ( temp void) |
| 0:? Condition |
| 0:? Compare Equal ( temp bool) |
| 0:? 'pointId' ( 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-element array of float edges, temp float inside}) |
| 0:? '@patchConstantResult' ( temp structure{ temp 3-element array of float edges, temp float inside}) |
| 0:? Function Call: ColorPatchConstantFunction(struct-HullInputType-vf41[3];u1; ( temp structure{ temp 3-element array of float edges, temp float inside}) |
| 0:? 'patch' ( temp 3-element array of structure{ temp 4-component vector of float position}) |
| 0:? 'patchId' ( in uint PrimitiveID) |
| 0:? Sequence |
| 0:? move second child to first child ( temp float) |
| 0:? direct index ( patch out float TessLevelOuter) |
| 0:? '@patchConstantOutput.edges' ( patch out 4-element array of float TessLevelOuter) |
| 0:? Constant: |
| 0:? 0 (const int) |
| 0:? direct index ( temp float) |
| 0:? edges: direct index for structure ( temp 3-element array of float) |
| 0:? '@patchConstantResult' ( temp structure{ temp 3-element array of float edges, temp float inside}) |
| 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.edges' ( patch out 4-element array of float TessLevelOuter) |
| 0:? Constant: |
| 0:? 1 (const int) |
| 0:? direct index ( temp float) |
| 0:? edges: direct index for structure ( temp 3-element array of float) |
| 0:? '@patchConstantResult' ( temp structure{ temp 3-element array of float edges, temp float inside}) |
| 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.edges' ( patch out 4-element array of float TessLevelOuter) |
| 0:? Constant: |
| 0:? 2 (const int) |
| 0:? direct index ( temp float) |
| 0:? edges: direct index for structure ( temp 3-element array of float) |
| 0:? '@patchConstantResult' ( temp structure{ temp 3-element array of float edges, temp float inside}) |
| 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.inside' ( patch out 2-element array of float TessLevelInner) |
| 0:? Constant: |
| 0:? 0 (const int) |
| 0:? inside: direct index for structure ( temp float) |
| 0:? '@patchConstantResult' ( temp structure{ temp 3-element array of float edges, temp float inside}) |
| 0:? Constant: |
| 0:? 1 (const int) |
| 0:? Linker Objects |
| 0:? 'patch.position' ( in 3-element array of 4-component vector of float Position) |
| 0:? 'pointId' ( in uint InvocationID) |
| 0:? 'patchId' ( in uint PrimitiveID) |
| 0:? '@patchConstantOutput.edges' ( patch out 4-element array of float TessLevelOuter) |
| 0:? '@patchConstantOutput.inside' ( patch out 2-element array of float TessLevelInner) |
| |
| Validation failed |
| // Module Version 10000 |
| // Generated by (magic number): 8000b |
| // Id's are bound by 132 |
| |
| Capability Tessellation |
| 1: ExtInstImport "GLSL.std.450" |
| MemoryModel Logical GLSL450 |
| EntryPoint TessellationControl 4 "main" 65 79 82 115 128 |
| ExecutionMode 4 OutputVertices 3 |
| ExecutionMode 4 Triangles |
| ExecutionMode 4 SpacingEqual |
| ExecutionMode 4 VertexOrderCw |
| Source HLSL 500 |
| Name 4 "main" |
| Name 8 "HullInputType" |
| MemberName 8(HullInputType) 0 "position" |
| Name 15 "blob(struct-HullInputType-vf41[3];" |
| Name 14 "patch" |
| Name 19 "ConstantOutputType" |
| MemberName 19(ConstantOutputType) 0 "edges" |
| MemberName 19(ConstantOutputType) 1 "inside" |
| Name 23 "ColorPatchConstantFunction(struct-HullInputType-vf41[3];u1;" |
| Name 21 "inputPatch" |
| Name 22 "patchId" |
| Name 25 "EmptyStruct" |
| Name 27 "HullOutputType" |
| Name 33 "@main(struct-EmptyStruct1;struct-HullInputType-vf41[3];u1;u1;" |
| Name 29 "stage_input" |
| Name 30 "patch" |
| Name 31 "pointId" |
| Name 32 "patchId" |
| Name 36 "output" |
| Name 50 "param" |
| Name 54 "output" |
| Name 58 "stage_input" |
| Name 60 "stage_input" |
| Name 62 "patch" |
| Name 65 "patch.position" |
| Name 77 "pointId" |
| Name 79 "pointId" |
| Name 81 "patchId" |
| Name 82 "patchId" |
| Name 86 "@entryPointOutput" |
| Name 88 "param" |
| Name 90 "param" |
| Name 92 "param" |
| Name 94 "param" |
| Name 107 "@patchConstantResult" |
| Name 108 "param" |
| Name 110 "param" |
| Name 115 "@patchConstantOutput.edges" |
| Name 128 "@patchConstantOutput.inside" |
| Decorate 65(patch.position) BuiltIn Position |
| Decorate 79(pointId) BuiltIn InvocationId |
| Decorate 82(patchId) BuiltIn PrimitiveId |
| Decorate 115(@patchConstantOutput.edges) Patch |
| Decorate 115(@patchConstantOutput.edges) BuiltIn TessLevelOuter |
| Decorate 128(@patchConstantOutput.inside) Patch |
| Decorate 128(@patchConstantOutput.inside) BuiltIn TessLevelInner |
| 2: TypeVoid |
| 3: TypeFunction 2 |
| 6: TypeFloat 32 |
| 7: TypeVector 6(float) 4 |
| 8(HullInputType): TypeStruct 7(fvec4) |
| 9: TypeInt 32 0 |
| 10: 9(int) Constant 3 |
| 11: TypeArray 8(HullInputType) 10 |
| 12: TypePointer Function 11 |
| 13: TypeFunction 2 12(ptr) |
| 17: TypePointer Function 9(int) |
| 18: TypeArray 6(float) 10 |
| 19(ConstantOutputType): TypeStruct 18 6(float) |
| 20: TypeFunction 19(ConstantOutputType) 12(ptr) 17(ptr) |
| 25(EmptyStruct): TypeStruct |
| 26: TypePointer Function 25(EmptyStruct) |
| 27(HullOutputType): TypeStruct |
| 28: TypeFunction 27(HullOutputType) 26(ptr) 12(ptr) 17(ptr) 17(ptr) |
| 35: TypePointer Function 19(ConstantOutputType) |
| 37: TypeInt 32 1 |
| 38: 37(int) Constant 0 |
| 39: 6(float) Constant 1073741824 |
| 40: TypePointer Function 6(float) |
| 42: 37(int) Constant 1 |
| 44: 37(int) Constant 2 |
| 53: TypePointer Function 27(HullOutputType) |
| 59: TypePointer Input 25(EmptyStruct) |
| 60(stage_input): 59(ptr) Variable Input |
| 63: TypeArray 7(fvec4) 10 |
| 64: TypePointer Input 63 |
| 65(patch.position): 64(ptr) Variable Input |
| 66: TypePointer Input 7(fvec4) |
| 69: TypePointer Function 7(fvec4) |
| 78: TypePointer Input 9(int) |
| 79(pointId): 78(ptr) Variable Input |
| 82(patchId): 78(ptr) Variable Input |
| 84: TypeArray 27(HullOutputType) 10 |
| 85: TypePointer Output 84 |
| 86(@entryPointOutput): 85(ptr) Variable Output |
| 97: TypePointer Output 27(HullOutputType) |
| 99: 9(int) Constant 2 |
| 100: 9(int) Constant 4 |
| 101: 9(int) Constant 0 |
| 103: TypeBool |
| 113: TypeArray 6(float) 100 |
| 114: TypePointer Output 113 |
| 115(@patchConstantOutput.edges): 114(ptr) Variable Output |
| 118: TypePointer Output 6(float) |
| 126: TypeArray 6(float) 99 |
| 127: TypePointer Output 126 |
| 128(@patchConstantOutput.inside): 127(ptr) Variable Output |
| 4(main): 2 Function None 3 |
| 5: Label |
| 58(stage_input): 26(ptr) Variable Function |
| 62(patch): 12(ptr) Variable Function |
| 77(pointId): 17(ptr) Variable Function |
| 81(patchId): 17(ptr) Variable Function |
| 88(param): 26(ptr) Variable Function |
| 90(param): 12(ptr) Variable Function |
| 92(param): 17(ptr) Variable Function |
| 94(param): 17(ptr) Variable Function |
| 107(@patchConstantResult): 35(ptr) Variable Function |
| 108(param): 12(ptr) Variable Function |
| 110(param): 17(ptr) Variable Function |
| 61:25(EmptyStruct) Load 60(stage_input) |
| Store 58(stage_input) 61 |
| 67: 66(ptr) AccessChain 65(patch.position) 38 |
| 68: 7(fvec4) Load 67 |
| 70: 69(ptr) AccessChain 62(patch) 38 38 |
| Store 70 68 |
| 71: 66(ptr) AccessChain 65(patch.position) 42 |
| 72: 7(fvec4) Load 71 |
| 73: 69(ptr) AccessChain 62(patch) 42 38 |
| Store 73 72 |
| 74: 66(ptr) AccessChain 65(patch.position) 44 |
| 75: 7(fvec4) Load 74 |
| 76: 69(ptr) AccessChain 62(patch) 44 38 |
| Store 76 75 |
| 80: 9(int) Load 79(pointId) |
| Store 77(pointId) 80 |
| 83: 9(int) Load 82(patchId) |
| Store 81(patchId) 83 |
| 87: 9(int) Load 79(pointId) |
| 89:25(EmptyStruct) Load 58(stage_input) |
| Store 88(param) 89 |
| 91: 11 Load 62(patch) |
| Store 90(param) 91 |
| 93: 9(int) Load 77(pointId) |
| Store 92(param) 93 |
| 95: 9(int) Load 81(patchId) |
| Store 94(param) 95 |
| 96:27(HullOutputType) FunctionCall 33(@main(struct-EmptyStruct1;struct-HullInputType-vf41[3];u1;u1;) 88(param) 90(param) 92(param) 94(param) |
| 98: 97(ptr) AccessChain 86(@entryPointOutput) 87 |
| Store 98 96 |
| ControlBarrier 99 100 101 |
| 102: 9(int) Load 79(pointId) |
| 104: 103(bool) IEqual 102 38 |
| SelectionMerge 106 None |
| BranchConditional 104 105 106 |
| 105: Label |
| 109: 11 Load 62(patch) |
| Store 108(param) 109 |
| 111: 9(int) Load 82(patchId) |
| Store 110(param) 111 |
| 112:19(ConstantOutputType) FunctionCall 23(ColorPatchConstantFunction(struct-HullInputType-vf41[3];u1;) 108(param) 110(param) |
| Store 107(@patchConstantResult) 112 |
| 116: 40(ptr) AccessChain 107(@patchConstantResult) 38 38 |
| 117: 6(float) Load 116 |
| 119: 118(ptr) AccessChain 115(@patchConstantOutput.edges) 38 |
| Store 119 117 |
| 120: 40(ptr) AccessChain 107(@patchConstantResult) 38 42 |
| 121: 6(float) Load 120 |
| 122: 118(ptr) AccessChain 115(@patchConstantOutput.edges) 42 |
| Store 122 121 |
| 123: 40(ptr) AccessChain 107(@patchConstantResult) 38 44 |
| 124: 6(float) Load 123 |
| 125: 118(ptr) AccessChain 115(@patchConstantOutput.edges) 44 |
| Store 125 124 |
| 129: 40(ptr) AccessChain 107(@patchConstantResult) 42 |
| 130: 6(float) Load 129 |
| 131: 118(ptr) AccessChain 128(@patchConstantOutput.inside) 38 |
| Store 131 130 |
| Branch 106 |
| 106: Label |
| Return |
| FunctionEnd |
| 15(blob(struct-HullInputType-vf41[3];): 2 Function None 13 |
| 14(patch): 12(ptr) FunctionParameter |
| 16: Label |
| Return |
| FunctionEnd |
| 23(ColorPatchConstantFunction(struct-HullInputType-vf41[3];u1;):19(ConstantOutputType) Function None 20 |
| 21(inputPatch): 12(ptr) FunctionParameter |
| 22(patchId): 17(ptr) FunctionParameter |
| 24: Label |
| 36(output): 35(ptr) Variable Function |
| 41: 40(ptr) AccessChain 36(output) 38 38 |
| Store 41 39 |
| 43: 40(ptr) AccessChain 36(output) 38 42 |
| Store 43 39 |
| 45: 40(ptr) AccessChain 36(output) 38 44 |
| Store 45 39 |
| 46: 40(ptr) AccessChain 36(output) 42 |
| Store 46 39 |
| 47:19(ConstantOutputType) Load 36(output) |
| ReturnValue 47 |
| FunctionEnd |
| 33(@main(struct-EmptyStruct1;struct-HullInputType-vf41[3];u1;u1;):27(HullOutputType) Function None 28 |
| 29(stage_input): 26(ptr) FunctionParameter |
| 30(patch): 12(ptr) FunctionParameter |
| 31(pointId): 17(ptr) FunctionParameter |
| 32(patchId): 17(ptr) FunctionParameter |
| 34: Label |
| 50(param): 12(ptr) Variable Function |
| 54(output): 53(ptr) Variable Function |
| 51: 11 Load 30(patch) |
| Store 50(param) 51 |
| 52: 2 FunctionCall 15(blob(struct-HullInputType-vf41[3];) 50(param) |
| 55:27(HullOutputType) Load 54(output) |
| ReturnValue 55 |
| FunctionEnd |