680 lines
		
	
	
		
			37 KiB
		
	
	
	
		
			Plaintext
		
	
	
	
			
		
		
	
	
			680 lines
		
	
	
		
			37 KiB
		
	
	
	
		
			Plaintext
		
	
	
	
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
 |