aboutsummaryrefslogtreecommitdiff
path: root/llvm/lib/Support/Timer.cpp
diff options
context:
space:
mode:
authorAdrian Prantl <aprantl@apple.com>2021-06-11 15:18:25 -0700
committerAdrian Prantl <aprantl@apple.com>2021-06-14 16:53:41 -0700
commit035217ff515b8ecdc871e39fa840f3cba1b9cec7 (patch)
tree8068a0d11bc07c31a96f4891b1b65278ac31f86a /llvm/lib/Support/Timer.cpp
parent1c096bf09ffd3d51665b60942d6bde19e7dbbd5a (diff)
downloadllvm-035217ff515b8ecdc871e39fa840f3cba1b9cec7.zip
llvm-035217ff515b8ecdc871e39fa840f3cba1b9cec7.tar.gz
llvm-035217ff515b8ecdc871e39fa840f3cba1b9cec7.tar.bz2
Allow signposts to take advantage of deferred string substitution
One nice feature of the os_signpost API is that format string substitutions happen in the consumer, not the logging application. LLVM's current Signpost class doesn't take advantage of this though and instead always uses a static "Begin/End %s" format string. This patch uses variadic macros to allow the API to be used as intended. Unfortunately, the primary use-case I had in mind (the LLDB_SCOPED_TIMER() macro) does not get much better from this, because __PRETTY_FUNCTION__ is *not* a macro, but a static string, so signposts created by LLDB_SCOPED_TIMER() still use a static "%s" format string. At least LLDB_SCOPED_TIMERF() works as intended. This reapplies the previously reverted patch with additional include order fixes for non-modular builds of LLDB. Differential Revision: https://reviews.llvm.org/D103575
Diffstat (limited to 'llvm/lib/Support/Timer.cpp')
-rw-r--r--llvm/lib/Support/Timer.cpp2
1 files changed, 1 insertions, 1 deletions
diff --git a/llvm/lib/Support/Timer.cpp b/llvm/lib/Support/Timer.cpp
index 6e592db..8d421db 100644
--- a/llvm/lib/Support/Timer.cpp
+++ b/llvm/lib/Support/Timer.cpp
@@ -174,7 +174,7 @@ void Timer::stopTimer() {
Running = false;
Time += TimeRecord::getCurrentTime(false);
Time -= StartTime;
- Signposts->endInterval(this, getName());
+ Signposts->endInterval(this);
}
void Timer::clear() {