OpenADFortTk (including Open64 and OpenAnalysis references)
|
#include <segmented_array.h>
Public Types | |
typedef T | base_type |
typedef T | value_type |
typedef value_type * | pointer |
typedef const value_type * | const_pointer |
typedef value_type & | reference |
typedef const value_type & | const_reference |
typedef UINT | size_type |
typedef INT | difference_type |
typedef SEGMENTED_ARRAY_ITERATOR< self *, T, pointer, reference > | iterator |
typedef SEGMENTED_ARRAY_ITERATOR < const self *, T, const_pointer, const_reference > | const_iterator |
Public Member Functions | |
SEGMENTED_ARRAY (MEM_POOL *m=Malloc_Mem_Pool) | |
~SEGMENTED_ARRAY () | |
UINT | Block_size () const |
UINT | Size () const |
UINT | size () const |
T & | Entry (UINT idx) |
const T & | Entry (UINT idx) const |
T & | operator[] (UINT idx) |
const T & | operator[] (UINT idx) const |
iterator | begin () |
iterator | end () |
const_iterator | begin () const |
const_iterator | end () const |
T & | New_entry (UINT &idx) |
UINT | Insert (const T &x) |
void | Delete_last () |
void | Delete_last (UINT n) |
void | Delete_down_to (UINT idx) |
UINT | Insert (const T *x, UINT n_elemt) |
UINT | Transfer (T *x, UINT n_elemt) |
void | Reserve (UINT n_elemt) |
UINT | Get_block_size (UINT idx) const |
UINT | Block_index (UINT idx) const |
UINT | Block_index_end () const |
T * | Block_begin (UINT block_idx) |
const T * | Block_begin (UINT block_idx) const |
T * | Block_end (UINT block_idx) |
const T * | Block_end (UINT block_idx) const |
Private Types | |
typedef SEGMENTED_ARRAY< T, block_size > | self |
Private Member Functions | |
UINT | Round_up (UINT s) |
void | Update_Map (T *marker, UINT new_size, BOOL own_memory) |
void | Pop_Map () |
void | Allocate () |
T & | New_entry () |
void | Copy (const T *x, UINT n) |
UINT | next_block_idx (UINT block_idx) const |
Private Attributes | |
std::vector< std::pair< T *, BOOL >, mempool_allocator < std::pair< T *, BOOL > > > | map |
MEM_POOL * | pool |
UINT | size_ |
UINT | max_size_ |
INT | block_base |
UINT | next_block_size |
T * | block |
Definition at line 145 of file segmented_array.h.
typedef T SEGMENTED_ARRAY< T, block_size >::base_type |
Definition at line 163 of file segmented_array.h.
typedef SEGMENTED_ARRAY_ITERATOR<const self*, T, const_pointer, const_reference> SEGMENTED_ARRAY< T, block_size >::const_iterator |
Definition at line 177 of file segmented_array.h.
typedef const value_type* SEGMENTED_ARRAY< T, block_size >::const_pointer |
Definition at line 167 of file segmented_array.h.
typedef const value_type& SEGMENTED_ARRAY< T, block_size >::const_reference |
Definition at line 169 of file segmented_array.h.
typedef INT SEGMENTED_ARRAY< T, block_size >::difference_type |
Definition at line 171 of file segmented_array.h.
typedef SEGMENTED_ARRAY_ITERATOR<self*, T, pointer, reference> SEGMENTED_ARRAY< T, block_size >::iterator |
Definition at line 174 of file segmented_array.h.
typedef value_type* SEGMENTED_ARRAY< T, block_size >::pointer |
Definition at line 166 of file segmented_array.h.
typedef value_type& SEGMENTED_ARRAY< T, block_size >::reference |
Definition at line 168 of file segmented_array.h.
|
private |
Definition at line 160 of file segmented_array.h.
typedef UINT SEGMENTED_ARRAY< T, block_size >::size_type |
Definition at line 170 of file segmented_array.h.
typedef T SEGMENTED_ARRAY< T, block_size >::value_type |
Definition at line 165 of file segmented_array.h.
|
inline |
Definition at line 218 of file segmented_array.h.
|
inline |
Definition at line 224 of file segmented_array.h.
References MEM_POOL_FREE(), and pool.
|
private |
Definition at line 382 of file segmented_array.h.
References Is_True, MEM_POOL_Alloc, pool, and TRUE.
|
inline |
Definition at line 253 of file segmented_array.h.
Referenced by Make_Function_Type().
|
inline |
Definition at line 262 of file segmented_array.h.
|
inline |
Definition at line 314 of file segmented_array.h.
|
inline |
Definition at line 315 of file segmented_array.h.
|
inline |
Definition at line 317 of file segmented_array.h.
|
inline |
Definition at line 322 of file segmented_array.h.
|
inline |
Definition at line 309 of file segmented_array.h.
|
inline |
Definition at line 312 of file segmented_array.h.
|
inline |
Definition at line 236 of file segmented_array.h.
|
inlineprivate |
Definition at line 201 of file segmented_array.h.
References OA::n.
|
inline |
Definition at line 285 of file segmented_array.h.
|
inline |
Definition at line 276 of file segmented_array.h.
Referenced by Create_Special_Global_Symbols(), Make_Function_Type(), and Reset_ST_ATTR_Table_Size_explicit().
void SEGMENTED_ARRAY< T, block_size >::Delete_last | ( | UINT | n) |
Definition at line 406 of file segmented_array.h.
References OA::n.
|
inline |
Definition at line 257 of file segmented_array.h.
Referenced by Adjust_Type_Size(), Adjusted_Type_Size(), FLD_Verify_all(), Make_Function_Type(), and Upc_Lower_SymbolTable().
|
inline |
Definition at line 266 of file segmented_array.h.
|
inline |
Definition at line 241 of file segmented_array.h.
References Is_True.
Referenced by ST_ATTR_TABLE::operator()(), and ST_ATTR_TABLE::operator[]().
|
inline |
Definition at line 246 of file segmented_array.h.
References Is_True.
|
inline |
Definition at line 304 of file segmented_array.h.
Referenced by Copy_array_range(), Find_entry_if(), For_all_blocks(), and For_all_entries().
|
inline |
Definition at line 420 of file segmented_array.h.
References idx.
Referenced by Copy_array_range(), Copy_BLK(), Copy_TY(), Declare_Func_N_Arg(), Declare_Function(), Enter_tcon(), Init_Constab(), and sexp2whirl::TranslateGlobalSymbolTables().
UINT SEGMENTED_ARRAY< T, block_size >::Insert | ( | const T * | x, |
UINT | n_elemt | ||
) |
Definition at line 432 of file segmented_array.h.
|
inlineprivate |
Definition at line 195 of file segmented_array.h.
Referenced by Copy_INITV(), Initialize_Symbol_Tables(), Irb_Init_Block(), Irb_Init_Label(), Irb_Init_Pad(), Irb_Init_predefined_integer(), Irb_Init_Symdiff(), Irb_Init_Symoff(), Irb_Init_Val(), New_ARB(), New_BLK(), New_FLD(), New_INITO(), New_INITV(), New_PU(), New_Scope(), New_ST_ATTR_explicit(), New_TY(), New_TYLIST(), Push_Equiv_Visit_Order(), and sexp2whirl::TranslateGlobalSymbolTables().
|
inline |
Definition at line 272 of file segmented_array.h.
References SEGMENTED_ARRAY< T, block_size >::New_entry().
Referenced by SEGMENTED_ARRAY< T, block_size >::New_entry().
|
inlineprivate |
Definition at line 208 of file segmented_array.h.
|
inline |
Definition at line 250 of file segmented_array.h.
|
inline |
Definition at line 251 of file segmented_array.h.
|
private |
Definition at line 348 of file segmented_array.h.
References idx, Is_True, MEM_POOL_FREE(), NULL, and pool.
|
inline |
Definition at line 298 of file segmented_array.h.
Referenced by Copy_array_range().
|
inlineprivate |
Definition at line 183 of file segmented_array.h.
|
inline |
Definition at line 238 of file segmented_array.h.
Referenced by ARB_Table_Size(), FLD_Table_Size(), Init_Constab(), INITO_Table_Size(), INITV_Next_Idx(), INITV_Table_Size(), IPO_SYMTAB::IPO_SYMTAB(), ir_b_write_global_symtab(), ir_b_write_local_symtab(), Make_Function_Type(), Print_Inits(), Print_local_symtab(), PU_Table_Size(), Push_Equiv_Visit_Order(), ST_ATTR_Table_Size_explicit(), ST_Verify_Fields(), STB_size(), TCON_Table_Size(), TY_Table_Size(), and TYLIST_Table_Size().
|
inline |
Definition at line 239 of file segmented_array.h.
Referenced by Copy_array_range(), Find_entry_if(), For_all_blocks(), and For_all_entries().
UINT SEGMENTED_ARRAY< T, block_size >::Transfer | ( | T * | x, |
UINT | n_elemt | ||
) |
Definition at line 454 of file segmented_array.h.
References FALSE.
Referenced by WN_get_global_symtab(), and xlate_SYMTAB().
|
inlineprivate |
Definition at line 332 of file segmented_array.h.
|
private |
Definition at line 158 of file segmented_array.h.
|
private |
Definition at line 154 of file segmented_array.h.
|
private |
Definition at line 149 of file segmented_array.h.
|
private |
Definition at line 153 of file segmented_array.h.
|
private |
Definition at line 157 of file segmented_array.h.
|
private |
Definition at line 151 of file segmented_array.h.
|
private |
Definition at line 152 of file segmented_array.h.