changeset 8424:cc5c5ad8dd1c

8185572: Enable AssumeMP by default on SPARC machines Reviewed-by: kvn, dholmes, bobv
author poonam
date Tue, 15 Aug 2017 14:03:52 +0000
parents b55756ea22d8
children 79d7902dcb95
files src/share/vm/runtime/arguments.cpp
diffstat 1 files changed, 10 insertions(+), 0 deletions(-) [+]
line wrap: on
line diff
--- a/src/share/vm/runtime/arguments.cpp	Fri Aug 11 23:51:07 2017 -0400
+++ b/src/share/vm/runtime/arguments.cpp	Tue Aug 15 14:03:52 2017 +0000
@@ -4056,6 +4056,16 @@
 
   set_shared_spaces_flags();
 
+#if defined(SPARC)
+  // BIS instructions require 'membar' instruction regardless of the number
+  // of CPUs because in virtualized/container environments which might use only 1
+  // CPU, BIS instructions may produce incorrect results.
+
+  if (FLAG_IS_DEFAULT(AssumeMP)) {
+    FLAG_SET_DEFAULT(AssumeMP, true);
+  }
+#endif
+
   // Check the GC selections again.
   if (!check_gc_consistency()) {
     return JNI_EINVAL;