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(); |
19 static void ResetStats(); | 21 static void ResetStats(); |
20 static bool Active(); | 22 static bool Active(); |
21 static void PrintToJSONObject(JSONObject* jsobj); | 23 static void PrintToJSONObject(JSONObject* jsobj); |
| 24 static Sample* GetSample(const void* ptr); |
22 | 25 |
23 static intptr_t allocation_count(); | 26 static intptr_t allocation_count(); |
24 static intptr_t heap_allocated_memory_in_bytes(); | 27 static intptr_t heap_allocated_memory_in_bytes(); |
25 }; | 28 }; |
26 | 29 |
27 } // namespace dart | 30 } // namespace dart |
28 | 31 |
29 #endif // RUNTIME_VM_MALLOC_HOOKS_H_ | 32 #endif // RUNTIME_VM_MALLOC_HOOKS_H_ |
OLD | NEW |