@@ -2620,11 +2620,21 @@ defm CASLT : CompareAndSwapUnprivileged<0b11, 0, 1, "l">;
26202620defm CASAT : CompareAndSwapUnprivileged<0b11, 1, 0, "a">;
26212621defm CASALT : CompareAndSwapUnprivileged<0b11, 1, 1, "al">;
26222622
2623+ def : MnemonicAlias<"cas", "cast">;
2624+ def : MnemonicAlias<"casl", "caslt">;
2625+ def : MnemonicAlias<"casa", "casat">;
2626+ def : MnemonicAlias<"casal", "casalt">;
2627+
26232628// v9.6-a atomic CASPT
26242629defm CASPT : CompareAndSwapPairUnprivileged<0b01, 0, 0, "">;
26252630defm CASPLT : CompareAndSwapPairUnprivileged<0b01, 0, 1, "l">;
26262631defm CASPAT : CompareAndSwapPairUnprivileged<0b01, 1, 0, "a">;
26272632defm CASPALT : CompareAndSwapPairUnprivileged<0b01, 1, 1, "al">;
2633+
2634+ def : MnemonicAlias<"casp", "caspt">;
2635+ def : MnemonicAlias<"caspl", "casplt">;
2636+ def : MnemonicAlias<"caspa", "caspat">;
2637+ def : MnemonicAlias<"caspal", "caspalt">;
26282638}
26292639
26302640// v8.1 atomic SWP
@@ -2639,6 +2649,11 @@ let Predicates = [HasLSUI] in {
26392649 defm SWPTA : SwapLSUI<1, 0, "a">;
26402650 defm SWPTL : SwapLSUI<0, 1, "l">;
26412651 defm SWPTAL : SwapLSUI<1, 1, "al">;
2652+
2653+ def : MnemonicAlias<"swp", "swpt">;
2654+ def : MnemonicAlias<"swpa", "swpta">;
2655+ def : MnemonicAlias<"swpl", "swptl">;
2656+ def : MnemonicAlias<"swpal", "swptal">;
26422657}
26432658
26442659// v9.6-a unprivileged atomic LD<OP> (FEAT_LSUI)
@@ -4112,7 +4127,7 @@ defm STNPD : StorePairNoAlloc<0b01, 1, FPR64Op, simm7s8, "stnp">;
41124127defm STNPQ : StorePairNoAlloc<0b10, 1, FPR128Op, simm7s16, "stnp">;
41134128}
41144129
4115- // Armv9.6-a Load/store no-allocate pair (FEAT_LSUI)
4130+ // Armv9.6-a Load/store pair (FEAT_LSUI)
41164131let Predicates = [HasLSUI] in {
41174132 defm LDTP : LoadPairOffset<0b11, 0, GPR64z, simm7s8, "ldtp">;
41184133 def LDTPpre : LoadPairPreIdx<0b11, 0, GPR64z, simm7s8, "ldtp">;
@@ -4126,7 +4141,7 @@ let Predicates = [HasLSUI] in {
41264141 def STTPpost : StorePairPostIdx<0b11, 0, GPR64z, simm7s8, "sttp">;
41274142}
41284143
4129- let Predicates = [HasLSUI, HasFPARMv8 ] in {
4144+ let Predicates = [HasLSUI, HasNEON ] in {
41304145 defm LDTPQ : LoadPairOffset<0b11, 1, FPR128Op, simm7s16, "ldtp">;
41314146 def LDTPQpre : LoadPairPreIdx<0b11, 1, FPR128Op, simm7s16, "ldtp">;
41324147 def LDTPQpost : LoadPairPostIdx<0b11, 1, FPR128Op, simm7s16, "ldtp">;
@@ -4784,14 +4799,22 @@ let Predicates = [HasLSUI] in {
47844799defm LDTXRW : LoadUnprivilegedLSUI<0b10, GPR32, "ldtxr">;
47854800defm LDTXRX : LoadUnprivilegedLSUI<0b11, GPR64, "ldtxr">;
47864801
4802+ def : MnemonicAlias<"ldxr", "ldtxr">;
4803+
47874804def LDATXRW : LoadExclusiveLSUI <0b10, 1, 1, GPR32, "ldatxr">;
47884805def LDATXRX : LoadExclusiveLSUI <0b11, 1, 1, GPR64, "ldatxr">;
47894806
4807+ def : MnemonicAlias<"ldaxr", "ldatxr">;
4808+
47904809defm STTXRW : StoreUnprivilegedLSUI<0b10, GPR32, "sttxr">;
47914810defm STTXRX : StoreUnprivilegedLSUI<0b11, GPR64, "sttxr">;
47924811
4812+ def : MnemonicAlias<"stxr", "sttxr">;
4813+
47934814def STLTXRW : StoreExclusiveLSUI<0b10, 0, 1, GPR32, "stltxr">;
47944815def STLTXRX : StoreExclusiveLSUI<0b11, 0, 1, GPR64, "stltxr">;
4816+
4817+ def : MnemonicAlias<"stlxr", "stltxr">;
47954818}
47964819
47974820//===----------------------------------------------------------------------===//
0 commit comments