aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAndrew Pinski <apinski@cavium.com>2014-12-05 19:44:47 +0000
committerAndrew Pinski <pinskia@gcc.gnu.org>2014-12-05 11:44:47 -0800
commit7eb2bd57189fdcadc28b6df963d33b82178b4585 (patch)
tree192bcdf1ab65311dadd6c755290de720b2866455
parent63edbb04b27db1e230d536ad5a07e7cebd6a5ed7 (diff)
downloadgcc-7eb2bd57189fdcadc28b6df963d33b82178b4585.zip
gcc-7eb2bd57189fdcadc28b6df963d33b82178b4585.tar.gz
gcc-7eb2bd57189fdcadc28b6df963d33b82178b4585.tar.bz2
aarch64-simd-builtins.def (bswap): Use CF2 rather than CF10 so 2 is appended on the code.
2014-12-05 Andrew Pinski <apinski@cavium.com> * config/aarch64/aarch64-simd-builtins.def (bswap): Use CF2 rather than CF10 so 2 is appended on the code. * config/aarch64/aarch64-simd.md (bswap<mode>): Rename to ... (bswap<mode>2): This so it matches for the optabs. From-SVN: r218435
-rw-r--r--gcc/ChangeLog7
-rw-r--r--gcc/config/aarch64/aarch64-simd-builtins.def2
-rw-r--r--gcc/config/aarch64/aarch64-simd.md4
3 files changed, 10 insertions, 3 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog
index d037551..48e713b 100644
--- a/gcc/ChangeLog
+++ b/gcc/ChangeLog
@@ -1,3 +1,10 @@
+2014-12-05 Andrew Pinski <apinski@cavium.com>
+
+ * config/aarch64/aarch64-simd-builtins.def (bswap): Use CF2 rather
+ than CF10 so 2 is appended on the code.
+ * config/aarch64/aarch64-simd.md (bswap<mode>): Rename to ...
+ (bswap<mode>2): This so it matches for the optabs.
+
2014-12-05 Thomas Preud'homme <thomas.preudhomme@arm.com>
* regrename.c (find_best_rename_reg): Rename to ...
diff --git a/gcc/config/aarch64/aarch64-simd-builtins.def b/gcc/config/aarch64/aarch64-simd-builtins.def
index 4eb70ff..503fa2c 100644
--- a/gcc/config/aarch64/aarch64-simd-builtins.def
+++ b/gcc/config/aarch64/aarch64-simd-builtins.def
@@ -317,7 +317,7 @@
VAR1 (UNOP, floatunsv4si, 2, v4sf)
VAR1 (UNOP, floatunsv2di, 2, v2df)
- VAR5 (UNOPU, bswap, 10, v4hi, v8hi, v2si, v4si, v2di)
+ VAR5 (UNOPU, bswap, 2, v4hi, v8hi, v2si, v4si, v2di)
BUILTIN_VB (UNOP, rbit, 0)
diff --git a/gcc/config/aarch64/aarch64-simd.md b/gcc/config/aarch64/aarch64-simd.md
index 0ec1323..4995e4d 100644
--- a/gcc/config/aarch64/aarch64-simd.md
+++ b/gcc/config/aarch64/aarch64-simd.md
@@ -287,7 +287,7 @@
[(set_attr "type" "neon_mul_<Vetype><q>")]
)
-(define_insn "bswap<mode>"
+(define_insn "bswap<mode>2"
[(set (match_operand:VDQHSD 0 "register_operand" "=w")
(bswap:VDQHSD (match_operand:VDQHSD 1 "register_operand" "w")))]
"TARGET_SIMD"
@@ -309,7 +309,7 @@
(ctz:VS (match_operand:VS 1 "register_operand")))]
"TARGET_SIMD"
{
- emit_insn (gen_bswap<mode> (operands[0], operands[1]));
+ emit_insn (gen_bswap<mode>2 (operands[0], operands[1]));
rtx op0_castsi2qi = simplify_gen_subreg(<VS:VSI2QI>mode, operands[0],
<MODE>mode, 0);
emit_insn (gen_aarch64_rbit<VS:vsi2qi> (op0_castsi2qi, op0_castsi2qi));