diff options
Diffstat (limited to 'recipes-devtools/gcc/gcc-4.5/arm-lib1funcs.as-fix-mismatch-between-conditions-of-an-IT-block.patch')
-rw-r--r-- | recipes-devtools/gcc/gcc-4.5/arm-lib1funcs.as-fix-mismatch-between-conditions-of-an-IT-block.patch | 18 |
1 files changed, 18 insertions, 0 deletions
diff --git a/recipes-devtools/gcc/gcc-4.5/arm-lib1funcs.as-fix-mismatch-between-conditions-of-an-IT-block.patch b/recipes-devtools/gcc/gcc-4.5/arm-lib1funcs.as-fix-mismatch-between-conditions-of-an-IT-block.patch new file mode 100644 index 0000000000..39c90e7e74 --- /dev/null +++ b/recipes-devtools/gcc/gcc-4.5/arm-lib1funcs.as-fix-mismatch-between-conditions-of-an-IT-block.patch | |||
@@ -0,0 +1,18 @@ | |||
1 | Fix for http://gcc.gnu.org/bugzilla/show_bug.cgi?id=43999 | ||
2 | |||
3 | http://patchwork.ozlabs.org/patch/72260/ is the patch that made into | ||
4 | upstream gcc | ||
5 | |||
6 | diff --git a/gcc/config/arm/lib1funcs.asm b/gcc/config/arm/lib1funcs.asm | ||
7 | index 085e690..2e76c01 100644 | ||
8 | --- a/gcc/config/arm/lib1funcs.asm | ||
9 | +++ b/gcc/config/arm/lib1funcs.asm | ||
10 | @@ -641,7 +641,7 @@ pc .req r15 | ||
11 | subhs \dividend, \dividend, \divisor, lsr #3 | ||
12 | orrhs \result, \result, \curbit, lsr #3 | ||
13 | cmp \dividend, #0 @ Early termination? | ||
14 | - do_it hs, t | ||
15 | + do_it ne, t | ||
16 | movnes \curbit, \curbit, lsr #4 @ No, any more bits to do? | ||
17 | movne \divisor, \divisor, lsr #4 | ||
18 | bne 1b | ||