Lines Matching refs:os

92 address os::current_stack_pointer() {
103 char* os::non_memory_address_word() {
111 void os::initialize_thread(Thread* thr) {
115 address os::Linux::ucontext_get_pc(ucontext_t * uc) {
119 intptr_t* os::Linux::ucontext_get_sp(ucontext_t * uc) {
123 intptr_t* os::Linux::ucontext_get_fp(ucontext_t * uc) {
129 // os::Solaris::fetch_frame_from_ucontext() tries to skip nested signal
131 // os::fetch_frame_from_context().
132 ExtendedPC os::Linux::fetch_frame_from_ucontext(Thread* thread,
139 return os::fetch_frame_from_context(uc, ret_sp, ret_fp);
142 ExtendedPC os::fetch_frame_from_context(void* ucVoid,
149 epc = ExtendedPC(os::Linux::ucontext_get_pc(uc));
150 if (ret_sp) *ret_sp = os::Linux::ucontext_get_sp(uc);
151 if (ret_fp) *ret_fp = os::Linux::ucontext_get_fp(uc);
162 frame os::fetch_frame_from_context(void* ucVoid) {
171 frame os::get_sender_for_C_frame(frame* fr) {
186 frame os::current_frame() {
188 frame myframe((intptr_t*)os::current_stack_pointer(),
190 CAST_FROM_FN_PTR(address, os::current_frame));
191 if (os::is_first_C_frame(&myframe)) {
195 return os::get_sender_for_C_frame(&myframe);
233 if (os::Linux::chained_handler(sig, info, ucVoid)) {
239 os::exception_name(sig, buf, sizeof(buf)));
247 if (os::Linux::signal_handlers_are_installed) {
273 pc = (address) os::Linux::ucontext_get_pc(uc);
321 if (os::Linux::manually_expand_stack(thread, addr)) {
337 if (sig == SIGSEGV && os::is_poll_address((address)info->si_addr)) {
412 os::is_memory_serialize_page(thread, (address) info->si_addr)) {
414 os::block_on_serialize_page_trap();
433 int page_size = os::vm_page_size();
435 address pc = os::Linux::ucontext_get_pc(uc);
452 (address) os::non_memory_address_word();
456 (UnguardOnExecutionViolation > 1 || os::address_is_in_vm(addr))) {
461 bool res = os::protect_memory((char*) page_start, page_size,
462 os::MEM_PROT_RWX);
507 if (os::Linux::chained_handler(sig, info, ucVoid)) {
517 pc = os::Linux::ucontext_get_pc(uc);
532 void os::Linux::init_thread_fpu_state(void) {
539 int os::Linux::get_fpu_control_word(void) {
549 void os::Linux::set_fpu_control_word(int fpu_control) {
557 bool os::supports_sse() {
577 bool os::is_allocatable(size_t bytes) {
601 size_t os::Linux::min_stack_allowed = 64 * K;
604 bool os::Linux::supports_variable_stack_size() { return true; }
606 size_t os::Linux::min_stack_allowed = (48 DEBUG_ONLY(+4))*K;
615 bool os::Linux::supports_variable_stack_size() {
616 if (os::Linux::is_NPTL()) {
651 size_t os::Linux::default_stack_size(os::ThreadType thr_type) {
654 size_t s = (thr_type == os::compiler_thread ? 4 * M : 1 * M);
656 size_t s = (thr_type == os::compiler_thread ? 2 * M : 512 * K);
661 size_t os::Linux::default_guard_size(os::ThreadType thr_type) {
701 if (os::Linux::is_initial_thread()) {
704 *bottom = os::Linux::initial_thread_stack_bottom();
705 *size = os::Linux::initial_thread_stack_size();
727 assert(os::current_stack_pointer() >= *bottom &&
728 os::current_stack_pointer() < *bottom + *size, "just checking");
731 address os::current_stack_base() {
738 size_t os::current_stack_size() {
749 void os::print_context(outputStream *st, void *context) {
799 intptr_t *sp = (intptr_t *)os::Linux::ucontext_get_sp(uc);
807 address pc = os::Linux::ucontext_get_pc(uc);
812 void os::print_register_info(outputStream *st, void *context) {
857 void os::setup_fpu() {
866 void os::verify_stack_alignment() {
868 assert(((intptr_t)os::current_stack_pointer() & (StackAlignmentInBytes-1)) == 0, "incorrect stack alignment");