# HG changeset patch # User glaubitz # Date 1522072094 -7200 # Mon Mar 26 15:48:14 2018 +0200 # Node ID 72c18b1729fe10c8469ed43bc6b2b69c0aab0e5e # Parent d7c83c8e4e6521cf3fd3301d16c893864fc2a977 8200245: Zero fails to build on linux-ia64 due to ia64-specific cruft diff --git a/src/hotspot/share/runtime/os.cpp b/src/hotspot/share/runtime/os.cpp --- a/src/hotspot/share/runtime/os.cpp +++ b/src/hotspot/share/runtime/os.cpp @@ -1158,32 +1158,10 @@ st->print_cr(INTPTR_FORMAT " is an unknown value", p2i(addr)); } -// Looks like all platforms except IA64 can use the same function to check -// if C stack is walkable beyond current frame. The check for fp() is not +// Looks like all platforms can use the same function to check if C +// stack is walkable beyond current frame. The check for fp() is not // necessary on Sparc, but it's harmless. bool os::is_first_C_frame(frame* fr) { -#if (defined(IA64) && !defined(AIX)) && !defined(_WIN32) - // On IA64 we have to check if the callers bsp is still valid - // (i.e. within the register stack bounds). - // Notice: this only works for threads created by the VM and only if - // we walk the current stack!!! If we want to be able to walk - // arbitrary other threads, we'll have to somehow store the thread - // object in the frame. - Thread *thread = Thread::current(); - if ((address)fr->fp() <= - thread->register_stack_base() HPUX_ONLY(+ 0x0) LINUX_ONLY(+ 0x50)) { - // This check is a little hacky, because on Linux the first C - // frame's ('start_thread') register stack frame starts at - // "register_stack_base + 0x48" while on HPUX, the first C frame's - // ('__pthread_bound_body') register stack frame seems to really - // start at "register_stack_base". - return true; - } else { - return false; - } -#elif defined(IA64) && defined(_WIN32) - return true; -#else // Load up sp, fp, sender sp and sender fp, check for reasonable values. // Check usp first, because if that's bad the other accessors may fault // on some architectures. Ditto ufp second, etc. @@ -1213,7 +1191,6 @@ if (old_fp - ufp > 64 * K) return true; return false; -#endif }