Class HandleMap#

Inheritance Relationships#

Base Types#

Class Documentation#

class HandleMap : public LoopTreeObserver, public AstObserver#

Public Types

typedef std::map<const void*, LocalVar*> AstMapType#

Public Functions

~HandleMap()#
inline HandleMap()#
inline int NumOfLoops()#
inline int NumOfBodies()#
std::string to_string() const#
LocalVar *GetLoopHandle(AstInterface &fa, const AstNodePtr &loop)#
LocalVar *GetLoopHandle(LoopTreeNode *loop)#
LocalVar *GetBodyHandle(LoopTreeNode *loop, LocalVar *loopHandle)#
inline const std::vector<LocalVar*> &GetTopTraceHandles()#
void GenTraceHandles(POETProgram &poet, AstInterface &fa)#
void GenTraceHandles(POETProgram &poet, LoopTreeNode *r)#
inline LocalVar *HasBodyHandle(LocalVar *loopHandle)#

Public Static Functions

static LocalVar *GetTraceTarget()#
static LocalVar *GetTraceTop(const std::string &handleName)#
static LocalVar *GetTraceDecl(LocalVar *top)#
static LocalVar *GetTracePrivate(LocalVar *top)#
static LocalVar *FindTracePrivate(LocalVar *top)#
static LocalVar *GetTraceInclude()#
static LocalVar *FindTraceInclude()#
static LocalVar *GetTraceCleanup(LocalVar *top)#
static LocalVar *FindTraceCleanup(LocalVar *top)#
static LocalVar *DeclareTraceInclude(POETProgram &poet, int &lineNo)#
static LocalVar *GenTraceCommand(POETProgram &poet, const std::vector<LocalVar*> &handles, LocalVar *target, int &lineNo)#