RFR: 8314319: LogCompilation doesn't reset lateInlining when it encounters a failure.

Xin Liu xliu at openjdk.org
Tue Aug 22 03:01:49 UTC 2023


This patch fixed a bug in LogCompilation. A compilation may encounter a failure after it processes 
'<late_inline>' tag. Sometimes, C2 compiler would retry after tweaking options. In this case, it would retry it 
without subsume_load. If we don't reset lateInlining, we may have trouble in the retry run. 

We also develop a unittest to verify that. A strip jit.xml is placed in test/resources/ directory. 

It's worth noting that 'mvn test' reports the 2 tests passed even without this patch. We can see the stacktrace
of exceptions. This isn't an accident.  There are 2 reasons: 
1. LogParser::parse swallows any throwable in its exception handler.
2. surefire runs in parallel and can't capture the failure.

I am not sure they are by design. I manage to fix those 2 problems, but fixing them is beyond the scope of this
patch. I would like to hear reviewer's feedbacks first.

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

Commit messages:
 - remove machine-specific information from jit log
 - 8314319: LogCompilation doesn't reset lateInlining when it encounters a failure.

Changes: https://git.openjdk.org/jdk/pull/15375/files
 Webrev: https://webrevs.openjdk.org/?repo=jdk&pr=15375&range=00
  Issue: https://bugs.openjdk.org/browse/JDK-8314319
  Stats: 614 lines in 3 files changed: 614 ins; 0 del; 0 mod
  Patch: https://git.openjdk.org/jdk/pull/15375.diff
  Fetch: git fetch https://git.openjdk.org/jdk.git pull/15375/head:pull/15375

PR: https://git.openjdk.org/jdk/pull/15375


More information about the hotspot-compiler-dev mailing list