[all-commits] [llvm/llvm-project] 81c648: [LoopUnroll] Freeze tripcount rather than condition
Nikita Popov via All-commits
all-commits at lists.llvm.org
Tue May 24 00:42:56 PDT 2022
Branch: refs/heads/main
Home: https://github.com/llvm/llvm-project
Commit: 81c648a3d909cf0c1c1c635309f35b93d07307d1
https://github.com/llvm/llvm-project/commit/81c648a3d909cf0c1c1c635309f35b93d07307d1
Author: Nikita Popov <npopov at redhat.com>
Date: 2022-05-24 (Tue, 24 May 2022)
Changed paths:
M llvm/lib/Transforms/Utils/LoopUnrollRuntime.cpp
M llvm/test/Transforms/LoopUnroll/runtime-loop-at-most-two-exits.ll
M llvm/test/Transforms/LoopUnroll/runtime-loop-multiexit-dom-verify.ll
M llvm/test/Transforms/LoopUnroll/runtime-loop-multiple-exits.ll
M llvm/test/Transforms/LoopUnroll/runtime-multiexit-heuristic.ll
Log Message:
-----------
[LoopUnroll] Freeze tripcount rather than condition
This is a followup to D125754. We introduce two branches, one
before the unrolled loop and one before the epilogue (and similar
for the prologue case). The previous patch only froze the
condition on the first branch.
Rather than independently freezing the second condition, this patch
instead freezes TripCount and bases BECount on it. These are the
two quantities involved in the conditions, and this ensures that
both work on a consistent, non-poisonous trip count.
Differential Revision: https://reviews.llvm.org/D125896
More information about the All-commits
mailing list