RFR: 8346787: Fix two C2 IR matching tests for RISC-V

Fei Yang fyang at openjdk.org
Wed Dec 25 04:52:10 UTC 2024


Two IR matching tests added by https://bugs.openjdk.org/browse/JDK-8332268 are failing on RISC-V:
  TEST: compiler/c2/irTests/ModINodeIdealizationTests.java
  TEST: compiler/c2/irTests/ModLNodeIdealizationTests.java

These two tests require conditional move support. See ModLNode::Ideal & ModLNode::Ideal [1][2]. But RISC-V base ISA (RV64GCV) does not support conditional move, so we set `ConditionalMoveLimit` to 0 for this CPU platform. This change simply skips these two tests for now.

Some further information:
An initial version of conditional move based on RISC-V `Zicond` extension has been added by: https://bugs.openjdk.org/browse/JDK-8344306. But that still lacks performance tunning and we will reconsider and adjust this `ConditionalMoveLimit` parameter as we go. New issue: https://bugs.openjdk.org/browse/JDK-8346786.

[1] https://github.com/openjdk/jdk/blob/master/src/hotspot/share/opto/divnode.cpp#L993
[2] https://github.com/openjdk/jdk/blob/master/src/hotspot/share/opto/divnode.cpp#L1253

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

Commit messages:
 - 8346787: Fix two C2 IR matching tests for RISC-V

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

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


More information about the hotspot-compiler-dev mailing list