aboutsummaryrefslogtreecommitdiffstats
path: root/target-arm
diff options
context:
space:
mode:
authorChristophe LYON <christophe.lyon@st.com>2011-10-19 16:14:05 +0000
committerPeter Maydell <peter.maydell@linaro.org>2011-10-19 16:14:05 +0000
commit26cc6abf61cc2bf68eaeb89b1497c12330e6b73c (patch)
treed5d25ab1c179172d18e292b5bd23bfb45d8e44cd /target-arm
parentcfce6d8934243871c4dc6d0c5248b0b27a1b8d80 (diff)
rsqrte_f32: No need to copy sign bit.
Indeed, the result is known to be always positive. Signed-off-by: Christophe Lyon <christophe.lyon@st.com> Signed-off-by: Peter Maydell <peter.maydell@linaro.org>
Diffstat (limited to 'target-arm')
-rw-r--r--target-arm/helper.c3
1 files changed, 1 insertions, 2 deletions
diff --git a/target-arm/helper.c b/target-arm/helper.c
index e2428eb7b..17ef98b68 100644
--- a/target-arm/helper.c
+++ b/target-arm/helper.c
@@ -3039,8 +3039,7 @@ float32 HELPER(rsqrte_f32)(float32 a, CPUState *env)
val64 = float64_val(f64);
- val = ((val64 >> 63) & 0x80000000)
- | ((result_exp & 0xff) << 23)
+ val = ((result_exp & 0xff) << 23)
| ((val64 >> 29) & 0x7fffff);
return make_float32(val);
}