VG_(free), sizeof(Char*));
#define DO(x) { Char* s = x; VG_(addToXA)(alloc_fns, &s); }
- // Ordered according to (presumed) frequency.
+ // Ordered roughly according to (presumed) frequency.
// Nb: The C++ "operator new*" ones are overloadable. We include them
// always anyway, because even if they're overloaded, it would be a
// prodigiously stupid overloading that caused them to not allocate
DO("calloc" );
DO("realloc" );
DO("memalign" );
+ DO("posix_memalign" );
+ DO("valloc" );
DO("operator new(unsigned, std::nothrow_t const&)" );
DO("operator new[](unsigned, std::nothrow_t const&)" );
DO("operator new(unsigned long, std::nothrow_t const&)" );
DO("operator new[](unsigned long, std::nothrow_t const&)");
+#if defined(VGP_ppc32_aix5) || defined(VGP_ppc64_aix5)
+ DO("malloc_common" );
+ DO("calloc_common" );
+ DO("realloc_common" );
+ DO("memalign_common" );
+#elif defined(VGO_darwin)
+ DO("malloc_zone_malloc" );
+ DO("malloc_zone_calloc" );
+ DO("malloc_zone_realloc" );
+ DO("malloc_zone_memalign" );
+ DO("malloc_zone_valloc" );
+#endif
}
static void init_ignore_fns(void)
VERB(1, "alloc-fns:");
for (i = 0; i < VG_(sizeXA)(alloc_fns); i++) {
Char** fn_ptr = VG_(indexXA)(alloc_fns, i);
- VERB(1, " %d: %s", i, *fn_ptr);
+ VERB(1, " %s", *fn_ptr);
}
VERB(1, "ignore-fns:");
Massif: alloc-fns:
-Massif: 0: malloc
-Massif: 1: __builtin_new
-Massif: 2: operator new(unsigned)
-Massif: 3: operator new(unsigned long)
-Massif: 4: __builtin_vec_new
-Massif: 5: operator new[](unsigned)
-Massif: 6: operator new[](unsigned long)
-Massif: 7: calloc
-Massif: 8: realloc
-Massif: 9: memalign
-Massif: 10: operator new(unsigned, std::nothrow_t const&)
-Massif: 11: operator new[](unsigned, std::nothrow_t const&)
-Massif: 12: operator new(unsigned long, std::nothrow_t const&)
-Massif: 13: operator new[](unsigned long, std::nothrow_t const&)
+Massif: malloc
+Massif: __builtin_new
+Massif: operator new(unsigned)
+Massif: operator new(unsigned long)
+Massif: __builtin_vec_new
+Massif: operator new[](unsigned)
+Massif: operator new[](unsigned long)
+Massif: calloc
+Massif: realloc
+Massif: memalign
+Massif: posix_memalign
+Massif: valloc
+Massif: operator new(unsigned, std::nothrow_t const&)
+Massif: operator new[](unsigned, std::nothrow_t const&)
+Massif: operator new(unsigned long, std::nothrow_t const&)
+Massif: operator new[](unsigned long, std::nothrow_t const&)
Massif: ignore-fns:
Massif: 0: __part_load_locale
Massif: 1: __time_load_locale
Massif: alloc-fns:
-Massif: 0: malloc
-Massif: 1: __builtin_new
-Massif: 2: operator new(unsigned)
-Massif: 3: operator new(unsigned long)
-Massif: 4: __builtin_vec_new
-Massif: 5: operator new[](unsigned)
-Massif: 6: operator new[](unsigned long)
-Massif: 7: calloc
-Massif: 8: realloc
-Massif: 9: memalign
-Massif: 10: operator new(unsigned, std::nothrow_t const&)
-Massif: 11: operator new[](unsigned, std::nothrow_t const&)
-Massif: 12: operator new(unsigned long, std::nothrow_t const&)
-Massif: 13: operator new[](unsigned long, std::nothrow_t const&)
+Massif: malloc
+Massif: __builtin_new
+Massif: operator new(unsigned)
+Massif: operator new(unsigned long)
+Massif: __builtin_vec_new
+Massif: operator new[](unsigned)
+Massif: operator new[](unsigned long)
+Massif: calloc
+Massif: realloc
+Massif: memalign
+Massif: posix_memalign
+Massif: valloc
+Massif: operator new(unsigned, std::nothrow_t const&)
+Massif: operator new[](unsigned, std::nothrow_t const&)
+Massif: operator new(unsigned long, std::nothrow_t const&)
+Massif: operator new[](unsigned long, std::nothrow_t const&)
Massif: ignore-fns:
Massif: 0: __part_load_locale
Massif: 1: __time_load_locale
Massif: alloc-fns:
-Massif: 0: malloc
-Massif: 1: __builtin_new
-Massif: 2: operator new(unsigned)
-Massif: 3: operator new(unsigned long)
-Massif: 4: __builtin_vec_new
-Massif: 5: operator new[](unsigned)
-Massif: 6: operator new[](unsigned long)
-Massif: 7: calloc
-Massif: 8: realloc
-Massif: 9: memalign
-Massif: 10: operator new(unsigned, std::nothrow_t const&)
-Massif: 11: operator new[](unsigned, std::nothrow_t const&)
-Massif: 12: operator new(unsigned long, std::nothrow_t const&)
-Massif: 13: operator new[](unsigned long, std::nothrow_t const&)
-Massif: 14: a6
-Massif: 15: a7
-Massif: 16: a8
-Massif: 17: a9
-Massif: 18: a10
-Massif: 19: a11
-Massif: 20: a12
+Massif: malloc
+Massif: __builtin_new
+Massif: operator new(unsigned)
+Massif: operator new(unsigned long)
+Massif: __builtin_vec_new
+Massif: operator new[](unsigned)
+Massif: operator new[](unsigned long)
+Massif: calloc
+Massif: realloc
+Massif: memalign
+Massif: posix_memalign
+Massif: valloc
+Massif: operator new(unsigned, std::nothrow_t const&)
+Massif: operator new[](unsigned, std::nothrow_t const&)
+Massif: operator new(unsigned long, std::nothrow_t const&)
+Massif: operator new[](unsigned long, std::nothrow_t const&)
+Massif: a6
+Massif: a7
+Massif: a8
+Massif: a9
+Massif: a10
+Massif: a11
+Massif: a12
Massif: ignore-fns:
Massif: 0: __part_load_locale
Massif: 1: __time_load_locale
Massif: alloc-fns:
-Massif: 0: malloc
-Massif: 1: __builtin_new
-Massif: 2: operator new(unsigned)
-Massif: 3: operator new(unsigned long)
-Massif: 4: __builtin_vec_new
-Massif: 5: operator new[](unsigned)
-Massif: 6: operator new[](unsigned long)
-Massif: 7: calloc
-Massif: 8: realloc
-Massif: 9: memalign
-Massif: 10: operator new(unsigned, std::nothrow_t const&)
-Massif: 11: operator new[](unsigned, std::nothrow_t const&)
-Massif: 12: operator new(unsigned long, std::nothrow_t const&)
-Massif: 13: operator new[](unsigned long, std::nothrow_t const&)
-Massif: 14: a3
-Massif: 15: a4
-Massif: 16: a5
-Massif: 17: a6
-Massif: 18: a7
-Massif: 19: a8
-Massif: 20: a9
-Massif: 21: a10
-Massif: 22: a11
-Massif: 23: a12
+Massif: malloc
+Massif: __builtin_new
+Massif: operator new(unsigned)
+Massif: operator new(unsigned long)
+Massif: __builtin_vec_new
+Massif: operator new[](unsigned)
+Massif: operator new[](unsigned long)
+Massif: calloc
+Massif: realloc
+Massif: memalign
+Massif: posix_memalign
+Massif: valloc
+Massif: operator new(unsigned, std::nothrow_t const&)
+Massif: operator new[](unsigned, std::nothrow_t const&)
+Massif: operator new(unsigned long, std::nothrow_t const&)
+Massif: operator new[](unsigned long, std::nothrow_t const&)
+Massif: a3
+Massif: a4
+Massif: a5
+Massif: a6
+Massif: a7
+Massif: a8
+Massif: a9
+Massif: a10
+Massif: a11
+Massif: a12
Massif: ignore-fns:
Massif: 0: __part_load_locale
Massif: 1: __time_load_locale
$dir/../../tests/filter_stderr_basic |
# Remove "Massif, ..." line and the following copyright line.
-sed "/^Massif, a heap profiler./ , /./ d"
+sed "/^Massif, a heap profiler./ , /./ d" |
+
+# Remove AIX-only alloc-fns
+perl -n -e 'print if !/^Massif: (malloc|calloc|realloc|memalign)_common$/' |
+
+# Remove Darwin-only alloc-fns
+perl -n -e 'print if !/^Massif: malloc_zone_(malloc|calloc|realloc|memalign|valloc)$/'
+
Massif: alloc-fns:
-Massif: 0: malloc
-Massif: 1: __builtin_new
-Massif: 2: operator new(unsigned)
-Massif: 3: operator new(unsigned long)
-Massif: 4: __builtin_vec_new
-Massif: 5: operator new[](unsigned)
-Massif: 6: operator new[](unsigned long)
-Massif: 7: calloc
-Massif: 8: realloc
-Massif: 9: memalign
-Massif: 10: operator new(unsigned, std::nothrow_t const&)
-Massif: 11: operator new[](unsigned, std::nothrow_t const&)
-Massif: 12: operator new(unsigned long, std::nothrow_t const&)
-Massif: 13: operator new[](unsigned long, std::nothrow_t const&)
+Massif: malloc
+Massif: __builtin_new
+Massif: operator new(unsigned)
+Massif: operator new(unsigned long)
+Massif: __builtin_vec_new
+Massif: operator new[](unsigned)
+Massif: operator new[](unsigned long)
+Massif: calloc
+Massif: realloc
+Massif: memalign
+Massif: posix_memalign
+Massif: valloc
+Massif: operator new(unsigned, std::nothrow_t const&)
+Massif: operator new[](unsigned, std::nothrow_t const&)
+Massif: operator new(unsigned long, std::nothrow_t const&)
+Massif: operator new[](unsigned long, std::nothrow_t const&)
Massif: ignore-fns:
Massif: 0: __part_load_locale
Massif: 1: __time_load_locale
Massif: alloc-fns:
-Massif: 0: malloc
-Massif: 1: __builtin_new
-Massif: 2: operator new(unsigned)
-Massif: 3: operator new(unsigned long)
-Massif: 4: __builtin_vec_new
-Massif: 5: operator new[](unsigned)
-Massif: 6: operator new[](unsigned long)
-Massif: 7: calloc
-Massif: 8: realloc
-Massif: 9: memalign
-Massif: 10: operator new(unsigned, std::nothrow_t const&)
-Massif: 11: operator new[](unsigned, std::nothrow_t const&)
-Massif: 12: operator new(unsigned long, std::nothrow_t const&)
-Massif: 13: operator new[](unsigned long, std::nothrow_t const&)
+Massif: malloc
+Massif: __builtin_new
+Massif: operator new(unsigned)
+Massif: operator new(unsigned long)
+Massif: __builtin_vec_new
+Massif: operator new[](unsigned)
+Massif: operator new[](unsigned long)
+Massif: calloc
+Massif: realloc
+Massif: memalign
+Massif: posix_memalign
+Massif: valloc
+Massif: operator new(unsigned, std::nothrow_t const&)
+Massif: operator new[](unsigned, std::nothrow_t const&)
+Massif: operator new(unsigned long, std::nothrow_t const&)
+Massif: operator new[](unsigned long, std::nothrow_t const&)
Massif: ignore-fns:
Massif: 0: __part_load_locale
Massif: 1: __time_load_locale