RFR: 8361255: CTW: Tolerate more NCDFE problems [v2]

Aleksey Shipilev shade at openjdk.org
Wed Jul 2 12:02:07 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`

Aleksey Shipilev has updated the pull request with a new target base due to a merge or a rebase. The incremental webrev excludes the unrelated changes brought in by the merge/rebase. The pull request contains four additional commits since the last revision:

 - Merge branch 'master' into JDK-8361255-ctw-ncdfe
 - Move clinit compile back
 - Initial
 - Fix

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

Changes:
  - all: https://git.openjdk.org/jdk/pull/26090/files
  - new: https://git.openjdk.org/jdk/pull/26090/files/ba0cc87b..9d41f80a

Webrevs:
 - full: https://webrevs.openjdk.org/?repo=jdk&pr=26090&range=01
 - incr: https://webrevs.openjdk.org/?repo=jdk&pr=26090&range=00-01

  Stats: 1189 lines in 72 files changed: 623 ins; 239 del; 327 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