diff options
author | kaloz <kaloz@3c298f89-4303-0410-b956-a3cf2f4a3e73> | 2010-11-04 14:17:06 +0000 |
---|---|---|
committer | kaloz <kaloz@3c298f89-4303-0410-b956-a3cf2f4a3e73> | 2010-11-04 14:17:06 +0000 |
commit | 83cccb37e9c5a36b06bf0ad05df0b61ba7e75f34 (patch) | |
tree | 9503686e994b2c3ad2016ddd466e8568ef31ed44 /toolchain/gcc/patches/4.3.5/944-avr32_fix_f64_div.patch | |
parent | 61c948163d164c338de3bb040422b00c9a217f9b (diff) |
[toolchain]: add avr32 support to gcc 4.3.5
git-svn-id: svn://svn.openwrt.org/openwrt/trunk@23865 3c298f89-4303-0410-b956-a3cf2f4a3e73
Diffstat (limited to 'toolchain/gcc/patches/4.3.5/944-avr32_fix_f64_div.patch')
-rw-r--r-- | toolchain/gcc/patches/4.3.5/944-avr32_fix_f64_div.patch | 20 |
1 files changed, 20 insertions, 0 deletions
diff --git a/toolchain/gcc/patches/4.3.5/944-avr32_fix_f64_div.patch b/toolchain/gcc/patches/4.3.5/944-avr32_fix_f64_div.patch new file mode 100644 index 0000000000..fda520b47d --- /dev/null +++ b/toolchain/gcc/patches/4.3.5/944-avr32_fix_f64_div.patch @@ -0,0 +1,20 @@ +--- a/gcc/config/avr32/lib1funcs.S ++++ b/gcc/config/avr32/lib1funcs.S +@@ -1733,7 +1733,7 @@ __avr32_f64_div_round_subnormal: + brne 16f /* Return NaN if op1 is NaN */ + /* Op1 is inf check op2 */ + lsr r6, r9, 20 /* Extract exponent */ +- cbr r6, 8 /* Clear sign bit */ ++ cbr r6, 11 /* Clear sign bit */ + cp r6, 0x7ff + brne 17f /* Inf/number gives inf, return inf */ + rjmp 16f /* The rest gives NaN*/ +@@ -1849,7 +1849,7 @@ __avr32_f64_div_res_subnormal:/* Divide + + 16: /* Return NaN. */ + mov r11, -1 +- mov r10, -1 ++ mov r10, 0 + ldm sp++, r0, r1, r2, r3, r4, r5, r6, r7,pc + + 17: /* Return INF. */ |