OpenADFortTk (including Open64 and OpenAnalysis references)
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros
IPO_SYMTAB Class Reference

#include <clone.h>

Collaboration diagram for IPO_SYMTAB:
Collaboration graph

Classes

struct  fix_base
 
struct  fix_table_entry
 
struct  promote_entry
 

Public Member Functions

 IPO_SYMTAB (SCOPE *orig_scope_tab, SYMTAB_IDX symtab_idx, MEM_POOL *m)
 
 IPO_SYMTAB (SCOPE *orig_scope_tab, SCOPE *cloned_scope_tab, SYMTAB_IDX orig_symtab_idx, SYMTAB_IDX cloned_symtab_idx, MEM_POOL *m, BOOL Same_file=TRUE)
 
void New_Symtab ()
 
void Update_Symtab (BOOL)
 
void Promote_Statics ()
 
INITO_IDX Copy_INITO (INITO_IDX orig_init=0)
 
INITV_IDX Clone_INITVs_For_EH (INITV_IDX, INITO_IDX)
 
SCOPEGet_orig_scope_tab () const
 
SCOPEGet_cloned_scope_tab () const
 
SYMTAB_IDX Get_orig_level () const
 
SYMTAB_IDX Get_cloned_level () const
 
UINT Get_cloned_st_last_idx () const
 
UINT Get_cloned_inito_last_idx () const
 
void Set_cloned_inito_last_idx (UINT idx)
 
UINT Get_cloned_label_last_idx () const
 
void Set_cloned_label_last_idx (UINT idx)
 
UINT Get_cloned_preg_last_idx () const
 
UINT Get_cloned_st_attr_last_idx () const
 
BOOL Is_new_clone () const
 
BOOL Same_file () const
 
void Set_Cloned_Symtab (SCOPE *scope_tab)
 
void Set_Cloned_ST (ST *old_st, ST *new_st)
 
STGet_Cloned_ST (ST *old_st)
 
void Hide_Cloned_ST (ST *st)
 
void Set_Cloned_INITO (INITO *old_inito, INITO_IDX new_inito)
 
INITO_IDX Get_Cloned_INITO_IDX (INITO *old_inito)
 
STGet_ST (ST *old_st)
 
INITO_IDX Get_INITO_IDX (INITO_IDX old_inito)
 
INITOGet_INITO (INITO_IDX idx)
 
STGet_Orig_ST (ST_IDX idx)
 
STIPO_Copy_ST (ST *st, SYMTAB_IDX scope)
 
BOOL Is_Cloned_ST (ST *st)
 

Private Member Functions

void Copy_Local_Tables (BOOL)
 

Private Attributes

SCOPE_orig_scope_tab
 
SCOPE_cloned_scope_tab
 
SYMTAB_IDX _orig_level
 
SYMTAB_IDX _cloned_level
 
MEM_POOL_mem
 
IPO_ADDR_HASH_hash_maps
 
BOOL _same_file
 
UINT _cloned_st_last_idx
 
UINT _cloned_inito_last_idx
 
UINT _cloned_label_last_idx
 
UINT _cloned_preg_last_idx
 
UINT _cloned_st_attr_last_idx
 
BOOL _is_new_clone
 

Detailed Description

Definition at line 164 of file clone.h.

Constructor & Destructor Documentation

IPO_SYMTAB::IPO_SYMTAB ( SCOPE orig_scope_tab,
SYMTAB_IDX  symtab_idx,
MEM_POOL m 
)
inline

Definition at line 247 of file clone.h.

References CXX_NEW, and TRUE.

IPO_SYMTAB::IPO_SYMTAB ( SCOPE orig_scope_tab,
SCOPE cloned_scope_tab,
SYMTAB_IDX  orig_symtab_idx,
SYMTAB_IDX  cloned_symtab_idx,
MEM_POOL m,
BOOL  Same_file = TRUE 
)
inline

Member Function Documentation

INITO_IDX IPO_SYMTAB::Copy_INITO ( INITO_IDX  orig_init = 0)

Definition at line 802 of file clone.cxx.

References FALSE, and FmtAssert.

Referenced by IPO_CLONE::New_Clone().

