 4bfbf62794
			
		
	
	
		4bfbf62794
		
	
	
	
	
		
			
			Uses SPV_KHR_workgroup_memory_explicit_layout. Note that if GL_EXT_scalar_block_layout is enabled, Workgroup blocks can also use scalar layout.
		
			
				
	
	
		
			55 lines
		
	
	
		
			2.6 KiB
		
	
	
	
		
			Plaintext
		
	
	
	
	
	
			
		
		
	
	
			55 lines
		
	
	
		
			2.6 KiB
		
	
	
	
		
			Plaintext
		
	
	
	
	
	
| spv.WorkgroupMemoryExplicitLayout.MultiBlock.comp
 | |
| // Module Version 10400
 | |
| // Generated by (magic number): 8000a
 | |
| // Id's are bound by 24
 | |
| 
 | |
|                               Capability Shader
 | |
|                               Capability CapabilityWorkgroupMemoryExplicitLayoutKHR
 | |
|                               Extension  "SPV_KHR_workgroup_memory_explicit_layout"
 | |
|                1:             ExtInstImport  "GLSL.std.450"
 | |
|                               MemoryModel Logical GLSL450
 | |
|                               EntryPoint GLCompute 4  "main" 9 16
 | |
|                               ExecutionMode 4 LocalSize 8 1 1
 | |
|                               Source GLSL 430
 | |
|                               SourceExtension  "GL_EXT_shared_memory_block"
 | |
|                               Name 4  "main"
 | |
|                               Name 7  "first"
 | |
|                               MemberName 7(first) 0  "a"
 | |
|                               Name 9  ""
 | |
|                               Name 14  "second"
 | |
|                               MemberName 14(second) 0  "b"
 | |
|                               Name 16  ""
 | |
|                               MemberDecorate 7(first) 0 Offset 0
 | |
|                               Decorate 7(first) Block
 | |
|                               MemberDecorate 14(second) 0 Offset 0
 | |
|                               Decorate 14(second) Block
 | |
|                               Decorate 23 BuiltIn WorkgroupSize
 | |
|                               Decorate 9 Aliased
 | |
|                               Decorate 16 Aliased
 | |
|                2:             TypeVoid
 | |
|                3:             TypeFunction 2
 | |
|                6:             TypeInt 32 1
 | |
|         7(first):             TypeStruct 6(int)
 | |
|                8:             TypePointer Workgroup 7(first)
 | |
|                9:      8(ptr) Variable Workgroup
 | |
|               10:      6(int) Constant 0
 | |
|               11:      6(int) Constant 2
 | |
|               12:             TypePointer Workgroup 6(int)
 | |
|       14(second):             TypeStruct 6(int)
 | |
|               15:             TypePointer Workgroup 14(second)
 | |
|               16:     15(ptr) Variable Workgroup
 | |
|               17:      6(int) Constant 3
 | |
|               19:             TypeInt 32 0
 | |
|               20:             TypeVector 19(int) 3
 | |
|               21:     19(int) Constant 8
 | |
|               22:     19(int) Constant 1
 | |
|               23:   20(ivec3) ConstantComposite 21 22 22
 | |
|          4(main):           2 Function None 3
 | |
|                5:             Label
 | |
|               13:     12(ptr) AccessChain 9 10
 | |
|                               Store 13 11
 | |
|               18:     12(ptr) AccessChain 16 10
 | |
|                               Store 18 17
 | |
|                               Return
 | |
|                               FunctionEnd
 |