--- 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