qemu-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Qemu-devel] [6914] target-mips: implement FPU Flush-To-Zero mode


From: Aurelien Jarno
Subject: [Qemu-devel] [6914] target-mips: implement FPU Flush-To-Zero mode
Date: Sat, 28 Mar 2009 22:22:41 +0000

Revision: 6914
          http://svn.sv.gnu.org/viewvc/?view=rev&root=qemu&revision=6914
Author:   aurel32
Date:     2009-03-28 22:22:40 +0000 (Sat, 28 Mar 2009)
Log Message:
-----------
target-mips: implement FPU Flush-To-Zero mode

Signed-off-by: Aurelien Jarno <address@hidden>

Modified Paths:
--------------
    trunk/target-mips/op_helper.c

Modified: trunk/target-mips/op_helper.c
===================================================================
--- trunk/target-mips/op_helper.c       2009-03-28 18:05:53 UTC (rev 6913)
+++ trunk/target-mips/op_helper.c       2009-03-28 22:22:40 UTC (rev 6914)
@@ -1879,6 +1879,9 @@
 #define RESTORE_ROUNDING_MODE \
     set_float_rounding_mode(ieee_rm[env->active_fpu.fcr31 & 3], 
&env->active_fpu.fp_status)
 
+#define RESTORE_FLUSH_MODE \
+    set_flush_to_zero((env->active_fpu.fcr31 & (1 << 24)) != 0, 
&env->active_fpu.fp_status);
+
 target_ulong helper_cfc1 (uint32_t reg)
 {
     target_ulong t0;
@@ -1934,6 +1937,8 @@
     }
     /* set rounding mode */
     RESTORE_ROUNDING_MODE;
+    /* set flush-to-zero mode */
+    RESTORE_FLUSH_MODE;
     set_float_exception_flags(0, &env->active_fpu.fp_status);
     if ((GET_FP_ENABLE(env->active_fpu.fcr31) | 0x20) & 
GET_FP_CAUSE(env->active_fpu.fcr31))
         helper_raise_exception(EXCP_FPE);





reply via email to

[Prev in Thread] Current Thread [Next in Thread]