2 // Module Version 10300
3 // Generated by (magic number): 80007
4 // Id's are bound by 40
7 Capability GroupNonUniform
8 1: ExtInstImport "GLSL.std.450"
9 MemoryModel Logical GLSL450
10 EntryPoint GLCompute 4 "main" 14 19 22 25
11 ExecutionMode 4 LocalSize 8 8 1
13 SourceExtension "GL_KHR_shader_subgroup_basic"
16 MemberName 8(Buffer) 0 "a"
18 Name 14 "gl_SubgroupSize"
19 Name 19 "gl_SubgroupInvocationID"
20 Name 22 "gl_NumSubgroups"
21 Name 25 "gl_SubgroupID"
22 Decorate 7 ArrayStride 4
23 MemberDecorate 8(Buffer) 0 Offset 0
24 Decorate 8(Buffer) BufferBlock
25 Decorate 10(data) DescriptorSet 0
26 Decorate 10(data) Binding 0
27 Decorate 14(gl_SubgroupSize) RelaxedPrecision
28 Decorate 14(gl_SubgroupSize) BuiltIn SubgroupSize
29 Decorate 15 RelaxedPrecision
30 Decorate 19(gl_SubgroupInvocationID) RelaxedPrecision
31 Decorate 19(gl_SubgroupInvocationID) BuiltIn SubgroupLocalInvocationId
32 Decorate 20 RelaxedPrecision
33 Decorate 22(gl_NumSubgroups) BuiltIn NumSubgroups
34 Decorate 25(gl_SubgroupID) BuiltIn SubgroupId
35 Decorate 39 BuiltIn WorkgroupSize
39 7: TypeRuntimeArray 6(int)
40 8(Buffer): TypeStruct 7
41 9: TypePointer Uniform 8(Buffer)
42 10(data): 9(ptr) Variable Uniform
45 13: TypePointer Input 12(int)
46 14(gl_SubgroupSize): 13(ptr) Variable Input
48 17: TypePointer Uniform 6(int)
49 19(gl_SubgroupInvocationID): 13(ptr) Variable Input
50 22(gl_NumSubgroups): 13(ptr) Variable Input
51 25(gl_SubgroupID): 13(ptr) Variable Input
53 28: 12(int) Constant 3
54 32: 12(int) Constant 3400
55 33: 12(int) Constant 72
56 34: 12(int) Constant 264
57 35: 12(int) Constant 2056
58 36: TypeVector 12(int) 3
59 37: 12(int) Constant 8
60 38: 12(int) Constant 1
61 39: 36(ivec3) ConstantComposite 37 37 38
62 4(main): 2 Function None 3
64 15: 12(int) Load 14(gl_SubgroupSize)
65 18: 17(ptr) AccessChain 10(data) 11 15
67 20: 12(int) Load 19(gl_SubgroupInvocationID)
68 21: 17(ptr) AccessChain 10(data) 11 20
70 23: 12(int) Load 22(gl_NumSubgroups)
71 24: 17(ptr) AccessChain 10(data) 11 23
73 26: 12(int) Load 25(gl_SubgroupID)
74 29: 27(bool) GroupNonUniformElect 28
75 30: 6(int) Select 29 16 11
76 31: 17(ptr) AccessChain 10(data) 11 26
78 ControlBarrier 28 28 32