Rev1 RFR (S): 8112746 Followup to JEP 245: Validate JVM Command-Line Flag Arguments

Gerard Ziemski gerard.ziemski at
Thu Jun 25 21:58:38 UTC 2015

hi all,

This webrev gets the macro and quotes fix right.

Please review this followup to my recent JEP 245 checkin. It addresses 
the issues raised by Coleen, Dmitry and Kim during webrev.

You can see  for 
details, but the most important change here is that we only check 
constraint if the range check passes first.

To quickly recap: I changed that part of the code when David pointed out 
that I had to modify 2 tests in a way that looked like a regression - I 
removed some test cases. However, Kim, later pointed out that the 
original code had the advantage of having constraints guaranteed that 
the flag values were within ranges.

I checked in the code with ranges and constraints being checked both 
regardless of each other, but this followup restores the original 
behavior (and simplifies the code), where we first check ranges and only 
check constraints if range passes.

The 2 tests ( and seem to loose some 
test cases, but those paths are still tested (though with different 
values), so we in fact do not loose anything from test coverage point of 

The change passes JPRT (hotspot) and RBT (vm.quick.testlist)


this issue:
    JEP 245:

hg stat:

# hg_stat
  src/share/vm/gc/g1/g1_globals.hpp                     |    4 +-
  src/share/vm/runtime/commandLineFlagConstraintsGC.cpp |    5 +-
  src/share/vm/runtime/commandLineFlagRangeList.cpp     |   58 ++++------
  src/share/vm/runtime/globals.cpp                      |  129 +++++++++++++----------
  src/share/vm/runtime/globals.hpp                      |   17 +--
  test/runtime/CompressedOops/      |    3 +-
  test/runtime/contended/                   |    2 -
  7 files changed, 103 insertions(+), 115 deletions(-)

More information about the hotspot-dev mailing list