hotspot/src/share/vm/runtime/arguments.cpp
changeset 190 e9a0a9dcd4f6
parent 1 489c9b5090e2
child 219 ac2d788217ca
--- a/hotspot/src/share/vm/runtime/arguments.cpp	Wed Dec 05 09:00:00 2007 -0800
+++ b/hotspot/src/share/vm/runtime/arguments.cpp	Wed Dec 05 09:01:00 2007 -0800
@@ -1254,6 +1254,22 @@
 
 // Aggressive optimization flags  -XX:+AggressiveOpts
 void Arguments::set_aggressive_opts_flags() {
+#ifdef COMPILER2
+  if (AggressiveOpts || !FLAG_IS_DEFAULT(AutoBoxCacheMax)) {
+    if (FLAG_IS_DEFAULT(EliminateAutoBox)) {
+      FLAG_SET_DEFAULT(EliminateAutoBox, true);
+    }
+    if (FLAG_IS_DEFAULT(AutoBoxCacheMax)) {
+      FLAG_SET_DEFAULT(AutoBoxCacheMax, 20000);
+    }
+
+    // Feed the cache size setting into the JDK
+    char buffer[1024];
+    sprintf(buffer, "java.lang.Integer.IntegerCache.high=%d", AutoBoxCacheMax);
+    add_property(buffer);
+  }
+#endif
+
   if (AggressiveOpts) {
 NOT_WINDOWS(
     // No measured benefit on Windows