[CostModel][X86] Improve v8i32 MUL costs on AVX1 targets to account for slower btver2
authorSimon Pilgrim <llvm-dev@redking.me.uk>
Sat, 22 May 2021 10:11:38 +0000 (11:11 +0100)
committerSimon Pilgrim <llvm-dev@redking.me.uk>
Sat, 22 May 2021 10:13:07 +0000 (11:13 +0100)
commit9bd0dc83b55b53cbe4ae9544b5917e1d9d14dbfb
treea453fe1c04424ca5d6e9bf37df2e1676ae4f3c29
parent9afbca746b6c93e5359e5723e5f39c21bca2f4ac
[CostModel][X86] Improve v8i32 MUL costs on AVX1 targets to account for slower btver2

BTVER2 has a 2 cycle throughput for v4i32 multiplies (same as SSE41 targets), which is only partially hidden by the subvector extracts/insert when splitting v8i32.
llvm/lib/Target/X86/X86TargetTransformInfo.cpp
llvm/test/Analysis/CostModel/X86/arith-fix.ll
llvm/test/Analysis/CostModel/X86/arith-overflow.ll
llvm/test/Analysis/CostModel/X86/arith.ll
llvm/test/Analysis/CostModel/X86/fshl.ll
llvm/test/Analysis/CostModel/X86/fshr.ll
llvm/test/Analysis/CostModel/X86/reduce-mul.ll
llvm/test/Analysis/CostModel/X86/rem.ll
llvm/test/Analysis/CostModel/X86/vectorized-loop.ll
llvm/test/Analysis/CostModel/X86/vshift-shl-cost-inseltpoison.ll
llvm/test/Analysis/CostModel/X86/vshift-shl-cost.ll