hotspot/src/share/vm/runtime/arguments.cpp
changeset 4564 55dfb20908d0
parent 4560 b6f7db60cb24
child 4579 62478db2dc78
child 4578 8c2778d19ffa
--- a/hotspot/src/share/vm/runtime/arguments.cpp	Mon Jan 04 07:04:46 2010 -0800
+++ b/hotspot/src/share/vm/runtime/arguments.cpp	Mon Jan 04 18:38:08 2010 +0100
@@ -2699,6 +2699,15 @@
     }
     ScavengeRootsInCode = 1;
   }
+#ifdef COMPILER2
+  if (EnableInvokeDynamic && DoEscapeAnalysis) {
+    // TODO: We need to find rules for invokedynamic and EA.  For now,
+    // simply disable EA by default.
+    if (FLAG_IS_DEFAULT(DoEscapeAnalysis)) {
+      DoEscapeAnalysis = false;
+    }
+  }
+#endif
 
   if (PrintGCDetails) {
     // Turn on -verbose:gc options as well
@@ -2722,6 +2731,15 @@
   // Set flags based on ergonomics.
   set_ergonomics_flags();
 
+#ifdef _LP64
+  // XXX JSR 292 currently does not support compressed oops.
+  if (EnableMethodHandles && UseCompressedOops) {
+    if (FLAG_IS_DEFAULT(UseCompressedOops) || FLAG_IS_ERGO(UseCompressedOops)) {
+      UseCompressedOops = false;
+    }
+  }
+#endif // _LP64
+
   // Check the GC selections again.
   if (!check_gc_consistency()) {
     return JNI_EINVAL;