aboutsummaryrefslogtreecommitdiff
path: root/gcc
diff options
context:
space:
mode:
authorJan Beulich <jbeulich@novell.com>2005-12-05 08:38:20 +0000
committerJan Beulich <jbeulich@gcc.gnu.org>2005-12-05 08:38:20 +0000
commit51094457ec3361ca6e5c8a14d42810ae13515c95 (patch)
tree72184257946c0f1e8864e6ff28b8b192914c096a /gcc
parent4000debbd3c06e98c2d0c67fdf6372e35b1908f0 (diff)
downloadgcc-51094457ec3361ca6e5c8a14d42810ae13515c95.zip
gcc-51094457ec3361ca6e5c8a14d42810ae13515c95.tar.gz
gcc-51094457ec3361ca6e5c8a14d42810ae13515c95.tar.bz2
ia64.md (rotlsi3_internal): Don't split if rotating by 16 bits.
2005-12-05 Jan Beulich <jbeulich@novell.com> * config/ia64/ia64.md (rotlsi3_internal): Don't split if rotating by 16 bits. Provide insn pattern for this case. From-SVN: r108047
Diffstat (limited to 'gcc')
-rw-r--r--gcc/ChangeLog5
-rw-r--r--gcc/config/ia64/ia64.md7
2 files changed, 9 insertions, 3 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog
index 5ba3377..d397e4f 100644
--- a/gcc/ChangeLog
+++ b/gcc/ChangeLog
@@ -1,5 +1,10 @@
2005-12-05 Jan Beulich <jbeulich@novell.com>
+ * config/ia64/ia64.md (rotlsi3_internal): Don't split if rotating by
+ 16 bits. Provide insn pattern for this case.
+
+2005-12-05 Jan Beulich <jbeulich@novell.com>
+
* libgcc2.c (__popcountSI2): Don't use wide type for iterator and
result.
(__popcountDI2): Likewise.
diff --git a/gcc/config/ia64/ia64.md b/gcc/config/ia64/ia64.md
index 989a4fd..afe3e53 100644
--- a/gcc/config/ia64/ia64.md
+++ b/gcc/config/ia64/ia64.md
@@ -4453,8 +4453,8 @@
(rotate:SI (match_operand:SI 1 "gr_register_operand" "r")
(match_operand:SI 2 "shift_32bit_count_operand" "n")))]
""
- "#"
- "reload_completed"
+ "mux2 %0 = %1, 0xe1"
+ "reload_completed && INTVAL (operands[2]) != 16"
[(set (match_dup 3)
(ior:DI (zero_extend:DI (match_dup 1))
(ashift:DI (zero_extend:DI (match_dup 1)) (const_int 32))))
@@ -4463,7 +4463,8 @@
{
operands[3] = gen_rtx_REG (DImode, REGNO (operands[0]));
operands[2] = GEN_INT (32 - INTVAL (operands[2]));
-})
+}
+ [(set_attr "itanium_class" "mmshf")])
;; ::::::::::::::::::::
;; ::