aboutsummaryrefslogtreecommitdiffstats
path: root/arch/mips/math-emu/sp_mul.c
diff options
context:
space:
mode:
Diffstat (limited to 'arch/mips/math-emu/sp_mul.c')
-rw-r--r--arch/mips/math-emu/sp_mul.c12
1 files changed, 6 insertions, 6 deletions
diff --git a/arch/mips/math-emu/sp_mul.c b/arch/mips/math-emu/sp_mul.c
index 844b3bde0ab6..28f608f25499 100644
--- a/arch/mips/math-emu/sp_mul.c
+++ b/arch/mips/math-emu/sp_mul.c
@@ -114,8 +114,8 @@ union ieee754sp ieee754sp_mul(union ieee754sp x, union ieee754sp y)
114 unsigned rm; 114 unsigned rm;
115 115
116 /* shunt to top of word */ 116 /* shunt to top of word */
117 xm <<= 32 - (SP_MBITS + 1); 117 xm <<= 32 - (SP_FBITS + 1);
118 ym <<= 32 - (SP_MBITS + 1); 118 ym <<= 32 - (SP_FBITS + 1);
119 119
120 /* multiply 32bits xm,ym to give high 32bits rm with stickness 120 /* multiply 32bits xm,ym to give high 32bits rm with stickness
121 */ 121 */
@@ -156,12 +156,12 @@ union ieee754sp ieee754sp_mul(union ieee754sp x, union ieee754sp y)
156 * sticky shift down to normal rounding precision 156 * sticky shift down to normal rounding precision
157 */ 157 */
158 if ((int) rm < 0) { 158 if ((int) rm < 0) {
159 rm = (rm >> (32 - (SP_MBITS + 1 + 3))) | 159 rm = (rm >> (32 - (SP_FBITS + 1 + 3))) |
160 ((rm << (SP_MBITS + 1 + 3)) != 0); 160 ((rm << (SP_FBITS + 1 + 3)) != 0);
161 re++; 161 re++;
162 } else { 162 } else {
163 rm = (rm >> (32 - (SP_MBITS + 1 + 3 + 1))) | 163 rm = (rm >> (32 - (SP_FBITS + 1 + 3 + 1))) |
164 ((rm << (SP_MBITS + 1 + 3 + 1)) != 0); 164 ((rm << (SP_FBITS + 1 + 3 + 1)) != 0);
165 } 165 }
166 assert(rm & (SP_HIDDEN_BIT << 3)); 166 assert(rm & (SP_HIDDEN_BIT << 3));
167 167