Mercurial > hg > truffle
diff src/share/vm/runtime/os.hpp @ 18058:54bc75c144b0
Merge
author | asaha |
---|---|
date | Thu, 29 May 2014 13:14:25 -0700 |
parents | f73af4455d7d |
children | 52b4284cb496 833b0f92429a |
line wrap: on
line diff
--- a/src/share/vm/runtime/os.hpp Wed May 28 08:09:26 2014 -0400 +++ b/src/share/vm/runtime/os.hpp Thu May 29 13:14:25 2014 -0700 @@ -41,9 +41,16 @@ #ifdef TARGET_OS_FAMILY_windows # include "jvm_windows.h" #endif +#ifdef TARGET_OS_FAMILY_aix +# include "jvm_aix.h" +# include <setjmp.h> +#endif #ifdef TARGET_OS_FAMILY_bsd # include "jvm_bsd.h" # include <setjmp.h> +# ifdef __APPLE__ +# include <mach/mach_time.h> +# endif #endif class AgentLibrary; @@ -430,7 +437,10 @@ static intx current_thread_id(); static int current_process_id(); static int sleep(Thread* thread, jlong ms, bool interruptable); - static int naked_sleep(); + // Short standalone OS sleep suitable for slow path spin loop. + // Ignores Thread.interrupt() (so keep it short). + // ms = 0, will sleep for the least amount of time allowed by the OS. + static void naked_short_sleep(jlong ms); static void infinite_sleep(); // never returns, use with CAUTION static void yield(); // Yields to all threads with same priority enum YieldResult { @@ -766,6 +776,10 @@ #ifdef TARGET_OS_FAMILY_windows # include "os_windows.hpp" #endif +#ifdef TARGET_OS_FAMILY_aix +# include "os_aix.hpp" +# include "os_posix.hpp" +#endif #ifdef TARGET_OS_FAMILY_bsd # include "os_posix.hpp" # include "os_bsd.hpp" @@ -794,6 +808,9 @@ #ifdef TARGET_OS_ARCH_linux_ppc # include "os_linux_ppc.hpp" #endif +#ifdef TARGET_OS_ARCH_aix_ppc +# include "os_aix_ppc.hpp" +#endif #ifdef TARGET_OS_ARCH_bsd_x86 # include "os_bsd_x86.hpp" #endif