[all-commits] [llvm/llvm-project] ee7521: [AArch64] Cost-model i8 vector loads/stores
sjoerdmeijer via All-commits
all-commits at lists.llvm.org
Mon Jul 5 03:25:30 PDT 2021
Branch: refs/heads/main
Home: https://github.com/llvm/llvm-project
Commit: ee752134ace3418ed088c86aa62111667eba6776
https://github.com/llvm/llvm-project/commit/ee752134ace3418ed088c86aa62111667eba6776
Author: Sjoerd Meijer <sjoerd.meijer at arm.com>
Date: 2021-07-05 (Mon, 05 Jul 2021)
Changed paths:
M llvm/lib/Target/AArch64/AArch64TargetTransformInfo.cpp
M llvm/test/Analysis/CostModel/AArch64/cast.ll
M llvm/test/Analysis/CostModel/AArch64/mem-op-cost-model.ll
M llvm/test/Analysis/CostModel/AArch64/store.ll
M llvm/test/Transforms/LoopVectorize/AArch64/extend-vectorization-factor-for-unprofitable-memops.ll
M llvm/test/Transforms/LoopVectorize/AArch64/interleaved-vs-scalar.ll
M llvm/test/Transforms/SLPVectorizer/AArch64/gather-root.ll
M llvm/test/Transforms/SLPVectorizer/AArch64/loadi8.ll
Log Message:
-----------
[AArch64] Cost-model i8 vector loads/stores
Loads of <4 x i8> vectors were modeled as extremely expensive. And while we
don't have a load instruction that supports this, it isn't that expensive to
create a vector of i8 elements. The codegen for this was fixed/optimised in
D105110. This now tweaks the cost model and enables SLP vectorisation of my
motivating case loadi8.ll.
Differential Revision: https://reviews.llvm.org/D103629
More information about the All-commits
mailing list