OLD | NEW |
1 // Copyright (c) 2017, the Dart project authors. Please see the AUTHORS file | 1 // Copyright (c) 2017, the Dart project authors. Please see the AUTHORS file |
2 // for details. All rights reserved. Use of this source code is governed by a | 2 // for details. All rights reserved. Use of this source code is governed by a |
3 // BSD-style license that can be found in the LICENSE file. | 3 // BSD-style license that can be found in the LICENSE file. |
4 | 4 |
5 #ifndef RUNTIME_VM_MALLOC_HOOKS_H_ | 5 #ifndef RUNTIME_VM_MALLOC_HOOKS_H_ |
6 #define RUNTIME_VM_MALLOC_HOOKS_H_ | 6 #define RUNTIME_VM_MALLOC_HOOKS_H_ |
7 | 7 |
8 #include "vm/allocation.h" | 8 #include "vm/allocation.h" |
9 #include "vm/globals.h" | 9 #include "vm/globals.h" |
10 | 10 |
11 namespace dart { | 11 namespace dart { |
12 | 12 |
13 class JSONObject; | 13 class JSONObject; |
| 14 class Sample; |
14 | 15 |
15 class MallocHooks : public AllStatic { | 16 class MallocHooks : public AllStatic { |
16 public: | 17 public: |
17 static void InitOnce(); | 18 static void InitOnce(); |
18 static void TearDown(); | 19 static void TearDown(); |
| 20 static bool ProfilingEnabled(); |
| 21 static bool stack_trace_collection_enabled(); |
| 22 static void set_stack_trace_collection_enabled(bool enabled); |
19 static void ResetStats(); | 23 static void ResetStats(); |
20 static bool Active(); | 24 static bool Active(); |
21 static void PrintToJSONObject(JSONObject* jsobj); | 25 static void PrintToJSONObject(JSONObject* jsobj); |
| 26 static Sample* GetSample(const void* ptr); |
22 | 27 |
23 static intptr_t allocation_count(); | 28 static intptr_t allocation_count(); |
24 static intptr_t heap_allocated_memory_in_bytes(); | 29 static intptr_t heap_allocated_memory_in_bytes(); |
25 }; | 30 }; |
26 | 31 |
27 } // namespace dart | 32 } // namespace dart |
28 | 33 |
29 #endif // RUNTIME_VM_MALLOC_HOOKS_H_ | 34 #endif // RUNTIME_VM_MALLOC_HOOKS_H_ |
OLD | NEW |