[CodeGen][DebugInfo] Refactor duplicated code, NFC
authorScott Linder <scott@scottlinder.com>
Mon, 26 Feb 2018 16:31:08 +0000 (16:31 +0000)
committerScott Linder <scott@scottlinder.com>
Mon, 26 Feb 2018 16:31:08 +0000 (16:31 +0000)
llvm-svn: 326099

clang/lib/CodeGen/CGDebugInfo.cpp

index bed531e..3dab8c3 100644 (file)
@@ -388,18 +388,14 @@ CGDebugInfo::computeChecksum(FileID FID, SmallString<32> &Checksum) const {
 llvm::DIFile *CGDebugInfo::getOrCreateFile(SourceLocation Loc) {
   if (!Loc.isValid())
     // If Location is not valid then use main input file.
-    return DBuilder.createFile(remapDIPath(TheCU->getFilename()),
-                               remapDIPath(TheCU->getDirectory()),
-                               TheCU->getFile()->getChecksum());
+    return getOrCreateMainFile();
 
   SourceManager &SM = CGM.getContext().getSourceManager();
   PresumedLoc PLoc = SM.getPresumedLoc(Loc);
 
   if (PLoc.isInvalid() || StringRef(PLoc.getFilename()).empty())
     // If the location is not valid then use main input file.
-    return DBuilder.createFile(remapDIPath(TheCU->getFilename()),
-                               remapDIPath(TheCU->getDirectory()),
-                               TheCU->getFile()->getChecksum());
+    return getOrCreateMainFile();
 
   // Cache the results.
   const char *fname = PLoc.getFilename();