| hlsl.hull.6.tesc |
| Shader version: 500 |
| vertices = 1 |
| vertex spacing = fractional_even_spacing |
| triangle order = ccw |
| 0:? Sequence |
| 0:17 Function Definition: ConstantHS(struct-VSOutput-vf4-vf31[1];u1;f1[2]; ( temp structure{ temp 4-element array of float Edges}) |
| 0:17 Function Parameters: |
| 0:17 'p' ( in 1-element array of structure{ temp 4-component vector of float f4Position, temp 3-component vector of float f3Color}) |
| 0:17 'BlockID' ( in uint) |
| 0:17 'Inside' ( out 2-element array of float) |
| 0:? Sequence |
| 0:19 move second child to first child ( temp float) |
| 0:19 direct index ( temp float) |
| 0:19 Edges: direct index for structure ( temp 4-element array of float) |
| 0:19 'Factors' ( temp structure{ temp 4-element array of float Edges}) |
| 0:19 Constant: |
| 0:19 0 (const int) |
| 0:19 Constant: |
| 0:19 0 (const int) |
| 0:19 Constant: |
| 0:19 2.500000 |
| 0:20 move second child to first child ( temp float) |
| 0:20 direct index ( temp float) |
| 0:20 Edges: direct index for structure ( temp 4-element array of float) |
| 0:20 'Factors' ( temp structure{ temp 4-element array of float Edges}) |
| 0:20 Constant: |
| 0:20 0 (const int) |
| 0:20 Constant: |
| 0:20 1 (const int) |
| 0:20 Constant: |
| 0:20 4.250000 |
| 0:21 move second child to first child ( temp float) |
| 0:21 direct index ( temp float) |
| 0:21 Edges: direct index for structure ( temp 4-element array of float) |
| 0:21 'Factors' ( temp structure{ temp 4-element array of float Edges}) |
| 0:21 Constant: |
| 0:21 0 (const int) |
| 0:21 Constant: |
| 0:21 2 (const int) |
| 0:21 Constant: |
| 0:21 5.750000 |
| 0:22 move second child to first child ( temp float) |
| 0:22 direct index ( temp float) |
| 0:22 Edges: direct index for structure ( temp 4-element array of float) |
| 0:22 'Factors' ( temp structure{ temp 4-element array of float Edges}) |
| 0:22 Constant: |
| 0:22 0 (const int) |
| 0:22 Constant: |
| 0:22 3 (const int) |
| 0:22 Constant: |
| 0:22 7.500000 |
| 0:24 move second child to first child ( temp float) |
| 0:24 direct index ( temp float) |
| 0:24 'Inside' ( out 2-element array of float) |
| 0:24 Constant: |
| 0:24 0 (const int) |
| 0:24 Constant: |
| 0:24 6.750000 |
| 0:25 move second child to first child ( temp float) |
| 0:25 direct index ( temp float) |
| 0:25 'Inside' ( out 2-element array of float) |
| 0:25 Constant: |
| 0:25 1 (const int) |
| 0:25 Constant: |
| 0:25 7.250000 |
| 0:27 Branch: Return with expression |
| 0:27 'Factors' ( temp structure{ temp 4-element array of float Edges}) |
| 0:42 Function Definition: @main(struct-VSOutput-vf4-vf31[1];u1; ( temp structure{ temp 4-component vector of float Position, temp 3-component vector of float Color}) |
| 0:42 Function Parameters: |
| 0:42 'inputPatch' ( in 1-element array of structure{ temp 4-component vector of float f4Position, temp 3-component vector of float f3Color}) |
| 0:42 'uCPID' ( in uint) |
| 0:? Sequence |
| 0:44 move second child to first child ( temp 4-component vector of float) |
| 0:44 Position: direct index for structure ( temp 4-component vector of float) |
| 0:44 'Out' ( temp structure{ temp 4-component vector of float Position, temp 3-component vector of float Color}) |
| 0:44 Constant: |
| 0:44 0 (const int) |
| 0:44 f4Position: direct index for structure ( temp 4-component vector of float) |
| 0:44 indirect index ( temp structure{ temp 4-component vector of float f4Position, temp 3-component vector of float f3Color}) |
| 0:44 'inputPatch' ( in 1-element array of structure{ temp 4-component vector of float f4Position, temp 3-component vector of float f3Color}) |
| 0:44 'uCPID' ( in uint) |
| 0:44 Constant: |
| 0:44 0 (const int) |
| 0:45 move second child to first child ( temp 3-component vector of float) |
| 0:45 Color: direct index for structure ( temp 3-component vector of float) |
| 0:45 'Out' ( temp structure{ temp 4-component vector of float Position, temp 3-component vector of float Color}) |
| 0:45 Constant: |
| 0:45 1 (const int) |
| 0:45 f3Color: direct index for structure ( temp 3-component vector of float) |
| 0:45 indirect index ( temp structure{ temp 4-component vector of float f4Position, temp 3-component vector of float f3Color}) |
| 0:45 'inputPatch' ( in 1-element array of structure{ temp 4-component vector of float f4Position, temp 3-component vector of float f3Color}) |
| 0:45 'uCPID' ( in uint) |
| 0:45 Constant: |
| 0:45 1 (const int) |
| 0:46 Branch: Return with expression |
| 0:46 'Out' ( temp structure{ temp 4-component vector of float Position, temp 3-component vector of float Color}) |
| 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 4-component vector of float) |
| 0:42 f4Position: direct index for structure ( temp 4-component vector of float) |
| 0:42 direct index ( temp structure{ temp 4-component vector of float f4Position, temp 3-component vector of float f3Color}) |
| 0:? 'inputPatch' ( temp 1-element array of structure{ temp 4-component vector of float f4Position, temp 3-component vector of float f3Color}) |
| 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:? 'inputPatch.f4Position' ( in 1-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 3-component vector of float) |
| 0:42 f3Color: direct index for structure ( temp 3-component vector of float) |
| 0:42 direct index ( temp structure{ temp 4-component vector of float f4Position, temp 3-component vector of float f3Color}) |
| 0:? 'inputPatch' ( temp 1-element array of structure{ temp 4-component vector of float f4Position, temp 3-component vector of float f3Color}) |
| 0:42 Constant: |
| 0:42 0 (const int) |
| 0:42 Constant: |
| 0:42 1 (const int) |
| 0:42 direct index (layout( location=0) in 3-component vector of float) |
| 0:? 'inputPatch.f3Color' (layout( location=0) in 1-element array of 3-component vector of float) |
| 0:42 Constant: |
| 0:42 0 (const int) |
| 0:42 move second child to first child ( temp uint) |
| 0:? 'uCPID' ( temp uint) |
| 0:? 'uCPID' ( in uint InvocationID) |
| 0:42 Sequence |
| 0:42 move second child to first child ( temp structure{ temp 4-component vector of float Position, temp 3-component vector of float Color}) |
| 0:42 'flattenTemp' ( temp structure{ temp 4-component vector of float Position, temp 3-component vector of float Color}) |
| 0:42 Function Call: @main(struct-VSOutput-vf4-vf31[1];u1; ( temp structure{ temp 4-component vector of float Position, temp 3-component vector of float Color}) |
| 0:? 'inputPatch' ( temp 1-element array of structure{ temp 4-component vector of float f4Position, temp 3-component vector of float f3Color}) |
| 0:? 'uCPID' ( temp uint) |
| 0:42 move second child to first child ( temp 4-component vector of float) |
| 0:42 indirect index (layout( location=0) out 4-component vector of float) |
| 0:? '@entryPointOutput.Position' (layout( location=0) out 1-element array of 4-component vector of float) |
| 0:? 'uCPID' ( in uint InvocationID) |
| 0:42 Position: direct index for structure ( temp 4-component vector of float) |
| 0:42 'flattenTemp' ( temp structure{ temp 4-component vector of float Position, temp 3-component vector of float Color}) |
| 0:42 Constant: |
| 0:42 0 (const int) |
| 0:42 move second child to first child ( temp 3-component vector of float) |
| 0:42 indirect index (layout( location=1) out 3-component vector of float) |
| 0:? '@entryPointOutput.Color' (layout( location=1) out 1-element array of 3-component vector of float) |
| 0:? 'uCPID' ( in uint InvocationID) |
| 0:42 Color: direct index for structure ( temp 3-component vector of float) |
| 0:42 'flattenTemp' ( temp structure{ temp 4-component vector of float Position, temp 3-component vector of float Color}) |
| 0:42 Constant: |
| 0:42 1 (const int) |
| 0:? Barrier ( temp void) |
| 0:? Test condition and select ( temp void) |
| 0:? Condition |
| 0:? Compare Equal ( temp bool) |
| 0:? 'uCPID' ( in uint InvocationID) |
| 0:? Constant: |
| 0:? 0 (const int) |
| 0:? true case |
| 0:? Sequence |
| 0:? move second child to first child ( temp structure{ temp 4-element array of float Edges}) |
| 0:? '@patchConstantResult' ( temp structure{ temp 4-element array of float Edges}) |
| 0:? Function Call: ConstantHS(struct-VSOutput-vf4-vf31[1];u1;f1[2]; ( temp structure{ temp 4-element array of float Edges}) |
| 0:? 'inputPatch' ( temp 1-element array of structure{ temp 4-component vector of float f4Position, temp 3-component vector of float f3Color}) |
| 0:? 'BlockID' ( in uint PrimitiveID) |
| 0:? 'Inside' ( patch out 2-element array of float TessLevelInner) |
| 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 4-element array of float) |
| 0:? '@patchConstantResult' ( temp structure{ temp 4-element array of float Edges}) |
| 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 4-element array of float) |
| 0:? '@patchConstantResult' ( temp structure{ temp 4-element array of float Edges}) |
| 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 4-element array of float) |
| 0:? '@patchConstantResult' ( temp structure{ temp 4-element array of float Edges}) |
| 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 TessLevelOuter) |
| 0:? '@patchConstantOutput.Edges' ( patch out 4-element array of float TessLevelOuter) |
| 0:? Constant: |
| 0:? 3 (const int) |
| 0:? direct index ( temp float) |
| 0:? Edges: direct index for structure ( temp 4-element array of float) |
| 0:? '@patchConstantResult' ( temp structure{ temp 4-element array of float Edges}) |
| 0:? Constant: |
| 0:? 0 (const int) |
| 0:? Constant: |
| 0:? 3 (const int) |
| 0:? Linker Objects |
| 0:? '@entryPointOutput.Position' (layout( location=0) out 1-element array of 4-component vector of float) |
| 0:? '@entryPointOutput.Color' (layout( location=1) out 1-element array of 3-component vector of float) |
| 0:? 'inputPatch.f4Position' ( in 1-element array of 4-component vector of float Position) |
| 0:? 'inputPatch.f3Color' (layout( location=0) in 1-element array of 3-component vector of float) |
| 0:? 'uCPID' ( in uint InvocationID) |
| 0:? 'BlockID' ( in uint PrimitiveID) |
| 0:? 'Inside' ( patch out 2-element array of float TessLevelInner) |
| 0:? '@patchConstantOutput.Edges' ( patch out 4-element array of float TessLevelOuter) |
| |
| |
| Linked tessellation control stage: |
| |
| |
| Shader version: 500 |
| vertices = 1 |
| vertex spacing = fractional_even_spacing |
| triangle order = ccw |
| 0:? Sequence |
| 0:17 Function Definition: ConstantHS(struct-VSOutput-vf4-vf31[1];u1;f1[2]; ( temp structure{ temp 4-element array of float Edges}) |
| 0:17 Function Parameters: |
| 0:17 'p' ( in 1-element array of structure{ temp 4-component vector of float f4Position, temp 3-component vector of float f3Color}) |
| 0:17 'BlockID' ( in uint) |
| 0:17 'Inside' ( out 2-element array of float) |
| 0:? Sequence |
| 0:19 move second child to first child ( temp float) |
| 0:19 direct index ( temp float) |
| 0:19 Edges: direct index for structure ( temp 4-element array of float) |
| 0:19 'Factors' ( temp structure{ temp 4-element array of float Edges}) |
| 0:19 Constant: |
| 0:19 0 (const int) |
| 0:19 Constant: |
| 0:19 0 (const int) |
| 0:19 Constant: |
| 0:19 2.500000 |
| 0:20 move second child to first child ( temp float) |
| 0:20 direct index ( temp float) |
| 0:20 Edges: direct index for structure ( temp 4-element array of float) |
| 0:20 'Factors' ( temp structure{ temp 4-element array of float Edges}) |
| 0:20 Constant: |
| 0:20 0 (const int) |
| 0:20 Constant: |
| 0:20 1 (const int) |
| 0:20 Constant: |
| 0:20 4.250000 |
| 0:21 move second child to first child ( temp float) |
| 0:21 direct index ( temp float) |
| 0:21 Edges: direct index for structure ( temp 4-element array of float) |
| 0:21 'Factors' ( temp structure{ temp 4-element array of float Edges}) |
| 0:21 Constant: |
| 0:21 0 (const int) |
| 0:21 Constant: |
| 0:21 2 (const int) |
| 0:21 Constant: |
| 0:21 5.750000 |
| 0:22 move second child to first child ( temp float) |
| 0:22 direct index ( temp float) |
| 0:22 Edges: direct index for structure ( temp 4-element array of float) |
| 0:22 'Factors' ( temp structure{ temp 4-element array of float Edges}) |
| 0:22 Constant: |
| 0:22 0 (const int) |
| 0:22 Constant: |
| 0:22 3 (const int) |
| 0:22 Constant: |
| 0:22 7.500000 |
| 0:24 move second child to first child ( temp float) |
| 0:24 direct index ( temp float) |
| 0:24 'Inside' ( out 2-element array of float) |
| 0:24 Constant: |
| 0:24 0 (const int) |
| 0:24 Constant: |
| 0:24 6.750000 |
| 0:25 move second child to first child ( temp float) |
| 0:25 direct index ( temp float) |
| 0:25 'Inside' ( out 2-element array of float) |
| 0:25 Constant: |
| 0:25 1 (const int) |
| 0:25 Constant: |
| 0:25 7.250000 |
| 0:27 Branch: Return with expression |
| 0:27 'Factors' ( temp structure{ temp 4-element array of float Edges}) |
| 0:42 Function Definition: @main(struct-VSOutput-vf4-vf31[1];u1; ( temp structure{ temp 4-component vector of float Position, temp 3-component vector of float Color}) |
| 0:42 Function Parameters: |
| 0:42 'inputPatch' ( in 1-element array of structure{ temp 4-component vector of float f4Position, temp 3-component vector of float f3Color}) |
| 0:42 'uCPID' ( in uint) |
| 0:? Sequence |
| 0:44 move second child to first child ( temp 4-component vector of float) |
| 0:44 Position: direct index for structure ( temp 4-component vector of float) |
| 0:44 'Out' ( temp structure{ temp 4-component vector of float Position, temp 3-component vector of float Color}) |
| 0:44 Constant: |
| 0:44 0 (const int) |
| 0:44 f4Position: direct index for structure ( temp 4-component vector of float) |
| 0:44 indirect index ( temp structure{ temp 4-component vector of float f4Position, temp 3-component vector of float f3Color}) |
| 0:44 'inputPatch' ( in 1-element array of structure{ temp 4-component vector of float f4Position, temp 3-component vector of float f3Color}) |
| 0:44 'uCPID' ( in uint) |
| 0:44 Constant: |
| 0:44 0 (const int) |
| 0:45 move second child to first child ( temp 3-component vector of float) |
| 0:45 Color: direct index for structure ( temp 3-component vector of float) |
| 0:45 'Out' ( temp structure{ temp 4-component vector of float Position, temp 3-component vector of float Color}) |
| 0:45 Constant: |
| 0:45 1 (const int) |
| 0:45 f3Color: direct index for structure ( temp 3-component vector of float) |
| 0:45 indirect index ( temp structure{ temp 4-component vector of float f4Position, temp 3-component vector of float f3Color}) |
| 0:45 'inputPatch' ( in 1-element array of structure{ temp 4-component vector of float f4Position, temp 3-component vector of float f3Color}) |
| 0:45 'uCPID' ( in uint) |
| 0:45 Constant: |
| 0:45 1 (const int) |
| 0:46 Branch: Return with expression |
| 0:46 'Out' ( temp structure{ temp 4-component vector of float Position, temp 3-component vector of float Color}) |
| 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 4-component vector of float) |
| 0:42 f4Position: direct index for structure ( temp 4-component vector of float) |
| 0:42 direct index ( temp structure{ temp 4-component vector of float f4Position, temp 3-component vector of float f3Color}) |
| 0:? 'inputPatch' ( temp 1-element array of structure{ temp 4-component vector of float f4Position, temp 3-component vector of float f3Color}) |
| 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:? 'inputPatch.f4Position' ( in 1-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 3-component vector of float) |
| 0:42 f3Color: direct index for structure ( temp 3-component vector of float) |
| 0:42 direct index ( temp structure{ temp 4-component vector of float f4Position, temp 3-component vector of float f3Color}) |
| 0:? 'inputPatch' ( temp 1-element array of structure{ temp 4-component vector of float f4Position, temp 3-component vector of float f3Color}) |
| 0:42 Constant: |
| 0:42 0 (const int) |
| 0:42 Constant: |
| 0:42 1 (const int) |
| 0:42 direct index (layout( location=0) in 3-component vector of float) |
| 0:? 'inputPatch.f3Color' (layout( location=0) in 1-element array of 3-component vector of float) |
| 0:42 Constant: |
| 0:42 0 (const int) |
| 0:42 move second child to first child ( temp uint) |
| 0:? 'uCPID' ( temp uint) |
| 0:? 'uCPID' ( in uint InvocationID) |
| 0:42 Sequence |
| 0:42 move second child to first child ( temp structure{ temp 4-component vector of float Position, temp 3-component vector of float Color}) |
| 0:42 'flattenTemp' ( temp structure{ temp 4-component vector of float Position, temp 3-component vector of float Color}) |
| 0:42 Function Call: @main(struct-VSOutput-vf4-vf31[1];u1; ( temp structure{ temp 4-component vector of float Position, temp 3-component vector of float Color}) |
| 0:? 'inputPatch' ( temp 1-element array of structure{ temp 4-component vector of float f4Position, temp 3-component vector of float f3Color}) |
| 0:? 'uCPID' ( temp uint) |
| 0:42 move second child to first child ( temp 4-component vector of float) |
| 0:42 indirect index (layout( location=0) out 4-component vector of float) |
| 0:? '@entryPointOutput.Position' (layout( location=0) out 1-element array of 4-component vector of float) |
| 0:? 'uCPID' ( in uint InvocationID) |
| 0:42 Position: direct index for structure ( temp 4-component vector of float) |
| 0:42 'flattenTemp' ( temp structure{ temp 4-component vector of float Position, temp 3-component vector of float Color}) |
| 0:42 Constant: |
| 0:42 0 (const int) |
| 0:42 move second child to first child ( temp 3-component vector of float) |
| 0:42 indirect index (layout( location=1) out 3-component vector of float) |
| 0:? '@entryPointOutput.Color' (layout( location=1) out 1-element array of 3-component vector of float) |
| 0:? 'uCPID' ( in uint InvocationID) |
| 0:42 Color: direct index for structure ( temp 3-component vector of float) |
| 0:42 'flattenTemp' ( temp structure{ temp 4-component vector of float Position, temp 3-component vector of float Color}) |
| 0:42 Constant: |
| 0:42 1 (const int) |
| 0:? Barrier ( temp void) |
| 0:? Test condition and select ( temp void) |
| 0:? Condition |
| 0:? Compare Equal ( temp bool) |
| 0:? 'uCPID' ( in uint InvocationID) |
| 0:? Constant: |
| 0:? 0 (const int) |
| 0:? true case |
| 0:? Sequence |
| 0:? move second child to first child ( temp structure{ temp 4-element array of float Edges}) |
| 0:? '@patchConstantResult' ( temp structure{ temp 4-element array of float Edges}) |
| 0:? Function Call: ConstantHS(struct-VSOutput-vf4-vf31[1];u1;f1[2]; ( temp structure{ temp 4-element array of float Edges}) |
| 0:? 'inputPatch' ( temp 1-element array of structure{ temp 4-component vector of float f4Position, temp 3-component vector of float f3Color}) |
| 0:? 'BlockID' ( in uint PrimitiveID) |
| 0:? 'Inside' ( patch out 2-element array of float TessLevelInner) |
| 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 4-element array of float) |
| 0:? '@patchConstantResult' ( temp structure{ temp 4-element array of float Edges}) |
| 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 4-element array of float) |
| 0:? '@patchConstantResult' ( temp structure{ temp 4-element array of float Edges}) |
| 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 4-element array of float) |
| 0:? '@patchConstantResult' ( temp structure{ temp 4-element array of float Edges}) |
| 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 TessLevelOuter) |
| 0:? '@patchConstantOutput.Edges' ( patch out 4-element array of float TessLevelOuter) |
| 0:? Constant: |
| 0:? 3 (const int) |
| 0:? direct index ( temp float) |
| 0:? Edges: direct index for structure ( temp 4-element array of float) |
| 0:? '@patchConstantResult' ( temp structure{ temp 4-element array of float Edges}) |
| 0:? Constant: |
| 0:? 0 (const int) |
| 0:? Constant: |
| 0:? 3 (const int) |
| 0:? Linker Objects |
| 0:? '@entryPointOutput.Position' (layout( location=0) out 1-element array of 4-component vector of float) |
| 0:? '@entryPointOutput.Color' (layout( location=1) out 1-element array of 3-component vector of float) |
| 0:? 'inputPatch.f4Position' ( in 1-element array of 4-component vector of float Position) |
| 0:? 'inputPatch.f3Color' (layout( location=0) in 1-element array of 3-component vector of float) |
| 0:? 'uCPID' ( in uint InvocationID) |
| 0:? 'BlockID' ( in uint PrimitiveID) |
| 0:? 'Inside' ( patch out 2-element array of float TessLevelInner) |
| 0:? '@patchConstantOutput.Edges' ( patch out 4-element array of float TessLevelOuter) |
| |
| // Module Version 10000 |
| // Generated by (magic number): 8000a |
| // Id's are bound by 142 |
| |
| Capability Tessellation |
| 1: ExtInstImport "GLSL.std.450" |
| MemoryModel Logical GLSL450 |
| EntryPoint TessellationControl 4 "main" 74 81 88 97 104 117 119 128 |
| ExecutionMode 4 OutputVertices 1 |
| ExecutionMode 4 Quads |
| ExecutionMode 4 SpacingFractionalEven |
| ExecutionMode 4 VertexOrderCcw |
| Source HLSL 500 |
| Name 4 "main" |
| Name 9 "VSOutput" |
| MemberName 9(VSOutput) 0 "f4Position" |
| MemberName 9(VSOutput) 1 "f3Color" |
| Name 20 "HS_CONSTANT_DATA_OUTPUT" |
| MemberName 20(HS_CONSTANT_DATA_OUTPUT) 0 "Edges" |
| Name 25 "ConstantHS(struct-VSOutput-vf4-vf31[1];u1;f1[2];" |
| Name 22 "p" |
| Name 23 "BlockID" |
| Name 24 "Inside" |
| Name 27 "HSOutput" |
| MemberName 27(HSOutput) 0 "Position" |
| MemberName 27(HSOutput) 1 "Color" |
| Name 31 "@main(struct-VSOutput-vf4-vf31[1];u1;" |
| Name 29 "inputPatch" |
| Name 30 "uCPID" |
| Name 34 "Factors" |
| Name 57 "Out" |
| Name 71 "inputPatch" |
| Name 74 "inputPatch.f4Position" |
| Name 81 "inputPatch.f3Color" |
| Name 86 "uCPID" |
| Name 88 "uCPID" |
| Name 90 "flattenTemp" |
| Name 91 "param" |
| Name 93 "param" |
| Name 97 "@entryPointOutput.Position" |
| Name 104 "@entryPointOutput.Color" |
| Name 116 "@patchConstantResult" |
| Name 117 "BlockID" |
| Name 119 "Inside" |
| Name 120 "param" |
| Name 122 "param" |
| Name 124 "param" |
| Name 128 "@patchConstantOutput.Edges" |
| Decorate 74(inputPatch.f4Position) BuiltIn Position |
| Decorate 81(inputPatch.f3Color) Location 0 |
| Decorate 88(uCPID) BuiltIn InvocationId |
| Decorate 97(@entryPointOutput.Position) Location 0 |
| Decorate 104(@entryPointOutput.Color) Location 1 |
| Decorate 117(BlockID) BuiltIn PrimitiveId |
| Decorate 119(Inside) Patch |
| Decorate 119(Inside) BuiltIn TessLevelInner |
| Decorate 128(@patchConstantOutput.Edges) Patch |
| Decorate 128(@patchConstantOutput.Edges) BuiltIn TessLevelOuter |
| 2: TypeVoid |
| 3: TypeFunction 2 |
| 6: TypeFloat 32 |
| 7: TypeVector 6(float) 4 |
| 8: TypeVector 6(float) 3 |
| 9(VSOutput): TypeStruct 7(fvec4) 8(fvec3) |
| 10: TypeInt 32 0 |
| 11: 10(int) Constant 1 |
| 12: TypeArray 9(VSOutput) 11 |
| 13: TypePointer Function 12 |
| 14: TypePointer Function 10(int) |
| 15: 10(int) Constant 2 |
| 16: TypeArray 6(float) 15 |
| 17: TypePointer Function 16 |
| 18: 10(int) Constant 4 |
| 19: TypeArray 6(float) 18 |
| 20(HS_CONSTANT_DATA_OUTPUT): TypeStruct 19 |
| 21: TypeFunction 20(HS_CONSTANT_DATA_OUTPUT) 13(ptr) 14(ptr) 17(ptr) |
| 27(HSOutput): TypeStruct 7(fvec4) 8(fvec3) |
| 28: TypeFunction 27(HSOutput) 13(ptr) 14(ptr) |
| 33: TypePointer Function 20(HS_CONSTANT_DATA_OUTPUT) |
| 35: TypeInt 32 1 |
| 36: 35(int) Constant 0 |
| 37: 6(float) Constant 1075838976 |
| 38: TypePointer Function 6(float) |
| 40: 35(int) Constant 1 |
| 41: 6(float) Constant 1082654720 |
| 43: 35(int) Constant 2 |
| 44: 6(float) Constant 1085800448 |
| 46: 35(int) Constant 3 |
| 47: 6(float) Constant 1089470464 |
| 49: 6(float) Constant 1087897600 |
| 51: 6(float) Constant 1088946176 |
| 56: TypePointer Function 27(HSOutput) |
| 59: TypePointer Function 7(fvec4) |
| 64: TypePointer Function 8(fvec3) |
| 72: TypeArray 7(fvec4) 11 |
| 73: TypePointer Input 72 |
| 74(inputPatch.f4Position): 73(ptr) Variable Input |
| 75: TypePointer Input 7(fvec4) |
| 79: TypeArray 8(fvec3) 11 |
| 80: TypePointer Input 79 |
| 81(inputPatch.f3Color): 80(ptr) Variable Input |
| 82: TypePointer Input 8(fvec3) |
| 87: TypePointer Input 10(int) |
| 88(uCPID): 87(ptr) Variable Input |
| 96: TypePointer Output 72 |
| 97(@entryPointOutput.Position): 96(ptr) Variable Output |
| 101: TypePointer Output 7(fvec4) |
| 103: TypePointer Output 79 |
| 104(@entryPointOutput.Color): 103(ptr) Variable Output |
| 108: TypePointer Output 8(fvec3) |
| 110: 10(int) Constant 0 |
| 112: TypeBool |
| 117(BlockID): 87(ptr) Variable Input |
| 118: TypePointer Output 16 |
| 119(Inside): 118(ptr) Variable Output |
| 127: TypePointer Output 19 |
| 128(@patchConstantOutput.Edges): 127(ptr) Variable Output |
| 131: TypePointer Output 6(float) |
| 4(main): 2 Function None 3 |
| 5: Label |
| 71(inputPatch): 13(ptr) Variable Function |
| 86(uCPID): 14(ptr) Variable Function |
| 90(flattenTemp): 56(ptr) Variable Function |
| 91(param): 13(ptr) Variable Function |
| 93(param): 14(ptr) Variable Function |
| 116(@patchConstantResult): 33(ptr) Variable Function |
| 120(param): 13(ptr) Variable Function |
| 122(param): 14(ptr) Variable Function |
| 124(param): 17(ptr) Variable Function |
| 76: 75(ptr) AccessChain 74(inputPatch.f4Position) 36 |
| 77: 7(fvec4) Load 76 |
| 78: 59(ptr) AccessChain 71(inputPatch) 36 36 |
| Store 78 77 |
| 83: 82(ptr) AccessChain 81(inputPatch.f3Color) 36 |
| 84: 8(fvec3) Load 83 |
| 85: 64(ptr) AccessChain 71(inputPatch) 36 40 |
| Store 85 84 |
| 89: 10(int) Load 88(uCPID) |
| Store 86(uCPID) 89 |
| 92: 12 Load 71(inputPatch) |
| Store 91(param) 92 |
| 94: 10(int) Load 86(uCPID) |
| Store 93(param) 94 |
| 95:27(HSOutput) FunctionCall 31(@main(struct-VSOutput-vf4-vf31[1];u1;) 91(param) 93(param) |
| Store 90(flattenTemp) 95 |
| 98: 10(int) Load 88(uCPID) |
| 99: 59(ptr) AccessChain 90(flattenTemp) 36 |
| 100: 7(fvec4) Load 99 |
| 102: 101(ptr) AccessChain 97(@entryPointOutput.Position) 98 |
| Store 102 100 |
| 105: 10(int) Load 88(uCPID) |
| 106: 64(ptr) AccessChain 90(flattenTemp) 40 |
| 107: 8(fvec3) Load 106 |
| 109: 108(ptr) AccessChain 104(@entryPointOutput.Color) 105 |
| Store 109 107 |
| ControlBarrier 15 18 110 |
| 111: 10(int) Load 88(uCPID) |
| 113: 112(bool) IEqual 111 36 |
| SelectionMerge 115 None |
| BranchConditional 113 114 115 |
| 114: Label |
| 121: 12 Load 71(inputPatch) |
| Store 120(param) 121 |
| 123: 10(int) Load 117(BlockID) |
| Store 122(param) 123 |
| 125:20(HS_CONSTANT_DATA_OUTPUT) FunctionCall 25(ConstantHS(struct-VSOutput-vf4-vf31[1];u1;f1[2];) 120(param) 122(param) 124(param) |
| 126: 16 Load 124(param) |
| Store 119(Inside) 126 |
| Store 116(@patchConstantResult) 125 |
| 129: 38(ptr) AccessChain 116(@patchConstantResult) 36 36 |
| 130: 6(float) Load 129 |
| 132: 131(ptr) AccessChain 128(@patchConstantOutput.Edges) 36 |
| Store 132 130 |
| 133: 38(ptr) AccessChain 116(@patchConstantResult) 36 40 |
| 134: 6(float) Load 133 |
| 135: 131(ptr) AccessChain 128(@patchConstantOutput.Edges) 40 |
| Store 135 134 |
| 136: 38(ptr) AccessChain 116(@patchConstantResult) 36 43 |
| 137: 6(float) Load 136 |
| 138: 131(ptr) AccessChain 128(@patchConstantOutput.Edges) 43 |
| Store 138 137 |
| 139: 38(ptr) AccessChain 116(@patchConstantResult) 36 46 |
| 140: 6(float) Load 139 |
| 141: 131(ptr) AccessChain 128(@patchConstantOutput.Edges) 46 |
| Store 141 140 |
| Branch 115 |
| 115: Label |
| Return |
| FunctionEnd |
| 25(ConstantHS(struct-VSOutput-vf4-vf31[1];u1;f1[2];):20(HS_CONSTANT_DATA_OUTPUT) Function None 21 |
| 22(p): 13(ptr) FunctionParameter |
| 23(BlockID): 14(ptr) FunctionParameter |
| 24(Inside): 17(ptr) FunctionParameter |
| 26: Label |
| 34(Factors): 33(ptr) Variable Function |
| 39: 38(ptr) AccessChain 34(Factors) 36 36 |
| Store 39 37 |
| 42: 38(ptr) AccessChain 34(Factors) 36 40 |
| Store 42 41 |
| 45: 38(ptr) AccessChain 34(Factors) 36 43 |
| Store 45 44 |
| 48: 38(ptr) AccessChain 34(Factors) 36 46 |
| Store 48 47 |
| 50: 38(ptr) AccessChain 24(Inside) 36 |
| Store 50 49 |
| 52: 38(ptr) AccessChain 24(Inside) 40 |
| Store 52 51 |
| 53:20(HS_CONSTANT_DATA_OUTPUT) Load 34(Factors) |
| ReturnValue 53 |
| FunctionEnd |
| 31(@main(struct-VSOutput-vf4-vf31[1];u1;):27(HSOutput) Function None 28 |
| 29(inputPatch): 13(ptr) FunctionParameter |
| 30(uCPID): 14(ptr) FunctionParameter |
| 32: Label |
| 57(Out): 56(ptr) Variable Function |
| 58: 10(int) Load 30(uCPID) |
| 60: 59(ptr) AccessChain 29(inputPatch) 58 36 |
| 61: 7(fvec4) Load 60 |
| 62: 59(ptr) AccessChain 57(Out) 36 |
| Store 62 61 |
| 63: 10(int) Load 30(uCPID) |
| 65: 64(ptr) AccessChain 29(inputPatch) 63 40 |
| 66: 8(fvec3) Load 65 |
| 67: 64(ptr) AccessChain 57(Out) 40 |
| Store 67 66 |
| 68:27(HSOutput) Load 57(Out) |
| ReturnValue 68 |
| FunctionEnd |