diff options
Diffstat (limited to 'mlir/test/lib/Analysis/DataFlow/TestDeadCodeAnalysis.cpp')
| -rw-r--r-- | mlir/test/lib/Analysis/DataFlow/TestDeadCodeAnalysis.cpp | 15 |
1 files changed, 9 insertions, 6 deletions
diff --git a/mlir/test/lib/Analysis/DataFlow/TestDeadCodeAnalysis.cpp b/mlir/test/lib/Analysis/DataFlow/TestDeadCodeAnalysis.cpp index d02efaaa3fe3..2dc77c9705d3 100644 --- a/mlir/test/lib/Analysis/DataFlow/TestDeadCodeAnalysis.cpp +++ b/mlir/test/lib/Analysis/DataFlow/TestDeadCodeAnalysis.cpp @@ -29,7 +29,8 @@ static void printAnalysisResults(DataFlowSolver &solver, Operation *op, os << " "; block.printAsOperand(os); os << " = "; - auto *live = solver.lookupState<Executable>(&block); + auto *live = solver.lookupState<Executable>( + solver.getProgramPointBefore(&block)); if (live) os << *live; else @@ -49,12 +50,14 @@ static void printAnalysisResults(DataFlowSolver &solver, Operation *op, } } if (!region.empty()) { - auto *preds = solver.lookupState<PredecessorState>(®ion.front()); + auto *preds = solver.lookupState<PredecessorState>( + solver.getProgramPointBefore(®ion.front())); if (preds) os << "region_preds: " << *preds << "\n"; } } - auto *preds = solver.lookupState<PredecessorState>(op); + auto *preds = + solver.lookupState<PredecessorState>(solver.getProgramPointAfter(op)); if (preds) os << "op_preds: " << *preds << "\n"; }); @@ -68,15 +71,15 @@ struct ConstantAnalysis : public DataFlowAnalysis { LogicalResult initialize(Operation *top) override { WalkResult result = top->walk([&](Operation *op) { - if (failed(visit(op))) + if (failed(visit(getProgramPointAfter(op)))) return WalkResult::interrupt(); return WalkResult::advance(); }); return success(!result.wasInterrupted()); } - LogicalResult visit(ProgramPoint point) override { - Operation *op = point.get<Operation *>(); + LogicalResult visit(ProgramPoint *point) override { + Operation *op = point->getPrevOp(); Attribute value; if (matchPattern(op, m_Constant(&value))) { auto *constant = getOrCreate<Lattice<ConstantValue>>(op->getResult(0)); |
