whirl2xaif Namespace Reference


Classes

class  PUXlationContext
class  xlate_ST_TAB
struct  Fld_Path_Info
class  Whirl2Xaif
struct  lt_CFGEdge
class  LOC_INFO
class  SearchSymbolTableEntry
struct  AttrSymId_
struct  AttrAnnotInfo_
class  XlationContext

Typedefs

typedef void(* XlateSTHandlerFunc )(xml::ostream &, ST *, PUXlationContext &)
typedef void(* TY2F_HANDLER_FUNC )(xml::ostream &, TY_IDX, PUXlationContext &ctxt)
typedef struct Fld_Path_Info FLD_PATH_INFO
typedef void(* Handler )(xml::ostream &, WN *, PUXlationContext &)
typedef std::set< ST * > SymbolPointerSet
typedef std::vector
< OA::OA_ptr
< OA::DGraph::NodeInterface > > 
DGraphNodeVec
typedef std::vector
< OA::OA_ptr
< OA::DGraph::EdgeInterface > > 
DGraphEdgeVec
typedef std::vector
< OA::OA_ptr
< OA::CFG::EdgeInterface > > 
CFGEdgeVec

Enumerations

enum  status { good, bad }

Functions

static BOOL ST2F_Is_Dummy_Procedure (ST *st)
static void ST2F_Declare_Return_Type (xml::ostream &xos, TY_IDX return_ty, PUXlationContext &ctxt)
static void xlate_ST_ignore (xml::ostream &xos, ST *st, PUXlationContext &ctxt)
static void xlate_STDecl_error (xml::ostream &xos, ST *st, PUXlationContext &ctxt)
static void xlate_STDecl_VAR (xml::ostream &xos, ST *st, PUXlationContext &ctxt)
static void xlate_STDecl_FUNC (xml::ostream &xos, ST *st, PUXlationContext &ctxt)
static void xlate_STDecl_CONST (xml::ostream &xos, ST *st, PUXlationContext &ctxt)
static void xlate_STDecl_PREG (xml::ostream &xos, ST *st, PUXlationContext &ctxt)
static void xlate_STDecl_BLOCK (xml::ostream &xos, ST *st, PUXlationContext &ctxt)
static void xlate_STDecl_NAME (xml::ostream &xos, ST *st, PUXlationContext &ctxt)
static void xlate_STDecl_TYPE (xml::ostream &xos, ST *st, PUXlationContext &ctxt)
static void xlate_STUse_error (xml::ostream &xos, ST *st, PUXlationContext &ctxt)
static void xlate_STUse_VAR (xml::ostream &xos, ST *st, PUXlationContext &ctxt)
static void xlate_STUse_CONST (xml::ostream &xos, ST *st, PUXlationContext &ctxt)
static void xlate_STUse_BLOCK (xml::ostream &xos, ST *st, PUXlationContext &ctxt)
std::string TCON2F_hollerith (TCON tvalue)
std::string TCON2F_translate (TCON tvalue, BOOL is_logical, TY_IDX object_ty)
std::string TCON2F_translate (TCON tvalue, BOOL is_logical)
void xlate_SymbolTables (xml::ostream &xos, SYMTAB_IDX symtab_lvl, fortTkSupport::ScalarizedRefTab_W2X *nonscalarsymtab, PUXlationContext &ctxt)
void xlate_ArrayBounds (xml::ostream &xos, TY_IDX ty_idx, PUXlationContext &ctxt)
void xlate_SYMTAB (xml::ostream &xos, SYMTAB_IDX symtab_lvl, PUXlationContext &ctxt)
void xlate_ScalarizedRefTab (xml::ostream &xos, fortTkSupport::ScalarizedRefTab_W2X *symtab, PUXlationContext &ctxt)
void TranslateSTDecl (xml::ostream &xos, ST *st, PUXlationContext &ctxt)
void TranslateSTUse (xml::ostream &xos, ST *st, PUXlationContext &ctxt)
void ST2F_deref_translate (xml::ostream &xos, ST *st, PUXlationContext &ctxt)
void ST2F_Declare_Tempvar (TY_IDX ty, UINT idx)
static void TY2F_invalid (xml::ostream &xos, TY_IDX ty, PUXlationContext &ctxt)
static void TY2F_scalar (xml::ostream &xos, TY_IDX ty, PUXlationContext &ctxt)
static void TY2F_array (xml::ostream &xos, TY_IDX ty, PUXlationContext &ctxt)
static void TY2F_array_for_pointer (xml::ostream &xos, TY_IDX ty, PUXlationContext &ctxt)
static void TY2F_struct (xml::ostream &xos, TY_IDX ty, PUXlationContext &ctxt)
static void TY2F_2_struct (xml::ostream &xos, TY_IDX ty, PUXlationContext &ctxt)
static void TY2F_pointer (xml::ostream &xos, TY_IDX ty, PUXlationContext &ctxt)
static void TY2F_void (xml::ostream &xos, TY_IDX ty, PUXlationContext &ctxt)
void TY2F_translate (xml::ostream &xos, TY_IDX ty, BOOL notyapp, PUXlationContext &ctxt)
void TY2F_translate (xml::ostream &xos, TY_IDX ty, PUXlationContext &ctxt)
static std::string TY2F_Append_Array_Bnd_Ph (ST_IDX arbnd)
static void TY2F_Append_ARB (xml::ostream &xos, ARB_HANDLE arb, TY_IDX ty_idx, PUXlationContext &ctxt)
static BOOL TY2F_is_character (TY_IDX ty)
static BOOL TY2F_Pointer_To_Dope (TY_IDX ty)
static FLD_PATH_INFONew_Fld_Path_Info (FLD_HANDLE fld)
static STAB_OFFSET TY2F_Fld_Size (FLD_HANDLE this_fld, mUINT64 max_size)
static FLD_PATH_INFOSelect_Best_Fld_Path (FLD_PATH_INFO *path1, FLD_PATH_INFO *path2, TY_IDX desired_ty, mUINT64 desired_offset)
static FLD_PATH_INFOConstruct_Fld_Path (FLD_HANDLE fld, TY_IDX struct_ty, TY_IDX desired_ty, mUINT64 desired_offset, mUINT64 max_fld_size)
static const char * TY2F_Fld_Name (FLD_HANDLE fld, BOOL common_or_equivalence, BOOL alt_return_name)
static void TY2F_Equivalence (xml::ostream &xos, const char *equiv_name, const char *fld_name, STAB_OFFSET fld_ofst)
static void TY2F_Equivalence_FldList (xml::ostream &xos, FLD_HANDLE fldlist, UINT equiv_var_idx, mUINT64 ofst, BOOL *common_block_equivalenced)
static void TY2F_Equivalence_List (xml::ostream &xos, const TY_IDX struct_ty)
static void TY2F_Translate_EquivCommon_PtrFld (xml::ostream &xos, FLD_HANDLE fld)
static void TY2F_Declare_Common_Flds (xml::ostream &xos, FLD_HANDLE fldlist, BOOL alt_return, BOOL *is_equiv)
static void TY2F_List_Common_Flds (xml::ostream &xos, FLD_HANDLE fldlist)
void TY2F_Translate_ArrayElt (xml::ostream &xos, TY_IDX arr_ty_idx, STAB_OFFSET arr_ofst)
void TY2F_Translate_Common (xml::ostream &xos, const char *name, TY_IDX ty_idx)
void TY2F_Translate_Equivalence (xml::ostream &xos, TY_IDX ty_idx, BOOL alt_return)
FLD_PATH_INFOTY2F_Free_Fld_Path (FLD_PATH_INFO *fld_path)
FLD_PATH_INFOTY2F_Get_Fld_Path (const TY_IDX struct_ty, const TY_IDX object_ty, STAB_OFFSET offset)
void TY2F_Translate_Fld_Path (xml::ostream &xos, FLD_PATH_INFO *fld_path, BOOL deref, BOOL member_of_common, BOOL alt_ret_name, PUXlationContext &ctxt)
void TY2F_Fld_Separator (xml::ostream &xos)
FLD_HANDLE TY2F_Last_Fld (FLD_PATH_INFO *fld_path)
FLD_PATH_INFOTY2F_Point_At_Path (FLD_PATH_INFO *path, STAB_OFFSET off)
void TY2F_Dump_Fld_Path (FLD_PATH_INFO *fld_path)
const char * TranslateTYToSymType (TY_IDX ty_idx)
const char * TranslateTYToMType (TY_IDX ty_idx)
const char * TranslateTYToSymShape (TY_IDX ty_idx)
void TY2F_Prepend_Structures (xml::ostream &xos)
static void xlate_EntryPoint (xml::ostream &xos, WN *wn, PUXlationContext &ctxt)
static set< OA::SymHandle > * GetParamSymHandleSet (WN *wn_pu)
static const char * xlate_intent (WN *parm)
static void xlate_BBStmt (xml::ostream &xos, WN *wn, PUXlationContext &ctxt)
static void xlate_CFCondition (xml::ostream &xos, WN *wn, PUXlationContext &ctxt)
static void xlate_LoopInitialization (xml::ostream &xos, WN *wn, PUXlationContext &ctxt)
static void xlate_LoopUpdate (xml::ostream &xos, WN *wn, PUXlationContext &ctxt)
static void DumpCFGraphEdge (xml::ostream &xos, UINT eid, OA::OA_ptr< OA::CFG::EdgeInterface > edge)
static const char * GetLoopReversalType (OA::OA_ptr< OA::CFG::CFGInterface > cfg, OA::OA_ptr< OA::CFG::NodeInterface > n)
static std::string GetIDsForStmtsInBB (OA::OA_ptr< OA::CFG::NodeInterface > node, PUXlationContext &ctxt)
pair< bool, INT64GetCFGEdgeCondVal (const OA::OA_ptr< OA::CFG::EdgeInterface > edge)
void initOurHandlerTable ()
void TranslateWN (xml::ostream &xos, WN *wn, PUXlationContext &ctxt)
void xlate_FUNC_ENTRY (xml::ostream &xos, WN *wn, PUXlationContext &ctxt)
void xlate_ALTENTRY (xml::ostream &xos, WN *wn, PUXlationContext &ctxt)
void xlate_ignore (xml::ostream &xos, WN *wn, PUXlationContext &ctxt)
void xlate_STRCTFLD (xml::ostream &xos, WN *wn, PUXlationContext &ctxt)
void xlate_unknown (xml::ostream &xos, WN *wn, PUXlationContext &ctxt)
bool IsActiveStmt (WN *wn, PUXlationContext &ctxt)
void xlate_PregRef (xml::ostream &xos, ST *st, TY_IDX preg_ty, PREG_IDX preg_idx, PUXlationContext &ctxt)
void xlate_SymRef (xml::ostream &xos, ST *base_st, TY_IDX baseptr_ty, TY_IDX ref_ty, STAB_OFFSET offset, PUXlationContext &ctxt)
void xlate_MemRef (xml::ostream &xos, WN *addr, TY_IDX addr_ty, TY_IDX ref_ty, STAB_OFFSET offset, PUXlationContext &ctxt)
WN_OFFSET WN2F_Sum_Offsets (WN *addr)
void WN2F_Address_Of (xml::ostream &xos)
DGraphNodeVecSortDGraphNodes (OA::OA_ptr< OA::DGraph::DGraphInterface > g)
DGraphEdgeVecSortDGraphEdges (OA::OA_ptr< OA::DGraph::DGraphInterface > g)
CFGEdgeVecSortCFGEdges (OA::OA_ptr< OA::CFG::CFGInterface > g)
void DumpGraphEdge (xml::ostream &xos, const char *nm, UINT eid, UINT srcid, UINT targid, UINT pos)
void xlate_SideEffectLocationPrint (ST *st, SymbolPointerSet &coveredSymbols, fortTkSupport::SymTabId scopeid, xml::ostream &xos)
void xlate_SideEffectNamedLocation (OA::OA_ptr< OA::NamedLoc > theNamedLoc, SymbolPointerSet &coveredSymbols, xml::ostream &xos, WN *wn, PUXlationContext &ctxt, OA::OA_ptr< OA::SymHandleIterator > formalArgSymHandleI)
void xlate_SideEffectEntry (OA::OA_ptr< OA::Location > theTopLocation, OA::OA_ptr< OA::Location > theLocation, SymbolPointerSet &coveredSymbols, xml::ostream &xos, WN *wn, PUXlationContext &ctxt, OA::OA_ptr< OA::SymHandleIterator > formalArgSymHandleI)
static void findVarSymbolsInTree (WN *wn, SymbolPointerSet &requiredSymbols)
static void findRequiredProgramSymbols (WN *wn, PUXlationContext &ctxt, SymbolPointerSet &requiredTempSymbols, SymbolPointerSet &requiredProgramSymbols)
static void findRequiredSymbolsInSymbolTable (SYMTAB_IDX symtab_lvl, PUXlationContext &ctxt, SymbolPointerSet &requiredSymbols)
void DumpScopeGraphEdge (xml::ostream &xos, UINT eid, UINT srcid, UINT targid)
void DumpCallGraphEdge (xml::ostream &xos, UINT eid, UINT srcid, UINT targid)
void DumpExprGraphEdge (xml::ostream &xos, UINT eid, UINT srcid, UINT targid, UINT pos)
ostream & operator<< (std::ostream &os, const AttrSymId_ &x)
AttrSymId_ AttrSymId (ST *st_)
template<class T >
ostream & operator<< (std::ostream &os, const AttrAnnotInfo_< T > &x)
template<class T >
AttrAnnotInfo_< T > AttrAnnot (const char *tag_, const T &val_)
template<class T >
AttrAnnotInfo_< T > AttrAnnotVal (const char *tag_, const T &val_)
template<class T >
AttrAnnotInfo_< T > SymTabIdAnnot (const T &val_)
template<class T >
AttrAnnotInfo_< T > SymIdAnnot (const T &val_)
template<class T >
AttrAnnotInfo_< T > PUIdAnnot (const T &val_)
template<class T >
AttrAnnotInfo_< T > WhirlIdAnnot (const T &val_)
AttrAnnotInfo_< const char * > IntrinsicKeyAnnot (const char *const &val_)
template<class T >
AttrAnnotInfo_< T > PregIdAnnot (const T &val_)
template<class T >
AttrAnnotInfo_< T > SymTabIdAnnotVal (const T &val_)
template<class T >
AttrAnnotInfo_< T > SymIdAnnotVal (const T &val_)
template<class T >
AttrAnnotInfo_< T > PUIdAnnotVal (const T &val_)
template<class T >
AttrAnnotInfo_< T > WhirlIdAnnotVal (const T &val_)
template<class T >
AttrAnnotInfo_< T > StmtGotoAnnotVal (const T &val_)
template<class T >
AttrAnnotInfo_< T > StmtLabelAnnotVal (const T &val_)
void xlate_FUNC_ENTRY (xml::ostream &xos, WN *wn, XlationContext &ctxt)
void xlate_ALTENTRY (xml::ostream &xos, WN *wn, XlationContext &ctxt)
void xlate_ignore (xml::ostream &xos, WN *wn, XlationContext &ctxt)
void xlate_unknown (xml::ostream &xos, WN *wn, XlationContext &ctxt)
void WN2F_cvt (xml::ostream &xos, WN *wn, PUXlationContext &ctxt)
void WN2F_cvtl (xml::ostream &xos, WN *wn, PUXlationContext &ctxt)
void WN2F_tas (xml::ostream &xos, WN *wn, PUXlationContext &ctxt)
void xlate_CONST (xml::ostream &xos, WN *wn, PUXlationContext &ctxt)
void xlate_INTCONST (xml::ostream &xos, WN *wn, PUXlationContext &ctxt)
void xlate_UnaryOp (xml::ostream &xos, WN *wn, PUXlationContext &ctxt)
void WN2F_rsqrt (xml::ostream &xos, WN *wn, PUXlationContext &ctxt)
void WN2F_realpart (xml::ostream &xos, WN *wn, PUXlationContext &ctxt)
void WN2F_imagpart (xml::ostream &xos, WN *wn, PUXlationContext &ctxt)
void xlate_PAREN (xml::ostream &xos, WN *wn, PUXlationContext &ctxt)
void xlate_RECIP (xml::ostream &xos, WN *wn, PUXlationContext &ctxt)
void WN2F_parm (xml::ostream &xos, WN *wn, PUXlationContext &ctxt)
void WN2F_alloca (xml::ostream &xos, WN *wn, PUXlationContext &ctxt)
void xlate_BinaryOp (xml::ostream &xos, WN *wn, PUXlationContext &ctxt)
void WN2F_complex (xml::ostream &xos, WN *wn, PUXlationContext &ctxt)
void WN2F_bnor (xml::ostream &xos, WN *wn, PUXlationContext &ctxt)
void WN2F_lshr (xml::ostream &xos, WN *wn, PUXlationContext &ctxt)
void WN2F_select (xml::ostream &xos, WN *wn, PUXlationContext &ctxt)
void WN2F_madd (xml::ostream &xos, WN *wn, PUXlationContext &ctxt)
void WN2F_msub (xml::ostream &xos, WN *wn, PUXlationContext &ctxt)
void WN2F_nmadd (xml::ostream &xos, WN *wn, PUXlationContext &ctxt)
void WN2F_nmsub (xml::ostream &xos, WN *wn, PUXlationContext &ctxt)
void xlate_INTRINSIC_OP (xml::ostream &xos, WN *wn, PUXlationContext &ctxt)
void WN2F_implied_do (xml::ostream &xos, WN *wn, PUXlationContext &ctxt)
void xlate_IO (xml::ostream &xos, WN *wn, PUXlationContext &context)
BOOL xlate_IO_ITEM (xml::ostream &xos, WN *wn, PUXlationContext &context)
static void DumpVarRefEdge (xml::ostream &xos, UINT eid, UINT srcid, UINT targid)
static void WN2F_Block (xml::ostream &xos, ST *st, STAB_OFFSET off, PUXlationContext &ctxt)
static void WN2F_Arrsection_Slots (xml::ostream &xos, WN *wn, PUXlationContext &ctxt)
static void xlate_ArrayIndices (xml::ostream &xos, WN *wn, PUXlationContext &ctxt)
static WNWN2F_Initiate_ZeroInt (void)
static WNWN2F_Initiate_OneInt (void)
static void WN2F_Substring (xml::ostream &xos, INT64 string_size, WN *lower_bnd, WN *substring_size, PUXlationContext &ctxt)
static void WN2F_Get_Substring_Info (WN **base, TY_IDX *string_ty, WN **lower_bnd, WN **length)
static WNWN2F_Find_Base (WN *addr)
BOOL WN2F_Is_Address_Preg (WN *ad, TY_IDX ptr_ty)
void xlate_LDA (xml::ostream &xos, WN *wn, PUXlationContext &ctxt)
void xlate_LDID (xml::ostream &xos, WN *wn, PUXlationContext &ctxt)
void xlate_ILOAD (xml::ostream &xos, WN *wn, PUXlationContext &ctxt)
void xlate_ILOADX (xml::ostream &xos, WN *wn, PUXlationContext &ctxt)
void WN2F_mload (xml::ostream &xos, WN *wn, PUXlationContext &ctxt)
void xlate_STID (xml::ostream &xos, WN *wn, PUXlationContext &ctxt)
void xlate_ISTORE (xml::ostream &xos, WN *wn, PUXlationContext &ctxt)
void xlate_ISTOREX (xml::ostream &xos, WN *wn, PUXlationContext &ctxt)
void WN2F_mstore (xml::ostream &xos, WN *wn, PUXlationContext &ctxt)
void WN2F_pstid (xml::ostream &xos, WN *wn, PUXlationContext &ctxt)
void WN2F_pstore (xml::ostream &xos, WN *wn, PUXlationContext &ctxt)
void xlate_ARRAY (xml::ostream &xos, WN *wn, PUXlationContext &ctxt)
void WN2F_triplet (xml::ostream &xos, WN *wn, PUXlationContext &ctxt)
void WN2F_src_triplet (xml::ostream &xos, WN *wn, PUXlationContext &ctxt)
void WN2F_arrayexp (xml::ostream &xos, WN *wn, PUXlationContext &ctxt)
void WN2F_arrsection (xml::ostream &xos, WN *wn, PUXlationContext &ctxt)
void WN2F_where (xml::ostream &xos, WN *wn, PUXlationContext &ctxt)
void WN2F_array_bounds (xml::ostream &xos, WN *wn, TY_IDX array_ty, PUXlationContext &ctxt)
void WN2F_arrsection_bounds (xml::ostream &xos, WN *wn, TY_IDX array_ty, PUXlationContext &ctxt)
void WN2F_String_Argument (xml::ostream &xos, WN *base_parm, WN *length, PUXlationContext &ctxt)
void xlate_PassiveStmt (xml::ostream &xos, WN *wn, PUXlationContext &ctxt)
void xlate_BLOCK (xml::ostream &xos, WN *wn, PUXlationContext &ctxt)
void WN2F_region (xml::ostream &xos, WN *wn, PUXlationContext &ctxt)
void xlate_DO_LOOP (xml::ostream &xos, WN *wn, PUXlationContext &ctxt)
void xlate_DO_WHILE (xml::ostream &xos, WN *wn, PUXlationContext &ctxt)
void xlate_WHILE_DO (xml::ostream &xos, WN *wn, PUXlationContext &ctxt)
void xlate_IF (xml::ostream &xos, WN *wn, PUXlationContext &ctxt)
void WN2F_noio_implied_do (xml::ostream &xos, WN *wn, PUXlationContext &ctxt)
void xlate_GOTO (xml::ostream &xos, WN *wn, PUXlationContext &ctxt)
void xlate_SWITCH (xml::ostream &xos, WN *wn, PUXlationContext &ctxt)
void WN2F_casegoto (xml::ostream &xos, WN *wn, PUXlationContext &ctxt)
void WN2F_compgoto (xml::ostream &xos, WN *wn, PUXlationContext &ctxt)
void WN2F_agoto (xml::ostream &xos, WN *wn, PUXlationContext &ctxt)
void xlate_condBR (xml::ostream &xos, WN *wn, PUXlationContext &ctxt)
void xlate_RETURN (xml::ostream &xos, WN *wn, PUXlationContext &ctxt)
void xlate_RETURN_VAL (xml::ostream &xos, WN *wn, PUXlationContext &ctxt)
void xlate_LABEL (xml::ostream &xos, WN *wn, PUXlationContext &ctxt)
void xlate_CALL (xml::ostream &xos, WN *wn, PUXlationContext &ctxt)
void xlate_INTRINSIC_CALL (xml::ostream &xos, WN *wn, PUXlationContext &ctxt)
void WN2F_eval (xml::ostream &xos, WN *wn, PUXlationContext &ctxt)
void xlate_PRAGMA (xml::ostream &xos, WN *wn, PUXlationContext &ctxt)
void xlate_PREFETCH (xml::ostream &xos, WN *wn, PUXlationContext &ctxt)
void xlate_COMMENT (xml::ostream &xos, WN *wn, PUXlationContext &ctxt)
void WN2F_dealloca (xml::ostream &xos, WN *wn, PUXlationContext &ctxt)
void xlate_USE (xml::ostream &xos, WN *wn, PUXlationContext &ctxt)
void WN2F_namelist_stmt (xml::ostream &xos, WN *wn, PUXlationContext &ctxt)
void WN2F_implicit_bnd (xml::ostream &xos, WN *wn, PUXlationContext &ctxt)
void WN2F_nullify_stmt (xml::ostream &xos, WN *wn, PUXlationContext &ctxt)
void WN2F_interface_blk (xml::ostream &xos, WN *wn, PUXlationContext &ctxt)
void WN2F_ar_construct (xml::ostream &xos, WN *wn, PUXlationContext &ctxt)

