RFR: 8361255: CTW: Tolerate more NCDFE problems

Aleksey Shipilev shade at openjdk.org
Wed Jul 2 10:20:48 UTC 2025


We routinely CTW 3rd party JARs to make sure our compilers work. By the nature of the JARs, they have dependencies on other JARs, and CTW runner frequently warns out with NCDFE. It does so very crudely, missing opportunities to compile the methods that _do not_ trigger NCDFEs. CTW should be made more tolerant to this. I think the normal "modules" CTW runs into the similar problem, but on a lesser scale, as we do not have a very hairy dependency graph within JDK. 

The CTW logs are also fairly noisy with full exception traces when NCDFE is semi-expected. This PR does _not_ print exception stack traces in these cases, only "NOTE"-s about it. This makes the log fairly clean and more understandable.

Motivational scope improvement compiling a sample 3rd party JAR (cassandra-2.1.4.0.jar):


Before: Done (2487 classes, 9866 methods, 24584 ms)
After:  Done (2487 classes, 10074 methods, 24150 ms)  ; +2% more methods


Additional testing:
 - [x] Linux x86_64 server fastdebug, `applications/ctw/modules`

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

Commit messages:
 - Move clinit compile back
 - Initial
 - Fix

Changes: https://git.openjdk.org/jdk/pull/26090/files
  Webrev: https://webrevs.openjdk.org/?repo=jdk&pr=26090&range=00
  Issue: https://bugs.openjdk.org/browse/JDK-8361255
  Stats: 41 lines in 2 files changed: 35 ins; 0 del; 6 mod
  Patch: https://git.openjdk.org/jdk/pull/26090.diff
  Fetch: git fetch https://git.openjdk.org/jdk.git pull/26090/head:pull/26090

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


More information about the hotspot-compiler-dev mailing list