1.1 --- a/src/share/vm/runtime/os.hpp Mon Jul 07 10:18:33 2014 +0200 1.2 +++ b/src/share/vm/runtime/os.hpp Wed Sep 10 00:44:16 2014 -0400 1.3 @@ -214,13 +214,14 @@ 1.4 1.5 // Interface for detecting multiprocessor system 1.6 static inline bool is_MP() { 1.7 -#if !INCLUDE_NMT 1.8 - assert(_processor_count > 0, "invalid processor count"); 1.9 - return _processor_count > 1 || AssumeMP; 1.10 -#else 1.11 - // NMT needs atomic operations before this initialization. 1.12 - return true; 1.13 -#endif 1.14 + // During bootstrap if _processor_count is not yet initialized 1.15 + // we claim to be MP as that is safest. If any platform has a 1.16 + // stub generator that might be triggered in this phase and for 1.17 + // which being declared MP when in fact not, is a problem - then 1.18 + // the bootstrap routine for the stub generator needs to check 1.19 + // the processor count directly and leave the bootstrap routine 1.20 + // in place until called after initialization has ocurred. 1.21 + return (_processor_count != 1) || AssumeMP; 1.22 } 1.23 static julong available_memory(); 1.24 static julong physical_memory();