src/share/vm/runtime/arguments.cpp

changeset 1679
745c853ee57f
parent 1623
99af867dfa05
child 1692
7b4415a18c8a
     1.1 --- a/src/share/vm/runtime/arguments.cpp	Wed Jan 27 22:38:37 2010 -0800
     1.2 +++ b/src/share/vm/runtime/arguments.cpp	Fri Jan 29 14:51:38 2010 -0800
     1.3 @@ -1487,6 +1487,20 @@
     1.4  //===========================================================================================================
     1.5  // Parsing of main arguments
     1.6  
     1.7 +bool Arguments::verify_interval(uintx val, uintx min,
     1.8 +                                uintx max, const char* name) {
     1.9 +  // Returns true iff value is in the inclusive interval [min..max]
    1.10 +  // false, otherwise.
    1.11 +  if (val >= min && val <= max) {
    1.12 +    return true;
    1.13 +  }
    1.14 +  jio_fprintf(defaultStream::error_stream(),
    1.15 +              "%s of " UINTX_FORMAT " is invalid; must be between " UINTX_FORMAT
    1.16 +              " and " UINTX_FORMAT "\n",
    1.17 +              name, val, min, max);
    1.18 +  return false;
    1.19 +}
    1.20 +
    1.21  bool Arguments::verify_percentage(uintx value, const char* name) {
    1.22    if (value <= 100) {
    1.23      return true;
    1.24 @@ -1723,6 +1737,16 @@
    1.25      status = false;
    1.26    }
    1.27  
    1.28 +  status = status && verify_interval(RefDiscoveryPolicy,
    1.29 +                                     ReferenceProcessor::DiscoveryPolicyMin,
    1.30 +                                     ReferenceProcessor::DiscoveryPolicyMax,
    1.31 +                                     "RefDiscoveryPolicy");
    1.32 +
    1.33 +  // Limit the lower bound of this flag to 1 as it is used in a division
    1.34 +  // expression.
    1.35 +  status = status && verify_interval(TLABWasteTargetPercent,
    1.36 +                                     1, 100, "TLABWasteTargetPercent");
    1.37 +
    1.38    return status;
    1.39  }
    1.40  

mercurial