Variables

static const XlateSTHandlerFunc XlateSTDecl_HandlerTable [CLASS_COUNT]
static const XlateSTHandlerFunc XlateSTUse_HandlerTable [CLASS_COUNT]
WNPU_Body
BOOL Array_Bnd_Temp_Var = FALSE
static const TY2F_HANDLER_FUNC TY2F_Handler [KIND_LAST]
static FLD_PATH_INFOFree_Fld_Path_Info = NULL
IntrinsicXlationTable IntrinsicTable
static std::map< int, HandlerourHandlerTable
static bool ourHandlerTableInit = false
static WNWN2F_ZeroInt_Ptr = NULL
static WNWN2F_OneInt_Ptr = NULL

Typedef Documentation

Definition at line 72 of file wn2xaif.h.

Definition at line 70 of file wn2xaif.h.

Definition at line 69 of file wn2xaif.h.

Definition at line 129 of file ty2xaif.h.

Definition at line 110 of file wn2xaif.cxx.

typedef std::set<ST *> whirl2xaif::SymbolPointerSet

Definition at line 1020 of file wn2xaif.cxx.

Definition at line 65 of file ty2xaif.cxx.

Definition at line 403 of file st2xaif.cxx.


Enumeration Type Documentation

Enumerator:
good 
bad 

