Issue |
91054
|
Summary |
SLP would be more essential after LoopUnroll
|
Labels |
new issue
|
Assignees |
|
Reporter |
edemilkhovsky
|
In PassBuilder::addVectorPasses() the SLP runs before LoopUnroll.
Actually the LoopUnroll produces many lines of scalar code and SLP should run after to glue scalar ops together.
And one more things that I saw in this context. I tried to run SLP again after loop unroll and
if I have a code inside loop like A[i*2] + A[i*2+1} - SLP makes load <2 x i8> and then after unrolling + SLP the code sequence is less optimal.
So the scheme SLP - LoopUnroll - SLP is also suboptimal in some cases.
As far as I see invoking Unroll then SLP gives best results.
_______________________________________________
llvm-bugs mailing list
llvm-bugs@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-bugs