< prev index next >

src/hotspot/os_cpu/linux_x86/os_linux_x86.cpp

Print this page
rev 59103 : imported patch hotspot

*** 93,109 **** #define SPELL_REG_SP "esp" #define SPELL_REG_FP "ebp" #endif // AMD64 address os::current_stack_pointer() { - #ifdef SPARC_WORKS - void *esp; - __asm__("mov %%" SPELL_REG_SP ", %0":"=r"(esp)); - return (address) ((char*)esp + sizeof(long)*2); - #else return (address)__builtin_frame_address(0); - #endif } char* os::non_memory_address_word() { // Must never look like an address returned by reserve_memory, // even in its subfields (as defined by the CPU immediate fields, --- 93,103 ----
*** 222,235 **** frame os::get_sender_for_C_frame(frame* fr) { return frame(fr->sender_sp(), fr->link(), fr->sender_pc()); } intptr_t* _get_previous_fp() { ! #ifdef SPARC_WORKS ! intptr_t **ebp; ! __asm__("mov %%" SPELL_REG_FP ", %0":"=r"(ebp)); ! #elif defined(__clang__) intptr_t **ebp; __asm__ __volatile__ ("mov %%" SPELL_REG_FP ", %0":"=r"(ebp):); #else register intptr_t **ebp __asm__ (SPELL_REG_FP); #endif --- 216,226 ---- frame os::get_sender_for_C_frame(frame* fr) { return frame(fr->sender_sp(), fr->link(), fr->sender_pc()); } intptr_t* _get_previous_fp() { ! #if defined(__clang__) intptr_t **ebp; __asm__ __volatile__ ("mov %%" SPELL_REG_FP ", %0":"=r"(ebp):); #else register intptr_t **ebp __asm__ (SPELL_REG_FP); #endif
< prev index next >