Definition at line 80 of file whirl2xaif.i.


Function Documentation

template<class T >
AttrAnnotInfo_<T> whirl2xaif::AttrAnnot ( const char *  tag_,
const T &  val_ 
) [inline]

template<class T >
AttrAnnotInfo_<T> whirl2xaif::AttrAnnotVal ( const char *  tag_,
const T &  val_ 
) [inline]

AttrSymId_ whirl2xaif::AttrSymId ( ST st_  )  [inline]

static FLD_PATH_INFO* whirl2xaif::Construct_Fld_Path ( FLD_HANDLE  fld,
TY_IDX  struct_ty,
TY_IDX  desired_ty,
mUINT64  desired_offset,
mUINT64  max_fld_size 
) [static]

void whirl2xaif::DumpCallGraphEdge ( xml::ostream xos,
UINT  eid,
UINT  srcid,
UINT  targid 
) [inline]

Definition at line 114 of file wn2xaif.h.

References DumpGraphEdge().

Referenced by whirl2xaif::Whirl2Xaif::translateIR().

Here is the call graph for this function:

static void whirl2xaif::DumpCFGraphEdge ( xml::ostream xos,
UINT  eid,
OA::OA_ptr< OA::CFG::EdgeInterface edge 
) [static]

Definition at line 996 of file wn2xaif.cxx.

