diff src/share/vm/runtime/arguments.cpp @ 325:93befa083681

6741004: UseLargePages + UseCompressedOops breaks implicit null checking guard page Summary: Turn off c2 implicit null checking on windows and large pages specified. Reviewed-by: jrose, xlu
author coleenp
date Tue, 02 Sep 2008 15:18:26 -0400
parents aa8f54688692
children 032ddb9432ad
line wrap: on
line diff
--- a/src/share/vm/runtime/arguments.cpp	Sun Aug 31 15:24:54 2008 -0700
+++ b/src/share/vm/runtime/arguments.cpp	Tue Sep 02 15:18:26 2008 -0400
@@ -1204,15 +1204,17 @@
       // Turn off until bug is fixed.
       // FLAG_SET_ERGO(bool, UseCompressedOops, true);
     }
+#ifdef _WIN64
+    if (UseLargePages && UseCompressedOops) {
+      // Cannot allocate guard pages for implicit checks in indexed addressing
+      // mode, when large pages are specified on windows.
+      FLAG_SET_DEFAULT(UseImplicitNullCheckForNarrowOop, false);
+    }
+#endif //  _WIN64
   } else {
     if (UseCompressedOops && !FLAG_IS_DEFAULT(UseCompressedOops)) {
       // If specified, give a warning
-      if (UseConcMarkSweepGC){
-        warning("Compressed Oops does not work with CMS");
-      } else {
-        warning(
-          "Max heap size too large for Compressed Oops");
-      }
+      warning( "Max heap size too large for Compressed Oops");
       FLAG_SET_DEFAULT(UseCompressedOops, false);
     }
   }