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
This commit is contained in:
Reid Spencer 2004-11-15 04:36:35 +00:00
parent b323113b93
commit 00b5df427f
9 changed files with 32 additions and 53 deletions

View File

@ -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
}

View File

@ -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
}

View File

@ -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
}

View File

@ -12,8 +12,7 @@
//===----------------------------------------------------------------------===//
// Include the generic Unix implementation
#include "../Unix/Unix.h"
#include <sys/time.h>
#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<TimeValue::SecondsType>( the_time.tv_sec +
PosixZeroTime.seconds_ ),
static_cast<TimeValue::NanoSecondsType>( the_time.tv_usec *
NANOSECONDS_PER_MICROSECOND ) );
}
// vim: sw=2 smartindent smarttab tw=80 autoindent expandtab
}

View File

@ -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
}

View File

@ -14,8 +14,6 @@
// Include the generic Unix implementation
#include "../Unix/TimeValue.cpp"
#include <sys/time.h>
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<TimeValue::SecondsType>( the_time.tv_sec ),
static_cast<TimeValue::NanoSecondsType>( the_time.tv_usec *
NANOSECONDS_PER_MICROSECOND ) );
}
// vim: sw=2 smartindent smarttab tw=80 autoindent expandtab
}

View File

@ -12,8 +12,7 @@
//===----------------------------------------------------------------------===//
// Include the generic Unix implementation
#include "../Unix/Unix.h"
#include <sys/time.h>
#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<TimeValue::SecondsType>( the_time.tv_sec ),
static_cast<TimeValue::NanoSecondsType>( the_time.tv_usec *
NANOSECONDS_PER_MICROSECOND ) );
}
// vim: sw=2 smartindent smarttab tw=80 autoindent expandtab
}

View File

@ -19,6 +19,7 @@
#include "Unix.h"
#include <time.h>
#include <sys/time.h>
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<TimeValue::SecondsType>( the_time.tv_sec ),
static_cast<TimeValue::NanoSecondsType>( the_time.tv_usec *
NANOSECONDS_PER_MICROSECOND ) );
}
}
// vim: sw=2 smartindent smarttab tw=80 autoindent expandtab

View File

@ -19,6 +19,7 @@
#include "Unix.h"
#include <time.h>
#include <sys/time.h>
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<TimeValue::SecondsType>( the_time.tv_sec ),
static_cast<TimeValue::NanoSecondsType>( the_time.tv_usec *
NANOSECONDS_PER_MICROSECOND ) );
}
}
// vim: sw=2 smartindent smarttab tw=80 autoindent expandtab