 4e9cde50bb
			
		
	
	
		4e9cde50bb
		
	
	
	
	
		
			
			From TParseContext used only by GLSL, to TParseContextBase inherited by both GLSL and HLSL paths. It caused compilations from HLSL to SPIR-V 1.3+ to use BufferBlock decoration which is no longer valid.
		
			
				
	
	
		
			118 lines
		
	
	
		
			5.2 KiB
		
	
	
	
		
			Plaintext
		
	
	
	
	
	
			
		
		
	
	
			118 lines
		
	
	
		
			5.2 KiB
		
	
	
	
		
			Plaintext
		
	
	
	
	
	
| hlsl.wavequery.comp
 | |
| Shader version: 500
 | |
| local_size = (32, 16, 1)
 | |
| 0:? Sequence
 | |
| 0:5  Function Definition: @CSMain( ( temp void)
 | |
| 0:5    Function Parameters: 
 | |
| 0:?     Sequence
 | |
| 0:6      move second child to first child ( temp uint)
 | |
| 0:6        indirect index (layout( row_major std430) buffer uint)
 | |
| 0:6          @data: direct index for structure (layout( row_major std430) buffer unsized 1-element array of uint)
 | |
| 0:6            'data' (layout( row_major std430) buffer block{layout( row_major std430) buffer unsized 1-element array of uint @data})
 | |
| 0:6            Constant:
 | |
| 0:6              0 (const uint)
 | |
| 0:6          '@gl_SubgroupInvocationID' ( in uint SubgroupInvocationID)
 | |
| 0:6        Test condition and select ( temp uint): no shortcircuit
 | |
| 0:6          Condition
 | |
| 0:6          subgroupElect ( temp bool)
 | |
| 0:6          true case
 | |
| 0:6          '@gl_SubgroupSize' ( in uint SubgroupSize)
 | |
| 0:6          false case
 | |
| 0:6          Constant:
 | |
| 0:6            0 (const uint)
 | |
| 0:5  Function Definition: CSMain( ( temp void)
 | |
| 0:5    Function Parameters: 
 | |
| 0:?     Sequence
 | |
| 0:5      Function Call: @CSMain( ( temp void)
 | |
| 0:?   Linker Objects
 | |
| 0:?     'data' (layout( row_major std430) buffer block{layout( row_major std430) buffer unsized 1-element array of uint @data})
 | |
| 
 | |
| 
 | |
| Linked compute stage:
 | |
| 
 | |
| 
 | |
| Shader version: 500
 | |
| local_size = (32, 16, 1)
 | |
| 0:? Sequence
 | |
| 0:5  Function Definition: @CSMain( ( temp void)
 | |
| 0:5    Function Parameters: 
 | |
| 0:?     Sequence
 | |
| 0:6      move second child to first child ( temp uint)
 | |
| 0:6        indirect index (layout( row_major std430) buffer uint)
 | |
| 0:6          @data: direct index for structure (layout( row_major std430) buffer unsized 1-element array of uint)
 | |
| 0:6            'data' (layout( row_major std430) buffer block{layout( row_major std430) buffer unsized 1-element array of uint @data})
 | |
| 0:6            Constant:
 | |
| 0:6              0 (const uint)
 | |
| 0:6          '@gl_SubgroupInvocationID' ( in uint SubgroupInvocationID)
 | |
| 0:6        Test condition and select ( temp uint): no shortcircuit
 | |
| 0:6          Condition
 | |
| 0:6          subgroupElect ( temp bool)
 | |
| 0:6          true case
 | |
| 0:6          '@gl_SubgroupSize' ( in uint SubgroupSize)
 | |
| 0:6          false case
 | |
| 0:6          Constant:
 | |
| 0:6            0 (const uint)
 | |
| 0:5  Function Definition: CSMain( ( temp void)
 | |
| 0:5    Function Parameters: 
 | |
| 0:?     Sequence
 | |
| 0:5      Function Call: @CSMain( ( temp void)
 | |
| 0:?   Linker Objects
 | |
| 0:?     'data' (layout( row_major std430) buffer block{layout( row_major std430) buffer unsized 1-element array of uint @data})
 | |
| 
 | |
| // Module Version 10300
 | |
| // Generated by (magic number): 8000b
 | |
| // Id's are bound by 28
 | |
| 
 | |
|                               Capability Shader
 | |
|                               Capability GroupNonUniform
 | |
|                1:             ExtInstImport  "GLSL.std.450"
 | |
|                               MemoryModel Logical GLSL450
 | |
|                               EntryPoint GLCompute 4  "CSMain" 16 21
 | |
|                               ExecutionMode 4 LocalSize 32 16 1
 | |
|                               Source HLSL 500
 | |
|                               Name 4  "CSMain"
 | |
|                               Name 6  "@CSMain("
 | |
|                               Name 10  "data"
 | |
|                               MemberName 10(data) 0  "@data"
 | |
|                               Name 12  "data"
 | |
|                               Name 16  "@gl_SubgroupInvocationID"
 | |
|                               Name 21  "@gl_SubgroupSize"
 | |
|                               Decorate 9 ArrayStride 4
 | |
|                               MemberDecorate 10(data) 0 Offset 0
 | |
|                               Decorate 10(data) Block
 | |
|                               Decorate 12(data) DescriptorSet 0
 | |
|                               Decorate 12(data) Binding 0
 | |
|                               Decorate 16(@gl_SubgroupInvocationID) BuiltIn SubgroupLocalInvocationId
 | |
|                               Decorate 21(@gl_SubgroupSize) BuiltIn SubgroupSize
 | |
|                2:             TypeVoid
 | |
|                3:             TypeFunction 2
 | |
|                8:             TypeInt 32 0
 | |
|                9:             TypeRuntimeArray 8(int)
 | |
|         10(data):             TypeStruct 9
 | |
|               11:             TypePointer StorageBuffer 10(data)
 | |
|         12(data):     11(ptr) Variable StorageBuffer
 | |
|               13:             TypeInt 32 1
 | |
|               14:     13(int) Constant 0
 | |
|               15:             TypePointer Input 8(int)
 | |
| 16(@gl_SubgroupInvocationID):     15(ptr) Variable Input
 | |
|               18:             TypeBool
 | |
|               19:      8(int) Constant 3
 | |
| 21(@gl_SubgroupSize):     15(ptr) Variable Input
 | |
|               23:      8(int) Constant 0
 | |
|               25:             TypePointer StorageBuffer 8(int)
 | |
|        4(CSMain):           2 Function None 3
 | |
|                5:             Label
 | |
|               27:           2 FunctionCall 6(@CSMain()
 | |
|                               Return
 | |
|                               FunctionEnd
 | |
|      6(@CSMain():           2 Function None 3
 | |
|                7:             Label
 | |
|               17:      8(int) Load 16(@gl_SubgroupInvocationID)
 | |
|               20:    18(bool) GroupNonUniformElect 19
 | |
|               22:      8(int) Load 21(@gl_SubgroupSize)
 | |
|               24:      8(int) Select 20 22 23
 | |
|               26:     25(ptr) AccessChain 12(data) 14 17
 | |
|                               Store 26 24
 | |
|                               Return
 | |
|                               FunctionEnd
 |