glslang/Test/baseResults/spv.nonuniform5.frag.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

57 lines
2.8 KiB
Plaintext

spv.nonuniform5.frag
// Module Version 10000
// Generated by (magic number): 8000b
// Id's are bound by 23
Capability Shader
Capability ShaderNonUniformEXT
Capability RuntimeDescriptorArrayEXT
Capability UniformBufferArrayNonUniformIndexingEXT
Extension "SPV_EXT_descriptor_indexing"
1: ExtInstImport "GLSL.std.450"
MemoryModel Logical GLSL450
EntryPoint Fragment 4 "main" 9 16
ExecutionMode 4 OriginUpperLeft
Source GLSL 450
SourceExtension "GL_EXT_nonuniform_qualifier"
Name 4 "main"
Name 9 "FragColor"
Name 10 "UBO"
MemberName 10(UBO) 0 "v"
Name 13 "ubos"
Name 16 "Index"
Decorate 9(FragColor) Location 0
Decorate 10(UBO) Block
MemberDecorate 10(UBO) 0 Offset 0
Decorate 13(ubos) Binding 0
Decorate 13(ubos) DescriptorSet 0
Decorate 16(Index) Flat
Decorate 16(Index) Location 0
Decorate 18 DecorationNonUniformEXT
Decorate 21 DecorationNonUniformEXT
Decorate 22 DecorationNonUniformEXT
2: TypeVoid
3: TypeFunction 2
6: TypeFloat 32
7: TypeVector 6(float) 4
8: TypePointer Output 7(fvec4)
9(FragColor): 8(ptr) Variable Output
10(UBO): TypeStruct 7(fvec4)
11: TypeRuntimeArray 10(UBO)
12: TypePointer Uniform 11
13(ubos): 12(ptr) Variable Uniform
14: TypeInt 32 1
15: TypePointer Input 14(int)
16(Index): 15(ptr) Variable Input
19: 14(int) Constant 0
20: TypePointer Uniform 7(fvec4)
4(main): 2 Function None 3
5: Label
17: 14(int) Load 16(Index)
18: 14(int) CopyObject 17
21: 20(ptr) AccessChain 13(ubos) 18 19
22: 7(fvec4) Load 21
Store 9(FragColor) 22
Return
FunctionEnd