ABataev added a comment.

In D108826#2969594 <https://reviews.llvm.org/D108826#2969594>, @lebedev.ri 
wrote:

> In D108826#2969547 <https://reviews.llvm.org/D108826#2969547>, @ABataev wrote:
>
>> In D108826#2969471 <https://reviews.llvm.org/D108826#2969471>, @lebedev.ri 
>> wrote:
>>
>>> I think there is something really wrong with vectorzer passes in LTO 
>>> pipelines.
>>> Can you say whether the problem you are observing is in ThinLTO, Full LTO, 
>>> or both?
>>
>> I saw it in Full LTO but suppose we have a similar problem in ThinLTO. SLP 
>> vectorizer at compile-time tries to vectorize using small vectors at it may 
>> affect other optimizations at link time (e.g. after inlining we may try to 
>> vectorize using large vector sizes etc.). This is just a preliminary attempt 
>> to see how can we fix this early optimization in SLP.
>
> Aha, so full lto. That is consistent with the phase ordering dilemma @spatel 
> discovered: D102002 <https://reviews.llvm.org/D102002>

Aha, do I understand correctly that he tries to add a flag(s) that we have a 
compile without LTO, compile at LTO and link at LTO? Or something else? Or he 
just tries to reorder passes depending whether we're in LTO or not in LTO?

> IMO workarounding it in the pass isn't the right course of action. Such 
> workarounds tend to stick around.

I agree, I thought about a pipeline fix, this is just a temp solution to check 
how it affects the performance. It gets important especially for upcoming 
non-power-2 vectorization, which may cause regressions with LTO.


Repository:
  rG LLVM Github Monorepo

CHANGES SINCE LAST ACTION
  https://reviews.llvm.org/D108826/new/

https://reviews.llvm.org/D108826

_______________________________________________
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

Reply via email to