References xml::Attr(), xml::BegElem(), OA::OA_ptr< T >::convert(), xml::EndElem(), and GetCFGEdgeCondVal().

Referenced by xlate_FUNC_ENTRY().

Here is the call graph for this function:

void whirl2xaif::DumpExprGraphEdge ( xml::ostream xos,
UINT  eid,
UINT  srcid,
UINT  targid,
UINT  pos 
) [inline]

Definition at line 123 of file wn2xaif.h.

References DumpGraphEdge().

Referenced by WN2F_Intr_Funcall(), xlate_BinaryOpUsingIntrinsicTable(), and xlate_CALL().

Here is the call graph for this function:

void whirl2xaif::DumpGraphEdge ( xml::ostream xos,
const char *  nm,
UINT  eid,
UINT  srcid,
UINT  targid,
UINT  pos 
)

Definition at line 981 of file wn2xaif.cxx.

References xml::Attr(), xml::BegElem(), and xml::EndElem().

Referenced by DumpCallGraphEdge(), DumpExprGraphEdge(), and DumpScopeGraphEdge().

Here is the call graph for this function:

void whirl2xaif::DumpScopeGraphEdge ( xml::ostream xos,
UINT  eid,
UINT  srcid,
UINT  targid 
) [inline]

Definition at line 107 of file wn2xaif.h.

References DumpGraphEdge().

Referenced by whirl2xaif::Whirl2Xaif::translateScopeHierarchyPU().

Here is the call graph for this function:

static void whirl2xaif::DumpVarRefEdge ( xml::ostream xos,
UINT  eid,
UINT  srcid,
UINT  targid 
) [static]

Definition at line 1330 of file wn2xaif_mem.cxx.

References xml::Attr(), xml::BegElem(), XAIFStringRepository::elem_VarRefEdge(), xml::EndElem(), and XAIFStrings.

Referenced by WN2F_arrsection(), WN2F_String_Argument(), and xlate_ARRAY().

Here is the call graph for this function:

