| OLD | NEW |
| 1 // Copyright 2015 The Chromium Authors. All rights reserved. | 1 // Copyright 2015 The Chromium Authors. All rights reserved. |
| 2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be |
| 3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
| 4 | 4 |
| 5 // This header file defines the set of trace_event macros without specifying | 5 // This header file defines the set of trace_event macros without specifying |
| 6 // how the events actually get collected and stored. If you need to expose trace | 6 // how the events actually get collected and stored. If you need to expose trace |
| 7 // events to some other universe, you can copy-and-paste this file as well as | 7 // events to some other universe, you can copy-and-paste this file as well as |
| 8 // trace_event.h, modifying the macros contained there as necessary for the | 8 // trace_event.h, modifying the macros contained there as necessary for the |
| 9 // target platform. The end result is that multiple libraries can funnel events | 9 // target platform. The end result is that multiple libraries can funnel events |
| 10 // through to a shared trace event collector. | 10 // through to a shared trace event collector. |
| (...skipping 205 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 216 #define TRACE_EVENT2(category_group, name, arg1_name, arg1_val, arg2_name, \ | 216 #define TRACE_EVENT2(category_group, name, arg1_name, arg1_val, arg2_name, \ |
| 217 arg2_val) \ | 217 arg2_val) \ |
| 218 INTERNAL_TRACE_EVENT_ADD_SCOPED(category_group, name, arg1_name, arg1_val, \ | 218 INTERNAL_TRACE_EVENT_ADD_SCOPED(category_group, name, arg1_name, arg1_val, \ |
| 219 arg2_name, arg2_val) | 219 arg2_name, arg2_val) |
| 220 #define TRACE_EVENT_WITH_FLOW2(category_group, name, bind_id, flow_flags, \ | 220 #define TRACE_EVENT_WITH_FLOW2(category_group, name, bind_id, flow_flags, \ |
| 221 arg1_name, arg1_val, arg2_name, arg2_val) \ | 221 arg1_name, arg1_val, arg2_name, arg2_val) \ |
| 222 INTERNAL_TRACE_EVENT_ADD_SCOPED_WITH_FLOW(category_group, name, bind_id, \ | 222 INTERNAL_TRACE_EVENT_ADD_SCOPED_WITH_FLOW(category_group, name, bind_id, \ |
| 223 flow_flags, arg1_name, arg1_val, \ | 223 flow_flags, arg1_name, arg1_val, \ |
| 224 arg2_name, arg2_val) | 224 arg2_name, arg2_val) |
| 225 | 225 |
| 226 // UNSHIPPED_TRACE_EVENT* are like TRACE_EVENT* except that they are not | |
| 227 // included in official builds. | |
| 228 | |
| 229 #if OFFICIAL_BUILD | |
| 230 #undef TRACING_IS_OFFICIAL_BUILD | |
| 231 #define TRACING_IS_OFFICIAL_BUILD 1 | |
| 232 #elif !defined(TRACING_IS_OFFICIAL_BUILD) | |
| 233 #define TRACING_IS_OFFICIAL_BUILD 0 | |
| 234 #endif | |
| 235 | |
| 236 #if TRACING_IS_OFFICIAL_BUILD | |
| 237 #define UNSHIPPED_TRACE_EVENT0(category_group, name) (void)0 | |
| 238 #define UNSHIPPED_TRACE_EVENT1(category_group, name, arg1_name, arg1_val) \ | |
| 239 (void)0 | |
| 240 #define UNSHIPPED_TRACE_EVENT2(category_group, name, arg1_name, arg1_val, \ | |
| 241 arg2_name, arg2_val) \ | |
| 242 (void)0 | |
| 243 #define UNSHIPPED_TRACE_EVENT_INSTANT0(category_group, name, scope) (void)0 | |
| 244 #define UNSHIPPED_TRACE_EVENT_INSTANT1(category_group, name, scope, arg1_name, \ | |
| 245 arg1_val) \ | |
| 246 (void)0 | |
| 247 #define UNSHIPPED_TRACE_EVENT_INSTANT2(category_group, name, scope, arg1_name, \ | |
| 248 arg1_val, arg2_name, arg2_val) \ | |
| 249 (void)0 | |
| 250 #else | |
| 251 #define UNSHIPPED_TRACE_EVENT0(category_group, name) \ | |
| 252 TRACE_EVENT0(category_group, name) | |
| 253 #define UNSHIPPED_TRACE_EVENT1(category_group, name, arg1_name, arg1_val) \ | |
| 254 TRACE_EVENT1(category_group, name, arg1_name, arg1_val) | |
| 255 #define UNSHIPPED_TRACE_EVENT2(category_group, name, arg1_name, arg1_val, \ | |
| 256 arg2_name, arg2_val) \ | |
| 257 TRACE_EVENT2(category_group, name, arg1_name, arg1_val, arg2_name, arg2_val) | |
| 258 #define UNSHIPPED_TRACE_EVENT_INSTANT0(category_group, name, scope) \ | |
| 259 TRACE_EVENT_INSTANT0(category_group, name, scope) | |
| 260 #define UNSHIPPED_TRACE_EVENT_INSTANT1(category_group, name, scope, arg1_name, \ | |
| 261 arg1_val) \ | |
| 262 TRACE_EVENT_INSTANT1(category_group, name, scope, arg1_name, arg1_val) | |
| 263 #define UNSHIPPED_TRACE_EVENT_INSTANT2(category_group, name, scope, arg1_name, \ | |
| 264 arg1_val, arg2_name, arg2_val) \ | |
| 265 TRACE_EVENT_INSTANT2(category_group, name, scope, arg1_name, arg1_val, \ | |
| 266 arg2_name, arg2_val) | |
| 267 #endif | |
| 268 | |
| 269 // Records a single event called "name" immediately, with 0, 1 or 2 | 226 // Records a single event called "name" immediately, with 0, 1 or 2 |
| 270 // associated arguments. If the category is not enabled, then this | 227 // associated arguments. If the category is not enabled, then this |
| 271 // does nothing. | 228 // does nothing. |
| 272 // - category and name strings must have application lifetime (statics or | 229 // - category and name strings must have application lifetime (statics or |
| 273 // literals). They may not include " chars. | 230 // literals). They may not include " chars. |
| 274 #define TRACE_EVENT_INSTANT0(category_group, name, scope) \ | 231 #define TRACE_EVENT_INSTANT0(category_group, name, scope) \ |
| 275 INTERNAL_TRACE_EVENT_ADD(TRACE_EVENT_PHASE_INSTANT, category_group, name, \ | 232 INTERNAL_TRACE_EVENT_ADD(TRACE_EVENT_PHASE_INSTANT, category_group, name, \ |
| 276 TRACE_EVENT_FLAG_NONE | scope) | 233 TRACE_EVENT_FLAG_NONE | scope) |
| 277 #define TRACE_EVENT_INSTANT1(category_group, name, scope, arg1_name, arg1_val) \ | 234 #define TRACE_EVENT_INSTANT1(category_group, name, scope, arg1_name, arg1_val) \ |
| 278 INTERNAL_TRACE_EVENT_ADD(TRACE_EVENT_PHASE_INSTANT, category_group, name, \ | 235 INTERNAL_TRACE_EVENT_ADD(TRACE_EVENT_PHASE_INSTANT, category_group, name, \ |
| (...skipping 838 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 1117 | 1074 |
| 1118 // Enum reflecting the scope of an INSTANT event. Must fit within | 1075 // Enum reflecting the scope of an INSTANT event. Must fit within |
| 1119 // TRACE_EVENT_FLAG_SCOPE_MASK. | 1076 // TRACE_EVENT_FLAG_SCOPE_MASK. |
| 1120 #define TRACE_EVENT_SCOPE_GLOBAL (static_cast<unsigned char>(0 << 3)) | 1077 #define TRACE_EVENT_SCOPE_GLOBAL (static_cast<unsigned char>(0 << 3)) |
| 1121 #define TRACE_EVENT_SCOPE_PROCESS (static_cast<unsigned char>(1 << 3)) | 1078 #define TRACE_EVENT_SCOPE_PROCESS (static_cast<unsigned char>(1 << 3)) |
| 1122 #define TRACE_EVENT_SCOPE_THREAD (static_cast<unsigned char>(2 << 3)) | 1079 #define TRACE_EVENT_SCOPE_THREAD (static_cast<unsigned char>(2 << 3)) |
| 1123 | 1080 |
| 1124 #define TRACE_EVENT_SCOPE_NAME_GLOBAL ('g') | 1081 #define TRACE_EVENT_SCOPE_NAME_GLOBAL ('g') |
| 1125 #define TRACE_EVENT_SCOPE_NAME_PROCESS ('p') | 1082 #define TRACE_EVENT_SCOPE_NAME_PROCESS ('p') |
| 1126 #define TRACE_EVENT_SCOPE_NAME_THREAD ('t') | 1083 #define TRACE_EVENT_SCOPE_NAME_THREAD ('t') |
| OLD | NEW |