RFR: 8270307: C2: assert(false) failed: bad AD file after JDK-8267687
Yi Yang
yyang at openjdk.java.net
Thu Jul 15 14:42:28 UTC 2021
One input of ConvI2L becomes Top, which causes all nodes in the chain becoming Top, but this CMoveLNode does not change, only its input becomes Top.
Pop 2146 CMoveL === _ 351 1 2149 [[ 2182 2187 ]] Type:long !orig=810,696,[439],288 !jvms: Test::vMeth @ bci:78 (line 8)
BreakAtNode: _idx=2461 _debug_idx=102702461 orig._idx=2146 orig._debug_idx=92502146
< < 2146 CMoveL === _ _ 1 _ [[]] Type:long !orig=810,696,[439],288 !jvms: Test::vMeth @ bci:78 (line 8)
> long 2461 CMoveL === _ 2458 2149 1 [[ 2187 2182 ]] Type:long !orig=2146,810,696,[439],288 !jvms: Test::vMeth @ bci:78 (line 8)
This CMoveLNode(CMove Binary(.. ..) (Binary .. Con#Top)) can not match any rules in instruction selection phase and finally hits the assert.
-------------
Commit messages:
- crash
Changes: https://git.openjdk.java.net/jdk/pull/4796/files
Webrev: https://webrevs.openjdk.java.net/?repo=jdk&pr=4796&range=00
Issue: https://bugs.openjdk.java.net/browse/JDK-8270307
Stats: 62 lines in 2 files changed: 62 ins; 0 del; 0 mod
Patch: https://git.openjdk.java.net/jdk/pull/4796.diff
Fetch: git fetch https://git.openjdk.java.net/jdk pull/4796/head:pull/4796
PR: https://git.openjdk.java.net/jdk/pull/4796
More information about the hotspot-compiler-dev
mailing list