[PATCH] D58136: GlobalISel: Implement moreElementsVector for g_insert results
Matt Arsenault via Phabricator via llvm-commits
llvm-commits at lists.llvm.org
Wed Feb 13 09:57:18 PST 2019
arsenm marked an inline comment as done.
arsenm added inline comments.
================
Comment at: lib/CodeGen/GlobalISel/LegalizerHelper.cpp:2370
+ Observer.changingInstr(MI);
+ moreElementsVectorSrc(MI, MoreTy, 1);
+ moreElementsVectorDst(MI, MoreTy, 0);
----------------
arsenm wrote:
> paquette wrote:
> > Should we be asserting that the types are vectors for these? Or does it not matter?
> These seem to allow any types.
>
> One thing I'm sort of thinking about for some vector legalizations is if this is OK or sufficient.
My current feeling is there is something wrong with the current set of legalization primitives for vectors, but I haven't tried to come up with a coherent description of what yet. The fact that the insert can clobber multiple vector elements seems difficult to deal with. I almost think we need a version of g_insert that handles complete vector elements, and then maybe some kind of elementwise version (where the bit offset is into each vector element) but I haven't fully thought this out yet.
CHANGES SINCE LAST ACTION
https://reviews.llvm.org/D58136/new/
https://reviews.llvm.org/D58136
More information about the llvm-commits
mailing list