produce an error on invalid input instead of asserting:
authorChris Lattner <sabre@nondot.org>
Thu, 10 Apr 2008 04:48:34 +0000 (04:48 +0000)
committerChris Lattner <sabre@nondot.org>
Thu, 10 Apr 2008 04:48:34 +0000 (04:48 +0000)
def : Pat<((v2f64 (vector_shuffle immAllZerosV_bc,
           ^

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@49462 91177308-0d34-0410-b5e6-96231b3b80d8

utils/TableGen/TGParser.cpp

index 65b6b818493c868819a412bfb47020d493d524d3..68a1cba3da5f0662ac105d294657cf85d46ea627 100644 (file)
@@ -616,6 +616,11 @@ Init *TGParser::ParseSimpleValue(Record *CurRec) {
   }
   case tgtok::l_paren: {         // Value ::= '(' IDValue DagArgList ')'
     Lex.Lex();   // eat the '('
+    if (Lex.getCode() != tgtok::Id) {
+      TokError("expected identifier in dag init");
+      return 0;
+    }
+    
     Init *Operator = ParseIDValue(CurRec);
     if (Operator == 0) return 0;