mirror of
https://github.com/KhronosGroup/glslang
synced 2024-11-13 21:50: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
75 lines
3.6 KiB
Plaintext
75 lines
3.6 KiB
Plaintext
spv.300BuiltIns.vert
|
|
// Module Version 10000
|
|
// Generated by (magic number): 8000b
|
|
// Id's are bound by 42
|
|
|
|
Capability Shader
|
|
1: ExtInstImport "GLSL.std.450"
|
|
MemoryModel Logical GLSL450
|
|
EntryPoint Vertex 4 "main" 10 14 21 34
|
|
Source ESSL 310
|
|
Name 4 "main"
|
|
Name 8 "gl_PerVertex"
|
|
MemberName 8(gl_PerVertex) 0 "gl_Position"
|
|
MemberName 8(gl_PerVertex) 1 "gl_PointSize"
|
|
Name 10 ""
|
|
Name 14 "ps"
|
|
Name 21 "gl_VertexIndex"
|
|
Name 34 "gl_InstanceIndex"
|
|
Decorate 8(gl_PerVertex) Block
|
|
MemberDecorate 8(gl_PerVertex) 0 BuiltIn Position
|
|
MemberDecorate 8(gl_PerVertex) 0 Invariant
|
|
MemberDecorate 8(gl_PerVertex) 1 BuiltIn PointSize
|
|
Decorate 14(ps) RelaxedPrecision
|
|
Decorate 14(ps) Location 0
|
|
Decorate 15 RelaxedPrecision
|
|
Decorate 21(gl_VertexIndex) BuiltIn VertexIndex
|
|
Decorate 30 RelaxedPrecision
|
|
Decorate 34(gl_InstanceIndex) BuiltIn InstanceIndex
|
|
2: TypeVoid
|
|
3: TypeFunction 2
|
|
6: TypeFloat 32
|
|
7: TypeVector 6(float) 4
|
|
8(gl_PerVertex): TypeStruct 7(fvec4) 6(float)
|
|
9: TypePointer Output 8(gl_PerVertex)
|
|
10: 9(ptr) Variable Output
|
|
11: TypeInt 32 1
|
|
12: 11(int) Constant 0
|
|
13: TypePointer Input 6(float)
|
|
14(ps): 13(ptr) Variable Input
|
|
17: TypePointer Output 7(fvec4)
|
|
19: 11(int) Constant 4
|
|
20: TypePointer Input 11(int)
|
|
21(gl_VertexIndex): 20(ptr) Variable Input
|
|
29: 11(int) Constant 1
|
|
31: TypePointer Output 6(float)
|
|
33: 11(int) Constant 5
|
|
34(gl_InstanceIndex): 20(ptr) Variable Input
|
|
4(main): 2 Function None 3
|
|
5: Label
|
|
15: 6(float) Load 14(ps)
|
|
16: 7(fvec4) CompositeConstruct 15 15 15 15
|
|
18: 17(ptr) AccessChain 10 12
|
|
Store 18 16
|
|
22: 11(int) Load 21(gl_VertexIndex)
|
|
23: 11(int) ISub 19 22
|
|
24: 6(float) ConvertSToF 23
|
|
25: 17(ptr) AccessChain 10 12
|
|
26: 7(fvec4) Load 25
|
|
27: 7(fvec4) VectorTimesScalar 26 24
|
|
28: 17(ptr) AccessChain 10 12
|
|
Store 28 27
|
|
30: 6(float) Load 14(ps)
|
|
32: 31(ptr) AccessChain 10 29
|
|
Store 32 30
|
|
35: 11(int) Load 34(gl_InstanceIndex)
|
|
36: 11(int) ISub 33 35
|
|
37: 6(float) ConvertSToF 36
|
|
38: 31(ptr) AccessChain 10 29
|
|
39: 6(float) Load 38
|
|
40: 6(float) FMul 39 37
|
|
41: 31(ptr) AccessChain 10 29
|
|
Store 41 40
|
|
Return
|
|
FunctionEnd
|