[all-commits] [llvm/llvm-project] a3c964: [LV] Fix recording of BranchTakenCount for FoldTail

azaks via All-commits all-commits at lists.llvm.org
Sun Apr 26 10:16:59 PDT 2020


  Branch: refs/heads/master
  Home:   https://github.com/llvm/llvm-project
  Commit: a3c964a278b434a587f447dac144bb7d92227dab
      https://github.com/llvm/llvm-project/commit/a3c964a278b434a587f447dac144bb7d92227dab
  Author: Ayal Zaks <ayal.zaks at intel.com>
  Date:   2020-04-26 (Sun, 26 Apr 2020)

  Changed paths:
    M llvm/lib/Transforms/Vectorize/VPlan.cpp
    M llvm/lib/Transforms/Vectorize/VPlan.h
    M llvm/test/Transforms/LoopVectorize/X86/x86-interleaved-accesses-masked-group.ll
    M llvm/test/Transforms/LoopVectorize/tail-folding-counting-down.ll

  Log Message:
  -----------
  [LV] Fix recording of BranchTakenCount for FoldTail

When folding tail, branch taken count is computed during initial VPlan execution
and recorded to be used by the compare computing the loop's mask. This recording
should directly set the State, instead of reusing Value2VPValue mapping which
serves original Values present prior to vectorization.
The branch taken count may be a constant Value, which may be used elsewhere in
the loop; trying to employ Value2VPValue for both leads to the issue reported in
https://reviews.llvm.org/D76992#inline-721028

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




More information about the All-commits mailing list