This is the mail archive of the
gdb-patches@sources.redhat.com
mailing list for the GDB project.
[rfa] delete more mmalloc remnants
- From: mec dot gnu at mindspring dot com (Michael Elizabeth Chastain)
- To: cagney at redhat dot com, eliz at gnu dot org, gdb-patches at sources dot redhat dot com
- Date: Mon, 19 Jan 2004 17:26:14 -0500 (EST)
- Subject: [rfa] delete more mmalloc remnants
This patch deletes more remnants of --with-mmalloc.
I tested this by building on native i686-pc-linux-gnu and
running the "break main; run" test.
I need several approvals for this, including a doco approval.
Okay to commit?
Michael C
2004-01-19 Michael Chastain <mec.gnu@mindspring.com>
* MAINTAINERS: Delete mmalloc.
* Makefile.in: Delete MMALLOC, MMALLOC_CFLAGS, -lmmalloc, mmalloc_h.
* NEWS: Mention removal of --with-malloc.
* acconfig.h: Delete USE_MMALLOC, MMCHECK_FORCE.
* config.in: Regenerate.
* configure: Regenerate.
* configure.in: Delete MMALLOC_CFLAGS, MMALLOC, --with-mmalloc, USE_MMALLOC, MMCHECK_FORCE.
* gdbinit.in: Remove mmalloc.
* utils.c: Delete USE_MMALLOC, NO_MMCHECK, MMCHECK_FORCE, malloc_botch.
* config/alpha/alpha-linux.mh: Delete MMALLOC, MMALLOC_CFLAGS.
* config/i386/go32.mh: Likewise.
* config/i386/interix.mh: Likewise.
* config/powerpc/xm-linux.h: Delete MMAP_BASE_ADDRESS, MMAP_INCREMENT.
2004-01-19 Michael Chastain <mec.gnu@mindspring.com>
* gdbint.texinfo: Delete USE_MMALLOC, NO_MMCHECK, MMCHECK_FORCE,
MMAP_BASE_ADDRESS, MMAP_INCREMENT.
Index: MAINTAINERS
===================================================================
RCS file: /cvs/src/src/gdb/MAINTAINERS,v
retrieving revision 1.258
diff -c -3 -p -r1.258 MAINTAINERS
*** MAINTAINERS 4 Jan 2004 15:27:24 -0000 1.258
--- MAINTAINERS 19 Jan 2004 22:17:56 -0000
*************** support - typically shared libraries and
*** 174,181 ****
The Native maintainer works with the Arch and Core maintainers when
resolving more generic problems.
! The host maintainer ensures that gdb (including mmalloc) can be built
! as a cross debugger on their platform.
AIX Peter Schauer Peter.Schauer@regent.e-technik.tu-muenchen.de
Kevin Buettner kevinb@redhat.com
--- 174,181 ----
The Native maintainer works with the Arch and Core maintainers when
resolving more generic problems.
! The host maintainer ensures that gdb can be built as a cross debugger on
! their platform.
AIX Peter Schauer Peter.Schauer@regent.e-technik.tu-muenchen.de
Kevin Buettner kevinb@redhat.com
Index: Makefile.in
===================================================================
RCS file: /cvs/src/src/gdb/Makefile.in,v
retrieving revision 1.478
diff -c -3 -p -r1.478 Makefile.in
*** Makefile.in 19 Jan 2004 04:31:49 -0000 1.478
--- Makefile.in 19 Jan 2004 22:17:56 -0000
*************** INCLUDE_CFLAGS = -I$(INCLUDE_DIR)
*** 106,115 ****
# Where is the "-liberty" library? Typically in ../libiberty.
LIBIBERTY = ../libiberty/libiberty.a
- # Configured by the --with-mmalloc option to configure.
- MMALLOC = @MMALLOC@
- MMALLOC_CFLAGS = @MMALLOC_CFLAGS@
-
# Where is the BFD library? Typically in ../bfd.
BFD_DIR = ../bfd
BFD = $(BFD_DIR)/libbfd.a
--- 106,111 ----
*************** CXXFLAGS = -g -O
*** 364,370 ****
INTERNAL_WARN_CFLAGS = \
$(CFLAGS) $(GLOBAL_CFLAGS) $(PROFILE_CFLAGS) \
$(GDB_CFLAGS) $(OPCODES_CFLAGS) $(READLINE_CFLAGS) \
! $(BFD_CFLAGS) $(MMALLOC_CFLAGS) $(INCLUDE_CFLAGS) \
$(INTL_CFLAGS) $(ENABLE_CFLAGS) \
$(GDB_WARN_CFLAGS)
INTERNAL_CFLAGS = $(INTERNAL_WARN_CFLAGS) $(GDB_WERROR_CFLAGS)
--- 360,366 ----
INTERNAL_WARN_CFLAGS = \
$(CFLAGS) $(GLOBAL_CFLAGS) $(PROFILE_CFLAGS) \
$(GDB_CFLAGS) $(OPCODES_CFLAGS) $(READLINE_CFLAGS) \
! $(BFD_CFLAGS) $(INCLUDE_CFLAGS) \
$(INTL_CFLAGS) $(ENABLE_CFLAGS) \
$(GDB_WARN_CFLAGS)
INTERNAL_CFLAGS = $(INTERNAL_WARN_CFLAGS) $(GDB_WERROR_CFLAGS)
*************** INTERNAL_LDFLAGS = $(CFLAGS) $(GLOBAL_CF
*** 384,402 ****
# Libraries and corresponding dependencies for compiling gdb.
# {X,T}M_CLIBS, defined in *config files, have host- and target-dependent libs.
- # MMALLOC comes after anything else that might want an allocation function.
# LIBIBERTY appears twice on purpose.
# If you have the Cygnus libraries installed,
# you can use 'CLIBS=$(INSTALLED_LIBS)' 'CDEPS='
INSTALLED_LIBS=-lbfd -lreadline -lopcodes -liberty \
$(XM_CLIBS) $(TM_CLIBS) $(NAT_CLIBS) $(GDBTKLIBS) @LIBS@ \
! -lmmalloc -lintl -liberty
CLIBS = $(SIM) $(BFD) $(READLINE) $(OPCODES) $(INTL) $(LIBIBERTY) \
$(XM_CLIBS) $(TM_CLIBS) $(NAT_CLIBS) $(GDBTKLIBS) @LIBS@ \
$(LIBICONV) \
! $(MMALLOC) $(LIBIBERTY) $(WIN32LIBS)
CDEPS = $(XM_CDEPS) $(TM_CDEPS) $(NAT_CDEPS) $(SIM) $(BFD) $(READLINE) \
! $(OPCODES) $(MMALLOC) $(INTL_DEPS) $(LIBIBERTY) $(CONFIG_DEPS)
ADD_FILES = $(XM_ADD_FILES) $(TM_ADD_FILES) $(NAT_ADD_FILES)
ADD_DEPS = $(XM_ADD_FILES) $(TM_ADD_FILES) $(NAT_ADD_FILES)
--- 380,397 ----
# Libraries and corresponding dependencies for compiling gdb.
# {X,T}M_CLIBS, defined in *config files, have host- and target-dependent libs.
# LIBIBERTY appears twice on purpose.
# If you have the Cygnus libraries installed,
# you can use 'CLIBS=$(INSTALLED_LIBS)' 'CDEPS='
INSTALLED_LIBS=-lbfd -lreadline -lopcodes -liberty \
$(XM_CLIBS) $(TM_CLIBS) $(NAT_CLIBS) $(GDBTKLIBS) @LIBS@ \
! -lintl -liberty
CLIBS = $(SIM) $(BFD) $(READLINE) $(OPCODES) $(INTL) $(LIBIBERTY) \
$(XM_CLIBS) $(TM_CLIBS) $(NAT_CLIBS) $(GDBTKLIBS) @LIBS@ \
$(LIBICONV) \
! $(LIBIBERTY) $(WIN32LIBS)
CDEPS = $(XM_CDEPS) $(TM_CDEPS) $(NAT_CDEPS) $(SIM) $(BFD) $(READLINE) \
! $(OPCODES) $(INTL_DEPS) $(LIBIBERTY) $(CONFIG_DEPS)
ADD_FILES = $(XM_ADD_FILES) $(TM_ADD_FILES) $(NAT_ADD_FILES)
ADD_DEPS = $(XM_ADD_FILES) $(TM_ADD_FILES) $(NAT_ADD_FILES)
*************** DIST=gdb
*** 405,411 ****
LINT=/usr/5bin/lint
LINTFLAGS= $(GDB_CFLAGS) $(OPCODES_CFLAGS) $(READLINE_CFLAGS) \
! $(BFD_CFLAGS) $(MMALLOC_CFLAGS) $(INCLUDE_CFLAGS) \
$(INTL_CFLAGS)
RUNTEST = `if [ -f $${rootsrc}/../dejagnu/runtest ] ; then \
--- 400,406 ----
LINT=/usr/5bin/lint
LINTFLAGS= $(GDB_CFLAGS) $(OPCODES_CFLAGS) $(READLINE_CFLAGS) \
! $(BFD_CFLAGS) $(INCLUDE_CFLAGS) \
$(INTL_CFLAGS)
RUNTEST = `if [ -f $${rootsrc}/../dejagnu/runtest ] ; then \
*************** objc-lang.o: objc-lang.c $(defs_h) $(sym
*** 2134,2140 ****
objfiles.o: objfiles.c $(defs_h) $(bfd_h) $(symtab_h) $(symfile_h) \
$(objfiles_h) $(gdb_stabs_h) $(target_h) $(bcache_h) $(gdb_assert_h) \
$(gdb_stat_h) $(gdb_obstack_h) $(gdb_string_h) $(hashtab_h) \
! $(breakpoint_h) $(block_h) $(dictionary_h) $(mmalloc_h)
observer.o: observer.c $(defs_h) $(observer_h)
ocd.o: ocd.c $(defs_h) $(gdbcore_h) $(gdb_string_h) $(frame_h) $(inferior_h) \
$(bfd_h) $(symfile_h) $(target_h) $(gdbcmd_h) $(objfiles_h) \
--- 2129,2135 ----
objfiles.o: objfiles.c $(defs_h) $(bfd_h) $(symtab_h) $(symfile_h) \
$(objfiles_h) $(gdb_stabs_h) $(target_h) $(bcache_h) $(gdb_assert_h) \
$(gdb_stat_h) $(gdb_obstack_h) $(gdb_string_h) $(hashtab_h) \
! $(breakpoint_h) $(block_h) $(dictionary_h)
observer.o: observer.c $(defs_h) $(observer_h)
ocd.o: ocd.c $(defs_h) $(gdbcore_h) $(gdb_string_h) $(frame_h) $(inferior_h) \
$(bfd_h) $(symfile_h) $(target_h) $(gdbcmd_h) $(objfiles_h) \
*************** user-regs.o: user-regs.c $(defs_h) $(use
*** 2467,2473 ****
utils.o: utils.c $(defs_h) $(gdb_assert_h) $(gdb_string_h) $(event_top_h) \
$(gdbcmd_h) $(serial_h) $(bfd_h) $(target_h) $(demangle_h) \
$(expression_h) $(language_h) $(charset_h) $(annotate_h) \
! $(filenames_h) $(inferior_h) $(mmalloc_h)
uw-thread.o: uw-thread.c $(defs_h) $(gdbthread_h) $(target_h) $(inferior_h) \
$(regcache_h) $(gregset_h)
v850ice.o: v850ice.c $(defs_h) $(gdb_string_h) $(frame_h) $(symtab_h) \
--- 2462,2468 ----
utils.o: utils.c $(defs_h) $(gdb_assert_h) $(gdb_string_h) $(event_top_h) \
$(gdbcmd_h) $(serial_h) $(bfd_h) $(target_h) $(demangle_h) \
$(expression_h) $(language_h) $(charset_h) $(annotate_h) \
! $(filenames_h) $(inferior_h)
uw-thread.o: uw-thread.c $(defs_h) $(gdbthread_h) $(target_h) $(inferior_h) \
$(regcache_h) $(gregset_h)
v850ice.o: v850ice.c $(defs_h) $(gdb_string_h) $(frame_h) $(symtab_h) \
Index: NEWS
===================================================================
RCS file: /cvs/src/src/gdb/NEWS,v
retrieving revision 1.132
diff -c -3 -p -r1.132 NEWS
*** NEWS 11 Jan 2004 17:00:38 -0000 1.132
--- NEWS 19 Jan 2004 22:17:57 -0000
***************
*** 3,8 ****
--- 3,13 ----
*** Changes since GDB 6.0:
+ * Removed --with-mmalloc
+
+ Support for the mmalloc memory manager has been removed, as it
+ conflicted with the internal gdb byte cache.
+
* Changes in AMD64 configurations
The AMD64 target now includes the %cs and %ss registers. As a result
Index: acconfig.h
===================================================================
RCS file: /cvs/src/src/gdb/acconfig.h,v
retrieving revision 1.27
diff -c -3 -p -r1.27 acconfig.h
*** acconfig.h 30 Dec 2003 10:33:37 -0000 1.27
--- acconfig.h 19 Jan 2004 22:17:57 -0000
***************
*** 108,122 ****
/* Define if you have HPUX threads */
#undef HAVE_HPUX_THREAD_SUPPORT
- /* Define if you want to use the memory mapped malloc package (mmalloc). */
- #undef USE_MMALLOC
-
- /* Define if the runtime uses a routine from mmalloc before gdb has a chance
- to initialize mmalloc, and we want to force checking to be used anyway.
- This may cause spurious memory corruption messages if the runtime tries
- to explicitly deallocate that memory when gdb calls exit. */
- #undef MMCHECK_FORCE
-
/* Define to 1 if NLS is requested. */
#undef ENABLE_NLS
--- 108,113 ----
Index: configure.in
===================================================================
RCS file: /cvs/src/src/gdb/configure.in,v
retrieving revision 1.139
diff -c -3 -p -r1.139 configure.in
*** configure.in 13 Jan 2004 17:06:36 -0000 1.139
--- configure.in 19 Jan 2004 22:17:59 -0000
*************** fi
*** 1082,1107 ****
AC_SUBST(WARN_CFLAGS)
AC_SUBST(WERROR_CFLAGS)
- MMALLOC_CFLAGS=
- MMALLOC=
- AC_SUBST(MMALLOC_CFLAGS)
- AC_SUBST(MMALLOC)
-
- AC_ARG_WITH(mmalloc,
- [ --with-mmalloc Use memory mapped malloc package],
- [case "${withval}" in
- yes) want_mmalloc=true ;;
- no) want_mmalloc=false;;
- *) AC_MSG_ERROR(bad value ${withval} for GDB with-mmalloc option) ;;
- esac],[want_mmalloc=false])dnl
-
- if test x$want_mmalloc = xtrue; then
- AC_DEFINE(USE_MMALLOC)
- AC_DEFINE(MMCHECK_FORCE)
- MMALLOC_CFLAGS="-I$srcdir/../mmalloc"
- MMALLOC='../mmalloc/libmmalloc.a'
- fi
-
# In the Cygwin environment, we need some additional flags.
AC_CACHE_CHECK([for cygwin], gdb_cv_os_cygwin,
[AC_EGREP_CPP(lose, [
--- 1082,1087 ----
Index: gdbinit.in
===================================================================
RCS file: /cvs/src/src/gdb/gdbinit.in,v
retrieving revision 1.2
diff -c -3 -p -r1.2 gdbinit.in
*** gdbinit.in 30 Jul 2002 07:01:23 -0000 1.2
--- gdbinit.in 19 Jan 2004 22:17:59 -0000
*************** commands
*** 10,16 ****
return
end
- dir @srcdir@/../mmalloc
dir @srcdir@/../libiberty
dir @srcdir@/../bfd
dir @srcdir@
--- 10,15 ----
Index: utils.c
===================================================================
RCS file: /cvs/src/src/gdb/utils.c,v
retrieving revision 1.111
diff -c -3 -p -r1.111 utils.c
*** utils.c 2 Jan 2004 17:35:01 -0000 1.111
--- utils.c 19 Jan 2004 22:17:59 -0000
***************
*** 1,8 ****
/* General utility routines for GDB, the GNU debugger.
Copyright 1986, 1988, 1989, 1990, 1991, 1992, 1993, 1994, 1995,
! 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003 Free Software
! Foundation, Inc.
This file is part of GDB.
--- 1,8 ----
/* General utility routines for GDB, the GNU debugger.
Copyright 1986, 1988, 1989, 1990, 1991, 1992, 1993, 1994, 1995,
! 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004
! Free Software Foundation, Inc.
This file is part of GDB.
***************
*** 61,70 ****
#include <readline/readline.h>
- #ifdef USE_MMALLOC
- #include "mmalloc.h"
- #endif
-
#ifdef NEED_DECLARATION_MALLOC
extern PTR malloc (); /* OK: PTR */
#endif
--- 61,66 ----
*************** static void fputs_maybe_filtered (const
*** 98,107 ****
static void do_my_cleanups (struct cleanup **, struct cleanup *);
- #if defined (USE_MMALLOC) && !defined (NO_MMCHECK)
- static void malloc_botch (void);
- #endif
-
static void prompt_for_continue (void);
static void set_screen_size (void);
--- 94,99 ----
*************** request_quit (int signo)
*** 961,968 ****
/* Memory management stuff (malloc friends). */
- #if !defined (USE_MMALLOC)
-
static void *
mmalloc (void *md, size_t size)
{
--- 953,958 ----
*************** mfree (void *md, void *ptr)
*** 990,1051 ****
free (ptr); /* NOTE: GDB's only call to free() */
}
! #endif /* USE_MMALLOC */
!
! #if !defined (USE_MMALLOC) || defined (NO_MMCHECK)
!
! void
! init_malloc (void *md)
! {
! }
!
! #else /* Have mmalloc and want corruption checking */
!
! static void
! malloc_botch (void)
! {
! fprintf_unfiltered (gdb_stderr, "Memory corruption\n");
! internal_error (__FILE__, __LINE__, "failed internal consistency check");
! }
!
! /* Attempt to install hooks in mmalloc/mrealloc/mfree for the heap specified
! by MD, to detect memory corruption. Note that MD may be NULL to specify
! the default heap that grows via sbrk.
!
! Note that for freshly created regions, we must call mmcheckf prior to any
! mallocs in the region. Otherwise, any region which was allocated prior to
! installing the checking hooks, which is later reallocated or freed, will
! fail the checks! The mmcheck function only allows initial hooks to be
! installed before the first mmalloc. However, anytime after we have called
! mmcheck the first time to install the checking hooks, we can call it again
! to update the function pointer to the memory corruption handler.
!
! Returns zero on failure, non-zero on success. */
!
! #ifndef MMCHECK_FORCE
! #define MMCHECK_FORCE 0
! #endif
!
void
init_malloc (void *md)
{
- if (!mmcheckf (md, malloc_botch, MMCHECK_FORCE))
- {
- /* Don't use warning(), which relies on current_target being set
- to something other than dummy_target, until after
- initialize_all_files(). */
-
- fprintf_unfiltered
- (gdb_stderr,
- "warning: failed to install memory consistency checks; ");
- fprintf_unfiltered (gdb_stderr,
- "configuration should define NO_MMCHECK or MMCHECK_FORCE\n");
- }
-
- mmtrace ();
}
-
- #endif /* Have mmalloc and want corruption checking */
/* Called when a memory allocation fails, with the number of bytes of
memory requested in SIZE. */
--- 980,991 ----
free (ptr); /* NOTE: GDB's only call to free() */
}
! /* This used to do something interesting with USE_MMALLOC.
! * It can be retired any time. -- chastain 2004-01-19. */
void
init_malloc (void *md)
{
}
/* Called when a memory allocation fails, with the number of bytes of
memory requested in SIZE. */
Index: config/alpha/alpha-linux.mh
===================================================================
RCS file: /cvs/src/src/gdb/config/alpha/alpha-linux.mh,v
retrieving revision 1.11
diff -c -3 -p -r1.11 alpha-linux.mh
*** config/alpha/alpha-linux.mh 15 Jun 2003 20:56:47 -0000 1.11
--- config/alpha/alpha-linux.mh 19 Jan 2004 22:17:59 -0000
*************** NATDEPFILES= infptrace.o inftarg.o corel
*** 7,15 ****
LOADLIBES = -ldl -rdynamic
- MMALLOC =
- MMALLOC_CFLAGS = -DNO_MMALLOC
-
# doublest.c currently assumes some properties of FP arithmetic
# on the host which require this.
MH_CFLAGS = -mieee
--- 7,12 ----
Index: config/i386/go32.mh
===================================================================
RCS file: /cvs/src/src/gdb/config/i386/go32.mh,v
retrieving revision 1.7
diff -c -3 -p -r1.7 go32.mh
*** config/i386/go32.mh 2 Jan 2003 16:54:56 -0000 1.7
--- config/i386/go32.mh 19 Jan 2004 22:17:59 -0000
***************
*** 1,8 ****
# Host: Intel x86 running DJGPP
! # we don't need mmalloc on DJGPP
! MH_CFLAGS= -DNO_MMALLOC
! MMALLOC=
! MMALLOC_CFLAGS=
XM_FILE= xm-go32.h
--- 1,5 ----
# Host: Intel x86 running DJGPP
! MH_CFLAGS=
XM_FILE= xm-go32.h
Index: config/i386/interix.mh
===================================================================
RCS file: /cvs/src/src/gdb/config/i386/interix.mh,v
retrieving revision 1.1
diff -c -3 -p -r1.1 interix.mh
*** config/i386/interix.mh 1 Nov 2002 22:08:44 -0000 1.1
--- config/i386/interix.mh 19 Jan 2004 22:17:59 -0000
*************** NATDEPFILES= corelow.o core-regset.o for
*** 4,9 ****
procfs.o proc-api.o proc-events.o proc-flags.o proc-why.o
NAT_FILE= nm-interix.h
XM_FILE= xm-interix.h
- # The below may be temporary; mmalloc relies on sbrk() at the moment
- MMALLOC=
- MMALLOC_CFLAGS=-DNO_MMALLOC
--- 4,6 ----
Index: config/powerpc/xm-linux.h
===================================================================
RCS file: /cvs/src/src/gdb/config/powerpc/xm-linux.h,v
retrieving revision 1.8
diff -c -3 -p -r1.8 xm-linux.h
*** config/powerpc/xm-linux.h 2 Dec 2001 02:57:16 -0000 1.8
--- config/powerpc/xm-linux.h 19 Jan 2004 22:18:00 -0000
*************** Foundation, Inc., 59 Temple Place - Suit
*** 25,38 ****
to get the offset in the core file of the register values. */
#define KERNEL_U_ADDR 0x0
- /* If you expect to use the mmalloc package to obtain mapped symbol files,
- for now you have to specify some parameters that determine how gdb places
- the mappings in it's address space. See the comments in map_to_address()
- for details. This is expected to only be a short term solution. Yes it
- is a kludge.
- FIXME: Make this more automatic. */
-
- #define MMAP_BASE_ADDRESS 0x20000000 /* First mapping here */
- #define MMAP_INCREMENT 0x01000000 /* Increment to next mapping */
-
#endif /* #ifndef XM_LINUX_H */
--- 25,28 ----
Index: doc/gdbint.texinfo
===================================================================
RCS file: /cvs/src/src/gdb/doc/gdbint.texinfo,v
retrieving revision 1.181
diff -c -3 -p -r1.181 gdbint.texinfo
*** doc/gdbint.texinfo 17 Jan 2004 21:56:00 -0000 1.181
--- doc/gdbint.texinfo 19 Jan 2004 22:18:02 -0000
*************** This macro is used as the argument to @c
*** 2238,2249 ****
@code{bfd_seek}). FIXME, should be replaced by SEEK_SET instead,
which is the POSIX equivalent.
- @item MMAP_BASE_ADDRESS
- When using HAVE_MMAP, the first mapping should go at this address.
-
- @item MMAP_INCREMENT
- when using HAVE_MMAP, this is the increment between mappings.
-
@item NORETURN
If defined, this should be one or more tokens, such as @code{volatile},
that can be used in both the declaration and definition of functions to
--- 2238,2243 ----
*************** If defined, this should be one or more t
*** 2256,2292 ****
of functions to indicate that they never return. The default is already
set correctly if compiling with GCC. This will almost never need to be
defined.
-
- @item USE_MMALLOC
- @findex mmalloc
- @value{GDBN} will use the @code{mmalloc} library for memory allocation
- for symbol reading if this symbol is defined. Be careful defining it
- since there are systems on which @code{mmalloc} does not work for some
- reason. One example is the DECstation, where its RPC library can't
- cope with our redefinition of @code{malloc} to call @code{mmalloc}.
- When defining @code{USE_MMALLOC}, you will also have to set
- @code{MMALLOC} in the Makefile, to point to the @code{mmalloc} library. This
- define is set when you configure with @samp{--with-mmalloc}.
-
- @item NO_MMCHECK
- @findex mmcheck
- Define this if you are using @code{mmalloc}, but don't want the overhead
- of checking the heap with @code{mmcheck}. Note that on some systems,
- the C runtime makes calls to @code{malloc} prior to calling @code{main}, and if
- @code{free} is ever called with these pointers after calling
- @code{mmcheck} to enable checking, a memory corruption abort is certain
- to occur. These systems can still use @code{mmalloc}, but must define
- @code{NO_MMCHECK}.
-
- @item MMCHECK_FORCE
- Define this to 1 if the C runtime allocates memory prior to
- @code{mmcheck} being called, but that memory is never freed so we don't
- have to worry about it triggering a memory corruption abort. The
- default is 0, which means that @code{mmcheck} will only install the heap
- checking functions if there has not yet been any memory allocation
- calls, and if it fails to install the functions, @value{GDBN} will issue a
- warning. This is currently defined if you configure using
- @samp{--with-mmalloc}.
@item NO_SIGINTERRUPT
@findex siginterrupt
--- 2250,2255 ----