Chromium Code Reviews| Index: runtime/include/dart_api.h |
| diff --git a/runtime/include/dart_api.h b/runtime/include/dart_api.h |
| index ad3fa48e85c212016d5040ee09607c7063403b36..2c09ed6697b1fb862922d0e44b34729bde4799fa 100755 |
| --- a/runtime/include/dart_api.h |
| +++ b/runtime/include/dart_api.h |
| @@ -534,12 +534,17 @@ DART_EXPORT Dart_Handle Dart_RemoveGcEpilogueCallback( |
| // --- Heap Profiler --- |
| /** |
| - * A callback invoked by the heap profiler during profiling to write |
| - * data. |
| + * A callback invoked by the VM to write to a specified stream. |
| + * Used by the heap profiler and gc trace. |
| */ |
| -typedef void (*Dart_HeapProfileWriteCallback)(const void* data, |
| - intptr_t length, |
| - void* stream); |
| +typedef void (*Dart_FileWriteCallback)(const void* data, |
| + intptr_t length, |
| + void* stream); |
| + |
| +typedef void* (*Dart_FileOpenCallback)(const char* name); |
| + |
| +typedef void (*Dart_FileCloseCallback)(void* stream); |
| + |
| /** |
| * Generates a heap profile. |
| @@ -551,7 +556,7 @@ typedef void (*Dart_HeapProfileWriteCallback)(const void* data, |
| * |
| * \return Success if the heap profile is successful. |
| */ |
| -DART_EXPORT Dart_Handle Dart_HeapProfile(Dart_HeapProfileWriteCallback callback, |
| +DART_EXPORT Dart_Handle Dart_HeapProfile(Dart_FileWriteCallback callback, |
| void* stream); |
| // --- Initialization and Globals --- |
| @@ -2740,7 +2745,7 @@ DART_EXPORT Dart_Handle Dart_SetNativeResolver( |
| Dart_NativeEntryResolver resolver); |
| // TODO(turnidge): Rename to Dart_LibrarySetNativeResolver? |
| -// --- Profiling support ---- |
| +// --- Profiling support --- |
| // External pprof support for gathering and dumping symbolic |
| // information that can be used for better profile reports for |
| @@ -2753,6 +2758,13 @@ typedef void (*Dart_FileWriterFunction)(const char* buffer, int64_t num_bytes); |
| // Support for generating symbol maps for use by the Linux perf tool. |
| DART_EXPORT void Dart_InitPerfEventsSupport(Dart_FileWriterFunction function); |
| +// --- Heap tracing support --- |
| + |
| +DART_EXPORT void Dart_InitHeapTrace(Dart_FileOpenCallback open_function, |
|
Ivan Posva
2012/12/04 16:32:52
Shouldn't we just register a general open, write a
cshapiro
2012/12/04 21:13:33
Sure, I can do that. I would like the streams for
|
| + Dart_FileWriteCallback write_function, |
| + Dart_FileCloseCallback close_function, |
| + const char* prefix); |
| + |
| // --- Peers --- |
| /** |