ROSE
0.9.6a
|
#include <SteensgaardPtrAnal.h>
Public Member Functions | |
void | output (std::ostream &out) |
Public Member Functions inherited from PtrAnal | |
void | operator() (AstInterface &fa, const AstNodePtr &program) |
bool | may_alias (AstInterface &fa, const AstNodePtr &r1, const AstNodePtr &r2) |
VarRef | translate_exp (const AstNodePtr &exp) const |
StmtRef | translate_stmt (const AstNodePtr &stmt) const |
virtual void | contrl_flow (Stmt stmt1, Stmt stmt2, CFGConfig::EdgeType t) |
Private Types | |
typedef ECRmap | Impl |
Private Member Functions | |
virtual bool | may_alias (const std::string &x, const std::string &y) |
virtual Stmt | x_eq_y (const std::string &x, const std::string &y) |
virtual Stmt | x_eq_addr_y (const std::string &x, const std::string &y) |
virtual Stmt | x_eq_deref_y (const std::string &x, const std::string &field, const std::string &y) |
virtual Stmt | x_eq_field_y (const std::string &x, const std::string &field, const std::string &y) |
virtual Stmt | deref_x_eq_y (const std::string &x, const std::list< std::string > &fields, const std::string &y) |
virtual Stmt | field_x_eq_y (const std::string &x, const std::list< std::string > &fields, const std::string &y) |
virtual Stmt | x_eq_op_y (OpType op, const std::string &x, const std::list< std::string > &y) |
virtual Stmt | allocate_x (const std::string &x) |
virtual Stmt | funcdef_x (const std::string &x, const std::list< std::string > ¶ms, const std::list< std::string > &output) |
virtual Stmt | funccall_x (const std::string &x, const std::list< std::string > &args, const std::list< std::string > &result) |
virtual Stmt | funcexit_x (const std::string &x) |
Private Member Functions inherited from ECRmap | |
void | x_eq_y (Variable x, Variable y) |
void | x_eq_addr_y (Variable x, Variable y) |
void | x_eq_deref_y (Variable x, Variable y) |
void | x_eq_op_y (Variable x, const std::list< Variable > &y) |
void | allocate (Variable x) |
void | deref_x_eq_y (Variable x, Variable y) |
void | function_def_x (Variable x, const std::list< Variable > &inParams, const std::list< Variable > &outParams) |
void | function_call_p (Variable p, const std::list< Variable > &x, const std::list< Variable > &y) |
virtual void | dump () |
int | find_LOC (std::ostream &out, std::map< ECR *, int > &locmap, int &loc, ECR *p) |
void | outputLOC (std::ostream &out, std::map< ECR *, int > &locmap, int &loc, ECR *p) |
void | output (std::ostream &out) |
bool | mayAlias (Variable x, Variable y) |
virtual | ~ECRmap () |
Additional Inherited Members | |
Public Types inherited from PtrAnal | |
enum | OpType { EQ, NE, LT, GT, LE, GE, OTHER } |
typedef void * | Stmt |
typedef std::list< Stmt > | StmtRef |
Protected Member Functions inherited from PtrAnal | |
void | ProcessAssign (AstInterface &fa, const AstNodePtr &mod, const AstNodePtr &rhs, bool readlhs=0) |
void | ProcessExpression (AstInterface &fa, const std::string &modname, const AstNodePtr &rhs) |
void | ProcessMod (AstInterface &fa, const std::string &readname, std::list< std::string > &fields, const AstNodePtr &mod) |
void | ControlFlowAnalysis (AstInterface &fa, const AstNodePtr &head, Stmt defn) |
std::string | Get_VarName (AstInterface &fa, const AstNodePtr &rhs) |
virtual bool | ProcessTree (AstInterface &_fa, const AstNodePtr &s, AstInterface::TraversalVisitType t) |
Static Protected Member Functions inherited from PtrAnal | |
static std::string | get_func_output (const std::string &fname, int i) |
static std::string | get_func_par (const std::string &fname, int i) |
Definition at line 8 of file SteensgaardPtrAnal.h.
|
private |
Definition at line 11 of file SteensgaardPtrAnal.h.
|
inlineprivatevirtual |
Implements PtrAnal.
Definition at line 12 of file SteensgaardPtrAnal.h.
References ECRmap::mayAlias().
|
inlineprivatevirtual |
Implements PtrAnal.
Definition at line 14 of file SteensgaardPtrAnal.h.
References ECRmap::x_eq_y().
|
inlineprivatevirtual |
Implements PtrAnal.
Definition at line 16 of file SteensgaardPtrAnal.h.
References ECRmap::x_eq_addr_y().
|
inlineprivatevirtual |
Implements PtrAnal.
Definition at line 18 of file SteensgaardPtrAnal.h.
References ECRmap::x_eq_deref_y().
|
inlineprivatevirtual |
Implements PtrAnal.
Definition at line 21 of file SteensgaardPtrAnal.h.
References ECRmap::x_eq_y().
|
inlineprivatevirtual |
Implements PtrAnal.
Definition at line 24 of file SteensgaardPtrAnal.h.
References ECRmap::deref_x_eq_y().
|
inlineprivatevirtual |
Implements PtrAnal.
Definition at line 27 of file SteensgaardPtrAnal.h.
References ECRmap::x_eq_y().
|
inlineprivatevirtual |
Implements PtrAnal.
Definition at line 30 of file SteensgaardPtrAnal.h.
References ECRmap::x_eq_op_y().
|
inlineprivatevirtual |
Implements PtrAnal.
Definition at line 32 of file SteensgaardPtrAnal.h.
References ECRmap::allocate().
|
inlineprivatevirtual |
Implements PtrAnal.
Definition at line 34 of file SteensgaardPtrAnal.h.
References ECRmap::function_def_x().
|
inlineprivatevirtual |
Implements PtrAnal.
Definition at line 38 of file SteensgaardPtrAnal.h.
References ECRmap::function_call_p().
|
inlineprivatevirtual |
Implements PtrAnal.
Definition at line 41 of file SteensgaardPtrAnal.h.
|
inline |
Definition at line 44 of file SteensgaardPtrAnal.h.
References ECRmap::output().