This commit is contained in:
parent
1e5ee9b7c0
commit
9aebba6adb
@ -1,3 +1,10 @@
|
||||
-------------------------------------------------------------------
|
||||
Thu Aug 31 14:31:46 UTC 2017 - fstrba@suse.com
|
||||
|
||||
- Added patch:
|
||||
* zero-atomic_copy64.patch
|
||||
- Fix wrong assembly for ppc and s390
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Wed Aug 23 09:54:09 UTC 2017 - fstrba@suse.com
|
||||
|
||||
|
@ -191,6 +191,7 @@ Patch3: java-atk-wrapper-security.patch
|
||||
Patch12: adlc-parser.patch
|
||||
# Avoid triggering inactivity timeout while generating javadoc in zero VM
|
||||
Patch14: zero-javadoc-verbose.patch
|
||||
Patch15:
|
||||
#
|
||||
# OpenJDK specific patches
|
||||
#
|
||||
|
29
zero-atomic_copy64.patch
Normal file
29
zero-atomic_copy64.patch
Normal file
@ -0,0 +1,29 @@
|
||||
--- openjdk/hotspot/src/os_cpu/linux_zero/vm/os_linux_zero.hpp 2017-08-31 16:35:40.546293657 +0200
|
||||
+++ openjdk/hotspot/src/os_cpu/linux_zero/vm/os_linux_zero.hpp 2017-08-31 16:39:53.186297970 +0200
|
||||
@@ -36,18 +36,19 @@
|
||||
|
||||
// Atomically copy 64 bits of data
|
||||
static void atomic_copy64(volatile void *src, volatile void *dst) {
|
||||
-#if defined(PPC32)
|
||||
+#if defined(PPC32) && !defined(__NO_FPRS__)
|
||||
double tmp;
|
||||
- asm volatile ("lfd %0, 0(%1)\n"
|
||||
- "stfd %0, 0(%2)\n"
|
||||
- : "=f"(tmp)
|
||||
- : "b"(src), "b"(dst));
|
||||
+ asm volatile ("lfd %0, %2\n"
|
||||
+ "stfd %0, %1\n"
|
||||
+ : "=&f"(tmp), "=Q"(*(volatile double*)dst)
|
||||
+ : "Q"(*(volatile double*)src));
|
||||
#elif defined(S390) && !defined(_LP64)
|
||||
double tmp;
|
||||
asm volatile ("ld %0, 0(%1)\n"
|
||||
"std %0, 0(%2)\n"
|
||||
- : "=r"(tmp)
|
||||
- : "a"(src), "a"(dst));
|
||||
+ : "=&r"(tmp)
|
||||
+ : "a"(src), "a"(dst)
|
||||
+ : "memory");
|
||||
#else
|
||||
*(jlong *) dst = *(jlong *) src;
|
||||
#endif
|
Loading…
x
Reference in New Issue
Block a user