RFR: 8256508: Improve CompileCommand flag

Nils Eliasson neliasso at openjdk.java.net
Fri Nov 20 09:51:13 UTC 2020


The current implementation of compile command has two types of options. Types pre-defined options like "compileonly" and the general 'option' type.

'option'-type are not defined, they can accidentally be used with the wrong value type, and the syntax is prone to error.

By pre-defining all compile commands used and giving them types the parsing can be simplified, proper parsing errors can be given and and reasonable syntax can be used.

This:
-XX:CompileCommand=option,java/util/String.toString,int,RepeatCompilation,5

Is superseded by:
-XX:CompileCommand=RepeatCompilation,java/util/String.toString,5

Attention check: Did you spot the error in the old command?

In order not to break anything - the old syntax is kept for now. But even the old command format is improved with verification for the option name and the type of the value.

-------------

Commit messages:
 - Make tests debug only
 - Fix typos
 - remove typo
 - Fix CompilerConfigFileWarning test
 - Fix test
 - Merge branch 'master' of https://github.com/openjdk/jdk into improve_compile_command
 - Fixed messages and help text
 - Clean up error reporting
 - fix CheckCompileCommandOption test
 - Fixing tests
 - ... and 5 more: https://git.openjdk.java.net/jdk/compare/f7517386...92eec9d6

Changes: https://git.openjdk.java.net/jdk/pull/1276/files
 Webrev: https://webrevs.openjdk.java.net/?repo=jdk&pr=1276&range=00
  Issue: https://bugs.openjdk.java.net/browse/JDK-8256508
  Stats: 943 lines in 22 files changed: 462 ins; 151 del; 330 mod
  Patch: https://git.openjdk.java.net/jdk/pull/1276.diff
  Fetch: git fetch https://git.openjdk.java.net/jdk pull/1276/head:pull/1276

PR: https://git.openjdk.java.net/jdk/pull/1276


More information about the hotspot-compiler-dev mailing list