RFR: 8344306: RISC-V: Add zicond [v2]

Ludovic Henry luhenry at openjdk.org
Wed Nov 27 10:02:39 UTC 2024


On Wed, 27 Nov 2024 07:49:20 GMT, Robbin Ehn <rehn at openjdk.org> wrote:

>> Hi, please consider.
>> 
>> In cpu models we save ~1 cycle per removed branch.
>> This patch removes ~0.1% of branches in generic C2 generated code.
>> We should probably investigate if we can improve/add peephole optimization to remove more branches.
>> 
>> As the C1 cmov code is a bit tricky I left that as a followup.
>> 
>> I added gtests for the cmovs.
>> (we should add coverage for more of masm in this gtest suit)
>> Pro tip, invoke the gtestLauncher directly (you only need to build exploded):
>> `gtestLauncher -jdk build/linux-riscv64-server-fastdebug/jdk/ --gtest_break_on_failure --gtest_filter="*RiscV*" -XX:+UnlockDiagnosticVMOptions -XX:+UseZicond -XX:ParallelGCThreads=1 -XX:ConcGCThreads=1 -XX:CICompilerCount=2`
>> 
>> Tested on Spacemit X60, gtests and tier1.
>> 
>> Thanks, Robbin
>
> Robbin Ehn has updated the pull request incrementally with one additional commit since the last revision:
> 
>   Review comments

Marked as reviewed by luhenry (Committer).

I love the added the new `test/hotspot/gtest/riscv/test_assembler_riscv.cpp`. Is it going to be picked up, compiled and run automatically as well?

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

PR Review: https://git.openjdk.org/jdk/pull/22386#pullrequestreview-2464537043
PR Comment: https://git.openjdk.org/jdk/pull/22386#issuecomment-2503439004


More information about the hotspot-dev mailing list