[PATCH] D100802: [PassManager] add late LICM to LTO pipeline to undo InstCombine sinking
Sanjay Patel via Phabricator via llvm-commits
llvm-commits at lists.llvm.org
Tue Apr 20 07:39:48 PDT 2021
spatel added a comment.
In D100802#2701501 <https://reviews.llvm.org/D100802#2701501>, @lebedev.ri wrote:
> Err, after rereading this twice, this only touches LTO pipelines, doesn't it :]
Right - sorry that wasn't clear. I'm only trying to get closer to parity/consensus between the regular and LTO pipelines with this patch.
I don't know why the pipelines would diverge at this stage of the compile - there might be a good reason, or it just evolved to this state unintentionally?
So if we look at this section of the pipeline (from vectorization to proposed LICM) in non-LTO mode, we have (table formatted for Phab):
| **Regular** | **LTO** |
| LoopVectorizePass | LoopVectorizePass |
| LoopLoadEliminationPass | LoopUnrollPass | ??? |
| InstCombinePass | InstCombinePass |
| SimplifyCFGPass | SimplifyCFGPass |
| | SCCPPass | ??? |
| | InstCombinePass | ??? |
| | BDCEPass | ??? |
| SLPVectorizerPass | SLPVectorizerPass |
| VectorCombinePass | VectorCombinePass |
| InstCombinePass | InstCombinePass |
| LoopUnrollPass | JumpThreadingPass | ??? |
| InstCombinePass | | ??? |
| LICMPass | LICMPass |
|
Maybe we should reconcile the pass differences ahead of LICM in the pipeline before adding LICM?
CHANGES SINCE LAST ACTION
https://reviews.llvm.org/D100802/new/
https://reviews.llvm.org/D100802
More information about the llvm-commits
mailing list