@@ -1053,13 +1053,6 @@ def AArch64umaxv : SDNode<"AArch64ISD::UMAXV", SDT_AArch64UnaryVec>;
1053
1053
def AArch64uaddlv : SDNode<"AArch64ISD::UADDLV", SDT_AArch64uaddlp>;
1054
1054
def AArch64saddlv : SDNode<"AArch64ISD::SADDLV", SDT_AArch64uaddlp>;
1055
1055
1056
- def AArch64uabd : PatFrags<(ops node:$lhs, node:$rhs),
1057
- [(abdu node:$lhs, node:$rhs),
1058
- (int_aarch64_neon_uabd node:$lhs, node:$rhs)]>;
1059
- def AArch64sabd : PatFrags<(ops node:$lhs, node:$rhs),
1060
- [(abds node:$lhs, node:$rhs),
1061
- (int_aarch64_neon_sabd node:$lhs, node:$rhs)]>;
1062
-
1063
1056
// Add Pairwise of two vectors
1064
1057
def AArch64addp_n : SDNode<"AArch64ISD::ADDP", SDT_AArch64Zip>;
1065
1058
// Add Long Pairwise
@@ -5667,8 +5660,7 @@ let Predicates = [HasFullFP16] in {
5667
5660
// Advanced SIMD two vector instructions.
5668
5661
//===----------------------------------------------------------------------===//
5669
5662
5670
- defm UABDL : SIMDLongThreeVectorBHSabdl<1, 0b0111, "uabdl",
5671
- AArch64uabd>;
5663
+ defm UABDL : SIMDLongThreeVectorBHSabdl<1, 0b0111, "uabdl", abdu>;
5672
5664
// Match UABDL in log2-shuffle patterns.
5673
5665
def : Pat<(abs (v8i16 (sub (zext (v8i8 V64:$opA)),
5674
5666
(zext (v8i8 V64:$opB))))),
@@ -6018,8 +6010,8 @@ defm MLS : SIMDThreeSameVectorBHSTied<1, 0b10010, "mls", null_frag>;
6018
6010
defm MUL : SIMDThreeSameVectorBHS<0, 0b10011, "mul", mul>;
6019
6011
defm PMUL : SIMDThreeSameVectorB<1, 0b10011, "pmul", int_aarch64_neon_pmul>;
6020
6012
defm SABA : SIMDThreeSameVectorBHSTied<0, 0b01111, "saba",
6021
- TriOpFrag<(add node:$LHS, (AArch64sabd node:$MHS, node:$RHS))> >;
6022
- defm SABD : SIMDThreeSameVectorBHS<0,0b01110,"sabd", AArch64sabd >;
6013
+ TriOpFrag<(add node:$LHS, (abds node:$MHS, node:$RHS))> >;
6014
+ defm SABD : SIMDThreeSameVectorBHS<0,0b01110,"sabd", abds >;
6023
6015
defm SHADD : SIMDThreeSameVectorBHS<0,0b00000,"shadd", avgfloors>;
6024
6016
defm SHSUB : SIMDThreeSameVectorBHS<0,0b00100,"shsub", int_aarch64_neon_shsub>;
6025
6017
defm SMAXP : SIMDThreeSameVectorBHS<0,0b10100,"smaxp", int_aarch64_neon_smaxp>;
@@ -6037,8 +6029,8 @@ defm SRSHL : SIMDThreeSameVector<0,0b01010,"srshl", int_aarch64_neon_srshl>;
6037
6029
defm SSHL : SIMDThreeSameVector<0,0b01000,"sshl", int_aarch64_neon_sshl>;
6038
6030
defm SUB : SIMDThreeSameVector<1,0b10000,"sub", sub>;
6039
6031
defm UABA : SIMDThreeSameVectorBHSTied<1, 0b01111, "uaba",
6040
- TriOpFrag<(add node:$LHS, (AArch64uabd node:$MHS, node:$RHS))> >;
6041
- defm UABD : SIMDThreeSameVectorBHS<1,0b01110,"uabd", AArch64uabd >;
6032
+ TriOpFrag<(add node:$LHS, (abdu node:$MHS, node:$RHS))> >;
6033
+ defm UABD : SIMDThreeSameVectorBHS<1,0b01110,"uabd", abdu >;
6042
6034
defm UHADD : SIMDThreeSameVectorBHS<1,0b00000,"uhadd", avgflooru>;
6043
6035
defm UHSUB : SIMDThreeSameVectorBHS<1,0b00100,"uhsub", int_aarch64_neon_uhsub>;
6044
6036
defm UMAXP : SIMDThreeSameVectorBHS<1,0b10100,"umaxp", int_aarch64_neon_umaxp>;
@@ -6759,10 +6751,8 @@ defm SUBHN : SIMDNarrowThreeVectorBHS<0,0b0110,"subhn", int_aarch64_neon_subhn>
6759
6751
defm RADDHN : SIMDNarrowThreeVectorBHS<1,0b0100,"raddhn",int_aarch64_neon_raddhn>;
6760
6752
defm RSUBHN : SIMDNarrowThreeVectorBHS<1,0b0110,"rsubhn",int_aarch64_neon_rsubhn>;
6761
6753
defm PMULL : SIMDDifferentThreeVectorBD<0,0b1110,"pmull", AArch64pmull>;
6762
- defm SABAL : SIMDLongThreeVectorTiedBHSabal<0,0b0101,"sabal",
6763
- AArch64sabd>;
6764
- defm SABDL : SIMDLongThreeVectorBHSabdl<0, 0b0111, "sabdl",
6765
- AArch64sabd>;
6754
+ defm SABAL : SIMDLongThreeVectorTiedBHSabal<0,0b0101,"sabal", abds>;
6755
+ defm SABDL : SIMDLongThreeVectorBHSabdl<0, 0b0111, "sabdl", abds>;
6766
6756
defm SADDL : SIMDLongThreeVectorBHS< 0, 0b0000, "saddl",
6767
6757
BinOpFrag<(add (sext node:$LHS), (sext node:$RHS))>>;
6768
6758
defm SADDW : SIMDWideThreeVectorBHS< 0, 0b0001, "saddw",
@@ -6780,8 +6770,7 @@ defm SSUBL : SIMDLongThreeVectorBHS<0, 0b0010, "ssubl",
6780
6770
BinOpFrag<(sub (sext node:$LHS), (sext node:$RHS))>>;
6781
6771
defm SSUBW : SIMDWideThreeVectorBHS<0, 0b0011, "ssubw",
6782
6772
BinOpFrag<(sub node:$LHS, (sext node:$RHS))>>;
6783
- defm UABAL : SIMDLongThreeVectorTiedBHSabal<1, 0b0101, "uabal",
6784
- AArch64uabd>;
6773
+ defm UABAL : SIMDLongThreeVectorTiedBHSabal<1, 0b0101, "uabal", abdu>;
6785
6774
defm UADDL : SIMDLongThreeVectorBHS<1, 0b0000, "uaddl",
6786
6775
BinOpFrag<(add (zanyext node:$LHS), (zanyext node:$RHS))>>;
6787
6776
defm UADDW : SIMDWideThreeVectorBHS<1, 0b0001, "uaddw",
0 commit comments