< prev index next >

src/cpu/ppc/vm/vm_version_ppc.cpp

Print this page
rev 11647 : 8161258: Simplify including platform files.
Summary: Include patform files with macros cpu_header() etc. Do various cleanups of macro usages. Remove _64/_32 from adlc generated files and platform .hpp files. Merge stubRoutines_x86*.hpp. Remove empty mutex_<os>* files.
Reviewed-by: dholmes, coleenp, kbarrett


 261     FLAG_SET_DEFAULT(UseVectorizedMismatchIntrinsic, false);
 262   }
 263 
 264 
 265   // Adjust RTM (Restricted Transactional Memory) flags.
 266   if (UseRTMLocking) {
 267     // If CPU or OS are too old:
 268     // Can't continue because UseRTMLocking affects UseBiasedLocking flag
 269     // setting during arguments processing. See use_biased_locking().
 270     // VM_Version_init() is executed after UseBiasedLocking is used
 271     // in Thread::allocate().
 272     if (!has_tcheck()) {
 273       vm_exit_during_initialization("RTM instructions are not available on this CPU");
 274     }
 275     bool os_too_old = true;
 276 #ifdef AIX
 277     if (os::Aix::os_version() >= 0x0701031e) { // at least AIX 7.1.3.30
 278       os_too_old = false;
 279     }
 280 #endif
 281 #ifdef linux
 282     // At least Linux kernel 4.2, as the problematic behavior of syscalls
 283     // being called in the middle of a transaction has been addressed.
 284     // Please, refer to commit b4b56f9ecab40f3b4ef53e130c9f6663be491894
 285     // in Linux kernel source tree: https://goo.gl/Kc5i7A
 286     if (os::Linux::os_version_is_known()) {
 287       if (os::Linux::os_version() >= 0x040200)
 288         os_too_old = false;
 289     } else {
 290       vm_exit_during_initialization("RTM can not be enabled: kernel version is unknown.");
 291     }
 292 #endif
 293     if (os_too_old) {
 294       vm_exit_during_initialization("RTM is not supported on this OS version.");
 295     }
 296   }
 297 
 298   if (UseRTMLocking) {
 299 #if INCLUDE_RTM_OPT
 300     if (!UnlockExperimentalVMOptions) {
 301       vm_exit_during_initialization("UseRTMLocking is only available as experimental option on this platform. "




 261     FLAG_SET_DEFAULT(UseVectorizedMismatchIntrinsic, false);
 262   }
 263 
 264 
 265   // Adjust RTM (Restricted Transactional Memory) flags.
 266   if (UseRTMLocking) {
 267     // If CPU or OS are too old:
 268     // Can't continue because UseRTMLocking affects UseBiasedLocking flag
 269     // setting during arguments processing. See use_biased_locking().
 270     // VM_Version_init() is executed after UseBiasedLocking is used
 271     // in Thread::allocate().
 272     if (!has_tcheck()) {
 273       vm_exit_during_initialization("RTM instructions are not available on this CPU");
 274     }
 275     bool os_too_old = true;
 276 #ifdef AIX
 277     if (os::Aix::os_version() >= 0x0701031e) { // at least AIX 7.1.3.30
 278       os_too_old = false;
 279     }
 280 #endif
 281 #ifdef LINUX
 282     // At least Linux kernel 4.2, as the problematic behavior of syscalls
 283     // being called in the middle of a transaction has been addressed.
 284     // Please, refer to commit b4b56f9ecab40f3b4ef53e130c9f6663be491894
 285     // in Linux kernel source tree: https://goo.gl/Kc5i7A
 286     if (os::Linux::os_version_is_known()) {
 287       if (os::Linux::os_version() >= 0x040200)
 288         os_too_old = false;
 289     } else {
 290       vm_exit_during_initialization("RTM can not be enabled: kernel version is unknown.");
 291     }
 292 #endif
 293     if (os_too_old) {
 294       vm_exit_during_initialization("RTM is not supported on this OS version.");
 295     }
 296   }
 297 
 298   if (UseRTMLocking) {
 299 #if INCLUDE_RTM_OPT
 300     if (!UnlockExperimentalVMOptions) {
 301       vm_exit_during_initialization("UseRTMLocking is only available as experimental option on this platform. "


< prev index next >