Main Page | Class Hierarchy | Alphabetical List | Compound List | File List | Compound Members | File Members

LiveVar Class Reference

#include <live.H>

List of all members.

Public Member Functions

 LiveVar ()
 ~LiveVar ()
void SetCreateTable (bool c)
bool GetCreateTable (void)
void SetEdgeInfo (legoHash< int, legoOprd *, legoHash_lt_int > *t)
legoHash< int, legoOprd *,
legoHash_lt_int > * 
GetEdgeInfo (void)
void analyze (legoRegion *, legoProc *)
void analyze (legoModule *)
void CollectEdgeInfo (legoProc *)
 LiveVar ()
 ~LiveVar ()
void SetCreateTable (bool c)
bool GetCreateTable (void)
void SetEdgeInfo (legoHash< int, legoOprd *, legoHash_lt_int > *t)
legoHash< int, legoOprd *,
legoHash_lt_int > * 
GetEdgeInfo (void)
void analyze (legoRegion *, legoProc *)
void analyze (legoModule *)
void CollectEdgeInfo (legoProc *)

Private Member Functions

void CreateReadHashKey (int, int, int)
void CreateReadHashKey (int, int, int, int)
void CreateWriteHashKey (int, int, int)
void CreateWriteHashKey (int, int, int, int)
void BB_defs (legoOp *, int)
void BB_uses (legoOp *, int)
void Process (legoRegion *, legoProc *)
void BB_live_out (legoProc *, legoRegion *)
void BB_live_in (legoProc *, legoRegion *)
void deleteedgeinfo (int)
void CreateReadHashKey (int, int, int)
void CreateReadHashKey (int, int, int, int)
void CreateWriteHashKey (int, int, int)
void CreateWriteHashKey (int, int, int, int)
void BB_defs (legoOp *, int)
void BB_uses (legoOp *, int)
void Process (legoRegion *, legoProc *)
void BB_live_out (legoProc *, legoRegion *)
void BB_live_in (legoProc *, legoRegion *)
void deleteedgeinfo (int)

Private Attributes

SetInfoTable Table
bool ChangeBit
int IterCount
char * ReadHashKey
char * ReadHashPart1
char * ReadHashPart2
char * ReadHashPart3
char * WriteHashKey
char * WriteHashPart1
char * WriteHashPart2
char * WriteHashPart3
char * LBHashKey
char * UBHashKey
bool CreateTable
legoHash< int, legoOprd *,
legoHash_lt_int > * 
EdgeInfo
char * ReadHashKey
char * ReadHashPart1
char * ReadHashPart2
char * ReadHashPart3
char * WriteHashKey
char * WriteHashPart1
char * WriteHashPart2
char * WriteHashPart3
char * LBHashKey
char * UBHashKey
legoHash< int, legoOprd *,
legoHash_lt_int > * 
EdgeInfo


Constructor & Destructor Documentation

LiveVar::LiveVar  )  [inline]
 

Definition at line 46 of file include/live.H.

References CreateTable, EdgeInfo, and TRUE.

LiveVar::~LiveVar  )  [inline]
 

Definition at line 50 of file include/live.H.

References EdgeInfo.

LiveVar::LiveVar  )  [inline]
 

Definition at line 46 of file src/live.H.

References CreateTable, EdgeInfo, and TRUE.

LiveVar::~LiveVar  )  [inline]
 

Definition at line 50 of file src/live.H.

References EdgeInfo.


Member Function Documentation

void LiveVar::analyze legoModule  ) 
 

void LiveVar::analyze legoRegion ,
legoProc
 

void LiveVar::analyze legoModule  ) 
 

Definition at line 1746 of file live.C.

References analyze(), derr, legoPSet< void * >::GetCount(), legoPSet< void * >::GetItem(), i, and modulePtr.

void LiveVar::analyze legoRegion ,
legoProc
 

Definition at line 1622 of file live.C.

References BB_defs(), BB_uses(), ChangeBit, CollectEdgeInfo(), CreateTable, derr, EdgeInfo, FALSE, legoPSet< void * >::GetCount(), legoPSet< void * >::GetItem(), legoOp::GetOpId(), legoOp::GetOutListPtr(), legoProc::GetProcName(), legoRegion::GetRegionId(), legoRegion::GetRegionType(), HASH_KEY_SIZE, HASH_PART_SIZE, IS_BLOCK, IterCount, LBHashKey, Process(), ReadHashKey, ReadHashPart1, ReadHashPart2, ReadHashPart3, RT_PROC, SetInfoTable, subblock, Table, TRUE, and UBHashKey.

