glslang/Test/baseResults/spv.WorkgroupMemoryExplicitLayout.std140.comp.out
Steven Perron 33c7e30860
Don't emit duplicate decorations. (#3635)
It is invalid if the same decoration is applied to the same id multiple
times. This adds a check before adding a decoration that the decoration
is not already in the list. If it is, then the duplicate is not added.

Fixes #3627
2024-06-28 19:16:59 -04:00

84 lines
4.4 KiB
Plaintext

spv.WorkgroupMemoryExplicitLayout.std140.comp
// Module Version 10400
// Generated by (magic number): 8000b
// Id's are bound by 29
Capability Shader
Capability CapabilityWorkgroupMemoryExplicitLayoutKHR
Extension "SPV_KHR_workgroup_memory_explicit_layout"
1: ExtInstImport "GLSL.std.450"
MemoryModel Logical GLSL450
EntryPoint GLCompute 4 "main" 28
ExecutionMode 4 LocalSize 8 1 1
Source GLSL 430
SourceExtension "GL_EXT_shared_memory_block"
Name 4 "main"
Name 17 "T"
MemberName 17(T) 0 "t"
Name 24 "S"
MemberName 24(S) 0 "f"
MemberName 24(S) 1 "v2"
MemberName 24(S) 2 "v3"
MemberName 24(S) 3 "v4"
MemberName 24(S) 4 "t"
MemberName 24(S) 5 "f_array"
MemberName 24(S) 6 "v2_array"
MemberName 24(S) 7 "v3_array"
MemberName 24(S) 8 "v4_array"
MemberName 24(S) 9 "t_array"
Name 26 "Block"
MemberName 26(Block) 0 "s"
MemberName 26(Block) 1 "s_array"
Name 28 ""
Decorate 10 BuiltIn WorkgroupSize
Decorate 16 ArrayStride 16
MemberDecorate 17(T) 0 Offset 0
Decorate 19 ArrayStride 16
Decorate 20 ArrayStride 16
Decorate 21 ArrayStride 16
Decorate 22 ArrayStride 16
Decorate 23 ArrayStride 48
MemberDecorate 24(S) 0 Offset 0
MemberDecorate 24(S) 1 Offset 8
MemberDecorate 24(S) 2 Offset 16
MemberDecorate 24(S) 3 Offset 32
MemberDecorate 24(S) 4 Offset 48
MemberDecorate 24(S) 5 Offset 96
MemberDecorate 24(S) 6 Offset 192
MemberDecorate 24(S) 7 Offset 288
MemberDecorate 24(S) 8 Offset 384
MemberDecorate 24(S) 9 Offset 480
Decorate 25 ArrayStride 768
Decorate 26(Block) Block
MemberDecorate 26(Block) 0 Offset 0
MemberDecorate 26(Block) 1 Offset 768
2: TypeVoid
3: TypeFunction 2
6: TypeInt 32 0
7: TypeVector 6(int) 3
8: 6(int) Constant 8
9: 6(int) Constant 1
10: 7(ivec3) ConstantComposite 8 9 9
11: TypeFloat 32
12: TypeVector 11(float) 2
13: TypeVector 11(float) 3
14: TypeVector 11(float) 4
15: 6(int) Constant 3
16: TypeArray 11(float) 15
17(T): TypeStruct 16
18: 6(int) Constant 6
19: TypeArray 11(float) 18
20: TypeArray 12(fvec2) 18
21: TypeArray 13(fvec3) 18
22: TypeArray 14(fvec4) 18
23: TypeArray 17(T) 18
24(S): TypeStruct 11(float) 12(fvec2) 13(fvec3) 14(fvec4) 17(T) 19 20 21 22 23
25: TypeArray 24(S) 18
26(Block): TypeStruct 24(S) 25
27: TypePointer Workgroup 26(Block)
28: 27(ptr) Variable Workgroup
4(main): 2 Function None 3
5: Label
Return
FunctionEnd