diff options
Diffstat (limited to 'gdb/mmap-alloc.c')
-rwxr-xr-x | gdb/mmap-alloc.c | 159 |
1 files changed, 0 insertions, 159 deletions
diff --git a/gdb/mmap-alloc.c b/gdb/mmap-alloc.c index d1ac6e4..e69de29 100755 --- a/gdb/mmap-alloc.c +++ b/gdb/mmap-alloc.c @@ -1,159 +0,0 @@ -/* GDB support for special malloc using mmap. - Copyright 1992 Free Software Foundation, Inc. - Contributed by Cygnus Support, using pieces from other GDB modules. - -This file is part of GDB. - -This program is free software; you can redistribute it and/or modify -it under the terms of the GNU General Public License as published by -the Free Software Foundation; either version 2 of the License, or -(at your option) any later version. - -This program is distributed in the hope that it will be useful, -but WITHOUT ANY WARRANTY; without even the implied warranty of -MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -GNU General Public License for more details. - -You should have received a copy of the GNU General Public License -along with this program; if not, write to the Free Software -Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. */ - -#include "defs.h" - -#if defined (HAVE_MMAP) - -/* Redefine the external visible symbols in gmalloc.c to be mmap versions */ - -#define free _mmap_free -#define malloc _mmap_malloc -#define realloc _mmap_realloc -#define valloc _mmap_valloc - -#define _bytes_free _mmap__bytes_free -#define _bytes_used _mmap__bytes_used -#define _chunks_free _mmap__chunks_free -#define _chunks_used _mmap__chunks_used -#define _fraghead _mmap__fraghead -#define _heapbase _mmap__heapbase -#define _heapindex _mmap__heapindex -#define _heapinfo _mmap__heapinfo -#define _heaplimit _mmap__heaplimit - -#define __default_morecore _mmap___default_morecore -#define __free _mmap___free -#define __free_hook _mmap___free_hook -#define __malloc_hook _mmap___malloc_hook -#define __malloc_initialized _mmap___malloc_initialized -#define __morecore _mmap___morecore -#define __realloc_hook _mmap___realloc_hook - -/* Arrange that instead of calling sbrk() we call mmap_sbrk() */ - -#define sbrk mmap_sbrk - -/* Now simply include the standard GNU malloc source, and all the - externally visible symbols will become _mmap_* versions, and - _mmap_sbrk will be called to get more core instead of sbrk. */ - -#include "gmalloc.c" - -/* Like mmap_malloc but get error if no storage available. */ - -PTR -mmap_xmalloc (size) - long size; -{ - register char *val = NULL; - - /* Protect against gdb wanting to allocate zero bytes. */ - - if (size > 0) - { - if ((val = (char *) _mmap_malloc (size)) == NULL) - { - fatal ("virtual memory exhausted.", 0); - } - } - return (val); -} - -/* Like mmap_realloc but get error if no storage available. */ - -PTR -mmap_xrealloc (ptr, size) - PTR ptr; - long size; -{ - register char *val; - - if ((val = (char *) _mmap_realloc (ptr, size)) == NULL) - { - fatal ("virtual memory exhausted.", 0); - } - return (val); -} - -PTR -mmap_malloc (size) - long size; -{ - return (_mmap_malloc (size)); -} - -PTR -mmap_realloc (ptr, size) - PTR ptr; - long size; -{ - return (_mmap_realloc (ptr, size)); -} - -void -mmap_free (ptr) - PTR ptr; -{ - _mmap_free (ptr); -} - -#else /* !defined (HAVE_MMAP) */ - -static char *errmsg = "This version of gdb does not support dumpable state."; - -PTR -mmap_malloc (size) - long size; -{ - error (errmsg); -} - -PTR -mmap_xmalloc (size) - long size; -{ - error (errmsg); -} - -PTR -mmap_realloc (ptr, size) - PTR ptr; - long size; -{ - error (errmsg); -} - -PTR -mmap_xrealloc (ptr, size) - PTR ptr; - long size; -{ - error (errmsg); -} - -void -mmap_free (ptr) - PTR ptr; -{ - error (errmsg); -} - -#endif /* HAVE_MMAP */ |