Use correct casts
authorChris Lattner <sabre@nondot.org>
Mon, 10 Sep 2001 20:10:02 +0000 (20:10 +0000)
committerChris Lattner <sabre@nondot.org>
Mon, 10 Sep 2001 20:10:02 +0000 (20:10 +0000)
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@542 91177308-0d34-0410-b5e6-96231b3b80d8

lib/CodeGen/TargetMachine/TargetData.cpp

index a3db47fc10e189da7b4f6cf6827be53030d107fa..fd9dd26d28295c3eac22fe30b9af590ce3ca73b0 100644 (file)
@@ -147,16 +147,14 @@ unsigned char TargetData::getTypeAlignment(const Type *Ty) const {
 
 unsigned TargetData::getIndexedOffset(const Type *ptrTy,
                                      const vector<ConstPoolVal*> &Idx) const {
-  const PointerType *PtrTy = ptrTy->isPointerType();   // Returns null if not
-  assert(PtrTy && "getIndexedOffset on nonpointer!");
-
+  const PointerType *PtrTy = ptrTy->castPointerType();
   unsigned Result = 0;
 
   // Get the type pointed to...
   const Type *Ty = PtrTy->getValueType();
 
   for (unsigned CurIDX = 0; CurIDX < Idx.size(); ++CurIDX) {
-    if (const StructType *STy = Ty->isStructType()) {
+    if (const StructType *STy = Ty->dyncastStructType()) {
       assert(Idx[CurIDX]->getType() == Type::UByteTy && "Illegal struct idx");
       unsigned FieldNo = ((ConstPoolUInt*)Idx[CurIDX++])->getValue();
 
@@ -170,7 +168,7 @@ unsigned TargetData::getIndexedOffset(const Type *ptrTy,
       // Update Ty to refer to current element
       Ty = STy->getElementTypes()[FieldNo];
 
-    } else if (const ArrayType *ATy = Ty->isArrayType()) {
+    } else if (const ArrayType *ATy = Ty->dyncastArrayType()) {
       assert(0 && "Loading from arrays not implemented yet!");
     } else {
       assert(0 && "Indexing type that is not struct or array?");