[llvm] [RISCV] Don't use EVL/Mask for vid when lowering vp.reverse (PR #123048)

Luke Lau via llvm-commits llvm-commits at lists.llvm.org
Wed Jan 15 18:00:41 PST 2025


lukel97 wrote:

> I have patches in my downstream for DAG combines for vp.reverse(vp.load(ADDR, MASK)) -> vp.strided.load(ADDR, -1, MASK) and vp.store(vp.reverse(VAL), ADDR, MASK) -> vp.strided.store(VAL, NEW_ADDR, -1, MASK)

We should probably also teach the loop vectorizer to emit a strided load/store for reversed VPWidenLoadEVLRecipe directly. That way we can remove the reverse shuffle from its cost

https://github.com/llvm/llvm-project/pull/123048


More information about the llvm-commits mailing list