-
Enhancement
-
Resolution: Fixed
-
P4
-
13
-
b07
Currently defined as:
src/hotspot/share/runtime/thread.inline.hpp:
#if defined(PPC64) || defined (AARCH64)
inline JavaThreadState JavaThread::thread_state() const {
return (JavaThreadState) OrderAccess::load_acquire((volatile jint*)&_thread_state);
}
inline void JavaThread::set_thread_state(JavaThreadState s) {
OrderAccess::release_store((volatile jint*)&_thread_state, (jint)s);
}
#endif
...which means it is compiled differently on AArch64 and PPC64, which is the source of multiple build failures going unnoticed when building x86_64 only. It would be easier to simplify this declaration.
For example, move the #if into the method body:
http://cr.openjdk.java.net/~shade/8218151/webrev.01/ (this builds fine on x86_64, aarch64, ppc64)
Alternatively, move the definition to thread.hpp.
src/hotspot/share/runtime/thread.inline.hpp:
#if defined(PPC64) || defined (AARCH64)
inline JavaThreadState JavaThread::thread_state() const {
return (JavaThreadState) OrderAccess::load_acquire((volatile jint*)&_thread_state);
}
inline void JavaThread::set_thread_state(JavaThreadState s) {
OrderAccess::release_store((volatile jint*)&_thread_state, (jint)s);
}
#endif
...which means it is compiled differently on AArch64 and PPC64, which is the source of multiple build failures going unnoticed when building x86_64 only. It would be easier to simplify this declaration.
For example, move the #if into the method body:
http://cr.openjdk.java.net/~shade/8218151/webrev.01/ (this builds fine on x86_64, aarch64, ppc64)
Alternatively, move the definition to thread.hpp.
- relates to
-
JDK-8218140 Build failures after JDK-8218041 (Assorted wrong/missing includes)
- Resolved
-
JDK-8201799 Build failures after JDK-8195099 (Concurrent safe-memory-reclamation mechanism)
- Resolved
-
JDK-8203278 AArch64/PPC64 build failures after JDK-8199712 (Flight Recorder)
- Resolved
-
JDK-8216591 AArch64 build failures after JDK-8214271 (Fast primitive to wake many threads)
- Closed