#include <LocDFSet.hpp>


Definition at line 35 of file LocDFSet.hpp.
| OA::DataFlow::LocDFSet::LocDFSet | ( | ) |
Definition at line 21 of file LocDFSet.cpp.
References OA::DataFlow::debug, mSetPtr, and OA_DEBUG_CTRL_MACRO.
Referenced by calleeToCaller(), calleeToCallerTransitive(), callerToCallee(), callerToCalleeTransitive(), and overlapLocSet().
| OA::DataFlow::LocDFSet::LocDFSet | ( | const LocDFSet & | other | ) |
Definition at line 31 of file LocDFSet.cpp.
| OA::DataFlow::LocDFSet::~LocDFSet | ( | ) | [inline] |
Definition at line 39 of file LocDFSet.hpp.
Definition at line 725 of file LocDFSet.cpp.
References associateWithBaseHandle(), OA::OA_ptr< T >::convert(), mHasUnknownLoc, and mInvLocs.

| void OA::DataFlow::LocDFSet::associateWithBaseHandle | ( | IRHandle | baseHandle, | |
| OA_ptr< Location > | loc | |||
| ) | [private] |
Definition at line 715 of file LocDFSet.cpp.
Referenced by addToMap().
| OA_ptr< LocDFSet > OA::DataFlow::LocDFSet::calleeToCaller | ( | ProcHandle | callee, | |
| CallHandle | call, | |||
| ProcHandle | caller, | |||
| OA_ptr< Alias::InterAliasInterface > | interAlias, | |||
| OA_ptr< ParamBindings > | paramBind, | |||
| OA_ptr< CalleeToCallerVisitorIRInterface > | ir | |||
| ) |
converts this set of locations to equivalent set in caller and returns a newly created set Since this needs an IRInterface, probably only callable from within a Manager
converts this set of locations to equivalent set in caller and returns a newly created set
Definition at line 350 of file LocDFSet.cpp.
References OA::DataFlow::debug, getLocIterator(), and LocDFSet().

| OA_ptr< LocDFSet > OA::DataFlow::LocDFSet::calleeToCallerTransitive | ( | ProcHandle | callee, | |
| CallHandle | call, | |||
| ProcHandle | caller, | |||
| OA_ptr< Alias::InterAliasInterface > | interAlias, | |||
| OA_ptr< ParamBindings > | paramBind, | |||
| OA_ptr< CalleeToCallerVisitorIRInterface > | ir | |||
| ) |
converts this set of locations transitively to equivalent set in caller and returns a newly created set Since this needs an IRInterface, probably only callable from within a Manager
converts this set of locations transitively to equivalent set in caller and returns a newly created set
Definition at line 384 of file LocDFSet.cpp.
References OA::DataFlow::debug, OA::OA_ptr< T >::dump(), OA::MemRefsVisitor::getMemRefsIterator(), OA::MemRefsVisitor::hasMemRef(), hasOverlapLoc(), and LocDFSet().

| OA_ptr< LocDFSet > OA::DataFlow::LocDFSet::callerToCallee | ( | ProcHandle | caller, | |
| CallHandle | call, | |||
| ProcHandle | callee, | |||
| OA_ptr< Alias::InterAliasInterface > | interAlias, | |||
| OA_ptr< ParamBindings > | paramBind, | |||
| OA_ptr< CalleeToCallerVisitorIRInterface > | ir | |||
| ) |
Converts this set of locations to equivalent set in callee and returns a newly created set. Since this needs an IRInterface, probably only callable from within a Manager
converts this set of locations to equivalent set in callerToCallee and returns a newly created set
Definition at line 103 of file LocDFSet.cpp.
References OA::DataFlow::debug, OA::EvalToMemRefVisitor::getMemRef(), hasOverlapLoc(), OA::EvalToMemRefVisitor::isMemRef(), LocDFSet(), and OA::MemRefExpr::USE.

| OA_ptr< LocDFSet > OA::DataFlow::LocDFSet::callerToCalleeNot | ( | ProcHandle | caller, | |
| CallHandle | call, | |||
| ProcHandle | callee, | |||
| OA_ptr< Alias::InterAliasInterface > | interAlias, | |||
| OA_ptr< ParamBindings > | paramBind, | |||
| OA_ptr< CalleeToCallerVisitorIRInterface > | ir | |||
| ) |
Identifies the residual locations within this set that cannot be converted to an equivalent set in callee. and returns a newly created set of those residual locations. Since this needs an IRInterface, probably only callable from within a Manager
Definition at line 453 of file LocDFSet.cpp.
| OA_ptr< LocDFSet > OA::DataFlow::LocDFSet::callerToCalleeTransitive | ( | ProcHandle | caller, | |
| CallHandle | call, | |||
| ProcHandle | callee, | |||
| OA_ptr< Alias::InterAliasInterface > | interAlias, | |||
| OA_ptr< ParamBindings > | paramBind, | |||
| OA_ptr< CalleeToCallerVisitorIRInterface > | ir | |||
| ) |
converts this set of locations transitively to equivalent set in callee and returns a newly created set Since this needs an IRInterface, probably only callable from within a Manager
converts this set of locations transitively to equivalent set in callee and returns a newly created set
Definition at line 280 of file LocDFSet.cpp.
References OA::DataFlow::debug, OA::OA_ptr< T >::dump(), OA::MemRefsVisitor::getMemRefsIterator(), OA::MemRefsVisitor::hasMemRef(), hasOverlapLoc(), and LocDFSet().

