RFR: 8286104: use aggressive liveness for unstable_if traps [v2]
Vladimir Kozlov
kvn at openjdk.java.net
Tue May 17 18:46:01 UTC 2022
On Tue, 17 May 2022 18:16:17 GMT, Xin Liu <xliu at openjdk.org> wrote:
> > You call process_for_unstable_ifs in 2 places. I understand why you want to do that before inline_boxing_calls(). But why before inline_incrementally()? Why you need second call?
>
> The first call secures the microbenchmark score because it can remove boxing objects completely. I think incremental inliner and special inlining such as boxing or string methods could also introduce similar code snippets. I would like to sweep again for them. Is it necessary?
After some thinking we may need 3rd call before inlining boxing calls.
if (eliminate_boxing()) {
+ process_for_unstable_ifs(igvn); // incremental inlining may added new unstable ifs.
// Inline valueOf() methods now.
inline_boxing_calls(igvn);
if (AlwaysIncrementalInline) {
inline_incrementally(igvn);
}
-------------
PR: https://git.openjdk.java.net/jdk/pull/8545
More information about the hotspot-compiler-dev
mailing list