< prev index next >

src/hotspot/share/gc/shared/gcConfig.cpp

Print this page

        

*** 38,47 **** --- 38,50 ---- #include "gc/g1/g1Arguments.hpp" #endif #if INCLUDE_PARALLELGC #include "gc/parallel/parallelArguments.hpp" #endif + #if INCLUDE_SHENANDOAHGC + #include "gc/shenandoah/shenandoahArguments.hpp" + #endif #if INCLUDE_SERIALGC #include "gc/serial/serialArguments.hpp" #endif #if INCLUDE_ZGC #include "gc/z/zArguments.hpp"
*** 55,81 **** SupportedGC(bool& flag, CollectedHeap::Name name, GCArguments& arguments, const char* hs_err_name) : _flag(flag), _name(name), _arguments(arguments), _hs_err_name(hs_err_name) {} }; ! CMSGC_ONLY(static CMSArguments cmsArguments;) ! EPSILONGC_ONLY(static EpsilonArguments epsilonArguments;) ! G1GC_ONLY(static G1Arguments g1Arguments;) ! PARALLELGC_ONLY(static ParallelArguments parallelArguments;) ! SERIALGC_ONLY(static SerialArguments serialArguments;) ! ZGC_ONLY(static ZArguments zArguments;) // Table of supported GCs, for translating between command // line flag, CollectedHeap::Name and GCArguments instance. static const SupportedGC SupportedGCs[] = { ! CMSGC_ONLY_ARG(SupportedGC(UseConcMarkSweepGC, CollectedHeap::CMS, cmsArguments, "concurrent mark sweep gc")) ! EPSILONGC_ONLY_ARG(SupportedGC(UseEpsilonGC, CollectedHeap::Epsilon, epsilonArguments, "epsilon gc")) ! G1GC_ONLY_ARG(SupportedGC(UseG1GC, CollectedHeap::G1, g1Arguments, "g1 gc")) ! PARALLELGC_ONLY_ARG(SupportedGC(UseParallelGC, CollectedHeap::Parallel, parallelArguments, "parallel gc")) ! PARALLELGC_ONLY_ARG(SupportedGC(UseParallelOldGC, CollectedHeap::Parallel, parallelArguments, "parallel gc")) ! SERIALGC_ONLY_ARG(SupportedGC(UseSerialGC, CollectedHeap::Serial, serialArguments, "serial gc")) ! ZGC_ONLY_ARG(SupportedGC(UseZGC, CollectedHeap::Z, zArguments, "z gc")) }; #define FOR_EACH_SUPPORTED_GC(var) \ for (const SupportedGC* var = &SupportedGCs[0]; var < &SupportedGCs[ARRAY_SIZE(SupportedGCs)]; var++) --- 58,86 ---- SupportedGC(bool& flag, CollectedHeap::Name name, GCArguments& arguments, const char* hs_err_name) : _flag(flag), _name(name), _arguments(arguments), _hs_err_name(hs_err_name) {} }; ! CMSGC_ONLY(static CMSArguments cmsArguments;) ! EPSILONGC_ONLY(static EpsilonArguments epsilonArguments;) ! G1GC_ONLY(static G1Arguments g1Arguments;) ! PARALLELGC_ONLY(static ParallelArguments parallelArguments;) ! SERIALGC_ONLY(static SerialArguments serialArguments;) ! ZGC_ONLY(static ZArguments zArguments;) ! SHENANDOAHGC_ONLY(static ShenandoahArguments shenandoahArguments;) // Table of supported GCs, for translating between command // line flag, CollectedHeap::Name and GCArguments instance. static const SupportedGC SupportedGCs[] = { ! CMSGC_ONLY_ARG(SupportedGC(UseConcMarkSweepGC, CollectedHeap::CMS, cmsArguments, "concurrent mark sweep gc")) ! EPSILONGC_ONLY_ARG(SupportedGC(UseEpsilonGC, CollectedHeap::Epsilon, epsilonArguments, "epsilon gc")) ! G1GC_ONLY_ARG(SupportedGC(UseG1GC, CollectedHeap::G1, g1Arguments, "g1 gc")) ! PARALLELGC_ONLY_ARG(SupportedGC(UseParallelGC, CollectedHeap::Parallel, parallelArguments, "parallel gc")) ! PARALLELGC_ONLY_ARG(SupportedGC(UseParallelOldGC, CollectedHeap::Parallel, parallelArguments, "parallel gc")) ! SHENANDOAHGC_ONLY_ARG(SupportedGC(UseShenandoahGC, CollectedHeap::Shenandoah, shenandoahArguments, "shenandoah gc")) ! SERIALGC_ONLY_ARG(SupportedGC(UseSerialGC, CollectedHeap::Serial, serialArguments, "serial gc")) ! ZGC_ONLY_ARG(SupportedGC(UseZGC, CollectedHeap::Z, zArguments, "z gc")) }; #define FOR_EACH_SUPPORTED_GC(var) \ for (const SupportedGC* var = &SupportedGCs[0]; var < &SupportedGCs[ARRAY_SIZE(SupportedGCs)]; var++)
*** 88,105 **** GCArguments* GCConfig::_arguments = NULL; bool GCConfig::_gc_selected_ergonomically = false; void GCConfig::fail_if_unsupported_gc_is_selected() { ! NOT_CMSGC( FAIL_IF_SELECTED(UseConcMarkSweepGC, true)); ! NOT_EPSILONGC( FAIL_IF_SELECTED(UseEpsilonGC, true)); ! NOT_G1GC( FAIL_IF_SELECTED(UseG1GC, true)); ! NOT_PARALLELGC(FAIL_IF_SELECTED(UseParallelGC, true)); ! NOT_PARALLELGC(FAIL_IF_SELECTED(UseParallelOldGC, true)); ! NOT_SERIALGC( FAIL_IF_SELECTED(UseSerialGC, true)); ! NOT_SERIALGC( FAIL_IF_SELECTED(UseParallelOldGC, false)); ! NOT_ZGC( FAIL_IF_SELECTED(UseZGC, true)); } void GCConfig::select_gc_ergonomically() { if (os::is_server_class_machine()) { #if INCLUDE_G1GC --- 93,111 ---- GCArguments* GCConfig::_arguments = NULL; bool GCConfig::_gc_selected_ergonomically = false; void GCConfig::fail_if_unsupported_gc_is_selected() { ! NOT_CMSGC( FAIL_IF_SELECTED(UseConcMarkSweepGC, true)); ! NOT_EPSILONGC( FAIL_IF_SELECTED(UseEpsilonGC, true)); ! NOT_G1GC( FAIL_IF_SELECTED(UseG1GC, true)); ! NOT_PARALLELGC( FAIL_IF_SELECTED(UseParallelGC, true)); ! NOT_PARALLELGC( FAIL_IF_SELECTED(UseParallelOldGC, true)); ! NOT_SERIALGC( FAIL_IF_SELECTED(UseSerialGC, true)); ! NOT_SERIALGC( FAIL_IF_SELECTED(UseParallelOldGC, false)); ! NOT_SHENANDOAHGC(FAIL_IF_SELECTED(UseShenandoahGC, true)); ! NOT_ZGC( FAIL_IF_SELECTED(UseZGC, true)); } void GCConfig::select_gc_ergonomically() { if (os::is_server_class_machine()) { #if INCLUDE_G1GC
< prev index next >