@@ -237,108 +237,82 @@ class SplatComplexPattern<Operand opclass, ValueType ty, int numops, string fn,
237
237
}
238
238
239
239
def vsplati8_uimm3 : SplatComplexPattern<vsplat_uimm3, v16i8, 1,
240
- "selectVSplatUimm<3>",
241
- [build_vector, bitconvert]>;
240
+ "selectVSplatUimm<3>">;
242
241
243
242
def vsplati8_uimm4 : SplatComplexPattern<vsplat_uimm4, v16i8, 1,
244
- "selectVSplatUimm<4>",
245
- [build_vector, bitconvert]>;
243
+ "selectVSplatUimm<4>">;
246
244
247
245
def vsplati8_uimm5 : SplatComplexPattern<vsplat_uimm5, v16i8, 1,
248
- "selectVSplatUimm<5>",
249
- [build_vector, bitconvert]>;
246
+ "selectVSplatUimm<5>">;
250
247
251
248
def vsplati8_uimm8 : SplatComplexPattern<vsplat_uimm8, v16i8, 1,
252
- "selectVSplatUimm<8>",
253
- [build_vector, bitconvert]>;
249
+ "selectVSplatUimm<8>">;
254
250
255
251
def vsplati8_simm5 : SplatComplexPattern<vsplat_simm5, v16i8, 1,
256
- "selectVSplatSimm<5>",
257
- [build_vector, bitconvert]>;
252
+ "selectVSplatSimm<5>">;
258
253
259
254
def vsplati16_uimm3 : SplatComplexPattern<vsplat_uimm3, v8i16, 1,
260
- "selectVSplatUimm<3>",
261
- [build_vector, bitconvert]>;
255
+ "selectVSplatUimm<3>">;
262
256
263
257
def vsplati16_uimm4 : SplatComplexPattern<vsplat_uimm4, v8i16, 1,
264
- "selectVSplatUimm<4>",
265
- [build_vector, bitconvert]>;
258
+ "selectVSplatUimm<4>">;
266
259
267
260
def vsplati16_uimm5 : SplatComplexPattern<vsplat_uimm5, v8i16, 1,
268
- "selectVSplatUimm<5>",
269
- [build_vector, bitconvert]>;
261
+ "selectVSplatUimm<5>">;
270
262
271
263
def vsplati16_simm5 : SplatComplexPattern<vsplat_simm5, v8i16, 1,
272
- "selectVSplatSimm<5>",
273
- [build_vector, bitconvert]>;
264
+ "selectVSplatSimm<5>">;
274
265
275
266
def vsplati32_uimm2 : SplatComplexPattern<vsplat_uimm2, v4i32, 1,
276
- "selectVSplatUimm<2>",
277
- [build_vector, bitconvert]>;
267
+ "selectVSplatUimm<2>">;
278
268
279
269
def vsplati32_uimm5 : SplatComplexPattern<vsplat_uimm5, v4i32, 1,
280
- "selectVSplatUimm<5>",
281
- [build_vector, bitconvert]>;
270
+ "selectVSplatUimm<5>">;
282
271
283
272
def vsplati32_simm5 : SplatComplexPattern<vsplat_simm5, v4i32, 1,
284
- "selectVSplatSimm<5>",
285
- [build_vector, bitconvert]>;
273
+ "selectVSplatSimm<5>">;
286
274
287
275
def vsplati64_uimm1 : SplatComplexPattern<vsplat_uimm1, v2i64, 1,
288
- "selectVSplatUimm<1>",
289
- [build_vector, bitconvert]>;
276
+ "selectVSplatUimm<1>">;
290
277
291
278
def vsplati64_uimm5 : SplatComplexPattern<vsplat_uimm5, v2i64, 1,
292
- "selectVSplatUimm<5>",
293
- [build_vector, bitconvert]>;
279
+ "selectVSplatUimm<5>">;
294
280
295
281
def vsplati64_uimm6 : SplatComplexPattern<vsplat_uimm6, v2i64, 1,
296
- "selectVSplatUimm<6>",
297
- [build_vector, bitconvert]>;
282
+ "selectVSplatUimm<6>">;
298
283
299
284
def vsplati64_simm5 : SplatComplexPattern<vsplat_simm5, v2i64, 1,
300
- "selectVSplatSimm<5>",
301
- [build_vector, bitconvert]>;
285
+ "selectVSplatSimm<5>">;
302
286
303
287
// Any build_vector that is a constant splat with a value that is an exact
304
288
// power of 2
305
- def vsplat_uimm_pow2 : ComplexPattern<vAny, 1, "selectVSplatUimmPow2",
306
- [build_vector, bitconvert]>;
289
+ def vsplat_uimm_pow2 : ComplexPattern<vAny, 1, "selectVSplatUimmPow2">;
307
290
308
291
// Any build_vector that is a constant splat with a value that is the bitwise
309
292
// inverse of an exact power of 2
310
- def vsplat_uimm_inv_pow2 : ComplexPattern<vAny, 1, "selectVSplatUimmInvPow2",
311
- [build_vector, bitconvert]>;
293
+ def vsplat_uimm_inv_pow2 : ComplexPattern<vAny, 1, "selectVSplatUimmInvPow2">;
312
294
313
295
// Any build_vector that is a constant splat with only a consecutive sequence
314
296
// of left-most bits set.
315
297
def vsplat_maskl_bits_uimm3
316
- : SplatComplexPattern<vsplat_uimm3, vAny, 1, "selectVSplatMaskL",
317
- [build_vector, bitconvert]>;
298
+ : SplatComplexPattern<vsplat_uimm3, vAny, 1, "selectVSplatMaskL">;
318
299
def vsplat_maskl_bits_uimm4
319
- : SplatComplexPattern<vsplat_uimm4, vAny, 1, "selectVSplatMaskL",
320
- [build_vector, bitconvert]>;
300
+ : SplatComplexPattern<vsplat_uimm4, vAny, 1, "selectVSplatMaskL">;
321
301
def vsplat_maskl_bits_uimm5
322
- : SplatComplexPattern<vsplat_uimm5, vAny, 1, "selectVSplatMaskL",
323
- [build_vector, bitconvert]>;
302
+ : SplatComplexPattern<vsplat_uimm5, vAny, 1, "selectVSplatMaskL">;
324
303
def vsplat_maskl_bits_uimm6
325
- : SplatComplexPattern<vsplat_uimm6, vAny, 1, "selectVSplatMaskL",
326
- [build_vector, bitconvert]>;
304
+ : SplatComplexPattern<vsplat_uimm6, vAny, 1, "selectVSplatMaskL">;
327
305
328
306
// Any build_vector that is a constant splat with only a consecutive sequence
329
307
// of right-most bits set.
330
308
def vsplat_maskr_bits_uimm3
331
- : SplatComplexPattern<vsplat_uimm3, vAny, 1, "selectVSplatMaskR",
332
- [build_vector, bitconvert]>;
309
+ : SplatComplexPattern<vsplat_uimm3, vAny, 1, "selectVSplatMaskR">;
333
310
def vsplat_maskr_bits_uimm4
334
- : SplatComplexPattern<vsplat_uimm4, vAny, 1, "selectVSplatMaskR",
335
- [build_vector, bitconvert]>;
311
+ : SplatComplexPattern<vsplat_uimm4, vAny, 1, "selectVSplatMaskR">;
336
312
def vsplat_maskr_bits_uimm5
337
- : SplatComplexPattern<vsplat_uimm5, vAny, 1, "selectVSplatMaskR",
338
- [build_vector, bitconvert]>;
313
+ : SplatComplexPattern<vsplat_uimm5, vAny, 1, "selectVSplatMaskR">;
339
314
def vsplat_maskr_bits_uimm6
340
- : SplatComplexPattern<vsplat_uimm6, vAny, 1, "selectVSplatMaskR",
341
- [build_vector, bitconvert]>;
315
+ : SplatComplexPattern<vsplat_uimm6, vAny, 1, "selectVSplatMaskR">;
342
316
343
317
344
318
def vbclr : PatFrag<(ops node:$ws, node:$wt),
0 commit comments