[LoopVectorizer] Shuffle cost in getInterleaveGroupCost()

Jonas Paulsson via llvm-commits llvm-commits at lists.llvm.org
Fri Sep 21 08:05:41 PDT 2018


Hi,

looking at getInterleaveGroupCost() in LoopVectorize.cpp, I find it odd 
that a cost for shuffles is added if the stride is negative. All the 
costs for extracting and inserting all the elements are already added, 
and it seems those operations should produce the final result. I mean, 
for a reversed vector the elements would simply be inserted starting 
from the opposite end, or?

Removing that is nearly NFC on spec for SystemZ - just one loop changes 
on SPEC, so it's not really any issue for me. It just looks like 
something to remove, but I may be wrong...

/Jonas

-------------- next part --------------
A non-text attachment was scrubbed...
Name: NoInterleaveGroupReverseCost.patch
Type: text/x-patch
Size: 1079 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20180921/8a86d02b/attachment.bin>


More information about the llvm-commits mailing list