namespace {
-class GRCP {
+class GREngine {
//==---------------------------------==//
// Type definitions.
// Disable copying.
//==---------------------------------==//
- GRCP(const GRCP&); // Do not implement.
- GRCP& operator=(const GRCP&);
+ GREngine(const GREngine&); // Do not implement.
+ GREngine& operator=(const GREngine&);
//==--------------------------------==//
// Public API.
//==--------------------------------==//
public:
- GRCP(CFG& c);
+ GREngine(CFG& c);
/// getGraph - Returns the simulation graph.
const GraphTy& getGraph() const { return Graph; }
// Public API.
//==--------------------------------------------------------==//
-GRCP::GRCP(CFG& c) : cfg(c) {
+GREngine::GREngine(CFG& c) : cfg(c) {
// Get the entry block. Make sure that it has 1 (and only 1) successor.
CFGBlock* Entry = &c.getEntry();
}
-bool GRCP::ExecuteWorkList(unsigned Steps) {
+bool GREngine::ExecuteWorkList(unsigned Steps) {
while (Steps && WorkList.hasWork()) {
--Steps;
VertexTy* V = WorkList.Dequeue();
// Edge processing.
//==--------------------------------------------------------==//
-void GRCP::VisitBlkBlk(const BlkBlkEdge& E, GRCP::VertexTy* PredV) {
+void GREngine::VisitBlkBlk(const BlkBlkEdge& E, GREngine::VertexTy* PredV) {
CFGBlock* Blk = E.Dst();
}
}
-void GRCP::VisitBlkStmt(const BlkStmtEdge& E, GRCP::VertexTy* PredV) {
+void GREngine::VisitBlkStmt(const BlkStmtEdge& E, GREngine::VertexTy* PredV) {
if (Stmt* S = E.Dst())
ProcessStmt(S,PredV);
}
}
-void GRCP::VisitStmtBlk(const StmtBlkEdge& E, GRCP::VertexTy* PredV) {
+void GREngine::VisitStmtBlk(const StmtBlkEdge& E, GREngine::VertexTy* PredV) {
CFGBlock* Blk = E.Dst();
if (Stmt* Terminator = Blk->getTerminator())
}
}
-void GRCP::ProcessEOP(CFGBlock* Blk, GRCP::VertexTy* PredV) {
+void GREngine::ProcessEOP(CFGBlock* Blk, GREngine::VertexTy* PredV) {
// FIXME: Perform dispatch to adjust state.
VertexTy* V = Graph.getVertex(BlkStmtEdge(Blk,NULL), PredV->getState()).first;
V->addPredecessor(PredV);
Graph.addEndOfPath(V);
}
-void GRCP::ProcessStmt(Stmt* S, GRCP::VertexTy* PredV) {
+void GREngine::ProcessStmt(Stmt* S, GREngine::VertexTy* PredV) {
assert(false && "Not implemented.");
}
-void GRCP::ProcessTerminator(Stmt* Terminator,GRCP::VertexTy* PredV) {
- assert(false && "Not implemented.");
+void GREngine::ProcessTerminator(Stmt* Terminator,GREngine::VertexTy* PredV) {
+ assert(false && "Not implemented.");
}