autoupgrade files that use callfoo as call foo.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@44218 91177308-0d34-0410-b5e6-96231b3b80d8
diff --git a/lib/AsmParser/LLLexer.cpp b/lib/AsmParser/LLLexer.cpp
index 25b532f..27798be 100644
--- a/lib/AsmParser/LLLexer.cpp
+++ b/lib/AsmParser/LLLexer.cpp
@@ -617,12 +617,20 @@
     }
   }
   
-  // Finally, if this is "cc1234", return this as just "cc".
+  // If this is "cc1234", return this as just "cc".
   if (TokStart[0] == 'c' && TokStart[1] == 'c') {
     CurPtr = TokStart+2;
     return CC_TOK;
   }
   
+  // If this starts with "call", return it as CALL.  This is to support old
+  // broken .ll files.  FIXME: remove this with LLVM 3.0.
+  if (CurPtr-TokStart > 4 && !memcmp(TokStart, "call", 4)) {
+    CurPtr = TokStart+4;
+    llvmAsmlval.OtherOpVal = Instruction::Call;
+    return CALL;
+  }
+  
   // Finally, if this isn't known, return just a single character.
   CurPtr = TokStart+1;
   return TokStart[0];