summaryrefslogtreecommitdiffstats
path: root/mlir/lib/Transforms/PipelineDataTransfer.cpp
diff options
context:
space:
mode:
authorUday Bondhugula <bondhugula@google.com>2018-12-30 20:38:04 -0800
committerjpienaar <jpienaar@google.com>2019-03-29 14:48:44 -0700
commitf12182157ec65a813b5e5f08495c6d1c0559a82e (patch)
tree91a53553f2d52ab03c77db31c492f23497011c26 /mlir/lib/Transforms/PipelineDataTransfer.cpp
parentcea9f28a2c6cbc914f0c9cb145df98e128a9daf1 (diff)
downloadbcm5719-llvm-f12182157ec65a813b5e5f08495c6d1c0559a82e.tar.gz
bcm5719-llvm-f12182157ec65a813b5e5f08495c6d1c0559a82e.zip
Introduce PostDominanceInfo, fix properlyDominates() for Instructions
- introduce PostDominanceInfo in the right/complete way and use that for post dominance check in store-load forwarding - replace all uses of Analysis/Utils::dominates/properlyDominates with DominanceInfo::dominates/properlyDominates - drop all redundant copies of dominance methods in Analysis/Utils/ - in pipeline-data-transfer, replace dominates call with a much less expensive check; similarly, substitute dominates() in checkMemRefAccessDependence with a simpler check suitable for that context - fix a bug in properlyDominates - improve doc for 'for' instruction 'body' PiperOrigin-RevId: 227320507
Diffstat (limited to 'mlir/lib/Transforms/PipelineDataTransfer.cpp')
-rw-r--r--mlir/lib/Transforms/PipelineDataTransfer.cpp2
1 files changed, 1 insertions, 1 deletions
diff --git a/mlir/lib/Transforms/PipelineDataTransfer.cpp b/mlir/lib/Transforms/PipelineDataTransfer.cpp
index debaac3a33c..321bf20cf0b 100644
--- a/mlir/lib/Transforms/PipelineDataTransfer.cpp
+++ b/mlir/lib/Transforms/PipelineDataTransfer.cpp
@@ -227,7 +227,7 @@ static void findMatchingStartFinishInsts(
auto *memref = dmaStartOp->getOperand(dmaStartOp->getFasterMemPos());
bool escapingUses = false;
for (const auto &use : memref->getUses()) {
- if (!dominates(*forInst->getBody()->begin(), *use.getOwner())) {
+ if (!forInst->getBody()->findAncestorInstInBlock(*use.getOwner())) {
LLVM_DEBUG(llvm::dbgs()
<< "can't pipeline: buffer is live out of loop\n";);
escapingUses = true;
OpenPOWER on IntegriCloud