[RISCV] Optimize vp.store with an all ones mask to avoid a vmset.
authorCraig Topper <craig.topper@sifive.com>
Wed, 22 Sep 2021 16:12:45 +0000 (09:12 -0700)
committerCraig Topper <craig.topper@sifive.com>
Wed, 22 Sep 2021 16:12:47 +0000 (09:12 -0700)
commitb33a1cc05b4800ae9e8c7df097c4a76c9da28c94
tree7f13fa7fd4257211fb5340ffc598f9fc994f9306
parentb205b3300b2f3b18bf82771f761eb8e6794f3e32
[RISCV] Optimize vp.store with an all ones mask to avoid a vmset.

We can use riscv_vse intrinsic instead of riscv_vse_mask. The code here
is based on similar code for handling masked.scatter and vp.scatter.

Reviewed By: frasercrmck

Differential Revision: https://reviews.llvm.org/D110206
llvm/lib/Target/RISCV/RISCVISelLowering.cpp
llvm/test/CodeGen/RISCV/rvv/fixed-vectors-vpstore.ll
llvm/test/CodeGen/RISCV/rvv/vpstore.ll