Commit 76ff53ed authored by thakis@chromium.org's avatar thakis@chromium.org

tcmalloc: Honor HEAPPROFILE envvar only in profiling=1 builds.

Several systems in chromium (about:tracing, some code in blink) use
tcmalloc's heap profiler, so keep most of it around.  Do disable support
for the HEAPPROFILE envvar, and for the exit-time dump to "Exiting" (unless in
profiling=1 builds), as that causes a static initializer.

BUG=94925
R=willchan@chromium.org

Review URL: https://codereview.chromium.org/295583002

git-svn-id: svn://svn.chromium.org/chrome/trunk/src@271415 0039d316-1c4b-4281-b951-d872f2087c98
parent 61884b7a
...@@ -97,3 +97,4 @@ Modifications: ...@@ -97,3 +97,4 @@ Modifications:
- Fix logging issues in android - Fix logging issues in android
- Changed DEFINE_foo macros to ignore envname unless ENABLE_PROFILING is defined - Changed DEFINE_foo macros to ignore envname unless ENABLE_PROFILING is defined
- Changed DEFINE_string to define const char*s instead of strings - Changed DEFINE_string to define const char*s instead of strings
- Disabled HEAPPROFILE envvar unless ENABLE_PROFILING is defined
...@@ -662,7 +662,7 @@ extern "C" void HeapProfilerDumpAliveObjects(const char* filename) { ...@@ -662,7 +662,7 @@ extern "C" void HeapProfilerDumpAliveObjects(const char* filename) {
//---------------------------------------------------------------------- //----------------------------------------------------------------------
// Initialization/finalization code // Initialization/finalization code
//---------------------------------------------------------------------- //----------------------------------------------------------------------
#if defined(ENABLE_PROFILING)
// Initialization code // Initialization code
static void HeapProfilerInit() { static void HeapProfilerInit() {
// Everything after this point is for setting up the profiler based on envvar // Everything after this point is for setting up the profiler based on envvar
...@@ -693,3 +693,4 @@ struct HeapProfileEndWriter { ...@@ -693,3 +693,4 @@ struct HeapProfileEndWriter {
static const TCMallocGuard tcmalloc_initializer; static const TCMallocGuard tcmalloc_initializer;
REGISTER_MODULE_INITIALIZER(heapprofiler, HeapProfilerInit()); REGISTER_MODULE_INITIALIZER(heapprofiler, HeapProfilerInit());
static HeapProfileEndWriter heap_profile_end_writer; static HeapProfileEndWriter heap_profile_end_writer;
#endif // defined(ENABLE_PROFILING)
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment