src/hotspot/os_cpu/bsd_x86/os_bsd_x86.cpp
changeset 48824 e48c4461a8bb
parent 47765 b7c7428eaab9
child 49449 ef5d5d343e2a
equal deleted inserted replaced
48823:99c973b56994 48824:e48c4461a8bb
   277 #endif
   277 #endif
   278 
   278 
   279 address os::current_stack_pointer() {
   279 address os::current_stack_pointer() {
   280 #if defined(__clang__) || defined(__llvm__)
   280 #if defined(__clang__) || defined(__llvm__)
   281   register void *esp;
   281   register void *esp;
   282   __asm__("mov %%"SPELL_REG_SP", %0":"=r"(esp));
   282   __asm__("mov %%" SPELL_REG_SP ", %0":"=r"(esp));
   283   return (address) esp;
   283   return (address) esp;
   284 #elif defined(SPARC_WORKS)
   284 #elif defined(SPARC_WORKS)
   285   register void *esp;
   285   register void *esp;
   286   __asm__("mov %%"SPELL_REG_SP", %0":"=r"(esp));
   286   __asm__("mov %%" SPELL_REG_SP ", %0":"=r"(esp));
   287   return (address) ((char*)esp + sizeof(long)*2);
   287   return (address) ((char*)esp + sizeof(long)*2);
   288 #else
   288 #else
   289   register void *esp __asm__ (SPELL_REG_SP);
   289   register void *esp __asm__ (SPELL_REG_SP);
   290   return (address) esp;
   290   return (address) esp;
   291 #endif
   291 #endif
   413 }
   413 }
   414 
   414 
   415 intptr_t* _get_previous_fp() {
   415 intptr_t* _get_previous_fp() {
   416 #if defined(SPARC_WORKS) || defined(__clang__) || defined(__llvm__)
   416 #if defined(SPARC_WORKS) || defined(__clang__) || defined(__llvm__)
   417   register intptr_t **ebp;
   417   register intptr_t **ebp;
   418   __asm__("mov %%"SPELL_REG_FP", %0":"=r"(ebp));
   418   __asm__("mov %%" SPELL_REG_FP ", %0":"=r"(ebp));
   419 #else
   419 #else
   420   register intptr_t **ebp __asm__ (SPELL_REG_FP);
   420   register intptr_t **ebp __asm__ (SPELL_REG_FP);
   421 #endif
   421 #endif
   422   // ebp is for this frame (_get_previous_fp). We want the ebp for the
   422   // ebp is for this frame (_get_previous_fp). We want the ebp for the
   423   // caller of os::current_frame*(), so go up two frames. However, for
   423   // caller of os::current_frame*(), so go up two frames. However, for