glslang/Test/baseResults/spv.430.vert.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

144 lines
7.2 KiB
Plaintext

spv.430.vert
Validation failed
// Module Version 10000
// Generated by (magic number): 8000b
// Id's are bound by 66
Capability Shader
Capability ClipDistance
1: ExtInstImport "GLSL.std.450"
MemoryModel Logical GLSL450
EntryPoint Vertex 4 "main" 12 23 34 38 41 42 62 65
Source GLSL 450
Name 4 "main"
Name 10 "gl_PerVertex"
MemberName 10(gl_PerVertex) 0 "gl_ClipDistance"
Name 12 ""
Name 23 "bad"
Name 34 "badorder3"
Name 38 "f"
Name 41 "badorder"
Name 42 "badorder2"
Name 43 "boundblock"
MemberName 43(boundblock) 0 "aoeu"
Name 45 "boundInst"
Name 46 "anonblock"
MemberName 46(anonblock) 0 "aoeu"
Name 48 ""
Name 52 "sampb1"
Name 55 "sampb2"
Name 56 "sampb4"
Name 59 "S"
MemberName 59(S) 0 "a"
MemberName 59(S) 1 "b"
MemberName 59(S) 2 "c"
Name 60 "SS"
MemberName 60(SS) 0 "b"
MemberName 60(SS) 1 "s"
MemberName 60(SS) 2 "c"
Name 62 "var"
Name 63 "MS"
MemberName 63(MS) 0 "f"
Name 65 "outMS"
Decorate 10(gl_PerVertex) Block
MemberDecorate 10(gl_PerVertex) 0 BuiltIn ClipDistance
Decorate 23(bad) Location 0
Decorate 34(badorder3) Flat
Decorate 34(badorder3) Location 1
Decorate 38(f) Location 11
Decorate 41(badorder) Location 10
Decorate 42(badorder2) Invariant
Decorate 42(badorder2) Location 0
Decorate 43(boundblock) Block
MemberDecorate 43(boundblock) 0 Offset 0
Decorate 45(boundInst) Binding 3
Decorate 45(boundInst) DescriptorSet 0
Decorate 46(anonblock) Block
MemberDecorate 46(anonblock) 0 Offset 0
Decorate 48 Binding 7
Decorate 48 DescriptorSet 0
Decorate 52(sampb1) Binding 4
Decorate 52(sampb1) DescriptorSet 0
Decorate 55(sampb2) Binding 5
Decorate 55(sampb2) DescriptorSet 0
Decorate 56(sampb4) Binding 31
Decorate 56(sampb4) DescriptorSet 0
MemberDecorate 59(S) 0 RelaxedPrecision
Decorate 62(var) Flat
Decorate 62(var) Location 0
Decorate 63(MS) Block
MemberDecorate 63(MS) 0 Location 17
Decorate 65(outMS) Location 2
2: TypeVoid
3: TypeFunction 2
6: TypeFloat 32
7: TypeInt 32 0
8: 7(int) Constant 3
9: TypeArray 6(float) 8
10(gl_PerVertex): TypeStruct 9
11: TypePointer Output 10(gl_PerVertex)
12: 11(ptr) Variable Output
13: TypeInt 32 1
14: 13(int) Constant 0
15: 13(int) Constant 2
16: 6(float) Constant 1080872141
17: TypePointer Output 6(float)
19: TypeVector 6(float) 4
20: 7(int) Constant 10
21: TypeArray 19(fvec4) 20
22: TypePointer Input 21
23(bad): 22(ptr) Variable Input
24: 7(int) Constant 0
25: TypePointer Input 6(float)
28: 6(float) Constant 1082549862
29: TypeBool
33: TypePointer Output 19(fvec4)
34(badorder3): 33(ptr) Variable Output
35: TypePointer Input 19(fvec4)
38(f): 25(ptr) Variable Input
41(badorder): 35(ptr) Variable Input
42(badorder2): 33(ptr) Variable Output
43(boundblock): TypeStruct 13(int)
44: TypePointer Uniform 43(boundblock)
45(boundInst): 44(ptr) Variable Uniform
46(anonblock): TypeStruct 13(int)
47: TypePointer Uniform 46(anonblock)
48: 47(ptr) Variable Uniform
49: TypeImage 6(float) 2D sampled format:Unknown
50: TypeSampledImage 49
51: TypePointer UniformConstant 50
52(sampb1): 51(ptr) Variable UniformConstant
53: TypeArray 50 20
54: TypePointer UniformConstant 53
55(sampb2): 54(ptr) Variable UniformConstant
56(sampb4): 51(ptr) Variable UniformConstant
57: TypeVector 7(int) 2
58: TypeVector 6(float) 3
59(S): TypeStruct 6(float) 57(ivec2) 58(fvec3)
60(SS): TypeStruct 19(fvec4) 59(S) 19(fvec4)
61: TypePointer Output 60(SS)
62(var): 61(ptr) Variable Output
63(MS): TypeStruct 6(float)
64: TypePointer Output 63(MS)
65(outMS): 64(ptr) Variable Output
4(main): 2 Function None 3
5: Label
18: 17(ptr) AccessChain 12 14 15
Store 18 16
26: 25(ptr) AccessChain 23(bad) 14 24
27: 6(float) Load 26
30: 29(bool) FOrdEqual 27 28
SelectionMerge 32 None
BranchConditional 30 31 32
31: Label
36: 35(ptr) AccessChain 23(bad) 14
37: 19(fvec4) Load 36
Store 34(badorder3) 37
Branch 32
32: Label
39: 6(float) Load 38(f)
40: 17(ptr) AccessChain 12 14 14
Store 40 39
Return
FunctionEnd