[NFC][TTI] Add/extract `getReplicationShuffleCost()` method, deduplicate it's impleme...
authorRoman Lebedev <lebedev.ri@gmail.com>
Sat, 6 Nov 2021 13:45:15 +0000 (16:45 +0300)
committerRoman Lebedev <lebedev.ri@gmail.com>
Sat, 6 Nov 2021 13:45:15 +0000 (16:45 +0300)
commitf8efc5c0ac68d2f94c8f83e65798e786e2c8c8cd
tree5c920fe69c40c48d9f4a1ed0dde171dbcdf7e113
parent39c4c7d3912a6759e537e03ed334451e9f96e9ad
[NFC][TTI] Add/extract `getReplicationShuffleCost()` method, deduplicate it's implementations

Hiding it in `getInterleavedMemoryOpCost()` is problematic for a number of reasons,
including testability and reuse, let's do better.

In a followup `getUserCost()` will be taught to use to to estimate the mask costs,
which will allow for better cost model tests for it.

Reviewed By: RKSimon

Differential Revision: https://reviews.llvm.org/D113313
llvm/include/llvm/Analysis/TargetTransformInfo.h
llvm/include/llvm/Analysis/TargetTransformInfoImpl.h
llvm/include/llvm/CodeGen/BasicTTIImpl.h
llvm/lib/Analysis/TargetTransformInfo.cpp
llvm/lib/Target/X86/X86TargetTransformInfo.cpp