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

Jay Foad via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Tue Oct 5 04:18:22 PDT 2021


foad added a comment.

> 1. Splitting a vector into subvectors (the converse of G_CONCAT_VECTORS).

Is there any appetite for using a new (G_UNCONCAT_VECTORS??) opcode for this case?

Unfortunately there are a couple of tests that fail the verification I implemented for this case:

Failed Tests (2):

  LLVM :: CodeGen/AArch64/GlobalISel/combine-unmerge.mir
  LLVM :: CodeGen/AMDGPU/GlobalISel/artifact-combiner-unmerge-values.mir

by building MIR like this: `%1:_(<2 x s16>), %2:_(<2 x s16>) = G_UNMERGE_VALUES %0:_(<2 x s32>)`

Should this be allowed?

> 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?


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