void IPO_SYMTAB::Copy_Local_Tables ( BOOL  label_only)
private
INITO_IDX IPO_SYMTAB::Get_Cloned_INITO_IDX ( INITO old_inito)
inline

Definition at line 319 of file clone.h.

Referenced by IPO_CLONE::Clone_Tree(), and IPO_CLONE::Fix_INITO().

UINT IPO_SYMTAB::Get_cloned_inito_last_idx ( ) const
inline

Definition at line 298 of file clone.h.

UINT IPO_SYMTAB::Get_cloned_label_last_idx ( ) const
inline

Definition at line 300 of file clone.h.

Referenced by Clone_INITVs_For_EH(), DST_enter_cloned_childs(), and IPO_CLONE::Fix_ST().

SYMTAB_IDX IPO_SYMTAB::Get_cloned_level ( ) const
inline

Definition at line 296 of file clone.h.

Referenced by DST_enter_cloned_childs(), and DST_enter_inlined_subroutine().

UINT IPO_SYMTAB::Get_cloned_preg_last_idx ( ) const
inline

Definition at line 302 of file clone.h.

Referenced by IPO_CLONE::Fix_ST().

SCOPE* IPO_SYMTAB::Get_cloned_scope_tab ( ) const
inline

Definition at line 294 of file clone.h.

Referenced by DRA_Add_Clone().

ST* IPO_SYMTAB::Get_Cloned_ST ( ST old_st)
inline
UINT IPO_SYMTAB::Get_cloned_st_attr_last_idx ( ) const
inline

Definition at line 303 of file clone.h.

UINT IPO_SYMTAB::Get_cloned_st_last_idx ( ) const
inline

Definition at line 297 of file clone.h.

INITO* IPO_SYMTAB::Get_INITO ( INITO_IDX  idx)
inline

Definition at line 331 of file clone.h.

References INITO_IDX_index(), and INITO_IDX_level().

Referenced by IPO_CLONE::Fix_INITO().

Here is the call graph for this function:

INITO_IDX IPO_SYMTAB::Get_INITO_IDX ( INITO_IDX  old_inito)
inline

Definition at line 327 of file clone.h.

References INITO_IDX_index(), and make_INITO_IDX().

Referenced by IPO_CLONE::Fix_INITO().

Here is the call graph for this function:

SYMTAB_IDX IPO_SYMTAB::Get_orig_level ( ) const
inline
SCOPE* IPO_SYMTAB::Get_orig_scope_tab ( ) const
inline
ST* IPO_SYMTAB::Get_Orig_ST ( ST_IDX  idx)
inline

Definition at line 337 of file clone.h.

References ST_IDX_index(), and ST_IDX_level().

Referenced by Clone_INITVs_For_EH().

Here is the call graph for this function:

ST* IPO_SYMTAB::Get_ST ( ST old_st)
inline

Definition at line 323 of file clone.h.

References ST_index(), and ST_level().

Referenced by Clone_INITVs_For_EH(), IPO_CLONE::Fix_ST(), and InlineTest().

Here is the call graph for this function:

void IPO_SYMTAB::Hide_Cloned_ST ( ST st)
inline

Definition at line 315 of file clone.h.

Referenced by IPO_CLONE::Set_Entry_Point().

ST * IPO_SYMTAB::IPO_Copy_ST ( ST st,
SYMTAB_IDX  scope 
)

Definition at line 777 of file clone.cxx.

References _cloned_scope_tab, Copy_ST_No_Base(), Get_Cloned_ST(), GLOBAL_SYMTAB, and Set_Cloned_ST().

Here is the call graph for this function:

BOOL IPO_SYMTAB::Is_Cloned_ST ( ST st)
inline

Definition at line 343 of file clone.h.

References ST_index(), and ST_level().

Here is the call graph for this function:

BOOL IPO_SYMTAB::Is_new_clone ( ) const
inline

Definition at line 304 of file clone.h.

Referenced by IPO_CLONE::Clone_Tree().

void IPO_SYMTAB::New_Symtab ( void  )

Definition at line 648 of file clone.cxx.

References _cloned_scope_tab, _mem, _orig_level, _orig_scope_tab, Copy_Local_Tables(), FALSE, FmtAssert, MEM_POOL_Alloc, New_Scope(), PU_has_altentry(), Pu_Table, Set_Cloned_Symtab(), and ST_pu().

