summaryrefslogtreecommitdiffstats
path: root/target-mips/translate_init.c
diff options
context:
space:
mode:
authorPeter Maydell2015-03-11 19:22:15 +0100
committerPeter Maydell2015-03-11 19:22:15 +0100
commitee74801035b0b5f1fdfd4e31d3a53f511f91c804 (patch)
treec3f2cf22bc97526c17442fd966c23cf4b849e380 /target-mips/translate_init.c
parentMerge remote-tracking branch 'remotes/pmaydell/tags/pull-target-arm-20150311'... (diff)
parenttarget-mips: add missing MSACSR and restore fp_status and hflags (diff)
downloadqemu-ee74801035b0b5f1fdfd4e31d3a53f511f91c804.tar.gz
qemu-ee74801035b0b5f1fdfd4e31d3a53f511f91c804.tar.xz
qemu-ee74801035b0b5f1fdfd4e31d3a53f511f91c804.zip
Merge remote-tracking branch 'remotes/lalrae/tags/mips-20150311' into staging
MIPS patches 2015-03-11 Changes: * use VMStateDescription for MIPS CPU # gpg: Signature made Wed Mar 11 15:01:52 2015 GMT using RSA key ID 0B29DA6B # gpg: Can't check signature: public key not found * remotes/lalrae/tags/mips-20150311: target-mips: add missing MSACSR and restore fp_status and hflags target-mips: replace cpu_save/cpu_load with VMStateDescription Signed-off-by: Peter Maydell <peter.maydell@linaro.org>
Diffstat (limited to 'target-mips/translate_init.c')
-rw-r--r--target-mips/translate_init.c10
1 files changed, 2 insertions, 8 deletions
diff --git a/target-mips/translate_init.c b/target-mips/translate_init.c
index 9e8433a919..85a65e74b4 100644
--- a/target-mips/translate_init.c
+++ b/target-mips/translate_init.c
@@ -835,6 +835,8 @@ static void msa_reset(CPUMIPSState *env)
- round to nearest / ties to even (RM bits are 0) */
env->active_tc.msacsr = 0;
+ restore_msa_fp_status(env);
+
/* tininess detected after rounding.*/
set_float_detect_tininess(float_tininess_after_rounding,
&env->active_tc.msa_fp_status);
@@ -842,14 +844,6 @@ static void msa_reset(CPUMIPSState *env)
/* clear float_status exception flags */
set_float_exception_flags(0, &env->active_tc.msa_fp_status);
- /* set float_status rounding mode */
- set_float_rounding_mode(float_round_nearest_even,
- &env->active_tc.msa_fp_status);
-
- /* set float_status flush modes */
- set_flush_to_zero(0, &env->active_tc.msa_fp_status);
- set_flush_inputs_to_zero(0, &env->active_tc.msa_fp_status);
-
/* clear float_status nan mode */
set_default_nan_mode(0, &env->active_tc.msa_fp_status);
}