aboutsummaryrefslogtreecommitdiff
path: root/Test/baseResults/web.operations.frag.out
blob: b08480fb9b6e0c85fbfb8c62de1378df09acf49a (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
; SPIR-V
; Version: 1.0
; Generator: Khronos Glslang Reference Front End; 8
; Bound: 207
; Schema: 0
               OpCapability Shader
          %1 = OpExtInstImport "GLSL.std.450"
               OpMemoryModel Logical GLSL450
               OpEntryPoint Fragment %main "main"
               OpExecutionMode %main OriginUpperLeft
               OpSource ESSL 310
               OpName %main "main"
               OpName %f "f"
               OpName %v4 "v4"
               OpName %u "u"
               OpName %uv4 "uv4"
               OpName %iv3 "iv3"
               OpName %i "i"
               OpName %uv3 "uv3"
               OpName %m2 "m2"
               OpName %iv4 "iv4"
               OpName %m4 "m4"
               OpName %a "a"
               OpName %S "S"
               OpMemberName %S 0 "i"
               OpName %s "s"
               OpName %b "b"
               OpName %arr "arr"
               OpName %arr2 "arr2"
               OpName %block "block"
               OpMemberName %block 0 "f"
               OpName %instanceName "instanceName"
               OpDecorate %u RelaxedPrecision
               OpDecorate %18 RelaxedPrecision
               OpDecorate %19 RelaxedPrecision
               OpDecorate %20 RelaxedPrecision
               OpDecorate %uv4 RelaxedPrecision
               OpDecorate %24 RelaxedPrecision
               OpDecorate %25 RelaxedPrecision
               OpDecorate %26 RelaxedPrecision
               OpDecorate %27 RelaxedPrecision
               OpDecorate %iv3 RelaxedPrecision
               OpDecorate %32 RelaxedPrecision
               OpDecorate %33 RelaxedPrecision
               OpDecorate %34 RelaxedPrecision
               OpDecorate %i RelaxedPrecision
               OpDecorate %38 RelaxedPrecision
               OpDecorate %39 RelaxedPrecision
               OpDecorate %uv3 RelaxedPrecision
               OpDecorate %43 RelaxedPrecision
               OpDecorate %45 RelaxedPrecision
               OpDecorate %46 RelaxedPrecision
               OpDecorate %iv4 RelaxedPrecision
               OpDecorate %62 RelaxedPrecision
               OpDecorate %64 RelaxedPrecision
               OpDecorate %65 RelaxedPrecision
               OpDecorate %104 RelaxedPrecision
               OpDecorate %105 RelaxedPrecision
               OpMemberDecorate %S 0 RelaxedPrecision
               OpDecorate %153 RelaxedPrecision
               OpDecorate %154 RelaxedPrecision
               OpDecorate %155 RelaxedPrecision
               OpDecorate %156 RelaxedPrecision
               OpDecorate %157 RelaxedPrecision
               OpDecorate %158 RelaxedPrecision
               OpDecorate %159 RelaxedPrecision
               OpDecorate %160 RelaxedPrecision
               OpDecorate %161 RelaxedPrecision
               OpDecorate %162 RelaxedPrecision
               OpDecorate %163 RelaxedPrecision
               OpDecorate %164 RelaxedPrecision
               OpDecorate %165 RelaxedPrecision
               OpDecorate %166 RelaxedPrecision
               OpDecorate %167 RelaxedPrecision
               OpDecorate %168 RelaxedPrecision
               OpDecorate %169 RelaxedPrecision
               OpDecorate %170 RelaxedPrecision
               OpDecorate %171 RelaxedPrecision
               OpDecorate %172 RelaxedPrecision
               OpDecorate %173 RelaxedPrecision
               OpDecorate %174 RelaxedPrecision
               OpDecorate %175 RelaxedPrecision
               OpDecorate %176 RelaxedPrecision
               OpDecorate %177 RelaxedPrecision
               OpDecorate %178 RelaxedPrecision
               OpDecorate %179 RelaxedPrecision
               OpDecorate %180 RelaxedPrecision
               OpDecorate %181 RelaxedPrecision
               OpDecorate %182 RelaxedPrecision
               OpDecorate %183 RelaxedPrecision
               OpDecorate %184 RelaxedPrecision
               OpDecorate %185 RelaxedPrecision
               OpDecorate %186 RelaxedPrecision
               OpDecorate %187 RelaxedPrecision
               OpDecorate %188 RelaxedPrecision
               OpDecorate %189 RelaxedPrecision
               OpDecorate %190 RelaxedPrecision
               OpDecorate %191 RelaxedPrecision
               OpDecorate %192 RelaxedPrecision
               OpDecorate %193 RelaxedPrecision
               OpDecorate %194 RelaxedPrecision
               OpDecorate %arr RelaxedPrecision
               OpDecorate %arr2 RelaxedPrecision
               OpMemberDecorate %block 0 RelaxedPrecision
               OpMemberDecorate %block 0 Offset 0
               OpDecorate %block Block
               OpDecorate %instanceName DescriptorSet 0
               OpDecorate %instanceName Binding 0
       %void = OpTypeVoid
          %3 = OpTypeFunction %void
      %float = OpTypeFloat 32
%_ptr_Function_float = OpTypePointer Function %float
    %v4float = OpTypeVector %float 4
%_ptr_Function_v4float = OpTypePointer Function %v4float
       %uint = OpTypeInt 32 0
%_ptr_Function_uint = OpTypePointer Function %uint
     %v4uint = OpTypeVector %uint 4
%_ptr_Function_v4uint = OpTypePointer Function %v4uint
        %int = OpTypeInt 32 1
      %v3int = OpTypeVector %int 3
%_ptr_Function_v3int = OpTypePointer Function %v3int
%_ptr_Function_int = OpTypePointer Function %int
      %int_3 = OpConstant %int 3
     %v3uint = OpTypeVector %uint 3
%_ptr_Function_v3uint = OpTypePointer Function %v3uint
     %uint_4 = OpConstant %uint 4
    %v2float = OpTypeVector %float 2
%mat2v2float = OpTypeMatrix %v2float 2
%_ptr_Function_mat2v2float = OpTypePointer Function %mat2v2float
    %float_1 = OpConstant %float 1
      %v4int = OpTypeVector %int 4
%_ptr_Function_v4int = OpTypePointer Function %v4int
      %int_1 = OpConstant %int 1
%mat4v4float = OpTypeMatrix %v4float 4
%_ptr_Function_mat4v4float = OpTypePointer Function %mat4v4float
       %bool = OpTypeBool
     %v4bool = OpTypeVector %bool 4
     %v2bool = OpTypeVector %bool 2
     %uint_5 = OpConstant %uint 5
%_arr_float_uint_5 = OpTypeArray %float %uint_5
%_ptr_Private__arr_float_uint_5 = OpTypePointer Private %_arr_float_uint_5
          %a = OpVariable %_ptr_Private__arr_float_uint_5 Private
          %S = OpTypeStruct %int
%_ptr_Private_S = OpTypePointer Private %S
          %s = OpVariable %_ptr_Private_S Private
%_ptr_Function_bool = OpTypePointer Function %bool
     %uint_2 = OpConstant %uint 2
%_arr_int_uint_2 = OpTypeArray %int %uint_2
%_ptr_Function__arr_int_uint_2 = OpTypePointer Function %_arr_int_uint_2
     %uint_3 = OpConstant %uint 3
%_arr_int_uint_3 = OpTypeArray %int %uint_3
%_ptr_Function__arr_int_uint_3 = OpTypePointer Function %_arr_int_uint_3
      %int_2 = OpConstant %int 2
      %block = OpTypeStruct %float
%_ptr_Uniform_block = OpTypePointer Uniform %block
%instanceName = OpVariable %_ptr_Uniform_block Uniform
       %main = OpFunction %void None %3
          %5 = OpLabel
          %f = OpVariable %_ptr_Function_float Function
         %v4 = OpVariable %_ptr_Function_v4float Function
          %u = OpVariable %_ptr_Function_uint Function
        %uv4 = OpVariable %_ptr_Function_v4uint Function
        %iv3 = OpVariable %_ptr_Function_v3int Function
          %i = OpVariable %_ptr_Function_int Function
        %uv3 = OpVariable %_ptr_Function_v3uint Function
         %m2 = OpVariable %_ptr_Function_mat2v2float Function
        %iv4 = OpVariable %_ptr_Function_v4int Function
         %m4 = OpVariable %_ptr_Function_mat4v4float Function
          %b = OpVariable %_ptr_Function_bool Function
        %arr = OpVariable %_ptr_Function__arr_int_uint_2 Function
       %arr2 = OpVariable %_ptr_Function__arr_int_uint_3 Function
          %9 = OpLoad %float %f
         %13 = OpLoad %v4float %v4
         %14 = OpVectorTimesScalar %v4float %13 %9
         %18 = OpLoad %uint %u
         %19 = OpLoad %uint %u
         %20 = OpIAdd %uint %18 %19
         %24 = OpLoad %v4uint %uv4
         %25 = OpLoad %uint %u
         %26 = OpCompositeConstruct %v4uint %25 %25 %25 %25
         %27 = OpUDiv %v4uint %24 %26
         %32 = OpLoad %v3int %iv3
         %33 = OpLoad %v3int %iv3
         %34 = OpISub %v3int %33 %32
               OpStore %iv3 %34
         %38 = OpLoad %int %i
         %39 = OpSMod %int %38 %int_3
               OpStore %i %39
         %43 = OpLoad %v3uint %uv3
         %45 = OpCompositeConstruct %v3uint %uint_4 %uint_4 %uint_4
         %46 = OpUMod %v3uint %43 %45
         %51 = OpLoad %mat2v2float %m2
         %53 = OpCompositeConstruct %v2float %float_1 %float_1
         %54 = OpCompositeExtract %v2float %51 0
         %55 = OpFSub %v2float %54 %53
         %56 = OpCompositeExtract %v2float %51 1
         %57 = OpFSub %v2float %56 %53
         %58 = OpCompositeConstruct %mat2v2float %55 %57
               OpStore %m2 %58
         %62 = OpLoad %v4int %iv4
         %64 = OpCompositeConstruct %v4int %int_1 %int_1 %int_1 %int_1
         %65 = OpIAdd %v4int %62 %64
               OpStore %iv4 %65
         %69 = OpLoad %mat4v4float %m4
         %70 = OpLoad %mat4v4float %m4
         %72 = OpCompositeExtract %v4float %69 0
         %73 = OpCompositeExtract %v4float %70 0
         %75 = OpFUnordNotEqual %v4bool %72 %73
         %76 = OpAny %bool %75
         %77 = OpCompositeExtract %v4float %69 1
         %78 = OpCompositeExtract %v4float %70 1
         %79 = OpFUnordNotEqual %v4bool %77 %78
         %80 = OpAny %bool %79
         %81 = OpLogicalOr %bool %76 %80
         %82 = OpCompositeExtract %v4float %69 2
         %83 = OpCompositeExtract %v4float %70 2
         %84 = OpFUnordNotEqual %v4bool %82 %83
         %85 = OpAny %bool %84
         %86 = OpLogicalOr %bool %81 %85
         %87 = OpCompositeExtract %v4float %69 3
         %88 = OpCompositeExtract %v4float %70 3
         %89 = OpFUnordNotEqual %v4bool %87 %88
         %90 = OpAny %bool %89
         %91 = OpLogicalOr %bool %86 %90
         %92 = OpLoad %mat2v2float %m2
         %93 = OpLoad %mat2v2float %m2
         %94 = OpCompositeExtract %v2float %92 0
         %95 = OpCompositeExtract %v2float %93 0
         %97 = OpFOrdEqual %v2bool %94 %95
         %98 = OpAll %bool %97
         %99 = OpCompositeExtract %v2float %92 1
        %100 = OpCompositeExtract %v2float %93 1
        %101 = OpFOrdEqual %v2bool %99 %100
        %102 = OpAll %bool %101
        %103 = OpLogicalAnd %bool %98 %102
        %104 = OpLoad %int %i
        %105 = OpLoad %int %i
        %106 = OpSLessThanEqual %bool %104 %105
        %111 = OpLoad %_arr_float_uint_5 %a
        %112 = OpLoad %_arr_float_uint_5 %a
        %113 = OpCompositeExtract %float %111 0
        %114 = OpCompositeExtract %float %112 0
        %115 = OpFOrdEqual %bool %113 %114
        %116 = OpCompositeExtract %float %111 1
        %117 = OpCompositeExtract %float %112 1
        %118 = OpFOrdEqual %bool %116 %117
        %119 = OpLogicalAnd %bool %115 %118
        %120 = OpCompositeExtract %float %111 2
        %121 = OpCompositeExtract %float %112 2
        %122 = OpFOrdEqual %bool %120 %121
        %123 = OpLogicalAnd %bool %119 %122
        %124 = OpCompositeExtract %float %111 3
        %125 = OpCompositeExtract %float %112 3
        %126 = OpFOrdEqual %bool %124 %125
        %127 = OpLogicalAnd %bool %123 %126
        %128 = OpCompositeExtract %float %111 4
        %129 = OpCompositeExtract %float %112 4
        %130 = OpFOrdEqual %bool %128 %129
        %131 = OpLogicalAnd %bool %127 %130
        %135 = OpLoad %S %s
        %136 = OpLoad %S %s
        %137 = OpCompositeExtract %int %135 0
        %138 = OpCompositeExtract %int %136 0
        %139 = OpINotEqual %bool %137 %138
        %142 = OpLoad %bool %b
        %143 = OpLoad %bool %b
        %144 = OpLogicalAnd %bool %142 %143
        %145 = OpLoad %bool %b
        %146 = OpLoad %bool %b
        %147 = OpLogicalOr %bool %145 %146
        %148 = OpLoad %bool %b
        %149 = OpLoad %bool %b
        %150 = OpLogicalNotEqual %bool %148 %149
        %151 = OpLoad %bool %b
        %152 = OpLogicalNot %bool %151
        %153 = OpLoad %int %i
        %154 = OpNot %int %153
        %155 = OpLoad %uint %u
        %156 = OpNot %uint %155
        %157 = OpLoad %v3uint %uv3
        %158 = OpNot %v3uint %157
        %159 = OpLoad %v3int %iv3
        %160 = OpNot %v3int %159
        %161 = OpLoad %int %i
        %162 = OpLoad %v3uint %uv3
        %163 = OpCompositeConstruct %v3int %161 %161 %161
        %164 = OpShiftLeftLogical %v3uint %162 %163
               OpStore %uv3 %164
        %165 = OpLoad %int %i
        %166 = OpLoad %int %i
        %167 = OpShiftRightArithmetic %int %165 %166
        %168 = OpLoad %uint %u
        %169 = OpLoad %uint %u
        %170 = OpShiftLeftLogical %uint %168 %169
        %171 = OpLoad %v3int %iv3
        %172 = OpLoad %v3int %iv3
        %173 = OpShiftRightArithmetic %v3int %171 %172
        %174 = OpLoad %int %i
        %175 = OpLoad %int %i
        %176 = OpBitwiseAnd %int %174 %175
        %177 = OpLoad %uint %u
        %178 = OpLoad %uint %u
        %179 = OpBitwiseOr %uint %177 %178
        %180 = OpLoad %v3int %iv3
        %181 = OpLoad %v3int %iv3
        %182 = OpBitwiseXor %v3int %180 %181
        %183 = OpLoad %uint %u
        %184 = OpLoad %v3uint %uv3
        %185 = OpCompositeConstruct %v3uint %183 %183 %183
        %186 = OpBitwiseAnd %v3uint %185 %184
        %187 = OpLoad %v3uint %uv3
        %188 = OpLoad %uint %u
        %189 = OpCompositeConstruct %v3uint %188 %188 %188
        %190 = OpBitwiseOr %v3uint %187 %189
        %191 = OpLoad %uint %u
        %192 = OpLoad %v3uint %uv3
        %193 = OpCompositeConstruct %v3uint %191 %191 %191
        %194 = OpBitwiseAnd %v3uint %192 %193
               OpStore %uv3 %194
               OpReturn
               OpFunctionEnd