Lines Matching defs:VL0

815   /// The main/alternate instruction. MainOp is also VL0.
1629 /// \param VL0 main load value.
1636 LoadsState canVectorizeLoads(ArrayRef<Value *> VL, const Value *VL0,
5033 BoUpSLP::canVectorizeLoads(ArrayRef<Value *> VL, const Value *VL0,
5047 Type *ScalarTy = VL0->getType();
5206 Instruction::Load, VecTy, cast<LoadInst>(VL0)->getPointerOperand(),
5353 Loop *L = LI->getLoopFor(cast<LoadInst>(VL0)->getParent());
7646 Instruction *VL0 = S.getMainOp();
7650 if (VL0->getNumOperands() > MaxPHINumOperands)
7674 if (!hasFullVectorsOrPowerOf2(*TTI, VL0->getType(), VL.size()))
7719 switch (canVectorizeLoads(VL, VL0, CurrentOrder, PointerOps)) {
7738 Type *ScalarTy = VL0->getType();
7767 Type *SrcTy = VL0->getOperand(0)->getType();
7783 CmpInst::Predicate P0 = cast<CmpInst>(VL0)->getPredicate();
7785 Type *ComparedTy = VL0->getOperand(0)->getType();
7840 Type *Ty0 = cast<GEPOperator>(VL0)->getSourceElementType();
7853 Type *Ty1 = VL0->getOperand(1)->getType();
7875 llvm::Type *ScalarTy = cast<StoreInst>(VL0)->getValueOperand()->getType();
7924 CallInst *CI = cast<CallInst>(VL0);
8394 Instruction *VL0 = S.getMainOp();
8395 BB = VL0->getParent();
8438 assert((!BS.getScheduleData(VL0) ||
8439 !BS.getScheduleData(VL0)->isPartOfBundle()) &&
8471 auto *PH = cast<PHINode>(VL0);
8611 std::max<unsigned>(DL->getTypeSizeInBits(VL0->getType()),
8614 DL->getTypeSizeInBits(VL0->getOperand(0)->getType()),
8619 DL->getTypeSizeInBits(VL0->getOperand(0)->getType()),
8621 std::min<unsigned>(DL->getTypeSizeInBits(VL0->getType()),
8630 for (unsigned I : seq<unsigned>(VL0->getNumOperands()))
8637 ComputeNumSignBits(VL0->getOperand(0), *DL, 0, AC, nullptr, DT);
8638 if (auto *OpI = dyn_cast<Instruction>(VL0->getOperand(0))) {
8643 DL->getTypeSizeInBits(VL0->getOperand(0)->getType()))
8651 CmpInst::Predicate P0 = cast<CmpInst>(VL0)->getPredicate();
8659 if (cast<CmpInst>(VL0)->isCommutative()) {
8671 Left.push_back(PoisonValue::get(VL0->getOperand(0)->getType()));
8672 Right.push_back(PoisonValue::get(VL0->getOperand(1)->getType()));
8690 ComputeNumSignBits(VL0->getOperand(0), *DL, 0, AC, nullptr, DT);
8692 DL->getTypeSizeInBits(VL0->getOperand(0)->getType()))
8695 ComputeNumSignBits(VL0->getOperand(1), *DL, 0, AC, nullptr, DT);
8697 DL->getTypeSizeInBits(VL0->getOperand(1)->getType()))
8730 TE->setOperand(*this, isa<BinaryOperator>(VL0) && isCommutative(VL0));
8731 for (unsigned I : seq<unsigned>(VL0->getNumOperands()))
8757 Type *VL0Ty = VL0->getOperand(IndexIdx)->getType();
8766 : DL->getIndexType(cast<GetElementPtrInst>(VL0)
8811 CallInst *CI = cast<CallInst>(VL0);
8818 TE->setOperand(*this, isCommutative(VL0));
8842 auto *CI = dyn_cast<CmpInst>(VL0);
8882 TE->setOperand(*this, isa<BinaryOperator>(VL0) || CI);
8883 for (unsigned I : seq<unsigned>(VL0->getNumOperands()))
11134 Instruction *VL0 = E->getMainOp();
11162 if (isa<CastInst, CallInst>(VL0)) {
11204 TTI::CastContextHint CCH = GetCastContextHint(VL0);
11327 auto *SrcVecTy = cast<FixedVectorType>(VL0->getType());
11443 Type *SrcScalarTy = VL0->getOperand(0)->getType();
11477 return TTI->getCastInstrCost(Opcode, VL0->getType(),
11478 VL0->getOperand(0)->getType(),
11479 TTI::getCastContextHint(VL0), CostKind, VL0);
11486 auto *VI = VL0->getOpcode() == Opcode ? VL0 : nullptr;
11487 TTI::CastContextHint CCH = GetCastContextHint(VL0->getOperand(0));
11513 if (match(VL0, m_Select(MatchCmp, m_Value(), m_Value())) ||
11514 match(VL0, MatchCmp))
11553 getOperandInfo(E->getOperand(1)), VL0);
11554 if (auto *SI = dyn_cast<SelectInst>(VL0)) {
11628 unsigned OpIdx = isa<UnaryOperator>(VL0) ? 0 : 1;
11638 return CommonCost + GetGEPCostDiff(VL, VL0);
11647 auto *LI0 = cast<LoadInst>(VL0);
11708 cast<StoreInst>(IsReorder ? VL[E->ReorderIndices.front()] : VL0);
11759 auto *CI = cast<CallInst>(VL0);
11776 (isa<CmpInst>(VL0) && isa<CmpInst>(E->getAltOp()))) &&
11821 } else if (auto *CI0 = dyn_cast<CmpInst>(VL0)) {
11826 VL0);
15304 Instruction *VL0 = E->getMainOp();
15327 auto *PH = cast<PHINode>(VL0);
15362 LLVM_DEBUG(dbgs() << "SLP: Diamond merged for " << *VL0 << ".\n");
15434 unsigned Offset = *getElementIndex(VL0);
15464 InsertElementInst *Ins = cast<InsertElementInst>(VL0);
15585 LLVM_DEBUG(dbgs() << "SLP: Diamond merged for " << *VL0 << ".\n");
15589 auto *CI = cast<CastInst>(VL0);
15632 LLVM_DEBUG(dbgs() << "SLP: Diamond merged for " << *VL0 << ".\n");
15637 LLVM_DEBUG(dbgs() << "SLP: Diamond merged for " << *VL0 << ".\n");
15659 CmpInst::Predicate P0 = cast<CmpInst>(VL0)->getPredicate();
15661 propagateIRFlags(V, E->Scalars, VL0);
15677 LLVM_DEBUG(dbgs() << "SLP: Diamond merged for " << *VL0 << ".\n");
15682 LLVM_DEBUG(dbgs() << "SLP: Diamond merged for " << *VL0 << ".\n");
15687 LLVM_DEBUG(dbgs() << "SLP: Diamond merged for " << *VL0 << ".\n");
15731 LLVM_DEBUG(dbgs() << "SLP: Diamond merged for " << *VL0 << ".\n");
15737 propagateIRFlags(V, E->Scalars, VL0);
15754 LLVM_DEBUG(dbgs() << "SLP: Diamond merged for " << *VL0 << ".\n");
15794 LLVM_DEBUG(dbgs() << "SLP: Diamond merged for " << *VL0 << ".\n");
15799 LLVM_DEBUG(dbgs() << "SLP: Diamond merged for " << *VL0 << ".\n");
15831 propagateIRFlags(V, E->Scalars, VL0, It == MinBWs.end());
15854 LoadInst *LI = cast<LoadInst>(VL0);
15864 VL0->getType(), Ptr0, VL0->getType(), PtrN, *DL, *SE);
15904 LLVM_DEBUG(dbgs() << "SLP: Diamond merged for " << *VL0 << ".\n");
15940 auto *SI = cast<StoreInst>(VL0);
15984 auto *GEP0 = cast<GetElementPtrInst>(VL0);
15989 LLVM_DEBUG(dbgs() << "SLP: Diamond merged for " << *VL0 << ".\n");
15997 LLVM_DEBUG(dbgs() << "SLP: Diamond merged for " << *VL0 << ".\n");
16021 CallInst *CI = cast<CallInst>(VL0);
16039 auto *CEI = cast<CallInst>(VL0);
16059 LLVM_DEBUG(dbgs() << "SLP: Diamond merged for " << *VL0 << ".\n");
16094 propagateIRFlags(V, E->Scalars, VL0);
16107 LLVM_DEBUG(dbgs() << "SLP: Diamond merged for " << *VL0 << ".\n");
16122 propagateIRFlags(V, E->Scalars, VL0);
16132 (isa<CmpInst>(VL0) && isa<CmpInst>(E->getAltOp()))) &&
16136 if (Instruction::isBinaryOp(E->getOpcode()) || isa<CmpInst>(VL0)) {
16140 LLVM_DEBUG(dbgs() << "SLP: Diamond merged for " << *VL0 << ".\n");
16149 LLVM_DEBUG(dbgs() << "SLP: Diamond merged for " << *VL0 << ".\n");
16155 (isa<CmpInst>(VL0) && LHS->getType() != RHS->getType()))) {
16163 if (isa<CmpInst>(VL0) && LHS->getType() != RHS->getType()) {
16185 } else if (auto *CI0 = dyn_cast<CmpInst>(VL0)) {