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