aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorRichard Earnshaw <rearnsha@arm.com>2009-05-16 12:53:22 +0000
committerRichard Earnshaw <rearnsha@gcc.gnu.org>2009-05-16 12:53:22 +0000
commit70544f4432779bad70c93beaf404a34479f6fdd8 (patch)
tree80c89e019841e42321f9c2a2a304ec37bca323e8
parent6241ded1e771666f978cafab9ae5e27f3b41977a (diff)
downloadgcc-70544f4432779bad70c93beaf404a34479f6fdd8.zip
gcc-70544f4432779bad70c93beaf404a34479f6fdd8.tar.gz
gcc-70544f4432779bad70c93beaf404a34479f6fdd8.tar.bz2
re PR target/40153 (Long long comparison optimized away incorrectly in Thumb code.)
PR target/40153 * arm.md (cstoresi_nltu_thumb1): Use a neg of ltu as the pattern name implies. From-SVN: r147613
-rw-r--r--gcc/ChangeLog6
-rw-r--r--gcc/config/arm/arm.md2
2 files changed, 7 insertions, 1 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog
index a53a2e0..b130e14 100644
--- a/gcc/ChangeLog
+++ b/gcc/ChangeLog
@@ -1,5 +1,11 @@
2009-05-16 Richard Earnshaw <rearnsha@arm.com>
+ PR target/40153
+ * arm.md (cstoresi_nltu_thumb1): Use a neg of ltu as the pattern name
+ implies.
+
+2009-05-16 Richard Earnshaw <rearnsha@arm.com>
+
* arm.md (movdi2): Copy non-reg values to DImode registers.
2009-05-16 Jakub Jelinek <jakub@redhat.com>
diff --git a/gcc/config/arm/arm.md b/gcc/config/arm/arm.md
index 0561940..2b2d703 100644
--- a/gcc/config/arm/arm.md
+++ b/gcc/config/arm/arm.md
@@ -7977,7 +7977,7 @@
(define_insn "cstoresi_nltu_thumb1"
[(set (match_operand:SI 0 "s_register_operand" "=l,l")
- (neg:SI (gtu:SI (match_operand:SI 1 "s_register_operand" "l,*h")
+ (neg:SI (ltu:SI (match_operand:SI 1 "s_register_operand" "l,*h")
(match_operand:SI 2 "thumb1_cmp_operand" "lI*h,*r"))))]
"TARGET_THUMB1"
"cmp\\t%1, %2\;sbc\\t%0, %0, %0"