allow TimeRegion to take a potentially-null pointer to a
authorChris Lattner <sabre@nondot.org>
Wed, 18 Feb 2009 01:48:17 +0000 (01:48 +0000)
committerChris Lattner <sabre@nondot.org>
Wed, 18 Feb 2009 01:48:17 +0000 (01:48 +0000)
timer for clang.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@64874 91177308-0d34-0410-b5e6-96231b3b80d8

include/llvm/Support/Timer.h

index b9882a970820789b56818afb08859608af6e2192..584199f4400708fe61204e90714f238105edfa1d 100644 (file)
@@ -113,14 +113,19 @@ private:
 /// the relevant timer.  This makes it easy to time a region of code.
 ///
 class TimeRegion {
-  Timer &T;
+  Timer *T;
   TimeRegion(const TimeRegion &); // DO NOT IMPLEMENT
 public:
-  explicit TimeRegion(Timer &t) : T(t) {
-    T.startTimer();
+  explicit TimeRegion(Timer &t) : T(&t) {
+    T->startTimer();
+  }
+  explicit TimeRegion(Timer *t) : T(t) {
+    if (T)
+      T->startTimer();
   }
   ~TimeRegion() {
-    T.stopTimer();
+    if (T)
+      T->stopTimer();
   }
 };