File builders/mesa-vulkan-1/contrib/generators/nir/nir_database_alu.c changed (mode: 100644) (index 1df143c..29a0ea1) |
27 |
27 |
#define NIR_OP_TYPE_ALU 1 |
#define NIR_OP_TYPE_ALU 1 |
28 |
28 |
|
|
29 |
29 |
#define NIR_OP_INPUTS_N_MAX 4 |
#define NIR_OP_INPUTS_N_MAX 4 |
30 |
|
#define NIR_OP_ALGEBRAIC_PROPERTIES_COMMUTATIVE 0x01 |
|
|
30 |
|
#define NIR_OP_ALGEBRAIC_PROPERTIES_2SRC_COMMUTATIVE 0x01 |
31 |
31 |
#define NIR_OP_ALGEBRAIC_PROPERTIES_ASSOCIATIVE 0x02 |
#define NIR_OP_ALGEBRAIC_PROPERTIES_ASSOCIATIVE 0x02 |
32 |
32 |
struct nir_op { |
struct nir_op { |
33 |
33 |
char *name; |
char *name; |
|
... |
... |
static struct nir_op nir_b32all_fequal2 = { |
131 |
131 |
2, |
2, |
132 |
132 |
{2,2}, |
{2,2}, |
133 |
133 |
{NIR_TYPE_FLOAT,NIR_TYPE_FLOAT}, |
{NIR_TYPE_FLOAT,NIR_TYPE_FLOAT}, |
134 |
|
NIR_OP_ALGEBRAIC_PROPERTIES_COMMUTATIVE |
|
|
134 |
|
NIR_OP_ALGEBRAIC_PROPERTIES_2SRC_COMMUTATIVE |
135 |
135 |
}; |
}; |
136 |
136 |
static struct nir_op nir_b32all_fequal3 = { |
static struct nir_op nir_b32all_fequal3 = { |
137 |
137 |
"b32all_fequal3", |
"b32all_fequal3", |
|
... |
... |
static struct nir_op nir_b32all_fequal3 = { |
141 |
141 |
2, |
2, |
142 |
142 |
{3,3}, |
{3,3}, |
143 |
143 |
{NIR_TYPE_FLOAT,NIR_TYPE_FLOAT}, |
{NIR_TYPE_FLOAT,NIR_TYPE_FLOAT}, |
144 |
|
NIR_OP_ALGEBRAIC_PROPERTIES_COMMUTATIVE |
|
|
144 |
|
NIR_OP_ALGEBRAIC_PROPERTIES_2SRC_COMMUTATIVE |
145 |
145 |
}; |
}; |
146 |
146 |
static struct nir_op nir_b32all_fequal4 = { |
static struct nir_op nir_b32all_fequal4 = { |
147 |
147 |
"b32all_fequal4", |
"b32all_fequal4", |
|
... |
... |
static struct nir_op nir_b32all_fequal4 = { |
151 |
151 |
2, |
2, |
152 |
152 |
{4,4}, |
{4,4}, |
153 |
153 |
{NIR_TYPE_FLOAT,NIR_TYPE_FLOAT}, |
{NIR_TYPE_FLOAT,NIR_TYPE_FLOAT}, |
154 |
|
NIR_OP_ALGEBRAIC_PROPERTIES_COMMUTATIVE |
|
|
154 |
|
NIR_OP_ALGEBRAIC_PROPERTIES_2SRC_COMMUTATIVE |
155 |
155 |
}; |
}; |
156 |
156 |
static struct nir_op nir_b32all_iequal2 = { |
static struct nir_op nir_b32all_iequal2 = { |
157 |
157 |
"b32all_iequal2", |
"b32all_iequal2", |
|
... |
... |
static struct nir_op nir_b32all_iequal2 = { |
161 |
161 |
2, |
2, |
162 |
162 |
{2,2}, |
{2,2}, |
163 |
163 |
{NIR_TYPE_INT,NIR_TYPE_INT}, |
{NIR_TYPE_INT,NIR_TYPE_INT}, |
164 |
|
NIR_OP_ALGEBRAIC_PROPERTIES_COMMUTATIVE |
|
|
164 |
|
NIR_OP_ALGEBRAIC_PROPERTIES_2SRC_COMMUTATIVE |
165 |
165 |
}; |
}; |
166 |
166 |
static struct nir_op nir_b32all_iequal3 = { |
static struct nir_op nir_b32all_iequal3 = { |
167 |
167 |
"b32all_iequal3", |
"b32all_iequal3", |
|
... |
... |
static struct nir_op nir_b32all_iequal3 = { |
171 |
171 |
2, |
2, |
172 |
172 |
{3,3}, |
{3,3}, |
173 |
173 |
{NIR_TYPE_INT,NIR_TYPE_INT}, |
{NIR_TYPE_INT,NIR_TYPE_INT}, |
174 |
|
NIR_OP_ALGEBRAIC_PROPERTIES_COMMUTATIVE |
|
|
174 |
|
NIR_OP_ALGEBRAIC_PROPERTIES_2SRC_COMMUTATIVE |
175 |
175 |
}; |
}; |
176 |
176 |
static struct nir_op nir_b32all_iequal4 = { |
static struct nir_op nir_b32all_iequal4 = { |
177 |
177 |
"b32all_iequal4", |
"b32all_iequal4", |
|
... |
... |
static struct nir_op nir_b32all_iequal4 = { |
181 |
181 |
2, |
2, |
182 |
182 |
{4,4}, |
{4,4}, |
183 |
183 |
{NIR_TYPE_INT,NIR_TYPE_INT}, |
{NIR_TYPE_INT,NIR_TYPE_INT}, |
184 |
|
NIR_OP_ALGEBRAIC_PROPERTIES_COMMUTATIVE |
|
|
184 |
|
NIR_OP_ALGEBRAIC_PROPERTIES_2SRC_COMMUTATIVE |
185 |
185 |
}; |
}; |
186 |
186 |
static struct nir_op nir_b32any_fnequal2 = { |
static struct nir_op nir_b32any_fnequal2 = { |
187 |
187 |
"b32any_fnequal2", |
"b32any_fnequal2", |
|
... |
... |
static struct nir_op nir_b32any_fnequal2 = { |
191 |
191 |
2, |
2, |
192 |
192 |
{2,2}, |
{2,2}, |
193 |
193 |
{NIR_TYPE_FLOAT,NIR_TYPE_FLOAT}, |
{NIR_TYPE_FLOAT,NIR_TYPE_FLOAT}, |
194 |
|
NIR_OP_ALGEBRAIC_PROPERTIES_COMMUTATIVE |
|
|
194 |
|
NIR_OP_ALGEBRAIC_PROPERTIES_2SRC_COMMUTATIVE |
195 |
195 |
}; |
}; |
196 |
196 |
static struct nir_op nir_b32any_fnequal3 = { |
static struct nir_op nir_b32any_fnequal3 = { |
197 |
197 |
"b32any_fnequal3", |
"b32any_fnequal3", |
|
... |
... |
static struct nir_op nir_b32any_fnequal3 = { |
201 |
201 |
2, |
2, |
202 |
202 |
{3,3}, |
{3,3}, |
203 |
203 |
{NIR_TYPE_FLOAT,NIR_TYPE_FLOAT}, |
{NIR_TYPE_FLOAT,NIR_TYPE_FLOAT}, |
204 |
|
NIR_OP_ALGEBRAIC_PROPERTIES_COMMUTATIVE |
|
|
204 |
|
NIR_OP_ALGEBRAIC_PROPERTIES_2SRC_COMMUTATIVE |
205 |
205 |
}; |
}; |
206 |
206 |
static struct nir_op nir_b32any_fnequal4 = { |
static struct nir_op nir_b32any_fnequal4 = { |
207 |
207 |
"b32any_fnequal4", |
"b32any_fnequal4", |
|
... |
... |
static struct nir_op nir_b32any_fnequal4 = { |
211 |
211 |
2, |
2, |
212 |
212 |
{4,4}, |
{4,4}, |
213 |
213 |
{NIR_TYPE_FLOAT,NIR_TYPE_FLOAT}, |
{NIR_TYPE_FLOAT,NIR_TYPE_FLOAT}, |
214 |
|
NIR_OP_ALGEBRAIC_PROPERTIES_COMMUTATIVE |
|
|
214 |
|
NIR_OP_ALGEBRAIC_PROPERTIES_2SRC_COMMUTATIVE |
215 |
215 |
}; |
}; |
216 |
216 |
static struct nir_op nir_b32any_inequal2 = { |
static struct nir_op nir_b32any_inequal2 = { |
217 |
217 |
"b32any_inequal2", |
"b32any_inequal2", |
|
... |
... |
static struct nir_op nir_b32any_inequal2 = { |
221 |
221 |
2, |
2, |
222 |
222 |
{2,2}, |
{2,2}, |
223 |
223 |
{NIR_TYPE_INT,NIR_TYPE_INT}, |
{NIR_TYPE_INT,NIR_TYPE_INT}, |
224 |
|
NIR_OP_ALGEBRAIC_PROPERTIES_COMMUTATIVE |
|
|
224 |
|
NIR_OP_ALGEBRAIC_PROPERTIES_2SRC_COMMUTATIVE |
225 |
225 |
}; |
}; |
226 |
226 |
static struct nir_op nir_b32any_inequal3 = { |
static struct nir_op nir_b32any_inequal3 = { |
227 |
227 |
"b32any_inequal3", |
"b32any_inequal3", |
|
... |
... |
static struct nir_op nir_b32any_inequal3 = { |
231 |
231 |
2, |
2, |
232 |
232 |
{3,3}, |
{3,3}, |
233 |
233 |
{NIR_TYPE_INT,NIR_TYPE_INT}, |
{NIR_TYPE_INT,NIR_TYPE_INT}, |
234 |
|
NIR_OP_ALGEBRAIC_PROPERTIES_COMMUTATIVE |
|
|
234 |
|
NIR_OP_ALGEBRAIC_PROPERTIES_2SRC_COMMUTATIVE |
235 |
235 |
}; |
}; |
236 |
236 |
static struct nir_op nir_b32any_inequal4 = { |
static struct nir_op nir_b32any_inequal4 = { |
237 |
237 |
"b32any_inequal4", |
"b32any_inequal4", |
|
... |
... |
static struct nir_op nir_b32any_inequal4 = { |
241 |
241 |
2, |
2, |
242 |
242 |
{4,4}, |
{4,4}, |
243 |
243 |
{NIR_TYPE_INT,NIR_TYPE_INT}, |
{NIR_TYPE_INT,NIR_TYPE_INT}, |
244 |
|
NIR_OP_ALGEBRAIC_PROPERTIES_COMMUTATIVE |
|
|
244 |
|
NIR_OP_ALGEBRAIC_PROPERTIES_2SRC_COMMUTATIVE |
245 |
245 |
}; |
}; |
246 |
246 |
static struct nir_op nir_b32csel = { |
static struct nir_op nir_b32csel = { |
247 |
247 |
"b32csel", |
"b32csel", |
|
... |
... |
static struct nir_op nir_ball_fequal2 = { |
261 |
261 |
2, |
2, |
262 |
262 |
{2,2}, |
{2,2}, |
263 |
263 |
{NIR_TYPE_FLOAT,NIR_TYPE_FLOAT}, |
{NIR_TYPE_FLOAT,NIR_TYPE_FLOAT}, |
264 |
|
NIR_OP_ALGEBRAIC_PROPERTIES_COMMUTATIVE |
|
|
264 |
|
NIR_OP_ALGEBRAIC_PROPERTIES_2SRC_COMMUTATIVE |
265 |
265 |
}; |
}; |
266 |
266 |
static struct nir_op nir_ball_fequal3 = { |
static struct nir_op nir_ball_fequal3 = { |
267 |
267 |
"ball_fequal3", |
"ball_fequal3", |
|
... |
... |
static struct nir_op nir_ball_fequal3 = { |
271 |
271 |
2, |
2, |
272 |
272 |
{3,3}, |
{3,3}, |
273 |
273 |
{NIR_TYPE_FLOAT,NIR_TYPE_FLOAT}, |
{NIR_TYPE_FLOAT,NIR_TYPE_FLOAT}, |
274 |
|
NIR_OP_ALGEBRAIC_PROPERTIES_COMMUTATIVE |
|
|
274 |
|
NIR_OP_ALGEBRAIC_PROPERTIES_2SRC_COMMUTATIVE |
275 |
275 |
}; |
}; |
276 |
276 |
static struct nir_op nir_ball_fequal4 = { |
static struct nir_op nir_ball_fequal4 = { |
277 |
277 |
"ball_fequal4", |
"ball_fequal4", |
|
... |
... |
static struct nir_op nir_ball_fequal4 = { |
281 |
281 |
2, |
2, |
282 |
282 |
{4,4}, |
{4,4}, |
283 |
283 |
{NIR_TYPE_FLOAT,NIR_TYPE_FLOAT}, |
{NIR_TYPE_FLOAT,NIR_TYPE_FLOAT}, |
284 |
|
NIR_OP_ALGEBRAIC_PROPERTIES_COMMUTATIVE |
|
|
284 |
|
NIR_OP_ALGEBRAIC_PROPERTIES_2SRC_COMMUTATIVE |
285 |
285 |
}; |
}; |
286 |
286 |
static struct nir_op nir_ball_iequal2 = { |
static struct nir_op nir_ball_iequal2 = { |
287 |
287 |
"ball_iequal2", |
"ball_iequal2", |
|
... |
... |
static struct nir_op nir_ball_iequal2 = { |
291 |
291 |
2, |
2, |
292 |
292 |
{2,2}, |
{2,2}, |
293 |
293 |
{NIR_TYPE_INT,NIR_TYPE_INT}, |
{NIR_TYPE_INT,NIR_TYPE_INT}, |
294 |
|
NIR_OP_ALGEBRAIC_PROPERTIES_COMMUTATIVE |
|
|
294 |
|
NIR_OP_ALGEBRAIC_PROPERTIES_2SRC_COMMUTATIVE |
295 |
295 |
}; |
}; |
296 |
296 |
static struct nir_op nir_ball_iequal3 = { |
static struct nir_op nir_ball_iequal3 = { |
297 |
297 |
"ball_iequal3", |
"ball_iequal3", |
|
... |
... |
static struct nir_op nir_ball_iequal3 = { |
301 |
301 |
2, |
2, |
302 |
302 |
{3,3}, |
{3,3}, |
303 |
303 |
{NIR_TYPE_INT,NIR_TYPE_INT}, |
{NIR_TYPE_INT,NIR_TYPE_INT}, |
304 |
|
NIR_OP_ALGEBRAIC_PROPERTIES_COMMUTATIVE |
|
|
304 |
|
NIR_OP_ALGEBRAIC_PROPERTIES_2SRC_COMMUTATIVE |
305 |
305 |
}; |
}; |
306 |
306 |
static struct nir_op nir_ball_iequal4 = { |
static struct nir_op nir_ball_iequal4 = { |
307 |
307 |
"ball_iequal4", |
"ball_iequal4", |
|
... |
... |
static struct nir_op nir_ball_iequal4 = { |
311 |
311 |
2, |
2, |
312 |
312 |
{4,4}, |
{4,4}, |
313 |
313 |
{NIR_TYPE_INT,NIR_TYPE_INT}, |
{NIR_TYPE_INT,NIR_TYPE_INT}, |
314 |
|
NIR_OP_ALGEBRAIC_PROPERTIES_COMMUTATIVE |
|
|
314 |
|
NIR_OP_ALGEBRAIC_PROPERTIES_2SRC_COMMUTATIVE |
315 |
315 |
}; |
}; |
316 |
316 |
static struct nir_op nir_bany_fnequal2 = { |
static struct nir_op nir_bany_fnequal2 = { |
317 |
317 |
"bany_fnequal2", |
"bany_fnequal2", |
|
... |
... |
static struct nir_op nir_bany_fnequal2 = { |
321 |
321 |
2, |
2, |
322 |
322 |
{2,2}, |
{2,2}, |
323 |
323 |
{NIR_TYPE_FLOAT,NIR_TYPE_FLOAT}, |
{NIR_TYPE_FLOAT,NIR_TYPE_FLOAT}, |
324 |
|
NIR_OP_ALGEBRAIC_PROPERTIES_COMMUTATIVE |
|
|
324 |
|
NIR_OP_ALGEBRAIC_PROPERTIES_2SRC_COMMUTATIVE |
325 |
325 |
}; |
}; |
326 |
326 |
static struct nir_op nir_bany_fnequal3 = { |
static struct nir_op nir_bany_fnequal3 = { |
327 |
327 |
"bany_fnequal3", |
"bany_fnequal3", |
|
... |
... |
static struct nir_op nir_bany_fnequal3 = { |
331 |
331 |
2, |
2, |
332 |
332 |
{3,3}, |
{3,3}, |
333 |
333 |
{NIR_TYPE_FLOAT,NIR_TYPE_FLOAT}, |
{NIR_TYPE_FLOAT,NIR_TYPE_FLOAT}, |
334 |
|
NIR_OP_ALGEBRAIC_PROPERTIES_COMMUTATIVE |
|
|
334 |
|
NIR_OP_ALGEBRAIC_PROPERTIES_2SRC_COMMUTATIVE |
335 |
335 |
}; |
}; |
336 |
336 |
static struct nir_op nir_bany_fnequal4 = { |
static struct nir_op nir_bany_fnequal4 = { |
337 |
337 |
"bany_fnequal4", |
"bany_fnequal4", |
|
... |
... |
static struct nir_op nir_bany_fnequal4 = { |
341 |
341 |
2, |
2, |
342 |
342 |
{4,4}, |
{4,4}, |
343 |
343 |
{NIR_TYPE_FLOAT,NIR_TYPE_FLOAT}, |
{NIR_TYPE_FLOAT,NIR_TYPE_FLOAT}, |
344 |
|
NIR_OP_ALGEBRAIC_PROPERTIES_COMMUTATIVE |
|
|
344 |
|
NIR_OP_ALGEBRAIC_PROPERTIES_2SRC_COMMUTATIVE |
345 |
345 |
}; |
}; |
346 |
346 |
static struct nir_op nir_bany_inequal2 = { |
static struct nir_op nir_bany_inequal2 = { |
347 |
347 |
"bany_inequal2", |
"bany_inequal2", |
|
... |
... |
static struct nir_op nir_bany_inequal2 = { |
351 |
351 |
2, |
2, |
352 |
352 |
{2,2}, |
{2,2}, |
353 |
353 |
{NIR_TYPE_INT,NIR_TYPE_INT}, |
{NIR_TYPE_INT,NIR_TYPE_INT}, |
354 |
|
NIR_OP_ALGEBRAIC_PROPERTIES_COMMUTATIVE |
|
|
354 |
|
NIR_OP_ALGEBRAIC_PROPERTIES_2SRC_COMMUTATIVE |
355 |
355 |
}; |
}; |
356 |
356 |
static struct nir_op nir_bany_inequal3 = { |
static struct nir_op nir_bany_inequal3 = { |
357 |
357 |
"bany_inequal3", |
"bany_inequal3", |
|
... |
... |
static struct nir_op nir_bany_inequal3 = { |
361 |
361 |
2, |
2, |
362 |
362 |
{3,3}, |
{3,3}, |
363 |
363 |
{NIR_TYPE_INT,NIR_TYPE_INT}, |
{NIR_TYPE_INT,NIR_TYPE_INT}, |
364 |
|
NIR_OP_ALGEBRAIC_PROPERTIES_COMMUTATIVE |
|
|
364 |
|
NIR_OP_ALGEBRAIC_PROPERTIES_2SRC_COMMUTATIVE |
365 |
365 |
}; |
}; |
366 |
366 |
static struct nir_op nir_bany_inequal4 = { |
static struct nir_op nir_bany_inequal4 = { |
367 |
367 |
"bany_inequal4", |
"bany_inequal4", |
|
... |
... |
static struct nir_op nir_bany_inequal4 = { |
371 |
371 |
2, |
2, |
372 |
372 |
{4,4}, |
{4,4}, |
373 |
373 |
{NIR_TYPE_INT,NIR_TYPE_INT}, |
{NIR_TYPE_INT,NIR_TYPE_INT}, |
374 |
|
NIR_OP_ALGEBRAIC_PROPERTIES_COMMUTATIVE |
|
|
374 |
|
NIR_OP_ALGEBRAIC_PROPERTIES_2SRC_COMMUTATIVE |
375 |
375 |
}; |
}; |
376 |
376 |
static struct nir_op nir_bcsel = { |
static struct nir_op nir_bcsel = { |
377 |
377 |
"bcsel", |
"bcsel", |
|
... |
... |
static struct nir_op nir_fadd = { |
681 |
681 |
2, |
2, |
682 |
682 |
{0,0}, |
{0,0}, |
683 |
683 |
{NIR_TYPE_FLOAT,NIR_TYPE_FLOAT}, |
{NIR_TYPE_FLOAT,NIR_TYPE_FLOAT}, |
684 |
|
NIR_OP_ALGEBRAIC_PROPERTIES_COMMUTATIVE | NIR_OP_ALGEBRAIC_PROPERTIES_ASSOCIATIVE |
|
|
684 |
|
NIR_OP_ALGEBRAIC_PROPERTIES_2SRC_COMMUTATIVE | NIR_OP_ALGEBRAIC_PROPERTIES_ASSOCIATIVE |
685 |
685 |
}; |
}; |
686 |
686 |
static struct nir_op nir_fall_equal2 = { |
static struct nir_op nir_fall_equal2 = { |
687 |
687 |
"fall_equal2", |
"fall_equal2", |
|
... |
... |
static struct nir_op nir_fall_equal2 = { |
691 |
691 |
2, |
2, |
692 |
692 |
{2,2}, |
{2,2}, |
693 |
693 |
{NIR_TYPE_FLOAT32,NIR_TYPE_FLOAT32}, |
{NIR_TYPE_FLOAT32,NIR_TYPE_FLOAT32}, |
694 |
|
NIR_OP_ALGEBRAIC_PROPERTIES_COMMUTATIVE |
|
|
694 |
|
NIR_OP_ALGEBRAIC_PROPERTIES_2SRC_COMMUTATIVE |
695 |
695 |
}; |
}; |
696 |
696 |
static struct nir_op nir_fall_equal3 = { |
static struct nir_op nir_fall_equal3 = { |
697 |
697 |
"fall_equal3", |
"fall_equal3", |
|
... |
... |
static struct nir_op nir_fall_equal3 = { |
701 |
701 |
2, |
2, |
702 |
702 |
{3,3}, |
{3,3}, |
703 |
703 |
{NIR_TYPE_FLOAT32,NIR_TYPE_FLOAT32}, |
{NIR_TYPE_FLOAT32,NIR_TYPE_FLOAT32}, |
704 |
|
NIR_OP_ALGEBRAIC_PROPERTIES_COMMUTATIVE |
|
|
704 |
|
NIR_OP_ALGEBRAIC_PROPERTIES_2SRC_COMMUTATIVE |
705 |
705 |
}; |
}; |
706 |
706 |
static struct nir_op nir_fall_equal4 = { |
static struct nir_op nir_fall_equal4 = { |
707 |
707 |
"fall_equal4", |
"fall_equal4", |
|
... |
... |
static struct nir_op nir_fall_equal4 = { |
711 |
711 |
2, |
2, |
712 |
712 |
{4,4}, |
{4,4}, |
713 |
713 |
{NIR_TYPE_FLOAT32,NIR_TYPE_FLOAT32}, |
{NIR_TYPE_FLOAT32,NIR_TYPE_FLOAT32}, |
714 |
|
NIR_OP_ALGEBRAIC_PROPERTIES_COMMUTATIVE |
|
|
714 |
|
NIR_OP_ALGEBRAIC_PROPERTIES_2SRC_COMMUTATIVE |
715 |
715 |
}; |
}; |
716 |
716 |
static struct nir_op nir_fand = { |
static struct nir_op nir_fand = { |
717 |
717 |
"fand", |
"fand", |
|
... |
... |
static struct nir_op nir_fand = { |
721 |
721 |
2, |
2, |
722 |
722 |
{0,0}, |
{0,0}, |
723 |
723 |
{NIR_TYPE_FLOAT32,NIR_TYPE_FLOAT32}, |
{NIR_TYPE_FLOAT32,NIR_TYPE_FLOAT32}, |
724 |
|
NIR_OP_ALGEBRAIC_PROPERTIES_COMMUTATIVE |
|
|
724 |
|
NIR_OP_ALGEBRAIC_PROPERTIES_2SRC_COMMUTATIVE |
725 |
725 |
}; |
}; |
726 |
726 |
static struct nir_op nir_fany_nequal2 = { |
static struct nir_op nir_fany_nequal2 = { |
727 |
727 |
"fany_nequal2", |
"fany_nequal2", |
|
... |
... |
static struct nir_op nir_fany_nequal2 = { |
731 |
731 |
2, |
2, |
732 |
732 |
{2,2}, |
{2,2}, |
733 |
733 |
{NIR_TYPE_FLOAT32,NIR_TYPE_FLOAT32}, |
{NIR_TYPE_FLOAT32,NIR_TYPE_FLOAT32}, |
734 |
|
NIR_OP_ALGEBRAIC_PROPERTIES_COMMUTATIVE |
|
|
734 |
|
NIR_OP_ALGEBRAIC_PROPERTIES_2SRC_COMMUTATIVE |
735 |
735 |
}; |
}; |
736 |
736 |
static struct nir_op nir_fany_nequal3 = { |
static struct nir_op nir_fany_nequal3 = { |
737 |
737 |
"fany_nequal3", |
"fany_nequal3", |
|
... |
... |
static struct nir_op nir_fany_nequal3 = { |
741 |
741 |
2, |
2, |
742 |
742 |
{3,3}, |
{3,3}, |
743 |
743 |
{NIR_TYPE_FLOAT32,NIR_TYPE_FLOAT32}, |
{NIR_TYPE_FLOAT32,NIR_TYPE_FLOAT32}, |
744 |
|
NIR_OP_ALGEBRAIC_PROPERTIES_COMMUTATIVE |
|
|
744 |
|
NIR_OP_ALGEBRAIC_PROPERTIES_2SRC_COMMUTATIVE |
745 |
745 |
}; |
}; |
746 |
746 |
static struct nir_op nir_fany_nequal4 = { |
static struct nir_op nir_fany_nequal4 = { |
747 |
747 |
"fany_nequal4", |
"fany_nequal4", |
|
... |
... |
static struct nir_op nir_fany_nequal4 = { |
751 |
751 |
2, |
2, |
752 |
752 |
{4,4}, |
{4,4}, |
753 |
753 |
{NIR_TYPE_FLOAT32,NIR_TYPE_FLOAT32}, |
{NIR_TYPE_FLOAT32,NIR_TYPE_FLOAT32}, |
754 |
|
NIR_OP_ALGEBRAIC_PROPERTIES_COMMUTATIVE |
|
|
754 |
|
NIR_OP_ALGEBRAIC_PROPERTIES_2SRC_COMMUTATIVE |
755 |
755 |
}; |
}; |
756 |
756 |
static struct nir_op nir_fceil = { |
static struct nir_op nir_fceil = { |
757 |
757 |
"fceil", |
"fceil", |
|
... |
... |
static struct nir_op nir_fdiv = { |
851 |
851 |
2, |
2, |
852 |
852 |
{0,0}, |
{0,0}, |
853 |
853 |
{NIR_TYPE_FLOAT,NIR_TYPE_FLOAT}, |
{NIR_TYPE_FLOAT,NIR_TYPE_FLOAT}, |
854 |
|
NIR_OP_ALGEBRAIC_PROPERTIES_COMMUTATIVE |
|
|
854 |
|
NIR_OP_ALGEBRAIC_PROPERTIES_2SRC_COMMUTATIVE |
855 |
855 |
}; |
}; |
856 |
856 |
static struct nir_op nir_fdot2 = { |
static struct nir_op nir_fdot2 = { |
857 |
857 |
"fdot2", |
"fdot2", |
|
... |
... |
static struct nir_op nir_fdot2 = { |
861 |
861 |
2, |
2, |
862 |
862 |
{2,2}, |
{2,2}, |
863 |
863 |
{NIR_TYPE_FLOAT,NIR_TYPE_FLOAT}, |
{NIR_TYPE_FLOAT,NIR_TYPE_FLOAT}, |
864 |
|
NIR_OP_ALGEBRAIC_PROPERTIES_COMMUTATIVE |
|
|
864 |
|
NIR_OP_ALGEBRAIC_PROPERTIES_2SRC_COMMUTATIVE |
865 |
865 |
}; |
}; |
866 |
866 |
static struct nir_op nir_fdot3 = { |
static struct nir_op nir_fdot3 = { |
867 |
867 |
"fdot3", |
"fdot3", |
|
... |
... |
static struct nir_op nir_fdot3 = { |
871 |
871 |
2, |
2, |
872 |
872 |
{3,3}, |
{3,3}, |
873 |
873 |
{NIR_TYPE_FLOAT,NIR_TYPE_FLOAT}, |
{NIR_TYPE_FLOAT,NIR_TYPE_FLOAT}, |
874 |
|
NIR_OP_ALGEBRAIC_PROPERTIES_COMMUTATIVE |
|
|
874 |
|
NIR_OP_ALGEBRAIC_PROPERTIES_2SRC_COMMUTATIVE |
875 |
875 |
}; |
}; |
876 |
876 |
static struct nir_op nir_fdot4 = { |
static struct nir_op nir_fdot4 = { |
877 |
877 |
"fdot4", |
"fdot4", |
|
... |
... |
static struct nir_op nir_fdot4 = { |
881 |
881 |
2, |
2, |
882 |
882 |
{4,4}, |
{4,4}, |
883 |
883 |
{NIR_TYPE_FLOAT,NIR_TYPE_FLOAT}, |
{NIR_TYPE_FLOAT,NIR_TYPE_FLOAT}, |
884 |
|
NIR_OP_ALGEBRAIC_PROPERTIES_COMMUTATIVE |
|
|
884 |
|
NIR_OP_ALGEBRAIC_PROPERTIES_2SRC_COMMUTATIVE |
885 |
885 |
}; |
}; |
886 |
886 |
static struct nir_op nir_fdot_replicated2 = { |
static struct nir_op nir_fdot_replicated2 = { |
887 |
887 |
"fdot_replicated2", |
"fdot_replicated2", |
|
... |
... |
static struct nir_op nir_fdot_replicated2 = { |
891 |
891 |
2, |
2, |
892 |
892 |
{2,2}, |
{2,2}, |
893 |
893 |
{NIR_TYPE_FLOAT,NIR_TYPE_FLOAT}, |
{NIR_TYPE_FLOAT,NIR_TYPE_FLOAT}, |
894 |
|
NIR_OP_ALGEBRAIC_PROPERTIES_COMMUTATIVE |
|
|
894 |
|
NIR_OP_ALGEBRAIC_PROPERTIES_2SRC_COMMUTATIVE |
895 |
895 |
}; |
}; |
896 |
896 |
static struct nir_op nir_fdot_replicated3 = { |
static struct nir_op nir_fdot_replicated3 = { |
897 |
897 |
"fdot_replicated3", |
"fdot_replicated3", |
|
... |
... |
static struct nir_op nir_fdot_replicated3 = { |
901 |
901 |
2, |
2, |
902 |
902 |
{3,3}, |
{3,3}, |
903 |
903 |
{NIR_TYPE_FLOAT,NIR_TYPE_FLOAT}, |
{NIR_TYPE_FLOAT,NIR_TYPE_FLOAT}, |
904 |
|
NIR_OP_ALGEBRAIC_PROPERTIES_COMMUTATIVE |
|
|
904 |
|
NIR_OP_ALGEBRAIC_PROPERTIES_2SRC_COMMUTATIVE |
905 |
905 |
}; |
}; |
906 |
906 |
static struct nir_op nir_fdot_replicated4 = { |
static struct nir_op nir_fdot_replicated4 = { |
907 |
907 |
"fdot_replicated4", |
"fdot_replicated4", |
|
... |
... |
static struct nir_op nir_fdot_replicated4 = { |
911 |
911 |
2, |
2, |
912 |
912 |
{4,4}, |
{4,4}, |
913 |
913 |
{NIR_TYPE_FLOAT,NIR_TYPE_FLOAT}, |
{NIR_TYPE_FLOAT,NIR_TYPE_FLOAT}, |
914 |
|
NIR_OP_ALGEBRAIC_PROPERTIES_COMMUTATIVE |
|
|
914 |
|
NIR_OP_ALGEBRAIC_PROPERTIES_2SRC_COMMUTATIVE |
915 |
915 |
}; |
}; |
916 |
916 |
static struct nir_op nir_fdph = { |
static struct nir_op nir_fdph = { |
917 |
917 |
"fdph", |
"fdph", |
|
... |
... |
static struct nir_op nir_feq = { |
941 |
941 |
2, |
2, |
942 |
942 |
{0,0}, |
{0,0}, |
943 |
943 |
{NIR_TYPE_FLOAT,NIR_TYPE_FLOAT}, |
{NIR_TYPE_FLOAT,NIR_TYPE_FLOAT}, |
944 |
|
NIR_OP_ALGEBRAIC_PROPERTIES_COMMUTATIVE |
|
|
944 |
|
NIR_OP_ALGEBRAIC_PROPERTIES_2SRC_COMMUTATIVE |
945 |
945 |
}; |
}; |
946 |
946 |
static struct nir_op nir_feq32 = { |
static struct nir_op nir_feq32 = { |
947 |
947 |
"feq32", |
"feq32", |
|
... |
... |
static struct nir_op nir_feq32 = { |
951 |
951 |
2, |
2, |
952 |
952 |
{0,0}, |
{0,0}, |
953 |
953 |
{NIR_TYPE_FLOAT,NIR_TYPE_FLOAT}, |
{NIR_TYPE_FLOAT,NIR_TYPE_FLOAT}, |
954 |
|
NIR_OP_ALGEBRAIC_PROPERTIES_COMMUTATIVE |
|
|
954 |
|
NIR_OP_ALGEBRAIC_PROPERTIES_2SRC_COMMUTATIVE |
955 |
955 |
}; |
}; |
956 |
956 |
static struct nir_op nir_fexp2 = { |
static struct nir_op nir_fexp2 = { |
957 |
957 |
"fexp2", |
"fexp2", |
|
... |
... |
static struct nir_op nir_ffma = { |
981 |
981 |
3, |
3, |
982 |
982 |
{0,0,0}, |
{0,0,0}, |
983 |
983 |
{NIR_TYPE_FLOAT,NIR_TYPE_FLOAT,NIR_TYPE_FLOAT}, |
{NIR_TYPE_FLOAT,NIR_TYPE_FLOAT,NIR_TYPE_FLOAT}, |
984 |
|
0 |
|
|
984 |
|
NIR_OP_ALGEBRAIC_PROPERTIES_2SRC_COMMUTATIVE |
985 |
985 |
}; |
}; |
986 |
986 |
static struct nir_op nir_ffract = { |
static struct nir_op nir_ffract = { |
987 |
987 |
"ffract", |
"ffract", |
|
... |
... |
static struct nir_op nir_fmul = { |
1141 |
1141 |
2, |
2, |
1142 |
1142 |
{0,0}, |
{0,0}, |
1143 |
1143 |
{NIR_TYPE_FLOAT,NIR_TYPE_FLOAT}, |
{NIR_TYPE_FLOAT,NIR_TYPE_FLOAT}, |
1144 |
|
NIR_OP_ALGEBRAIC_PROPERTIES_COMMUTATIVE | NIR_OP_ALGEBRAIC_PROPERTIES_ASSOCIATIVE |
|
|
1144 |
|
NIR_OP_ALGEBRAIC_PROPERTIES_2SRC_COMMUTATIVE | NIR_OP_ALGEBRAIC_PROPERTIES_ASSOCIATIVE |
1145 |
1145 |
}; |
}; |
1146 |
1146 |
static struct nir_op nir_fne = { |
static struct nir_op nir_fne = { |
1147 |
1147 |
"fne", |
"fne", |
|
... |
... |
static struct nir_op nir_fne = { |
1151 |
1151 |
2, |
2, |
1152 |
1152 |
{0,0}, |
{0,0}, |
1153 |
1153 |
{NIR_TYPE_FLOAT,NIR_TYPE_FLOAT}, |
{NIR_TYPE_FLOAT,NIR_TYPE_FLOAT}, |
1154 |
|
NIR_OP_ALGEBRAIC_PROPERTIES_COMMUTATIVE |
|
|
1154 |
|
NIR_OP_ALGEBRAIC_PROPERTIES_2SRC_COMMUTATIVE |
1155 |
1155 |
}; |
}; |
1156 |
1156 |
static struct nir_op nir_fne32 = { |
static struct nir_op nir_fne32 = { |
1157 |
1157 |
"fne32", |
"fne32", |
|
... |
... |
static struct nir_op nir_fne32 = { |
1161 |
1161 |
2, |
2, |
1162 |
1162 |
{0,0}, |
{0,0}, |
1163 |
1163 |
{NIR_TYPE_FLOAT,NIR_TYPE_FLOAT}, |
{NIR_TYPE_FLOAT,NIR_TYPE_FLOAT}, |
1164 |
|
NIR_OP_ALGEBRAIC_PROPERTIES_COMMUTATIVE |
|
|
1164 |
|
NIR_OP_ALGEBRAIC_PROPERTIES_2SRC_COMMUTATIVE |
1165 |
1165 |
}; |
}; |
1166 |
1166 |
static struct nir_op nir_fneg = { |
static struct nir_op nir_fneg = { |
1167 |
1167 |
"fneg", |
"fneg", |
|
... |
... |
static struct nir_op nir_for = { |
1351 |
1351 |
2, |
2, |
1352 |
1352 |
{0,0}, |
{0,0}, |
1353 |
1353 |
{NIR_TYPE_FLOAT,NIR_TYPE_FLOAT}, |
{NIR_TYPE_FLOAT,NIR_TYPE_FLOAT}, |
1354 |
|
NIR_OP_ALGEBRAIC_PROPERTIES_COMMUTATIVE |
|
|
1354 |
|
NIR_OP_ALGEBRAIC_PROPERTIES_2SRC_COMMUTATIVE |
1355 |
1355 |
}; |
}; |
1356 |
1356 |
static struct nir_op nir_fpow = { |
static struct nir_op nir_fpow = { |
1357 |
1357 |
"fpow", |
"fpow", |
|
... |
... |
static struct nir_op nir_fxor = { |
1502 |
1502 |
2, |
2, |
1503 |
1503 |
{0,0}, |
{0,0}, |
1504 |
1504 |
{NIR_TYPE_FLOAT32,NIR_TYPE_FLOAT32}, |
{NIR_TYPE_FLOAT32,NIR_TYPE_FLOAT32}, |
1505 |
|
NIR_OP_ALGEBRAIC_PROPERTIES_COMMUTATIVE |
|
|
1505 |
|
NIR_OP_ALGEBRAIC_PROPERTIES_2SRC_COMMUTATIVE |
1506 |
1506 |
}; |
}; |
1507 |
1507 |
static struct nir_op nir_i2b1 = { |
static struct nir_op nir_i2b1 = { |
1508 |
1508 |
"i2b1", |
"i2b1", |
|
... |
... |
static struct nir_op nir_iadd = { |
1623 |
1623 |
2, |
2, |
1624 |
1624 |
{0,0}, |
{0,0}, |
1625 |
1625 |
{NIR_TYPE_INT,NIR_TYPE_INT}, |
{NIR_TYPE_INT,NIR_TYPE_INT}, |
1626 |
|
NIR_OP_ALGEBRAIC_PROPERTIES_COMMUTATIVE | NIR_OP_ALGEBRAIC_PROPERTIES_ASSOCIATIVE |
|
|
1626 |
|
NIR_OP_ALGEBRAIC_PROPERTIES_2SRC_COMMUTATIVE | NIR_OP_ALGEBRAIC_PROPERTIES_ASSOCIATIVE |
1627 |
1627 |
}; |
}; |
1628 |
1628 |
static struct nir_op nir_iadd_sat = { |
static struct nir_op nir_iadd_sat = { |
1629 |
1629 |
"iadd_sat", |
"iadd_sat", |
|
... |
... |
static struct nir_op nir_iadd_sat = { |
1633 |
1633 |
2, |
2, |
1634 |
1634 |
{0,0}, |
{0,0}, |
1635 |
1635 |
{NIR_TYPE_INT,NIR_TYPE_INT}, |
{NIR_TYPE_INT,NIR_TYPE_INT}, |
1636 |
|
NIR_OP_ALGEBRAIC_PROPERTIES_COMMUTATIVE |
|
|
1636 |
|
NIR_OP_ALGEBRAIC_PROPERTIES_2SRC_COMMUTATIVE |
1637 |
1637 |
}; |
}; |
1638 |
1638 |
static struct nir_op nir_iand = { |
static struct nir_op nir_iand = { |
1639 |
1639 |
"iand", |
"iand", |
|
... |
... |
static struct nir_op nir_iand = { |
1643 |
1643 |
2, |
2, |
1644 |
1644 |
{0,0}, |
{0,0}, |
1645 |
1645 |
{NIR_TYPE_UINT,NIR_TYPE_UINT}, |
{NIR_TYPE_UINT,NIR_TYPE_UINT}, |
1646 |
|
NIR_OP_ALGEBRAIC_PROPERTIES_COMMUTATIVE | NIR_OP_ALGEBRAIC_PROPERTIES_ASSOCIATIVE |
|
|
1646 |
|
NIR_OP_ALGEBRAIC_PROPERTIES_2SRC_COMMUTATIVE | NIR_OP_ALGEBRAIC_PROPERTIES_ASSOCIATIVE |
1647 |
1647 |
}; |
}; |
1648 |
1648 |
static struct nir_op nir_ibfe = { |
static struct nir_op nir_ibfe = { |
1649 |
1649 |
"ibfe", |
"ibfe", |
|
... |
... |
static struct nir_op nir_ieq = { |
1683 |
1683 |
2, |
2, |
1684 |
1684 |
{0,0}, |
{0,0}, |
1685 |
1685 |
{NIR_TYPE_INT,NIR_TYPE_INT}, |
{NIR_TYPE_INT,NIR_TYPE_INT}, |
1686 |
|
NIR_OP_ALGEBRAIC_PROPERTIES_COMMUTATIVE |
|
|
1686 |
|
NIR_OP_ALGEBRAIC_PROPERTIES_2SRC_COMMUTATIVE |
1687 |
1687 |
}; |
}; |
1688 |
1688 |
static struct nir_op nir_ieq32 = { |
static struct nir_op nir_ieq32 = { |
1689 |
1689 |
"ieq32", |
"ieq32", |
|
... |
... |
static struct nir_op nir_ieq32 = { |
1693 |
1693 |
2, |
2, |
1694 |
1694 |
{0,0}, |
{0,0}, |
1695 |
1695 |
{NIR_TYPE_INT,NIR_TYPE_INT}, |
{NIR_TYPE_INT,NIR_TYPE_INT}, |
1696 |
|
NIR_OP_ALGEBRAIC_PROPERTIES_COMMUTATIVE |
|
|
1696 |
|
NIR_OP_ALGEBRAIC_PROPERTIES_2SRC_COMMUTATIVE |
1697 |
1697 |
}; |
}; |
1698 |
1698 |
static struct nir_op nir_ifind_msb = { |
static struct nir_op nir_ifind_msb = { |
1699 |
1699 |
"ifind_msb", |
"ifind_msb", |
|
... |
... |
static struct nir_op nir_ihadd = { |
1733 |
1733 |
2, |
2, |
1734 |
1734 |
{0,0}, |
{0,0}, |
1735 |
1735 |
{NIR_TYPE_INT,NIR_TYPE_INT}, |
{NIR_TYPE_INT,NIR_TYPE_INT}, |
1736 |
|
NIR_OP_ALGEBRAIC_PROPERTIES_COMMUTATIVE |
|
|
1736 |
|
NIR_OP_ALGEBRAIC_PROPERTIES_2SRC_COMMUTATIVE |
1737 |
1737 |
}; |
}; |
1738 |
1738 |
static struct nir_op nir_ilt = { |
static struct nir_op nir_ilt = { |
1739 |
1739 |
"ilt", |
"ilt", |
|
... |
... |
static struct nir_op nir_imax = { |
1763 |
1763 |
2, |
2, |
1764 |
1764 |
{0,0}, |
{0,0}, |
1765 |
1765 |
{NIR_TYPE_INT,NIR_TYPE_INT}, |
{NIR_TYPE_INT,NIR_TYPE_INT}, |
1766 |
|
NIR_OP_ALGEBRAIC_PROPERTIES_COMMUTATIVE | NIR_OP_ALGEBRAIC_PROPERTIES_ASSOCIATIVE |
|
|
1766 |
|
NIR_OP_ALGEBRAIC_PROPERTIES_2SRC_COMMUTATIVE | NIR_OP_ALGEBRAIC_PROPERTIES_ASSOCIATIVE |
1767 |
1767 |
}; |
}; |
1768 |
1768 |
static struct nir_op nir_imax3 = { |
static struct nir_op nir_imax3 = { |
1769 |
1769 |
"imax3", |
"imax3", |
|
... |
... |
static struct nir_op nir_imin = { |
1793 |
1793 |
2, |
2, |
1794 |
1794 |
{0,0}, |
{0,0}, |
1795 |
1795 |
{NIR_TYPE_INT,NIR_TYPE_INT}, |
{NIR_TYPE_INT,NIR_TYPE_INT}, |
1796 |
|
NIR_OP_ALGEBRAIC_PROPERTIES_COMMUTATIVE | NIR_OP_ALGEBRAIC_PROPERTIES_ASSOCIATIVE |
|
|
1796 |
|
NIR_OP_ALGEBRAIC_PROPERTIES_2SRC_COMMUTATIVE | NIR_OP_ALGEBRAIC_PROPERTIES_ASSOCIATIVE |
1797 |
1797 |
}; |
}; |
1798 |
1798 |
static struct nir_op nir_imin3 = { |
static struct nir_op nir_imin3 = { |
1799 |
1799 |
"imin3", |
"imin3", |
|
... |
... |
static struct nir_op nir_imul = { |
1833 |
1833 |
2, |
2, |
1834 |
1834 |
{0,0}, |
{0,0}, |
1835 |
1835 |
{NIR_TYPE_INT,NIR_TYPE_INT}, |
{NIR_TYPE_INT,NIR_TYPE_INT}, |
1836 |
|
NIR_OP_ALGEBRAIC_PROPERTIES_COMMUTATIVE | NIR_OP_ALGEBRAIC_PROPERTIES_ASSOCIATIVE |
|
|
1836 |
|
NIR_OP_ALGEBRAIC_PROPERTIES_2SRC_COMMUTATIVE | NIR_OP_ALGEBRAIC_PROPERTIES_ASSOCIATIVE |
1837 |
1837 |
}; |
}; |
1838 |
1838 |
static struct nir_op nir_imul_2x32_64 = { |
static struct nir_op nir_imul_2x32_64 = { |
1839 |
1839 |
"imul_2x32_64", |
"imul_2x32_64", |
|
... |
... |
static struct nir_op nir_imul_2x32_64 = { |
1843 |
1843 |
2, |
2, |
1844 |
1844 |
{0,0}, |
{0,0}, |
1845 |
1845 |
{NIR_TYPE_INT32,NIR_TYPE_INT32}, |
{NIR_TYPE_INT32,NIR_TYPE_INT32}, |
1846 |
|
NIR_OP_ALGEBRAIC_PROPERTIES_COMMUTATIVE |
|
|
1846 |
|
NIR_OP_ALGEBRAIC_PROPERTIES_2SRC_COMMUTATIVE |
1847 |
1847 |
}; |
}; |
1848 |
1848 |
static struct nir_op nir_imul_high = { |
static struct nir_op nir_imul_high = { |
1849 |
1849 |
"imul_high", |
"imul_high", |
|
... |
... |
static struct nir_op nir_imul_high = { |
1853 |
1853 |
2, |
2, |
1854 |
1854 |
{0,0}, |
{0,0}, |
1855 |
1855 |
{NIR_TYPE_INT,NIR_TYPE_INT}, |
{NIR_TYPE_INT,NIR_TYPE_INT}, |
1856 |
|
NIR_OP_ALGEBRAIC_PROPERTIES_COMMUTATIVE |
|
|
1856 |
|
NIR_OP_ALGEBRAIC_PROPERTIES_2SRC_COMMUTATIVE |
1857 |
1857 |
}; |
}; |
1858 |
1858 |
static struct nir_op nir_ine = { |
static struct nir_op nir_ine = { |
1859 |
1859 |
"ine", |
"ine", |
|
... |
... |
static struct nir_op nir_ine = { |
1863 |
1863 |
2, |
2, |
1864 |
1864 |
{0,0}, |
{0,0}, |
1865 |
1865 |
{NIR_TYPE_INT,NIR_TYPE_INT}, |
{NIR_TYPE_INT,NIR_TYPE_INT}, |
1866 |
|
NIR_OP_ALGEBRAIC_PROPERTIES_COMMUTATIVE |
|
|
1866 |
|
NIR_OP_ALGEBRAIC_PROPERTIES_2SRC_COMMUTATIVE |
1867 |
1867 |
}; |
}; |
1868 |
1868 |
static struct nir_op nir_ine32 = { |
static struct nir_op nir_ine32 = { |
1869 |
1869 |
"ine32", |
"ine32", |
|
... |
... |
static struct nir_op nir_ine32 = { |
1873 |
1873 |
2, |
2, |
1874 |
1874 |
{0,0}, |
{0,0}, |
1875 |
1875 |
{NIR_TYPE_INT,NIR_TYPE_INT}, |
{NIR_TYPE_INT,NIR_TYPE_INT}, |
1876 |
|
NIR_OP_ALGEBRAIC_PROPERTIES_COMMUTATIVE |
|
|
1876 |
|
NIR_OP_ALGEBRAIC_PROPERTIES_2SRC_COMMUTATIVE |
1877 |
1877 |
}; |
}; |
1878 |
1878 |
static struct nir_op nir_ineg = { |
static struct nir_op nir_ineg = { |
1879 |
1879 |
"ineg", |
"ineg", |
|
... |
... |
static struct nir_op nir_ior = { |
1903 |
1903 |
2, |
2, |
1904 |
1904 |
{0,0}, |
{0,0}, |
1905 |
1905 |
{NIR_TYPE_UINT,NIR_TYPE_UINT}, |
{NIR_TYPE_UINT,NIR_TYPE_UINT}, |
1906 |
|
NIR_OP_ALGEBRAIC_PROPERTIES_COMMUTATIVE | NIR_OP_ALGEBRAIC_PROPERTIES_ASSOCIATIVE |
|
|
1906 |
|
NIR_OP_ALGEBRAIC_PROPERTIES_2SRC_COMMUTATIVE | NIR_OP_ALGEBRAIC_PROPERTIES_ASSOCIATIVE |
1907 |
1907 |
}; |
}; |
1908 |
1908 |
static struct nir_op nir_irem = { |
static struct nir_op nir_irem = { |
1909 |
1909 |
"irem", |
"irem", |
|
... |
... |
static struct nir_op nir_irhadd = { |
1923 |
1923 |
2, |
2, |
1924 |
1924 |
{0,0}, |
{0,0}, |
1925 |
1925 |
{NIR_TYPE_INT,NIR_TYPE_INT}, |
{NIR_TYPE_INT,NIR_TYPE_INT}, |
1926 |
|
NIR_OP_ALGEBRAIC_PROPERTIES_COMMUTATIVE |
|
|
1926 |
|
NIR_OP_ALGEBRAIC_PROPERTIES_2SRC_COMMUTATIVE |
1927 |
1927 |
}; |
}; |
1928 |
1928 |
static struct nir_op nir_ishl = { |
static struct nir_op nir_ishl = { |
1929 |
1929 |
"ishl", |
"ishl", |
|
... |
... |
static struct nir_op nir_ixor = { |
1983 |
1983 |
2, |
2, |
1984 |
1984 |
{0,0}, |
{0,0}, |
1985 |
1985 |
{NIR_TYPE_UINT,NIR_TYPE_UINT}, |
{NIR_TYPE_UINT,NIR_TYPE_UINT}, |
1986 |
|
NIR_OP_ALGEBRAIC_PROPERTIES_COMMUTATIVE | NIR_OP_ALGEBRAIC_PROPERTIES_ASSOCIATIVE |
|
|
1986 |
|
NIR_OP_ALGEBRAIC_PROPERTIES_2SRC_COMMUTATIVE | NIR_OP_ALGEBRAIC_PROPERTIES_ASSOCIATIVE |
1987 |
1987 |
}; |
}; |
1988 |
1988 |
static struct nir_op nir_ldexp = { |
static struct nir_op nir_ldexp = { |
1989 |
1989 |
"ldexp", |
"ldexp", |
|
... |
... |
static struct nir_op nir_seq = { |
2133 |
2133 |
2, |
2, |
2134 |
2134 |
{0,0}, |
{0,0}, |
2135 |
2135 |
{NIR_TYPE_FLOAT32,NIR_TYPE_FLOAT32}, |
{NIR_TYPE_FLOAT32,NIR_TYPE_FLOAT32}, |
2136 |
|
NIR_OP_ALGEBRAIC_PROPERTIES_COMMUTATIVE |
|
|
2136 |
|
NIR_OP_ALGEBRAIC_PROPERTIES_2SRC_COMMUTATIVE |
2137 |
2137 |
}; |
}; |
2138 |
2138 |
static struct nir_op nir_sge = { |
static struct nir_op nir_sge = { |
2139 |
2139 |
"sge", |
"sge", |
|
... |
... |
static struct nir_op nir_sne = { |
2163 |
2163 |
2, |
2, |
2164 |
2164 |
{0,0}, |
{0,0}, |
2165 |
2165 |
{NIR_TYPE_FLOAT32,NIR_TYPE_FLOAT32}, |
{NIR_TYPE_FLOAT32,NIR_TYPE_FLOAT32}, |
2166 |
|
NIR_OP_ALGEBRAIC_PROPERTIES_COMMUTATIVE |
|
|
2166 |
|
NIR_OP_ALGEBRAIC_PROPERTIES_2SRC_COMMUTATIVE |
2167 |
2167 |
}; |
}; |
2168 |
2168 |
static struct nir_op nir_u2f16 = { |
static struct nir_op nir_u2f16 = { |
2169 |
2169 |
"u2f16", |
"u2f16", |
|
... |
... |
static struct nir_op nir_uadd_carry = { |
2253 |
2253 |
2, |
2, |
2254 |
2254 |
{0,0}, |
{0,0}, |
2255 |
2255 |
{NIR_TYPE_UINT,NIR_TYPE_UINT}, |
{NIR_TYPE_UINT,NIR_TYPE_UINT}, |
2256 |
|
NIR_OP_ALGEBRAIC_PROPERTIES_COMMUTATIVE |
|
|
2256 |
|
NIR_OP_ALGEBRAIC_PROPERTIES_2SRC_COMMUTATIVE |
2257 |
2257 |
}; |
}; |
2258 |
2258 |
static struct nir_op nir_uadd_sat = { |
static struct nir_op nir_uadd_sat = { |
2259 |
2259 |
"uadd_sat", |
"uadd_sat", |
|
... |
... |
static struct nir_op nir_uadd_sat = { |
2263 |
2263 |
2, |
2, |
2264 |
2264 |
{0,0}, |
{0,0}, |
2265 |
2265 |
{NIR_TYPE_UINT,NIR_TYPE_UINT}, |
{NIR_TYPE_UINT,NIR_TYPE_UINT}, |
2266 |
|
NIR_OP_ALGEBRAIC_PROPERTIES_COMMUTATIVE |
|
|
2266 |
|
NIR_OP_ALGEBRAIC_PROPERTIES_2SRC_COMMUTATIVE |
2267 |
2267 |
}; |
}; |
2268 |
2268 |
static struct nir_op nir_ubfe = { |
static struct nir_op nir_ubfe = { |
2269 |
2269 |
"ubfe", |
"ubfe", |
|
... |
... |
static struct nir_op nir_uhadd = { |
2333 |
2333 |
2, |
2, |
2334 |
2334 |
{0,0}, |
{0,0}, |
2335 |
2335 |
{NIR_TYPE_UINT,NIR_TYPE_UINT}, |
{NIR_TYPE_UINT,NIR_TYPE_UINT}, |
2336 |
|
NIR_OP_ALGEBRAIC_PROPERTIES_COMMUTATIVE |
|
|
2336 |
|
NIR_OP_ALGEBRAIC_PROPERTIES_2SRC_COMMUTATIVE |
2337 |
2337 |
}; |
}; |
2338 |
2338 |
static struct nir_op nir_ult = { |
static struct nir_op nir_ult = { |
2339 |
2339 |
"ult", |
"ult", |
|
... |
... |
static struct nir_op nir_umax = { |
2363 |
2363 |
2, |
2, |
2364 |
2364 |
{0,0}, |
{0,0}, |
2365 |
2365 |
{NIR_TYPE_UINT,NIR_TYPE_UINT}, |
{NIR_TYPE_UINT,NIR_TYPE_UINT}, |
2366 |
|
NIR_OP_ALGEBRAIC_PROPERTIES_COMMUTATIVE | NIR_OP_ALGEBRAIC_PROPERTIES_ASSOCIATIVE |
|
|
2366 |
|
NIR_OP_ALGEBRAIC_PROPERTIES_2SRC_COMMUTATIVE | NIR_OP_ALGEBRAIC_PROPERTIES_ASSOCIATIVE |
2367 |
2367 |
}; |
}; |
2368 |
2368 |
static struct nir_op nir_umax3 = { |
static struct nir_op nir_umax3 = { |
2369 |
2369 |
"umax3", |
"umax3", |
|
... |
... |
static struct nir_op nir_umax_4x8 = { |
2383 |
2383 |
2, |
2, |
2384 |
2384 |
{0,0}, |
{0,0}, |
2385 |
2385 |
{NIR_TYPE_INT32,NIR_TYPE_INT32}, |
{NIR_TYPE_INT32,NIR_TYPE_INT32}, |
2386 |
|
NIR_OP_ALGEBRAIC_PROPERTIES_COMMUTATIVE | NIR_OP_ALGEBRAIC_PROPERTIES_ASSOCIATIVE |
|
|
2386 |
|
NIR_OP_ALGEBRAIC_PROPERTIES_2SRC_COMMUTATIVE | NIR_OP_ALGEBRAIC_PROPERTIES_ASSOCIATIVE |
2387 |
2387 |
}; |
}; |
2388 |
2388 |
static struct nir_op nir_umed3 = { |
static struct nir_op nir_umed3 = { |
2389 |
2389 |
"umed3", |
"umed3", |
|
... |
... |
static struct nir_op nir_umin = { |
2403 |
2403 |
2, |
2, |
2404 |
2404 |
{0,0}, |
{0,0}, |
2405 |
2405 |
{NIR_TYPE_UINT,NIR_TYPE_UINT}, |
{NIR_TYPE_UINT,NIR_TYPE_UINT}, |
2406 |
|
NIR_OP_ALGEBRAIC_PROPERTIES_COMMUTATIVE | NIR_OP_ALGEBRAIC_PROPERTIES_ASSOCIATIVE |
|
|
2406 |
|
NIR_OP_ALGEBRAIC_PROPERTIES_2SRC_COMMUTATIVE | NIR_OP_ALGEBRAIC_PROPERTIES_ASSOCIATIVE |
2407 |
2407 |
}; |
}; |
2408 |
2408 |
static struct nir_op nir_umin3 = { |
static struct nir_op nir_umin3 = { |
2409 |
2409 |
"umin3", |
"umin3", |
|
... |
... |
static struct nir_op nir_umin_4x8 = { |
2423 |
2423 |
2, |
2, |
2424 |
2424 |
{0,0}, |
{0,0}, |
2425 |
2425 |
{NIR_TYPE_UINT32, NIR_TYPE_UINT32}, |
{NIR_TYPE_UINT32, NIR_TYPE_UINT32}, |
2426 |
|
NIR_OP_ALGEBRAIC_PROPERTIES_COMMUTATIVE | NIR_OP_ALGEBRAIC_PROPERTIES_ASSOCIATIVE |
|
|
2426 |
|
NIR_OP_ALGEBRAIC_PROPERTIES_2SRC_COMMUTATIVE | NIR_OP_ALGEBRAIC_PROPERTIES_ASSOCIATIVE |
2427 |
2427 |
}; |
}; |
2428 |
2428 |
static struct nir_op nir_umod = { |
static struct nir_op nir_umod = { |
2429 |
2429 |
"umod", |
"umod", |
|
... |
... |
static struct nir_op nir_umul_2x32_64 = { |
2443 |
2443 |
2, |
2, |
2444 |
2444 |
{0,0}, |
{0,0}, |
2445 |
2445 |
{NIR_TYPE_UINT32,NIR_TYPE_UINT32}, |
{NIR_TYPE_UINT32,NIR_TYPE_UINT32}, |
2446 |
|
NIR_OP_ALGEBRAIC_PROPERTIES_COMMUTATIVE |
|
|
2446 |
|
NIR_OP_ALGEBRAIC_PROPERTIES_2SRC_COMMUTATIVE |
2447 |
2447 |
}; |
}; |
2448 |
2448 |
static struct nir_op nir_umul_high = { |
static struct nir_op nir_umul_high = { |
2449 |
2449 |
"umul_high", |
"umul_high", |
|
... |
... |
static struct nir_op nir_umul_high = { |
2453 |
2453 |
2, |
2, |
2454 |
2454 |
{0,0}, |
{0,0}, |
2455 |
2455 |
{NIR_TYPE_UINT,NIR_TYPE_UINT}, |
{NIR_TYPE_UINT,NIR_TYPE_UINT}, |
2456 |
|
NIR_OP_ALGEBRAIC_PROPERTIES_COMMUTATIVE |
|
|
2456 |
|
NIR_OP_ALGEBRAIC_PROPERTIES_2SRC_COMMUTATIVE |
2457 |
2457 |
}; |
}; |
2458 |
2458 |
static struct nir_op nir_umul_unorm_4x8 = { |
static struct nir_op nir_umul_unorm_4x8 = { |
2459 |
2459 |
"umul_unorm_4x8", |
"umul_unorm_4x8", |
|
... |
... |
static struct nir_op nir_umul_unorm_4x8 = { |
2463 |
2463 |
2, |
2, |
2464 |
2464 |
{0,0}, |
{0,0}, |
2465 |
2465 |
{NIR_TYPE_INT32,NIR_TYPE_INT32}, |
{NIR_TYPE_INT32,NIR_TYPE_INT32}, |
2466 |
|
NIR_OP_ALGEBRAIC_PROPERTIES_COMMUTATIVE | NIR_OP_ALGEBRAIC_PROPERTIES_ASSOCIATIVE |
|
|
2466 |
|
NIR_OP_ALGEBRAIC_PROPERTIES_2SRC_COMMUTATIVE | NIR_OP_ALGEBRAIC_PROPERTIES_ASSOCIATIVE |
2467 |
2467 |
}; |
}; |
2468 |
2468 |
static struct nir_op nir_unpack_32_2x16 = { |
static struct nir_op nir_unpack_32_2x16 = { |
2469 |
2469 |
"unpack_32_2x16", |
"unpack_32_2x16", |
|
... |
... |
static struct nir_op nir_urhadd = { |
2613 |
2613 |
2, |
2, |
2614 |
2614 |
{0,0}, |
{0,0}, |
2615 |
2615 |
{NIR_TYPE_UINT,NIR_TYPE_UINT}, |
{NIR_TYPE_UINT,NIR_TYPE_UINT}, |
2616 |
|
NIR_OP_ALGEBRAIC_PROPERTIES_COMMUTATIVE |
|
|
2616 |
|
NIR_OP_ALGEBRAIC_PROPERTIES_2SRC_COMMUTATIVE |
2617 |
2617 |
}; |
}; |
2618 |
2618 |
static struct nir_op nir_usadd_4x8 = { |
static struct nir_op nir_usadd_4x8 = { |
2619 |
2619 |
"usadd_4x8", |
"usadd_4x8", |
|
... |
... |
static struct nir_op nir_usadd_4x8 = { |
2623 |
2623 |
2, |
2, |
2624 |
2624 |
{0,0}, |
{0,0}, |
2625 |
2625 |
{NIR_TYPE_INT32,NIR_TYPE_INT32}, |
{NIR_TYPE_INT32,NIR_TYPE_INT32}, |
2626 |
|
NIR_OP_ALGEBRAIC_PROPERTIES_COMMUTATIVE | NIR_OP_ALGEBRAIC_PROPERTIES_ASSOCIATIVE |
|
|
2626 |
|
NIR_OP_ALGEBRAIC_PROPERTIES_2SRC_COMMUTATIVE | NIR_OP_ALGEBRAIC_PROPERTIES_ASSOCIATIVE |
2627 |
2627 |
}; |
}; |
2628 |
2628 |
static struct nir_op nir_ushr = { |
static struct nir_op nir_ushr = { |
2629 |
2629 |
"ushr", |
"ushr", |