aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAndrew Pinski <quic_apinski@quicinc.com>2024-07-22 15:39:37 -0700
committerAndrew Pinski <quic_apinski@quicinc.com>2024-07-26 09:55:07 -0700
commit795021d9bc8546ccc51bacc899b6077c6928067b (patch)
treef46a6ccae66ae5f7f7ac9d643dbd9ed60afc122c
parent7e8e8a745a0f3389c2ef7de5798932f5ac0f8c9d (diff)
downloadgcc-795021d9bc8546ccc51bacc899b6077c6928067b.zip
gcc-795021d9bc8546ccc51bacc899b6077c6928067b.tar.gz
gcc-795021d9bc8546ccc51bacc899b6077c6928067b.tar.bz2
aarch64: sve: Rename aarch64_bic to standard pattern, andn
Now there is an optab for bic, andn since r15-1890-gf379596e0ba99d. This moves aarch64_bic for sve over to use it instead. Note unlike the simd bic patterns, the operands were already in the order that was expected for the optab so no swapping was needed. Built and tested on aarch64-linux-gnu with no regressions. gcc/ChangeLog: * config/aarch64/aarch64-sve-builtins-base.cc (svbic_impl::expand): Update to use andn optab instead of using code_for_aarch64_bic. * config/aarch64/aarch64-sve.md (@aarch64_bic<mode>): Rename to ... (andn<mode>3): This. Signed-off-by: Andrew Pinski <quic_apinski@quicinc.com>
-rw-r--r--gcc/config/aarch64/aarch64-sve-builtins-base.cc2
-rw-r--r--gcc/config/aarch64/aarch64-sve.md4
2 files changed, 3 insertions, 3 deletions
diff --git a/gcc/config/aarch64/aarch64-sve-builtins-base.cc b/gcc/config/aarch64/aarch64-sve-builtins-base.cc
index aa26370..a226835 100644
--- a/gcc/config/aarch64/aarch64-sve-builtins-base.cc
+++ b/gcc/config/aarch64/aarch64-sve-builtins-base.cc
@@ -271,7 +271,7 @@ public:
}
if (e.pred == PRED_x)
- return e.use_unpred_insn (code_for_aarch64_bic (e.vector_mode (0)));
+ return e.use_unpred_insn (e.direct_optab_handler (andn_optab));
return e.use_cond_insn (code_for_cond_bic (e.vector_mode (0)));
}
diff --git a/gcc/config/aarch64/aarch64-sve.md b/gcc/config/aarch64/aarch64-sve.md
index 5331e71..c3ed507 100644
--- a/gcc/config/aarch64/aarch64-sve.md
+++ b/gcc/config/aarch64/aarch64-sve.md
@@ -4641,8 +4641,8 @@
;; - BIC
;; -------------------------------------------------------------------------
-;; Unpredicated BIC.
-(define_expand "@aarch64_bic<mode>"
+;; Unpredicated BIC; andn named pattern.
+(define_expand "andn<mode>3"
[(set (match_operand:SVE_I 0 "register_operand")
(and:SVE_I
(unspec:SVE_I