These capabalities were added on declaration of the members, but that is considered too aggressive, as those members are automatically declared in some shaders that don't use them. Now, actual access is needed to make the capabalities be declared.
150 lines
7.6 KiB
Plaintext
Executable File
150 lines
7.6 KiB
Plaintext
Executable File
spv.150.geom
|
|
|
|
Linked geometry stage:
|
|
|
|
|
|
// Module Version 10000
|
|
// Generated by (magic number): 80001
|
|
// Id's are bound by 71
|
|
|
|
Capability Geometry
|
|
Capability GeometryPointSize
|
|
Capability GeometryStreams
|
|
1: ExtInstImport "GLSL.std.450"
|
|
MemoryModel Logical GLSL450
|
|
EntryPoint Geometry 4 "main" 10 18 29 33 47 49 51 70
|
|
ExecutionMode 4 InputTrianglesAdjacency
|
|
ExecutionMode 4 Invocations 1
|
|
ExecutionMode 4 OutputTriangleStrip
|
|
ExecutionMode 4 OutputVertices 30
|
|
Source GLSL 150
|
|
Name 4 "main"
|
|
Name 8 "fromVertex"
|
|
MemberName 8(fromVertex) 0 "color"
|
|
Name 10 ""
|
|
Name 13 "fromVertex"
|
|
MemberName 13(fromVertex) 0 "color"
|
|
Name 18 "fromV"
|
|
Name 27 "gl_PerVertex"
|
|
MemberName 27(gl_PerVertex) 0 "gl_Position"
|
|
MemberName 27(gl_PerVertex) 1 "gl_PointSize"
|
|
MemberName 27(gl_PerVertex) 2 "gl_ClipDistance"
|
|
Name 29 ""
|
|
Name 30 "gl_PerVertex"
|
|
MemberName 30(gl_PerVertex) 0 "gl_Position"
|
|
MemberName 30(gl_PerVertex) 1 "gl_PointSize"
|
|
MemberName 30(gl_PerVertex) 2 "gl_ClipDistance"
|
|
Name 33 "gl_in"
|
|
Name 47 "gl_PrimitiveID"
|
|
Name 49 "gl_PrimitiveIDIn"
|
|
Name 51 "gl_Layer"
|
|
Name 68 "toFragment"
|
|
MemberName 68(toFragment) 0 "color"
|
|
Name 70 "toF"
|
|
Decorate 8(fromVertex) Block
|
|
Decorate 8(fromVertex) Stream 3
|
|
Decorate 10 Stream 3
|
|
Decorate 13(fromVertex) Block
|
|
MemberDecorate 27(gl_PerVertex) 0 BuiltIn Position
|
|
MemberDecorate 27(gl_PerVertex) 1 BuiltIn PointSize
|
|
MemberDecorate 27(gl_PerVertex) 2 BuiltIn ClipDistance
|
|
Decorate 27(gl_PerVertex) Block
|
|
Decorate 27(gl_PerVertex) Stream 0
|
|
Decorate 29 Stream 0
|
|
MemberDecorate 30(gl_PerVertex) 0 BuiltIn Position
|
|
MemberDecorate 30(gl_PerVertex) 1 BuiltIn PointSize
|
|
MemberDecorate 30(gl_PerVertex) 2 BuiltIn ClipDistance
|
|
Decorate 30(gl_PerVertex) Block
|
|
Decorate 47(gl_PrimitiveID) Stream 0
|
|
Decorate 47(gl_PrimitiveID) BuiltIn PrimitiveId
|
|
Decorate 49(gl_PrimitiveIDIn) BuiltIn PrimitiveId
|
|
Decorate 51(gl_Layer) Stream 0
|
|
Decorate 51(gl_Layer) BuiltIn Layer
|
|
Decorate 68(toFragment) Block
|
|
Decorate 68(toFragment) Stream 3
|
|
Decorate 70(toF) Stream 3
|
|
2: TypeVoid
|
|
3: TypeFunction 2
|
|
6: TypeFloat 32
|
|
7: TypeVector 6(float) 3
|
|
8(fromVertex): TypeStruct 7(fvec3)
|
|
9: TypePointer Output 8(fromVertex)
|
|
10: 9(ptr) Variable Output
|
|
11: TypeInt 32 1
|
|
12: 11(int) Constant 0
|
|
13(fromVertex): TypeStruct 7(fvec3)
|
|
14: TypeInt 32 0
|
|
15: 14(int) Constant 6
|
|
16: TypeArray 13(fromVertex) 15
|
|
17: TypePointer Input 16
|
|
18(fromV): 17(ptr) Variable Input
|
|
19: TypePointer Input 7(fvec3)
|
|
22: TypePointer Output 7(fvec3)
|
|
24: TypeVector 6(float) 4
|
|
25: 14(int) Constant 1
|
|
26: TypeArray 6(float) 25
|
|
27(gl_PerVertex): TypeStruct 24(fvec4) 6(float) 26
|
|
28: TypePointer Output 27(gl_PerVertex)
|
|
29: 28(ptr) Variable Output
|
|
30(gl_PerVertex): TypeStruct 24(fvec4) 6(float) 26
|
|
31: TypeArray 30(gl_PerVertex) 15
|
|
32: TypePointer Input 31
|
|
33(gl_in): 32(ptr) Variable Input
|
|
34: TypePointer Input 24(fvec4)
|
|
37: TypePointer Output 24(fvec4)
|
|
39: 11(int) Constant 1
|
|
40: 11(int) Constant 3
|
|
41: TypePointer Input 6(float)
|
|
44: TypePointer Output 6(float)
|
|
46: TypePointer Output 11(int)
|
|
47(gl_PrimitiveID): 46(ptr) Variable Output
|
|
48: TypePointer Input 11(int)
|
|
49(gl_PrimitiveIDIn): 48(ptr) Variable Input
|
|
51(gl_Layer): 46(ptr) Variable Output
|
|
52: 11(int) Constant 2
|
|
53: 6(float) Constant 1073741824
|
|
68(toFragment): TypeStruct 7(fvec3)
|
|
69: TypePointer Output 68(toFragment)
|
|
70(toF): 69(ptr) Variable Output
|
|
4(main): 2 Function None 3
|
|
5: Label
|
|
20: 19(ptr) AccessChain 18(fromV) 12 12
|
|
21: 7(fvec3) Load 20
|
|
23: 22(ptr) AccessChain 10 12
|
|
Store 23 21
|
|
35: 34(ptr) AccessChain 33(gl_in) 12 12
|
|
36: 24(fvec4) Load 35
|
|
38: 37(ptr) AccessChain 29 12
|
|
Store 38 36
|
|
42: 41(ptr) AccessChain 33(gl_in) 40 39
|
|
43: 6(float) Load 42
|
|
45: 44(ptr) AccessChain 29 39
|
|
Store 45 43
|
|
50: 11(int) Load 49(gl_PrimitiveIDIn)
|
|
Store 47(gl_PrimitiveID) 50
|
|
Store 51(gl_Layer) 52
|
|
EmitVertex
|
|
54: 19(ptr) AccessChain 18(fromV) 12 12
|
|
55: 7(fvec3) Load 54
|
|
56: 7(fvec3) VectorTimesScalar 55 53
|
|
57: 22(ptr) AccessChain 10 12
|
|
Store 57 56
|
|
58: 34(ptr) AccessChain 33(gl_in) 12 12
|
|
59: 24(fvec4) Load 58
|
|
60: 24(fvec4) VectorTimesScalar 59 53
|
|
61: 37(ptr) AccessChain 29 12
|
|
Store 61 60
|
|
62: 41(ptr) AccessChain 33(gl_in) 40 39
|
|
63: 6(float) Load 62
|
|
64: 6(float) FMul 53 63
|
|
65: 44(ptr) AccessChain 29 39
|
|
Store 65 64
|
|
66: 11(int) Load 49(gl_PrimitiveIDIn)
|
|
67: 11(int) IAdd 66 39
|
|
Store 47(gl_PrimitiveID) 67
|
|
Store 51(gl_Layer) 40
|
|
EmitVertex
|
|
EndPrimitive
|
|
Return
|
|
FunctionEnd
|