Fix PR7096.  When a block containing multiple defs is tail duplicated, the
SSAUpdater for the value from the first def may see uses of undefined values,
because the later defs will not have been updated yet.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@103407 91177308-0d34-0410-b5e6-96231b3b80d8
diff --git a/lib/CodeGen/MachineSSAUpdater.cpp b/lib/CodeGen/MachineSSAUpdater.cpp
index 99fb99a..84d6df2 100644
--- a/lib/CodeGen/MachineSSAUpdater.cpp
+++ b/lib/CodeGen/MachineSSAUpdater.cpp
@@ -329,7 +329,7 @@
   /// InstrIsPHI - Check if an instruction is a PHI.
   ///
   static MachineInstr *InstrIsPHI(MachineInstr *I) {
-    if (I->isPHI())
+    if (I && I->isPHI())
       return I;
     return 0;
   }