[all-commits] [llvm/llvm-project] 96a661: [GlobalISel] Better verification of G_UNMERGE_VALUES
Jay Foad via All-commits
all-commits at lists.llvm.org
Thu Nov 17 00:20:15 PST 2022
Branch: refs/heads/main
Home: https://github.com/llvm/llvm-project
Commit: 96a661de4b103e05993bec2783b90d300539a05e
https://github.com/llvm/llvm-project/commit/96a661de4b103e05993bec2783b90d300539a05e
Author: Jay Foad <jay.foad at amd.com>
Date: 2022-11-17 (Thu, 17 Nov 2022)
Changed paths:
M llvm/lib/CodeGen/MachineVerifier.cpp
M llvm/test/CodeGen/AArch64/GlobalISel/combine-unmerge.mir
M llvm/test/CodeGen/AMDGPU/GlobalISel/artifact-combiner-unmerge-values.mir
A llvm/test/MachineVerifier/test_g_unmerge_values.mir
Log Message:
-----------
[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
More information about the All-commits
mailing list