src/os_cpu/bsd_x86/vm/assembler_bsd_x86.cpp
Index Unified diffs Context diffs Sdiffs Patch New Old Previous File Next File 7089790_bsd_vs_linux Cdiff src/os_cpu/bsd_x86/vm/assembler_bsd_x86.cpp

src/os_cpu/bsd_x86/vm/assembler_bsd_x86.cpp

Print this page
rev 2698 : new bsd files

*** 31,73 **** #ifndef _LP64 void MacroAssembler::int3() { call(RuntimeAddress(CAST_FROM_FN_PTR(address, os::breakpoint))); } - #ifdef MINIMIZE_RAM_USAGE - void MacroAssembler::get_thread(Register thread) { - // call pthread_getspecific - // void * pthread_getspecific(pthread_key_t key); - if (thread != rax) push(rax); - push(rcx); - push(rdx); - - push(ThreadLocalStorage::thread_index()); - call(RuntimeAddress(CAST_FROM_FN_PTR(address, pthread_getspecific))); - increment(rsp, wordSize); - - pop(rdx); - pop(rcx); - if (thread != rax) { - mov(thread, rax); - pop(rax); - } - } - - #else - void MacroAssembler::get_thread(Register thread) { movl(thread, rsp); shrl(thread, PAGE_SHIFT); ExternalAddress tls_base((address)ThreadLocalStorage::sp_map_addr()); Address index(noreg, thread, Address::times_4); ArrayAddress tls(tls_base, index); movptr(thread, tls); } - #endif // MINIMIZE_RAM_USAGE #else void MacroAssembler::int3() { call(RuntimeAddress(CAST_FROM_FN_PTR(address, os::breakpoint))); } --- 31,50 ----
src/os_cpu/bsd_x86/vm/assembler_bsd_x86.cpp
Index Unified diffs Context diffs Sdiffs Patch New Old Previous File Next File