[PATCH] D106814: [GlobalISel] Add scalar widening for G_MERGE_VALUES destination

Jessica Paquette via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Mon Jul 26 11:40:46 PDT 2021


paquette created this revision.
paquette added reviewers: aemerson, arsenm, jroelofs.
Herald added subscribers: hiraditya, rovka.
paquette requested review of this revision.
Herald added a subscriber: wdng.
Herald added a project: LLVM.

This adds support for the case where

WideSize = DstSize + K * SrcSize

In this case, we can pad the G_MERGE_VALUES instruction with K extra undef values with width SrcSize. Then the destination can be handled via widenScalarDst.


https://reviews.llvm.org/D106814

Files:
  llvm/include/llvm/CodeGen/GlobalISel/LegalizerHelper.h
  llvm/lib/CodeGen/GlobalISel/LegalizerHelper.cpp
  llvm/test/CodeGen/AArch64/GlobalISel/legalize-merge-values.mir

-------------- next part --------------
A non-text attachment was scrubbed...
Name: D106814.361737.patch
Type: text/x-patch
Size: 8244 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20210726/4bfdce46/attachment.bin>


More information about the llvm-commits mailing list