DI: Strengthen some dyn_casts to DIDerivedType, NFC
authorDuncan P. N. Exon Smith <dexonsmith@apple.com>
Fri, 24 Jul 2015 19:17:20 +0000 (19:17 +0000)
committerDuncan P. N. Exon Smith <dexonsmith@apple.com>
Fri, 24 Jul 2015 19:17:20 +0000 (19:17 +0000)
The surrounding code proves in both cases that these must be
`DIDerivedType` if they're `DIDerivedTypeBase`, so strengthen the
`dyn_cast`s to the more specific type.

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

lib/IR/DebugInfo.cpp

index 9646d1aa4d76e572dd33a30370e846b8ed248f68..ca343f7fac884c113492a3a0096e3ab6c0182da8 100644 (file)
@@ -60,7 +60,7 @@ DICompositeTypeBase *llvm::getDICompositeType(DIType *T) {
   if (auto *C = dyn_cast_or_null<DICompositeTypeBase>(T))
     return C;
 
-  if (auto *D = dyn_cast_or_null<DIDerivedTypeBase>(T)) {
+  if (auto *D = dyn_cast_or_null<DIDerivedType>(T)) {
     // This function is currently used by dragonegg and dragonegg does
     // not generate identifier for types, so using an empty map to resolve
     // DerivedFrom should be fine.
@@ -177,7 +177,7 @@ void DebugInfoFinder::processType(DIType *DT) {
       else if (auto *SP = dyn_cast<DISubprogram>(D))
         processSubprogram(SP);
     }
-  } else if (auto *DDT = dyn_cast<DIDerivedTypeBase>(DT)) {
+  } else if (auto *DDT = dyn_cast<DIDerivedType>(DT)) {
     processType(DDT->getBaseType().resolve(TypeIdentifierMap));
   }
 }