289 } 290 if (FLAG_IS_DEFAULT(Tier3CompileThreshold)) { 291 Tier3CompileThreshold = 5000; 292 } 293 if (FLAG_IS_DEFAULT(Tier3MinInvocationThreshold)) { 294 Tier3MinInvocationThreshold = 500; 295 } 296 297 FLAG_SET_DEFAULT(TypeProfileLevel, 0); // unsupported 298 299 // This machine does not allow unaligned memory accesses 300 if (UseUnalignedAccesses) { 301 if (!FLAG_IS_DEFAULT(UseUnalignedAccesses)) 302 warning("Unaligned memory access is not available on this CPU"); 303 FLAG_SET_DEFAULT(UseUnalignedAccesses, false); 304 } 305 306 _is_initialized = true; 307 } 308 309 bool VM_Version::use_biased_locking() { 310 get_os_cpu_info(); 311 // The cost of CAS on uniprocessor ARM v6 and later is low compared to the 312 // overhead related to slightly longer Biased Locking execution path. 313 // Testing shows no improvement when running with Biased Locking enabled 314 // on an ARMv6 and higher uniprocessor systems. The situation is different on 315 // ARMv5 and MP systems. 316 // 317 // Therefore the Biased Locking is enabled on ARMv5 and ARM MP only. 318 // 319 return (!os::is_MP() && (arm_arch() > 5)) ? false : true; 320 } 321 322 #define EXP 323 324 // Temporary override for experimental features 325 // Copied from Abstract_VM_Version 326 const char* VM_Version::vm_info_string() { 327 switch (Arguments::mode()) { 328 case Arguments::_int: 329 return UseSharedSpaces ? "interpreted mode, sharing" EXP : "interpreted mode" EXP; 330 case Arguments::_mixed: 331 return UseSharedSpaces ? "mixed mode, sharing" EXP : "mixed mode" EXP; 332 case Arguments::_comp: 333 return UseSharedSpaces ? "compiled mode, sharing" EXP : "compiled mode" EXP; 334 }; 335 ShouldNotReachHere(); 336 return ""; 337 } | 289 } 290 if (FLAG_IS_DEFAULT(Tier3CompileThreshold)) { 291 Tier3CompileThreshold = 5000; 292 } 293 if (FLAG_IS_DEFAULT(Tier3MinInvocationThreshold)) { 294 Tier3MinInvocationThreshold = 500; 295 } 296 297 FLAG_SET_DEFAULT(TypeProfileLevel, 0); // unsupported 298 299 // This machine does not allow unaligned memory accesses 300 if (UseUnalignedAccesses) { 301 if (!FLAG_IS_DEFAULT(UseUnalignedAccesses)) 302 warning("Unaligned memory access is not available on this CPU"); 303 FLAG_SET_DEFAULT(UseUnalignedAccesses, false); 304 } 305 306 _is_initialized = true; 307 } 308 309 #define EXP 310 311 // Temporary override for experimental features 312 // Copied from Abstract_VM_Version 313 const char* VM_Version::vm_info_string() { 314 switch (Arguments::mode()) { 315 case Arguments::_int: 316 return UseSharedSpaces ? "interpreted mode, sharing" EXP : "interpreted mode" EXP; 317 case Arguments::_mixed: 318 return UseSharedSpaces ? "mixed mode, sharing" EXP : "mixed mode" EXP; 319 case Arguments::_comp: 320 return UseSharedSpaces ? "compiled mode, sharing" EXP : "compiled mode" EXP; 321 }; 322 ShouldNotReachHere(); 323 return ""; 324 } |