Rev1 RFR (S): 8112746 Followup to JEP 245: Validate JVM Command-Line Flag Arguments
gerard.ziemski at oracle.com
Thu Jun 25 21:58:38 UTC 2015
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 https://bugs.openjdk.java.net/browse/JDK-8112746 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 (ObjectAlignment.java and Options.java) 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)
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/ObjectAlignment.java | 3 +-
test/runtime/contended/Options.java | 2 -
7 files changed, 103 insertions(+), 115 deletions(-)
More information about the hotspot-dev