glslang/Test/baseResults/spv.AofA.frag.out
John Kessenich c9a808319a SPV arrays: Add support for runtime-sized array types and arrays of arrays.
This includes run-time block.member.length() (OpArrayLength).
2015-09-13 10:18:19 -06:00

155 lines
7.1 KiB
Plaintext

spv.AofA.frag
Warning, version 430 is not yet complete; most version-specific features are present, but some are missing.
Linked fragment stage:
// Module Version 99
// Generated by (magic number): 51a00bb
// Id's are bound by 104
Source GLSL 430
Capability Shader
1: ExtInstImport "GLSL.std.450"
MemoryModel Logical GLSL450
EntryPoint Fragment 4 "main"
ExecutionMode 4 OriginLowerLeft
Name 4 "main"
Name 18 "foo(f1[5][7];"
Name 17 "a"
Name 21 "r"
Name 39 "outfloat"
Name 42 "g4"
Name 44 "g5"
Name 45 "param"
Name 48 "u"
Name 52 "param"
Name 66 "many"
Name 68 "i"
Name 70 "j"
Name 72 "k"
Name 78 "infloat"
Name 94 "uAofA"
MemberName 94(uAofA) 0 "f"
Name 98 "nameAofA"
Decorate 44(g5) Smooth
Decorate 78(infloat) Smooth
Decorate 94(uAofA) GLSLShared
Decorate 94(uAofA) Block
2: TypeVoid
3: TypeFunction 2
7: TypeFloat 32
8: TypeInt 32 0
9: 8(int) Constant 7
10: TypeArray 7(float) 9
11: 8(int) Constant 5
12: TypeArray 10 11
13: TypePointer Function 12
14: 8(int) Constant 4
15: TypeArray 10 14
16: TypeFunction 15 13(ptr)
20: TypePointer Function 10
22: TypeInt 32 1
23: 22(int) Constant 2
26: 22(int) Constant 0
29: 22(int) Constant 1
33: 22(int) Constant 3
38: TypePointer Output 7(float)
39(outfloat): 38(ptr) Variable Output
40: 7(float) Constant 0
41: TypePointer PrivateGlobal 15
42(g4): 41(ptr) Variable PrivateGlobal
43: TypePointer Input 12
44(g5): 43(ptr) Variable Input
49: 7(float) Constant 1077936128
50: TypePointer Function 7(float)
55: 8(int) Constant 6
56: TypeArray 7(float) 55
57: TypeArray 56 11
58: TypeArray 57 14
59: 8(int) Constant 3
60: TypeArray 58 59
61: 8(int) Constant 2
62: TypeArray 60 61
63: 8(int) Constant 1
64: TypeArray 62 63
65: TypePointer PrivateGlobal 64
66(many): 65(ptr) Variable PrivateGlobal
67: TypePointer UniformConstant 22(int)
68(i): 67(ptr) Variable UniformConstant
70(j): 67(ptr) Variable UniformConstant
72(k): 67(ptr) Variable UniformConstant
77: TypePointer Input 7(float)
78(infloat): 77(ptr) Variable Input
80: TypePointer PrivateGlobal 7(float)
92: TypeArray 7(float) 14
93: TypeArray 92 61
94(uAofA): TypeStruct 93
95: TypeArray 94(uAofA) 11
96: TypeArray 95 59
97: TypePointer Uniform 96
98(nameAofA): 97(ptr) Variable Uniform
99: TypePointer Uniform 7(float)
4(main): 2 Function None 3
5: Label
45(param): 13(ptr) Variable Function
48(u): 13(ptr) Variable Function
52(param): 13(ptr) Variable Function
Store 39(outfloat) 40
46: 12 Load 44(g5)
Store 45(param) 46
47: 15 FunctionCall 18(foo(f1[5][7];) 45(param)
Store 42(g4) 47
51: 50(ptr) AccessChain 48(u) 23 23
Store 51 49
53: 12 Load 48(u)
Store 52(param) 53
54: 15 FunctionCall 18(foo(f1[5][7];) 52(param)
69: 22(int) Load 68(i)
71: 22(int) Load 70(j)
73: 22(int) Load 72(k)
74: 22(int) Load 68(i)
75: 22(int) Load 70(j)
76: 22(int) Load 72(k)
79: 7(float) Load 78(infloat)
81: 80(ptr) AccessChain 66(many) 69 71 73 74 75 76
Store 81 79
82: 22(int) Load 70(j)
83: 22(int) Load 70(j)
84: 22(int) Load 70(j)
85: 22(int) Load 70(j)
86: 22(int) Load 70(j)
87: 22(int) Load 70(j)
88: 80(ptr) AccessChain 66(many) 82 83 84 85 86 87
89: 7(float) Load 88
90: 7(float) Load 39(outfloat)
91: 7(float) FAdd 90 89
Store 39(outfloat) 91
100: 99(ptr) AccessChain 98(nameAofA) 29 23 26 26 33
101: 7(float) Load 100
102: 7(float) Load 39(outfloat)
103: 7(float) FAdd 102 101
Store 39(outfloat) 103
Branch 6
6: Label
Return
FunctionEnd
18(foo(f1[5][7];): 15 Function None 16
17(a): 13(ptr) FunctionParameter
19: Label
21(r): 20(ptr) Variable Function
24: 20(ptr) AccessChain 17(a) 23
25: 10 Load 24
Store 21(r) 25
27: 20(ptr) AccessChain 17(a) 26
28: 10 Load 27
30: 20(ptr) AccessChain 17(a) 29
31: 10 Load 30
32: 10 Load 21(r)
34: 20(ptr) AccessChain 17(a) 33
35: 10 Load 34
36: 15 CompositeConstruct 28 31 32 35
ReturnValue 36
FunctionEnd