Referenced by analyze(), and LiveVariables().

void LiveVar::BB_defs legoOp ,
int 
[private]
 

void LiveVar::BB_defs legoOp ,
int 
[private]
 

Definition at line 141 of file live.C.

References CreateReadHashKey(), CreateWriteHashKey(), SetInfo::Def, derr, FALSE, FindReturnMacro(), FT_PR, legoOp::GetDestOprdPtr(), legoOprd::GetNextOprdPtr(), legoOp::GetOpId(), legoOprd::GetOprdFileType(), legoOprd::GetOprdRegNum(), legoOprd::GetOprdType(), legoOp::GetOutListPtr(), legoOp::GetParentBlockPtr(), legoOp::GetPredOprdPtr(), legoOp::GetPrevLink(), legoOp::GetSrcOprdPtr(), legoOprd::GetValid(), legoOp::IsBRLOp(), SetInfo::LiveIn, SetInfo::LiveOut, SetInfo::Oprd, OT_MACRO, OT_REG, ReadHashKey, RT_BB, subblock, Table, TRUE, SetInfo::Use, and WriteHashKey.

Referenced by analyze().

void LiveVar::BB_live_in legoProc ,
legoRegion
[private]
 

void LiveVar::BB_live_in legoProc ,
legoRegion
[private]
 

Definition at line 1484 of file live.C.

References ChangeBit, derr, FALSE, legoPSet< void * >::GetCount(), legoRegion::GetRegionId(), IterCount, LBHashKey, sprintf(), subblock, Table, TRUE, and UBHashKey.

Referenced by Process().

void LiveVar::BB_live_out legoProc ,
legoRegion
[private]
 

void LiveVar::BB_live_out legoProc ,
legoRegion
[private]
 

Definition at line 1235 of file live.C.

References add_to_existing_attr(), create_new_attr(), SetInfo::Def, derr, FALSE, FindControlEdge(), FindLiveAttribute(), legoRegion::GetChildren(), legoPSet< void * >::GetCount(), opEdges::GetEdgeId(), legoRegion::GetEntryOpsPtr(), legoRegion::GetExitOpsPtr(), regionList::GetNextListPtr(), opList::GetNextListPtr(), legoOp::GetOpId(), opList::GetOpPtr(), legoRegion::GetRegionId(), regionList::GetRegionPtr(), legoRegion::GetRegionType(), HASH_KEY_SIZE, i, IS_BLOCK, IterCount, LBHashKey, LegoNonFatal(), SetInfo::LiveIn, SetInfo::LiveOut, SetInfo::Oprd, ReadHashKey, ReadHashPart1, RT_BB, sprintf(), strcat(), strchr(), strcpy(), subblock, Table, TRUE, UBHashKey, SetInfo::Use, and WriteHashKey.

Referenced by Process().

void LiveVar::BB_uses legoOp ,
int 
[private]
 

void LiveVar::BB_uses legoOp ,
int 
[private]
 

Definition at line 286 of file live.C.

References CreateReadHashKey(), CreateWriteHashKey(), DBL_P2, DBL_RET, SetInfo::Def, derr, DT_I, exit(), FALSE, FindFirstOutGoingReg(), FindLastOutGoingReg(), FindReturnMacro(), FT_BTR, FT_GPR, FT_PR, legoOp::GetDestOprdPtr(), legoOprd::GetNextOprdPtr(), legoOp::GetOpcodePtr(), legoOp::GetOpId(), legoOprd::GetOprdFileType(), legoOprd::GetOprdRegNum(), legoOprd::GetOprdType(), legoOp::GetOutListPtr(), legoOp::GetParentBlockPtr(), legoRegion::GetParentPtr(), legoOp::GetPredOprdPtr(), legoOp::GetPrevLink(), legoRegion::GetRegionType(), legoOp::GetSrcOprdPtr(), legoOprd::GetValid(), INT_P1, INT_RET, legoOp::IsBRLOp(), legoOp::IsRETOp(), LegoNonFatal(), SetInfo::LiveIn, SetInfo::LiveOut, SetInfo::Oprd, OT_MACRO, OT_REG, ReadHashKey, RS_STATIC, RT_BB, RT_PROC, RT_R, legoOprd::SetOprdDataType(), legoOprd::SetOprdFileType(), legoOprd::SetOprdRegNum(), legoOprd::SetOprdRegStyle(), legoOprd::SetOprdRegType(), legoOprd::SetOprdType(), legoOprd::SetValid(), subblock, Table, TRUE, SetInfo::Use, and WriteHashKey.

