[all-commits] [llvm/llvm-project] 709042: [LoopVectorize] Enhance Vectorization decisions fo...

Igor Kirillov via All-commits all-commits at lists.llvm.org
Mon Oct 30 06:43:39 PDT 2023


  Branch: refs/heads/main
  Home:   https://github.com/llvm/llvm-project
  Commit: 70904226e12f78344a1c6abfff54fb490e1de988
      https://github.com/llvm/llvm-project/commit/70904226e12f78344a1c6abfff54fb490e1de988
  Author: Igor Kirillov <igor.kirillov at arm.com>
  Date:   2023-10-30 (Mon, 30 Oct 2023)

  Changed paths:
    M llvm/lib/Transforms/Vectorize/LoopVectorize.cpp
    A llvm/test/Transforms/LoopVectorize/AArch64/runtime-check-trip-count-decisions.ll

  Log Message:
  -----------
  [LoopVectorize] Enhance Vectorization decisions for predicate tail-folded loops with low trip counts (#69588)

* Avoid using `CM_ScalarEpilogueNotAllowedLowTripLoop` for loops known
to be predicate tail-folded, delegating to `areRuntimeChecksProfitable`
to decide on the profitability of vectorizing loops with runtime checks.
* Update the `areRuntimeChecksProfitable` function to consider the
`ScalarEpilogueLowering` setting when assessing vectorization of a loop.

With this patch, we can make more informed decisions for loops with low
trip counts, especially when leveraging Profile-Guided Optimization
(PGO) data.




More information about the All-commits mailing list