[PATCH] D92824: [SLP] Use the width of value truncated just before storing

Anton Afanasyev via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Tue Dec 8 02:12:42 PST 2020


anton-afanasyev marked an inline comment as done.
anton-afanasyev added inline comments.


================
Comment at: llvm/test/Transforms/SLPVectorizer/X86/pr46983.ll:104
 define void @store_i64(i64* nocapture %0, i32 %1, i32 %2) {
 ; AVX-LABEL: @store_i64(
 ; AVX-NEXT:    [[TMP4:%.*]] = zext i32 [[TMP1:%.*]] to i64
----------------
xbolva00 wrote:
> Wondering why no vectorization with avx..
I've explained it here: https://bugs.llvm.org/show_bug.cgi?id=46983#c5. Actually this case is not related to truncating stores issue and actually is not a bug: we have a high cost for `v4i64` type for some archs (see https://github.com/llvm/llvm-project/blob/master/llvm/lib/Target/X86/X86TargetTransformInfo.cpp#L808 and https://github.com/llvm/llvm-project/blob/master/llvm/test/Transforms/SLPVectorizer/X86/pr46983.ll#L165).


Repository:
  rG LLVM Github Monorepo

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

https://reviews.llvm.org/D92824



More information about the llvm-commits mailing list