[all-commits] [llvm/llvm-project] 72fb5b: [LV] Don't sink into replication regions
David Green via All-commits
all-commits at lists.llvm.org
Fri Jan 8 01:54:30 PST 2021
Branch: refs/heads/master
Home: https://github.com/llvm/llvm-project
Commit: 72fb5ba079019c2108d676526b5285b228795e48
https://github.com/llvm/llvm-project/commit/72fb5ba079019c2108d676526b5285b228795e48
Author: David Green <david.green at arm.com>
Date: 2021-01-08 (Fri, 08 Jan 2021)
Changed paths:
M llvm/lib/Transforms/Vectorize/LoopVectorize.cpp
M llvm/lib/Transforms/Vectorize/VPlan.cpp
M llvm/lib/Transforms/Vectorize/VPlan.h
M llvm/test/Transforms/LoopVectorize/first-order-recurrence.ll
M llvm/unittests/Transforms/Vectorize/VPlanTest.cpp
Log Message:
-----------
[LV] Don't sink into replication regions
The new test case here contains a first order recurrences and an
instruction that is replicated. The first order recurrence forces an
instruction to be sunk _into_, as opposed to after the replication
region. That causes several things to go wrong including registering
vector instructions multiple times and failing to create dominance
relations correctly.
Instead we should be sinking to after the replication region, which is
what this patch makes sure happens.
Differential Revision: https://reviews.llvm.org/D93629
More information about the All-commits
mailing list