WinCOFFObjectWriter.cpp: Roll back TimeDateStamp along ENABLE_TIMESTAMPS.
authorNAKAMURA Takumi <geek4civic@gmail.com>
Sat, 5 Sep 2015 01:17:49 +0000 (01:17 +0000)
committerNAKAMURA Takumi <geek4civic@gmail.com>
Sat, 5 Sep 2015 01:17:49 +0000 (01:17 +0000)
We want a deterministic output. GNU AS leaves it zero.

FIXME: It may be optional by its user, like llc and clang.

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

lib/MC/WinCOFFObjectWriter.cpp

index 9058edf33254a77bee3fe08c55f07e2ed8912796..6c696738b48bf873889038cc1d9523d17f681e87 100644 (file)
@@ -1013,12 +1013,17 @@ void WinCOFFObjectWriter::writeObject(MCAssembler &Asm,
 
   Header.PointerToSymbolTable = offset;
 
+#if (ENABLE_TIMESTAMPS == 1)
   // MS LINK expects to be able to use this timestamp to implement their
   // /INCREMENTAL feature.
   std::time_t Now = time(nullptr);
   if (Now < 0 || !isUInt<32>(Now))
     Now = UINT32_MAX;
   Header.TimeDateStamp = Now;
+#else
+  // We want a deterministic output. It looks like GNU as also writes 0 in here.
+  Header.TimeDateStamp = 0;
+#endif
 
   // Write it all to disk...
   WriteFileHeader(Header);