static void whirl2xaif::findRequiredProgramSymbols ( WN wn,
PUXlationContext &  ctxt,
SymbolPointerSet &  requiredTempSymbols,
SymbolPointerSet &  requiredProgramSymbols 
) [static]

look for the definitions of the temp symbols in the program and collect the symbols the respective RHSs are referring to

Definition at line 1202 of file wn2xaif.cxx.

References findVarSymbolsInTree(), FORTTK_ASSERT, OPR_BLOCK, OPR_FUNC_ENTRY, OPR_STID, fortTkSupport::Diagnostics::UnexpectedInput, WN_first(), WN_kid(), WN_kid_count(), WN_next(), WN_operator(), and WN_st().

Referenced by xlate_EntryPoint().

Here is the call graph for this function:

static void whirl2xaif::findRequiredSymbolsInSymbolTable ( SYMTAB_IDX  symtab_lvl,
PUXlationContext &  ctxt,
SymbolPointerSet &  requiredSymbols 
) [static]

search the symbol table and find symbols used for dimensions used in array declarations

Definition at line 1321 of file wn2xaif.cxx.

References For_all(), and St_Table.

Referenced by xlate_EntryPoint().

Here is the call graph for this function:

static void whirl2xaif::findVarSymbolsInTree ( WN wn,
SymbolPointerSet &  requiredSymbols 
) [static]

for a give wn descend recursively down the tree and collect all the variable symbols that are referenced

Definition at line 1181 of file wn2xaif.cxx.

References CLASS_VAR, ST_class(), ST_is_temp_var(), WN_has_sym, WN_kid(), WN_kid_count(), and WN_st().

Referenced by findRequiredProgramSymbols().

Here is the call graph for this function:

pair< bool, INT64 > whirl2xaif::GetCFGEdgeCondVal ( const OA::OA_ptr< OA::CFG::EdgeInterface edge  ) 

static std::string whirl2xaif::GetIDsForStmtsInBB ( OA::OA_ptr< OA::CFG::NodeInterface node,
PUXlationContext &  ctxt 
) [static]

Definition at line 1685 of file wn2xaif.cxx.

References whirl2xaif::PUXlationContext::findWNId(), and Num2Str().

Referenced by xlate_FUNC_ENTRY().

Here is the call graph for this function:

static const char * whirl2xaif::GetLoopReversalType ( OA::OA_ptr< OA::CFG::CFGInterface cfg,
OA::OA_ptr< OA::CFG::NodeInterface n 
) [static]

static set< OA::SymHandle > * whirl2xaif::GetParamSymHandleSet ( WN wn_pu  )  [static]

Definition at line 1514 of file wn2xaif.cxx.

References WN_formal, WN_num_formals, and WN_st().

Here is the call graph for this function:

void whirl2xaif::initOurHandlerTable (  ) 

Definition at line 1752 of file wn2xaif.cxx.

References OPERATOR_UNKNOWN, OPR_ABS, OPR_ADD, OPR_AGOTO, OPR_ALLOCA, OPR_ALTENTRY, OPR_ARRAY, OPR_ARRAY_CONSTRUCT, OPR_ARRAYEXP, OPR_ARRSECTION, OPR_ASHR, OPR_ASSERT, OPR_BACKWARD_BARRIER, OPR_BAND, OPR_BIOR, OPR_BLOCK, OPR_BNOR, OPR_BNOT, OPR_BXOR, OPR_CALL, OPR_CAND, OPR_CASEGOTO, OPR_CEIL, OPR_CIOR, OPR_COMMENT, OPR_COMPGOTO, OPR_COMPLEX, OPR_CONST, OPR_CVT, OPR_CVTL, OPR_DEALLOCA, OPR_DIV, OPR_DO_LOOP, OPR_DO_WHILE, OPR_EQ, OPR_EVAL, OPR_FALSEBR, OPR_FLOOR, OPR_FORWARD_BARRIER, OPR_FUNC_ENTRY, OPR_GE, OPR_GOTO, OPR_GT, OPR_ICALL, OPR_IF, OPR_ILOAD, OPR_ILOADX, OPR_IMAGPART, OPR_IMPLICIT_BND, OPR_IMPLIED_DO, OPR_INTCONST, OPR_INTERFACE, OPR_INTRINSIC_CALL, OPR_INTRINSIC_OP, OPR_IO, OPR_ISTORE, OPR_ISTOREX, OPR_LABEL, OPR_LAND, OPR_LDA, OPR_LDID, OPR_LE, OPR_LIOR, OPR_LNOT, OPR_LSHR, OPR_LT, OPR_MADD, OPR_MAX, OPR_MIN, OPR_MLOAD, OPR_MOD, OPR_MPY, OPR_MSTORE, OPR_MSUB, OPR_NAMELIST, OPR_NE, OPR_NEG, OPR_NMADD, OPR_NMSUB, OPR_NULLIFY, OPR_PAREN, OPR_PARM, OPR_PICCALL, OPR_PRAGMA, OPR_PREFETCH, OPR_PREFETCHX, OPR_PSTID, OPR_PSTORE, OPR_REALPART, OPR_RECIP, OPR_REGION, OPR_REGION_EXIT, OPR_REM, OPR_RETURN, OPR_RETURN_VAL, OPR_RND, OPR_RSQRT, OPR_SELECT, OPR_SHL, OPR_SQRT, OPR_SRCTRIPLET, OPR_STID, OPR_STRCTFLD, OPR_SUB, OPR_SWITCH, OPR_TAS, OPR_TRAP, OPR_TRIPLET, OPR_TRUEBR, OPR_TRUNC, OPR_USE, OPR_WHERE, OPR_WHILE_DO, OPR_XPRAGMA, ourHandlerTable, WN2F_alloca(), WN2F_ar_construct(), WN2F_arrayexp(), WN2F_arrsection(), WN2F_bnor(), WN2F_cvt(), WN2F_cvtl(), WN2F_dealloca(), WN2F_eval(), WN2F_imagpart(), WN2F_implicit_bnd(), WN2F_interface_blk(), WN2F_lshr(), WN2F_madd(), WN2F_mload(), WN2F_mstore(), WN2F_msub(), WN2F_namelist_stmt(), WN2F_nmadd(), WN2F_nmsub(), WN2F_noio_implied_do(), WN2F_nullify_stmt(), WN2F_parm(), WN2F_pstid(), WN2F_pstore(), WN2F_realpart(), WN2F_region(), WN2F_rsqrt(), WN2F_select(), WN2F_src_triplet(), WN2F_tas(), WN2F_triplet(), WN2F_where(), xlate_ALTENTRY(), xlate_ARRAY(), xlate_BinaryOp(), xlate_BLOCK(), xlate_CALL(), xlate_COMMENT(), xlate_condBR(), xlate_CONST(), xlate_DO_LOOP(), xlate_DO_WHILE(), xlate_FUNC_ENTRY(), xlate_GOTO(), xlate_IF(), xlate_ignore(), xlate_ILOAD(), xlate_ILOADX(), xlate_INTCONST(), xlate_INTRINSIC_CALL(), xlate_INTRINSIC_OP(), xlate_IO(), xlate_ISTORE(), xlate_ISTOREX(), xlate_LABEL(), xlate_LDA(), xlate_LDID(), xlate_PAREN(), xlate_PRAGMA(), xlate_PREFETCH(), xlate_RECIP(), xlate_RETURN(), xlate_RETURN_VAL(), xlate_STID(), xlate_STRCTFLD(), xlate_SWITCH(), xlate_UnaryOp(), xlate_unknown(), xlate_USE(), and xlate_WHILE_DO().

