RFR: 8330213: RISC-V: C2: assert(false) failed: bad AD file after JDK-8316991

Feilong Jiang fjiang at openjdk.org
Wed Apr 17 00:53:49 UTC 2024


On Mon, 15 Apr 2024 04:17:08 GMT, Fei Yang <fyang at openjdk.org> wrote:

>> Hi, please review this fix that adds additional CMove match rules for the riscv port.
>> [JDK-8316991](https://bugs.openjdk.org/browse/JDK-8316991) introduces more conditional moves which reduce merges used by CmpP/CmpN. However, there is no match rule for CMove with CmpP/N on riscv, resulting in the `bad AD file` crash.
>> 
>> After this fix, the following five tests would pass without any crashes.
>> 
>> Testing:
>> - [x] compiler/eliminateAutobox/TestDoubleBoxing.java
>> - [x] compiler/eliminateAutobox/TestFloatBoxing.java
>> - [x] compiler/eliminateAutobox/TestLongBoxing.java
>> - [x] compiler/eliminateAutobox/TestIntBoxing.java
>> - [x] compiler/eliminateAutobox/TestShortBoxing.java 
>> - [x] tier1~3  (linux-riscv64, release)
>> - [x] hotspot:tier1 (linux-riscv64, fastdebug)
>
> Looks good. Thanks!

@RealFYang @robehn  -- Thanks!

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

PR Comment: https://git.openjdk.org/jdk/pull/18774#issuecomment-2060142289


More information about the hotspot-compiler-dev mailing list