[PATCH] D104057: [SLP]Allow reordering of insertelements.
Nikita Popov via Phabricator via llvm-commits
llvm-commits at lists.llvm.org
Thu Jun 10 14:02:34 PDT 2021
nikic added inline comments.
================
Comment at: llvm/test/Transforms/SLPVectorizer/X86/external_user_jumbled_load-inseltpoison.ll:15
; CHECK-NEXT: [[TMP5:%.*]] = load <4 x i32>, <4 x i32>* [[TMP4]], align 4
-; CHECK-NEXT: [[SHUFFLE:%.*]] = shufflevector <4 x i32> [[TMP5]], <4 x i32> poison, <4 x i32> <i32 1, i32 2, i32 3, i32 0>
-; CHECK-NEXT: store <4 x i32> [[SHUFFLE]], <4 x i32>* [[SINK:%.*]], align 16
+; CHECK-NEXT: [[TMP6:%.*]] = shufflevector <4 x i32> [[TMP5]], <4 x i32> undef, <4 x i32> <i32 1, i32 2, i32 3, i32 0>
+; CHECK-NEXT: store <4 x i32> [[TMP6]], <4 x i32>* [[SINK:%.*]], align 16
----------------
This shouldn't be generating undef. I assume it comes from https://github.com/llvm/llvm-project/blob/5d5b686f6bf6b15b8fbd9ccf957295397f27afc9/llvm/lib/Transforms/Vectorize/SLPVectorizer.cpp#L5216, where you can simply omit the explicit UndefValue argument, in which case PoisonValue will be used.
Repository:
rG LLVM Github Monorepo
CHANGES SINCE LAST ACTION
https://reviews.llvm.org/D104057/new/
https://reviews.llvm.org/D104057
More information about the llvm-commits
mailing list