607 lines
		
	
	
		
			32 KiB
		
	
	
	
		
			Plaintext
		
	
	
	
	
	
			
		
		
	
	
			607 lines
		
	
	
		
			32 KiB
		
	
	
	
		
			Plaintext
		
	
	
	
	
	
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
 |