aboutsummaryrefslogtreecommitdiffstats
path: root/emulators/qemu-devel/files/patch-bh
diff options
context:
space:
mode:
Diffstat (limited to 'emulators/qemu-devel/files/patch-bh')
-rw-r--r--emulators/qemu-devel/files/patch-bh65
1 files changed, 0 insertions, 65 deletions
diff --git a/emulators/qemu-devel/files/patch-bh b/emulators/qemu-devel/files/patch-bh
index 52dff1c7160e..1218bb4656c5 100644
--- a/emulators/qemu-devel/files/patch-bh
+++ b/emulators/qemu-devel/files/patch-bh
@@ -24,68 +24,3 @@ diff -w -u -d -r1.12 dyngen-exec.h
#undef NULL
#define NULL 0
#ifdef _BSD
-Index: qemu/target-ppc/op_helper.c
-===================================================================
-RCS file: /cvsroot/qemu/qemu/target-ppc/op_helper.c,v
-retrieving revision 1.6
-diff -w -u -d -r1.6 op_helper.c
---- target-ppc/op_helper.c 21 May 2004 12:59:31 -0000 1.6
-+++ target-ppc/op_helper.c 21 May 2004 15:00:49 -0000
-@@ -210,6 +210,22 @@
- }
- /* TODO: update FEX & VX */
- /* Set rounding mode */
-+#ifdef _BSD
-+ switch(env->fpscr[0] & 0x3) {
-+ case 0:
-+ fpsetround(FP_RN);
-+ break;
-+ case 1:
-+ fpsetround(FP_RZ);
-+ break;
-+ case 2:
-+ fpsetround(FP_RP);
-+ break;
-+ case 3:
-+ fpsetround(FP_RM);
-+ break;
-+ }
-+#else
- switch (env->fpscr[0] & 0x3) {
- case 0:
- /* Best approximation (round to nearest) */
-@@ -228,6 +244,7 @@
- fesetround(FE_DOWNWARD);
- break;
- }
-+#endif
- }
-
- void do_fctiw (void)
-@@ -253,9 +270,13 @@
- double d;
- uint64_t i;
- } *p = (void *)&FT1;
-+#ifdef _BSD
-+ int cround = fpgetround();
-+ fpsetround(FP_RZ);
-+#else
- int cround = fegetround();
--
- fesetround(FE_TOWARDZERO);
-+#endif
- if (FT0 > (double)0x7FFFFFFF)
- p->i = 0x7FFFFFFFULL << 32;
- else if (FT0 < -(double)0x80000000)
-@@ -264,7 +285,11 @@
- p->i = 0;
- p->i |= (uint32_t)FT0;
- FT0 = p->d;
-+#ifdef _BSD
-+ fpsetround(cround);
-+#else
- fesetround(cround);
-+#endif
- }
-
- void do_fnmadds (void)