GCC Middle and Back End API Reference
ggc-none.cc File Reference
#include "config.h"
#include "system.h"
#include "coretypes.h"
#include "hash-table.h"
Include dependency graph for ggc-none.cc:

Functions

size_t ggc_round_alloc_size (size_t requested_size)
void * ggc_internal_alloc (size_t size, void(*f)(void *), size_t, size_t MEM_STAT_DECL)
void * ggc_internal_cleared_alloc (size_t size, void(*f)(void *), size_t, size_t MEM_STAT_DECL)
void * ggc_internal_alloc_no_dtor (size_t size, void(*f)(void *), size_t s, size_t n MEM_STAT_DECL)
void * ggc_internal_cleared_alloc_no_dtor (size_t size, void(*f)(void *), size_t s, size_t n MEM_STAT_DECL)
void * ggc_realloc_stat (void *x, size_t size MEM_STAT_DECL)
void ggc_free (void *p)
void ggc_grow (void)
void ggc_trim (void)

Function Documentation

◆ ggc_free()

void ggc_free ( void * p)
Free a block. To be used when known for certain it's not reachable.

References free().

◆ ggc_grow()

void ggc_grow ( void )
Assume that all GGC memory is reachable and grow the limits for next collection.

Referenced by ipa_read_optimization_summaries_1(), and ipa_read_summaries_1().

◆ ggc_internal_alloc()

◆ ggc_internal_alloc_no_dtor()

void * ggc_internal_alloc_no_dtor ( size_t size,
void(* )(void *),
size_t s,
size_t n MEM_STAT_DECL )

◆ ggc_internal_cleared_alloc()

void * ggc_internal_cleared_alloc ( size_t size,
void(* )(void *),
size_t ,
size_t MEM_STAT_DECL )
Allocates cleared memory.
Generate pattern matching and transform code shared between GENERIC and GIMPLE folding code from match-and-simplify description. Copyright (C) 2014-2025 Free Software Foundation, Inc. Contributed by Richard Biener <rguenther@suse.de> and Prathamesh Kulkarni <bilbotheelffriend@gmail.com> This file is part of GCC. GCC 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 3, or (at your option) any later version. GCC 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 GCC; see the file COPYING3. If not see <http://www.gnu.org/licenses/>.
Stubs for GGC referenced through instantiations triggered by hash-map.

References gcc_assert, and MEM_STAT_DECL.

Referenced by ggc_alloc_cleared_gimple_statement_stat(), ggc_alloc_cleared_tree_node_stat(), ggc_cleared_alloc(), ggc_cleared_vec_alloc(), and ggc_internal_cleared_alloc_no_dtor().

◆ ggc_internal_cleared_alloc_no_dtor()

void * ggc_internal_cleared_alloc_no_dtor ( size_t size,
void(* )(void *),
size_t s,
size_t n MEM_STAT_DECL )

◆ ggc_realloc_stat()

void * ggc_realloc_stat ( void * x,
size_t size MEM_STAT_DECL )

References MEM_STAT_DECL.

◆ ggc_round_alloc_size()

size_t ggc_round_alloc_size ( size_t requested_size)
Null garbage collection for the GNU compiler. Copyright (C) 1998-2025 Free Software Foundation, Inc. This file is part of GCC. GCC 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 3, or (at your option) any later version. GCC 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 GCC; see the file COPYING3. If not see <http://www.gnu.org/licenses/>.
This version is used by the gen* programs and certain language-specific targets (such as java), where we don't really need GC at all. This prevents problems with pulling in all the tree stuff.
For a given size of memory requested for allocation, return the actual size that is going to be allocated.

Referenced by general_init().

◆ ggc_trim()

void ggc_trim ( void )
Return unused memory pages to the system.

Referenced by ipa_free_fn_summary().