reference, declarationdefinition
definition → references, declarations, derived classes, virtual overrides
reference to multiple definitions → definitions
unreferenced

References

lib/Transforms/Vectorize/SLPVectorizer.cpp
 2910   Type *ScalarTy = VL[0]->getType();
 2911   if (StoreInst *SI = dyn_cast<StoreInst>(VL[0]))
 2913   else if (CmpInst *CI = dyn_cast<CmpInst>(VL[0]))
 2915   VectorType *VecTy = VectorType::get(ScalarTy, VL.size());
 2919   if (MinBWs.count(VL[0]))
 2921         IntegerType::get(F->getContext(), MinBWs[VL[0]].first), VL.size());
 2921         IntegerType::get(F->getContext(), MinBWs[VL[0]].first), VL.size());
 2931     if (allConstant(VL))
 2933     if (isSplat(VL)) {
 2938         allSameType(VL) && allSameBlock(VL)) {
 2938         allSameType(VL) && allSameBlock(VL)) {
 2939       Optional<TargetTransformInfo::ShuffleKind> ShuffleKind = isShuffle(VL);
 2942         for (auto *V : VL) {
 2958     return ReuseShuffleCost + getGatherCost(VL);
 2960   assert(E->getOpcode() && allSameType(VL) && allSameBlock(VL) && "Invalid VL");
 2960   assert(E->getOpcode() && allSameType(VL) && allSameBlock(VL) && "Invalid VL");
 2975                 cast<ExtractElementInst>(VL[I])->getIndexOperand());
 2986         for (Value *V : VL) {
 3005         for (unsigned i = 0, e = VL.size(); i < e; ++i) {
 3006           Instruction *E = cast<Instruction>(VL[i]);
 3033       return ReuseShuffleCost + getGatherCost(VL);
 3051         ReuseShuffleCost -= (ReuseShuffleNumbers - VL.size()) * ScalarEltCost;
 3055       int ScalarCost = VL.size() * ScalarEltCost;
 3057       VectorType *SrcVecTy = VectorType::get(SrcTy, VL.size());
 3073         ReuseShuffleCost -= (ReuseShuffleNumbers - VL.size()) * ScalarEltCost;
 3075       VectorType *MaskTy = VectorType::get(Builder.getInt1Ty(), VL.size());
 3116       for (unsigned i = 0, e = VL.size(); i < e; ++i) {
 3117         const Instruction *I = cast<Instruction>(VL[i]);
 3140         ReuseShuffleCost -= (ReuseShuffleNumbers - VL.size()) * ScalarEltCost;
 3156         ReuseShuffleCost -= (ReuseShuffleNumbers - VL.size()) * ScalarEltCost;
 3169         ReuseShuffleCost -= (ReuseShuffleNumbers - VL.size()) * ScalarEltCost;
 3187         ReuseShuffleCost -= (ReuseShuffleNumbers - VL.size()) * ScalarEltCost;
 3210         ReuseShuffleCost -= (ReuseShuffleNumbers - VL.size()) * ScalarEltCost;
 3234           Instruction *I = cast<Instruction>(VL[Idx]);
 3238         for (Value *V : VL) {
 3244       for (Value *V : VL) {
 3259         VectorType *Src0Ty = VectorType::get(Src0SclTy, VL.size());
 3260         VectorType *Src1Ty = VectorType::get(Src1SclTy, VL.size());