changeset 13512:ca50acf57289

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 525e9457b66a
children ec630fd4bf73 ad3c9d35ee12
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	Tue Aug 15 15:02:40 2017 +0300
+++ b/src/share/vm/runtime/arguments.cpp	Tue Aug 15 14:03:52 2017 +0000
@@ -4462,6 +4462,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;