From 00b5df427f11e8ae703d618f11f6b175e5b7d45b Mon Sep 17 00:00:00 2001 From: Reid Spencer Date: Mon, 15 Nov 2004 04:36:35 +0000 Subject: [PATCH] Consolidate the implementation of TimeValue::now() for Unix to use the seemingly ubiquitous gettimeofday(3) call. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@17813 91177308-0d34-0410-b5e6-96231b3b80d8 --- lib/System/AIX/TimeValue.cpp | 4 +--- lib/System/Cygwin/TimeValue.cpp | 4 +--- lib/System/Darwin/TimeValue.cpp | 4 +--- lib/System/FreeBSD/TimeValue.cpp | 15 +-------------- lib/System/Interix/TimeValue.cpp | 4 +--- lib/System/Linux/TimeValue.cpp | 13 ------------- lib/System/SunOS/TimeValue.cpp | 15 +-------------- lib/System/Unix/TimeValue.cpp | 13 +++++++++++++ lib/System/Unix/TimeValue.inc | 13 +++++++++++++ 9 files changed, 32 insertions(+), 53 deletions(-) diff --git a/lib/System/AIX/TimeValue.cpp b/lib/System/AIX/TimeValue.cpp index 18fd4f31a15..42975ad2098 100644 --- a/lib/System/AIX/TimeValue.cpp +++ b/lib/System/AIX/TimeValue.cpp @@ -12,7 +12,7 @@ //===----------------------------------------------------------------------===// // Include the generic Unix implementation -#include "../Unix/Unix.h" +#include "../Unix/Unix.cpp" namespace llvm { using namespace sys; @@ -22,8 +22,6 @@ using namespace sys; //=== and must not be generic UNIX code (see ../Unix/TimeValue.cpp) //===----------------------------------------------------------------------===// -// FIXME: Need TimeValue::now() - // vim: sw=2 smartindent smarttab tw=80 autoindent expandtab } diff --git a/lib/System/Cygwin/TimeValue.cpp b/lib/System/Cygwin/TimeValue.cpp index 6871551e814..aaee13a1e31 100644 --- a/lib/System/Cygwin/TimeValue.cpp +++ b/lib/System/Cygwin/TimeValue.cpp @@ -12,7 +12,7 @@ //===----------------------------------------------------------------------===// // Include the generic Unix implementation -#include "../Unix/Unix.h" +#include "../Unix/Unix.cpp" namespace llvm { using namespace sys; @@ -22,8 +22,6 @@ using namespace sys; //=== and must not be generic UNIX code (see ../Unix/TimeValue.cpp) //===----------------------------------------------------------------------===// -// FIXME: Need TimeValue::now() - // vim: sw=2 smartindent smarttab tw=80 autoindent expandtab } diff --git a/lib/System/Darwin/TimeValue.cpp b/lib/System/Darwin/TimeValue.cpp index df27b9228ed..0791f443aee 100644 --- a/lib/System/Darwin/TimeValue.cpp +++ b/lib/System/Darwin/TimeValue.cpp @@ -12,7 +12,7 @@ //===----------------------------------------------------------------------===// // Include the generic Unix implementation -#include "../Unix/Unix.h" +#include "../Unix/Unix.cpp" namespace llvm { using namespace sys; @@ -22,8 +22,6 @@ using namespace sys; //=== and must not be generic UNIX code (see ../Unix/TimeValue.cpp) //===----------------------------------------------------------------------===// -// FIXME: Need TimeValue::now() - // vim: sw=2 smartindent smarttab tw=80 autoindent expandtab } diff --git a/lib/System/FreeBSD/TimeValue.cpp b/lib/System/FreeBSD/TimeValue.cpp index 79ed9a86336..bade8387775 100644 --- a/lib/System/FreeBSD/TimeValue.cpp +++ b/lib/System/FreeBSD/TimeValue.cpp @@ -12,8 +12,7 @@ //===----------------------------------------------------------------------===// // Include the generic Unix implementation -#include "../Unix/Unix.h" -#include +#include "../Unix/Unix.cpp" namespace llvm { using namespace sys; @@ -23,18 +22,6 @@ using namespace sys; //=== and must not be generic UNIX code (see ../Unix/TimeValue.cpp) //===----------------------------------------------------------------------===// -TimeValue TimeValue::now() { - struct timeval the_time; - timerclear(&the_time); - if (0 != ::gettimeofday(&the_time,0)) - ThrowErrno("Couldn't obtain time of day"); - - return TimeValue( - static_cast( the_time.tv_sec + - PosixZeroTime.seconds_ ), - static_cast( the_time.tv_usec * - NANOSECONDS_PER_MICROSECOND ) ); -} // vim: sw=2 smartindent smarttab tw=80 autoindent expandtab } diff --git a/lib/System/Interix/TimeValue.cpp b/lib/System/Interix/TimeValue.cpp index 6c4957f24bd..60c7e0668eb 100644 --- a/lib/System/Interix/TimeValue.cpp +++ b/lib/System/Interix/TimeValue.cpp @@ -12,7 +12,7 @@ //===----------------------------------------------------------------------===// // Include the generic Unix implementation -#include "../Unix/Unix.h" +#include "../Unix/Unix.cpp" namespace llvm { using namespace sys; @@ -22,8 +22,6 @@ using namespace sys; //=== and must not be generic UNIX code (see ../Unix/TimeValue.cpp) //===----------------------------------------------------------------------===// -// FIXME: Need TimeValue::now() - // vim: sw=2 smartindent smarttab tw=80 autoindent expandtab } diff --git a/lib/System/Linux/TimeValue.cpp b/lib/System/Linux/TimeValue.cpp index d9745cc72d7..8f52770e3ac 100644 --- a/lib/System/Linux/TimeValue.cpp +++ b/lib/System/Linux/TimeValue.cpp @@ -14,8 +14,6 @@ // Include the generic Unix implementation #include "../Unix/TimeValue.cpp" -#include - namespace llvm { using namespace sys; @@ -25,17 +23,6 @@ using namespace sys; //=== and must not be generic UNIX code (see ../Unix/TimeValue.cpp) //===----------------------------------------------------------------------===// -TimeValue TimeValue::now() { - struct timeval the_time; - timerclear(&the_time); - if (0 != ::gettimeofday(&the_time,0)) - ThrowErrno("Couldn't obtain time of day"); - - return TimeValue( - static_cast( the_time.tv_sec ), - static_cast( the_time.tv_usec * - NANOSECONDS_PER_MICROSECOND ) ); -} // vim: sw=2 smartindent smarttab tw=80 autoindent expandtab } diff --git a/lib/System/SunOS/TimeValue.cpp b/lib/System/SunOS/TimeValue.cpp index 8f44060f475..7e47331b3f6 100644 --- a/lib/System/SunOS/TimeValue.cpp +++ b/lib/System/SunOS/TimeValue.cpp @@ -12,8 +12,7 @@ //===----------------------------------------------------------------------===// // Include the generic Unix implementation -#include "../Unix/Unix.h" -#include +#include "../Unix/Unix.cpp" namespace llvm { using namespace sys; @@ -23,18 +22,6 @@ using namespace sys; //=== and must not be generic UNIX code (see ../Unix/TimeValue.cpp) //===----------------------------------------------------------------------===// -TimeValue TimeValue::now() { - struct timeval the_time; - timerclear(&the_time); - if (0 != ::gettimeofday(&the_time,0)) - ThrowErrno("Couldn't obtain time of day"); - - return TimeValue( - static_cast( the_time.tv_sec ), - static_cast( the_time.tv_usec * - NANOSECONDS_PER_MICROSECOND ) ); -} - // vim: sw=2 smartindent smarttab tw=80 autoindent expandtab } diff --git a/lib/System/Unix/TimeValue.cpp b/lib/System/Unix/TimeValue.cpp index f029f8dadca..6b476c86cad 100644 --- a/lib/System/Unix/TimeValue.cpp +++ b/lib/System/Unix/TimeValue.cpp @@ -19,6 +19,7 @@ #include "Unix.h" #include +#include namespace llvm { using namespace sys; @@ -34,5 +35,17 @@ std::string TimeValue::toString() { return result.substr(0,24); } +TimeValue TimeValue::now() { + struct timeval the_time; + ::timerclear(&the_time); + if (0 != ::gettimeofday(&the_time,0)) + ThrowErrno("Couldn't obtain time of day"); + + return TimeValue( + static_cast( the_time.tv_sec ), + static_cast( the_time.tv_usec * + NANOSECONDS_PER_MICROSECOND ) ); +} + } // vim: sw=2 smartindent smarttab tw=80 autoindent expandtab diff --git a/lib/System/Unix/TimeValue.inc b/lib/System/Unix/TimeValue.inc index f029f8dadca..6b476c86cad 100644 --- a/lib/System/Unix/TimeValue.inc +++ b/lib/System/Unix/TimeValue.inc @@ -19,6 +19,7 @@ #include "Unix.h" #include +#include namespace llvm { using namespace sys; @@ -34,5 +35,17 @@ std::string TimeValue::toString() { return result.substr(0,24); } +TimeValue TimeValue::now() { + struct timeval the_time; + ::timerclear(&the_time); + if (0 != ::gettimeofday(&the_time,0)) + ThrowErrno("Couldn't obtain time of day"); + + return TimeValue( + static_cast( the_time.tv_sec ), + static_cast( the_time.tv_usec * + NANOSECONDS_PER_MICROSECOND ) ); +} + } // vim: sw=2 smartindent smarttab tw=80 autoindent expandtab