summaryrefslogtreecommitdiffstats
path: root/toolchain/gcc/patches/4.3.5/944-avr32_fix_f64_div.patch
blob: fda520b47d9a7d2b043bbc28f7fcf607968d56a6 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
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. */