[PATCH] openjdk/zero: only use floating point if floating point available
Sebastian Andrzej Siewior
sebastian at breakpoint.cc
Fri Jun 18 00:41:52 PDT 2010
Those two opcodes are not available on non-FPU machines. If we have the
SPE extension we could use evldd and evstdd but this requires the
address to be 64bit aligned.
Signed-off-by: Sebastian Andrzej Siewior <bigeasy at linutronix.de>
---
.../src/os_cpu/linux_zero/vm/os_linux_zero.hpp | 2 +-
1 files changed, 1 insertions(+), 1 deletions(-)
diff --git a/ports/hotspot/src/os_cpu/linux_zero/vm/os_linux_zero.hpp b/ports/hotspot/src/os_cpu/linux_zero/vm/os_linux_zero.hpp
index 86d3562..40fd41e 100644
--- a/ports/hotspot/src/os_cpu/linux_zero/vm/os_linux_zero.hpp
+++ b/ports/hotspot/src/os_cpu/linux_zero/vm/os_linux_zero.hpp
@@ -33,7 +33,7 @@
// Atomically copy 64 bits of data
static void atomic_copy64(volatile void *src, volatile void *dst) {
-#if defined(PPC) && !defined(_LP64)
+#if defined(PPC) && !defined(_LP64) && !defined(__NO_FPRS__)
double tmp;
asm volatile ("lfd %0, 0(%1)\n"
"stfd %0, 0(%2)\n"
--
1.6.6.1
More information about the jdk6-dev
mailing list