libutils: allow multiple ATRACE_NAMEs in a scope. am: 01937ee2b9

am: d28920f745

Change-Id: Ieebcb45ddb94e4a05126ae2c564cfeb2827ec9b8
This commit is contained in:
Josh Gao 2016-12-13 00:43:05 +00:00 committed by android-build-merger
commit e152b1b418

View file

@ -33,10 +33,10 @@
// See <cutils/trace.h> for more ATRACE_* macros.
// ATRACE_NAME traces the beginning and end of the current scope. To trace
// the correct start and end times this macro should be declared first in the
// scope body.
#define ATRACE_NAME(name) android::ScopedTrace ___tracer(ATRACE_TAG, name)
// ATRACE_NAME traces from its location until the end of its enclosing scope.
#define _PASTE(x, y) x ## y
#define PASTE(x, y) _PASTE(x,y)
#define ATRACE_NAME(name) android::ScopedTrace PASTE(___tracer, __LINE__) (ATRACE_TAG, name)
// ATRACE_CALL is an ATRACE_NAME that uses the current function name.
#define ATRACE_CALL() ATRACE_NAME(__FUNCTION__)