Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(210)

Side by Side Diff: runtime/vm/malloc_hooks.h

Issue 2680213002: Updated MallocHooks to collect stack traces when memory is allocated. (Closed)
Patch Set: Added tests and modified stack walker to allow for skipping an arbitrary number of frames before co… Created 3 years, 10 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
OLDNEW
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/globals.h" 8 #include "vm/globals.h"
9 9
10 #include "vm/allocation.h"
11
10 namespace dart { 12 namespace dart {
11 13
12 class MallocHooks { 14 class Sample;
zra 2017/02/15 05:50:46 is this from vm/profiler.h? I'd prefer doing the #
bkonyi 2017/02/16 00:28:28 Seems to be that there's a cycle created when incl
15
16 class MallocHooks : public AllStatic {
13 public: 17 public:
14 static void InitOnce(); 18 static void InitOnce();
15 static void TearDown(); 19 static void TearDown();
20 static bool ProfilingEnabled();
16 static void ResetStats(); 21 static void ResetStats();
17 static bool Initialized(); 22 static bool Initialized();
23 static Sample* GetSample(const void* ptr);
18 24
19 static intptr_t allocation_count(); 25 static intptr_t allocation_count();
20 static intptr_t heap_allocated_memory_in_bytes(); 26 static intptr_t heap_allocated_memory_in_bytes();
21
22 private:
23 DISALLOW_ALLOCATION();
24 DISALLOW_IMPLICIT_CONSTRUCTORS(MallocHooks);
25 }; 27 };
26 28
27 } // namespace dart 29 } // namespace dart
28 30
29 #endif // RUNTIME_VM_MALLOC_HOOKS_H_ 31 #endif // RUNTIME_VM_MALLOC_HOOKS_H_
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698