[PATCH] D53594: [GlobalISel] Introduce G_BUILD_VECTOR and G_CONCAT_VECTOR opcodes

Amara Emerson via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Tue Oct 30 16:10:03 PDT 2018


aemerson added a comment.

In https://reviews.llvm.org/D53594#1280811, @qcolombet wrote:

> Thanks @aditya_nandakumar for the context.
>
> I understand where you're coming from.
>
> What I meant is that I would rather have one opcode of build_vector and one for build_vector with trunc. The rationale is that it makes it clear what you want to achieve and it makes for a stronger type verifier.


I'm not sure how this is any better. If we had an opcode G_BUILD_VECTOR_TRUNC, it would have a superset of the functionality of the G_BUILD_VECTOR. You'd still have this powerful opcode, except now you have potential code duplication in handling the two, as well as a hindered G_BUILD_VECTOR.

Unless you're say that G_BUILD_VECTOR _TRUNC can *only* deal with oversize scalars, in which case it's an odd opcode for a corner case (and I would suggest here that we just deal with the inconvenient types, but I'm not married to the idea).


Repository:
  rL LLVM

https://reviews.llvm.org/D53594





More information about the llvm-commits mailing list