RFR(L): JEP165: Compiler Control
Nils Eliasson
nils.eliasson at oracle.com
Thu Oct 15 13:53:44 UTC 2015
Hi all,
Here is the latest (final?) webrev.
Changes since last time:
- Fixed comments
- update jdk webrev
- Added test for verifying CompileCommand compatility
- Fixed error messages when adding directives with diagnostic commands
- Fixed bug on solaris sparc
- synced with recent additions to hs-comp
- Added flag DoReserveCopyInSuperWordDebug that was added as a
CompileCommand option recently
https://bugs.openjdk.java.net/browse/JDK-8046155
http://cr.openjdk.java.net/~neliasso/8046155/webrev_jdk.03/
http://cr.openjdk.java.net/~neliasso/8046155/webrev.11/
Regards,
Nils
On 2015-09-22 19:21, Nils Eliasson wrote:
> Hi,
>
> This is the initial RFR for JEP165: Compiler Control. This feature
> enables runtime manageable, method dependent compiler flags.
> (Immutable for the duration of a compilation.)
>
> The change includes:
> - A parser for the directives format (json like) including vmtests
> (json.cpp/hpp)
> - A component for construction of compiler directives
> (directivesParser.cpp/hpp)
> - The directives including the option definitions, default values and
> compilecommand relations (compilerDirectives.cpp/hpp)
> - Diagnostic commands for working with the directives - installing,
> removing, printing
> - Lots of small changes wherever we access flags or legacy
> compilecommands in the compiler
>
> Notes:
> The feature is documented in the JEP
> (https://bugs.openjdk.java.net/browse/JDK-8046155).
>
> Currently only a small amount of compiler flags are included in the
> change. The flags are a representative selection of different types
> targeting both compilers. All of them existed as CompilerOracle option
> commands. Two commands was not included in the directives due to time
> constraints - CompilerThresholdScaling and UseRTMLocks. Both are
> accessed from runtime (outside any compiler) and requires some special
> handling. (Solved but not implemented.)
>
> Full backwards compatibility with CompileCommands is implemented but
> can be turned off with flag -XX:CompileCommandCompatibilty. Also meta
> handling the compatibility flag by supporting it in the directives
> (test feature).
>
> The change contain some rough edges that will polished over the coming
> days.
>
> JEP: https://bugs.openjdk.java.net/browse/JDK-8046155
> Hotspot webrev: http://cr.openjdk.java.net/~neliasso/8046155/webrev.01/
> JDK webrev: http://cr.openjdk.java.net/~neliasso/8046155/webrev_jdk.01/
>
> Please review!
>
> Best regards,
> Nils Eliasson
More information about the hotspot-compiler-dev
mailing list