aboutsummaryrefslogtreecommitdiffstats
path: root/android-emu
diff options
context:
space:
mode:
Diffstat (limited to 'android-emu')
-rw-r--r--android-emu/android/base/Tracing.cpp8
-rw-r--r--android-emu/android/base/Tracing.h25
2 files changed, 27 insertions, 6 deletions
diff --git a/android-emu/android/base/Tracing.cpp b/android-emu/android/base/Tracing.cpp
index 59090428..0e635db1 100644
--- a/android-emu/android/base/Tracing.cpp
+++ b/android-emu/android/base/Tracing.cpp
@@ -25,11 +25,11 @@
namespace android {
namespace base {
-void ScopedTrace::beginTraceImpl(const char* name) {
+void ScopedTraceGuest::beginTraceImpl(const char* name) {
atrace_begin(VK_TRACE_TAG, name);
}
-void ScopedTrace::endTraceImpl(const char*) {
+void ScopedTraceGuest::endTraceImpl(const char*) {
atrace_end(VK_TRACE_TAG);
}
@@ -47,13 +47,13 @@ void ScopedTrace::endTraceImpl(const char*) {
namespace android {
namespace base {
-void ScopedTrace::beginTraceImpl(const char* name) {
+void ScopedTraceGuest::beginTraceImpl(const char* name) {
#ifndef FUCHSIA_NO_TRACE
TRACE_DURATION_BEGIN(VK_TRACE_TAG, name);
#endif
}
-void ScopedTrace::endTraceImpl(const char* name) {
+void ScopedTraceGuest::endTraceImpl(const char* name) {
#ifndef FUCHSIA_NO_TRACE
TRACE_DURATION_END(VK_TRACE_TAG, name);
#endif
diff --git a/android-emu/android/base/Tracing.h b/android-emu/android/base/Tracing.h
index 046a5bf0..3a78726e 100644
--- a/android-emu/android/base/Tracing.h
+++ b/android-emu/android/base/Tracing.h
@@ -19,13 +19,30 @@
namespace android {
namespace base {
+#ifdef HOST_BUILD
+void initializeTracing();
+void enableTracing();
+void disableTracing();
+
class ScopedTrace {
public:
- ScopedTrace(const char* name) : name_(name) {
+ ScopedTrace(const char* name);
+ ~ScopedTrace();
+};
+
+class ScopedTraceDerived : public ScopedTrace {
+public:
+ void* member = nullptr;
+};
+#endif
+
+class ScopedTraceGuest {
+public:
+ ScopedTraceGuest(const char* name) : name_(name) {
beginTraceImpl(name_);
}
- ~ScopedTrace() {
+ ~ScopedTraceGuest() {
endTraceImpl(name_);
}
private:
@@ -42,4 +59,8 @@ private:
#define __AEMU_GENSYM1(x,y) __AEMU_GENSYM2(x,y)
#define AEMU_GENSYM(x) __AEMU_GENSYM1(x,__COUNTER__)
+#ifdef HOST_BUILD
#define AEMU_SCOPED_TRACE(tag) __attribute__ ((unused)) android::base::ScopedTrace AEMU_GENSYM(aemuScopedTrace_)(tag)
+#else
+#define AEMU_SCOPED_TRACE(tag) __attribute__ ((unused)) android::base::ScopedTraceGuest AEMU_GENSYM(aemuScopedTrace_)(tag)
+#endif