This changes the cost to (LT.first-1) * cost(add) + 2, where the cost of an add is assumed to be 1. This brings it inline with the other reductions.
Details
Details
Diff Detail
Diff Detail
- Repository
- rG LLVM Github Monorepo
| Paths 
 |  Differential  D106240  
[AArch64] Adjust the cost of integer sum reductions ClosedPublic Authored by dmgreen on Jul 18 2021, 8:23 AM. 
Details Summary This changes the cost to (LT.first-1) * cost(add) + 2, where the cost of an add is assumed to be 1. This brings it inline with the other reductions. 
Diff Detail 
 Event TimelineHerald added subscribers: danielkiss, hiraditya, kristof.beyls.  ·  View Herald TranscriptJul 18 2021, 8:23 AM dmgreen added a parent revision: D106239: [AArch64] Expand the SVE min/max reduction costs to NEON.Jul 18 2021, 8:24 AM dmgreen added a child revision: D106241: [AArch64] Add worst case shuffle costs.Jul 18 2021, 9:51 AM dmgreen added reviewers: sdesmalen, david-arm, SjoerdMeijer, kmclaughlin, fhahn.Jul 20 2021, 12:03 AM This revision is now accepted and ready to land.Jul 20 2021, 6:48 AM This revision was landed with ongoing or failed builds.Jul 22 2021, 10:20 AM Closed by commit rGc9cebda772cb: [AArch64] Adjust the cost of integer sum reductions (authored by dmgreen).  ·  Explain Why This revision was automatically updated to reflect the committed changes. 
Revision Contents 
Diff 360871 llvm/lib/Target/AArch64/AArch64TargetTransformInfo.cpp
 llvm/test/Analysis/CostModel/AArch64/reduce-add.ll
 llvm/test/Analysis/CostModel/AArch64/vector-reduce.ll
 llvm/test/Transforms/SLPVectorizer/AArch64/gather-cost.ll
 llvm/test/Transforms/SLPVectorizer/AArch64/horizontal.ll
 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||