Index: base/trace_event/trace_event.h |
diff --git a/base/trace_event/trace_event.h b/base/trace_event/trace_event.h |
index b90a3eac6c05ea575631145844e76d979b08d8c0..d701cb6e5a89a07d3e2fd28a892cfc7ae1c33323 100644 |
--- a/base/trace_event/trace_event.h |
+++ b/base/trace_event/trace_event.h |
@@ -520,6 +520,27 @@ |
value1_name, static_cast<int>(value1_val), \ |
value2_name, static_cast<int>(value2_val)) |
+// TRACE_EVENT_SAMPLE_* events are injected by the sampling profiler. |
+#define TRACE_EVENT_SAMPLE_WITH_TID_AND_TIMESTAMP0(category_group, name, \ |
+ thread_id, timestamp) \ |
+ INTERNAL_TRACE_EVENT_ADD_WITH_ID_TID_AND_TIMESTAMP( \ |
+ TRACE_EVENT_PHASE_SAMPLE, category_group, name, 0, thread_id, timestamp, \ |
+ TRACE_EVENT_SCOPE_THREAD) |
dsinclair
2015/03/16 17:57:48
What does SCOPE_THREAD do here?
alph
2015/03/16 22:08:15
Oops, sorry. I was just playing with INSTANT event
|
+ |
+#define TRACE_EVENT_SAMPLE_WITH_TID_AND_TIMESTAMP1( \ |
+ category_group, name, thread_id, timestamp, arg1_name, arg1_val) \ |
+ INTERNAL_TRACE_EVENT_ADD_WITH_ID_TID_AND_TIMESTAMP( \ |
+ TRACE_EVENT_PHASE_SAMPLE, category_group, name, 0, thread_id, timestamp, \ |
+ TRACE_EVENT_SCOPE_THREAD, arg1_name, arg1_val) |
+ |
+#define TRACE_EVENT_SAMPLE_WITH_TID_AND_TIMESTAMP2(category_group, name, \ |
+ thread_id, timestamp, \ |
+ arg1_name, arg1_val, \ |
+ arg2_name, arg2_val) \ |
+ INTERNAL_TRACE_EVENT_ADD_WITH_ID_TID_AND_TIMESTAMP( \ |
+ TRACE_EVENT_PHASE_SAMPLE, category_group, name, 0, thread_id, timestamp, \ |
+ TRACE_EVENT_SCOPE_THREAD, arg1_name, arg1_val, arg2_name, arg2_val) |
+ |
// ASYNC_STEP_* APIs should be only used by legacy code. New code should |
// consider using NESTABLE_ASYNC_* APIs to describe substeps within an async |
// event. |