Index: third_party/tcmalloc/chromium/src/tests/simple_compat_test.cc |
diff --git a/third_party/tcmalloc/chromium/src/tests/current_allocated_bytes_test.cc b/third_party/tcmalloc/chromium/src/tests/simple_compat_test.cc |
similarity index 59% |
copy from third_party/tcmalloc/chromium/src/tests/current_allocated_bytes_test.cc |
copy to third_party/tcmalloc/chromium/src/tests/simple_compat_test.cc |
index 8188e7b6937d165abcd787ddf87c5a66daaea841..824cfcf693d6d900864595e4fddb4074d96f76f3 100644 |
--- a/third_party/tcmalloc/chromium/src/tests/current_allocated_bytes_test.cc |
+++ b/third_party/tcmalloc/chromium/src/tests/simple_compat_test.cc |
@@ -1,4 +1,4 @@ |
-// Copyright (c) 2011, Google Inc. |
+// Copyright (c) 2012, Google Inc. |
// All rights reserved. |
// |
// Redistribution and use in source and binary forms, with or without |
@@ -26,38 +26,42 @@ |
// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT |
// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE |
// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. |
+ |
// --- |
-// |
// Author: Craig Silverstein |
+// |
+// This just verifies that we can compile code that #includes stuff |
+// via the backwards-compatibility 'google/' #include-dir. It does |
+// not include config.h on purpose, to better simulate a perftools |
+// client. |
-// This tests the accounting done by tcmalloc. When we allocate and |
-// free a small buffer, the number of bytes used by the application |
-// before the alloc+free should match the number of bytes used after. |
-// However, the internal data structures used by tcmalloc will be |
-// quite different -- new spans will have been allocated, etc. This |
-// is, thus, a simple test that we account properly for the internal |
-// data structures, so that we report the actual application-used |
-// bytes properly. |
- |
-#include "config_for_unittests.h" |
-#include <stdlib.h> |
+#include <stddef.h> |
#include <stdio.h> |
+#include <google/heap-checker.h> |
+#include <google/heap-profiler.h> |
#include <google/malloc_extension.h> |
-#include "base/logging.h" |
+#include <google/malloc_extension_c.h> |
+#include <google/malloc_hook.h> |
+#include <google/malloc_hook_c.h> |
+#include <google/profiler.h> |
+#include <google/stacktrace.h> |
+#include <google/tcmalloc.h> |
-const char kCurrent[] = "generic.current_allocated_bytes"; |
+// We don't link in -lprofiler for this test, so be sure not to make |
+// any function calls that require the cpu-profiler code. The |
+// heap-profiler is ok. |
-int main() { |
- // We don't do accounting right when using debugallocation.cc, so |
- // turn off the test then. TODO(csilvers): get this working too. |
-#ifdef NDEBUG |
- size_t before_bytes, after_bytes; |
- MallocExtension::instance()->GetNumericProperty(kCurrent, &before_bytes); |
- free(malloc(200)); |
- MallocExtension::instance()->GetNumericProperty(kCurrent, &after_bytes); |
+HeapLeakChecker::Disabler* heap_checker_h; |
+void (*heap_profiler_h)(const char*) = &HeapProfilerStart; |
+MallocExtension::Ownership malloc_extension_h; |
+MallocExtension_Ownership malloc_extension_c_h; |
+MallocHook::NewHook* malloc_hook_h; |
+MallocHook_NewHook* malloc_hook_c_h; |
+ProfilerOptions* profiler_h; |
+int (*stacktrace_h)(void**, int, int) = &GetStackTrace; |
+void* (*tcmalloc_h)(size_t) = &tc_new; |
- CHECK_EQ(before_bytes, after_bytes); |
-#endif |
+int main(int argc, char** argv) { |
printf("PASS\n"); |
return 0; |
} |