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

Declarations

include/llvm/IR/Instructions.h
 1952   DECLARE_TRANSPARENT_OPERAND_ACCESSORS(Value);

References

lib/Analysis/CFLGraph.h
  476       auto *Vec = Inst.getOperand(0);
  477       auto *Val = Inst.getOperand(1);
lib/Analysis/InstructionSimplify.cpp
 5348     Result = SimplifyInsertElementInst(IE->getOperand(0), IE->getOperand(1),
 5348     Result = SimplifyInsertElementInst(IE->getOperand(0), IE->getOperand(1),
 5349                                        IE->getOperand(2), Q);
lib/Analysis/Lint.cpp
  634   if (ConstantInt *CI = dyn_cast<ConstantInt>(findValue(I.getOperand(2),
lib/Analysis/TargetTransformInfo.cpp
 1278     ConstantInt *CI = dyn_cast<ConstantInt>(IE->getOperand(2));
lib/Analysis/VectorUtils.cpp
  273     if (!isa<ConstantInt>(III->getOperand(2)))
  275     unsigned IIElt = cast<ConstantInt>(III->getOperand(2))->getZExtValue();
  280       return III->getOperand(1);
  284     return findScalarElement(III->getOperand(0), EltNo);
lib/ExecutionEngine/Interpreter/Execution.cpp
 1836   GenericValue Src1 = getOperandValue(I.getOperand(0), SF);
 1837   GenericValue Src2 = getOperandValue(I.getOperand(1), SF);
 1838   GenericValue Src3 = getOperandValue(I.getOperand(2), SF);
lib/IR/Instructions.cpp
 1751   Op<0>() = Vec;
 1752   Op<1>() = Elt;
 1753   Op<2>() = Index;
 1766   Op<0>() = Vec;
 1767   Op<1>() = Elt;
 1768   Op<2>() = Index;
 4245   return InsertElementInst::Create(getOperand(0), getOperand(1), getOperand(2));
 4245   return InsertElementInst::Create(getOperand(0), getOperand(1), getOperand(2));
 4245   return InsertElementInst::Create(getOperand(0), getOperand(1), getOperand(2));
lib/IR/Verifier.cpp
 3260   Assert(InsertElementInst::isValidOperands(IE.getOperand(0), IE.getOperand(1),
 3260   Assert(InsertElementInst::isValidOperands(IE.getOperand(0), IE.getOperand(1),
 3261                                             IE.getOperand(2)),
lib/Target/AMDGPU/AMDGPUTargetTransformInfo.cpp
  710     ConstantInt *CI = dyn_cast<ConstantInt>(IE->getOperand(2));
lib/Target/X86/X86FastISel.cpp
 3031       const Value *Index = IE->getOperand(2);
 3037         Op = IE->getOperand(1);
 3040       Op = IE->getOperand(0);
lib/Transforms/InstCombine/InstCombineCasts.cpp
  669   Value *VecOp = InsElt->getOperand(0);
  670   Value *ScalarOp = InsElt->getOperand(1);
  671   Value *Index = InsElt->getOperand(2);
 2405         return new BitCastInst(InsElt->getOperand(1), DestTy);
lib/Transforms/InstCombine/InstCombineVectorOps.cpp
  398       if (IE->getOperand(2) == Index)
  399         return replaceInstUsesWith(EI, IE->getOperand(1));
  402       if (isa<Constant>(IE->getOperand(2)) && IndexC) {
  404         EI.setOperand(0, IE->getOperand(0));
  471     Value *VecOp    = IEI->getOperand(0);
  472     Value *ScalarOp = IEI->getOperand(1);
  473     Value *IdxOp    = IEI->getOperand(2);
  626     Value *VecOp    = IEI->getOperand(0);
  627     Value *ScalarOp = IEI->getOperand(1);
  628     Value *IdxOp    = IEI->getOperand(2);
  761   Value *SplatVal = InsElt.getOperand(1);
  769     auto *Idx = dyn_cast<ConstantInt>(CurrIE->getOperand(2));
  770     if (!Idx || CurrIE->getOperand(1) != SplatVal)
  773     auto *NextIE = dyn_cast<InsertElementInst>(CurrIE->getOperand(0));
  794   if (!isa<UndefValue>(FirstIE->getOperand(0)))
  802   if (!cast<ConstantInt>(FirstIE->getOperand(2))->isZero())
  818   auto *Shuf = dyn_cast<ShuffleVectorInst>(InsElt.getOperand(0));
  824   if (!match(InsElt.getOperand(2), m_ConstantInt(IdxC)))
  828   Value *X = InsElt.getOperand(1);
  852   auto *Shuf = dyn_cast<ShuffleVectorInst>(InsElt.getOperand(0));
  859   if (!match(InsElt.getOperand(2), m_ConstantInt(IdxC)))
  864   Value *Scalar = InsElt.getOperand(1);
  908   auto *InsElt1 = dyn_cast<InsertElementInst>(InsElt2.getOperand(0));
  915   if (match(InsElt1->getOperand(0), m_Value(X)) &&
  916       match(InsElt1->getOperand(1), m_Value(Y)) && !isa<Constant>(Y) &&
  917       match(InsElt1->getOperand(2), m_ConstantInt(IdxC1)) &&
  918       match(InsElt2.getOperand(1), m_Constant(ScalarC)) &&
  919       match(InsElt2.getOperand(2), m_ConstantInt(IdxC2)) && IdxC1 != IdxC2) {
  930   auto *Inst = dyn_cast<Instruction>(InsElt.getOperand(0));
  935   if (auto *Shuf = dyn_cast<ShuffleVectorInst>(InsElt.getOperand(0))) {
  941         !match(InsElt.getOperand(1), m_Constant(InsEltScalar)) ||
  942         !match(InsElt.getOperand(2), m_ConstantInt(InsEltIndex)))
  989     if (!match(InsElt.getOperand(2), m_ConstantInt(InsertIdx[0])) ||
  990         !match(InsElt.getOperand(1), m_Constant(Val[0])) ||
  991         !match(IEI->getOperand(2), m_ConstantInt(InsertIdx[1])) ||
  992         !match(IEI->getOperand(1), m_Constant(Val[1])))
 1019     return new ShuffleVectorInst(IEI->getOperand(0),
 1027   Value *VecOp    = IE.getOperand(0);
 1028   Value *ScalarOp = IE.getOperand(1);
 1029   Value *IdxOp    = IE.getOperand(2);
lib/Transforms/Instrumentation/MemorySanitizer.cpp
 1867     insertShadowCheck(I.getOperand(2), &I);
 1870               I.getOperand(2), "_msprop"));
lib/Transforms/Scalar/RewriteStatepointsForGC.cpp
  834         visitIncomingValue(IE->getOperand(0)); // vector operand
  835         visitIncomingValue(IE->getOperand(1)); // scalar operand
  900         NewState = meetBDVState(NewState, getStateForInput(IE->getOperand(0)));
  901         NewState = meetBDVState(NewState, getStateForInput(IE->getOperand(1)));
  980         UndefValue *VecUndef = UndefValue::get(IE->getOperand(0)->getType());
  981         UndefValue *ScalarUndef = UndefValue::get(IE->getOperand(1)->getType());
  984                                          IE->getOperand(2), Name, IE);
 1095         Value *InVal = BdvIE->getOperand(OperandIdx);
 1097         BaseIE->setOperand(OperandIdx, Base);
lib/Transforms/Scalar/Scalarizer.cpp
  278       ConstantInt *Idx = dyn_cast<ConstantInt>(Insert->getOperand(2));
  282       V = Insert->getOperand(0);
  284         CV[J] = Insert->getOperand(1);
  290         CV[J] = Insert->getOperand(1);
lib/Transforms/Vectorize/LoopVectorize.cpp
 3370         auto Elements = IE->getOperand(0)->getType()->getVectorNumElements();
 3372             IE->getOperand(0), VectorType::get(ScalarTruncatedTy, Elements));
 3373         auto *O1 = B.CreateZExtOrTrunc(IE->getOperand(1), ScalarTruncatedTy);
 3374         NewI = B.CreateInsertElement(O0, O1, IE->getOperand(2));
 7417     VPhi->addIncoming(IEI->getOperand(0), PredicatingBB); // Unmodified vector.
lib/Transforms/Vectorize/SLPVectorizer.cpp
 6632     if (auto *CI = dyn_cast<ConstantInt>(LastInsertElem->getOperand(2))) {
 6637     BuildVectorOpds.push_back(LastInsertElem->getOperand(1));
 6638     V = LastInsertElem->getOperand(0);