[PATCH] D102675: [SLP] Fix "gathering" of vector values
Anton Afanasyev via Phabricator via llvm-commits
llvm-commits at lists.llvm.org
Mon May 24 07:54:08 PDT 2021
anton-afanasyev marked an inline comment as done.
anton-afanasyev added inline comments.
================
Comment at: llvm/test/Transforms/SLPVectorizer/X86/insert-element-build-vector-inseltpoison.ll:149-156
+; MINTREESIZE-NEXT: [[Q4:%.*]] = fadd float [[Q0]], [[Q1]]
+; MINTREESIZE-NEXT: [[Q5:%.*]] = fadd float [[Q2]], [[Q3]]
+; MINTREESIZE-NEXT: [[TMP3:%.*]] = insertelement <2 x float> poison, float [[Q4]], i32 0
+; MINTREESIZE-NEXT: [[TMP4:%.*]] = insertelement <2 x float> [[TMP3]], float [[Q5]], i32 1
+; MINTREESIZE-NEXT: [[Q6:%.*]] = fadd float [[Q4]], [[Q5]]
+; MINTREESIZE-NEXT: [[TMP5:%.*]] = insertelement <2 x float> poison, float [[Q6]], i32 0
+; MINTREESIZE-NEXT: [[TMP6:%.*]] = insertelement <2 x float> [[TMP5]], float [[Q5]], i32 1
----------------
ABataev wrote:
> Why are the instructions reordered if no vectorization should happen?
Vectorization of `inserts` is prohibited now, yes, but compiler still "vectorizes" small trees of size 1 with any valid cost due to options `-slp-threshold=-10000 -slp-min-tree-size=0`. This is not related to this patch itself.
Repository:
rG LLVM Github Monorepo
CHANGES SINCE LAST ACTION
https://reviews.llvm.org/D102675/new/
https://reviews.llvm.org/D102675
More information about the llvm-commits
mailing list