Referenced by IPO_CLONE::New_Clone().

Here is the call graph for this function:

void IPO_SYMTAB::Promote_Statics ( void  )

Definition at line 764 of file clone.cxx.

References _orig_level, For_all(), Inito_Table, and St_Table.

Referenced by IPO_CLONE::New_Clone().

Here is the call graph for this function:

BOOL IPO_SYMTAB::Same_file ( ) const
inline

Definition at line 305 of file clone.h.

void IPO_SYMTAB::Set_Cloned_INITO ( INITO old_inito,
INITO_IDX  new_inito 
)

Definition at line 816 of file clone.cxx.

References _hash_maps, and IPO_ADDR_HASH::Insert().

Here is the call graph for this function:

void IPO_SYMTAB::Set_cloned_inito_last_idx ( UINT  idx)
inline

Definition at line 299 of file clone.h.

References idx.

Referenced by Copy_Local_Tables().

void IPO_SYMTAB::Set_cloned_label_last_idx ( UINT  idx)
inline

Definition at line 301 of file clone.h.

References idx.

Referenced by Copy_Local_Tables().

void IPO_SYMTAB::Set_Cloned_ST ( ST old_st,
ST new_st 
)

Definition at line 809 of file clone.cxx.

References _hash_maps, and IPO_ADDR_HASH::Insert().

Referenced by IPO_Copy_ST(), and IPO_CLONE::Set_Entry_Point().

Here is the call graph for this function:

void IPO_SYMTAB::Set_Cloned_Symtab ( SCOPE scope_tab)
inline

Definition at line 307 of file clone.h.

Referenced by New_Symtab().

void IPO_SYMTAB::Update_Symtab ( BOOL  label_only)

Definition at line 688 of file clone.cxx.

References _cloned_scope_tab, _orig_level, _orig_scope_tab, Copy_Local_Tables(), FmtAssert, PU_has_altentry(), Pu_Table, and ST_pu().

Referenced by InlineTest().

Here is the call graph for this function:

Member Data Documentation

UINT IPO_SYMTAB::_cloned_inito_last_idx
private

Definition at line 184 of file clone.h.

Referenced by Copy_Local_Tables().

UINT IPO_SYMTAB::_cloned_label_last_idx
private

Definition at line 190 of file clone.h.

SYMTAB_IDX IPO_SYMTAB::_cloned_level
private

Definition at line 171 of file clone.h.

Referenced by Copy_Local_Tables().

UINT IPO_SYMTAB::_cloned_preg_last_idx
private

Definition at line 196 of file clone.h.

SCOPE* IPO_SYMTAB::_cloned_scope_tab
private

Definition at line 169 of file clone.h.

Referenced by Copy_Local_Tables(), IPO_Copy_ST(), New_Symtab(), and Update_Symtab().

UINT IPO_SYMTAB::_cloned_st_attr_last_idx
private

Definition at line 201 of file clone.h.

Referenced by Copy_Local_Tables().

UINT IPO_SYMTAB::_cloned_st_last_idx
private

Definition at line 178 of file clone.h.

Referenced by Copy_Local_Tables().

IPO_ADDR_HASH* IPO_SYMTAB::_hash_maps
private

Definition at line 174 of file clone.h.

Referenced by Set_Cloned_INITO(), and Set_Cloned_ST().

BOOL IPO_SYMTAB::_is_new_clone
private

Definition at line 206 of file clone.h.

Referenced by Copy_Local_Tables().

MEM_POOL* IPO_SYMTAB::_mem
private

Definition at line 173 of file clone.h.

Referenced by New_Symtab().

SYMTAB_IDX IPO_SYMTAB::_orig_level
private

Definition at line 170 of file clone.h.

Referenced by Copy_Local_Tables(), New_Symtab(), Promote_Statics(), and Update_Symtab().

SCOPE* IPO_SYMTAB::_orig_scope_tab
private

Definition at line 168 of file clone.h.

Referenced by Copy_Local_Tables(), New_Symtab(), and Update_Symtab().

BOOL IPO_SYMTAB::_same_file
private

Definition at line 177 of file clone.h.


The documentation for this class was generated from the following files: