aboutsummaryrefslogtreecommitdiff
path: root/gcc/ggc.h
diff options
context:
space:
mode:
authorRichard Henderson <rth@redhat.com>2004-01-28 10:49:26 -0800
committerRichard Henderson <rth@gcc.gnu.org>2004-01-28 10:49:26 -0800
commit685fe0325cddc64776cc8e6c504ef40b35c846e0 (patch)
treeb2610d09544f2d611e1c960a1c767328e33944ed /gcc/ggc.h
parent42e5a9b95768990d55a44628a1faa1f7a3d0ab31 (diff)
downloadgcc-685fe0325cddc64776cc8e6c504ef40b35c846e0.zip
gcc-685fe0325cddc64776cc8e6c504ef40b35c846e0.tar.gz
gcc-685fe0325cddc64776cc8e6c504ef40b35c846e0.tar.bz2
ggc.h (ggc_free): Declare.
* ggc.h (ggc_free): Declare. * ggc-common.c (ggc_realloc): Use it. * ggc-page.c: Remove lots of inline markers. (globals): Add free_object_list. (ggc_alloc): Tidy. (ggc_free, validate_free_objects): New. (poison_pages): Provide default. (ggc_collect): Call validate_free_objects; emit markers to the debug file. From-SVN: r76801
Diffstat (limited to 'gcc/ggc.h')
-rw-r--r--gcc/ggc.h2
1 files changed, 2 insertions, 0 deletions
diff --git a/gcc/ggc.h b/gcc/ggc.h
index 8add2da..fbd1e34 100644
--- a/gcc/ggc.h
+++ b/gcc/ggc.h
@@ -223,6 +223,8 @@ extern void *ggc_alloc_cleared_zone (size_t, struct alloc_zone *);
extern void *ggc_realloc (void *, size_t);
/* Like ggc_alloc_cleared, but performs a multiplication. */
extern void *ggc_calloc (size_t, size_t);
+/* Free a block. To be used when known for certain it's not reachable. */
+extern void ggc_free (void *);
#define ggc_alloc_rtx(CODE) \
((rtx) ggc_alloc_typed (gt_ggc_e_7rtx_def, RTX_SIZE (CODE)))