436
437 void os::Linux::init_thread_fpu_state(void) {
438 // Disable FP exceptions.
439 __asm__ __volatile__ ("mtfsfi 6,0");
440 }
441
442 int os::Linux::get_fpu_control_word(void) {
443 // x86 has problems with FPU precision after pthread_cond_timedwait().
444 // nothing to do on ppc64.
445 return 0;
446 }
447
448 void os::Linux::set_fpu_control_word(int fpu_control) {
449 // x86 has problems with FPU precision after pthread_cond_timedwait().
450 // nothing to do on ppc64.
451 }
452
453 ////////////////////////////////////////////////////////////////////////////////
454 // thread stack
455
456 size_t os::Linux::min_stack_allowed = 768*K;
457
458 bool os::Linux::supports_variable_stack_size() { return true; }
459
460 // return default stack size for thr_type
461 size_t os::Linux::default_stack_size(os::ThreadType thr_type) {
462 // default stack size (compiler thread needs larger stack)
463 // Notice that the setting for compiler threads here have no impact
464 // because of the strange 'fallback logic' in os::create_thread().
465 // Better set CompilerThreadStackSize in globals_<os_cpu>.hpp if you want to
466 // specify a different stack size for compiler threads!
467 size_t s = (thr_type == os::compiler_thread ? 4 * M : 1024 * K);
468 return s;
469 }
470
471 size_t os::Linux::default_guard_size(os::ThreadType thr_type) {
472 return 2 * page_size();
473 }
474
475 // Java thread:
476 //
|
436
437 void os::Linux::init_thread_fpu_state(void) {
438 // Disable FP exceptions.
439 __asm__ __volatile__ ("mtfsfi 6,0");
440 }
441
442 int os::Linux::get_fpu_control_word(void) {
443 // x86 has problems with FPU precision after pthread_cond_timedwait().
444 // nothing to do on ppc64.
445 return 0;
446 }
447
448 void os::Linux::set_fpu_control_word(int fpu_control) {
449 // x86 has problems with FPU precision after pthread_cond_timedwait().
450 // nothing to do on ppc64.
451 }
452
453 ////////////////////////////////////////////////////////////////////////////////
454 // thread stack
455
456 size_t os::Linux::min_stack_allowed = 128*K;
457
458 bool os::Linux::supports_variable_stack_size() { return true; }
459
460 // return default stack size for thr_type
461 size_t os::Linux::default_stack_size(os::ThreadType thr_type) {
462 // default stack size (compiler thread needs larger stack)
463 // Notice that the setting for compiler threads here have no impact
464 // because of the strange 'fallback logic' in os::create_thread().
465 // Better set CompilerThreadStackSize in globals_<os_cpu>.hpp if you want to
466 // specify a different stack size for compiler threads!
467 size_t s = (thr_type == os::compiler_thread ? 4 * M : 1024 * K);
468 return s;
469 }
470
471 size_t os::Linux::default_guard_size(os::ThreadType thr_type) {
472 return 2 * page_size();
473 }
474
475 // Java thread:
476 //
|