RFR: 8336258: Document the behavior of 'exclude' and 'compileonly' with respect to inlining
Volker Simonis
volker.simonis at gmail.com
Tue Jul 16 09:31:25 UTC 2024
Hi,
Can somebody pleas take a quick look at this trivial, documentation-only change?
Thank you and best regards,
Volker
On Thu, Jul 11, 2024 at 6:45 PM Volker Simonis <simonis at openjdk.org> wrote:
>
> The long-standing behavior of the `exclude` CompileCommand is to also apply to inlined versions of a method. On the other hand, the `compileonly` CompileCommand only affects top-level compilations of a method and not its inlining behavior.
>
> The rational behind this decision is that `exclude` is intended to be used in production to workaround compiler crashes or bad compilations for certain methods and in these scenarios it usually doesn't matter if a "bad" method is getting compiled on the top level or if it gets inlined into another compilation unit.
>
> The "inconsistent inlining behavior with CompileOnly" thread on hotspot-compiler-dev discusses this behavior (see [1]). The answer [2] specifically describes this long-standing behavior.
>
> I think it would be good to document this behavior in the output of `-XX:CompileCommand=help`
>
> [1] https://mail.openjdk.org/pipermail/hotspot-compiler-dev/2016-June/thread.html#23575
> [2] https://mail.openjdk.org/pipermail/hotspot-compiler-dev/2016-June/023583.html
>
> -------------
>
> Commit messages:
> - 8336258: Document the behavior of 'exclude' and 'compileonly' with respect to inlining
>
> Changes: https://git.openjdk.org/jdk/pull/20142/files
> Webrev: https://webrevs.openjdk.org/?repo=jdk&pr=20142&range=00
> Issue: https://bugs.openjdk.org/browse/JDK-8336258
> Stats: 4 lines in 1 file changed: 4 ins; 0 del; 0 mod
> Patch: https://git.openjdk.org/jdk/pull/20142.diff
> Fetch: git fetch https://git.openjdk.org/jdk.git pull/20142/head:pull/20142
>
> PR: https://git.openjdk.org/jdk/pull/20142
More information about the hotspot-compiler-dev
mailing list