< prev index next >

src/os_cpu/solaris_x86/vm/assembler_solaris_x86.cpp

Print this page

        

*** 23,69 **** */ #include "precompiled.hpp" #include "asm/macroAssembler.inline.hpp" #include "runtime/os.hpp" - #include "runtime/threadLocalStorage.hpp" - #include "runtime/thread.inline.hpp" void MacroAssembler::int3() { push(rax); push(rdx); push(rcx); call(RuntimeAddress(CAST_FROM_FN_PTR(address, os::breakpoint))); pop(rcx); pop(rdx); pop(rax); } - - // This is simply a call to ThreadLocalStorage::thread() - void MacroAssembler::get_thread(Register thread) { - if (thread != rax) { - push(rax); - } - push(rdi); - push(rsi); - push(rdx); - push(rcx); - push(r8); - push(r9); - push(r10); - push(r11); - - call(RuntimeAddress(CAST_FROM_FN_PTR(address, ThreadLocalStorage::thread))); - - pop(r11); - pop(r10); - pop(r9); - pop(r8); - pop(rcx); - pop(rdx); - pop(rsi); - pop(rdi); - if (thread != rax) { - movl(thread, rax); - pop(rax); - } - } --- 23,37 ----
< prev index next >