Referenced by TranslateWN().

AttrAnnotInfo_<const char*> whirl2xaif::IntrinsicKeyAnnot ( const char *const &  val_  )  [inline]

Definition at line 261 of file wn2xaif.h.

References AttrAnnot(), XAIFStringRepository::tag_IntrinsicKey(), and XAIFStrings.

Referenced by WN2F_Intr_Funcall(), and xlate_CALL().

Here is the call graph for this function:

bool whirl2xaif::IsActiveStmt ( WN wn,
PUXlationContext &  ctxt 
)

Definition at line 361 of file wn2xaif.cxx.

References OPERATOR_is_call(), OPERATOR_is_store(), TranslateTYToSymType(), WN_operator(), and WN_Tree_Type().

Referenced by xlate_BBStmt().

Here is the call graph for this function:

static FLD_PATH_INFO* whirl2xaif::New_Fld_Path_Info ( FLD_HANDLE  fld  )  [static]

template<class T >
ostream& whirl2xaif::operator<< ( std::ostream &  os,
const AttrAnnotInfo_< T > &  x 
) [inline]

Definition at line 187 of file wn2xaif.h.

References XAIFStringRepository::attr_annot(), xml::BegAttr(), xml::EndAttr(), XAIFStringRepository::tag_End(), and XAIFStrings.

Here is the call graph for this function:

ostream& whirl2xaif::operator<< ( std::ostream &  os,
const AttrSymId_ &  x 
) [inline]

template<class T >
AttrAnnotInfo_<T> whirl2xaif::PregIdAnnot ( const T &  val_  )  [inline]

Definition at line 268 of file wn2xaif.h.

References AttrAnnot(), XAIFStringRepository::tag_PregId(), and XAIFStrings.

Referenced by xlate_PregRef().

Here is the call graph for this function:

template<class T >
AttrAnnotInfo_<T> whirl2xaif::PUIdAnnot ( const T &  val_  )  [inline]

Definition at line 248 of file wn2xaif.h.

References AttrAnnot(), XAIFStringRepository::tag_PUId(), and XAIFStrings.

Referenced by whirl2xaif::Whirl2Xaif::translatePU().

Here is the call graph for this function:

template<class T >
AttrAnnotInfo_<T> whirl2xaif::PUIdAnnotVal ( const T &  val_  )  [inline]

Definition at line 292 of file wn2xaif.h.

References AttrAnnotVal(), XAIFStringRepository::tag_PUId(), and XAIFStrings.

Here is the call graph for this function:

static FLD_PATH_INFO* whirl2xaif::Select_Best_Fld_Path ( FLD_PATH_INFO *  path1,
FLD_PATH_INFO *  path2,
TY_IDX  desired_ty,
mUINT64  desired_offset 
) [static]

CFGEdgeVec * whirl2xaif::SortCFGEdges ( OA::OA_ptr< OA::CFG::CFGInterface g  ) 

Definition at line 963 of file wn2xaif.cxx.

References OA::OA_ptr< T >::convert().

Referenced by xlate_FUNC_ENTRY().

Here is the call graph for this function:

DGraphEdgeVec * whirl2xaif::SortDGraphEdges ( OA::OA_ptr< OA::DGraph::DGraphInterface g  ) 

Definition at line 946 of file wn2xaif.cxx.

Referenced by whirl2xaif::Whirl2Xaif::translateIR().

DGraphNodeVec * whirl2xaif::SortDGraphNodes ( OA::OA_ptr< OA::DGraph::DGraphInterface g  ) 

Definition at line 929 of file wn2xaif.cxx.

Referenced by whirl2xaif::Whirl2Xaif::translateIR().

static void whirl2xaif::ST2F_Declare_Return_Type ( xml::ostream xos,
TY_IDX  return_ty,
PUXlationContext &  ctxt 
) [static]

Definition at line 839 of file st2xaif.cxx.

References KIND_VOID, Stab_Mtype_To_Ty(), TY2F_translate(), TY_Is_Pointer(), TY_kind(), and TY_mtype().

Referenced by xlate_STDecl_FUNC(), and xlate_STDecl_VAR().

Here is the call graph for this function:

void whirl2xaif::ST2F_Declare_Tempvar ( TY_IDX  ty,
UINT  idx 
)

void whirl2xaif::ST2F_deref_translate ( xml::ostream xos,
ST st,
PUXlationContext &  ctxt 
)

static BOOL whirl2xaif::ST2F_Is_Dummy_Procedure ( ST st  )  [static]

Definition at line 823 of file st2xaif.cxx.

References dummy(), FALSE, KIND_FUNCTION, KIND_POINTER, SCLASS_FORMAL, ST_is_value_parm(), ST_sclass(), ST_type(), TRUE, TY_kind(), and TY_pointed().

Referenced by xlate_STDecl_VAR().

Here is the call graph for this function:

template<class T >
AttrAnnotInfo_<T> whirl2xaif::StmtGotoAnnotVal ( const T &  val_  )  [inline]

Definition at line 306 of file wn2xaif.h.

References AttrAnnotVal(), XAIFStringRepository::tag_StmtGoto(), and XAIFStrings.

Referenced by xlate_GOTO().

Here is the call graph for this function:

template<class T >
AttrAnnotInfo_<T> whirl2xaif::StmtLabelAnnotVal ( const T &  val_  )  [inline]

Definition at line 313 of file wn2xaif.h.

References AttrAnnotVal(), XAIFStringRepository::tag_StmtLabel(), and XAIFStrings.

Referenced by xlate_LABEL().

Here is the call graph for this function:

template<class T >
AttrAnnotInfo_<T> whirl2xaif::SymIdAnnot ( const T &  val_  )  [inline]

Definition at line 241 of file wn2xaif.h.

References AttrAnnot(), XAIFStringRepository::tag_SymId(), and XAIFStrings.

Referenced by xlate_STDecl_FUNC(), xlate_STDecl_PREG(), and xlate_STDecl_VAR().

Here is the call graph for this function:

template<class T >
AttrAnnotInfo_<T> whirl2xaif::SymIdAnnotVal ( const T &  val_  )  [inline]

Definition at line 285 of file wn2xaif.h.

References AttrAnnotVal(), XAIFStringRepository::tag_SymId(), and XAIFStrings.

Here is the call graph for this function:

template<class T >
AttrAnnotInfo_<T> whirl2xaif::SymTabIdAnnot ( const T &  val_  )  [inline]

Definition at line 234 of file wn2xaif.h.

References AttrAnnot(), XAIFStringRepository::tag_SymTabId(), and XAIFStrings.

Referenced by whirl2xaif::Whirl2Xaif::translateScopeHierarchy(), and whirl2xaif::Whirl2Xaif::translateScopeHierarchyPU().

Here is the call graph for this function:

template<class T >
AttrAnnotInfo_<T> whirl2xaif::SymTabIdAnnotVal ( const T &  val_  )  [inline]

