Be a bit more tolerant of broken code


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@10050 91177308-0d34-0410-b5e6-96231b3b80d8
diff --git a/lib/VMCore/AsmWriter.cpp b/lib/VMCore/AsmWriter.cpp
index f92fe25..2c36ed9 100644
--- a/lib/VMCore/AsmWriter.cpp
+++ b/lib/VMCore/AsmWriter.cpp
@@ -912,15 +912,15 @@
       writeOperand(AI->getArraySize(), true);
     }
   } else if (isa<CastInst>(I)) {
-    writeOperand(Operand, true);
+    if (Operand) writeOperand(Operand, true);   // Work with broken code
     Out << " to ";
     printType(I.getType());
   } else if (isa<VAArgInst>(I)) {
-    writeOperand(Operand, true);
+    if (Operand) writeOperand(Operand, true);   // Work with broken code
     Out << ", ";
     printType(I.getType());
   } else if (const VANextInst *VAN = dyn_cast<VANextInst>(&I)) {
-    writeOperand(Operand, true);
+    if (Operand) writeOperand(Operand, true);   // Work with broken code
     Out << ", ";
     printType(VAN->getArgType());
   } else if (Operand) {   // Print the normal way...