summaryrefslogtreecommitdiffstats
path: root/llvm/lib/CodeGen/GlobalISel/Legalizer.cpp
diff options
context:
space:
mode:
authorAmara Emerson <aemerson@apple.com>2018-12-10 18:44:58 +0000
committerAmara Emerson <aemerson@apple.com>2018-12-10 18:44:58 +0000
commit5ec146046cbb1a69850d2712f40e9ea273e2a257 (patch)
tree503a1200ca9f959d031a4bdf0077a8081bd2150d /llvm/lib/CodeGen/GlobalISel/Legalizer.cpp
parentc6e9380a56a6c7132b776412b81b1870b3d546ca (diff)
downloadbcm5719-llvm-5ec146046cbb1a69850d2712f40e9ea273e2a257.tar.gz
bcm5719-llvm-5ec146046cbb1a69850d2712f40e9ea273e2a257.zip
[GlobalISel] Restrict G_MERGE_VALUES capability and replace with new opcodes.
This patch restricts the capability of G_MERGE_VALUES, and uses the new G_BUILD_VECTOR and G_CONCAT_VECTORS opcodes instead in the appropriate places. This patch also includes AArch64 support for selecting G_BUILD_VECTOR of <4 x s32> and <2 x s64> vectors. Differential Revisions: https://reviews.llvm.org/D53629 llvm-svn: 348788
Diffstat (limited to 'llvm/lib/CodeGen/GlobalISel/Legalizer.cpp')
-rw-r--r--llvm/lib/CodeGen/GlobalISel/Legalizer.cpp2
1 files changed, 2 insertions, 0 deletions
diff --git a/llvm/lib/CodeGen/GlobalISel/Legalizer.cpp b/llvm/lib/CodeGen/GlobalISel/Legalizer.cpp
index a05ee38169d..9f4d2aa8e4a 100644
--- a/llvm/lib/CodeGen/GlobalISel/Legalizer.cpp
+++ b/llvm/lib/CodeGen/GlobalISel/Legalizer.cpp
@@ -65,6 +65,8 @@ static bool isArtifact(const MachineInstr &MI) {
case TargetOpcode::G_SEXT:
case TargetOpcode::G_MERGE_VALUES:
case TargetOpcode::G_UNMERGE_VALUES:
+ case TargetOpcode::G_CONCAT_VECTORS:
+ case TargetOpcode::G_BUILD_VECTOR:
return true;
}
}
OpenPOWER on IntegriCloud