GCC Middle and Back End API Reference
va_gc Struct Reference

#include <vec.h>

Inheritance diagram for va_gc:

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)

Detailed Description

Allocator type for GC vectors.  Notice that we need the structure
   declaration even if GC is not enabled.   

Member Typedef Documentation


Member Function Documentation

template<typename T , typename A >
void va_gc::release ( vec< T, A, vl_embed > *&  v)
inlinestatic
Free GC memory used by V and reset V to NULL.   

References ggc_free().

template<typename T , typename A >
static void va_gc::reserve ( vec< T, A, vl_embed > *&  ,
unsigned  ,
bool  CXX_MEM_STAT_INFO 
)
static
template<typename T , typename A >
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 and RESERVE is 0, no vector will be created.   

References vec_prefix::calculate_allocation(), vec< T, A, vl_embed >::embedded_init(), ggc_free(), ggc_realloc_stat(), ggc_round_alloc_size(), vec< T, A, vl_embed >::length(), T, and vec< T, A, vl_embed >::vecpfx_.


The documentation for this struct was generated from the following file: