# HG changeset patch # User davleopo # Date 1473941538 -7200 # Thu Sep 15 14:12:18 2016 +0200 # Node ID dda49db50bdb746770e382590b96fe8089c71eb5 # Parent f940af863003986086f75b6b939df571e6c70763 8166125: [JVMCI] Missing JVMCI flag default values diff --git a/src/share/vm/runtime/arguments.cpp b/src/share/vm/runtime/arguments.cpp --- a/src/share/vm/runtime/arguments.cpp +++ b/src/share/vm/runtime/arguments.cpp @@ -1834,6 +1834,34 @@ } } +#if INCLUDE_JVMCI +void Arguments::set_jvmci_specific_flags() { + if (UseJVMCICompiler) { + if (FLAG_IS_DEFAULT(TypeProfileWidth)) { + FLAG_SET_DEFAULT(TypeProfileWidth, 8); + } + if (FLAG_IS_DEFAULT(OnStackReplacePercentage)) { + FLAG_SET_DEFAULT(OnStackReplacePercentage, 933); + } + if (FLAG_IS_DEFAULT(ReservedCodeCacheSize)) { + FLAG_SET_DEFAULT(ReservedCodeCacheSize, 64*M); + } + if (FLAG_IS_DEFAULT(InitialCodeCacheSize)) { + FLAG_SET_DEFAULT(InitialCodeCacheSize, 16*M); + } + if (FLAG_IS_DEFAULT(MetaspaceSize)) { + FLAG_SET_DEFAULT(MetaspaceSize, 12*M); + } + if (FLAG_IS_DEFAULT(NewSizeThreadIncrease)) { + FLAG_SET_DEFAULT(NewSizeThreadIncrease, 4*K); + } + if (FLAG_IS_DEFAULT(TypeProfileLevel)) { + FLAG_SET_DEFAULT(TypeProfileLevel, 0); + } + } +} +#endif + void Arguments::set_ergonomics_flags() { select_gc(); @@ -2411,14 +2439,6 @@ warning("forcing ScavengeRootsInCode non-zero because JVMCI is enabled"); ScavengeRootsInCode = 1; } - if (FLAG_IS_DEFAULT(TypeProfileLevel)) { - TypeProfileLevel = 0; - } - if (UseJVMCICompiler) { - if (FLAG_IS_DEFAULT(TypeProfileWidth)) { - TypeProfileWidth = 8; - } - } } #endif @@ -4345,6 +4365,10 @@ // Set flags based on ergonomics. set_ergonomics_flags(); +#if INCLUDE_JVMCI + set_jvmci_specific_flags(); +#endif + set_shared_spaces_flags(); // Check the GC selections again. diff --git a/src/share/vm/runtime/arguments.hpp b/src/share/vm/runtime/arguments.hpp --- a/src/share/vm/runtime/arguments.hpp +++ b/src/share/vm/runtime/arguments.hpp @@ -631,6 +631,7 @@ #if INCLUDE_JVMCI // Check consistency of jvmci vm argument settings. static bool check_jvmci_args_consistency(); + static void set_jvmci_specific_flags(); #endif // Check for consistency in the selection of the garbage collector. static bool check_gc_consistency(); // Check user-selected gc