[PATCH] D156587: Implement vector rotations on AArch64 using shift-insert instructions.

Dave Green via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Tue Aug 8 13:44:36 PDT 2023


dmgreen added a comment.

In D156587#4570615 <https://reviews.llvm.org/D156587#4570615>, @efriedma wrote:

> Maybe instead of specifically looking at rotates, it makes sense to try to generically pattern-match `(orr x, (srl, y, C))` using known bits?  We already have code along these lines in tryLowerToSLI(); it should be straightforward to make it more generic.
>
> If that isn't straightforward, we can go with this approach for now; there isn't really anything wrong with it.
>
>> XFAIL the RAX1 pattern matching test for the time being, as this breaks the pattern matching for it.
>
> It should be easy enough to update the pattern, or explicitly handle this case in your new code.

Yeah, we should do this using known bits. (And at the least this should apply to all funnel shifts, not just rotates). I have some patches, I can try and put them up for review when I get some time to check the details.


Repository:
  rG LLVM Github Monorepo

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

https://reviews.llvm.org/D156587



More information about the llvm-commits mailing list