[PATCH] D111532: [RISCV] Optimize immediate materialisation with BCLRI

Ben Shi via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Mon Oct 11 20:34:52 PDT 2021


benshi001 added a comment.

In D111532#3055747 <https://reviews.llvm.org/D111532#3055747>, @craig.topper wrote:

> Since this affects RISCVMatInt.cpp which is used by the assembler as well. We need MC layer tests like the "li" tests in rv64zba-aliases-valid.s

Thanks. I have updated according to your advice.

1. MC tests are added in rv64zbs-aliases-valid.s, since BLCRI/BSETI belong to Zbs not Zba.

2. The similiar optimization is also performed against value in 0x80000000 ~ 0xffffffff, although we already optimized with the zext.w. But zext.w belongs to Zba, considering an extrame case that there is only Zbs but no Zba. So I use `Res = TmpSeq` instead of directly `return TmpSeq` .


CHANGES SINCE LAST ACTION
  https://reviews.llvm.org/D111532/new/

https://reviews.llvm.org/D111532



More information about the llvm-commits mailing list