RFR: 8352607: RISC-V: use cmove in min/max when Zicond is supported

Hamlin Li mli at openjdk.org
Mon Mar 24 09:30:11 UTC 2025


On Mon, 24 Mar 2025 09:24:28 GMT, Hamlin Li <mli at openjdk.org> wrote:

>> Yes, better to have seperate match rules.
>> 
>> But I also agree that it's a bit messy and unclear how many will actually use that version.
>> And all of these versions increase test cost.
>> I think we should aim for RVA23 as the well supported and tested set of extensions.
>
> For performance consideration please check existing `CMoveI`, which calls `enc_cmove` which calls `cmov_xx`. So if `CMoveI` brings benefit when `UseZicond == true` over `UseZicond != true`, this refactoring should also works expected, as they use the same code.
> 
> As for the question, whether a hardware will support `zicond` but not `zbb`, I have no answer.
> 
> But, anyway in fact you can just consider this as a code cleanup, in this sense seems it should be good?

> better to have seperate match rules.

We could also do the similar thing to `CMoveX`, for this part I can do it in a separate PR together if this one is accecpted.

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

PR Review Comment: https://git.openjdk.org/jdk/pull/24153#discussion_r2009789893


More information about the hotspot-compiler-dev mailing list