| OA_ptr< DataFlowSet > OA::DataFlow::LocDFSet::clone | ( | ) |
Definition at line 43 of file LocDFSet.cpp.
Referenced by OA::Activity::ManagerUsefulStandard::meet().
| void OA::DataFlow::LocDFSet::disassociateWithBaseHandle | ( | IRHandle | baseHandle, | |
| OA_ptr< Location > | loc | |||
| ) | [private] |
Definition at line 770 of file LocDFSet.cpp.
References mBaseLocToSetMap.
| void OA::DataFlow::LocDFSet::dump | ( | std::ostream & | os, | |
| OA_ptr< IRHandlesIRInterface > | ir | |||
| ) |
Definition at line 656 of file LocDFSet.cpp.
References OA::OA_ptr< T >::dump(), getLocIterator(), mBaseLocToSetMap, and OA::OA_ptr< T >::ptrEqual().

| void OA::DataFlow::LocDFSet::dump | ( | std::ostream & | os | ) |
Definition at line 613 of file LocDFSet.cpp.
Referenced by OA::Activity::ManagerUsefulStandard::meet().
| bool OA::DataFlow::LocDFSet::empty | ( | ) |
whether or not the set is empty
Definition at line 820 of file LocDFSet.cpp.
| OA_ptr< LocIterator > OA::DataFlow::LocDFSet::getLocIterator | ( | ) |
iterator over locations
Definition at line 981 of file LocDFSet.cpp.
Referenced by calleeToCaller(), and dump().
| OA_ptr< LocIterator > OA::DataFlow::LocDFSet::getOverlapLocIterator | ( | OA_ptr< Location > | loc | ) |
iterator over locations in set that overlap with given location
Definition at line 924 of file LocDFSet.cpp.
whether or not the set contains the given location
Definition at line 975 of file LocDFSet.cpp.
whether or not the set contains a location that overlaps with the given location
Definition at line 855 of file LocDFSet.cpp.
References OA::OA_ptr< T >::convert(), mBaseLocToSetMap, mHasUnknownLoc, mInvLocs, setHasOverlapLoc(), and updateMap().
Referenced by calleeToCallerTransitive(), callerToCallee(), and callerToCalleeTransitive().

Definition at line 760 of file LocDFSet.cpp.
| bool OA::DataFlow::LocDFSet::operator!= | ( | DataFlowSet & | other | ) | const |
Definition at line 59 of file LocDFSet.cpp.
| bool OA::DataFlow::LocDFSet::operator== | ( | DataFlowSet & | other | ) | const |
Definition at line 52 of file LocDFSet.cpp.
| void OA::DataFlow::LocDFSet::output | ( | OA::IRHandlesIRInterface & | ir | ) | [virtual] |
Implements OA::Annotation.
Definition at line 697 of file LocDFSet.cpp.
| OA_ptr< LocDFSet > OA::DataFlow::LocDFSet::overlapLocSet | ( | OA_ptr< Location > | loc, | |
| OA_ptr< LocSet > | aSet | |||
| ) | [private] |
whether the give loc overlaps with anything in the given set
Definition at line 905 of file LocDFSet.cpp.
References LocDFSet(), and OA::OA_ptr< T >::ptrEqual().

Definition at line 811 of file LocDFSet.cpp.
Definition at line 777 of file LocDFSet.cpp.
Definition at line 90 of file LocDFSet.cpp.
| bool OA::DataFlow::LocDFSet::setHasOverlapLoc | ( | OA_ptr< Location > | loc, | |
| OA_ptr< LocSet > | aSet | |||
| ) | [private] |
whether the give loc overlaps with anything in the given set
Definition at line 836 of file LocDFSet.cpp.
Referenced by hasOverlapLoc().
Definition at line 79 of file LocDFSet.cpp.
| LocDFSet & OA::DataFlow::LocDFSet::setUnion | ( | DataFlowSet & | other | ) |
Definition at line 66 of file LocDFSet.cpp.
Referenced by OA::Activity::ManagerICFGVaryActive::meet(), and OA::Activity::ManagerICFGUseful::meet().
| void OA::DataFlow::LocDFSet::updateMap | ( | ) | [private] |
Definition at line 822 of file LocDFSet.cpp.
Referenced by hasOverlapLoc().
friend class LocDFSetIterator [friend] |
Definition at line 140 of file LocDFSet.hpp.
std::map<IRHandle,OA_ptr<LocSet> > OA::DataFlow::LocDFSet::mBaseLocToSetMap [private] |
Definition at line 159 of file LocDFSet.hpp.
Referenced by disassociateWithBaseHandle(), dump(), and hasOverlapLoc().
bool OA::DataFlow::LocDFSet::mBaseLocToSetMapValid [private] |
Definition at line 154 of file LocDFSet.hpp.
bool OA::DataFlow::LocDFSet::mHasUnknownLoc [private] |
Definition at line 155 of file LocDFSet.hpp.
Referenced by addToMap(), and hasOverlapLoc().
OA_ptr<LocSet> OA::DataFlow::LocDFSet::mInvLocs [private] |
Definition at line 156 of file LocDFSet.hpp.
Referenced by addToMap(), and hasOverlapLoc().
Definition at line 169 of file LocDFSet.hpp.
OA_ptr<LocSet> OA::DataFlow::LocDFSet::mSetPtr [protected] |
Definition at line 146 of file LocDFSet.hpp.
Referenced by LocDFSet().
1.7.1