summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorkrebbel <krebbel@138bc75d-0d04-0410-961f-82ee72b054a4>2012-12-20 15:20:06 +0000
committerkrebbel <krebbel@138bc75d-0d04-0410-961f-82ee72b054a4>2012-12-20 15:20:06 +0000
commitb42c8b6f200b3923d2dc0a00301a9fdaf50a3328 (patch)
tree3fffded1757ced8661367ad75f348d611b857dc1
parentbd83c8ab8d8c65c3a18f449ede7ba2abef6d1c33 (diff)
downloadppe42-gcc-b42c8b6f200b3923d2dc0a00301a9fdaf50a3328.tar.gz
ppe42-gcc-b42c8b6f200b3923d2dc0a00301a9fdaf50a3328.zip
2012-12-20 Andreas Krebbel <Andreas.Krebbel@de.ibm.com>
PR target/55754 * config/arm/arm.c (arm_canonicalize_comparison): Remove op0_preserve_value check for zero_extend to and transformation. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@194636 138bc75d-0d04-0410-961f-82ee72b054a4
-rw-r--r--gcc/ChangeLog6
-rw-r--r--gcc/config/arm/arm.c3
2 files changed, 7 insertions, 2 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog
index ca9844f4b44..5c51847eb15 100644
--- a/gcc/ChangeLog
+++ b/gcc/ChangeLog
@@ -1,3 +1,9 @@
+2012-12-20 Andreas Krebbel <Andreas.Krebbel@de.ibm.com>
+
+ PR target/55754
+ * config/arm/arm.c (arm_canonicalize_comparison): Remove
+ op0_preserve_value check for zero_extend to and transformation.
+
2012-12-20 Teresa Johnson <tejohnson@google.com>
Jakub Jelinek <jakub@redhat.com>
diff --git a/gcc/config/arm/arm.c b/gcc/config/arm/arm.c
index be4428b9206..4484bc92364 100644
--- a/gcc/config/arm/arm.c
+++ b/gcc/config/arm/arm.c
@@ -3619,8 +3619,7 @@ arm_canonicalize_comparison (int *code, rtx *op0, rtx *op1,
/* If *op0 is (zero_extend:SI (subreg:QI (reg:SI) 0)) and comparing
with const0_rtx, change it to (and:SI (reg:SI) (const_int 255)),
to facilitate possible combining with a cmp into 'ands'. */
- if (!op0_preserve_value
- && mode == SImode
+ if (mode == SImode
&& GET_CODE (*op0) == ZERO_EXTEND
&& GET_CODE (XEXP (*op0, 0)) == SUBREG
&& GET_MODE (XEXP (*op0, 0)) == QImode
OpenPOWER on IntegriCloud