Refine this to only apply to null in the default address space.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@89411 91177308-0d34-0410-b5e6-96231b3b80d8
diff --git a/lib/Analysis/CaptureTracking.cpp b/lib/Analysis/CaptureTracking.cpp
index ae0766b..6781dcc 100644
--- a/lib/Analysis/CaptureTracking.cpp
+++ b/lib/Analysis/CaptureTracking.cpp
@@ -107,8 +107,10 @@
       break;
     case Instruction::ICmp:
       // Comparing the pointer against null does not count as a capture.
-      if (isa<ConstantPointerNull>(I->getOperand(1)))
-        break;
+      if (ConstantPointerNull *CPN =
+            dyn_cast<ConstantPointerNull>(I->getOperand(1)))
+        if (CPN->getType()->getAddressSpace() == 0)
+          break;
       return true;
     default:
       // Something else - be conservative and say it is captured.