00001 #ifndef PORT_CALL_PATH_H_INCLUDED_ 00002 #define PORT_CALL_PATH_H_INCLUDED_ 00003 00004 #include "rose.h" 00005 00006 namespace risc { 00007 00008 namespace sg { 00009 00010 class PortCallPath { 00011 00012 public: 00013 std::list<SgFunctionCallExp*> path_; 00014 00015 }; 00016 00017 bool operator==(const PortCallPath &lhs , const PortCallPath &rhs); 00018 00019 struct SymbolWithPath { 00020 SgVariableSymbol *symbol_; 00021 PortCallPath pcp_; 00022 00023 SymbolWithPath(SgVariableSymbol* symbol, PortCallPath pcp): 00024 symbol_(symbol), 00025 pcp_(pcp) 00026 { } 00027 }; 00028 00029 struct NodeWithPath { 00030 SgNode *node_; 00031 PortCallPath pcp_; 00032 00033 NodeWithPath(SgNode* node, PortCallPath pcp): 00034 node_(node), 00035 pcp_(pcp) 00036 { } 00037 }; 00038 00039 } // end of namespace sg 00040 00041 } // end of namespace risc 00042 00043 #endif /* PORT_CALL_PATH_H_INCLUDED_ */ 00044 00045 /* ex: set softtabstop=2 tabstop=2 shiftwidth=2 expandtab: */