Author: Jonas Devlieghere
Date: 2021-01-20T18:45:30-08:00
New Revision: f354b87df23799ee0b6c718894140c846eafc82d

URL: 
https://github.com/llvm/llvm-project/commit/f354b87df23799ee0b6c718894140c846eafc82d
DIFF: 
https://github.com/llvm/llvm-project/commit/f354b87df23799ee0b6c718894140c846eafc82d.diff

LOG: [dsymutil] Compare object modification times using second precision

The modification time in the debug map is expressed using second
precision, while the modification time returned by the filesystem could
be more precise. Avoid spurious warnings about timestamp mismatches by
truncating the modification time reported by the system to seconds.

Added: 
    

Modified: 
    llvm/tools/dsymutil/BinaryHolder.cpp

Removed: 
    


################################################################################
diff  --git a/llvm/tools/dsymutil/BinaryHolder.cpp 
b/llvm/tools/dsymutil/BinaryHolder.cpp
index b401d519718c..f83521346c5b 100644
--- a/llvm/tools/dsymutil/BinaryHolder.cpp
+++ b/llvm/tools/dsymutil/BinaryHolder.cpp
@@ -100,7 +100,8 @@ Error 
BinaryHolder::ObjectEntry::load(IntrusiveRefCntPtr<vfs::FileSystem> VFS,
     llvm::ErrorOr<vfs::Status> Stat = VFS->status(Filename);
     if (!Stat)
       return errorCodeToError(Stat.getError());
-    if (Timestamp != Stat->getLastModificationTime())
+    if (Timestamp != std::chrono::time_point_cast<std::chrono::seconds>(
+                         Stat->getLastModificationTime()))
       WithColor::warning() << Filename
                            << ": timestamp mismatch between object file ("
                            << Stat->getLastModificationTime()
@@ -192,7 +193,8 @@ BinaryHolder::ArchiveEntry::getObjectEntry(StringRef 
Filename,
             return ModTimeOrErr.takeError();
 
           if (Timestamp != sys::TimePoint<>() &&
-              Timestamp != ModTimeOrErr.get()) {
+              Timestamp != std::chrono::time_point_cast<std::chrono::seconds>(
+                               ModTimeOrErr.get())) {
             if (Verbose)
               WithColor::warning()
                   << *NameOrErr


        
_______________________________________________
llvm-branch-commits mailing list
llvm-branch-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-branch-commits

Reply via email to