< prev index next >
src/hotspot/os_cpu/linux_ppc/thread_linux_ppc.cpp
Print this page
*** 22,34 ****
* questions.
*
*/
#include "precompiled.hpp"
! #include "runtime/frame.hpp"
#include "runtime/thread.hpp"
// Forte Analyzer AsyncGetCallTrace profiling support is not implemented on Linux/PPC.
bool JavaThread::pd_get_top_frame_for_signal_handler(frame* fr_addr, void* ucontext, bool isInJava) {
Unimplemented();
return false;
}
--- 22,48 ----
* questions.
*
*/
#include "precompiled.hpp"
! #include "runtime/frame.inline.hpp"
#include "runtime/thread.hpp"
+ frame JavaThread::pd_last_frame() {
+ assert(has_last_Java_frame(), "must have last_Java_sp() when suspended");
+
+ intptr_t* sp = last_Java_sp();
+ address pc = _anchor.last_Java_pc();
+
+ // Last_Java_pc ist not set, if we come here from compiled code.
+ if (pc == NULL) {
+ pc = (address) *(sp + 2);
+ }
+
+ return frame(sp, pc);
+ }
+
// Forte Analyzer AsyncGetCallTrace profiling support is not implemented on Linux/PPC.
bool JavaThread::pd_get_top_frame_for_signal_handler(frame* fr_addr, void* ucontext, bool isInJava) {
Unimplemented();
return false;
}
< prev index next >