Referenced by analyze().

void LiveVar::CollectEdgeInfo legoProc  ) 
 

void LiveVar::CollectEdgeInfo legoProc  ) 
 

Definition at line 1785 of file live.C.

References CreateTable, deleteedgeinfo(), EdgeInfo, FindLiveAttribute(), attrs::GetAttrOprdPtr(), legoProc::GetEdgeDictionary(), opEdges::GetEdgeId(), opEdges::GetNextOpEdgePtr(), and legoHash< int, legoOprd *, legoHash_lt_int >::Set().

Referenced by analyze().

void LiveVar::CreateReadHashKey int  ,
int  ,
int  ,
int 
[private]
 

void LiveVar::CreateReadHashKey int  ,
int  ,
int 
[private]
 

void LiveVar::CreateReadHashKey int  ,
int  ,
int  ,
int 
[inline, private]
 

Definition at line 61 of file live.C.

References ReadHashKey, ReadHashPart1, ReadHashPart2, ReadHashPart3, sprintf(), strcat(), and X.

void LiveVar::CreateReadHashKey int  ,
int  ,
int 
[inline, private]
 

Definition at line 41 of file live.C.

References ReadHashKey, ReadHashPart1, ReadHashPart2, sprintf(), strcat(), and X.

Referenced by BB_defs(), and BB_uses().

void LiveVar::CreateWriteHashKey int  ,
int  ,
int  ,
int 
[private]
 

void LiveVar::CreateWriteHashKey int  ,
int  ,
int 
[private]
 

void LiveVar::CreateWriteHashKey int  ,
int  ,
int  ,
int 
[inline, private]
 

Definition at line 106 of file live.C.

References HASH_KEY_SIZE, HASH_PART_SIZE, sprintf(), strcat(), WriteHashKey, WriteHashPart1, WriteHashPart2, WriteHashPart3, and X.

void LiveVar::CreateWriteHashKey int  ,
int  ,
int 
[inline, private]
 

Definition at line 82 of file live.C.

References HASH_KEY_SIZE, HASH_PART_SIZE, sprintf(), strcat(), WriteHashKey, WriteHashPart1, WriteHashPart2, and X.

Referenced by BB_defs(), and BB_uses().

void LiveVar::deleteedgeinfo int   )  [private]
 

void LiveVar::deleteedgeinfo int   )  [private]
 

Definition at line 1760 of file live.C.

References legoHash< int, legoOprd *, legoHash_lt_int >::Delete(), legoHash< int, legoOprd *, legoHash_lt_int >::DeleteAll(), and EdgeInfo.

Referenced by CollectEdgeInfo().

bool LiveVar::GetCreateTable void   )  [inline]
 

Definition at line 53 of file src/live.H.

References CreateTable.

bool LiveVar::GetCreateTable void   )  [inline]
 

Definition at line 53 of file include/live.H.

References CreateTable.

legoHash<int, legoOprd *, legoHash_lt_int>* LiveVar::GetEdgeInfo void   )  [inline]
 

Definition at line 58 of file src/live.H.

References EdgeInfo.

legoHash<int, legoOprd *, legoHash_lt_int>* LiveVar::GetEdgeInfo void   )  [inline]
 

Definition at line 58 of file include/live.H.

References EdgeInfo.

Referenced by LiveVariables().

void LiveVar::Process legoRegion ,
legoProc
[private]
 

void LiveVar::Process legoRegion ,
legoProc
[private]
 

Definition at line 1560 of file live.C.

References BB_live_in(), BB_live_out(), derr, legoPSet< void * >::GetCount(), legoRegion::GetEntryOpsPtr(), legoPSet< void * >::GetItem(), legoOp::GetNextLink(), opList::GetOpPtr(), legoOp::GetOutListPtr(), legoRegion::GetRegionId(), legoRegion::GetRegionType(), i, IS_BLOCK, RT_BB, and subblock.

Referenced by analyze().

void LiveVar::SetCreateTable bool  c  )  [inline]
 

Definition at line 52 of file src/live.H.

References c, and CreateTable.

void LiveVar::SetCreateTable bool  c  )  [inline]
 

Definition at line 52 of file include/live.H.

References c, and CreateTable.

Referenced by LiveVariables().

