RFR: JDK-8330565 : C2: Multiple crashes with CTW after JDK-8316991 [v2]

Cesar Soares Lucas cslucas at openjdk.org
Wed May 15 04:11:36 UTC 2024


> The `# assert(false) failed: Bad graph detected in build_loop_late` failure was caused because a string concatenation optimization using [this method](https://github.com/openjdk/jdk/blob/819f3d6fc70ff6fe54ac5f9033c17c3dd4326aa5/src/hotspot/share/opto/graphKit.cpp#L4115) adds AddP and LoadN nodes to IR graph as NotNull _and_ because RAM was not "nullyfing" phis merging nullable pointers. I was only able to reproduce this problem using a classfile/jar compiled using an "old" version of JDK.. because newer version use InvokeDynamic to do string concatenation.
> 
> Tested with JTREG tier1-4 on Linux x86_64 & ARM64.

Cesar Soares Lucas has updated the pull request incrementally with one additional commit since the last revision:

  Refactor split_castpp_load_through_phi

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

Changes:
  - all: https://git.openjdk.org/jdk/pull/19147/files
  - new: https://git.openjdk.org/jdk/pull/19147/files/26f0e4d5..94eb0e12

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

  Stats: 38 lines in 1 file changed: 13 ins; 15 del; 10 mod
  Patch: https://git.openjdk.org/jdk/pull/19147.diff
  Fetch: git fetch https://git.openjdk.org/jdk.git pull/19147/head:pull/19147

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


More information about the hotspot-compiler-dev mailing list