[PATCH] D73940: GlobalISel: Reimplement moreElementsVectorDst

Matt Arsenault via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Tue Feb 4 10:58:55 PST 2020


arsenm added a comment.

In D73940#1857484 <https://reviews.llvm.org/D73940#1857484>, @arsenm wrote:

> In D73940#1857447 <https://reviews.llvm.org/D73940#1857447>, @paquette wrote:
>
> > Maybe I'm missing something obvious here, but why is this preferable to the original implementation?
>
>
> merge/unmerge with even sized pieces is nicer to deal with than insert/extract with arbitrary, odd sized pieces. The legalization and artifact combiner for them are also way better developed than the handling for extract and inserts. We currently have multiple different strategies of the more elements/fewer elements. Some of them only handle even breakdowns some awkwardly handle odd cases, and some do the general widening technique like this. I'm trying to consolidate on the one strategy, since it's the most flexible and least likely to break (although all the extra padding instructions and registers seems a bit wasteful in the extreme cases)


Also when I posted the original legalizations for most of these, I got comments preferring this way


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

https://reviews.llvm.org/D73940





More information about the llvm-commits mailing list