Before, it was only including explicit interface, sufficient for IO-Block-declared oriented interface, but not sufficient for all modes GLSL might be used with SPIR-V. Two things are accomplished now: 1) each id will appear exactly once 2) the OpEntryPoint list will union static use with declarations
199 lines
9.6 KiB
Plaintext
Executable File
199 lines
9.6 KiB
Plaintext
Executable File
spv.300layoutp.vert
|
|
|
|
Linked vertex stage:
|
|
|
|
|
|
// Module Version 10000
|
|
// Generated by (magic number): 80001
|
|
// Id's are bound by 117
|
|
|
|
Capability Shader
|
|
1: ExtInstImport "GLSL.std.450"
|
|
MemoryModel Logical GLSL450
|
|
EntryPoint Vertex 4 "main" 81 9 73 51 115 11 61 53 116
|
|
Source ESSL 300
|
|
Name 4 "main"
|
|
Name 9 "pos"
|
|
Name 11 "p"
|
|
Name 17 "Transform"
|
|
MemberName 17(Transform) 0 "M1"
|
|
MemberName 17(Transform) 1 "M2"
|
|
MemberName 17(Transform) 2 "N1"
|
|
MemberName 17(Transform) 3 "iuin"
|
|
Name 19 "tblock"
|
|
Name 33 "T3"
|
|
MemberName 33(T3) 0 "M3"
|
|
MemberName 33(T3) 1 "M4"
|
|
MemberName 33(T3) 2 "N2"
|
|
MemberName 33(T3) 3 "uv3a"
|
|
Name 35 ""
|
|
Name 43 "T2"
|
|
MemberName 43(T2) 0 "b"
|
|
MemberName 43(T2) 1 "t2m"
|
|
Name 45 ""
|
|
Name 51 "color"
|
|
Name 53 "c"
|
|
Name 61 "iout"
|
|
Name 67 "uiuin"
|
|
Name 73 "aiv2"
|
|
Name 79 "S"
|
|
MemberName 79(S) 0 "c"
|
|
MemberName 79(S) 1 "f"
|
|
Name 81 "s"
|
|
Name 115 "gl_VertexID"
|
|
Name 116 "gl_InstanceID"
|
|
Decorate 11(p) Location 3
|
|
MemberDecorate 17(Transform) 0 RowMajor
|
|
MemberDecorate 17(Transform) 0 Offset 0
|
|
MemberDecorate 17(Transform) 0 MatrixStride 16
|
|
MemberDecorate 17(Transform) 1 ColMajor
|
|
MemberDecorate 17(Transform) 1 Offset 64
|
|
MemberDecorate 17(Transform) 1 MatrixStride 16
|
|
MemberDecorate 17(Transform) 2 RowMajor
|
|
MemberDecorate 17(Transform) 2 Offset 128
|
|
MemberDecorate 17(Transform) 2 MatrixStride 16
|
|
MemberDecorate 17(Transform) 3 Offset 176
|
|
Decorate 17(Transform) Block
|
|
MemberDecorate 33(T3) 0 ColMajor
|
|
MemberDecorate 33(T3) 1 RowMajor
|
|
MemberDecorate 33(T3) 2 ColMajor
|
|
Decorate 33(T3) GLSLShared
|
|
Decorate 33(T3) Block
|
|
MemberDecorate 43(T2) 1 RowMajor
|
|
Decorate 43(T2) GLSLShared
|
|
Decorate 43(T2) Block
|
|
Decorate 53(c) Location 7
|
|
Decorate 61(iout) Flat
|
|
Decorate 73(aiv2) Location 9
|
|
Decorate 115(gl_VertexID) BuiltIn VertexId
|
|
Decorate 116(gl_InstanceID) BuiltIn InstanceId
|
|
2: TypeVoid
|
|
3: TypeFunction 2
|
|
6: TypeFloat 32
|
|
7: TypeVector 6(float) 4
|
|
8: TypePointer Output 7(fvec4)
|
|
9(pos): 8(ptr) Variable Output
|
|
10: TypePointer Input 7(fvec4)
|
|
11(p): 10(ptr) Variable Input
|
|
13: TypeMatrix 7(fvec4) 4
|
|
14: TypeVector 6(float) 3
|
|
15: TypeMatrix 14(fvec3) 3
|
|
16: TypeInt 32 1
|
|
17(Transform): TypeStruct 13 13 15 16(int)
|
|
18: TypePointer Uniform 17(Transform)
|
|
19(tblock): 18(ptr) Variable Uniform
|
|
20: 16(int) Constant 0
|
|
21: TypePointer Uniform 13
|
|
24: 16(int) Constant 1
|
|
28: TypeMatrix 14(fvec3) 2
|
|
29: TypeInt 32 0
|
|
30: TypeVector 29(int) 3
|
|
31: 29(int) Constant 4
|
|
32: TypeArray 30(ivec3) 31
|
|
33(T3): TypeStruct 13 13 28 32
|
|
34: TypePointer Uniform 33(T3)
|
|
35: 34(ptr) Variable Uniform
|
|
42: TypeBool
|
|
43(T2): TypeStruct 42(bool) 13
|
|
44: TypePointer Uniform 43(T2)
|
|
45: 44(ptr) Variable Uniform
|
|
50: TypePointer Output 14(fvec3)
|
|
51(color): 50(ptr) Variable Output
|
|
52: TypePointer Input 14(fvec3)
|
|
53(c): 52(ptr) Variable Input
|
|
55: 16(int) Constant 2
|
|
56: TypePointer Uniform 15
|
|
60: TypePointer Output 16(int)
|
|
61(iout): 60(ptr) Variable Output
|
|
62: 16(int) Constant 3
|
|
63: TypePointer Uniform 16(int)
|
|
66: TypePointer UniformConstant 29(int)
|
|
67(uiuin): 66(ptr) Variable UniformConstant
|
|
71: TypeVector 16(int) 2
|
|
72: TypePointer Input 71(ivec2)
|
|
73(aiv2): 72(ptr) Variable Input
|
|
74: 29(int) Constant 1
|
|
75: TypePointer Input 16(int)
|
|
79(S): TypeStruct 14(fvec3) 6(float)
|
|
80: TypePointer Output 79(S)
|
|
81(s): 80(ptr) Variable Output
|
|
84: 29(int) Constant 0
|
|
85: TypePointer Input 6(float)
|
|
88: TypePointer Output 6(float)
|
|
90: TypePointer Uniform 14(fvec3)
|
|
93: 6(float) Constant 1065353216
|
|
94: 14(fvec3) ConstantComposite 93 93 93
|
|
95: TypeVector 42(bool) 3
|
|
101: TypePointer Uniform 30(ivec3)
|
|
104: 29(int) Constant 5
|
|
105: 30(ivec3) ConstantComposite 104 104 104
|
|
115(gl_VertexID): 75(ptr) Variable Input
|
|
116(gl_InstanceID): 75(ptr) Variable Input
|
|
4(main): 2 Function None 3
|
|
5: Label
|
|
12: 7(fvec4) Load 11(p)
|
|
22: 21(ptr) AccessChain 19(tblock) 20
|
|
23: 13 Load 22
|
|
25: 21(ptr) AccessChain 19(tblock) 24
|
|
26: 13 Load 25
|
|
27: 13 MatrixTimesMatrix 23 26
|
|
36: 21(ptr) AccessChain 35 24
|
|
37: 13 Load 36
|
|
38: 13 MatrixTimesMatrix 27 37
|
|
39: 21(ptr) AccessChain 35 20
|
|
40: 13 Load 39
|
|
41: 13 MatrixTimesMatrix 38 40
|
|
46: 21(ptr) AccessChain 45 24
|
|
47: 13 Load 46
|
|
48: 13 MatrixTimesMatrix 41 47
|
|
49: 7(fvec4) VectorTimesMatrix 12 48
|
|
Store 9(pos) 49
|
|
54: 14(fvec3) Load 53(c)
|
|
57: 56(ptr) AccessChain 19(tblock) 55
|
|
58: 15 Load 57
|
|
59: 14(fvec3) VectorTimesMatrix 54 58
|
|
Store 51(color) 59
|
|
64: 63(ptr) AccessChain 19(tblock) 62
|
|
65: 16(int) Load 64
|
|
68: 29(int) Load 67(uiuin)
|
|
69: 16(int) Bitcast 68
|
|
70: 16(int) IAdd 65 69
|
|
76: 75(ptr) AccessChain 73(aiv2) 74
|
|
77: 16(int) Load 76
|
|
78: 16(int) IAdd 70 77
|
|
Store 61(iout) 78
|
|
82: 14(fvec3) Load 53(c)
|
|
83: 50(ptr) AccessChain 81(s) 20
|
|
Store 83 82
|
|
86: 85(ptr) AccessChain 11(p) 84
|
|
87: 6(float) Load 86
|
|
89: 88(ptr) AccessChain 81(s) 24
|
|
Store 89 87
|
|
91: 90(ptr) AccessChain 35 55 24
|
|
92: 14(fvec3) Load 91
|
|
96: 95(bvec3) FOrdNotEqual 92 94
|
|
97: 42(bool) Any 96
|
|
98: 42(bool) LogicalNot 97
|
|
SelectionMerge 100 None
|
|
BranchConditional 98 99 100
|
|
99: Label
|
|
102: 101(ptr) AccessChain 35 62 55
|
|
103: 30(ivec3) Load 102
|
|
106: 95(bvec3) INotEqual 103 105
|
|
107: 42(bool) Any 106
|
|
Branch 100
|
|
100: Label
|
|
108: 42(bool) Phi 97 5 107 99
|
|
SelectionMerge 110 None
|
|
BranchConditional 108 109 110
|
|
109: Label
|
|
111: 50(ptr) AccessChain 81(s) 20
|
|
112: 14(fvec3) Load 111
|
|
113: 14(fvec3) CompositeConstruct 93 93 93
|
|
114: 14(fvec3) FAdd 112 113
|
|
Store 111 114
|
|
Branch 110
|
|
110: Label
|
|
Return
|
|
FunctionEnd
|