[all-commits] [llvm/llvm-project] ab97c9: [LV] Fix scalar cost for tail predicated loops

David Green via All-commits all-commits at lists.llvm.org
Sat Dec 12 06:26:45 PST 2020


  Branch: refs/heads/master
  Home:   https://github.com/llvm/llvm-project
  Commit: ab97c9bdb747c873cd35a18229e2694156a7607d
      https://github.com/llvm/llvm-project/commit/ab97c9bdb747c873cd35a18229e2694156a7607d
  Author: David Green <david.green at arm.com>
  Date:   2020-12-12 (Sat, 12 Dec 2020)

  Changed paths:
    M llvm/lib/Transforms/Vectorize/LoopVectorize.cpp
    M llvm/test/Transforms/LoopVectorize/ARM/scalar-block-cost.ll

  Log Message:
  -----------
  [LV] Fix scalar cost for tail predicated loops

When it comes to the scalar cost of any predicated block, the loop
vectorizer by default regards this predication as a sign that it is
looking at an if-conversion and divides the scalar cost of the block by
2, assuming it would only be executed half the time. This however makes
no sense if the predication has been introduced to tail predicate the
loop.

Original patch by Anna Welker

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




More information about the All-commits mailing list