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
72 lines
3.2 KiB
Plaintext
Executable File
72 lines
3.2 KiB
Plaintext
Executable File
spv.300layout.frag
|
|
|
|
Linked fragment stage:
|
|
|
|
|
|
// Module Version 10000
|
|
// Generated by (magic number): 80001
|
|
// Id's are bound by 37
|
|
|
|
Capability Shader
|
|
1: ExtInstImport "GLSL.std.450"
|
|
MemoryModel Logical GLSL450
|
|
EntryPoint Fragment 4 "main" 9 11 15 26 29
|
|
ExecutionMode 4 OriginLowerLeft
|
|
Source ESSL 300
|
|
Name 4 "main"
|
|
Name 9 "c"
|
|
Name 11 "color"
|
|
Name 13 "S"
|
|
MemberName 13(S) 0 "c"
|
|
MemberName 13(S) 1 "f"
|
|
Name 15 "s"
|
|
Name 26 "p"
|
|
Name 29 "pos"
|
|
Decorate 9(c) RelaxedPrecision
|
|
Decorate 9(c) Location 7
|
|
Decorate 11(color) RelaxedPrecision
|
|
MemberDecorate 13(S) 0 RelaxedPrecision
|
|
MemberDecorate 13(S) 1 RelaxedPrecision
|
|
Decorate 26(p) RelaxedPrecision
|
|
Decorate 26(p) Location 3
|
|
Decorate 29(pos) RelaxedPrecision
|
|
2: TypeVoid
|
|
3: TypeFunction 2
|
|
6: TypeFloat 32
|
|
7: TypeVector 6(float) 3
|
|
8: TypePointer Output 7(fvec3)
|
|
9(c): 8(ptr) Variable Output
|
|
10: TypePointer Input 7(fvec3)
|
|
11(color): 10(ptr) Variable Input
|
|
13(S): TypeStruct 7(fvec3) 6(float)
|
|
14: TypePointer Input 13(S)
|
|
15(s): 14(ptr) Variable Input
|
|
16: TypeInt 32 1
|
|
17: 16(int) Constant 0
|
|
21: TypeVector 6(float) 4
|
|
22: TypeInt 32 0
|
|
23: 22(int) Constant 2
|
|
24: TypeArray 21(fvec4) 23
|
|
25: TypePointer Output 24
|
|
26(p): 25(ptr) Variable Output
|
|
27: 16(int) Constant 1
|
|
28: TypePointer Input 21(fvec4)
|
|
29(pos): 28(ptr) Variable Input
|
|
31: TypePointer Input 6(float)
|
|
35: TypePointer Output 21(fvec4)
|
|
4(main): 2 Function None 3
|
|
5: Label
|
|
12: 7(fvec3) Load 11(color)
|
|
18: 10(ptr) AccessChain 15(s) 17
|
|
19: 7(fvec3) Load 18
|
|
20: 7(fvec3) FAdd 12 19
|
|
Store 9(c) 20
|
|
30: 21(fvec4) Load 29(pos)
|
|
32: 31(ptr) AccessChain 15(s) 27
|
|
33: 6(float) Load 32
|
|
34: 21(fvec4) VectorTimesScalar 30 33
|
|
36: 35(ptr) AccessChain 26(p) 27
|
|
Store 36 34
|
|
Return
|
|
FunctionEnd
|