mirror of
https://github.com/jemalloc/jemalloc.git
synced 2026-07-22 04:03:11 +00:00
Add sized-delete size-checking functionality.
The existing checks are good at finding such issues (on tcache flush), but not so good at pinpointing them. Debug mode can find them, but sometimes debug mode slows down a program so much that hard-to-hit bugs can take a long time to crash. This commit adds functionality to keep programs mostly on their fast paths, while also checking every sized delete argument they get.
This commit is contained in:
committed by
David Goldblatt
parent
53084cc5c2
commit
eaed1e39be
17
configure.ac
17
configure.ac
@@ -1492,6 +1492,23 @@ if test "x$enable_opt_safety_checks" = "x1" ; then
|
||||
fi
|
||||
AC_SUBST([enable_opt_safety_checks])
|
||||
|
||||
dnl Look for sized-deallocation bugs while otherwise being in opt mode.
|
||||
AC_ARG_ENABLE([opt-size-checks],
|
||||
[AS_HELP_STRING([--enable-opt-size-checks],
|
||||
[Perform sized-deallocation argument checks, even in opt mode])],
|
||||
[if test "x$enable_opt_size_checks" = "xno" ; then
|
||||
enable_opt_size_checks="0"
|
||||
else
|
||||
enable_opt_size_checks="1"
|
||||
fi
|
||||
],
|
||||
[enable_opt_size_checks="0"]
|
||||
)
|
||||
if test "x$enable_opt_size_checks" = "x1" ; then
|
||||
AC_DEFINE([JEMALLOC_OPT_SIZE_CHECKS], [ ])
|
||||
fi
|
||||
AC_SUBST([enable_opt_size_checks])
|
||||
|
||||
JE_COMPILABLE([a program using __builtin_unreachable], [
|
||||
void foo (void) {
|
||||
__builtin_unreachable();
|
||||
|
||||
Reference in New Issue
Block a user