Since TypeInfos are passed as i8 pointers, a NULL TypeInfo should be passed
authorDuncan Sands <baldrick@free.fr>
Fri, 1 Jun 2007 08:18:30 +0000 (08:18 +0000)
committerDuncan Sands <baldrick@free.fr>
Fri, 1 Jun 2007 08:18:30 +0000 (08:18 +0000)
as a null i8 pointer not as a 0 i32.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@37383 91177308-0d34-0410-b5e6-96231b3b80d8

lib/CodeGen/SelectionDAG/SelectionDAGISel.cpp

index 8a3ad8a31c410f9259ff576ab08f8e26597c0e47..cfdf6d0ea571bd9ecc602ae72fb5f5a6268d816a 100644 (file)
@@ -2620,8 +2620,7 @@ SelectionDAGLowering::visitIntrinsicCall(CallInst &I, unsigned Intrinsic) {
       for (unsigned i = 3, N = I.getNumOperands(); i < N; ++i) {
         Constant *C = cast<Constant>(I.getOperand(i));
         GlobalVariable *GV = ExtractGlobalVariable(C);
-        assert (GV || (isa<ConstantInt>(C) &&
-                       cast<ConstantInt>(C)->isNullValue()) &&
+        assert (GV || isa<ConstantPointerNull>(C) &&
                 "TypeInfo must be a global variable or NULL");
         TyInfo.push_back(GV);
       }
@@ -2653,8 +2652,7 @@ SelectionDAGLowering::visitIntrinsicCall(CallInst &I, unsigned Intrinsic) {
       // Find the type id for the given typeinfo.
       Constant *C = cast<Constant>(I.getOperand(1));
       GlobalVariable *GV = ExtractGlobalVariable(C);
-      assert (GV || (isa<ConstantInt>(C) &&
-                     cast<ConstantInt>(C)->isNullValue()) &&
+      assert (GV || isa<ConstantPointerNull>(C) &&
               "TypeInfo must be a global variable or NULL");
 
       unsigned TypeID = MMI->getTypeIDFor(GV);