1.1 --- a/src/os_cpu/linux_zero/vm/thread_linux_zero.hpp Thu Apr 29 17:53:58 2010 -0700 1.2 +++ b/src/os_cpu/linux_zero/vm/thread_linux_zero.hpp Fri Apr 30 04:27:25 2010 -0700 1.3 @@ -68,19 +68,24 @@ 1.4 1.5 public: 1.6 void set_last_Java_frame() { 1.7 - set_last_Java_frame(top_zero_frame()); 1.8 + set_last_Java_frame(top_zero_frame(), zero_stack()->sp()); 1.9 } 1.10 void reset_last_Java_frame() { 1.11 - set_last_Java_frame(NULL); 1.12 + frame_anchor()->zap(); 1.13 } 1.14 - void set_last_Java_frame(ZeroFrame* frame) { 1.15 - frame_anchor()->set_last_Java_sp((intptr_t *) frame); 1.16 + void set_last_Java_frame(ZeroFrame* fp, intptr_t* sp) { 1.17 + frame_anchor()->set(sp, NULL, fp); 1.18 + } 1.19 + 1.20 + public: 1.21 + ZeroFrame* last_Java_fp() { 1.22 + return frame_anchor()->last_Java_fp(); 1.23 } 1.24 1.25 private: 1.26 frame pd_last_frame() { 1.27 assert(has_last_Java_frame(), "must have last_Java_sp() when suspended"); 1.28 - return frame(last_Java_sp(), zero_stack()->sp()); 1.29 + return frame(last_Java_fp(), last_Java_sp()); 1.30 } 1.31 1.32 public: