1
0
mirror of https://github.com/RPCS3/llvm-mirror.git synced 2024-11-22 10:42:39 +01:00
llvm-mirror/test/Analysis/CostModel/ARM
Sander de Smalen 3bbfdfb241 [CostModel] Express cost(urem) as cost(div+mul+sub) when set to Expand.
The Legalizer expands the operations of urem/srem into a div+mul+sub or divrem
when those are legal/custom. This patch changes the cost-model to reflect that
cost.

Since there is no 'divrem' Instruction in LLVM IR, the cost of divrem
is assumed to be the same as div+mul+sub since the three operations will
need to be executed at runtime regardless.

Patch co-authored by David Sherwood (@david-arm)

Reviewed By: RKSimon, paulwalker-arm

Differential Revision: https://reviews.llvm.org/D103799
2021-07-07 14:40:28 +01:00
..
add-cast-vect.ll
arith-overflow.ll [ARM] Tone down the MVE scalarization overhead 2021-03-19 18:30:11 +00:00
arith-ssat.ll [ARM] Tone down the MVE scalarization overhead 2021-03-19 18:30:11 +00:00
arith-usat.ll [ARM] Tone down the MVE scalarization overhead 2021-03-19 18:30:11 +00:00
arith.ll [ARM] Tone down the MVE scalarization overhead 2021-03-19 18:30:11 +00:00
cast_ldst.ll [ARM] Tone down the MVE scalarization overhead 2021-03-19 18:30:11 +00:00
cast.ll [ARM] Tone down the MVE scalarization overhead 2021-03-19 18:30:11 +00:00
cmps.ll [ARM] Tone down the MVE scalarization overhead 2021-03-19 18:30:11 +00:00
control-flow.ll
divrem.ll [CostModel] Express cost(urem) as cost(div+mul+sub) when set to Expand. 2021-07-07 14:40:28 +01:00
fparith.ll [ARM] Tone down the MVE scalarization overhead 2021-03-19 18:30:11 +00:00
freeshift.ll
gep.ll
immediates.ll
insertelement.ll
intrinsic-cost-kinds.ll [ARM] Tone down the MVE scalarization overhead 2021-03-19 18:30:11 +00:00
lit.local.cfg
load_store.ll [ARM] Tone down the MVE scalarization overhead 2021-03-19 18:30:11 +00:00
logicalop.ll [TTI] Consider select form of and/or i1 as having arithmetic cost 2021-03-02 02:18:19 +09:00
memcpy.ll
mul-cast-vect.ll
mve-abs.ll [ARM] Tone down the MVE scalarization overhead 2021-03-19 18:30:11 +00:00
mve-active_lane_mask.ll
mve-cmp.ll [ARM] Tone down the MVE scalarization overhead 2021-03-19 18:30:11 +00:00
mve-gather-scatter-cost.ll [ARM] Tone down the MVE scalarization overhead 2021-03-19 18:30:11 +00:00
mve-minmax.ll [ARM] Tone down the MVE scalarization overhead 2021-03-19 18:30:11 +00:00
mve-vecreduce-add.ll [ARM] Tone down the MVE scalarization overhead 2021-03-19 18:30:11 +00:00
reduce-add.ll
reduce-and.ll [Cost]Canonicalize the cost for logical or/and reductions. 2021-03-19 11:01:58 -07:00
reduce-or.ll [Cost]Canonicalize the cost for logical or/and reductions. 2021-03-19 11:01:58 -07:00
reduce-smax.ll [ARM] Tone down the MVE scalarization overhead 2021-03-19 18:30:11 +00:00
reduce-smin.ll [ARM] Tone down the MVE scalarization overhead 2021-03-19 18:30:11 +00:00
reduce-umax.ll [ARM] Tone down the MVE scalarization overhead 2021-03-19 18:30:11 +00:00
reduce-umin.ll [ARM] Tone down the MVE scalarization overhead 2021-03-19 18:30:11 +00:00
select.ll [ARM] Tone down the MVE scalarization overhead 2021-03-19 18:30:11 +00:00
shl-cast-vect.ll
shuffle.ll [InstructionCost] Don't conflate Invalid costs with Unknown costs. 2021-03-30 09:29:42 +01:00
sub-cast-vect.ll
target-intrinsics.ll