aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorYvan Roux <yvan.roux@st.com>2010-12-20 17:16:38 +0000
committerRichard Earnshaw <rearnsha@gcc.gnu.org>2010-12-20 17:16:38 +0000
commitee102849bdd062adb177361b125500c07d415e78 (patch)
treeb08112cebb4bebc25e493df0dec27eea369b1716
parent5b64bab91ca37ca020ec89eea7debc228435e7ad (diff)
downloadgcc-ee102849bdd062adb177361b125500c07d415e78.zip
gcc-ee102849bdd062adb177361b125500c07d415e78.tar.gz
gcc-ee102849bdd062adb177361b125500c07d415e78.tar.bz2
lib1funcs.asm (ARM_DIV_BODY case __OPTIMIZE_SIZE__): Fix condition on IT instruction for early termination.
2010-12-20 Yvan Roux <yvan.roux@st.com> * config/arm/lib1funcs.asm (ARM_DIV_BODY case __OPTIMIZE_SIZE__): Fix condition on IT instruction for early termination. From-SVN: r168088
-rw-r--r--gcc/ChangeLog5
-rw-r--r--gcc/config/arm/lib1funcs.asm2
2 files changed, 6 insertions, 1 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog
index 5d4ea42..4b57bdf 100644
--- a/gcc/ChangeLog
+++ b/gcc/ChangeLog
@@ -1,3 +1,8 @@
+2010-12-20 Yvan Roux <yvan.roux@st.com>
+
+ * config/arm/lib1funcs.asm (ARM_DIV_BODY case __OPTIMIZE_SIZE__): Fix
+ condition on IT instruction for early termination.
+
2010-12-20 Joseph Myers <joseph@codesourcery.com>
* config/rs6000/freebsd.h (SVR4_ASM_SPEC): Don't define.
diff --git a/gcc/config/arm/lib1funcs.asm b/gcc/config/arm/lib1funcs.asm
index 085e690..2e76c01 100644
--- a/gcc/config/arm/lib1funcs.asm
+++ b/gcc/config/arm/lib1funcs.asm
@@ -641,7 +641,7 @@ pc .req r15
subhs \dividend, \dividend, \divisor, lsr #3
orrhs \result, \result, \curbit, lsr #3
cmp \dividend, #0 @ Early termination?
- do_it hs, t
+ do_it ne, t
movnes \curbit, \curbit, lsr #4 @ No, any more bits to do?
movne \divisor, \divisor, lsr #4
bne 1b