358 // "deprecated_in" or "obsolete_in" fields may be set to "undefined", but not both.
359 // When the JDK version reaches 'deprecated_in' limit, the JVM will process this flag on
360 // the command-line as usual, but will issue a warning.
361 // When the JDK version reaches 'obsolete_in' limit, the JVM will continue accepting this flag on
362 // the command-line, while issuing a warning and ignoring the flag value.
363 // Once the JDK version reaches 'expired_in' limit, the JVM will flatly refuse to admit the
364 // existence of the flag.
365 //
366 // MANUAL CLEANUP ON JDK VERSION UPDATES:
367 // This table ensures that the handling of options will update automatically when the JDK
368 // version is incremented, but the source code needs to be cleanup up manually:
369 // - As "deprecated" options age into "obsolete" or "expired" options, the associated "globals"
370 // variable should be removed, as well as users of the variable.
371 // - As "deprecated" options age into "obsolete" options, move the entry into the
372 // "Obsolete Flags" section of the table.
373 // - All expired options should be removed from the table.
374 static SpecialFlag const special_jvm_flags[] = {
375 // -------------- Deprecated Flags --------------
376 // --- Non-alias flags - sorted by obsolete_in then expired_in:
377 { "MaxGCMinorPauseMillis", JDK_Version::jdk(8), JDK_Version::undefined(), JDK_Version::undefined() },
378 { "AutoGCSelectPauseMillis", JDK_Version::jdk(9), JDK_Version::undefined(), JDK_Version::jdk(10) },
379 { "UseAutoGCSelectPolicy", JDK_Version::jdk(9), JDK_Version::undefined(), JDK_Version::jdk(10) },
380 { "UseParNewGC", JDK_Version::jdk(9), JDK_Version::undefined(), JDK_Version::jdk(10) },
381 { "ExplicitGCInvokesConcurrentAndUnloadsClasses", JDK_Version::jdk(9), JDK_Version::undefined(), JDK_Version::jdk(10) },
382 { "ConvertSleepToYield", JDK_Version::jdk(9), JDK_Version::jdk(10), JDK_Version::jdk(11) },
383 { "ConvertYieldToSleep", JDK_Version::jdk(9), JDK_Version::jdk(10), JDK_Version::jdk(11) },
384
385 // --- Deprecated alias flags (see also aliased_jvm_flags) - sorted by obsolete_in then expired_in:
386 { "DefaultMaxRAMFraction", JDK_Version::jdk(8), JDK_Version::undefined(), JDK_Version::undefined() },
387 { "CreateMinidumpOnCrash", JDK_Version::jdk(9), JDK_Version::undefined(), JDK_Version::undefined() },
388 { "CMSMarkStackSizeMax", JDK_Version::jdk(9), JDK_Version::undefined(), JDK_Version::jdk(10) },
389 { "CMSMarkStackSize", JDK_Version::jdk(9), JDK_Version::undefined(), JDK_Version::jdk(10) },
390 { "G1MarkStackSize", JDK_Version::jdk(9), JDK_Version::undefined(), JDK_Version::jdk(10) },
391 { "ParallelMarkingThreads", JDK_Version::jdk(9), JDK_Version::undefined(), JDK_Version::jdk(10) },
392 { "ParallelCMSThreads", JDK_Version::jdk(9), JDK_Version::undefined(), JDK_Version::jdk(10) },
393
394 // -------------- Obsolete Flags - sorted by expired_in --------------
395 { "UseOldInlining", JDK_Version::undefined(), JDK_Version::jdk(9), JDK_Version::jdk(10) },
396 { "SafepointPollOffset", JDK_Version::undefined(), JDK_Version::jdk(9), JDK_Version::jdk(10) },
397 { "UseBoundThreads", JDK_Version::undefined(), JDK_Version::jdk(9), JDK_Version::jdk(10) },
|
358 // "deprecated_in" or "obsolete_in" fields may be set to "undefined", but not both.
359 // When the JDK version reaches 'deprecated_in' limit, the JVM will process this flag on
360 // the command-line as usual, but will issue a warning.
361 // When the JDK version reaches 'obsolete_in' limit, the JVM will continue accepting this flag on
362 // the command-line, while issuing a warning and ignoring the flag value.
363 // Once the JDK version reaches 'expired_in' limit, the JVM will flatly refuse to admit the
364 // existence of the flag.
365 //
366 // MANUAL CLEANUP ON JDK VERSION UPDATES:
367 // This table ensures that the handling of options will update automatically when the JDK
368 // version is incremented, but the source code needs to be cleanup up manually:
369 // - As "deprecated" options age into "obsolete" or "expired" options, the associated "globals"
370 // variable should be removed, as well as users of the variable.
371 // - As "deprecated" options age into "obsolete" options, move the entry into the
372 // "Obsolete Flags" section of the table.
373 // - All expired options should be removed from the table.
374 static SpecialFlag const special_jvm_flags[] = {
375 // -------------- Deprecated Flags --------------
376 // --- Non-alias flags - sorted by obsolete_in then expired_in:
377 { "MaxGCMinorPauseMillis", JDK_Version::jdk(8), JDK_Version::undefined(), JDK_Version::undefined() },
378 { "UseConcMarkSweepGC", JDK_Version::jdk(9), JDK_Version::undefined(), JDK_Version::undefined() },
379 { "AutoGCSelectPauseMillis", JDK_Version::jdk(9), JDK_Version::undefined(), JDK_Version::jdk(10) },
380 { "UseAutoGCSelectPolicy", JDK_Version::jdk(9), JDK_Version::undefined(), JDK_Version::jdk(10) },
381 { "UseParNewGC", JDK_Version::jdk(9), JDK_Version::undefined(), JDK_Version::jdk(10) },
382 { "ExplicitGCInvokesConcurrentAndUnloadsClasses", JDK_Version::jdk(9), JDK_Version::undefined(), JDK_Version::jdk(10) },
383 { "ConvertSleepToYield", JDK_Version::jdk(9), JDK_Version::jdk(10), JDK_Version::jdk(11) },
384 { "ConvertYieldToSleep", JDK_Version::jdk(9), JDK_Version::jdk(10), JDK_Version::jdk(11) },
385
386 // --- Deprecated alias flags (see also aliased_jvm_flags) - sorted by obsolete_in then expired_in:
387 { "DefaultMaxRAMFraction", JDK_Version::jdk(8), JDK_Version::undefined(), JDK_Version::undefined() },
388 { "CreateMinidumpOnCrash", JDK_Version::jdk(9), JDK_Version::undefined(), JDK_Version::undefined() },
389 { "CMSMarkStackSizeMax", JDK_Version::jdk(9), JDK_Version::undefined(), JDK_Version::jdk(10) },
390 { "CMSMarkStackSize", JDK_Version::jdk(9), JDK_Version::undefined(), JDK_Version::jdk(10) },
391 { "G1MarkStackSize", JDK_Version::jdk(9), JDK_Version::undefined(), JDK_Version::jdk(10) },
392 { "ParallelMarkingThreads", JDK_Version::jdk(9), JDK_Version::undefined(), JDK_Version::jdk(10) },
393 { "ParallelCMSThreads", JDK_Version::jdk(9), JDK_Version::undefined(), JDK_Version::jdk(10) },
394
395 // -------------- Obsolete Flags - sorted by expired_in --------------
396 { "UseOldInlining", JDK_Version::undefined(), JDK_Version::jdk(9), JDK_Version::jdk(10) },
397 { "SafepointPollOffset", JDK_Version::undefined(), JDK_Version::jdk(9), JDK_Version::jdk(10) },
398 { "UseBoundThreads", JDK_Version::undefined(), JDK_Version::jdk(9), JDK_Version::jdk(10) },
|