[PATCH] D111132: [GlobalISel] Better verification of G_UNMERGE_VALUES

Amara Emerson via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Tue Oct 19 11:15:56 PDT 2021


aemerson added a comment.

In D111132#3072726 <https://reviews.llvm.org/D111132#3072726>, @foad wrote:

> In D111132#3071399 <https://reviews.llvm.org/D111132#3071399>, @arsenm wrote:
>
>> In D111132#3042221 <https://reviews.llvm.org/D111132#3042221>, @foad wrote:
>>
>>>> 2. Splitting a vector into its elements (the converse of G_BUILD_VECTOR).
>>>
>>> Is there any appetite for using a new G_SPLIT_VECTOR opcode for this case?
>>
>> I don't see a reason to have a scalar and vector version of the same thing.
>
> You mean, splitting a vector into vectors vs splitting a vector into scalars? Then why do we have both G_BUILD_VECTOR and G_CONCAT_VECTORS? The asymmetry annoys me!

I'm not against splitting up unmerge into separate opcodes for symmetry. The original motivation of splitting G_MERGE was that the legalizer rules were very complex to deal with all the different cases that the instruction could handle.


Repository:
  rG LLVM Github Monorepo

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

https://reviews.llvm.org/D111132



More information about the llvm-commits mailing list