Lines Matching refs:Vt
46 def Combinev: OutPatFrag<(ops node:$Vs, node:$Vt),
47 (REG_SEQUENCE HvxWR, $Vs, vsub_hi, $Vt, vsub_lo)>;
290 def: Pat<(VecPI8 (concat_vectors HVI8:$Vs, HVI8:$Vt)),
291 (Combinev HvxVR:$Vt, HvxVR:$Vs)>;
292 def: Pat<(VecPI16 (concat_vectors HVI16:$Vs, HVI16:$Vt)),
293 (Combinev HvxVR:$Vt, HvxVR:$Vs)>;
294 def: Pat<(VecPI32 (concat_vectors HVI32:$Vs, HVI32:$Vt)),
295 (Combinev HvxVR:$Vt, HvxVR:$Vs)>;
326 def: Pat<(VecPF16 (concat_vectors HVF16:$Vs, HVF16:$Vt)),
327 (Combinev HvxVR:$Vt, HvxVR:$Vs)>;
328 def: Pat<(VecPF32 (concat_vectors HVF32:$Vs, HVF32:$Vt)),
329 (Combinev HvxVR:$Vt, HvxVR:$Vs)>;
414 def: Pat<(vselect HQ8:$Qu, HVI8:$Vs, HVI8:$Vt),
415 (V6_vmux HvxQR:$Qu, HvxVR:$Vs, HvxVR:$Vt)>;
416 def: Pat<(vselect HQ16:$Qu, HVI16:$Vs, HVI16:$Vt),
417 (V6_vmux HvxQR:$Qu, HvxVR:$Vs, HvxVR:$Vt)>;
418 def: Pat<(vselect HQ32:$Qu, HVI32:$Vs, HVI32:$Vt),
419 (V6_vmux HvxQR:$Qu, HvxVR:$Vs, HvxVR:$Vt)>;
421 def: Pat<(vselect (qnot HQ8:$Qu), HVI8:$Vs, HVI8:$Vt),
422 (V6_vmux HvxQR:$Qu, HvxVR:$Vt, HvxVR:$Vs)>;
423 def: Pat<(vselect (qnot HQ16:$Qu), HVI16:$Vs, HVI16:$Vt),
424 (V6_vmux HvxQR:$Qu, HvxVR:$Vt, HvxVR:$Vs)>;
425 def: Pat<(vselect (qnot HQ32:$Qu), HVI32:$Vs, HVI32:$Vt),
426 (V6_vmux HvxQR:$Qu, HvxVR:$Vt, HvxVR:$Vs)>;
493 def: Pat<(vselect HQ16:$Qu, HVF16:$Vs, HVF16:$Vt),
494 (V6_vmux HvxQR:$Qu, HvxVR:$Vs, HvxVR:$Vt)>;
495 def: Pat<(vselect (qnot HQ16:$Qu), HVF16:$Vs, HVF16:$Vt),
496 (V6_vmux HvxQR:$Qu, HvxVR:$Vt, HvxVR:$Vs)>;
498 def: Pat<(vselect HQ32:$Qu, HVF32:$Vs, HVF32:$Vt),
499 (V6_vmux HvxQR:$Qu, HvxVR:$Vs, HvxVR:$Vt)>;
500 def: Pat<(vselect (qnot HQ32:$Qu), HVF32:$Vs, HVF32:$Vt),
501 (V6_vmux HvxQR:$Qu, HvxVR:$Vt, HvxVR:$Vs)>;
531 // For i8 vectors Vs = (a0, a1, ...), Vt = (b0, b1, ...),
532 // V6_vmpybv Vs, Vt produces a pair of i16 vectors Hi:Lo,
534 def: Pat<(mul HVI8:$Vs, HVI8:$Vt),
535 (V6_vshuffeb (HiVec (V6_vmpybv HvxVR:$Vs, HvxVR:$Vt)),
536 (LoVec (V6_vmpybv HvxVR:$Vs, HvxVR:$Vt)))>;
537 def: Pat<(mul HVI16:$Vs, HVI16:$Vt),
538 (V6_vmpyih HvxVR:$Vs, HvxVR:$Vt)>;
539 def: Pat<(mul HVI32:$Vs, HVI32:$Vt),
540 (V6_vmpyiewuh_acc (V6_vmpyieoh HvxVR:$Vs, HvxVR:$Vt),
541 HvxVR:$Vs, HvxVR:$Vt)>;
607 // Take a pair of vectors Vt:Vs and shift them towards LSB by (Rt & HwLen).
608 def: Pat<(VecI8 (valign HVI8:$Vt, HVI8:$Vs, I32:$Rt)),
609 (LoVec (V6_valignb HvxVR:$Vt, HvxVR:$Vs, I32:$Rt))>;
610 def: Pat<(VecI16 (valign HVI16:$Vt, HVI16:$Vs, I32:$Rt)),
611 (LoVec (V6_valignb HvxVR:$Vt, HvxVR:$Vs, I32:$Rt))>;
612 def: Pat<(VecI32 (valign HVI32:$Vt, HVI32:$Vs, I32:$Rt)),
613 (LoVec (V6_valignb HvxVR:$Vt, HvxVR:$Vs, I32:$Rt))>;
637 def: Pat<(shl HVI8:$Vs, HVI8:$Vt),
638 (V6_vshuffeb (V6_vaslhv (HiVec (V6_vzb $Vs)), (HiVec (V6_vzb $Vt))),
639 (V6_vaslhv (LoVec (V6_vzb $Vs)), (LoVec (V6_vzb $Vt))))>;
640 def: Pat<(sra HVI8:$Vs, HVI8:$Vt),
641 (V6_vshuffeb (V6_vasrhv (HiVec (V6_vsb $Vs)), (HiVec (V6_vzb $Vt))),
642 (V6_vasrhv (LoVec (V6_vsb $Vs)), (LoVec (V6_vzb $Vt))))>;
643 def: Pat<(srl HVI8:$Vs, HVI8:$Vt),
644 (V6_vshuffeb (V6_vlsrhv (HiVec (V6_vzb $Vs)), (HiVec (V6_vzb $Vt))),
645 (V6_vlsrhv (LoVec (V6_vzb $Vs)), (LoVec (V6_vzb $Vt))))>;
647 def: Pat<(shl HVI16:$Vs, HVI16:$Vt), (V6_vaslhv HvxVR:$Vs, HvxVR:$Vt)>;
648 def: Pat<(shl HVI32:$Vs, HVI32:$Vt), (V6_vaslwv HvxVR:$Vs, HvxVR:$Vt)>;
649 def: Pat<(sra HVI16:$Vs, HVI16:$Vt), (V6_vasrhv HvxVR:$Vs, HvxVR:$Vt)>;
650 def: Pat<(sra HVI32:$Vs, HVI32:$Vt), (V6_vasrwv HvxVR:$Vs, HvxVR:$Vt)>;
651 def: Pat<(srl HVI16:$Vs, HVI16:$Vt), (V6_vlsrhv HvxVR:$Vs, HvxVR:$Vt)>;
652 def: Pat<(srl HVI32:$Vs, HVI32:$Vt), (V6_vlsrwv HvxVR:$Vs, HvxVR:$Vt)>;
759 : Pat<(select I1:$Pu, RegPred:$Vs, RegPred:$Vt),
760 (MI I1:$Pu, RegPred:$Vs, RegPred:$Vt)>;
908 def: Pat<(VecQ16 (setone HVF16:$Vt, HVF16:$Vu)),
909 (V6_pred_not (V6_veqh HvxVR:$Vt, HvxVR:$Vu))>;
911 def: Pat<(VecQ32 (setone HVF32:$Vt, HVF32:$Vu)),
912 (V6_pred_not (V6_veqw HvxVR:$Vt, HvxVR:$Vu))>;