Remove TimeValue usage from llvm/Support
Summary: This is a follow-up to D25416. It removes all usages of TimeValue from llvm/Support library (except for the actual TimeValue declaration), and replaces them with appropriate usages of std::chrono. To facilitate this, I have added small utility functions for converting time points and durations into appropriate OS-specific types (FILETIME, struct timespec, ...). Reviewers: zturner, mehdi_amini Subscribers: llvm-commits Differential Revision: https://reviews.llvm.org/D25730 llvm-svn: 284966
This commit is contained in:
@@ -116,8 +116,10 @@ static inline size_t getMemUsage() {
|
||||
}
|
||||
|
||||
TimeRecord TimeRecord::getCurrentTime(bool Start) {
|
||||
using Seconds = std::chrono::duration<double, std::ratio<1>>;
|
||||
TimeRecord Result;
|
||||
sys::TimeValue now(0,0), user(0,0), sys(0,0);
|
||||
sys::TimePoint<> now;
|
||||
std::chrono::nanoseconds user, sys;
|
||||
|
||||
if (Start) {
|
||||
Result.MemUsed = getMemUsage();
|
||||
@@ -127,9 +129,9 @@ TimeRecord TimeRecord::getCurrentTime(bool Start) {
|
||||
Result.MemUsed = getMemUsage();
|
||||
}
|
||||
|
||||
Result.WallTime = now.seconds() + now.microseconds() / 1000000.0;
|
||||
Result.UserTime = user.seconds() + user.microseconds() / 1000000.0;
|
||||
Result.SystemTime = sys.seconds() + sys.microseconds() / 1000000.0;
|
||||
Result.WallTime = Seconds(now.time_since_epoch()).count();
|
||||
Result.UserTime = Seconds(user).count();
|
||||
Result.SystemTime = Seconds(sys).count();
|
||||
return Result;
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user