diff options
author | Yvan Roux <yvan.roux@st.com> | 2010-12-20 17:16:38 +0000 |
---|---|---|
committer | Richard Earnshaw <rearnsha@gcc.gnu.org> | 2010-12-20 17:16:38 +0000 |
commit | ee102849bdd062adb177361b125500c07d415e78 (patch) | |
tree | b08112cebb4bebc25e493df0dec27eea369b1716 | |
parent | 5b64bab91ca37ca020ec89eea7debc228435e7ad (diff) | |
download | gcc-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/ChangeLog | 5 | ||||
-rw-r--r-- | gcc/config/arm/lib1funcs.asm | 2 |
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 |