[PATCH] D86156: [BFI] Preserve BFI information through loop passes via VH callbacks inside LoopStandardAnalysisResults
Alina Sbirlea via Phabricator via llvm-commits
llvm-commits at lists.llvm.org
Thu Aug 20 18:41:51 PDT 2020
asbirlea requested changes to this revision.
asbirlea added a comment.
This revision now requires changes to proceed.
A couple of quick comments, I haven't gone into details yet.
- please split off the changes that are NFCs (deleted spaces) and clang-format for ease to review.
- the test changes show a lot of dependencies that overload the loop pipeline. If only LICM benefits from it, I'd consider creating a BFI instance for the duration of the LICM pass, or only enabling it in loop pipelines that have LICM in them (see example comment in one of the tests).
================
Comment at: llvm/include/llvm/Transforms/Scalar/LoopPassManager.h:278
AM.getResult<TargetIRAnalysis>(F),
+ &AM.getResult<BlockFrequencyAnalysis>(F),
MSSA};
----------------
This should not be unconditional. See MSSA approach.
================
Comment at: llvm/test/Transforms/LoopRotate/pr35210.ll:51
+; MSSA-NEXT: Running analysis: BlockFrequencyAnalysis on f
+; MSSA-NEXT: Running analysis: BranchProbabilityAnalysis on f
; MSSA-NEXT: Running analysis: InnerAnalysisManagerProxy{{.*}} on f
----------------
e.g. there's no use of creating these for LoopRotate.
CHANGES SINCE LAST ACTION
https://reviews.llvm.org/D86156/new/
https://reviews.llvm.org/D86156
More information about the llvm-commits
mailing list