2085 } else { 2086 warning("Concurrent code cache evacuation is enabled, but barriers for constants are disabled. " 2087 "This may lead to surprising crashes."); 2088 } 2089 } 2090 } else { 2091 if (ShenandoahBarriersForConst) { 2092 if (FLAG_IS_DEFAULT(ShenandoahBarriersForConst)) { 2093 warning("Concurrent code cache evacuation is disabled, disabling barriers for constants."); 2094 FLAG_SET_DEFAULT(ShenandoahBarriersForConst, false); 2095 } 2096 } 2097 } 2098 2099 if (ShenandoahAlwaysPreTouch) { 2100 if (!FLAG_IS_DEFAULT(ShenandoahUncommitDelay)) { 2101 warning("AlwaysPreTouch is enabled, disabling ShenandoahUncommitDelay"); 2102 } 2103 FLAG_SET_DEFAULT(ShenandoahUncommitDelay, max_uintx); 2104 } 2105 2106 if (UseStringDeduplication) { 2107 warning("String Deduplication is unstable with Shenandoah, forcefully disabled."); 2108 FLAG_SET_DEFAULT(UseStringDeduplication, false); 2109 } 2110 } 2111 2112 void Arguments::set_gc_specific_flags() { 2113 #if INCLUDE_ALL_GCS 2114 // Set per-collector flags 2115 if (UseParallelGC || UseParallelOldGC) { 2116 set_parallel_gc_flags(); 2117 } else if (UseConcMarkSweepGC) { 2118 set_cms_and_parnew_gc_flags(); 2119 } else if (UseG1GC) { 2120 set_g1_gc_flags(); 2121 } else if (UseShenandoahGC) { 2122 set_shenandoah_gc_flags(); 2123 } 2124 if (AssumeMP && !UseSerialGC) { 2125 if (FLAG_IS_DEFAULT(ParallelGCThreads) && ParallelGCThreads == 1) { 2126 warning("If the number of processors is expected to increase from one, then" 2127 " you should configure the number of parallel GC threads appropriately" 2128 " using -XX:ParallelGCThreads=N"); 2129 } | 2085 } else { 2086 warning("Concurrent code cache evacuation is enabled, but barriers for constants are disabled. " 2087 "This may lead to surprising crashes."); 2088 } 2089 } 2090 } else { 2091 if (ShenandoahBarriersForConst) { 2092 if (FLAG_IS_DEFAULT(ShenandoahBarriersForConst)) { 2093 warning("Concurrent code cache evacuation is disabled, disabling barriers for constants."); 2094 FLAG_SET_DEFAULT(ShenandoahBarriersForConst, false); 2095 } 2096 } 2097 } 2098 2099 if (ShenandoahAlwaysPreTouch) { 2100 if (!FLAG_IS_DEFAULT(ShenandoahUncommitDelay)) { 2101 warning("AlwaysPreTouch is enabled, disabling ShenandoahUncommitDelay"); 2102 } 2103 FLAG_SET_DEFAULT(ShenandoahUncommitDelay, max_uintx); 2104 } 2105 } 2106 2107 void Arguments::set_gc_specific_flags() { 2108 #if INCLUDE_ALL_GCS 2109 // Set per-collector flags 2110 if (UseParallelGC || UseParallelOldGC) { 2111 set_parallel_gc_flags(); 2112 } else if (UseConcMarkSweepGC) { 2113 set_cms_and_parnew_gc_flags(); 2114 } else if (UseG1GC) { 2115 set_g1_gc_flags(); 2116 } else if (UseShenandoahGC) { 2117 set_shenandoah_gc_flags(); 2118 } 2119 if (AssumeMP && !UseSerialGC) { 2120 if (FLAG_IS_DEFAULT(ParallelGCThreads) && ParallelGCThreads == 1) { 2121 warning("If the number of processors is expected to increase from one, then" 2122 " you should configure the number of parallel GC threads appropriately" 2123 " using -XX:ParallelGCThreads=N"); 2124 } |