60 } 61 62 static ByteSize last_Java_fp_offset() { 63 return byte_offset_of(JavaThread, _anchor) + JavaFrameAnchor::last_Java_fp_offset(); 64 } 65 66 intptr_t* base_of_stack_pointer() { 67 return NULL; 68 } 69 void record_base_of_stack_pointer() { 70 } 71 72 bool pd_get_top_frame_for_signal_handler(frame* fr_addr, void* ucontext, 73 bool isInJava); 74 75 bool pd_get_top_frame_for_profiling(frame* fr_addr, void* ucontext, bool isInJava); 76 private: 77 bool pd_get_top_frame(frame* fr_addr, void* ucontext, bool isInJava); 78 public: 79 80 // These routines are only used on cpu architectures that 81 // have separate register stacks (Itanium). 82 static bool register_stack_overflow() { return false; } 83 static void enable_register_stack_guard() {} 84 static void disable_register_stack_guard() {} 85 86 #endif // OS_CPU_LINUX_AARCH64_VM_THREAD_LINUX_AARCH64_HPP | 60 } 61 62 static ByteSize last_Java_fp_offset() { 63 return byte_offset_of(JavaThread, _anchor) + JavaFrameAnchor::last_Java_fp_offset(); 64 } 65 66 intptr_t* base_of_stack_pointer() { 67 return NULL; 68 } 69 void record_base_of_stack_pointer() { 70 } 71 72 bool pd_get_top_frame_for_signal_handler(frame* fr_addr, void* ucontext, 73 bool isInJava); 74 75 bool pd_get_top_frame_for_profiling(frame* fr_addr, void* ucontext, bool isInJava); 76 private: 77 bool pd_get_top_frame(frame* fr_addr, void* ucontext, bool isInJava); 78 public: 79 80 static Thread *aarch64_get_thread_helper(); 81 82 // These routines are only used on cpu architectures that 83 // have separate register stacks (Itanium). 84 static bool register_stack_overflow() { return false; } 85 static void enable_register_stack_guard() {} 86 static void disable_register_stack_guard() {} 87 88 #endif // OS_CPU_LINUX_AARCH64_VM_THREAD_LINUX_AARCH64_HPP |