Eliminate data relocations by using NULL instead of global empty list.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@29250 91177308-0d34-0410-b5e6-96231b3b80d8
diff --git a/lib/CodeGen/LiveVariables.cpp b/lib/CodeGen/LiveVariables.cpp
index 5c7818d..46a8012 100644
--- a/lib/CodeGen/LiveVariables.cpp
+++ b/lib/CodeGen/LiveVariables.cpp
@@ -239,9 +239,11 @@
         NumOperandsToProcess = 1;
 
       // Loop over implicit uses, using them.
-      for (const unsigned *ImplicitUses = MID.ImplicitUses;
-           *ImplicitUses; ++ImplicitUses)
-        HandlePhysRegUse(*ImplicitUses, MI);
+      if (MID.ImplicitUses) {
+        for (const unsigned *ImplicitUses = MID.ImplicitUses;
+             *ImplicitUses; ++ImplicitUses)
+          HandlePhysRegUse(*ImplicitUses, MI);
+      }
 
       // Process all explicit uses...
       for (unsigned i = 0; i != NumOperandsToProcess; ++i) {
@@ -257,9 +259,11 @@
       }
 
       // Loop over implicit defs, defining them.
-      for (const unsigned *ImplicitDefs = MID.ImplicitDefs;
-           *ImplicitDefs; ++ImplicitDefs)
-        HandlePhysRegDef(*ImplicitDefs, MI);
+      if (MID.ImplicitDefs) {
+        for (const unsigned *ImplicitDefs = MID.ImplicitDefs;
+             *ImplicitDefs; ++ImplicitDefs)
+          HandlePhysRegDef(*ImplicitDefs, MI);
+      }
 
       // Process all explicit defs...
       for (unsigned i = 0; i != NumOperandsToProcess; ++i) {