Mercurial > hg > graal-compiler
diff src/share/vm/runtime/os.hpp @ 14412:e2722a66aba7
Merge
author | kvn |
---|---|
date | Thu, 05 Sep 2013 11:04:39 -0700 |
parents | bdd155477289 62f527c674d2 |
children | 2b8e28fdf503 |
line wrap: on
line diff
--- a/src/share/vm/runtime/os.hpp Thu Aug 22 09:39:54 2013 -0700 +++ b/src/share/vm/runtime/os.hpp Thu Sep 05 11:04:39 2013 -0700 @@ -50,6 +50,8 @@ # include <setjmp.h> #endif +class AgentLibrary; + // os defines the interface to operating system; this includes traditional // OS services (time, I/O) as well as other functionality with system- // dependent code. @@ -332,8 +334,8 @@ static char* non_memory_address_word(); // reserve, commit and pin the entire memory region - static char* reserve_memory_special(size_t size, char* addr = NULL, - bool executable = false); + static char* reserve_memory_special(size_t size, size_t alignment, + char* addr, bool executable); static bool release_memory_special(char* addr, size_t bytes); static void large_page_init(); static size_t large_page_size(); @@ -541,6 +543,17 @@ // Unload library static void dll_unload(void *lib); + // Return the handle of this process + static void* get_default_process_handle(); + + // Check for static linked agent library + static bool find_builtin_agent(AgentLibrary *agent_lib, const char *syms[], + size_t syms_len); + + // Find agent entry point + static void *find_agent_function(AgentLibrary *agent_lib, bool check_lib, + const char *syms[], size_t syms_len); + // Print out system information; they are called by fatal error handler. // Output format may be different on different platforms. static void print_os_info(outputStream* st); @@ -817,6 +830,11 @@ // ResumeThread call) static void pause(); + // Builds a platform dependent Agent_OnLoad_<libname> function name + // which is used to find statically linked in agents. + static char* build_agent_function_name(const char *sym, const char *cname, + bool is_absolute_path); + class SuspendedThreadTaskContext { public: SuspendedThreadTaskContext(Thread* thread, void *ucontext) : _thread(thread), _ucontext(ucontext) {}