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

Hamlin Li mli at openjdk.org
Wed Jan 8 11:45:37 UTC 2025


On Mon, 6 Jan 2025 11:03:09 GMT, Fei Yang <fyang at openjdk.org> wrote:

>> Two IR matching tests added by [JDK-8332268](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: [JDK-8344306](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: [JDK-8346786](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
>
> Fei Yang has updated the pull request incrementally with one additional commit since the last revision:
> 
>   Comment

Thanks for fixing the failing tests.
Some comments, seems only powerOf2Minus1 in both tests failed. Can we only disable the IR verification of powerOf2Minus1, and keep other test enabled?

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

PR Review: https://git.openjdk.org/jdk/pull/22874#pullrequestreview-2536924520


More information about the hotspot-compiler-dev mailing list