[CostModel][X86] Add CostKinds handling for mul ops
authorSimon Pilgrim <llvm-dev@redking.me.uk>
Sun, 4 Sep 2022 10:58:53 +0000 (11:58 +0100)
committerSimon Pilgrim <llvm-dev@redking.me.uk>
Sun, 4 Sep 2022 10:59:05 +0000 (11:59 +0100)
commitc444af1c20b35555f2fdb2c1ca38d3f23b2faebd
tree9b2817ca24a80f395afaa450fedcf3ad1a2258e8
parent28e5e3d63474cd935bbbe30420aa41fbea5a1d0d
[CostModel][X86] Add CostKinds handling for mul ops

This was achieved using the 'cost-tables vs llvm-mca' script D103695

Also fix a missing pmullw v16i16 half-rate throughput as znver1 double-pumps - matches numbers from AMD SoG + Agner
24 files changed:
llvm/lib/Target/X86/X86ScheduleZnver1.td
llvm/lib/Target/X86/X86TargetTransformInfo.cpp
llvm/test/Analysis/CostModel/X86/arith-fix.ll
llvm/test/Analysis/CostModel/X86/arith-int-codesize.ll
llvm/test/Analysis/CostModel/X86/arith-int-latency.ll
llvm/test/Analysis/CostModel/X86/arith-int-sizelatency.ll
llvm/test/Analysis/CostModel/X86/arith-int.ll
llvm/test/Analysis/CostModel/X86/arith-overflow.ll
llvm/test/Analysis/CostModel/X86/fshl.ll
llvm/test/Analysis/CostModel/X86/fshr.ll
llvm/test/Analysis/CostModel/X86/intrinsic-cost-kinds.ll
llvm/test/Analysis/CostModel/X86/mul.ll
llvm/test/Analysis/CostModel/X86/mul32.ll
llvm/test/Analysis/CostModel/X86/reduce-mul.ll
llvm/test/Analysis/CostModel/X86/rem-codesize.ll
llvm/test/Analysis/CostModel/X86/rem-latency.ll
llvm/test/Analysis/CostModel/X86/rem-sizelatency.ll
llvm/test/Analysis/CostModel/X86/rem.ll
llvm/test/Analysis/CostModel/X86/vshift-shl-codesize.ll
llvm/test/Analysis/CostModel/X86/vshift-shl-cost-inseltpoison.ll
llvm/test/Analysis/CostModel/X86/vshift-shl-cost.ll
llvm/test/Analysis/CostModel/X86/vshift-shl-latency.ll
llvm/test/Analysis/CostModel/X86/vshift-shl-sizelatency.ll
llvm/test/tools/llvm-mca/X86/Znver1/resources-avx2.s