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

search.H

Go to the documentation of this file.
00001 // search.H
00002 
00003 /*
00004  * 7/16/97 WAH:  Created.
00005  * 11/21/97 WAH: Revamped some function calls; added FindLcAttribute for
00006  *               opEdges and FindMaxEdgeAttrId.
00007  * 12/16/97 WAH: Added FindControlEdge.
00008  * 1/15/98 WAH:  Added FindFirstBranch.
00009  * 1/30/98 WAH:  Added opcode classification functions.
00010  * 2/11/98 WAH:  Added FindOpWeight.
00011  * 2/12/98 WAH:  Added FindReturnMacro.
00012  * 4/9/98 WAH:   Added FindFreqAttribute.
00013  */
00014 
00015 #ifndef LEGOUTIL_SEARCH_HEADER
00016 #define LEGOUTIL_SEARCH_HEADER
00017 
00018 #include "lego.H"
00019 
00020 legoOp          *FindMaxOpId (legoModule *);
00021 legoOp          *FindMaxOpId (legoProc *);
00022 
00023 int             FindMaxRegNum (legoProc *);
00024 int             FindMaxRegNum (legoProc *,enum fileTypes);
00025 int             FindMaxEdgeAttrId (legoProc *);
00026 
00027 legoRegion      *FindParentRegionType (legoRegion *, enum regionTypes);
00028 legoRegion      *FindParentRegionType (legoOp *, enum regionTypes);
00029 legoRegion      *FindParentRegionType (enum regionTypes, legoRegion *);
00030 legoRegion      *FindParentRegionType (enum regionTypes, legoOp *);
00031 
00032 legoOp          *FindFirstBranch (legoRegion *);
00033 int             IsFallThrough (legoOp *, legoOp *);
00034 
00035 opEdges         *FindControlEdge (legoOp *, legoOp *, int = 0);
00036 
00037 attrs           *FindLcAttribute (char *, legoRegion *);
00038 attrs           *FindLcAttribute (char *, legoOp *);
00039 attrs           *FindLcAttribute (char *, opEdges *);
00040 attrs           *FindLiveAttribute (opEdges *);
00041 attrList        *FindFreqAttribute (opEdges *);
00042 
00043 int             FindEdgeFrequency (opEdges *);
00044 double          FindOpWeight (legoOp *);
00045 legoOprd        *FindReturnMacro (legoOp *);
00046 
00047 flags *FindFlag (flags *, int);
00048 flags *FindFlag (legoOp *, int);
00049 flags *FindFlag (legoRegion *, int);
00050 flags *FindFlag (int, flags *);
00051 flags *FindFlag (int, legoOp *);
00052 flags *FindFlag (int, legoRegion *);
00053 
00054 int IsIntegerOp (legoOp *);
00055 int IsFloatOp (legoOp *);
00056 int IsCompareOp (legoOp *);
00057 int IsBranchOp (legoOp *);
00058 int IsBranchOpButNotBRL (legoOp *);
00059 int IsLoadOp (legoOp *);
00060 int IsStoreOp (legoOp *);
00061 int IsMemoryOp (legoOp *);
00062 
00063 bool SameOpcode(legoOp *op1, legoOp *op2);
00064 
00065 //HZ:
00066 legoOp * find_op(legoRegion * region, int opid);
00067 bool legoAudit(legoModule * Module);
00068 
00069 //Sau:
00070 int FindFirstOutGoingReg(legoProc *Proc);
00071 int FindLastOutGoingReg(legoProc *Proc);
00072 #endif // LEGOUTIL_SEARCH_HEADER
00073 

Generated on Mon Jul 21 20:28:55 2003 for TINKER LEGO DOC by doxygen 1.3.2