[PATCH] D131047: [AArch64] Add a tablegen pattern for aarch64.neon.pmull64

Mingming Liu via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Wed Aug 3 22:53:56 PDT 2022


mingmingl planned changes to this revision.
mingmingl added a comment.

In D131047#3696069 <https://reviews.llvm.org/D131047#3696069>, @dmgreen wrote:

> The problem with tablegen patterns that produce multiple values is that they don't allow the other nodes to combine as they naturally should. For example in this case a `dup(load` could be a `ld1r`. And I'm pretty sure a `dup v1, x1` should be better than a 'fmov;dup' pair.
>
> There is some code that already handles dup of other mull instructions, including pmull in tryCombineLongOpWithDup. It doesn't look like it gets called for a pmull64 though, could it be used here?

Thanks for pointing out `tryCombineLongOpWithDup` (wasn't aware of this approach before); it looks reasonable to me to follow the dag-combiner path. Plan changes.


Repository:
  rG LLVM Github Monorepo

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

https://reviews.llvm.org/D131047



More information about the llvm-commits mailing list