Lines Matching refs:Rd
450 def : InstAlias<"movz $Rd, $sym", (MOVZXi GPR64:$Rd, movz_symbol_g3:$sym, 48)>;
451 def : InstAlias<"movz $Rd, $sym", (MOVZXi GPR64:$Rd, movz_symbol_g2:$sym, 32)>;
452 def : InstAlias<"movz $Rd, $sym", (MOVZXi GPR64:$Rd, movz_symbol_g1:$sym, 16)>;
453 def : InstAlias<"movz $Rd, $sym", (MOVZXi GPR64:$Rd, movz_symbol_g0:$sym, 0)>;
455 def : InstAlias<"movn $Rd, $sym", (MOVNXi GPR64:$Rd, movz_symbol_g3:$sym, 48)>;
456 def : InstAlias<"movn $Rd, $sym", (MOVNXi GPR64:$Rd, movz_symbol_g2:$sym, 32)>;
457 def : InstAlias<"movn $Rd, $sym", (MOVNXi GPR64:$Rd, movz_symbol_g1:$sym, 16)>;
458 def : InstAlias<"movn $Rd, $sym", (MOVNXi GPR64:$Rd, movz_symbol_g0:$sym, 0)>;
460 def : InstAlias<"movk $Rd, $sym", (MOVKXi GPR64:$Rd, movk_symbol_g3:$sym, 48)>;
461 def : InstAlias<"movk $Rd, $sym", (MOVKXi GPR64:$Rd, movk_symbol_g2:$sym, 32)>;
462 def : InstAlias<"movk $Rd, $sym", (MOVKXi GPR64:$Rd, movk_symbol_g1:$sym, 16)>;
463 def : InstAlias<"movk $Rd, $sym", (MOVKXi GPR64:$Rd, movk_symbol_g0:$sym, 0)>;
465 def : InstAlias<"movz $Rd, $sym", (MOVZWi GPR32:$Rd, movz_symbol_g1:$sym, 16)>;
466 def : InstAlias<"movz $Rd, $sym", (MOVZWi GPR32:$Rd, movz_symbol_g0:$sym, 0)>;
468 def : InstAlias<"movn $Rd, $sym", (MOVNWi GPR32:$Rd, movz_symbol_g1:$sym, 16)>;
469 def : InstAlias<"movn $Rd, $sym", (MOVNWi GPR32:$Rd, movz_symbol_g0:$sym, 0)>;
471 def : InstAlias<"movk $Rd, $sym", (MOVKWi GPR32:$Rd, movk_symbol_g1:$sym, 16)>;
472 def : InstAlias<"movk $Rd, $sym", (MOVKWi GPR32:$Rd, movk_symbol_g0:$sym, 0)>;
474 // Final group of aliases covers true "mov $Rd, $imm" cases.
488 def : InstAlias<"mov $Rd, $imm",
489 (INST GPR:$Rd, !cast<Operand>(NAME # "_movimm"):$imm, shift)>;
930 def : InstAlias<"rev64 $Rd, $Rn", (REVXr GPR64:$Rd, GPR64:$Rn), 0>;
2489 def FMOVS0 : Pseudo<(outs FPR32:$Rd), (ins), [(set f32:$Rd, (fpimm0))]>,
2490 PseudoInstExpansion<(FMOVWSr FPR32:$Rd, WZR)>,
2492 def FMOVD0 : Pseudo<(outs FPR64:$Rd), (ins), [(set f64:$Rd, (fpimm0))]>,
2493 PseudoInstExpansion<(FMOVXDr FPR64:$Rd, XZR)>,
2613 def F128CSEL : Pseudo<(outs FPR128:$Rd),
2615 [(set (f128 FPR128:$Rd),
2732 def : Pat<(concat_vectors V64:$Rd,
2734 (FCVTNv8i16 (INSERT_SUBREG (IMPLICIT_DEF), V64:$Rd, dsub), V128:$Rn)>;
2737 def : Pat<(concat_vectors V64:$Rd, (v2f32 (fround (v2f64 V128:$Rn)))),
2738 (FCVTNv4i32 (INSERT_SUBREG (IMPLICIT_DEF), V64:$Rd, dsub), V128:$Rn)>;
2887 def : Pat<(v2f32 (fma (fneg V64:$Rn), V64:$Rm, V64:$Rd)),
2888 (FMLSv2f32 V64:$Rd, V64:$Rn, V64:$Rm)>;
2890 def : Pat<(v4f32 (fma (fneg V128:$Rn), V128:$Rm, V128:$Rd)),
2891 (FMLSv4f32 V128:$Rd, V128:$Rn, V128:$Rm)>;
2893 def : Pat<(v2f64 (fma (fneg V128:$Rn), V128:$Rm, V128:$Rd)),
2894 (FMLSv2f64 V128:$Rd, V128:$Rn, V128:$Rm)>;
2960 def : Pat<(AArch64bsl (v8i8 V64:$Rd), V64:$Rn, V64:$Rm),
2961 (BSLv8i8 V64:$Rd, V64:$Rn, V64:$Rm)>;
2962 def : Pat<(AArch64bsl (v4i16 V64:$Rd), V64:$Rn, V64:$Rm),
2963 (BSLv8i8 V64:$Rd, V64:$Rn, V64:$Rm)>;
2964 def : Pat<(AArch64bsl (v2i32 V64:$Rd), V64:$Rn, V64:$Rm),
2965 (BSLv8i8 V64:$Rd, V64:$Rn, V64:$Rm)>;
2966 def : Pat<(AArch64bsl (v1i64 V64:$Rd), V64:$Rn, V64:$Rm),
2967 (BSLv8i8 V64:$Rd, V64:$Rn, V64:$Rm)>;
2969 def : Pat<(AArch64bsl (v16i8 V128:$Rd), V128:$Rn, V128:$Rm),
2970 (BSLv16i8 V128:$Rd, V128:$Rn, V128:$Rm)>;
2971 def : Pat<(AArch64bsl (v8i16 V128:$Rd), V128:$Rn, V128:$Rm),
2972 (BSLv16i8 V128:$Rd, V128:$Rn, V128:$Rm)>;
2973 def : Pat<(AArch64bsl (v4i32 V128:$Rd), V128:$Rn, V128:$Rm),
2974 (BSLv16i8 V128:$Rd, V128:$Rn, V128:$Rm)>;
2975 def : Pat<(AArch64bsl (v2i64 V128:$Rd), V128:$Rn, V128:$Rm),
2976 (BSLv16i8 V128:$Rd, V128:$Rn, V128:$Rm)>;
3199 (i32 FPR32:$Rd),
3202 (SQRDMLAHv1i32 FPR32:$Rd, FPR32:$Rn, FPR32:$Rm)>;
3204 (i32 FPR32:$Rd),
3207 (SQRDMLSHv1i32 FPR32:$Rd, FPR32:$Rn, FPR32:$Rm)>;
3243 def : Pat<(i64 (int_aarch64_neon_sqadd (i64 FPR64:$Rd),
3246 (SQDMLALi32 FPR64:$Rd, FPR32:$Rn, FPR32:$Rm)>;
3247 def : Pat<(i64 (int_aarch64_neon_sqsub (i64 FPR64:$Rd),
3250 (SQDMLSLi32 FPR64:$Rd, FPR32:$Rn, FPR32:$Rm)>;
3487 def : Pat<(v8i16 (opnode (v8i16 V128:$Rd), (v8i8 V64:$Rn), (v8i8 V64:$Rm))),
3488 (INST8B V128:$Rd, V64:$Rn, V64:$Rm)>;
3489 def : Pat<(v4i32 (opnode (v4i32 V128:$Rd), (v4i16 V64:$Rn), (v4i16 V64:$Rm))),
3490 (INST4H V128:$Rd, V64:$Rn, V64:$Rm)>;
3491 def : Pat<(v2i64 (opnode (v2i64 V128:$Rd), (v2i32 V64:$Rn), (v2i32 V64:$Rm))),
3492 (INST2S V128:$Rd, V64:$Rn, V64:$Rm)>;
3527 def : Pat<(concat_vectors (v8i8 V64:$Rd),
3530 (ADDHNv8i16_v16i8 (SUBREG_TO_REG (i32 0), V64:$Rd, dsub),
3532 def : Pat<(concat_vectors (v4i16 V64:$Rd),
3535 (ADDHNv4i32_v8i16 (SUBREG_TO_REG (i32 0), V64:$Rd, dsub),
3537 def : Pat<(concat_vectors (v2i32 V64:$Rd),
3540 (ADDHNv2i64_v4i32 (SUBREG_TO_REG (i32 0), V64:$Rd, dsub),
3552 def : Pat<(concat_vectors (v8i8 V64:$Rd),
3555 (SUBHNv8i16_v16i8 (SUBREG_TO_REG (i32 0), V64:$Rd, dsub),
3557 def : Pat<(concat_vectors (v4i16 V64:$Rd),
3560 (SUBHNv4i32_v8i16 (SUBREG_TO_REG (i32 0), V64:$Rd, dsub),
3562 def : Pat<(concat_vectors (v2i32 V64:$Rd),
3565 (SUBHNv2i64_v4i32 (SUBREG_TO_REG (i32 0), V64:$Rd, dsub),
3636 def : Pat<(v8i8 (int_aarch64_neon_tbx1 (v8i8 V64:$Rd),
3638 (TBXv8i8One V64:$Rd, VecListOne128:$Rn, V64:$Ri)>;
3639 def : Pat<(v16i8 (int_aarch64_neon_tbx1 (v16i8 V128:$Rd),
3641 (TBXv16i8One V128:$Rd, V128:$Ri, V128:$Rn)>;
3988 : Pat<(DstTy (concat_vectors (SrcTy V64:$Rd), V64:$Rn)),
3989 (INSvi64lane (INSERT_SUBREG (IMPLICIT_DEF), V64:$Rd, dsub), 1,
4275 [(set (v2f64 V128:$Rd), (AArch64fmov imm0_255:$imm8))]>;
4278 [(set (v2f32 V64:$Rd), (AArch64fmov imm0_255:$imm8))]>;
4281 [(set (v4f32 V128:$Rd), (AArch64fmov imm0_255:$imm8))]>;
4285 [(set (v4f16 V64:$Rd), (AArch64fmov imm0_255:$imm8))]>;
4288 [(set (v8f16 V128:$Rd), (AArch64fmov imm0_255:$imm8))]>;
4296 [(set FPR64:$Rd, simdimmtype10:$imm8)]>;
4320 [(set (v2i64 V128:$Rd), (AArch64movi_edit imm0_255:$imm8))]>;
4371 [(set (v2i32 V64:$Rd),
4374 [(set (v4i32 V128:$Rd),
4380 [(set (v8i8 V64:$Rd), (AArch64movi imm0_255:$imm8))]>;
4383 [(set (v16i8 V128:$Rd), (AArch64movi imm0_255:$imm8))]>;
4411 [(set (v2i32 V64:$Rd),
4414 [(set (v4i32 V128:$Rd),
4448 def : Pat<(v2f32 (OpNode (v2f32 V64:$Rd), (v2f32 V64:$Rn),
4451 (FMLSv2i32_indexed V64:$Rd, V64:$Rn, V128:$Rm, VectorIndexS:$idx)>;
4452 def : Pat<(v2f32 (OpNode (v2f32 V64:$Rd), (v2f32 V64:$Rn),
4458 (FMLSv2i32_indexed V64:$Rd, V64:$Rn,
4461 def : Pat<(v2f32 (OpNode (v2f32 V64:$Rd), (v2f32 V64:$Rn),
4463 (FMLSv2i32_indexed V64:$Rd, V64:$Rn,
4468 def : Pat<(v4f32 (OpNode (v4f32 V128:$Rd), (v4f32 V128:$Rn),
4471 (FMLSv4i32_indexed V128:$Rd, V128:$Rn, V128:$Rm,
4473 def : Pat<(v4f32 (OpNode (v4f32 V128:$Rd), (v4f32 V128:$Rn),
4479 (FMLSv4i32_indexed V128:$Rd, V128:$Rn,
4482 def : Pat<(v4f32 (OpNode (v4f32 V128:$Rd), (v4f32 V128:$Rn),
4484 (FMLSv4i32_indexed V128:$Rd, V128:$Rn,
4489 def : Pat<(v2f64 (OpNode (v2f64 V128:$Rd), (v2f64 V128:$Rn),
4493 V128:$Rd, V128:$Rn, V128:$Rm, VectorIndexS:$idx)>;
4494 def : Pat<(v2f64 (OpNode (v2f64 V128:$Rd), (v2f64 V128:$Rn),
4496 (FMLSv2i64_indexed V128:$Rd, V128:$Rn,
4500 def : Pat<(f32 (OpNode (f32 FPR32:$Rd), (f32 FPR32:$Rn),
4503 (FMLSv1i32_indexed FPR32:$Rd, FPR32:$Rn,
4505 def : Pat<(f32 (OpNode (f32 FPR32:$Rd), (f32 FPR32:$Rn),
4510 (FMLSv1i32_indexed FPR32:$Rd, FPR32:$Rn,
4514 def : Pat<(f64 (OpNode (f64 FPR64:$Rd), (f64 FPR64:$Rn),
4517 (FMLSv1i64_indexed FPR64:$Rd, FPR64:$Rn,
4665 def : Pat<(v1i64 (int_aarch64_neon_vsli (v1i64 FPR64:$Rd), (v1i64 FPR64:$Rn),
4667 (SLId FPR64:$Rd, FPR64:$Rn, vecshiftL64:$imm)>;
4679 def : Pat<(v1i64 (int_aarch64_neon_vsri (v1i64 FPR64:$Rd), (v1i64 FPR64:$Rn),
4681 (SRId FPR64:$Rd, FPR64:$Rn, vecshiftR64:$imm)>;
4719 def : Pat<(v16i8 (concat_vectors (v8i8 V64:$Rd),
4722 (SHRNv16i8_shift (INSERT_SUBREG (IMPLICIT_DEF), V64:$Rd, dsub),
4724 def : Pat<(v8i16 (concat_vectors (v4i16 V64:$Rd),
4727 (SHRNv8i16_shift (INSERT_SUBREG (IMPLICIT_DEF), V64:$Rd, dsub),
4729 def : Pat<(v4i32 (concat_vectors (v2i32 V64:$Rd),
4732 (SHRNv4i32_shift (INSERT_SUBREG (IMPLICIT_DEF), V64:$Rd, dsub),
5032 : Pat<(vector_insert (VTy VecListOne128:$Rd),
5034 (LD1 VecListOne128:$Rd, VecIndex:$idx, GPR64sp:$Rn)>;
5046 : Pat<(vector_insert (VTy VecListOne64:$Rd),
5049 (LD1 (SUBREG_TO_REG (i32 0), VecListOne64:$Rd, dsub),