mirror of
https://github.com/RPCSX/llvm.git
synced 2024-12-13 23:18:51 +00:00
9262f00f1a
The previously used "names" are rather descriptions (they use multiple words and contain spaces), use short programming language identifier like strings for the "names" which should be used when exporting to machine parseable formats. Also removed a unused TimerGroup from Hexxagon. Differential Revision: https://reviews.llvm.org/D25583 git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@287369 91177308-0d34-0410-b5e6-96231b3b80d8
66 lines
1.3 KiB
C++
66 lines
1.3 KiB
C++
//===- unittests/TimerTest.cpp - Timer tests ------------------------------===//
|
|
//
|
|
// The LLVM Compiler Infrastructure
|
|
//
|
|
// This file is distributed under the University of Illinois Open Source
|
|
// License. See LICENSE.TXT for details.
|
|
//
|
|
//===----------------------------------------------------------------------===//
|
|
|
|
#include "llvm/Support/Timer.h"
|
|
#include "gtest/gtest.h"
|
|
|
|
#if LLVM_ON_WIN32
|
|
#include <windows.h>
|
|
#else
|
|
#include <time.h>
|
|
#endif
|
|
|
|
using namespace llvm;
|
|
|
|
namespace {
|
|
|
|
// FIXME: Put this somewhere in Support, it's also used in LockFileManager.
|
|
void SleepMS() {
|
|
#if LLVM_ON_WIN32
|
|
Sleep(1);
|
|
#else
|
|
struct timespec Interval;
|
|
Interval.tv_sec = 0;
|
|
Interval.tv_nsec = 1000000;
|
|
nanosleep(&Interval, nullptr);
|
|
#endif
|
|
}
|
|
|
|
TEST(Timer, Additivity) {
|
|
Timer T1("T1", "T1");
|
|
|
|
EXPECT_TRUE(T1.isInitialized());
|
|
|
|
T1.startTimer();
|
|
T1.stopTimer();
|
|
auto TR1 = T1.getTotalTime();
|
|
|
|
T1.startTimer();
|
|
SleepMS();
|
|
T1.stopTimer();
|
|
auto TR2 = T1.getTotalTime();
|
|
|
|
EXPECT_TRUE(TR1 < TR2);
|
|
}
|
|
|
|
TEST(Timer, CheckIfTriggered) {
|
|
Timer T1("T1", "T1");
|
|
|
|
EXPECT_FALSE(T1.hasTriggered());
|
|
T1.startTimer();
|
|
EXPECT_TRUE(T1.hasTriggered());
|
|
T1.stopTimer();
|
|
EXPECT_TRUE(T1.hasTriggered());
|
|
|
|
T1.clear();
|
|
EXPECT_FALSE(T1.hasTriggered());
|
|
}
|
|
|
|
} // end anon namespace
|