#include <AliasIRInterface.hpp>


Public Member Functions | |
| AliasIRInterface () | |
| virtual | ~AliasIRInterface () |
| virtual OA_ptr< IRStmtIterator > | getStmtIterator (ProcHandle h)=0 |
| virtual OA_ptr < MemRefHandleIterator > | getAllMemRefs (StmtHandle stmt)=0 |
| virtual OA_ptr < PtrAssignPairStmtIterator > | getPtrAssignStmtPairIterator (StmtHandle stmt)=0 |
| virtual OA_ptr < ParamBindPtrAssignIterator > | getParamBindPtrAssignIterator (CallHandle call)=0 |
| virtual SymHandle | getFormalSym (ProcHandle, int)=0 |
| virtual OA_ptr < IRCallsiteIterator > | getCallsites (StmtHandle h)=0 |
| Return an iterator over all of the callsites in a given stmt. | |
| virtual OA_ptr< MemRefExpr > | getCallMemRefExpr (CallHandle h)=0 |
| virtual ProcHandle | getProcHandle (SymHandle sym)=0 |
| Given the callee symbol returns the callee proc handle. | |
| virtual SymHandle | getSymHandle (ProcHandle h)=0 |
| Given a procedure return associated SymHandle. | |
| virtual OA_ptr< Location > | getLocation (ProcHandle p, SymHandle s)=0 |
| virtual OA_ptr < MemRefExprIterator > | getMemRefExprIterator (MemRefHandle h)=0 |
The AliasIRInterface abstract base class gives a set of methods for querying the source IR for information relevant to alias analysis. This is the primary interface for Alias to the underlying intermediate representation.
Definition at line 71 of file AliasIRInterface.hpp.
| OA::Alias::AliasIRInterface::AliasIRInterface | ( | ) | [inline] |
Definition at line 73 of file AliasIRInterface.hpp.
| virtual OA::Alias::AliasIRInterface::~AliasIRInterface | ( | ) | [inline, virtual] |
Definition at line 74 of file AliasIRInterface.hpp.
| virtual OA_ptr<MemRefHandleIterator> OA::Alias::AliasIRInterface::getAllMemRefs | ( | StmtHandle | stmt | ) | [pure virtual] |
Return an iterator over all the memory reference handles that appear in the given statement. Order that memory references are iterated over can be arbitrary.
| virtual OA_ptr<MemRefExpr> OA::Alias::AliasIRInterface::getCallMemRefExpr | ( | CallHandle | h | ) | [pure virtual] |
| virtual OA_ptr<IRCallsiteIterator> OA::Alias::AliasIRInterface::getCallsites | ( | StmtHandle | h | ) | [pure virtual] |
Return an iterator over all of the callsites in a given stmt.
| virtual SymHandle OA::Alias::AliasIRInterface::getFormalSym | ( | ProcHandle | , | |
| int | ||||
| ) | [pure virtual] |
Return the symbol handle for the nth formal parameter to proc Number starts at 0 and implicit parameters should be given a number in the order as well. This number should correspond to the number provided in getParamBindPtrAssign pairs Should return SymHandle(0) if there is no formal parameter for given num
| virtual OA_ptr<Location> OA::Alias::AliasIRInterface::getLocation | ( | ProcHandle | p, | |
| SymHandle | s | |||
| ) | [pure virtual] |
Given a subprogram return an IRSymIterator for all symbols that are visible in the subprogram Given a subprogram return an IRStmtIterator for all statements that involve an unnamed dynamic memory allocation in the subprogram For the given symbol create a Location that indicates statically overlapping locations and information about whether the location is local or not for the given procedure, local means only visible in this procedure
| virtual OA_ptr<MemRefExprIterator> OA::Alias::AliasIRInterface::getMemRefExprIterator | ( | MemRefHandle | h | ) | [pure virtual] |
Given a MemRefHandle return an iterator over MemRefExprs that describe this memory reference
| virtual OA_ptr<ParamBindPtrAssignIterator> OA::Alias::AliasIRInterface::getParamBindPtrAssignIterator | ( | CallHandle | call | ) | [pure virtual] |
Return an iterator over <int, MemRefExpr> pairs where the integer represents which formal parameter and the MemRefExpr describes the corresponding actual argument.
| virtual ProcHandle OA::Alias::AliasIRInterface::getProcHandle | ( | SymHandle | sym | ) | [pure virtual] |
Given the callee symbol returns the callee proc handle.
| virtual OA_ptr<PtrAssignPairStmtIterator> OA::Alias::AliasIRInterface::getPtrAssignStmtPairIterator | ( | StmtHandle | stmt | ) | [pure virtual] |
If this is a PTR_ASSIGN_STMT then return an iterator over MemRefHandle pairs where there is a source and target such that target
| virtual OA_ptr<IRStmtIterator> OA::Alias::AliasIRInterface::getStmtIterator | ( | ProcHandle | h | ) | [pure virtual] |
Given a subprogram return an IRStmtIterator for the entire subprogram
| virtual SymHandle OA::Alias::AliasIRInterface::getSymHandle | ( | ProcHandle | h | ) | [pure virtual] |
Given a procedure return associated SymHandle.
1.6.1