Definition at line 278 of file wn2xaif.h.

References AttrAnnotVal(), XAIFStringRepository::tag_SymTabId(), and XAIFStrings.

Here is the call graph for this function:

std::string whirl2xaif::TCON2F_hollerith ( TCON  tvalue  ) 

Definition at line 151 of file st2xaif.cxx.

References FORTTK_ASSERT_WARN, MTYPE_name, MTYPE_STR, Targ_String_Address(), Targ_String_Length(), and TCON_ty.

Referenced by xlate_STUse_CONST().

Here is the call graph for this function:

std::string whirl2xaif::TCON2F_translate ( TCON  tvalue,
BOOL  is_logical 
)

Definition at line 272 of file st2xaif.cxx.

References NULL, and TCON2F_translate().

Here is the call graph for this function:

std::string whirl2xaif::TCON2F_translate ( TCON  tvalue,
BOOL  is_logical,
TY_IDX  object_ty 
)

void whirl2xaif::TranslateSTDecl ( xml::ostream xos,
ST st,
PUXlationContext &  ctxt 
)

Definition at line 436 of file st2xaif.cxx.

References ST_sym_class(), and XlateSTDecl_HandlerTable.

Referenced by whirl2xaif::xlate_ST_TAB::operator()(), and WN2F_interface_blk().

Here is the call graph for this function:

void whirl2xaif::TranslateSTUse ( xml::ostream xos,
ST st,
PUXlationContext &  ctxt 
)

Definition at line 442 of file st2xaif.cxx.

References ST_sym_class(), and XlateSTUse_HandlerTable.

Referenced by WN2F_casegoto(), and xlate_SymRef().

Here is the call graph for this function:

const char * whirl2xaif::TranslateTYToMType ( TY_IDX  ty_idx  ) 

const char * whirl2xaif::TranslateTYToSymShape ( TY_IDX  ty_idx  ) 

Definition at line 1402 of file ty2xaif.cxx.

References ARB_dimension(), FORTTK_DIE, KIND_ARRAY, KIND_INVALID, KIND_SCALAR, KIND_STRUCT, NULL, TY_arb(), TY_is_character(), TY_kind(), and Ty_Table.

Referenced by xlate_STDecl_VAR().

Here is the call graph for this function:

const char * whirl2xaif::TranslateTYToSymType ( TY_IDX  ty_idx  ) 

void whirl2xaif::TranslateWN ( xml::ostream xos,
WN wn,
PUXlationContext &  ctxt 
)

static void whirl2xaif::TY2F_2_struct ( xml::ostream xos,
TY_IDX  ty,
PUXlationContext &  ctxt 
) [static]

Definition at line 1025 of file ty2xaif.cxx.

References FORTTK_ASSERT, KIND_STRUCT, TY_kind(), Ty_Table, and fortTkSupport::Diagnostics::UnexpectedInput.

Referenced by TY2F_translate().

Here is the call graph for this function:

static void whirl2xaif::TY2F_Append_ARB ( xml::ostream xos,
ARB_HANDLE  arb,
TY_IDX  ty_idx,
PUXlationContext &  ctxt 
) [static]

static std::string whirl2xaif::TY2F_Append_Array_Bnd_Ph ( ST_IDX  arbnd  )  [static]

Definition at line 145 of file ty2xaif.cxx.

References PU_Body.

Referenced by TY2F_Append_ARB().

static void whirl2xaif::TY2F_array ( xml::ostream xos,
TY_IDX  ty,
PUXlationContext &  ctxt 
) [static]

static void whirl2xaif::TY2F_array_for_pointer ( xml::ostream xos,
TY_IDX  ty,
PUXlationContext &  ctxt 
) [static]

static void whirl2xaif::TY2F_Declare_Common_Flds ( xml::ostream xos,
FLD_HANDLE  fldlist,
BOOL  alt_return,
BOOL is_equiv 
) [static]

Definition at line 709 of file ty2xaif.cxx.

Referenced by TY2F_Translate_Common(), and TY2F_Translate_Equivalence().

void whirl2xaif::TY2F_Dump_Fld_Path ( FLD_PATH_INFO *  fld_path  ) 

static void whirl2xaif::TY2F_Equivalence ( xml::ostream xos,
const char *  equiv_name,
const char *  fld_name,
STAB_OFFSET  fld_ofst 
) [static]

Definition at line 546 of file ty2xaif.cxx.

References Num2Str().

Referenced by TY2F_Equivalence_FldList().

Here is the call graph for this function:

static void whirl2xaif::TY2F_Equivalence_FldList ( xml::ostream xos,
FLD_HANDLE  fldlist,
UINT  equiv_var_idx,
mUINT64  ofst,
BOOL common_block_equivalenced 
) [static]

Definition at line 560 of file ty2xaif.cxx.

References FALSE, FLD_equivalence(), FLD_last_field(), FLD_ofst(), FLD_type(), Make_fld_iter(), Num2Str(), StrCat(), TRUE, TY2F_Equivalence(), TY2F_Fld_Name(), TY_flist(), TY_split(), and Ty_Table.

Referenced by TY2F_Equivalence_List().

Here is the call graph for this function:

static void whirl2xaif::TY2F_Equivalence_List ( xml::ostream xos,
const TY_IDX  struct_ty 
) [static]

static const char* whirl2xaif::TY2F_Fld_Name ( FLD_HANDLE  fld,
BOOL  common_or_equivalence,
BOOL  alt_return_name 
) [static]

Definition at line 521 of file ty2xaif.cxx.

References FLD_name(), and NULL.

Referenced by TY2F_Dump_Fld_Path(), TY2F_Equivalence_FldList(), TY2F_List_Common_Flds(), and TY2F_Translate_Fld_Path().

Here is the call graph for this function:

void whirl2xaif::TY2F_Fld_Separator ( xml::ostream xos  ) 

Definition at line 1248 of file ty2xaif.cxx.

Referenced by TY2F_Translate_Fld_Path(), xlate_MemRef(), and xlate_SymRef().

static STAB_OFFSET whirl2xaif::TY2F_Fld_Size ( FLD_HANDLE  this_fld,
mUINT64  max_size 
) [static]

Definition at line 253 of file ty2xaif.cxx.

References FALSE, FLD_equivalence(), FLD_is_bit_field(), FLD_last_field(), FLD_ofst(), FLD_type(), Make_fld_iter(), TRUE, and TY_size().

Referenced by Construct_Fld_Path().

Here is the call graph for this function:

FLD_PATH_INFO * whirl2xaif::TY2F_Free_Fld_Path ( FLD_PATH_INFO *  fld_path  ) 

FLD_PATH_INFO * whirl2xaif::TY2F_Get_Fld_Path ( const TY_IDX  struct_ty,
const TY_IDX  object_ty,
STAB_OFFSET  offset 
)

static void whirl2xaif::TY2F_invalid ( xml::ostream xos,
TY_IDX  ty,
PUXlationContext &  ctxt 
) [static]

Definition at line 748 of file ty2xaif.cxx.

References FORTTK_DIE, TY_kind(), Ty_Table, and fortTkSupport::Diagnostics::UnexpectedInput.

Here is the call graph for this function:

static BOOL whirl2xaif::TY2F_is_character ( TY_IDX  ty  )  [static]

Definition at line 194 of file ty2xaif.cxx.

References KIND_ARRAY, TY_etype(), TY_is_character(), and TY_kind().

Referenced by Construct_Fld_Path().

Here is the call graph for this function:

FLD_HANDLE whirl2xaif::TY2F_Last_Fld ( FLD_PATH_INFO *  fld_path  ) 

Definition at line 1255 of file ty2xaif.cxx.

References f, whirl2xaif::Fld_Path_Info::fld, whirl2xaif::Fld_Path_Info::next, and NULL.

Referenced by WN2F_String_Argument().

static void whirl2xaif::TY2F_List_Common_Flds ( xml::ostream xos,
FLD_HANDLE  fldlist 
) [static]

Definition at line 718 of file ty2xaif.cxx.

References FALSE, FLD_equivalence(), FLD_last_field(), FLD_type(), Make_fld_iter(), TRUE, TY2F_Fld_Name(), TY_flist(), TY_split(), and Ty_Table.

Referenced by TY2F_Translate_Common().

Here is the call graph for this function:

FLD_PATH_INFO * whirl2xaif::TY2F_Point_At_Path ( FLD_PATH_INFO *  path,
STAB_OFFSET  off 
)

Definition at line 1268 of file ty2xaif.cxx.

References whirl2xaif::Fld_Path_Info::fld, FLD_ofst(), whirl2xaif::Fld_Path_Info::next, and NULL.

Referenced by whirl2xaif::LOC_INFO::WN2F_Find_And_Mark_Nested_Address().

Here is the call graph for this function:

static void whirl2xaif::TY2F_pointer ( xml::ostream xos,
TY_IDX  ty,
PUXlationContext &  ctxt 
) [static]

Definition at line 1045 of file ty2xaif.cxx.

References Be_Type_Tbl, KIND_STRUCT, Pointer_Mtype, TY2F_Pointer_To_Dope(), TY2F_translate(), TY_kind(), TY_name(), and TY_pointed().

Here is the call graph for this function:

static BOOL whirl2xaif::TY2F_Pointer_To_Dope ( TY_IDX  ty  )  [static]

Definition at line 209 of file ty2xaif.cxx.

References TY_name(), and TY_pointed().

Referenced by TY2F_pointer().

Here is the call graph for this function:

void whirl2xaif::TY2F_Prepend_Structures ( xml::ostream xos  ) 

static void whirl2xaif::TY2F_scalar ( xml::ostream xos,
TY_IDX  ty,
PUXlationContext &  ctxt 
) [static]

static void whirl2xaif::TY2F_struct ( xml::ostream xos,
TY_IDX  ty,
PUXlationContext &  ctxt 
) [static]

Definition at line 1003 of file ty2xaif.cxx.

References FORTTK_ASSERT, KIND_STRUCT, TY_kind(), TY_name(), Ty_Table, and fortTkSupport::Diagnostics::UnexpectedInput.

Here is the call graph for this function:

void whirl2xaif::TY2F_translate ( xml::ostream xos,
TY_IDX  ty,
PUXlationContext &  ctxt 
)

Definition at line 114 of file ty2xaif.cxx.

References TY2F_translate().

Here is the call graph for this function:

void whirl2xaif::TY2F_translate ( xml::ostream xos,
TY_IDX  ty,
BOOL  notyapp,
PUXlationContext &  ctxt 
)

void whirl2xaif::TY2F_Translate_ArrayElt ( xml::ostream xos,
TY_IDX  arr_ty_idx,
STAB_OFFSET  arr_ofst 
)

Definition at line 1085 of file ty2xaif.cxx.

Referenced by xlate_MemRef(), and xlate_SymRef().

void whirl2xaif::TY2F_Translate_Common ( xml::ostream xos,
const char *  name,
TY_IDX  ty_idx 
)

void whirl2xaif::TY2F_Translate_Equivalence ( xml::ostream xos,
TY_IDX  ty_idx,
BOOL  alt_return 
)

static void whirl2xaif::TY2F_Translate_EquivCommon_PtrFld ( xml::ostream xos,
FLD_HANDLE  fld 
) [static]

Definition at line 703 of file ty2xaif.cxx.

void whirl2xaif::TY2F_Translate_Fld_Path ( xml::ostream xos,
FLD_PATH_INFO *  fld_path,
BOOL  deref,
BOOL  member_of_common,
BOOL  alt_ret_name,
PUXlationContext &  ctxt 
)

static void whirl2xaif::TY2F_void ( xml::ostream xos,
TY_IDX  ty,
PUXlationContext &  ctxt 
) [static]

Definition at line 1071 of file ty2xaif.cxx.

References FORTTK_ASSERT, KIND_VOID, TY_kind(), Ty_Table, and fortTkSupport::Diagnostics::UnexpectedInput.

Here is the call graph for this function:

template<class T >
AttrAnnotInfo_<T> whirl2xaif::WhirlIdAnnot ( const T &  val_  )  [inline]

Definition at line 255 of file wn2xaif.h.

References AttrAnnot(), XAIFStringRepository::tag_WHIRLId(), and XAIFStrings.

Referenced by xlate_EntryPoint(), and xlate_ScalarizedRefTab().

Here is the call graph for this function:

template<class T >
AttrAnnotInfo_<T> whirl2xaif::WhirlIdAnnotVal ( const T &  val_  )  [inline]

void whirl2xaif::WN2F_Address_Of ( xml::ostream xos  ) 

Definition at line 921 of file wn2xaif.cxx.

void whirl2xaif::WN2F_agoto ( xml::ostream xos,
WN wn,
PUXlationContext ctxt 
)

void whirl2xaif::WN2F_alloca ( xml::ostream xos,
WN wn,
PUXlationContext ctxt 
)

Definition at line 521 of file wn2xaif_expr.cxx.

References FORTTK_DIE, TranslateWN(), fortTkSupport::Diagnostics::Unimplemented, and WN_kid0().

Referenced by initOurHandlerTable().

Here is the call graph for this function:

void whirl2xaif::WN2F_ar_construct ( xml::ostream xos,
WN wn,
PUXlationContext ctxt 
)

Definition at line 1087 of file wn2xaif_stmt.cxx.

References TranslateWN(), WN_kid(), and WN_kid_count().

Referenced by initOurHandlerTable().

Here is the call graph for this function:

void whirl2xaif::WN2F_array_bounds ( xml::ostream xos,
WN wn,
TY_IDX  array_ty,
PUXlationContext &  ctxt 
)

Definition at line 1131 of file wn2xaif_mem.cxx.

References FORTTK_ASSERT_WARN, TY_AR_etype(), TY_AR_ndims(), TY_is_f90_pointer(), TY_pointed(), TY_size(), WN_element_size(), WN_num_dim, and xlate_ArrayIndices().

Referenced by TY2F_Translate_Fld_Path(), and xlate_ARRAY().

Here is the call graph for this function:

void whirl2xaif::WN2F_arrayexp ( xml::ostream xos,
WN wn,
PUXlationContext &  ctxt 
)

Definition at line 921 of file wn2xaif_mem.cxx.

References TranslateWN(), and WN_kid0().

Referenced by initOurHandlerTable().

Here is the call graph for this function: