|
OpenADFortTk (basic)
|
#include <stdlib.h>#include <string.h>#include <iostream>#include <vector>#include <set>#include <list>#include <map>#include "xercesc/dom/DOMDocument.hpp"#include "xercesc/dom/DOMNode.hpp"#include "xercesc/dom/DOMElement.hpp"#include "Open64IRInterface/Open64BasicTypes.h"#include "Open64IRInterface/Open64IRInterface.hpp"#include "Open64IRInterface/SymTab.h"#include "Open64IRInterface/IFDiagnostics.h"#include "Open64IRInterface/wn_attr.h"#include "Open64IRInterface/stab_attr.h"#include "OpenAnalysis/Utils/DGraph/DGraphInterface.hpp"#include "OpenAnalysis/Utils/DGraph/DGraphImplement.hpp"#include "WhirlIDMaps.h"#include "WhirlParentize.h"#include "XAIFStrings.h"#include "Diagnostics.h"#include "xaif2whirl.h"#include "Args.h"#include "XlateExpression.h"#include "XlateStmt.h"#include "XAIF_DOMFilters.h"#include "XercesStrX.h"#include "InterfaceData.h"
Go to the source code of this file.
Classes | |
| class | xaif2whirl::ConvertModuleTypeFctr |
| struct | xaif2whirl::sort_CondVal |
Namespaces | |
| namespace | xaif2whirl |
Functions | |
| static void | xaif2whirl::TranslateCFG (WN *wn_pu, const xercesc::DOMElement *cfgElem, PUXlationContext &ctxt) |
| static WN * | xaif2whirl::xlate_CFG (WN *wn_pu, OA::OA_ptr< OA::DGraph::DGraphInterface > cfg, OA::OA_ptr< MyDGNode > root, PUXlationContext &ctxt, unsigned &startLabel_r, bool structuredCF) |
| static WN * | xaif2whirl::TranslateBasicBlock (WN *wn_pu, const xercesc::DOMElement *bbElem, PUXlationContext &ctxt, bool skipMarkeredGotoAndLabels, unsigned endLabel) |
| static void | xaif2whirl::TranslateBB_OLD (WN *wn_pu, const xercesc::DOMElement *bbElem, PUXlationContext &ctxt) |
| static void | xaif2whirl::xlate_BasicBlock_OLD (WN *wn_pu, const xercesc::DOMElement *bbElem, PUXlationContext &ctxt) |
| static void | xaif2whirl::xlate_BBCond_OLD (WN *wn_pu, const xercesc::DOMElement *bbElem, PUXlationContext &ctxt) |
| static bool | xaif2whirl::FindNextStmtInterval (const xercesc::DOMElement *bbElem, fortTkSupport::IdList< fortTkSupport::WNId > *bbIdList, fortTkSupport::WNIdToWNMap *wnmap, WN *blkWN, xercesc::DOMElement *&begXAIF, xercesc::DOMElement *&endXAIF, WN *&begWN, WN *&endWN) |
| static WN * | xaif2whirl::FindIntervalBoundary (const xercesc::DOMElement *elem, fortTkSupport::IdList< fortTkSupport::WNId > *bbIdList, fortTkSupport::WNIdToWNMap *wnmap, WN *blkWN, int boundary) |
| static WN * | xaif2whirl::FindWNBlock (const xercesc::DOMElement *bbElem, fortTkSupport::IdList< fortTkSupport::WNId > *idlist, PUXlationContext &ctxt) |
| static WN * | xaif2whirl::FindSafeInsertionPoint (WN *blckWN, WN *stmtWN) |
| static void | xaif2whirl::RemoveFromWhirlIdMaps (WN *wn, fortTkSupport::WNToWNIdMap *wn2idmap, fortTkSupport::WNIdToWNMap *id2wnmap) |
| static void | xaif2whirl::xlate_SymbolTable (const xercesc::DOMElement *elem, const char *scopeId, PU_Info *pu, PUXlationContext &ctxt) |
| static void | xaif2whirl::xlate_Symbol (const xercesc::DOMElement *elem, const char *scopeId, PU_Info *pu, PUXlationContext &ctxt, bool doTempSymbols) |
| static WN * | xaif2whirl::CreateOpenADReplacementBeg (const char *placeholder) |
| static WN * | xaif2whirl::CreateOpenADReplacementEnd () |
| static WN * | xaif2whirl::CreateIfCondition (WN *condWN) |
| static ST * | xaif2whirl::CreateST (const xercesc::DOMElement *elem, SYMTAB_IDX level, const char *nm, fortTkSupport::XAIFSymToSymbolMap &symMap, const char *scopeId) |
| static ST * | xaif2whirl::ConvertIntoGlobalST (ST *st) |
| static void | xaif2whirl::ConvertToActiveType (ST *st) |
| static void | xaif2whirl::ConvertStructMemberToActiveType (TY_IDX base_ty, TY_IDX ref_ty, UINT field_id) |
| static void | xaif2whirl::ConvertScalarizedRefToActiveType (WN *wn) |
| static FLD_HANDLE | xaif2whirl::TY_Lookup_FLD (TY_IDX struct_ty, TY_IDX ref_ty, UINT64 ref_ofst, unsigned short eqInst=1) |
| static TY_IDX | xaif2whirl::MY_Make_Array_Type (TY_IDX elem_ty, INT32 ndim, bool fixed, const INT64 *lower, const INT64 *upper) |
| static TY_IDX | xaif2whirl::XAIFTyToWHIRLTy (const char *type, const TYPE_ID mtype) |
| static OA::OA_ptr < OA::DGraph::DGraphInterface > | xaif2whirl::CreateCFGraph (const xercesc::DOMElement *elem) |
| void | xaif2whirl::TranslateCFG (PU_Info *pu_forest, const xercesc::DOMElement *cfgElem, PUXlationContext &ctxt) |
| static WN * | xaif2whirl::xlate_CFG_BasicBlock (WN *wn_pu, OA::OA_ptr< MyDGNode > curBB, PUXlationContext &ctxt, bool skipMarkeredGotoAndLabels, unsigned newCurBBLbl, unsigned newNextBBLbl, unsigned endLabel) |
| static WN * | xaif2whirl::xlate_CFG_BranchMulti (OA::OA_ptr< MyDGNode > curNode, WN *condWN, unsigned lastLbl, vector< OA::OA_ptr< MyDGEdge > > &outedges, map< OA::OA_ptr< MyDGNode >, unsigned > &nodeToLblMap) |
| static pair< WN *, OA::OA_ptr < MyDGNode > > | xaif2whirl::xlate_CFGstruct (WN *wn_pu, OA::OA_ptr< OA::DGraph::DGraphInterface > cfg, OA::OA_ptr< MyDGNode > startNode, set< xercesc::DOMElement * > &xlated, PUXlationContext &ctxt, unsigned int &startLabel_r) |
| static WN * | xaif2whirl::xlate_CFGunstruct (WN *wn_pu, OA::OA_ptr< OA::DGraph::DGraphInterface > cfg, OA::OA_ptr< MyDGNode > startNode, set< xercesc::DOMElement * > &xlated, PUXlationContext &ctxt, unsigned int &startLabel_r) |
| static WN * | xaif2whirl::xlate_CFG (WN *wn_pu, OA::OA_ptr< OA::DGraph::DGraphInterface > cfg, OA::OA_ptr< MyDGNode > root, PUXlationContext &ctxt, unsigned int &startLabel_r, bool structuredCF) |
| OA::OA_ptr< std::list < OA::OA_ptr < OA::DGraph::NodeInterface > > > | xaif2whirl::getOrderedSinkNodesList (OA::OA_ptr< OA::DGraph::DGraphInterface > cfg, OA::OA_ptr< OA::DGraph::NodeInterface > pNode) |
| void | xaif2whirl::getReversePostDFSListR (OA::OA_ptr< OA::DGraph::DGraphInterface > cfg, OA::OA_ptr< OA::DGraph::NodeInterface > pNode, std::map< OA::OA_ptr< OA::DGraph::NodeInterface >, bool > &visitMap, OA::OA_ptr< std::list< OA::OA_ptr< OA::DGraph::NodeInterface > > > pList) |
| OA::OA_ptr< std::list < OA::OA_ptr < OA::DGraph::NodeInterface > > > | xaif2whirl::getReversePostDFSList (OA::OA_ptr< OA::DGraph::DGraphInterface > cfg) |
| fortTkSupport::Symbol * | xaif2whirl::GetSymbol (const xercesc::DOMElement *elem, PUXlationContext &ctxt) |
| fortTkSupport::Symbol * | xaif2whirl::GetOrCreateSymbol (const char *sname, PUXlationContext &ctxt) |
| fortTkSupport::Symbol * | xaif2whirl::GetOrCreateBogusTmpSymbol (PUXlationContext &ctxt) |
| void | xaif2whirl::xlate_Scope (const xercesc::DOMElement *elem, PUXlationContext &ctxt) |
| bool | xaif2whirl::GetBoolAttr (const xercesc::DOMElement *elem, XMLCh *attr, bool default_val) |
| int | xaif2whirl::GetIntAttr (const xercesc::DOMElement *elem, XMLCh *attr, int default_val) |
| bool | xaif2whirl::GetHasConditionAttr (const xercesc::DOMElement *elem) |
| unsigned int | xaif2whirl::GetCondAttr (const xercesc::DOMElement *elem) |
| bool | xaif2whirl::GetActiveAttr (const xercesc::DOMElement *elem) |
| bool | xaif2whirl::GetDerivAttr (const xercesc::DOMElement *elem) |
| unsigned int | xaif2whirl::GetPositionAttr (const xercesc::DOMElement *elem) |
| bool | xaif2whirl::IsTagPresent (const xercesc::DOMElement *elem, const char *tag) |
| bool | xaif2whirl::IsTagPresent (const char *annotstr, const char *tag) |
| fortTkSupport::SymTabId | xaif2whirl::GetSymTabId (const xercesc::DOMElement *elem) |
| fortTkSupport::SymId | xaif2whirl::GetSymId (const xercesc::DOMElement *elem) |
| fortTkSupport::PUId | xaif2whirl::GetPUId (const xercesc::DOMElement *elem) |
| fortTkSupport::WNId | xaif2whirl::GetWNId (const xercesc::DOMElement *elem) |
| fortTkSupport::IdList < fortTkSupport::WNId > * | xaif2whirl::GetWNIdList (const xercesc::DOMElement *elem) |
| std::string | xaif2whirl::GetIntrinsicKey (const xercesc::DOMElement *elem) |
| PREG_IDX | xaif2whirl::GetPregId (const xercesc::DOMElement *elem) |
| template<class T > | |
| T | xaif2whirl::GetId (const xercesc::DOMElement *elem, const char *tag) |
| template<class T > | |
| fortTkSupport::IdList< T > * | xaif2whirl::GetIdList (const xercesc::DOMElement *elem, const char *tag) |
| template<class T > | |
| T | xaif2whirl::GetId (const char *idstr, const char *tag) |
| template<class T > | |
| fortTkSupport::IdList< T > * | xaif2whirl::GetIdList (const char *idstr, const char *tag) |
| WN * | xaif2whirl::CreateCallToIntrin (TYPE_ID rtype, const char *fname, unsigned int argc) |
| WN * | xaif2whirl::CreateCallToIntrin (TYPE_ID rtype, const char *fname, std::vector< WN * > &args) |
| WN * | xaif2whirl::CreateIntrinsicCall (OPERATOR opr, INTRINSIC intrn, TYPE_ID rtype, TYPE_ID dtype, std::vector< WN * > &args) |
| WN * | xaif2whirl::CreateBoolConst (unsigned int val) |
| void | xaif2whirl::DeclareActiveTypes () |
| TYPE_ID | xaif2whirl::XAIFFETypeToWHIRLMTy (const char *anFETypeName) |
| OA::OA_ptr< MyDGNode > | xaif2whirl::GetSuccessor (OA::OA_ptr< MyDGNode > node, bool succIsOutEdge) |
| OA::OA_ptr< MyDGNode > | xaif2whirl::GetSuccessorAlongEdge (OA::OA_ptr< MyDGNode > node, unsigned int condition, bool succIsOutEdge) |
| static std::string | xaif2whirl::DumpDotGraph_GetNodeName (OA::OA_ptr< MyDGNode > n) |
| void | xaif2whirl::DDumpDotGraph (OA::OA_ptr< OA::DGraph::DGraphInterface > graph) |
| void | xaif2whirl::DumpDotGraph (std::ostream &os, OA::OA_ptr< OA::DGraph::DGraphInterface > graph) |
Variables | |
| fortTkSupport::IntrinsicXlationTable | xaif2whirl::IntrinsicTable (fortTkSupport::IntrinsicXlationTable::X2W) |
| fortTkSupport::WNIdToWNTabMap | xaif2whirl::WNIdToWNTableMap |