osprey/ipa/common/ipc_ty_hash.h File Reference

This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Defines

#define IN_SET(__set, __element)   (__set.find(__element) != __set.end())
#define NOT_IN_SET(__set, __element)   (__set.find(__element) == __set.end())

Typedefs

typedef vector< TY_IDXTY_IDX_VEC

Functions/Subroutines

static BOOL Valid_TY_IDX (TY_IDX ty_idx)
static void Set_TY_Merging (TY_IDX &ty_idx)
static BOOL TY_Merging (TY_IDX ty_idx)
static void Set_TY_Temp_Idx (TY_IDX &ty_idx, TY_IDX temp)
static void Clear_TY_Temp_Idx (TY_IDX &ty_idx)
static BOOL Is_TY_Temp_Idx (TY_IDX ty_idx)
static TY_IDX TY_Temp_Idx (TY_IDX_MAP &ty_map, TY_IDX old_idx)
static void Set_TY_Inserted (TY_IDX &ty_idx, TY_IDX new_idx)
static BOOL TY_Inserted (TY_IDX ty_idx)
static void Clean_TY_IDX (TY_IDX &ty_idx)
static TY_IDX TY_IDX_Attributes (TY_IDX ty_idx)
BOOL Partial_Compare_Fld (FLD_HANDLE merged_fld, const FLD *new_fld)
BOOL Partial_Compare_Arb (ARB_HANDLE merged_arb, const ARB *new_arb)
void Initialize_Type_Merging_Hash_Tables (MEM_POOL *pool)
void Setup_Type_Merging_Hash_Tables (const IPC_GLOBAL_TABS &original_tabs, IPC_GLOBAL_IDX_MAP &idx_map)
TY_IDX Insert_Unique_Ty (const TY &ty)
void Insert_Allocated_Ty (TY &ty, TY_IDX ty_idx)
BOOL TY_is_incomplete_struct (const TY &ty)
void Insert_Recursive_Type (TY_IDX ty_idx)
BOOL TY_is_incomplete_struct (TY_IDX tyi)
TY_IDX TY_IDX_without_attribute (TY_IDX tyi)
void Initialize_New_Recursive_Type (TY_IDX ty_idx)
void Finalize_New_Recursive_Type ()
void Find_Matching_Ty (const TY &ty, TY_IDX_VEC &matched_list)

Variables

const UINT TY_INDEX_IS_VISITED = 0x1
const UINT TY_INDEX_IS_TEMP = 0x2
const UINT TY_INDEX_IS_INSERTED = 0x4


Define Documentation

#define IN_SET ( __set,
__element   )     (__set.find(__element) != __set.end())

Definition at line 139 of file ipc_ty_hash.h.

Referenced by Commit_Recursive_Type(), Insert_Ty(), and Is_Incomplete_Or_Recursive().

#define NOT_IN_SET ( __set,
__element   )     (__set.find(__element) == __set.end())

Definition at line 140 of file ipc_ty_hash.h.


Typedef Documentation

typedef vector<TY_IDX> TY_IDX_VEC

Definition at line 172 of file ipc_ty_hash.h.


Function Documentation

static void Clean_TY_IDX ( TY_IDX ty_idx  )  [inline, static]

static void Clear_TY_Temp_Idx ( TY_IDX ty_idx  )  [inline, static]

Definition at line 75 of file ipc_ty_hash.h.

References TY_INDEX_IS_TEMP.

Referenced by Clear_All_Temp_Idx().

void Finalize_New_Recursive_Type (  ) 

Definition at line 1224 of file ipc_ty_hash.cxx.

References i, Insert_Recursive_Type(), and Is_True.

Referenced by Insert_Ty_Specific().

void Find_Matching_Ty ( const TY ty,
TY_IDX_VEC matched_list 
)

Definition at line 1246 of file ipc_ty_hash.cxx.

References File_Idx(), first, and make_TY_IDX().

Referenced by Find_Recursive_Type().

void Initialize_New_Recursive_Type ( TY_IDX  ty_idx  ) 

Definition at line 1213 of file ipc_ty_hash.cxx.

References Is_True.

Referenced by Insert_Ty_Specific().

void Initialize_Type_Merging_Hash_Tables ( MEM_POOL pool  ) 

Definition at line 1000 of file ipc_ty_hash.cxx.

void Insert_Allocated_Ty ( TY ty,
TY_IDX  ty_idx 
)

void Insert_Recursive_Type ( TY_IDX  ty_idx  ) 

TY_IDX Insert_Unique_Ty ( const TY ty  ) 

static BOOL Is_TY_Temp_Idx ( TY_IDX  ty_idx  )  [inline, static]

BOOL Partial_Compare_Arb ( ARB_HANDLE  merged_arb,
const ARB new_arb 
)

Definition at line 641 of file ipc_ty_hash.cxx.

References ARB_dimension(), ARB_equal(), ARB::dimension, FALSE, i, TRUE, and UINT.

BOOL Partial_Compare_Fld ( FLD_HANDLE  merged_fld,
const FLD new_fld 
)

static void Set_TY_Inserted ( TY_IDX ty_idx,
TY_IDX  new_idx 
) [inline, static]

Definition at line 95 of file ipc_ty_hash.h.

References Replace_TY_IDX_index(), and TY_INDEX_IS_INSERTED.

Referenced by Insert_Ty_Specific().

static void Set_TY_Merging ( TY_IDX ty_idx  )  [inline, static]

Definition at line 57 of file ipc_ty_hash.h.

References TY_INDEX_IS_VISITED.

Referenced by Insert_Ty().

static void Set_TY_Temp_Idx ( TY_IDX ty_idx,
TY_IDX  temp 
) [inline, static]

Definition at line 69 of file ipc_ty_hash.h.

References TY_INDEX_IS_TEMP.

Referenced by Validate_Recursive_Type().

void Setup_Type_Merging_Hash_Tables ( const IPC_GLOBAL_TABS original_tabs,
IPC_GLOBAL_IDX_MAP idx_map 
)

static TY_IDX TY_IDX_Attributes ( TY_IDX  ty_idx  )  [inline, static]

Definition at line 114 of file ipc_ty_hash.h.

Referenced by New_Partial_Match(), and Partial_Match().

TY_IDX TY_IDX_without_attribute ( TY_IDX  tyi  )  [inline]

Definition at line 157 of file ipc_ty_hash.h.

References TY_ALIGN.

static BOOL TY_Inserted ( TY_IDX  ty_idx  )  [inline, static]

BOOL TY_is_incomplete_struct ( TY_IDX  tyi  )  [inline]

Definition at line 152 of file ipc_ty_hash.h.

References TY_is_incomplete_struct(), and Ty_Table.

BOOL TY_is_incomplete_struct ( const TY ty  )  [inline]

static BOOL TY_Merging ( TY_IDX  ty_idx  )  [inline, static]

Definition at line 63 of file ipc_ty_hash.h.

References TY_INDEX_IS_VISITED.

Referenced by Insert_Ty_Specific().

static TY_IDX TY_Temp_Idx ( TY_IDX_MAP ty_map,
TY_IDX  old_idx 
) [inline, static]

Definition at line 87 of file ipc_ty_hash.h.

References TY_IDX_MAP::map_, TY_IDX_index(), and TY_INDEX_IS_TEMP.

static BOOL Valid_TY_IDX ( TY_IDX  ty_idx  )  [inline, static]


Variable Documentation

Definition at line 47 of file ipc_ty_hash.h.

Referenced by Set_TY_Inserted(), and TY_Inserted().

const UINT TY_INDEX_IS_TEMP = 0x2

Definition at line 46 of file ipc_ty_hash.h.

Referenced by Clear_TY_Temp_Idx(), Is_TY_Temp_Idx(), Set_TY_Temp_Idx(), and TY_Temp_Idx().

Definition at line 45 of file ipc_ty_hash.h.

Referenced by Set_TY_Merging(), and TY_Merging().


Generated on Wed Apr 8 15:09:39 2009 for Open64 by  doxygen 1.5.6