228 { "MinTrainLength", JDK_Version::jdk(5), JDK_Version::jdk(7) }, 229 { "AppendRatio", JDK_Version::jdk_update(6,10), JDK_Version::jdk(7) }, 230 { "DefaultMaxRAM", JDK_Version::jdk_update(6,18), JDK_Version::jdk(7) }, 231 { "DefaultInitialRAMFraction", 232 JDK_Version::jdk_update(6,18), JDK_Version::jdk(7) }, 233 { "UseDepthFirstScavengeOrder", 234 JDK_Version::jdk_update(6,22), JDK_Version::jdk(7) }, 235 { "HandlePromotionFailure", 236 JDK_Version::jdk_update(6,24), JDK_Version::jdk(8) }, 237 { "MaxLiveObjectEvacuationRatio", 238 JDK_Version::jdk_update(6,24), JDK_Version::jdk(8) }, 239 { "ForceSharedSpaces", JDK_Version::jdk_update(6,25), JDK_Version::jdk(8) }, 240 { "UseParallelOldGCCompacting", 241 JDK_Version::jdk_update(6,27), JDK_Version::jdk(8) }, 242 { "UseParallelDensePrefixUpdate", 243 JDK_Version::jdk_update(6,27), JDK_Version::jdk(8) }, 244 { "UseParallelOldGCDensePrefix", 245 JDK_Version::jdk_update(6,27), JDK_Version::jdk(8) }, 246 { "AllowTransitionalJSR292", JDK_Version::jdk(7), JDK_Version::jdk(8) }, 247 { "UseCompressedStrings", JDK_Version::jdk(7), JDK_Version::jdk(8) }, 248 #ifdef PRODUCT 249 { "DesiredMethodLimit", 250 JDK_Version::jdk_update(7, 2), JDK_Version::jdk(8) }, 251 #endif // PRODUCT 252 { NULL, JDK_Version(0), JDK_Version(0) } 253 }; 254 255 // Returns true if the flag is obsolete and fits into the range specified 256 // for being ignored. In the case that the flag is ignored, the 'version' 257 // value is filled in with the version number when the flag became 258 // obsolete so that that value can be displayed to the user. 259 bool Arguments::is_newly_obsolete(const char *s, JDK_Version* version) { 260 int i = 0; 261 assert(version != NULL, "Must provide a version buffer"); 262 while (obsolete_jvm_flags[i].name != NULL) { 263 const ObsoleteFlag& flag_status = obsolete_jvm_flags[i]; 264 // <flag>=xxx form 265 // [-|+]<flag> form 266 if ((strncmp(flag_status.name, s, strlen(flag_status.name)) == 0) || 267 ((s[0] == '+' || s[0] == '-') && | 228 { "MinTrainLength", JDK_Version::jdk(5), JDK_Version::jdk(7) }, 229 { "AppendRatio", JDK_Version::jdk_update(6,10), JDK_Version::jdk(7) }, 230 { "DefaultMaxRAM", JDK_Version::jdk_update(6,18), JDK_Version::jdk(7) }, 231 { "DefaultInitialRAMFraction", 232 JDK_Version::jdk_update(6,18), JDK_Version::jdk(7) }, 233 { "UseDepthFirstScavengeOrder", 234 JDK_Version::jdk_update(6,22), JDK_Version::jdk(7) }, 235 { "HandlePromotionFailure", 236 JDK_Version::jdk_update(6,24), JDK_Version::jdk(8) }, 237 { "MaxLiveObjectEvacuationRatio", 238 JDK_Version::jdk_update(6,24), JDK_Version::jdk(8) }, 239 { "ForceSharedSpaces", JDK_Version::jdk_update(6,25), JDK_Version::jdk(8) }, 240 { "UseParallelOldGCCompacting", 241 JDK_Version::jdk_update(6,27), JDK_Version::jdk(8) }, 242 { "UseParallelDensePrefixUpdate", 243 JDK_Version::jdk_update(6,27), JDK_Version::jdk(8) }, 244 { "UseParallelOldGCDensePrefix", 245 JDK_Version::jdk_update(6,27), JDK_Version::jdk(8) }, 246 { "AllowTransitionalJSR292", JDK_Version::jdk(7), JDK_Version::jdk(8) }, 247 { "UseCompressedStrings", JDK_Version::jdk(7), JDK_Version::jdk(8) }, 248 { "AlwaysInflate", JDK_Version::jdk_update(7,40), JDK_Version::jdk(8) }, 249 { "AnonymousClasses", JDK_Version::jdk_update(7,40), JDK_Version::jdk(8) }, 250 { "CMSOldPLABReactivityCeiling", 251 JDK_Version::jdk_update(7,40), JDK_Version::jdk(8) }, 252 { "EventLogLength", JDK_Version::jdk_update(7,40), JDK_Version::jdk(8) }, 253 { "GCOverheadReporting", JDK_Version::jdk_update(7,40), JDK_Version::jdk(8) }, 254 { "GCOverheadReportingPeriodMS", 255 JDK_Version::jdk_update(7,40), JDK_Version::jdk(8) }, 256 { "HPILibPath", JDK_Version::jdk_update(7,40), JDK_Version::jdk(8) }, 257 { "PreSpinYield", JDK_Version::jdk_update(7,40), JDK_Version::jdk(8) }, 258 { "PreBlockSpin", JDK_Version::jdk_update(7,40), JDK_Version::jdk(8) }, 259 { "PostSpinYield", JDK_Version::jdk_update(7,40), JDK_Version::jdk(8) }, 260 { "PreserveMarkStackSize", 261 JDK_Version::jdk_update(7,40), JDK_Version::jdk(8) }, 262 { "ReadSpinIterations", JDK_Version::jdk_update(7,40), JDK_Version::jdk(8) }, 263 { "StressTieredRuntime", JDK_Version::jdk_update(7,40), JDK_Version::jdk(8) }, 264 { "Tier1Inline", JDK_Version::jdk_update(7,40), JDK_Version::jdk(8) }, 265 { "Tier1FreqInlineSize", JDK_Version::jdk_update(7,40), JDK_Version::jdk(8) }, 266 { "Tier1MaxInlineSize", JDK_Version::jdk_update(7,40), JDK_Version::jdk(8) }, 267 { "Tier1LoopOptsCount", JDK_Version::jdk_update(7,40), JDK_Version::jdk(8) }, 268 { "UseSpinning", JDK_Version::jdk_update(7,40), JDK_Version::jdk(8) }, 269 #ifdef PRODUCT 270 { "DesiredMethodLimit", 271 JDK_Version::jdk_update(7, 2), JDK_Version::jdk(8) }, 272 #endif // PRODUCT 273 { NULL, JDK_Version(0), JDK_Version(0) } 274 }; 275 276 // Returns true if the flag is obsolete and fits into the range specified 277 // for being ignored. In the case that the flag is ignored, the 'version' 278 // value is filled in with the version number when the flag became 279 // obsolete so that that value can be displayed to the user. 280 bool Arguments::is_newly_obsolete(const char *s, JDK_Version* version) { 281 int i = 0; 282 assert(version != NULL, "Must provide a version buffer"); 283 while (obsolete_jvm_flags[i].name != NULL) { 284 const ObsoleteFlag& flag_status = obsolete_jvm_flags[i]; 285 // <flag>=xxx form 286 // [-|+]<flag> form 287 if ((strncmp(flag_status.name, s, strlen(flag_status.name)) == 0) || 288 ((s[0] == '+' || s[0] == '-') && |