< prev index next > src/hotspot/share/compiler/compilerDefinitions.cpp
Print this page
* or visit www.oracle.com if you need additional information or have any
* questions.
*
*/
+ #include "code/aotCodeCache.hpp"
#include "code/codeCache.hpp"
#include "compiler/compilerDefinitions.inline.hpp"
#include "interpreter/invocationCounter.hpp"
#include "jvm_io.h"
#include "runtime/arguments.hpp"
FLAG_SET_CMDLINE(Tier4InvocationThreshold, 0);
}
}
}
+ // Current Leyden implementation requires SegmentedCodeCache: the archive-backed code
+ // cache would be initialized only then. Force SegmentedCodeCache if we are loading/storing
+ // cached code. TODO: Resolve this in code cache initialization code.
+ if (!SegmentedCodeCache && AOTCodeCache::is_caching_enabled()) {
+ FLAG_SET_ERGO(SegmentedCodeCache, true);
+ if (FLAG_IS_DEFAULT(ReservedCodeCacheSize)) {
+ FLAG_SET_ERGO(ReservedCodeCacheSize,
+ MIN2(CODE_CACHE_DEFAULT_LIMIT, (size_t)ReservedCodeCacheSize * 5));
+ }
+ }
+
if (CompileThresholdScaling < 0) {
vm_exit_during_initialization("Negative value specified for CompileThresholdScaling", nullptr);
}
if (CompilationModeFlag::disable_intermediate()) {
// Do JVMCI specific settings
set_jvmci_specific_flags();
#endif
+ if (PreloadOnly) {
+ // Disable profiling/counter updates in interpreter and C1.
+ // This effectively disables most of the normal JIT (re-)compilations.
+ FLAG_SET_DEFAULT(ProfileInterpreter, false);
+ FLAG_SET_DEFAULT(UseOnStackReplacement, false);
+ FLAG_SET_DEFAULT(UseLoopCounter, false);
+
+ // Disable compilations through training data replay.
+ FLAG_SET_DEFAULT(AOTReplayTraining, false);
+ }
+
if (UseOnStackReplacement && !UseLoopCounter) {
warning("On-stack-replacement requires loop counters; enabling loop counters");
FLAG_SET_DEFAULT(UseLoopCounter, true);
}
< prev index next >