[PATCH] D114629: [RISCV][VP] Add RVV codegen for vp.select
Roger Ferrer Ibanez via Phabricator via llvm-commits
llvm-commits at lists.llvm.org
Wed Dec 1 23:36:51 PST 2021
rogfer01 accepted this revision.
rogfer01 added a comment.
This revision is now accepted and ready to land.
Thanks for the patch @victor-eds!
LGTM.
After this change lands, the only lowering missing for `vp.select` will be for `i1` vectors. AFAICT rvv doesn't have specific instructions for that but a sequence of `vm<op>.mm` and something like this (or a better sequence) https://graphics.stanford.edu/~seander/bithacks.html#MaskedMerge should do. We can't fully honour the `vl` in that case, but I think this is OK as VP doesn't demand us to do that.
(@craig.topper reading the spec I realised that `vmerge` (perhaps others?) doesn't seem to care about `ma`/`mu` only `ta`/`tu` so maybe this can be exploited when inserting vsetvl)
Repository:
rG LLVM Github Monorepo
CHANGES SINCE LAST ACTION
https://reviews.llvm.org/D114629/new/
https://reviews.llvm.org/D114629
More information about the llvm-commits
mailing list