[PATCH] Allow to enable ivsalloc independently
Mike Hommey
mh+jemalloc at glandium.org
Thu Dec 6 13:16:26 PST 2012
From: Mike Hommey <mh at glandium.org>
---
INSTALL | 6 ++++++
configure.ac | 19 +++++++++++++++++--
2 files changed, 23 insertions(+), 2 deletions(-)
diff --git a/INSTALL b/INSTALL
index 9bd1dac..6e371ce 100644
--- a/INSTALL
+++ b/INSTALL
@@ -79,6 +79,12 @@ any of the following arguments (not a definitive list) to 'configure':
--enable-debug
Enable assertions and validation code. This incurs a substantial
performance hit, but is very useful during application development.
+ Implies --enable-ivsalloc.
+
+--enable-ivsalloc
+ Enable validation code, which verifies that pointers reside within
+ jemalloc-owned chunks before dereferencing them. This incurs a substantial
+ performance hit.
--disable-stats
Disable statistics gathering functionality. See the "opt.stats_print"
diff --git a/configure.ac b/configure.ac
index 249a66c..9d062a9 100644
--- a/configure.ac
+++ b/configure.ac
@@ -551,7 +551,7 @@ fi
dnl Do not compile with debugging by default.
AC_ARG_ENABLE([debug],
- [AS_HELP_STRING([--enable-debug], [Build debugging code])],
+ [AS_HELP_STRING([--enable-debug], [Build debugging code (implies --enable-ivsalloc)])],
[if test "x$enable_debug" = "xno" ; then
enable_debug="0"
else
@@ -562,10 +562,25 @@ fi
)
if test "x$enable_debug" = "x1" ; then
AC_DEFINE([JEMALLOC_DEBUG], [ ])
- AC_DEFINE([JEMALLOC_IVSALLOC], [ ])
+ enable_ivsalloc="1"
fi
AC_SUBST([enable_debug])
+dnl Do not validate pointers by default.
+AC_ARG_ENABLE([ivsalloc],
+ [AS_HELP_STRING([--enable-ivsalloc], [Validate pointers passed through the public API])],
+[if test "x$enable_ivsalloc" = "xno" ; then
+ enable_ivsalloc="0"
+else
+ enable_ivsalloc="1"
+fi
+],
+[enable_ivsalloc="0"]
+)
+if test "x$enable_ivsalloc" = "x1" ; then
+ AC_DEFINE([JEMALLOC_IVSALLOC], [ ])
+fi
+
dnl Only optimize if not debugging.
if test "x$enable_debug" = "x0" -a "x$no_CFLAGS" = "xyes" ; then
dnl Make sure that an optimization flag was not specified in EXTRA_CFLAGS.
--
1.7.10.4
More information about the jemalloc-discuss
mailing list