diff -r 08102295011d -r 18659e040c64 src/hotspot/share/runtime/globals.hpp --- a/src/hotspot/share/runtime/globals.hpp Fri Nov 01 14:18:40 2019 +0100 +++ b/src/hotspot/share/runtime/globals.hpp Wed Nov 06 17:13:26 2019 +0100 @@ -2068,6 +2068,35 @@ "if coming from AOT") \ range(0, max_jint) \ \ + diagnostic(intx, Tier0AOTInvocationThreshold, 200, \ + "Switch to interpreter to profile if the number of method " \ + "invocations crosses this threshold if coming from AOT " \ + "(applicable only with " \ + "CompilationMode=high-only|high-only-quick-internal)") \ + range(0, max_jint) \ + \ + diagnostic(intx, Tier0AOTMinInvocationThreshold, 100, \ + "Minimum number of invocations to switch to interpreter " \ + "to profile if coming from AOT " \ + "(applicable only with " \ + "CompilationMode=high-only|high-only-quick-internal)") \ + range(0, max_jint) \ + \ + diagnostic(intx, Tier0AOTCompileThreshold, 2000, \ + "Threshold at which to switch to interpreter to profile " \ + "if coming from AOT " \ + "(invocation minimum must be satisfied, " \ + "applicable only with " \ + "CompilationMode=high-only|high-only-quick-internal)") \ + range(0, max_jint) \ + \ + diagnostic(intx, Tier0AOTBackEdgeThreshold, 60000, \ + "Back edge threshold at which to switch to interpreter " \ + "to profile if coming from AOT " \ + "(applicable only with " \ + "CompilationMode=high-only|high-only-quick-internal)") \ + range(0, max_jint) \ + \ product(intx, Tier4InvocationThreshold, 5000, \ "Compile if number of method invocations crosses this " \ "threshold") \ @@ -2079,13 +2108,44 @@ \ product(intx, Tier4CompileThreshold, 15000, \ "Threshold at which tier 4 compilation is invoked (invocation " \ - "minimum must be satisfied") \ + "minimum must be satisfied)") \ range(0, max_jint) \ \ product(intx, Tier4BackEdgeThreshold, 40000, \ "Back edge threshold at which tier 4 OSR compilation is invoked") \ range(0, max_jint) \ \ + diagnostic(intx, Tier40InvocationThreshold, 5000, \ + "Compile if number of method invocations crosses this " \ + "threshold (applicable only with " \ + "CompilationMode=high-only|high-only-quick-internal)") \ + range(0, max_jint) \ + \ + diagnostic(intx, Tier40MinInvocationThreshold, 600, \ + "Minimum number of invocations to compile at tier 4 " \ + "(applicable only with " \ + "CompilationMode=high-only|high-only-quick-internal)") \ + range(0, max_jint) \ + \ + diagnostic(intx, Tier40CompileThreshold, 10000, \ + "Threshold at which tier 4 compilation is invoked (invocation " \ + "minimum must be satisfied, applicable only with " \ + "CompilationMode=high-only|high-only-quick-internal)") \ + range(0, max_jint) \ + \ + diagnostic(intx, Tier40BackEdgeThreshold, 15000, \ + "Back edge threshold at which tier 4 OSR compilation is invoked " \ + "(applicable only with " \ + "CompilationMode=high-only|high-only-quick-internal)") \ + range(0, max_jint) \ + \ + diagnostic(intx, Tier0Delay, 5, \ + "If C2 queue size grows over this amount per compiler thread " \ + "do not start profiling in the interpreter " \ + "(applicable only with " \ + "CompilationMode=high-only|high-only-quick-internal)") \ + range(0, max_jint) \ + \ product(intx, Tier3DelayOn, 5, \ "If C2 queue size grows over this amount per compiler thread " \ "stop compiling at tier 3 and start compiling at tier 2") \ @@ -2117,7 +2177,9 @@ \ product(intx, Tier0ProfilingStartPercentage, 200, \ "Start profiling in interpreter if the counters exceed tier 3 " \ - "thresholds by the specified percentage") \ + "thresholds (tier 4 thresholds with " \ + "CompilationMode=high-only|high-only-quick-internal)" \ + "by the specified percentage") \ range(0, max_jint) \ \ product(uintx, IncreaseFirstTierCompileThresholdAt, 50, \ @@ -2133,6 +2195,14 @@ "Maximum rate sampling interval (in milliseconds)") \ range(0, max_intx) \ \ + product(ccstr, CompilationMode, "default", \ + "Compilation modes: " \ + "default: normal tiered compilation; " \ + "quick-only: C1-only mode; " \ + "high-only: C2/JVMCI-only mode; " \ + "high-only-quick-internal: C2/JVMCI-only mode, " \ + "with JVMCI compiler compiled with C1.") \ + \ product_pd(bool, TieredCompilation, \ "Enable tiered compilation") \ \ @@ -2162,9 +2232,6 @@ "Maximum total size of NIO direct-buffer allocations") \ range(0, max_jlong) \ \ - product(bool, ClassForNameDeferLinking, false, \ - "Revert to not linking in Class.forName()") \ - \ /* Flags used for temporary code during development */ \ \ diagnostic(bool, UseNewCode, false, \