aboutsummaryrefslogtreecommitdiff
path: root/llvm/lib/Transforms/Utils/Local.cpp
diff options
context:
space:
mode:
authorDavid Green <david.green@arm.com>2021-07-09 11:51:16 +0100
committerDavid Green <david.green@arm.com>2021-07-09 11:51:16 +0100
commit38c9a4068df5c44433da3fc15789cef8ce71367d (patch)
treea9577539be947bbd529b9f30957506c25ac212f8 /llvm/lib/Transforms/Utils/Local.cpp
parentaa9f58cc2c48ca6cfc853a2467cd775dc7622746 (diff)
downloadllvm-38c9a4068df5c44433da3fc15789cef8ce71367d.zip
llvm-38c9a4068df5c44433da3fc15789cef8ce71367d.tar.gz
llvm-38c9a4068df5c44433da3fc15789cef8ce71367d.tar.bz2
[TTI] Remove IsPairwiseForm from getArithmeticReductionCost
This patch removes the IsPairwiseForm flag from the Reduction Cost TTI hooks, along with some accompanying code for pattern matching reductions from trees starting at extract elements. IsPairWise is now assumed to be false, which was the predominant way that the value was used from both the Loop and SLP vectorizers. Since the adjustments such as D93860, the SLP vectorizer has not relied upon this distinction between paiwise and non-pairwise reductions. This also removes some code that was detecting reductions trees starting from extract elements inside the costmodel. This case was double-counting costs though, adding the individual costs on the individual instruction _and_ the total cost of the reduction. Removing it changes the costs in llvm/test/Analysis/CostModel/X86/reduction.ll to not double count. The cost of reduction intrinsics is still tested through the various tests in llvm/test/Analysis/CostModel/X86/reduce-xyz.ll. Differential Revision: https://reviews.llvm.org/D105484
Diffstat (limited to 'llvm/lib/Transforms/Utils/Local.cpp')
0 files changed, 0 insertions, 0 deletions