RFR: JDK-8282797: CompileCommand parsing errors should exit VM

Tobias Hartmann thartmann at openjdk.org
Wed May 24 09:35:07 UTC 2023


On Tue, 2 May 2023 11:35:54 GMT, Tobias Holenstein <tholenstein at openjdk.org> wrote:

> Currently, errors during compile command parsing just print an error but don't exit the VM. As a result, issues go unnoticed. 
> 
> With this PR the behavior is changed to exit the VM when an error occurs.
> 
> E.g. `java -XX:CompileCommand=compileonly,HashMap:: -version` will exit the VM after a parsing occurred.  
> 
> CompileCommand: An error occurred during parsing
> Error: Could not parse method pattern
> Line: 'compileonly,HashMap::'
> 
> Usage: '-XX:CompileCommand=<option>,<method pattern>' - to set boolean option to true
> Usage: '-XX:CompileCommand=<option>,<method pattern>,<value>'
> Use:   '-XX:CompileCommand=help' for more information and to list all option.
> 
> Error: Could not create the Java Virtual Machine.
> Error: A fatal exception has occurred. Program will exit.
> 
> 
> ### Updated Tests
> Updated all tests to now expect an error code `1` for wrong `CompileCommand`

Looks good to me otherwise.

test/hotspot/jtreg/compiler/compilercontrol/share/IntrinsicCommand.java line 79:

> 77:                 md, type, intrinsic_ids);
> 78: 
> 79:         System.out.println("XXXXXXXXXXXXXXXX compileCommand.isValid " + compileCommand.isValid());

Accidental leftover?

test/hotspot/jtreg/compiler/compilercontrol/share/scenario/Scenario.java line 127:

> 125:             Asserts.assertNE(mainOutput.getExitValue(), 0, "VM should exit with "
> 126:                     + "error for incorrect directives");
> 127:             //if (isJcmdValid) {

Should be removed.

test/hotspot/jtreg/compiler/compilercontrol/share/scenario/Scenario.java line 129:

> 127:             //if (isJcmdValid) {
> 128:             boolean parse_error_found = false;
> 129:             for(OutputAnalyzer out : outputList) {

Suggestion:

            for (OutputAnalyzer out : outputList) {

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

Marked as reviewed by thartmann (Reviewer).

PR Review: https://git.openjdk.org/jdk/pull/13753#pullrequestreview-1441371827
PR Review Comment: https://git.openjdk.org/jdk/pull/13753#discussion_r1203787476
PR Review Comment: https://git.openjdk.org/jdk/pull/13753#discussion_r1203789223
PR Review Comment: https://git.openjdk.org/jdk/pull/13753#discussion_r1203790531


More information about the hotspot-dev mailing list