glslang/Test/baseResults/spv.aggOps.frag.out
John Kessenich 32c169dbdf Front-end: Warn for likely missed change in default precisions.
This is part of the change to have desktop shaders respect precision
qualifiers on Vulkan, but since the defaults are all highp, and that's
different from ES fragment shaders, detect likely cases and warn about
them (but being careful to not be too noisy if it's unlikely to be a
problem).
2016-08-23 18:13:08 -06:00

318 lines
15 KiB
Plaintext

spv.aggOps.frag
Warning, version 450 is not yet complete; most version-specific features are present, but some are missing.
WARNING: 0:4: '' : all default precisions are highp; use precision statements to quiet warning, e.g.:
"precision mediump int; precision highp float;"
Linked fragment stage:
// Module Version 10000
// Generated by (magic number): 80001
// Id's are bound by 215
Capability Shader
1: ExtInstImport "GLSL.std.450"
MemoryModel Logical GLSL450
EntryPoint Fragment 4 "main" 16 41 101 213
ExecutionMode 4 OriginUpperLeft
Source GLSL 450
Name 4 "main"
Name 8 "s1"
MemberName 8(s1) 0 "i"
MemberName 8(s1) 1 "f"
Name 13 "a"
Name 16 "u"
Name 37 "b"
Name 41 "w"
Name 55 "s1"
MemberName 55(s1) 0 "i"
MemberName 55(s1) 1 "f"
Name 56 "s2"
MemberName 56(s2) 0 "i"
MemberName 56(s2) 1 "f"
MemberName 56(s2) 2 "s1_1"
Name 57 "ub1"
MemberName 57(ub1) 0 "foo2a"
Name 59 "uName1"
Name 64 "s1"
MemberName 64(s1) 0 "i"
MemberName 64(s1) 1 "f"
Name 65 "s2"
MemberName 65(s2) 0 "i"
MemberName 65(s2) 1 "f"
MemberName 65(s2) 2 "s1_1"
Name 66 "ub2"
MemberName 66(ub2) 0 "foo2b"
Name 68 "uName2"
Name 93 "v"
Name 97 "samp2D"
Name 101 "coord"
Name 213 "color"
MemberDecorate 55(s1) 0 Offset 0
MemberDecorate 55(s1) 1 Offset 4
MemberDecorate 56(s2) 0 Offset 0
MemberDecorate 56(s2) 1 Offset 4
MemberDecorate 56(s2) 2 Offset 16
MemberDecorate 57(ub1) 0 Offset 0
Decorate 57(ub1) Block
Decorate 59(uName1) DescriptorSet 0
MemberDecorate 64(s1) 0 Offset 0
MemberDecorate 64(s1) 1 Offset 4
MemberDecorate 65(s2) 0 Offset 0
MemberDecorate 65(s2) 1 Offset 4
MemberDecorate 65(s2) 2 Offset 8
MemberDecorate 66(ub2) 0 Offset 0
Decorate 66(ub2) BufferBlock
Decorate 68(uName2) DescriptorSet 0
Decorate 97(samp2D) DescriptorSet 0
Decorate 101(coord) RelaxedPrecision
Decorate 102 RelaxedPrecision
Decorate 107 RelaxedPrecision
Decorate 108 RelaxedPrecision
Decorate 129 RelaxedPrecision
2: TypeVoid
3: TypeFunction 2
6: TypeInt 32 1
7: TypeFloat 32
8(s1): TypeStruct 6(int) 7(float)
9: TypeInt 32 0
10: 9(int) Constant 3
11: TypeArray 8(s1) 10
12: TypePointer Function 11
14: TypeVector 7(float) 4
15: TypePointer Input 14(fvec4)
16(u): 15(ptr) Variable Input
17: 9(int) Constant 0
18: TypePointer Input 7(float)
22: 9(int) Constant 1
26: 9(int) Constant 2
33: 6(int) Constant 14
34: 7(float) Constant 1096810496
35: 8(s1) ConstantComposite 33 34
38: 6(int) Constant 17
39: 7(float) Constant 1099431936
40: 8(s1) ConstantComposite 38 39
41(w): 15(ptr) Variable Input
55(s1): TypeStruct 6(int) 7(float)
56(s2): TypeStruct 6(int) 7(float) 55(s1)
57(ub1): TypeStruct 56(s2)
58: TypePointer Uniform 57(ub1)
59(uName1): 58(ptr) Variable Uniform
60: 6(int) Constant 0
61: TypePointer Uniform 56(s2)
64(s1): TypeStruct 6(int) 7(float)
65(s2): TypeStruct 6(int) 7(float) 64(s1)
66(ub2): TypeStruct 65(s2)
67: TypePointer Uniform 66(ub2)
68(uName2): 67(ptr) Variable Uniform
69: TypePointer Uniform 65(s2)
72: TypeBool
92: TypePointer Function 14(fvec4)
94: TypeImage 7(float) 2D sampled format:Unknown
95: TypeSampledImage 94
96: TypePointer UniformConstant 95
97(samp2D): 96(ptr) Variable UniformConstant
99: TypeVector 7(float) 2
100: TypePointer Input 99(fvec2)
101(coord): 100(ptr) Variable Input
106: 7(float) Constant 1073741824
112: TypeVector 72(bool) 4
117: 7(float) Constant 1077936128
126: 7(float) Constant 1082130432
132: TypeVector 72(bool) 2
137: 7(float) Constant 1084227584
173: 7(float) Constant 1086324736
209: 7(float) Constant 1088421888
212: TypePointer Output 14(fvec4)
213(color): 212(ptr) Variable Output
4(main): 2 Function None 3
5: Label
13(a): 12(ptr) Variable Function
37(b): 12(ptr) Variable Function
93(v): 92(ptr) Variable Function
19: 18(ptr) AccessChain 16(u) 17
20: 7(float) Load 19
21: 6(int) ConvertFToS 20
23: 18(ptr) AccessChain 16(u) 22
24: 7(float) Load 23
25: 8(s1) CompositeConstruct 21 24
27: 18(ptr) AccessChain 16(u) 26
28: 7(float) Load 27
29: 6(int) ConvertFToS 28
30: 18(ptr) AccessChain 16(u) 10
31: 7(float) Load 30
32: 8(s1) CompositeConstruct 29 31
36: 11 CompositeConstruct 25 32 35
Store 13(a) 36
42: 18(ptr) AccessChain 41(w) 17
43: 7(float) Load 42
44: 6(int) ConvertFToS 43
45: 18(ptr) AccessChain 41(w) 22
46: 7(float) Load 45
47: 8(s1) CompositeConstruct 44 46
48: 18(ptr) AccessChain 41(w) 26
49: 7(float) Load 48
50: 6(int) ConvertFToS 49
51: 18(ptr) AccessChain 41(w) 10
52: 7(float) Load 51
53: 8(s1) CompositeConstruct 50 52
54: 11 CompositeConstruct 40 47 53
Store 37(b) 54
62: 61(ptr) AccessChain 59(uName1) 60
63: 56(s2) Load 62
70: 69(ptr) AccessChain 68(uName2) 60
71: 65(s2) Load 70
73: 6(int) CompositeExtract 63 0
74: 6(int) CompositeExtract 71 0
75: 72(bool) IEqual 73 74
76: 7(float) CompositeExtract 63 1
77: 7(float) CompositeExtract 71 1
78: 72(bool) FOrdEqual 76 77
79: 72(bool) LogicalAnd 75 78
80: 55(s1) CompositeExtract 63 2
81: 64(s1) CompositeExtract 71 2
82: 6(int) CompositeExtract 80 0
83: 6(int) CompositeExtract 81 0
84: 72(bool) IEqual 82 83
85: 7(float) CompositeExtract 80 1
86: 7(float) CompositeExtract 81 1
87: 72(bool) FOrdEqual 85 86
88: 72(bool) LogicalAnd 84 87
89: 72(bool) LogicalAnd 79 88
SelectionMerge 91 None
BranchConditional 89 90 104
90: Label
98: 95 Load 97(samp2D)
102: 99(fvec2) Load 101(coord)
103: 14(fvec4) ImageSampleImplicitLod 98 102
Store 93(v) 103
Branch 91
104: Label
105: 95 Load 97(samp2D)
107: 99(fvec2) Load 101(coord)
108: 99(fvec2) VectorTimesScalar 107 106
109: 14(fvec4) ImageSampleImplicitLod 105 108
Store 93(v) 109
Branch 91
91: Label
110: 14(fvec4) Load 16(u)
111: 14(fvec4) Load 93(v)
113: 112(bvec4) FOrdEqual 110 111
114: 72(bool) All 113
SelectionMerge 116 None
BranchConditional 114 115 116
115: Label
118: 14(fvec4) Load 93(v)
119: 14(fvec4) VectorTimesScalar 118 117
Store 93(v) 119
Branch 116
116: Label
120: 14(fvec4) Load 16(u)
121: 14(fvec4) Load 93(v)
122: 112(bvec4) FOrdNotEqual 120 121
123: 72(bool) Any 122
SelectionMerge 125 None
BranchConditional 123 124 125
124: Label
127: 14(fvec4) Load 93(v)
128: 14(fvec4) VectorTimesScalar 127 126
Store 93(v) 128
Branch 125
125: Label
129: 99(fvec2) Load 101(coord)
130: 14(fvec4) Load 93(v)
131: 99(fvec2) VectorShuffle 130 130 1 3
133: 132(bvec2) FOrdEqual 129 131
134: 72(bool) All 133
SelectionMerge 136 None
BranchConditional 134 135 136
135: Label
138: 14(fvec4) Load 93(v)
139: 14(fvec4) VectorTimesScalar 138 137
Store 93(v) 139
Branch 136
136: Label
140: 11 Load 13(a)
141: 11 Load 37(b)
142: 8(s1) CompositeExtract 140 0
143: 8(s1) CompositeExtract 141 0
144: 6(int) CompositeExtract 142 0
145: 6(int) CompositeExtract 143 0
146: 72(bool) IEqual 144 145
147: 7(float) CompositeExtract 142 1
148: 7(float) CompositeExtract 143 1
149: 72(bool) FOrdEqual 147 148
150: 72(bool) LogicalAnd 146 149
151: 8(s1) CompositeExtract 140 1
152: 8(s1) CompositeExtract 141 1
153: 6(int) CompositeExtract 151 0
154: 6(int) CompositeExtract 152 0
155: 72(bool) IEqual 153 154
156: 7(float) CompositeExtract 151 1
157: 7(float) CompositeExtract 152 1
158: 72(bool) FOrdEqual 156 157
159: 72(bool) LogicalAnd 155 158
160: 72(bool) LogicalAnd 150 159
161: 8(s1) CompositeExtract 140 2
162: 8(s1) CompositeExtract 141 2
163: 6(int) CompositeExtract 161 0
164: 6(int) CompositeExtract 162 0
165: 72(bool) IEqual 163 164
166: 7(float) CompositeExtract 161 1
167: 7(float) CompositeExtract 162 1
168: 72(bool) FOrdEqual 166 167
169: 72(bool) LogicalAnd 165 168
170: 72(bool) LogicalAnd 160 169
SelectionMerge 172 None
BranchConditional 170 171 172
171: Label
174: 14(fvec4) Load 93(v)
175: 14(fvec4) VectorTimesScalar 174 173
Store 93(v) 175
Branch 172
172: Label
176: 11 Load 13(a)
177: 11 Load 37(b)
178: 8(s1) CompositeExtract 176 0
179: 8(s1) CompositeExtract 177 0
180: 6(int) CompositeExtract 178 0
181: 6(int) CompositeExtract 179 0
182: 72(bool) INotEqual 180 181
183: 7(float) CompositeExtract 178 1
184: 7(float) CompositeExtract 179 1
185: 72(bool) FOrdNotEqual 183 184
186: 72(bool) LogicalOr 182 185
187: 8(s1) CompositeExtract 176 1
188: 8(s1) CompositeExtract 177 1
189: 6(int) CompositeExtract 187 0
190: 6(int) CompositeExtract 188 0
191: 72(bool) INotEqual 189 190
192: 7(float) CompositeExtract 187 1
193: 7(float) CompositeExtract 188 1
194: 72(bool) FOrdNotEqual 192 193
195: 72(bool) LogicalOr 191 194
196: 72(bool) LogicalOr 186 195
197: 8(s1) CompositeExtract 176 2
198: 8(s1) CompositeExtract 177 2
199: 6(int) CompositeExtract 197 0
200: 6(int) CompositeExtract 198 0
201: 72(bool) INotEqual 199 200
202: 7(float) CompositeExtract 197 1
203: 7(float) CompositeExtract 198 1
204: 72(bool) FOrdNotEqual 202 203
205: 72(bool) LogicalOr 201 204
206: 72(bool) LogicalOr 196 205
SelectionMerge 208 None
BranchConditional 206 207 208
207: Label
210: 14(fvec4) Load 93(v)
211: 14(fvec4) VectorTimesScalar 210 209
Store 93(v) 211
Branch 208
208: Label
214: 14(fvec4) Load 93(v)
Store 213(color) 214
Return
FunctionEnd