aboutsummaryrefslogtreecommitdiff
path: root/llvm/lib/CodeGen/MachineVerifier.cpp
diff options
context:
space:
mode:
authorMatt Arsenault <Matthew.Arsenault@amd.com>2021-02-27 19:35:48 -0500
committerMatt Arsenault <Matthew.Arsenault@amd.com>2021-03-01 09:10:36 -0500
commit361cfdf2284193365f2830008625975f55112428 (patch)
treec59d139329584d4e2b3bc990972f6da066a3c571 /llvm/lib/CodeGen/MachineVerifier.cpp
parent6c260d3bc059b29aa62b91378be4afa2d98d8067 (diff)
downloadllvm-361cfdf2284193365f2830008625975f55112428.zip
llvm-361cfdf2284193365f2830008625975f55112428.tar.gz
llvm-361cfdf2284193365f2830008625975f55112428.tar.bz2
GlobalISel: Verify G_CONCAT_VECTORS has at least 2 sources
Diffstat (limited to 'llvm/lib/CodeGen/MachineVerifier.cpp')
-rw-r--r--llvm/lib/CodeGen/MachineVerifier.cpp4
1 files changed, 4 insertions, 0 deletions
diff --git a/llvm/lib/CodeGen/MachineVerifier.cpp b/llvm/lib/CodeGen/MachineVerifier.cpp
index a248e54..8bae5ab 100644
--- a/llvm/lib/CodeGen/MachineVerifier.cpp
+++ b/llvm/lib/CodeGen/MachineVerifier.cpp
@@ -1285,6 +1285,10 @@ void MachineVerifier::verifyPreISelGenericInstruction(const MachineInstr *MI) {
if (!DstTy.isVector() || !SrcTy.isVector())
report("G_CONCAT_VECTOR requires vector source and destination operands",
MI);
+
+ if (MI->getNumOperands() < 3)
+ report("G_CONCAT_VECTOR requires at least 2 source operands", MI);
+
for (unsigned i = 2; i < MI->getNumOperands(); ++i) {
if (MRI->getType(MI->getOperand(1).getReg()) !=
MRI->getType(MI->getOperand(i).getReg()))