[llvm-dev] ShuffleKind SK_ExtractSubvector
Jonas Paulsson via llvm-dev
llvm-dev at lists.llvm.org
Wed Feb 8 06:35:57 PST 2017
Hi,
I am a little unsure about the semantics of the ShuffleKind
SK_ExtractSubvector. It seems a subvector is to be extracted, starting
from a given index of a given subtype.
First of all, if index 0 is passed, I suppose this would mean a noop?
But what about calls like the one made of LoopVectorizer for
Instruction::PHI in getInstructionCost():
return TTI.getShuffleCost(TargetTransformInfo::SK_ExtractSubvector,
VectorTy, VF - 1, VectorTy);
Here the highest index is passed, which doesn't make sense to me. Nor
does it make sense to pass the the same VectorTy in both parameters.
In BBVectorize, start index 0 is passed in one place, but then in
another place start index of 'VF' is passed, which should even be
outside possible indexes, or?
I guess this is confusing since there are those extra parameters and
everything, but in the end it seems to me there is no code anywhere
checking this particular ShuffleKind, or?
/Jonas
More information about the llvm-dev
mailing list