464 static int pd_self_suspend_thread(Thread* thread); 465 466 static ExtendedPC fetch_frame_from_context(void* ucVoid, intptr_t** sp, intptr_t** fp); 467 static frame fetch_frame_from_context(void* ucVoid); 468 469 static ExtendedPC get_thread_pc(Thread *thread); 470 static void breakpoint(); 471 472 static address current_stack_pointer(); 473 static address current_stack_base(); 474 static size_t current_stack_size(); 475 476 static void verify_stack_alignment() PRODUCT_RETURN; 477 478 static int message_box(const char* title, const char* message); 479 static char* do_you_want_to_debug(const char* message); 480 481 // run cmd in a separate process and return its exit code; or -1 on failures 482 static int fork_and_exec(char *cmd); 483 484 // os::exit() is merged with vm_exit() 485 // static void exit(int num); 486 487 // Terminate the VM, but don't exit the process 488 static void shutdown(); 489 490 // Terminate with an error. Default is to generate a core file on platforms 491 // that support such things. This calls shutdown() and then aborts. 492 static void abort(bool dump_core = true); 493 494 // Die immediately, no exit hook, no abort hook, no cleanup. 495 static void die(); 496 497 // File i/o operations 498 static const int default_file_open_flags(); 499 static int open(const char *path, int oflag, int mode); 500 static FILE* open(int fd, const char* mode); 501 static int close(int fd); 502 static jlong lseek(int fd, jlong offset, int whence); 503 static char* native_path(char *path); 504 static int ftruncate(int fd, jlong length); 505 static int fsync(int fd); | 464 static int pd_self_suspend_thread(Thread* thread); 465 466 static ExtendedPC fetch_frame_from_context(void* ucVoid, intptr_t** sp, intptr_t** fp); 467 static frame fetch_frame_from_context(void* ucVoid); 468 469 static ExtendedPC get_thread_pc(Thread *thread); 470 static void breakpoint(); 471 472 static address current_stack_pointer(); 473 static address current_stack_base(); 474 static size_t current_stack_size(); 475 476 static void verify_stack_alignment() PRODUCT_RETURN; 477 478 static int message_box(const char* title, const char* message); 479 static char* do_you_want_to_debug(const char* message); 480 481 // run cmd in a separate process and return its exit code; or -1 on failures 482 static int fork_and_exec(char *cmd); 483 484 // Call ::exit() on all platforms but Windows 485 static void exit(int num); 486 487 // Terminate the VM, but don't exit the process 488 static void shutdown(); 489 490 // Terminate with an error. Default is to generate a core file on platforms 491 // that support such things. This calls shutdown() and then aborts. 492 static void abort(bool dump_core = true); 493 494 // Die immediately, no exit hook, no abort hook, no cleanup. 495 static void die(); 496 497 // File i/o operations 498 static const int default_file_open_flags(); 499 static int open(const char *path, int oflag, int mode); 500 static FILE* open(int fd, const char* mode); 501 static int close(int fd); 502 static jlong lseek(int fd, jlong offset, int whence); 503 static char* native_path(char *path); 504 static int ftruncate(int fd, jlong length); 505 static int fsync(int fd); |