From: David Majnemer Date: Mon, 16 Feb 2015 09:18:13 +0000 (+0000) Subject: AsmParser: extractvalue requires at least one index operand X-Git-Url: http://demsky.eecs.uci.edu/git/?a=commitdiff_plain;h=415561b6e077fb4dda5d59c699829c9e7d39e08e;p=oota-llvm.git AsmParser: extractvalue requires at least one index operand git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@229365 91177308-0d34-0410-b5e6-96231b3b80d8 --- diff --git a/lib/AsmParser/LLParser.cpp b/lib/AsmParser/LLParser.cpp index 7818586dfa4..47125ca954c 100644 --- a/lib/AsmParser/LLParser.cpp +++ b/lib/AsmParser/LLParser.cpp @@ -1633,6 +1633,7 @@ bool LLParser::ParseIndexList(SmallVectorImpl &Indices, while (EatIfPresent(lltok::comma)) { if (Lex.getKind() == lltok::MetadataVar) { + if (Indices.empty()) return TokError("expected index"); AteExtraComma = true; return false; } diff --git a/test/Assembler/extractvalue-no-idx.ll b/test/Assembler/extractvalue-no-idx.ll new file mode 100644 index 00000000000..b3132097eb1 --- /dev/null +++ b/test/Assembler/extractvalue-no-idx.ll @@ -0,0 +1,8 @@ +; RUN: not llvm-as < %s 2>&1 | FileCheck %s + +; CHECK: expected index + +define void @f1() { + extractvalue <{ i32, i32 }> undef, !dbg !0 + ret void +}