mirror of
https://github.com/KhronosGroup/glslang
synced 2024-11-08 11:30:06 +00:00
33c7e30860
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
56 lines
2.7 KiB
Plaintext
56 lines
2.7 KiB
Plaintext
spv.xfb.vert
|
|
// Module Version 10000
|
|
// Generated by (magic number): 8000b
|
|
// Id's are bound by 16
|
|
|
|
Capability Shader
|
|
Capability TransformFeedback
|
|
1: ExtInstImport "GLSL.std.450"
|
|
MemoryModel Logical GLSL450
|
|
EntryPoint Vertex 4 "main" 8 11 14 15
|
|
ExecutionMode 4 Xfb
|
|
Source GLSL 450
|
|
Name 4 "main"
|
|
Name 8 "out1"
|
|
Name 9 "outXfb"
|
|
MemberName 9(outXfb) 0 "out2"
|
|
Name 11 ""
|
|
Name 12 "outXfb2"
|
|
MemberName 12(outXfb2) 0 "out3"
|
|
Name 14 ""
|
|
Name 15 "out4"
|
|
Decorate 8(out1) Location 0
|
|
Decorate 8(out1) Offset 12
|
|
Decorate 8(out1) XfbBuffer 3
|
|
Decorate 8(out1) XfbStride 48
|
|
Decorate 9(outXfb) Block
|
|
MemberDecorate 9(outXfb) 0 Offset 8
|
|
Decorate 11 Location 1
|
|
Decorate 11 XfbBuffer 2
|
|
Decorate 11 XfbStride 32
|
|
Decorate 12(outXfb2) Block
|
|
MemberDecorate 12(outXfb2) 0 Offset 60
|
|
Decorate 14 Location 3
|
|
Decorate 14 XfbBuffer 1
|
|
Decorate 14 XfbStride 64
|
|
Decorate 15(out4) Location 4
|
|
Decorate 15(out4) Offset 4
|
|
Decorate 15(out4) XfbBuffer 0
|
|
Decorate 15(out4) XfbStride 8
|
|
2: TypeVoid
|
|
3: TypeFunction 2
|
|
6: TypeFloat 32
|
|
7: TypePointer Output 6(float)
|
|
8(out1): 7(ptr) Variable Output
|
|
9(outXfb): TypeStruct 6(float)
|
|
10: TypePointer Output 9(outXfb)
|
|
11: 10(ptr) Variable Output
|
|
12(outXfb2): TypeStruct 6(float)
|
|
13: TypePointer Output 12(outXfb2)
|
|
14: 13(ptr) Variable Output
|
|
15(out4): 7(ptr) Variable Output
|
|
4(main): 2 Function None 3
|
|
5: Label
|
|
Return
|
|
FunctionEnd
|