[PATCH] D63948: [SLP] Limit compilation time of look-ahead operand reordering heuristic.
Vasileios Porpodas via Phabricator via llvm-commits
llvm-commits at lists.llvm.org
Mon Jul 1 12:29:17 PDT 2019
vporpo marked an inline comment as done.
vporpo added a comment.
OK let me try to create a test that causes a change in the IR.
================
Comment at: llvm/lib/Transforms/Vectorize/SLPVectorizer.cpp:921
+ for (unsigned OpIdx1 = 0,
+ NumOperands1 = std::min(I1->getNumOperands(),
+ LookAheadOperandsBudget.getValue());
----------------
ABataev wrote:
> vporpo wrote:
> > ABataev wrote:
> > > Do you really need this limit?
> > Yes, because it could be a call /phi instruction with many operands.
> Does this really the cause of the problems? It would be good to see some additional investigation if this is really required.
This can cause problems if you have a look-ahead depth > 2. Consider the case where you have chains of phis or calls. You can spend a lot of time visiting all their operands.
Though I agree, restricting the uses is more important.
Repository:
rG LLVM Github Monorepo
CHANGES SINCE LAST ACTION
https://reviews.llvm.org/D63948/new/
https://reviews.llvm.org/D63948
More information about the llvm-commits
mailing list