[all-commits] [llvm/llvm-project] 15915c: [SLP]Do not vectorize small (<=2) buildvector/buil...

Alexey Bataev via All-commits all-commits at lists.llvm.org
Tue Jul 16 09:46:19 PDT 2024


  Branch: refs/heads/main
  Home:   https://github.com/llvm/llvm-project
  Commit: 15915c06d54151b78378a7cd029e1a8c09e764b3
      https://github.com/llvm/llvm-project/commit/15915c06d54151b78378a7cd029e1a8c09e764b3
  Author: Alexey Bataev <a.bataev at outlook.com>
  Date:   2024-07-16 (Tue, 16 Jul 2024)

  Changed paths:
    M llvm/lib/Transforms/Vectorize/SLPVectorizer.cpp
    M llvm/test/Transforms/SLPVectorizer/AArch64/scalarization-overhead.ll
    M llvm/test/Transforms/SLPVectorizer/X86/reused-extractelements.ll

  Log Message:
  -----------
  [SLP]Do not vectorize small (<=2) buildvector/buildvalue sequences with MaxVF==true.

If MaxVFOnly for buildvector/buildvalue vectorization is set to true and the
total number of elements to vectorize is <= 2, better to try to
vectorize reductions at first, which may produce larger tree (reductions
have a limit of at least 4 elements to vectorize). Smaller
buildvector/buildvalue sequence will be attempted to vectorize later,
with MaxVFOnly set to false.

Reviewers: RKSimon

Reviewed By: RKSimon

Pull Request: https://github.com/llvm/llvm-project/pull/98957



To unsubscribe from these emails, change your notification settings at https://github.com/llvm/llvm-project/settings/notifications


More information about the All-commits mailing list