GCC Middle and Back End API Reference
|
#include <vec.h>
Public Types | |
typedef vl_embed | default_layout |
Public Member Functions | |
template<typename T, typename A> | |
void | reserve (vec< T, A, vl_embed > *&v, unsigned reserve, bool exact MEM_STAT_DECL) |
Static Public Member Functions | |
template<typename T, typename A> | |
static void | reserve (vec< T, A, vl_embed > *&, unsigned, bool CXX_MEM_STAT_INFO) |
template<typename T, typename A> | |
static void | release (vec< T, A, vl_embed > *&v) |
Allocator type for GC vectors. Notice that we need the structure declaration even if GC is not enabled.
typedef vl_embed va_gc::default_layout |
Free GC memory used by V and reset V to NULL.
References ggc_free(), and NULL.
|
static |
References CXX_MEM_STAT_INFO.
Referenced by reserve().
void va_gc::reserve | ( | vec< T, A, vl_embed > *& | v, |
unsigned | reserve, | ||
bool exact | MEM_STAT_DECL ) |
Allocator for GC memory. Ensure there are at least RESERVE free slots in V. If EXACT is true, grow exactly, else grow exponentially. As a special case, if the vector had not been allocated and RESERVE is 0, no vector will be created.
References vec_prefix::calculate_allocation(), ggc_free(), ggc_realloc(), ggc_round_alloc_size(), MEM_STAT_DECL, NULL, PASS_MEM_STAT, reserve(), and T.