void LiveVar::SetEdgeInfo legoHash< int, legoOprd *, legoHash_lt_int > *  t  )  [inline]
 

Definition at line 55 of file src/live.H.

References EdgeInfo.

void LiveVar::SetEdgeInfo legoHash< int, legoOprd *, legoHash_lt_int > *  t  )  [inline]
 

Definition at line 55 of file include/live.H.

References EdgeInfo.

Referenced by LiveVariables().


Member Data Documentation

bool LiveVar::ChangeBit [private]
 

Definition at line 15 of file src/live.H.

Referenced by analyze(), and BB_live_in().

bool LiveVar::CreateTable [private]
 

Definition at line 41 of file src/live.H.

Referenced by analyze(), CollectEdgeInfo(), GetCreateTable(), LiveVar(), and SetCreateTable().

legoHash<int, legoOprd *, legoHash_lt_int>* LiveVar::EdgeInfo [private]
 

Definition at line 42 of file src/live.H.

legoHash<int, legoOprd *, legoHash_lt_int>* LiveVar::EdgeInfo [private]
 

Definition at line 42 of file include/live.H.

Referenced by analyze(), CollectEdgeInfo(), deleteedgeinfo(), GetEdgeInfo(), LiveVar(), SetEdgeInfo(), and ~LiveVar().

int LiveVar::IterCount [private]
 

Definition at line 17 of file src/live.H.

Referenced by analyze(), BB_live_in(), and BB_live_out().

char* LiveVar::LBHashKey [private]
 

Definition at line 27 of file src/live.H.

char* LiveVar::LBHashKey [private]
 

Definition at line 27 of file include/live.H.

Referenced by analyze(), BB_live_in(), and BB_live_out().

char* LiveVar::ReadHashKey [private]
 

Definition at line 19 of file src/live.H.

char* LiveVar::ReadHashKey [private]
 

Definition at line 19 of file include/live.H.

Referenced by analyze(), BB_defs(), BB_live_out(), BB_uses(), and CreateReadHashKey().

char* LiveVar::ReadHashPart1 [private]
 

Definition at line 20 of file src/live.H.

char* LiveVar::ReadHashPart1 [private]
 

Definition at line 20 of file include/live.H.

Referenced by analyze(), BB_live_out(), and CreateReadHashKey().

char* LiveVar::ReadHashPart2 [private]
 

Definition at line 21 of file src/live.H.

char* LiveVar::ReadHashPart2 [private]
 

Definition at line 21 of file include/live.H.

Referenced by analyze(), and CreateReadHashKey().

char* LiveVar::ReadHashPart3 [private]
 

Definition at line 22 of file src/live.H.

char* LiveVar::ReadHashPart3 [private]
 

Definition at line 22 of file include/live.H.

Referenced by analyze(), and CreateReadHashKey().

SetInfoTable LiveVar::Table [private]
 

Definition at line 13 of file src/live.H.

Referenced by analyze(), BB_defs(), BB_live_in(), BB_live_out(), and BB_uses().

char* LiveVar::UBHashKey [private]
 

Definition at line 28 of file src/live.H.

char* LiveVar::UBHashKey [private]
 

Definition at line 28 of file include/live.H.

Referenced by analyze(), BB_live_in(), and BB_live_out().

char* LiveVar::WriteHashKey [private]
 

Definition at line 23 of file src/live.H.

char* LiveVar::WriteHashKey [private]
 

Definition at line 23 of file include/live.H.

Referenced by BB_defs(), BB_live_out(), BB_uses(), and CreateWriteHashKey().

char* LiveVar::WriteHashPart1 [private]
 

Definition at line 24 of file src/live.H.

char* LiveVar::WriteHashPart1 [private]
 

Definition at line 24 of file include/live.H.

Referenced by CreateWriteHashKey().

char* LiveVar::WriteHashPart2 [private]
 

Definition at line 25 of file src/live.H.

char* LiveVar::WriteHashPart2 [private]
 

Definition at line 25 of file include/live.H.

Referenced by CreateWriteHashKey().

char* LiveVar::WriteHashPart3 [private]
 

Definition at line 26 of file src/live.H.

char* LiveVar::WriteHashPart3 [private]
 

Definition at line 26 of file include/live.H.

Referenced by CreateWriteHashKey().


The documentation for this class was generated from the following files:
Generated on Mon Jul 21 20:31:16 2003 for TINKER LEGO DOC by doxygen 1.3.2