RFR(S): 8144091: CompilerControl: directive file doesn't override inlining rules
Nils Eliasson
nils.eliasson at oracle.com
Wed Dec 9 13:32:05 UTC 2015
Hi,
Please review this small change.
During testing it was discovered than directives didn't override compile
commands correctly.
This change corrects two things:
1) A typo in matches_inline, where the inline_action wasn't used as it
should.
2) Making sure any inline directive overides any compilecommand, even
though non matches. This is required because of the different way
inlines are matched in C1 and C2.
The compiled commands are unordered and have gotten different priority:
"-XX:CompileCommmand=inline,*.* -XX:CompileCommmand=dontinline,*.*"
Would inline everything in C2 but nothing in C1.
In compiler directives the inline rules are ordered (they are part of
the same list). The first rule that matches applies.
inline:"+*.*,-*.*" always matches the first and the action (+) is force
inline.
Testing:
Running all inline tests, covering both commands, directives and
overrides between them.
Webrev: http://cr.openjdk.java.net/~neliasso/8144091/webrev.02/
Bug: https://bugs.openjdk.java.net/browse/JDK-8144091
Regards,
Nils Eliasson
More information about the hotspot-compiler-dev
mailing list