diff options
author | Jay Foad <jay.foad@amd.com> | 2021-10-05 11:05:05 +0100 |
---|---|---|
committer | Jay Foad <jay.foad@amd.com> | 2022-11-17 08:19:57 +0000 |
commit | 96a661de4b103e05993bec2783b90d300539a05e (patch) | |
tree | 60c638403be26538f7f8a24939a680c771940ec0 /llvm/lib/CodeGen/MachineCombiner.cpp | |
parent | 38d6202a425462ce5923d038bc54532115a80a1f (diff) | |
download | llvm-96a661de4b103e05993bec2783b90d300539a05e.zip llvm-96a661de4b103e05993bec2783b90d300539a05e.tar.gz llvm-96a661de4b103e05993bec2783b90d300539a05e.tar.bz2 |
[GlobalISel] Better verification of G_UNMERGE_VALUES
Verify three cases of G_UNMERGE_VALUES separately:
1. Splitting a vector into subvectors (the converse of
G_CONCAT_VECTORS).
2. Splitting a vector into its elements (the converse of
G_BUILD_VECTOR).
3. Splitting a scalar into smaller scalars (the converse of
G_MERGE_VALUES).
Previously #1 allowed strange combinations like this:
%1:_(<2 x s16>),%2:_(<2 x s16>) = G_UNMERGE_VALUES %0(<2 x s32>)
This has been tightened up to check that the source and destination
element types match, and some MIR test cases updated accordingly.
Differential Revision: https://reviews.llvm.org/D111132
Diffstat (limited to 'llvm/lib/CodeGen/MachineCombiner.cpp')
0 files changed, 0 insertions, 0 deletions