Lines Matching refs:IndexC

381 ConstantInt *getPreferredVectorIndex(ConstantInt *IndexC) {  in getPreferredVectorIndex()  argument
382 const unsigned IndexBW = IndexC->getType()->getBitWidth(); in getPreferredVectorIndex()
383 if (IndexBW == 64 || IndexC->getValue().getActiveBits() > 64) in getPreferredVectorIndex()
385 return ConstantInt::get(IndexC->getContext(), in getPreferredVectorIndex()
386 IndexC->getValue().zextOrTrunc(64)); in getPreferredVectorIndex()
398 auto *IndexC = dyn_cast<ConstantInt>(Index); in visitExtractElementInst() local
399 if (IndexC) { in visitExtractElementInst()
401 if (auto *NewIdx = getPreferredVectorIndex(IndexC)) in visitExtractElementInst()
412 IndexC->getValue().ult(NumElts)) { in visitExtractElementInst()
418 if (IndexC->getValue().getActiveBits() <= BitWidth) in visitExtractElementInst()
419 Idx = ConstantInt::get(Ty, IndexC->getValue().zextOrTrunc(BitWidth)); in visitExtractElementInst()
428 if (!EC.isScalable() && IndexC->getValue().uge(NumElts)) in visitExtractElementInst()
475 if (isa<Constant>(IE->getOperand(2)) && IndexC) in visitExtractElementInst()
480 uint64_t IdxVal = IndexC ? IndexC->getZExtValue() : 0; in visitExtractElementInst()
481 if (IndexC && IdxVal < EC.getKnownMinValue() && GEP->hasOneUse()) { in visitExtractElementInst()
497 NewPtr = Builder.CreateExtractElement(NewPtr, IndexC); in visitExtractElementInst()
503 NewOps.push_back(Builder.CreateExtractElement(Op, IndexC)); in visitExtractElementInst()
551 if (IndexC) { in visitExtractElementInst()
563 DemandedElts.setBit(IndexC->getZExtValue()); in visitExtractElementInst()
1508 if (auto *IndexC = dyn_cast<ConstantInt>(IdxOp)) in visitInsertElementInst() local
1509 if (auto *NewIdx = getPreferredVectorIndex(IndexC)) in visitInsertElementInst()
2021 uint64_t IndexC; in canonicalizeInsertSplat() local
2025 m_ConstantInt(IndexC)))) || in canonicalizeInsertSplat()
2026 !match(Op1, m_Undef()) || match(Mask, m_ZeroMask()) || IndexC == 0) in canonicalizeInsertSplat()
2426 auto isShufflingScalarIntoOp1 = [&](Value *&Scalar, ConstantInt *&IndexC) { in foldShuffleWithInsert() argument
2429 m_ConstantInt(IndexC)))) in foldShuffleWithInsert()
2445 if (NewInsIndex != -1 || Mask[i] != IndexC->getSExtValue()) in foldShuffleWithInsert()
2455 IndexC = ConstantInt::get(IndexC->getType(), NewInsIndex); in foldShuffleWithInsert()
2463 ConstantInt *IndexC; in foldShuffleWithInsert() local
2464 if (isShufflingScalarIntoOp1(Scalar, IndexC)) in foldShuffleWithInsert()
2465 return InsertElementInst::Create(V1, Scalar, IndexC); in foldShuffleWithInsert()
2472 if (isShufflingScalarIntoOp1(Scalar, IndexC)) in foldShuffleWithInsert()
2473 return InsertElementInst::Create(V1, Scalar, IndexC); in foldShuffleWithInsert()