30#include "gtype-desc.h"
48 size_t length_override = (
size_t)-1);
73#define LAST_GGC_ROOT_TAB { NULL, 0, 0, NULL, NULL }
81#define ggc_test_and_set_mark(EXPR) \
82 ((EXPR) != NULL && ((void *) (EXPR)) != (void *) 1 && ! ggc_set_mark (EXPR))
84#define ggc_mark(EXPR) \
86 const void *const a__ = (EXPR); \
87 if (a__ != NULL && a__ != (void *) 1) \
161#define GGC_RESIZEVEC(T, P, N) \
162 ((T *) ggc_realloc ((P), (N) * sizeof (T) MEM_STAT_INFO))
168 static_cast<T *
> (p)->~T ();
175#if GCC_VERSION >= 4003
176 return !__has_trivial_destructor (T);
268#define ggc_strdup(S) ggc_alloc_string ((S), -1 MEM_STAT_INFO)
304#define ggc_alloc_rtvec_sized(NELT) \
305 (rtvec_def *) ggc_internal_alloc (sizeof (struct rtvec_def) \
306 + ((NELT) - 1) * sizeof (rtx)) \
316inline union tree_node *
322inline union tree_node *
void(* gt_pointer_operator)(void *, void *, void *)
Definition coretypes.h:473
void ggc_grow(void)
Definition ggc-none.cc:72
union tree_node * ggc_alloc_tree_node_stat(size_t s CXX_MEM_STAT_INFO)
Definition ggc.h:317
const char * ggc_alloc_string(const char *contents, int length CXX_MEM_STAT_INFO)
Definition stringpool.cc:83
void dump_ggc_loc_statistics()
Definition ggc-common.cc:1247
void init_stringpool(void)
Definition stringpool.cc:48
void(* gt_pointer_walker)(void *)
Definition ggc.h:62
void init_ggc_heuristics(void)
Definition ggc-common.cc:1097
void * ggc_alloc_atomic(size_t s CXX_MEM_STAT_INFO)
Definition ggc.h:246
int gt_pch_note_object(void *, void *, gt_note_pointers, size_t length_override=(size_t) -1)
Definition ggc-common.cc:267
void ggc_free(void *)
Definition genmatch.cc:42
#define ggc_test_and_set_mark(EXPR)
Definition ggc.h:81
void * ggc_internal_alloc(size_t, void(*)(void *), size_t, size_t CXX_MEM_STAT_INFO) ATTRIBUTE_MALLOC
Definition ggc-none.cc:44
void gt_ggc_m_S(const void *)
Definition ggc-page.cc:1464
void gt_pch_nx(const char *)
Definition ggc.h:341
T * ggc_alloc(ALONE_CXX_MEM_STAT_INFO)
Definition ggc.h:184
T * ggc_alloc_no_dtor(ALONE_CXX_MEM_STAT_INFO)
Definition ggc.h:200
void gt_pch_note_reorder(void *, void *, gt_handle_reorder)
Definition ggc-common.cc:318
void ggc_print_statistics(void)
Definition ggc-page.cc:2286
void * ggc_realloc(void *, size_t CXX_MEM_STAT_INFO)
bool ggc_set_mark(const void *)
Definition ggc-page.cc:1545
void gt_pch_restore(FILE *f)
Definition ggc-common.cc:744
T * ggc_cleared_vec_alloc(size_t c CXX_MEM_STAT_INFO)
Definition ggc.h:233
bool ggc_protect_identifiers
Definition ggc-common.cc:35
void gt_ggc_mx(const char *s)
Definition ggc.h:335
void(* gt_handle_reorder)(void *, void *, gt_pointer_operator, void *)
Definition ggc.h:43
void ggc_delete(T *ptr)
Definition ggc.h:255
T * ggc_vec_alloc(size_t c CXX_MEM_STAT_INFO)
Definition ggc.h:221
bool need_finalization_p()
Definition ggc.h:173
void gt_pch_n_S(const void *)
Definition stringpool.cc:217
void(* gt_note_pointers)(void *, void *, gt_pointer_operator, void *)
Definition ggc.h:35
const struct ggc_root_tab *const gt_ggc_deletable_rtab[]
void ggc_common_finalize()
Definition ggc-common.cc:1312
size_t ggc_round_alloc_size(size_t requested_size)
Definition ggc-none.cc:38
void gt_pch_save(FILE *f)
Definition ggc-common.cc:511
void ggc_register_root_tab(const struct ggc_root_tab *)
Definition ggc-common.cc:60
void ggc_trim(void)
Definition ggc-none.cc:77
void init_ggc(void)
Definition ggc-page.cc:1733
T * ggc_cleared_alloc(ALONE_CXX_MEM_STAT_INFO)
Definition ggc.h:208
void * ggc_internal_cleared_alloc(size_t, void(*)(void *), size_t, size_t CXX_MEM_STAT_INFO) ATTRIBUTE_MALLOC
Definition genmatch.cc:37
struct rtx_def * ggc_alloc_rtx_def_stat(size_t s CXX_MEM_STAT_INFO)
Definition ggc.h:311
void gt_pch_note_callback(void *, void *)
Definition ggc-common.cc:300
gimple * ggc_alloc_cleared_gimple_statement_stat(size_t s CXX_MEM_STAT_INFO)
Definition ggc.h:329
ggc_collect
Definition ggc.h:272
@ GGC_COLLECT_FORCE
Definition ggc.h:274
@ GGC_COLLECT_HEURISTIC
Definition ggc.h:273
void stringpool_statistics(void)
Definition stringpool.cc:149
void report_heap_memory_use(void)
Definition ggc-common.cc:1295
const struct ggc_root_tab *const gt_ggc_rtab[]
const struct ggc_root_tab *const gt_pch_scalar_rtab[]
bool ggc_marked_p(const void *)
Definition ggc-page.cc:1581
void gt_pch_n_S2(const void *, size_t)
Definition stringpool.cc:224
union tree_node * ggc_alloc_cleared_tree_node_stat(size_t s CXX_MEM_STAT_INFO)
Definition ggc.h:323
#define ALONE_CXX_MEM_STAT_INFO
Definition statistics.h:57
#define PASS_MEM_STAT
Definition statistics.h:54
#define CXX_MEM_STAT_INFO
Definition statistics.h:58
size_t stride
Definition ggc.h:69
void * base
Definition ggc.h:67
gt_pointer_walker pchw
Definition ggc.h:71
gt_pointer_walker cb
Definition ggc.h:70
size_t nelt
Definition ggc.h:68
#define NULL
Definition system.h:50
static void finalize()
Definition toplev.cc:2048