[llvm] r201136 - Remove TimeValue::toPosixTime() -- it is buggy, semantics are unclear, and its
Dmitri Gribenko
gribozavr at gmail.com
Tue Feb 11 01:11:18 PST 2014
Author: gribozavr
Date: Tue Feb 11 03:11:18 2014
New Revision: 201136
URL: http://llvm.org/viewvc/llvm-project?rev=201136&view=rev
Log:
Remove TimeValue::toPosixTime() -- it is buggy, semantics are unclear, and its
only current user should be using toEpochTime() instead.
Modified:
llvm/trunk/include/llvm/Support/TimeValue.h
llvm/trunk/lib/Support/Unix/Path.inc
llvm/trunk/unittests/Support/TimeValueTest.cpp
Modified: llvm/trunk/include/llvm/Support/TimeValue.h
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/include/llvm/Support/TimeValue.h?rev=201136&r1=201135&r2=201136&view=diff
==============================================================================
--- llvm/trunk/include/llvm/Support/TimeValue.h (original)
+++ llvm/trunk/include/llvm/Support/TimeValue.h Tue Feb 11 03:11:18 2014
@@ -74,8 +74,7 @@ namespace sys {
MILLISECONDS_PER_SECOND = 1000, ///< One Thousand
NANOSECONDS_PER_MICROSECOND = 1000, ///< One Thousand
NANOSECONDS_PER_MILLISECOND = 1000000,///< One Million
- NANOSECONDS_PER_POSIX_TICK = 100, ///< Posix tick is 100 Hz (10ms)
- NANOSECONDS_PER_WIN32_TICK = 100 ///< Win32 tick is 100 Hz (10ms)
+ NANOSECONDS_PER_WIN32_TICK = 100 ///< Win32 tick is 10^7 Hz (10ns)
};
/// @}
@@ -236,15 +235,6 @@ namespace sys {
( nanos_ / NANOSECONDS_PER_MILLISECOND );
}
- /// Converts the TimeValue into the corresponding number of "ticks" for
- /// Posix, correcting for the difference in Posix zero time.
- /// @brief Convert to unix time (100 nanoseconds since 12:00:00a Jan 1,1970)
- uint64_t toPosixTime() const {
- uint64_t result = seconds_ - PosixZeroTimeSeconds;
- result += nanos_ / NANOSECONDS_PER_POSIX_TICK;
- return result;
- }
-
/// Converts the TimeValue into the corresponding number of seconds
/// since the epoch (00:00:00 Jan 1,1970).
uint64_t toEpochTime() const {
Modified: llvm/trunk/lib/Support/Unix/Path.inc
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/lib/Support/Unix/Path.inc?rev=201136&r1=201135&r2=201136&view=diff
==============================================================================
--- llvm/trunk/lib/Support/Unix/Path.inc (original)
+++ llvm/trunk/lib/Support/Unix/Path.inc Tue Feb 11 03:11:18 2014
@@ -526,7 +526,7 @@ error_code status(int FD, file_status &R
error_code setLastModificationAndAccessTime(int FD, TimeValue Time) {
#if defined(HAVE_FUTIMENS)
timespec Times[2];
- Times[0].tv_sec = Time.toPosixTime();
+ Times[0].tv_sec = Time.toEpochTime();
Times[0].tv_nsec = 0;
Times[1] = Times[0];
if (::futimens(FD, Times))
@@ -534,7 +534,7 @@ error_code setLastModificationAndAccessT
return error_code::success();
#elif defined(HAVE_FUTIMES)
timeval Times[2];
- Times[0].tv_sec = Time.toPosixTime();
+ Times[0].tv_sec = Time.toEpochTime();
Times[0].tv_usec = 0;
Times[1] = Times[0];
if (::futimes(FD, Times))
Modified: llvm/trunk/unittests/Support/TimeValueTest.cpp
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/unittests/Support/TimeValueTest.cpp?rev=201136&r1=201135&r2=201136&view=diff
==============================================================================
--- llvm/trunk/unittests/Support/TimeValueTest.cpp (original)
+++ llvm/trunk/unittests/Support/TimeValueTest.cpp Tue Feb 11 03:11:18 2014
@@ -30,7 +30,8 @@ TEST(TimeValue, Win32FILETIME) {
epoch.fromWin32Time(ft1970);
// The "seconds" part in Posix time may be expected as zero.
- EXPECT_EQ(ns / 100, epoch.toPosixTime());
+ EXPECT_EQ(0u, epoch.toEpochTime());
+ EXPECT_EQ(ns, static_cast<uint32_t>(epoch.nanoseconds()));
// Confirm it reversible.
EXPECT_EQ(ft1970, epoch.toWin32Time());
More information about the llvm-commits
mailing list