[all-commits] [llvm/llvm-project] 81fdc7: [LV] Return both fixed and scalable Max VF from co...

sdesmalen-arm via All-commits all-commits at lists.llvm.org
Tue May 18 00:05:02 PDT 2021


  Branch: refs/heads/main
  Home:   https://github.com/llvm/llvm-project
  Commit: 81fdc73e5dc74bfe7cda1e16f01f23836406d709
      https://github.com/llvm/llvm-project/commit/81fdc73e5dc74bfe7cda1e16f01f23836406d709
  Author: Sander de Smalen <sander.desmalen at arm.com>
  Date:   2021-05-18 (Tue, 18 May 2021)

  Changed paths:
    M llvm/lib/Transforms/Vectorize/LoopVectorizationPlanner.h
    M llvm/lib/Transforms/Vectorize/LoopVectorize.cpp
    A llvm/test/Transforms/LoopVectorize/AArch64/eliminate-tail-predication.ll

  Log Message:
  -----------
  [LV] Return both fixed and scalable Max VF from computeMaxVF.

This patch introduces a new class, MaxVFCandidates, that holds the
maximum vectorization factors that have been computed for both scalable
and fixed-width vectors.

This patch is intended to be NFC for fixed-width vectors, although
considering a scalable max VF (which is disabled by default) pessimises
tail-loop elimination, since it can no longer determine if any chosen VF
(less than fixed/scalable MaxVFs) is guaranteed to handle all vector
iterations if the trip-count is known. This issue will be addressed in
a future patch.

Reviewed By: fhahn, david-arm

Differential Revision: https://reviews.llvm.org/D98721




More information about the All-commits mailing list