llvm-project/llvm/test/Analysis/CostModel
Simon Pilgrim 44a9a71d2a [TTI] Fix uses of SK_ExtractSubvector shuffle costs (PR39368)
Correct costings of SK_ExtractSubvector requires the SubTy argument to indicate the type/size of the extracted subvector.

Unlike the rest of the shuffle kinds this means that the main Ty argument represents the source vector type not the destination!

I've done my best to fix a number of vectorizer uses:

SLP - the reduction epilogue costs should be using a SK_PermuteSingleSrc shuffle as these all occur at the hardware vector width - we're not extracting (illegal) subvector types. This is causing the cost model diffs as SK_ExtractSubvector costs are poorly handled and tend to just return 1 at the moment.

LV - I'm not clear on what the SK_ExtractSubvector should represents for recurrences - I've used a <1 x ?> subvector extraction as that seems to match the VF delta.

Differential Revision: https://reviews.llvm.org/D53573

llvm-svn: 345617
2018-10-30 18:10:02 +00:00
..
AArch64 [TTI] Fix uses of SK_ExtractSubvector shuffle costs (PR39368) 2018-10-30 18:10:02 +00:00
AMDGPU [AMDGPU] Switch to the new addr space mapping by default 2018-02-02 16:07:16 +00:00
ARM Add BROADCAST shuffle cost tests. 2018-10-23 13:00:22 +00:00
PowerPC [PPC] Give unaligned memory access lower cost on processor that supports it 2017-02-17 22:29:39 +00:00
SystemZ [SystemZ] Improve isFoldableLoad() for Sub, SDiv and UDiv. 2018-10-30 13:41:03 +00:00
X86 [TTI] Fix uses of SK_ExtractSubvector shuffle costs (PR39368) 2018-10-30 18:10:02 +00:00
no_info.ll