summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorjeanluc@chromium.org <jeanluc@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2011-08-17 17:41:02 +0000
committerjeanluc@chromium.org <jeanluc@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2011-08-17 17:41:02 +0000
commit64e95e1c7b3e5d946a82002f6fed8f6ada4222e7 (patch)
treefeee8c35366e5889aeb4965bc17de9153356f0d9
parentd44583b743d1e556bad4907c05ebd5cc6518b63d (diff)
downloadchromium_src-64e95e1c7b3e5d946a82002f6fed8f6ada4222e7.zip
chromium_src-64e95e1c7b3e5d946a82002f6fed8f6ada4222e7.tar.gz
chromium_src-64e95e1c7b3e5d946a82002f6fed8f6ada4222e7.tar.bz2
Remove Purify and Quantify.Doing so will reduce substantially the size of the project files.
BUG=92102 Review URL: http://codereview.chromium.org/7528010 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@97156 0039d316-1c4b-4281-b951-d872f2087c98
-rw-r--r--base/base.gypi5
-rw-r--r--base/memory/memory_debug.cc54
-rw-r--r--base/memory/memory_debug.h48
-rw-r--r--base/memory/singleton_unittest.cc3
-rw-r--r--base/message_loop.cc5
-rw-r--r--base/metrics/field_trial_unittest.cc2
-rw-r--r--base/pickle.cc2
-rw-r--r--base/third_party/purify/LICENSE2
-rw-r--r--base/third_party/purify/README.chromium2
-rw-r--r--base/third_party/purify/pure.h145
-rw-r--r--base/third_party/purify/pure_api.c152
-rw-r--r--base/timer_unittest.cc4
-rw-r--r--build/common.gypi24
-rw-r--r--build/release.gypi1
-rw-r--r--chrome/app/client_util.cc5
-rw-r--r--chrome/browser/bookmarks/bookmark_context_menu_controller_unittest.cc2
-rw-r--r--chrome/browser/bookmarks/recently_used_folders_combo_model_unittest.cc2
-rw-r--r--chrome/browser/net/network_stats_unittest.cc2
-rw-r--r--chrome/browser/search_engines/template_url_service_test_util.cc2
-rw-r--r--chrome/browser/ui/views/bookmarks/bookmark_context_menu_test.cc2
-rw-r--r--chrome_frame/test/net/fake_external_tab.cc2
-rw-r--r--content/browser/renderer_host/resource_dispatcher_host_unittest.cc2
-rw-r--r--content/browser/resolve_proxy_msg_helper_unittest.cc2
-rw-r--r--crypto/signature_verifier_unittest.cc9
-rw-r--r--media/base/pipeline_impl_unittest.cc2
-rw-r--r--net/disk_cache/backend_unittest.cc5
-rw-r--r--net/socket/tcp_client_socket_win.cc8
-rw-r--r--net/udp/udp_socket_win.cc8
-rw-r--r--tools/heapcheck/heapcheck_test.py3
-rw-r--r--views/focus/accelerator_handler_gtk_unittest.cc2
-rw-r--r--views/focus/focus_manager_unittest.cc2
-rw-r--r--webkit/extensions/v8/profiler_extension.cc24
-rw-r--r--webkit/tools/test_shell/run_all_tests.cc2
-rw-r--r--webkit/tools/test_shell/test_shell_mac.mm1
-rw-r--r--webkit/tools/test_shell/test_shell_main.cc7
-rw-r--r--webkit/tools/test_shell/test_shell_platform_delegate.h4
-rw-r--r--webkit/tools/test_shell/test_shell_switches.cc4
-rw-r--r--webkit/tools/test_shell/test_shell_switches.h1
-rw-r--r--webkit/tools/test_shell/test_shell_win.cc5
39 files changed, 23 insertions, 534 deletions
diff --git a/base/base.gypi b/base/base.gypi
index 7320979..642e47f 100644
--- a/base/base.gypi
+++ b/base/base.gypi
@@ -133,8 +133,6 @@
'mach_ipc_mac.h',
'mach_ipc_mac.mm',
'memory/linked_ptr.h',
- 'memory/memory_debug.cc',
- 'memory/memory_debug.h',
'memory/mru_cache.h',
'memory/raw_scoped_refptr_mismatch_checker.h',
'memory/ref_counted.cc',
@@ -542,7 +540,6 @@
[ 'OS != "win"', {
'dependencies': ['../third_party/libevent/libevent.gyp:libevent'],
'sources!': [
- 'third_party/purify/pure_api.c',
'event_recorder.cc',
'resource_util.cc',
],
@@ -561,8 +558,6 @@
'third_party/nspr/prcpucfg.h',
'third_party/nspr/prcpucfg_win.h',
'third_party/nspr/prtypes.h',
- 'third_party/purify/pure.h',
- 'third_party/purify/pure_api.c',
'third_party/xdg_user_dirs/xdg_user_dir_lookup.cc',
'third_party/xdg_user_dirs/xdg_user_dir_lookup.h',
'auto_reset.h',
diff --git a/base/memory/memory_debug.cc b/base/memory/memory_debug.cc
deleted file mode 100644
index f020b94..0000000
--- a/base/memory/memory_debug.cc
+++ /dev/null
@@ -1,54 +0,0 @@
-// Copyright (c) 2011 The Chromium Authors. All rights reserved.
-// Use of this source code is governed by a BSD-style license that can be
-// found in the LICENSE file.
-
-#include "base/memory/memory_debug.h"
-
-#ifdef PURIFY
-// this #define is used to prevent people from directly using pure.h
-// instead of memory_debug.h
-#define PURIFY_PRIVATE_INCLUDE
-#include "base/third_party/purify/pure.h"
-#endif
-
-namespace base {
-
-bool MemoryDebug::memory_in_use_ = false;
-
-void MemoryDebug::SetMemoryInUseEnabled(bool enabled) {
- memory_in_use_ = enabled;
-}
-
-void MemoryDebug::DumpAllMemoryInUse() {
-#ifdef PURIFY
- if (memory_in_use_)
- PurifyAllInuse();
-#endif
-}
-
-void MemoryDebug::DumpNewMemoryInUse() {
-#ifdef PURIFY
- if (memory_in_use_)
- PurifyNewInuse();
-#endif
-}
-
-void MemoryDebug::DumpAllLeaks() {
-#ifdef PURIFY
- PurifyAllLeaks();
-#endif
-}
-
-void MemoryDebug::DumpNewLeaks() {
-#ifdef PURIFY
- PurifyNewLeaks();
-#endif
-}
-
-void MemoryDebug::MarkAsInitialized(void* addr, size_t size) {
-#ifdef PURIFY
- PurifyMarkAsInitialized(addr, size);
-#endif
-}
-
-} // namespace base
diff --git a/base/memory/memory_debug.h b/base/memory/memory_debug.h
deleted file mode 100644
index 740fb06..0000000
--- a/base/memory/memory_debug.h
+++ /dev/null
@@ -1,48 +0,0 @@
-// Copyright (c) 2011 The Chromium Authors. All rights reserved.
-// Use of this source code is governed by a BSD-style license that can be
-// found in the LICENSE file.
-
-// Functions used to debug memory usage, leaks, and other memory issues.
-// All methods are effectively no-ops unless this program is being run through
-// a supported memory tool (currently, only Purify)
-
-#ifndef BASE_MEMORY_MEMORY_DEBUG_H_
-#define BASE_MEMORY_MEMORY_DEBUG_H_
-#pragma once
-
-#include "base/base_export.h"
-#include "base/basictypes.h"
-
-namespace base {
-
-class BASE_EXPORT MemoryDebug {
- public:
- // Since MIU messages are a lot of data, and we don't always want this data,
- // we have a global switch. If disabled, *MemoryInUse are no-ops.
- static void SetMemoryInUseEnabled(bool enabled);
-
- // Dump information about all memory in use.
- static void DumpAllMemoryInUse();
- // Dump information about new memory in use since the last
- // call to DumpAllMemoryInUse() or DumpNewMemoryInUse().
- static void DumpNewMemoryInUse();
-
- // Dump information about all current memory leaks.
- static void DumpAllLeaks();
- // Dump information about new memory leaks since the last
- // call to DumpAllLeaks() or DumpNewLeaks()
- static void DumpNewLeaks();
-
- // Mark |size| bytes of memory as initialized, so it doesn't produce any UMRs
- // or UMCs.
- static void MarkAsInitialized(void* addr, size_t size);
-
- private:
- static bool memory_in_use_;
-
- DISALLOW_IMPLICIT_CONSTRUCTORS(MemoryDebug);
-};
-
-} // namespace base
-
-#endif // BASE_MEMORY_MEMORY_DEBUG_H_
diff --git a/base/memory/singleton_unittest.cc b/base/memory/singleton_unittest.cc
index ba10c75..068148f 100644
--- a/base/memory/singleton_unittest.cc
+++ b/base/memory/singleton_unittest.cc
@@ -223,8 +223,7 @@ TEST_F(SingletonTest, Basic) {
// Verify that only the expected callback has been called.
VerifiesCallbacks();
- // Delete the leaky singleton. It is interesting to note that Purify does
- // *not* detect the leak when this call is commented out. :(
+ // Delete the leaky singleton.
DeleteLeakySingleton();
// The static singleton can't be acquired post-atexit.
diff --git a/base/message_loop.cc b/base/message_loop.cc
index 02534f5..19ce904 100644
--- a/base/message_loop.cc
+++ b/base/message_loop.cc
@@ -532,12 +532,11 @@ void MessageLoop::ReloadWorkQueue() {
bool MessageLoop::DeletePendingTasks() {
bool did_work = !work_queue_.empty();
// TODO(darin): Delete all tasks once it is safe to do so.
- // Until it is totally safe, just do it when running Purify or
- // Valgrind.
+ // Until it is totally safe, just do it when running Valgrind.
//
// See http://crbug.com/61131
//
-#if defined(PURIFY) || defined(USE_HEAPCHECKER)
+#if defined(USE_HEAPCHECKER)
should_leak_tasks_ = false;
#else
if (RunningOnValgrind())
diff --git a/base/metrics/field_trial_unittest.cc b/base/metrics/field_trial_unittest.cc
index a790add..f1ef2b0 100644
--- a/base/metrics/field_trial_unittest.cc
+++ b/base/metrics/field_trial_unittest.cc
@@ -40,7 +40,7 @@ class FieldTrialTest : public testing::Test {
};
// Test registration, and also check that destructors are called for trials
-// (and that Purify doesn't catch us leaking).
+// (and that Valgrind doesn't catch us leaking).
TEST_F(FieldTrialTest, Registration) {
const char* name1 = "name 1 test";
const char* name2 = "name 2 test";
diff --git a/base/pickle.cc b/base/pickle.cc
index a1d2061..238c3a1 100644
--- a/base/pickle.cc
+++ b/base/pickle.cc
@@ -394,7 +394,7 @@ char* Pickle::BeginWrite(size_t length) {
}
void Pickle::EndWrite(char* dest, int length) {
- // Zero-pad to keep tools like purify from complaining about uninitialized
+ // Zero-pad to keep tools like valgrind from complaining about uninitialized
// memory.
if (length % sizeof(uint32))
memset(dest + length, 0, sizeof(uint32) - (length % sizeof(uint32)));
diff --git a/base/third_party/purify/LICENSE b/base/third_party/purify/LICENSE
deleted file mode 100644
index f876ca8..0000000
--- a/base/third_party/purify/LICENSE
+++ /dev/null
@@ -1,2 +0,0 @@
-(C) Copyright IBM Corporation. 2006, 2006. All Rights Reserved.
-You may recompile and redistribute these definitions as required.
diff --git a/base/third_party/purify/README.chromium b/base/third_party/purify/README.chromium
deleted file mode 100644
index feecf91..0000000
--- a/base/third_party/purify/README.chromium
+++ /dev/null
@@ -1,2 +0,0 @@
-Name: purify headers
-URL: http://www-01.ibm.com/software/awdtools/purify/
diff --git a/base/third_party/purify/pure.h b/base/third_party/purify/pure.h
deleted file mode 100644
index ed50a37..0000000
--- a/base/third_party/purify/pure.h
+++ /dev/null
@@ -1,145 +0,0 @@
-/*
- * Header file of Pure API function declarations.
- *
-* (C) Copyright IBM Corporation. 2006, 2006. All Rights Reserved.
- * You may recompile and redistribute these definitions as required.
- *
- * Version 1.0
- */
-
-#if defined(PURIFY) || defined(QUANTIFY)
-
-#if defined(c_plusplus) || defined(__cplusplus)
-extern "C" {
-#endif
-
-// Don't include this file directly, use purify.h instead.
-// If you need something that's not there, add it.
-#ifdef PURIFY_PRIVATE_INCLUDE
-
-#define PURE_H_VERSION 1
-#include <stddef.h>
-
-//////////////////////////////
-// API's Specific to Purify //
-//////////////////////////////
-
-// TRUE when Purify is running.
-int __cdecl PurifyIsRunning(void) ;
-//
-// Print a string to the viewer.
-//
-int __cdecl PurePrintf(const char *fmt, ...) ;
-int __cdecl PurifyPrintf(const char *fmt, ...) ;
-//
-// Purify functions for leak and memory-in-use functionalty.
-//
-size_t __cdecl PurifyNewInuse(void) ;
-size_t __cdecl PurifyAllInuse(void) ;
-size_t __cdecl PurifyClearInuse(void) ;
-size_t __cdecl PurifyNewLeaks(void) ;
-size_t __cdecl PurifyAllLeaks(void) ;
-size_t __cdecl PurifyClearLeaks(void) ;
-//
-// Purify functions for handle leakage.
-//
-size_t __cdecl PurifyAllHandlesInuse(void) ;
-size_t __cdecl PurifyNewHandlesInuse(void) ;
-//
-// Functions that tell you about the state of memory.
-//
-size_t __cdecl PurifyDescribe(void *addr) ;
-size_t __cdecl PurifyWhatColors(void *addr, size_t size) ;
-//
-// Functions to test the state of memory. If the memory is not
-// accessable, an error is signaled just as if there were a memory
-// reference and the function returns false.
-//
-int __cdecl PurifyAssertIsReadable(const void *addr, size_t size) ; // size used to be an int, until IA64 came along
-int __cdecl PurifyAssertIsWritable(const void *addr, size_t size) ;
-//
-// Functions to test the state of memory. If the memory is not
-// accessable, these functions return false. No error is signaled.
-//
-int __cdecl PurifyIsReadable(const void *addr, size_t size) ;
-int __cdecl PurifyIsWritable(const void *addr, size_t size) ;
-int __cdecl PurifyIsInitialized(const void *addr, size_t size) ;
-//
-// Functions to set the state of memory.
-//
-void __cdecl PurifyMarkAsInitialized(void *addr, size_t size) ;
-void __cdecl PurifyMarkAsUninitialized(void *addr, size_t size) ;
-//
-// Functions to do late detection of ABWs, FMWs, IPWs.
-//
-#define PURIFY_HEAP_CRT (HANDLE) ~(__int64) 1 /* 0xfffffffe */
-#define PURIFY_HEAP_ALL (HANDLE) ~(__int64) 2 /* 0xfffffffd */
-#define PURIFY_HEAP_BLOCKS_LIVE 0x80000000
-#define PURIFY_HEAP_BLOCKS_DEFERRED_FREE 0x40000000
-#define PURIFY_HEAP_BLOCKS_ALL (PURIFY_HEAP_BLOCKS_LIVE|PURIFY_HEAP_BLOCKS_DEFERRED_FREE)
-int __cdecl PurifyHeapValidate(unsigned int hHeap, unsigned int dwFlags, const void *addr) ;
-int __cdecl PurifySetLateDetectScanCounter(int counter);
-int __cdecl PurifySetLateDetectScanInterval(int seconds);
-//
-// Functions to support pool allocators
-//
-void __cdecl PurifySetPoolId(const void *mem, int id);
-int __cdecl PurifyGetPoolId(const void *mem);
-void __cdecl PurifySetUserData(const void *mem, void *data);
-void * __cdecl PurifyGetUserData(const void *mem);
-void __cdecl PurifyMapPool(int id, void(*fn)());
-
-
-////////////////////////////////
-// API's Specific to Quantify //
-////////////////////////////////
-
-// TRUE when Quantify is running.
-int __cdecl QuantifyIsRunning(void) ;
-
-//
-// Functions for controlling collection
-//
-int __cdecl QuantifyDisableRecordingData(void) ;
-int __cdecl QuantifyStartRecordingData(void) ;
-int __cdecl QuantifyStopRecordingData(void) ;
-int __cdecl QuantifyClearData(void) ;
-int __cdecl QuantifyIsRecordingData(void) ;
-
-// Add a comment to the dataset
-int __cdecl QuantifyAddAnnotation(char *) ;
-
-// Save the current data, creating a "checkpoint" dataset
-int __cdecl QuantifySaveData(void) ;
-
-// Set the name of the current thread in the viewer
-int __cdecl QuantifySetThreadName(char *) ;
-
-////////////////////////////////
-// API's Specific to Coverage //
-////////////////////////////////
-
-// TRUE when Coverage is running.
-int __cdecl CoverageIsRunning(void) ;
-//
-// Functions for controlling collection
-//
-int __cdecl CoverageDisableRecordingData(void) ;
-int __cdecl CoverageStartRecordingData(void) ;
-int __cdecl CoverageStopRecordingData(void) ;
-int __cdecl CoverageClearData(void) ;
-int __cdecl CoverageIsRecordingData(void) ;
-// Add a comment to the dataset
-int __cdecl CoverageAddAnnotation(char *) ;
-
-// Save the current data, creating a "checkpoint" dataset
-int __cdecl CoverageSaveData(void) ;
-
-
-#endif // PURIFY_PRIVATE_INCLUDE
-
-#if defined(c_plusplus) || defined(__cplusplus)
-}
-#endif
-
-#endif // defined(PURIFY) || defined(QUANTIFY) \ No newline at end of file
diff --git a/base/third_party/purify/pure_api.c b/base/third_party/purify/pure_api.c
deleted file mode 100644
index 7203cfd..0000000
--- a/base/third_party/purify/pure_api.c
+++ /dev/null
@@ -1,152 +0,0 @@
-/*
- * Header file of Pure API function declarations.
- *
- * Explicitly no copyright.
- * You may recompile and redistribute these definitions as required.
- *
- * NOTE1: In some situations when compiling with MFC, you should
- * enable the setting 'Not using precompiled headers' in Visual C++
- * to avoid a compiler diagnostic.
- *
- * NOTE2: This file works through the use of deep magic. Calls to functions
- * in this file are replaced with calls into the OCI runtime system
- * when an instrumented version of this program is run.
- *
- * NOTE3: The static vars avoidGy_n (where n is a unique number) are used
- * to prevent optimizing the functions away when compiler option
- * /Gy is set. This is needed so that NOTE2 works properly.
- */
-
-// Chromium note: We used to only compile this code if PURIFY was defined,
-// because we did special builds with all optimizations turned off for Purify.
-// However, for profiling with Quantify, we want most/all optimizations turned
-// on so that we measure something closer to real execution.
-
-#ifdef _WINDOWS // we only use Purify/Quantify on Windows
-
-#pragma once
- extern int errno;
-typedef int ptrdiff_t;
-typedef unsigned int size_t;
-typedef unsigned short wchar_t;
-static int avoidGy_1 = 0;
-static int avoidGy_2 = 0;
-static int avoidGy_3 = 0;
-static int avoidGy_4 = 0;
-static int avoidGy_5 = 0;
-static int avoidGy_6 = 0;
-static int avoidGy_7 = 0;
-static int avoidGy_8 = 0;
-static int avoidGy_9 = 0;
-static int avoidGy_10 = 0;
-static int avoidGy_11 = 0;
-static int avoidGy_12 = 0;
-static int avoidGy_13 = 0;
-static int avoidGy_14 = 0;
-static int avoidGy_15 = 0;
-static int avoidGy_16 = 0;
-static int avoidGy_17 = 0;
-static int avoidGy_18 = 0;
-static int avoidGy_19 = 0;
-static int avoidGy_20 = 0;
-static int avoidGy_21 = 0;
-static int avoidGy_22 = 0;
-static int avoidGy_23 = 0;
-static int avoidGy_24 = 0;
-static int avoidGy_25 = 0;
-static int avoidGy_26 = 0;
-static int avoidGy_27 = 0;
-static int avoidGy_28 = 0;
-static int avoidGy_29 = 0;
-static int avoidGy_30 = 0;
-static int avoidGy_31 = 0;
-static int avoidGy_32 = 0;
-static int avoidGy_33 = 0;
-static int avoidGy_34 = 0;
-static int avoidGy_35 = 0;
-static int avoidGy_36 = 0;
-static int avoidGy_37 = 0;
-static int avoidGy_38 = 0;
-static int avoidGy_39 = 0;
-static int avoidGy_40 = 0;
-static int avoidGy_41 = 0;
-static int avoidGy_42 = 0;
-static int avoidGy_43 = 0;
-static int avoidGy_44 = 0;
-static int avoidGy_45 = 0;
-static int avoidGy_46 = 0;
-static int avoidGy_47 = 0;
-static int avoidGy_48 = 0;
-static int avoidGy_49 = 0;
-static int avoidGy_50 = 0;
-static int avoidGy_51 = 0;
-static int avoidGy_52 = 0;
-static int avoidGy_53 = 0;
-static int avoidGy_54 = 0;
-static int avoidGy_55 = 0;
-static int avoidGy_56 = 0;
-static int avoidGy_57 = 0;
-static int avoidGy_58 = 0;
-static int avoidGy_59 = 0;
-static int avoidGy_60 = 0;
-static int avoidGy_61 = 0;
-static int avoidGy_62 = 0;
-static int avoidGy_63 = 0;
-static int avoidGy_64 = 0;
-static int avoidGy_65 = 0;
-static int avoidGy_PL_01 = 0;
-static int avoidGy_PL_02 = 0;
-__declspec(dllexport) int __cdecl PurePrintf(const char *fmt, ...) { if(!++avoidGy_1); fmt; return 0; }
-__declspec(dllexport) int __cdecl PurifyIsRunning(void) { if(!++avoidGy_2); return 0; }
-__declspec(dllexport) int __cdecl PurifyPrintf(const char *fmt, ...) { if(!++avoidGy_3); fmt; return 0; }
-__declspec(dllexport) size_t __cdecl PurifyNewInuse(void) { if(!++avoidGy_4); return 0; }
-__declspec(dllexport) size_t __cdecl PurifyAllInuse(void) { if(!++avoidGy_5); return 0; }
-__declspec(dllexport) size_t __cdecl PurifyClearInuse(void) { if(!++avoidGy_6); return 0; }
-__declspec(dllexport) size_t __cdecl PurifyNewLeaks(void) { if(!++avoidGy_7); return 0; }
-__declspec(dllexport) size_t __cdecl PurifyAllLeaks(void) { if(!++avoidGy_8); return 0; }
-__declspec(dllexport) size_t __cdecl PurifyClearLeaks(void) { if(!++avoidGy_9); return 0; }
-__declspec(dllexport) size_t __cdecl PurifyAllHandlesInuse(void) { if(!++avoidGy_10); return 0; }
-__declspec(dllexport) size_t __cdecl PurifyNewHandlesInuse(void) { if(!++avoidGy_11); return 0; }
-__declspec(dllexport) size_t __cdecl PurifyDescribe(void *addr) { if(!++avoidGy_12); addr; return 0; }
-__declspec(dllexport) int __cdecl PurifyWhatColors(void *addr, size_t size) { if(!++avoidGy_13); addr; size; return 0; }
-__declspec(dllexport) int __cdecl PurifyAssertIsReadable(const void *addr, size_t size) { if(!++avoidGy_14); addr; size; return 1; }
-__declspec(dllexport) int __cdecl PurifyAssertIsWritable(const void *addr, size_t size) { if(!++avoidGy_15); addr; size; return 1; }
-__declspec(dllexport) int __cdecl PurifyIsReadable(const void *addr, size_t size) { if(!++avoidGy_16); addr; size; return 1; }
-__declspec(dllexport) int __cdecl PurifyIsWritable(const void *addr, size_t size) { if(!++avoidGy_17); addr; size; return 1; }
-__declspec(dllexport) int __cdecl PurifyIsInitialized(const void *addr, size_t size) { if(!++avoidGy_18); addr; size; return 1; }
-__declspec(dllexport) int __cdecl PurifyRed(void *addr, size_t size) { if(!++avoidGy_19); addr; size; return 0; }
-__declspec(dllexport) int __cdecl PurifyGreen(void *addr, size_t size) { if(!++avoidGy_20); addr; size; return 0; }
-__declspec(dllexport) int __cdecl PurifyYellow(void *addr, size_t size) { if(!++avoidGy_21); addr; size; return 0; }
-__declspec(dllexport) int __cdecl PurifyBlue(void *addr, size_t size) { if(!++avoidGy_22); addr; size; return 0; }
-__declspec(dllexport) int __cdecl PurifyMarkAsInitialized(void *addr, size_t size) { if(!++avoidGy_23); addr; size; return 0; }
-__declspec(dllexport) int __cdecl PurifyMarkAsUninitialized(void *addr, size_t size) { if(!++avoidGy_24); addr; size; return 0; }
-__declspec(dllexport) int __cdecl PurifyMarkForTrap(void *addr, size_t size) { if(!++avoidGy_25); addr; size; return 0; }
-__declspec(dllexport) int __cdecl PurifyMarkForNoTrap(void *addr, size_t size) { if(!++avoidGy_26); addr; size; return 0; }
-__declspec(dllexport) int __cdecl PurifyHeapValidate(unsigned int hHeap, unsigned int dwFlags, const void *addr)
- { if(!++avoidGy_27); hHeap; dwFlags; addr; return 1; }
-__declspec(dllexport) int __cdecl PurifySetLateDetectScanCounter(int counter) { if(!++avoidGy_28); counter; return 0; };
-__declspec(dllexport) int __cdecl PurifySetLateDetectScanInterval(int seconds) { if(!++avoidGy_29); seconds; return 0; };
-__declspec(dllexport) void __cdecl PurifySetPoolId(const void *mem, int id) { if(!++avoidGy_61); mem; id; return; };
-__declspec(dllexport) int __cdecl PurifyGetPoolId(const void *mem) { if(!++avoidGy_62); mem; return 0; };
-__declspec(dllexport) void __cdecl PurifySetUserData(const void *mem, void *data) { if(!++avoidGy_63); mem; data; return; };
-__declspec(dllexport) void * __cdecl PurifyGetUserData(const void *mem) { if(!++avoidGy_64); mem; return 0; };
-__declspec(dllexport) void __cdecl PurifyMapPool(int id, void(*fn)()) { if(!++avoidGy_65); id; fn; return; };
-__declspec(dllexport) int __cdecl CoverageIsRunning(void) { if(!++avoidGy_30); return 0; }
-__declspec(dllexport) int __cdecl CoverageDisableRecordingData(void) { if(!++avoidGy_31); return 0; }
-__declspec(dllexport) int __cdecl CoverageStartRecordingData(void) { if(!++avoidGy_32); return 0; }
-__declspec(dllexport) int __cdecl CoverageStopRecordingData(void) { if(!++avoidGy_33); return 0; }
-__declspec(dllexport) int __cdecl CoverageClearData(void) { if(!++avoidGy_34); return 0; }
-__declspec(dllexport) int __cdecl CoverageIsRecordingData(void) { if(!++avoidGy_35); return 0; }
-__declspec(dllexport) int __cdecl CoverageAddAnnotation(char *str) { if(!++avoidGy_36); str; return 0; }
-__declspec(dllexport) int __cdecl CoverageSaveData(void) { if(!++avoidGy_37); return 0; }
-__declspec(dllexport) int __cdecl QuantifyIsRunning(void) { if(!++avoidGy_42); return 0; }
-__declspec(dllexport) int __cdecl QuantifyDisableRecordingData(void) { if(!++avoidGy_43); return 0; }
-__declspec(dllexport) int __cdecl QuantifyStartRecordingData(void) { if(!++avoidGy_44); return 0; }
-__declspec(dllexport) int __cdecl QuantifyStopRecordingData(void) { if(!++avoidGy_45); return 0; }
-__declspec(dllexport) int __cdecl QuantifyClearData(void) { if(!++avoidGy_46); return 0; }
-__declspec(dllexport) int __cdecl QuantifyIsRecordingData(void) { if(!++avoidGy_47); return 0; }
-__declspec(dllexport) int __cdecl QuantifyAddAnnotation(char *str) { if(!++avoidGy_48); str; return 0; }
-__declspec(dllexport) int __cdecl QuantifySaveData(void) { if(!++avoidGy_49); return 0; }
-__declspec(dllexport) int __cdecl QuantifySetThreadName(const char *szName) { if(!++avoidGy_50) ; szName; return 0; }
-
-#endif // _WINDOWS
diff --git a/base/timer_unittest.cc b/base/timer_unittest.cc
index 79d3a4e..bb0eade 100644
--- a/base/timer_unittest.cc
+++ b/base/timer_unittest.cc
@@ -289,7 +289,7 @@ TEST(TimerTest, OneShotTimer_Cancel) {
}
// If underline timer does not handle properly, we will crash or fail
-// in full page heap or purify environment.
+// in full page heap environment.
TEST(TimerTest, OneShotSelfDeletingTimer) {
RunTest_OneShotSelfDeletingTimer(MessageLoop::TYPE_DEFAULT);
RunTest_OneShotSelfDeletingTimer(MessageLoop::TYPE_UI);
@@ -337,7 +337,7 @@ TEST(TimerTest, MessageLoopShutdown) {
// This test is designed to verify that shutdown of the
// message loop does not cause crashes if there were pending
// timers not yet fired. It may only trigger exceptions
- // if debug heap checking (or purify) is enabled.
+ // if debug heap checking is enabled.
bool did_run = false;
{
OneShotTimerTester a(&did_run);
diff --git a/build/common.gypi b/build/common.gypi
index 48b9163..7b5cc7e 100644
--- a/build/common.gypi
+++ b/build/common.gypi
@@ -1221,24 +1221,6 @@
}],
],
},
- 'Purify_Base': {
- 'abstract': 1,
- 'defines': [
- 'PURIFY',
- 'NO_TCMALLOC',
- ],
- 'msvs_settings': {
- 'VCCLCompilerTool': {
- 'Optimization': '0',
- 'RuntimeLibrary': '0',
- 'BufferSecurityCheck': 'false',
- },
- 'VCLinkerTool': {
- 'EnableCOMDATFolding': '1',
- 'LinkIncremental': '1',
- },
- },
- },
#
# Concrete configurations
#
@@ -1256,18 +1238,12 @@
'conditions': [
[ 'OS=="win"', {
# TODO(bradnelson): add a gyp mechanism to make this more graceful.
- 'Purify': {
- 'inherit_from': ['Common_Base', 'x86_Base', 'Release_Base', 'Purify'],
- },
'Debug_x64': {
'inherit_from': ['Common_Base', 'x64_Base', 'Debug_Base'],
},
'Release_x64': {
'inherit_from': ['Common_Base', 'x64_Base', 'Release_Base'],
},
- 'Purify_x64': {
- 'inherit_from': ['Common_Base', 'x64_Base', 'Release_Base', 'Purify_Base'],
- },
}],
],
},
diff --git a/build/release.gypi b/build/release.gypi
index 4b012b5..7595ef5 100644
--- a/build/release.gypi
+++ b/build/release.gypi
@@ -13,6 +13,5 @@
# dom_stats
# pgo_instrument
# pgo_optimize
- # purify
],
}
diff --git a/chrome/app/client_util.cc b/chrome/app/client_util.cc
index 04efdb4..db02eb3 100644
--- a/chrome/app/client_util.cc
+++ b/chrome/app/client_util.cc
@@ -188,11 +188,6 @@ MainDllLoader::MainDllLoader() : dll_(NULL) {
}
MainDllLoader::~MainDllLoader() {
-#ifdef PURIFY
- // We should never unload the dll. There is only risk and no gain from
- // doing so. The singleton dtors have been already run by AtExitManager.
- ::FreeLibrary(dll_);
-#endif
}
// Loading chrome is an interesting affair. First we try loading from the
diff --git a/chrome/browser/bookmarks/bookmark_context_menu_controller_unittest.cc b/chrome/browser/bookmarks/bookmark_context_menu_controller_unittest.cc
index fc62176..3d5d992 100644
--- a/chrome/browser/bookmarks/bookmark_context_menu_controller_unittest.cc
+++ b/chrome/browser/bookmarks/bookmark_context_menu_controller_unittest.cc
@@ -70,7 +70,7 @@ class BookmarkContextMenuControllerTest : public TestingBrowserProcessTest {
BookmarkBarView::testing_ = false;
#endif
- // Flush the message loop to make Purify happy.
+ // Flush the message loop to make application verifiers happy.
message_loop_.RunAllPending();
}
diff --git a/chrome/browser/bookmarks/recently_used_folders_combo_model_unittest.cc b/chrome/browser/bookmarks/recently_used_folders_combo_model_unittest.cc
index 9a88d4c..70dcf80 100644
--- a/chrome/browser/bookmarks/recently_used_folders_combo_model_unittest.cc
+++ b/chrome/browser/bookmarks/recently_used_folders_combo_model_unittest.cc
@@ -41,7 +41,7 @@ void RecentlyUsedFoldersComboModelTest::SetUp() {
}
void RecentlyUsedFoldersComboModelTest::TearDown() {
- // Flush the message loop to make Purify happy.
+ // Flush the message loop to make application verifiers happy.
message_loop_.RunAllPending();
}
diff --git a/chrome/browser/net/network_stats_unittest.cc b/chrome/browser/net/network_stats_unittest.cc
index 9251d46..cbe9625 100644
--- a/chrome/browser/net/network_stats_unittest.cc
+++ b/chrome/browser/net/network_stats_unittest.cc
@@ -19,7 +19,7 @@ class NetworkStatsTest : public PlatformTest {
NetworkStatsTest() {}
protected:
virtual void TearDown() {
- // Flush the message loop to make Purify happy.
+ // Flush the message loop to make application verifiers happy.
message_loop_.RunAllPending();
}
MessageLoopForIO message_loop_;
diff --git a/chrome/browser/search_engines/template_url_service_test_util.cc b/chrome/browser/search_engines/template_url_service_test_util.cc
index 7719192..0fe9bc8 100644
--- a/chrome/browser/search_engines/template_url_service_test_util.cc
+++ b/chrome/browser/search_engines/template_url_service_test_util.cc
@@ -166,7 +166,7 @@ void TemplateURLServiceTestUtil::TearDown() {
}
TemplateURLRef::SetGoogleBaseURL(NULL);
- // Flush the message loop to make Purify happy.
+ // Flush the message loop to make application verifiers happy.
message_loop_.RunAllPending();
}
diff --git a/chrome/browser/ui/views/bookmarks/bookmark_context_menu_test.cc b/chrome/browser/ui/views/bookmarks/bookmark_context_menu_test.cc
index 07f7c3a..15c4327 100644
--- a/chrome/browser/ui/views/bookmarks/bookmark_context_menu_test.cc
+++ b/chrome/browser/ui/views/bookmarks/bookmark_context_menu_test.cc
@@ -76,7 +76,7 @@ class BookmarkContextMenuTest : public TestingBrowserProcessTest {
BookmarkBarView::testing_ = false;
#endif
- // Flush the message loop to make Purify happy.
+ // Flush the message loop to make application verifiers happy.
message_loop_.RunAllPending();
}
diff --git a/chrome_frame/test/net/fake_external_tab.cc b/chrome_frame/test/net/fake_external_tab.cc
index 2bd4fbd..3399c12 100644
--- a/chrome_frame/test/net/fake_external_tab.cc
+++ b/chrome_frame/test/net/fake_external_tab.cc
@@ -352,9 +352,7 @@ void CFUrlRequestUnittestRunner::Initialize() {
SuppressErrorDialogs();
base::debug::SetSuppressDebugUI(true);
-#if !defined(PURIFY)
logging::SetLogAssertHandler(UnitTestAssertHandler);
-#endif // !defined(PURIFY)
// Next, do some initialization for NetTestSuite.
NetTestSuite::InitializeTestThread();
diff --git a/content/browser/renderer_host/resource_dispatcher_host_unittest.cc b/content/browser/renderer_host/resource_dispatcher_host_unittest.cc
index 366de38..87a69f2 100644
--- a/content/browser/renderer_host/resource_dispatcher_host_unittest.cc
+++ b/content/browser/renderer_host/resource_dispatcher_host_unittest.cc
@@ -298,7 +298,7 @@ class ResourceDispatcherHostTest : public testing::Test,
ChildProcessSecurityPolicy::GetInstance()->Remove(0);
- // Flush the message loop to make Purify happy.
+ // Flush the message loop to make application verifiers happy.
message_loop_.RunAllPending();
}
diff --git a/content/browser/resolve_proxy_msg_helper_unittest.cc b/content/browser/resolve_proxy_msg_helper_unittest.cc
index 763736c..346796c 100644
--- a/content/browser/resolve_proxy_msg_helper_unittest.cc
+++ b/content/browser/resolve_proxy_msg_helper_unittest.cc
@@ -232,5 +232,5 @@ TEST_F(ResolveProxyMsgHelperTest, CancelPendingRequests) {
EXPECT_TRUE(pending_result() == NULL);
// It should also be the case that msg1, msg2, msg3 were deleted by the
- // cancellation. (Else will show up as a leak in Purify/Valgrind).
+ // cancellation. (Else will show up as a leak in Valgrind).
}
diff --git a/crypto/signature_verifier_unittest.cc b/crypto/signature_verifier_unittest.cc
index 0294379..360afa9 100644
--- a/crypto/signature_verifier_unittest.cc
+++ b/crypto/signature_verifier_unittest.cc
@@ -238,14 +238,7 @@ TEST(SignatureVerifierTest, BasicTest) {
EXPECT_TRUE(ok);
verifier.VerifyUpdate(bad_tbs_certificate, sizeof(bad_tbs_certificate));
ok = verifier.VerifyFinal();
-
- // Purify disables digital signature verification, causing the Windows
- // CryptoAPI function CryptVerifySignature to always succeed. So we can't
- // check the signature verification results of the negative tests when
- // running inside Purify. See http://crbug.com/10031.
-#ifndef PURIFY
EXPECT_FALSE(ok);
-#endif
// Test 4: verify a bad signature.
uint8 bad_signature[sizeof(signature)];
@@ -261,8 +254,6 @@ TEST(SignatureVerifierTest, BasicTest) {
if (ok) {
verifier.VerifyUpdate(tbs_certificate, sizeof(tbs_certificate));
ok = verifier.VerifyFinal();
-#ifndef PURIFY
EXPECT_FALSE(ok);
-#endif
}
}
diff --git a/media/base/pipeline_impl_unittest.cc b/media/base/pipeline_impl_unittest.cc
index 4dd4da2..2848b9c 100644
--- a/media/base/pipeline_impl_unittest.cc
+++ b/media/base/pipeline_impl_unittest.cc
@@ -286,7 +286,7 @@ class PipelineImplTest : public ::testing::Test {
TEST_F(PipelineImplTest, NotStarted) {
const base::TimeDelta kZero;
- // StrictMock<> will ensure these never get called, and valgrind/purify will
+ // StrictMock<> will ensure these never get called, and valgrind will
// make sure the callbacks are instantly deleted.
pipeline_->Stop(base::Bind(&CallbackHelper::OnStop,
base::Unretained(&callbacks_)));
diff --git a/net/disk_cache/backend_unittest.cc b/net/disk_cache/backend_unittest.cc
index dd7bf89..e764a15 100644
--- a/net/disk_cache/backend_unittest.cc
+++ b/net/disk_cache/backend_unittest.cc
@@ -584,10 +584,9 @@ void DiskCacheBackendTest::BackendInvalidEntry() {
}
// This and the other intentionally leaky tests below are excluded from
-// purify and valgrind runs by naming them in the files
-// net/data/purify/net_unittests.exe.gtest.txt and
+// valgrind runs by naming them in the files
// net/data/valgrind/net_unittests.gtest.txt
-// The scripts tools/{purify,valgrind}/chrome_tests.sh
+// The scripts tools/valgrind/chrome_tests.sh
// read those files and pass the appropriate --gtest_filter to net_unittests.
TEST_F(DiskCacheBackendTest, InvalidEntry) {
BackendInvalidEntry();
diff --git a/net/socket/tcp_client_socket_win.cc b/net/socket/tcp_client_socket_win.cc
index f4026b7..8b192f4 100644
--- a/net/socket/tcp_client_socket_win.cc
+++ b/net/socket/tcp_client_socket_win.cc
@@ -8,7 +8,6 @@
#include "base/basictypes.h"
#include "base/compiler_specific.h"
-#include "base/memory/memory_debug.h"
#include "base/metrics/stats_counters.h"
#include "base/string_util.h"
#include "base/win/object_watcher.h"
@@ -690,13 +689,6 @@ int TCPClientSocketWin::Read(IOBuffer* buf,
&core_->read_overlapped_, NULL);
if (rv == 0) {
if (ResetEventIfSignaled(core_->read_overlapped_.hEvent)) {
- // Because of how WSARecv fills memory when used asynchronously, Purify
- // isn't able to detect that it's been initialized, so it scans for 0xcd
- // in the buffer and reports UMRs (uninitialized memory reads) for those
- // individual bytes. We override that in PURIFY builds to avoid the
- // false error reports.
- // See bug 5297.
- base::MemoryDebug::MarkAsInitialized(core_->read_buffer_.buf, num);
base::StatsCounter read_bytes("tcp.read_bytes");
read_bytes.Add(num);
num_bytes_read_ += num;
diff --git a/net/udp/udp_socket_win.cc b/net/udp/udp_socket_win.cc
index 5840f77..fe7eaae 100644
--- a/net/udp/udp_socket_win.cc
+++ b/net/udp/udp_socket_win.cc
@@ -8,7 +8,6 @@
#include "base/eintr_wrapper.h"
#include "base/logging.h"
-#include "base/memory/memory_debug.h"
#include "base/message_loop.h"
#include "base/metrics/stats_counters.h"
#include "base/rand_util.h"
@@ -324,13 +323,6 @@ int UDPSocketWin::InternalRecvFrom(IOBuffer* buf, int buf_len,
&recv_addr_len_, &read_overlapped_, NULL);
if (rv == 0) {
if (ResetEventIfSignaled(read_overlapped_.hEvent)) {
- // Because of how WSARecv fills memory when used asynchronously, Purify
- // isn't able to detect that it's been initialized, so it scans for 0xcd
- // in the buffer and reports UMRs (uninitialized memory reads) for those
- // individual bytes. We override that in PURIFY builds to avoid the
- // false error reports.
- // See bug 5297.
- base::MemoryDebug::MarkAsInitialized(read_buffer.buf, num);
if (!ProcessSuccessfulRead(num, address))
return ERR_FAILED;
return static_cast<int>(num);
diff --git a/tools/heapcheck/heapcheck_test.py b/tools/heapcheck/heapcheck_test.py
index 6b6efe8..acdc30e 100644
--- a/tools/heapcheck/heapcheck_test.py
+++ b/tools/heapcheck/heapcheck_test.py
@@ -58,8 +58,7 @@ class HeapcheckWrapper(object):
common.RunSubprocess(proc, self._timeout)
# Always return true, even if running the subprocess failed. We depend on
- # Analyze to determine if the run was valid. (This behaviour copied from
- # the purify_test.py script.)
+ # Analyze to determine if the run was valid.
return True
def Analyze(self, log_lines, check_sanity=False):
diff --git a/views/focus/accelerator_handler_gtk_unittest.cc b/views/focus/accelerator_handler_gtk_unittest.cc
index 6a3eebaf..bedd6d5 100644
--- a/views/focus/accelerator_handler_gtk_unittest.cc
+++ b/views/focus/accelerator_handler_gtk_unittest.cc
@@ -38,7 +38,7 @@ class AcceleratorHandlerGtkTest
virtual void TearDown() {
window_->Close();
- // Flush the message loop to make Purify happy.
+ // Flush the message loop to make application verifiers happy.
message_loop_.RunAllPending();
}
diff --git a/views/focus/focus_manager_unittest.cc b/views/focus/focus_manager_unittest.cc
index 8c4c29a..e6895e8 100644
--- a/views/focus/focus_manager_unittest.cc
+++ b/views/focus/focus_manager_unittest.cc
@@ -126,7 +126,7 @@ class FocusManagerTest : public testing::Test, public WidgetDelegate {
GetFocusManager()->RemoveFocusChangeListener(focus_change_listener_);
window_->Close();
- // Flush the message loop to make Purify happy.
+ // Flush the message loop to make application verifiers happy.
message_loop()->RunAllPending();
}
diff --git a/webkit/extensions/v8/profiler_extension.cc b/webkit/extensions/v8/profiler_extension.cc
index 8683353..96bd542 100644
--- a/webkit/extensions/v8/profiler_extension.cc
+++ b/webkit/extensions/v8/profiler_extension.cc
@@ -6,13 +6,6 @@
#include "build/build_config.h"
-#if defined(QUANTIFY)
-// this #define is used to prevent people from directly using pure.h
-// instead of profiler.h
-#define PURIFY_PRIVATE_INCLUDE
-#include "base/third_party/purify/pure.h"
-#endif // QUANTIFY
-
#if defined(USE_TCMALLOC) && defined(OS_POSIX) && !defined(OS_MACOSX)
#include "third_party/tcmalloc/chromium/src/google/profiler.h"
#endif
@@ -69,9 +62,7 @@ class ProfilerWrapper : public v8::Extension {
static v8::Handle<v8::Value> ProfilerStart(
const v8::Arguments& args) {
-#if defined(QUANTIFY)
- QuantifyStartRecordingData();
-#elif defined(USE_TCMALLOC) && defined(OS_POSIX) && !defined(OS_MACOSX)
+#if defined(USE_TCMALLOC) && defined(OS_POSIX) && !defined(OS_MACOSX)
::ProfilerStart("chrome-profile");
#endif
return v8::Undefined();
@@ -79,9 +70,7 @@ class ProfilerWrapper : public v8::Extension {
static v8::Handle<v8::Value> ProfilerStop(
const v8::Arguments& args) {
-#if defined(QUANTIFY)
- QuantifyStopRecordingData();
-#elif defined(USE_TCMALLOC) && defined(OS_POSIX) && !defined(OS_MACOSX)
+#if defined(USE_TCMALLOC) && defined(OS_POSIX) && !defined(OS_MACOSX)
::ProfilerStop();
#endif
return v8::Undefined();
@@ -89,9 +78,6 @@ class ProfilerWrapper : public v8::Extension {
static v8::Handle<v8::Value> ProfilerClearData(
const v8::Arguments& args) {
-#if defined(QUANTIFY)
- QuantifyClearData();
-#endif
return v8::Undefined();
}
@@ -110,12 +96,6 @@ class ProfilerWrapper : public v8::Extension {
v8::Local<v8::String> inputString = args[0]->ToString();
char nameBuffer[256];
inputString->WriteAscii(nameBuffer, 0, sizeof(nameBuffer)-1);
-#if defined(QUANTIFY)
- // make a copy since the Quantify function takes a char*, not const char*
- char buffer[512];
- base::snprintf(buffer, arraysize(buffer)-1, "%s", name);
- QuantifySetThreadName(buffer);
-#endif
}
return v8::Undefined();
}
diff --git a/webkit/tools/test_shell/run_all_tests.cc b/webkit/tools/test_shell/run_all_tests.cc
index b2d422e..8486362 100644
--- a/webkit/tools/test_shell/run_all_tests.cc
+++ b/webkit/tools/test_shell/run_all_tests.cc
@@ -74,7 +74,7 @@ class TestShellTestSuite : public base::TestSuite {
// Some of the individual tests wind up calling TestShell::WaitTestFinished
// which has a timeout in it. For these tests, we don't care about
// a timeout so just set it to be really large. This is necessary because
- // we hit those timeouts under Purify and Valgrind.
+ // we hit those timeouts under Valgrind.
TestShell::SetFileTestTimeout(10 * 60 * 60 * 1000); // Ten hours.
// Initialize test shell in layout test mode, which will let us load one
diff --git a/webkit/tools/test_shell/test_shell_mac.mm b/webkit/tools/test_shell/test_shell_mac.mm
index f8ad17c..24cc83e 100644
--- a/webkit/tools/test_shell/test_shell_mac.mm
+++ b/webkit/tools/test_shell/test_shell_mac.mm
@@ -17,7 +17,6 @@
#include "base/logging.h"
#include "base/mac/mac_util.h"
#include "base/mac/scoped_nsautorelease_pool.h"
-#include "base/memory/memory_debug.h"
#include "base/message_loop.h"
#include "base/path_service.h"
#include "base/string16.h"
diff --git a/webkit/tools/test_shell/test_shell_main.cc b/webkit/tools/test_shell/test_shell_main.cc
index 5d2efd2..cc2341e 100644
--- a/webkit/tools/test_shell/test_shell_main.cc
+++ b/webkit/tools/test_shell/test_shell_main.cc
@@ -11,7 +11,6 @@
#include "base/file_path.h"
#include "base/file_util.h"
#include "base/i18n/icu_util.h"
-#include "base/memory/memory_debug.h"
#include "base/message_loop.h"
#include "base/metrics/stats_table.h"
#include "base/path_service.h"
@@ -325,12 +324,6 @@ int main(int argc, char* argv[]) {
base::EventRecorder::current()->StartPlayback(script_path);
}
- if (parsed_command_line.HasSwitch(test_shell::kDebugMemoryInUse)) {
- base::MemoryDebug::SetMemoryInUseEnabled(true);
- // Dump all in use memory at startup
- base::MemoryDebug::DumpAllMemoryInUse();
- }
-
webkit_glue::SetJavaScriptFlags(TestShell::GetJSFlagsForLoad(0));
MessageLoop::current()->Run();
diff --git a/webkit/tools/test_shell/test_shell_platform_delegate.h b/webkit/tools/test_shell/test_shell_platform_delegate.h
index 19ffbd7..e2d419a 100644
--- a/webkit/tools/test_shell/test_shell_platform_delegate.h
+++ b/webkit/tools/test_shell/test_shell_platform_delegate.h
@@ -17,10 +17,6 @@ class TestShellPlatformDelegate {
TestShellPlatformDelegate(const CommandLine& command_line);
~TestShellPlatformDelegate();
- // EnableMemoryDebugging: turn on platform memory debugging assistance
- // (console messages, heap checking, leak detection, etc.).
- void EnableMemoryDebugging();
-
// CheckLayoutTestSystemDependencies: check for any system dependencies that
// can't be easily overridden from within an application (for example, UI or
// display settings). Returns false if any dependencies are not met.
diff --git a/webkit/tools/test_shell/test_shell_switches.cc b/webkit/tools/test_shell/test_shell_switches.cc
index fd88861..087b791 100644
--- a/webkit/tools/test_shell/test_shell_switches.cc
+++ b/webkit/tools/test_shell/test_shell_switches.cc
@@ -58,10 +58,6 @@ const char kDumpStatsTable[] = "stats";
// Use a specified cache directory.
const char kCacheDir[] = "cache-dir";
-// When being run through a memory profiler, trigger memory in use dumps at
-// startup and just prior to shutdown.
-const char kDebugMemoryInUse[] = "debug-memory-in-use";
-
// Enable cookies on the file:// scheme. --layout-tests also enables this.
const char kEnableFileCookies[] = "enable-file-cookies";
diff --git a/webkit/tools/test_shell/test_shell_switches.h b/webkit/tools/test_shell/test_shell_switches.h
index 884b66625..53408dc 100644
--- a/webkit/tools/test_shell/test_shell_switches.h
+++ b/webkit/tools/test_shell/test_shell_switches.h
@@ -25,7 +25,6 @@ extern const char kPlaybackMode[];
extern const char kNoEvents[];
extern const char kDumpStatsTable[];
extern const char kCacheDir[];
-extern const char kDebugMemoryInUse[];
extern const char kEnableFileCookies[];
extern const char kAllowScriptsToCloseWindows[];
extern const char kCheckLayoutTestSystemDeps[];
diff --git a/webkit/tools/test_shell/test_shell_win.cc b/webkit/tools/test_shell/test_shell_win.cc
index 3b3c3b9..fbdd03c 100644
--- a/webkit/tools/test_shell/test_shell_win.cc
+++ b/webkit/tools/test_shell/test_shell_win.cc
@@ -13,7 +13,6 @@
#include "base/command_line.h"
#include "base/debug/trace_event.h"
#include "base/file_util.h"
-#include "base/memory/memory_debug.h"
#include "base/message_loop.h"
#include "base/path_service.h"
#include "base/resource_util.h"
@@ -567,10 +566,6 @@ LRESULT CALLBACK TestShell::WndProc(HWND hwnd, UINT message, WPARAM wParam,
RemoveWindowFromList(hwnd);
if (TestShell::windowList()->empty() || shell->is_modal()) {
- // Dump all in use memory just before shutdown if in use memory
- // debugging has been enabled.
- base::MemoryDebug::DumpAllMemoryInUse();
-
MessageLoop::current()->PostTask(FROM_HERE,
new MessageLoop::QuitTask());
}