Home
last modified time | relevance | path

Searched refs:Instruction (Results 1 – 25 of 1123) sorted by relevance

12345678910>>...45

/freebsd-14.2/contrib/llvm-project/llvm/lib/Transforms/InstCombine/
H A DInstCombineInternal.h159 Instruction *visitAllocSite(Instruction &FI);
170 Instruction *
186 Instruction *visitInstruction(Instruction &I) { return nullptr; } in visitInstruction()
191 bool dominatesAllUses(const Instruction *DI, const Instruction *UI,
420 Instruction *
462 Instruction *eraseInstFromFunction(Instruction &I) override { in eraseInstFromFunction()
510 Instruction *tryFoldInstWithCtpopWithNot(Instruction *I);
556 Instruction *Shr, const APInt &ShrOp1, Instruction *Shl,
576 Instruction *foldOpIntoPhi(Instruction &I, PHINode *PN);
592 Instruction *FoldOpIntoSelect(Instruction &Op, SelectInst *SI,
[all …]
/freebsd-14.2/contrib/llvm-project/llvm/lib/Transforms/Vectorize/
H A DVPlanAnalysis.cpp60 case Instruction::ICmp: in inferScalarTypeForRecipe()
61 case Instruction::FCmp: in inferScalarTypeForRecipe()
63 case Instruction::UDiv: in inferScalarTypeForRecipe()
64 case Instruction::SDiv: in inferScalarTypeForRecipe()
67 case Instruction::Add: in inferScalarTypeForRecipe()
69 case Instruction::Sub: in inferScalarTypeForRecipe()
71 case Instruction::Mul: in inferScalarTypeForRecipe()
75 case Instruction::Shl: in inferScalarTypeForRecipe()
78 case Instruction::And: in inferScalarTypeForRecipe()
79 case Instruction::Or: in inferScalarTypeForRecipe()
[all …]
/freebsd-14.2/contrib/llvm-project/llvm/lib/IR/
H A DInstruction.cpp46 Instruction::~Instruction() { in ~Instruction()
98 void Instruction::insertBefore(Instruction *InsertPos) { in insertBefore()
110 void Instruction::insertAfter(Instruction *InsertPos) { in insertAfter()
162 void Instruction::moveBefore(Instruction *MovePos) { in moveBefore()
166 void Instruction::moveBeforePreserving(Instruction *MovePos) { in moveBeforePreserving()
170 void Instruction::moveAfter(Instruction *MovePos) { in moveAfter()
178 void Instruction::moveAfterPreserving(Instruction *MovePos) { in moveAfterPreserving()
230 Instruction::cloneDebugInfoFrom(const Instruction *From, in cloneDebugInfoFrom()
795 bool Instruction::isSameOperationAs(const Instruction *I, in isSameOperationAs()
1161 Instruction *Instruction::cloneImpl() const { in cloneImpl()
[all …]
/freebsd-14.2/contrib/llvm-project/llvm/lib/FuzzMutate/
H A DOperations.cpp122 case Instruction::Add: in binOpDescriptor()
123 case Instruction::Sub: in binOpDescriptor()
124 case Instruction::Mul: in binOpDescriptor()
125 case Instruction::SDiv: in binOpDescriptor()
126 case Instruction::UDiv: in binOpDescriptor()
127 case Instruction::SRem: in binOpDescriptor()
128 case Instruction::URem: in binOpDescriptor()
129 case Instruction::Shl: in binOpDescriptor()
132 case Instruction::And: in binOpDescriptor()
133 case Instruction::Or: in binOpDescriptor()
[all …]
/freebsd-14.2/contrib/llvm-project/llvm/lib/Transforms/Scalar/
H A DSpeculativeExecution.cpp217 case Instruction::Add: in ComputeSpeculationCost()
218 case Instruction::Mul: in ComputeSpeculationCost()
219 case Instruction::And: in ComputeSpeculationCost()
220 case Instruction::Or: in ComputeSpeculationCost()
222 case Instruction::Shl: in ComputeSpeculationCost()
223 case Instruction::Sub: in ComputeSpeculationCost()
224 case Instruction::LShr: in ComputeSpeculationCost()
225 case Instruction::AShr: in ComputeSpeculationCost()
226 case Instruction::Xor: in ComputeSpeculationCost()
227 case Instruction::ZExt: in ComputeSpeculationCost()
[all …]
H A DFloat2Int.cpp81 case Instruction::FAdd: return Instruction::Add; in mapBinOpcode()
82 case Instruction::FSub: return Instruction::Sub; in mapBinOpcode()
83 case Instruction::FMul: return Instruction::Mul; in mapBinOpcode()
192 if (Instruction *OI = dyn_cast<Instruction>(O)) { in walkBackwards()
210 if (Instruction *OI = dyn_cast<Instruction>(O)) { in calcRange()
267 case Instruction::FAdd: in calcRange()
268 case Instruction::FSub: in calcRange()
288 case Instruction::FCmp: in calcRange()
341 Instruction *UI = dyn_cast<Instruction>(U); in validateAndTransform()
409 } else if (Instruction *VI = dyn_cast<Instruction>(V)) { in convert()
[all …]
H A DReassociate.cpp127 Instruction *I = dyn_cast<Instruction>(V); in XorOpnd()
206 Instruction *I = dyn_cast<Instruction>(V); in getRank()
922 Instruction *TheNeg = dyn_cast<Instruction>(U); in NegateValue()
1026 for (auto Op : {Instruction::Add, Instruction::Sub, Instruction::Mul, in shouldConvertOrWithNoCommonBitsToAdd()
1153 if (Instruction *I2 = dyn_cast<Instruction>(X)) in FindInOperandList()
1162 if (Instruction *I2 = dyn_cast<Instruction>(X)) in FindInOperandList()
1774 if (Instruction *VI = dyn_cast<Instruction>(V)) in OptimizeAdd()
1910 if (Instruction *MI = dyn_cast<Instruction>(M)) in buildMinimalMultiplyDAG()
2056 if (Instruction *OpInst = dyn_cast<Instruction>(Op)) in RecursivelyEraseDeadInsts()
2396 if (Instruction *VI = dyn_cast<Instruction>(V)) in ReassociateExpression()
[all …]
H A DLoopRerollPass.cpp285 bool isPairInSame(Instruction *J1, Instruction *J2) { in isPairInSame()
299 void recordPair(Instruction *J1, Instruction *J2, unsigned i) { in recordPair()
429 Instruction *IV;
667 Instruction *User = cast<Instruction>(U.getUser()); in collectInLoopUserSet()
681 if (Instruction *Op = dyn_cast<Instruction>(U)) in collectInLoopUserSet()
714 if (Instruction *I = dyn_cast<Instruction>(IVU)) { in isSimpleArithmeticOp()
771 if (Instruction *II = dyn_cast<Instruction>(I)) { in collectPossibleRoots()
837 Instruction *I = cast<Instruction>(V); in findRootsRecursive()
1155 Instruction *IVUser = dyn_cast<Instruction>(U); in validate()
1159 Instruction *UUser = dyn_cast<Instruction>(UU); in validate()
[all …]
/freebsd-14.2/contrib/llvm-project/llvm/lib/Transforms/AggressiveInstCombine/
H A DTruncInstCombine.cpp52 case Instruction::ZExt: in getRelevantOperands()
53 case Instruction::SExt: in getRelevantOperands()
57 case Instruction::Add: in getRelevantOperands()
58 case Instruction::Sub: in getRelevantOperands()
59 case Instruction::Mul: in getRelevantOperands()
60 case Instruction::And: in getRelevantOperands()
61 case Instruction::Or: in getRelevantOperands()
62 case Instruction::Xor: in getRelevantOperands()
63 case Instruction::Shl: in getRelevantOperands()
64 case Instruction::LShr: in getRelevantOperands()
[all …]
/freebsd-14.2/contrib/llvm-project/llvm/lib/Target/ARM/
H A DMVELaneInterleavingPass.cpp146 cast<Instruction>(*E->user_begin())->getOpcode() != Instruction::Mul) { in isProfitableToInterleave()
186 case Instruction::SExt: in tryInterleave()
187 case Instruction::ZExt: in tryInterleave()
234 case Instruction::Add: in tryInterleave()
235 case Instruction::Sub: in tryInterleave()
236 case Instruction::Mul: in tryInterleave()
237 case Instruction::AShr: in tryInterleave()
238 case Instruction::LShr: in tryInterleave()
239 case Instruction::Shl: in tryInterleave()
240 case Instruction::ICmp: in tryInterleave()
[all …]
/freebsd-14.2/contrib/llvm-project/llvm/lib/Target/SystemZ/
H A DSystemZTargetTransformInfo.cpp36 if (const Instruction *User = dyn_cast<Instruction>(U)) { in isUsedAsMemCpySource()
449 Opcode == Instruction::SDiv || Opcode == Instruction::SRem; in getArithmeticInstrCost()
451 Opcode == Instruction::UDiv || Opcode == Instruction::URem; in getArithmeticInstrCost()
474 if (Opcode == Instruction::FAdd || Opcode == Instruction::FSub || in getArithmeticInstrCost()
475 Opcode == Instruction::FMul || Opcode == Instruction::FDiv) in getArithmeticInstrCost()
486 if (const Instruction *I = dyn_cast<Instruction>(A)) in getArithmeticInstrCost()
499 if (const Instruction *I = dyn_cast<Instruction>(A)) in getArithmeticInstrCost()
533 if (Opcode == Instruction::Shl || Opcode == Instruction::LShr || in getArithmeticInstrCost()
760 if (Opcode == Instruction::ZExt || Opcode == Instruction::UIToFP) in getBoolVecToIntConversionCost()
1073 const Instruction *UserI = cast<Instruction>(*Ld->user_begin()); in isFoldableLoad()
[all …]
/freebsd-14.2/contrib/llvm-project/llvm/include/llvm/IR/
H A DOperator.h42 if (const Instruction *I = dyn_cast<Instruction>(this)) in getOpcode()
50 if (const Instruction *I = dyn_cast<Instruction>(V)) in getOpcode()
84 friend class Instruction;
122 return (isa<Instruction>(V) && classof(cast<Instruction>(V))) || in classof()
136 friend class Instruction;
163 return (isa<Instruction>(V) && classof(cast<Instruction>(V))) || in classof()
172 friend class Instruction;
307 case Instruction::FNeg: in classof()
308 case Instruction::FAdd: in classof()
320 case Instruction::PHI: in classof()
[all …]
H A DInstruction.h43 class Instruction : public User,
74 const Instruction *From,
131 Instruction(const Instruction &) = delete;
132 Instruction &operator=(const Instruction &) = delete;
136 Instruction *user_back() { return cast<Instruction>(*user_begin());}
137 const Instruction *user_back() const { return cast<Instruction>(*user_begin());}
314 case Instruction::Invoke:
757 case Instruction::Call:
815 const Instruction *
826 const Instruction *
[all …]
H A DInstructions.h159 return isa<Instruction>(V) && classof(cast<Instruction>(V)); in classof()
279 return isa<Instruction>(V) && classof(cast<Instruction>(V)); in classof()
416 return isa<Instruction>(V) && classof(cast<Instruction>(V)); in classof()
494 return isa<Instruction>(V) && classof(cast<Instruction>(V));
694 return isa<Instruction>(V) && classof(cast<Instruction>(V));
906 return isa<Instruction>(V) && classof(cast<Instruction>(V));
1145 return isa<Instruction>(V) && classof(cast<Instruction>(V));
1350 return isa<Instruction>(V) && classof(cast<Instruction>(V));
1466 return isa<Instruction>(V) && classof(cast<Instruction>(V));
1704 : Instruction(S1->getType(), Instruction::Select,
[all …]
/freebsd-14.2/contrib/llvm-project/llvm/include/llvm/Analysis/
H A DIVDescriptors.h26 class Instruction; variable
90 InstDesc(bool IsRecur, Instruction *I, Instruction *ExactFP = nullptr)
94 InstDesc(Instruction *I, RecurKind K, Instruction *ExactFP = nullptr)
113 Instruction *PatternLastInst;
117 Instruction *ExactFPMathInst;
131 static bool hasMultipleUsesOf(Instruction *I,
136 static bool areAllUsesIn(Instruction *I, SmallPtrSetImpl<Instruction *> &Set);
283 Instruction *LoopExitInstr = nullptr;
290 Instruction *ExactFPMathInst = nullptr;
300 SmallPtrSet<Instruction *, 8> CastInsts;
[all …]
H A DMustExecute.h40 class Instruction; variable
275 typedef const Instruction *value_type;
277 typedef const Instruction **pointer;
278 typedef const Instruction *&reference;
345 void reset(const Instruction *I);
354 const Instruction *advance();
366 const Instruction *CurInst;
371 const Instruction *Head, *Tail;
470 bool findInContextOf(const Instruction *I, const Instruction *PP) { in findInContextOf()
494 const Instruction *
[all …]
H A DInstructionPrecedenceTracking.h28 class Instruction; variable
34 DenseMap<const BasicBlock *, const Instruction *> FirstSpecialInsts;
54 const Instruction *getFirstSpecialInstruction(const BasicBlock *BB);
62 bool isPreceededBySpecialInstruction(const Instruction *Insn);
81 void removeInstruction(const Instruction *Inst);
86 void removeUsersOf(const Instruction *Inst);
103 const Instruction *getFirstICFI(const BasicBlock *BB) { in getFirstICFI()
114 bool isDominatedByICFIFromSameBlock(const Instruction *Insn) { in isDominatedByICFIFromSameBlock()
118 bool isSpecialInstruction(const Instruction *Insn) const override;
125 const Instruction *getFirstMemoryWrite(const BasicBlock *BB) { in getFirstMemoryWrite()
[all …]
/freebsd-14.2/contrib/llvm-project/llvm/include/llvm/Transforms/Utils/
H A DInstructionWorklist.h26 SmallVector<Instruction *, 256> Worklist;
31 SmallSetVector<Instruction *, 16> Deferred;
44 void add(Instruction *I) { in add()
52 if (Instruction *I = dyn_cast<Instruction>(V)) in addValue()
58 void push(Instruction *I) { in push()
69 if (Instruction *I = dyn_cast<Instruction>(V)) in pushValue()
73 Instruction *popDeferred() { in popDeferred()
85 void remove(Instruction *I) { in remove()
96 Instruction *removeOne() { in removeOne()
106 void pushUsersToWorkList(Instruction &I) { in pushUsersToWorkList()
[all …]
H A DLocal.h41 class Instruction; variable
73 bool isInstructionTriviallyDead(Instruction *I,
144 bool replaceDbgUsesWithUndef(Instruction *I);
207 AllocaInst *DemoteRegToStack(Instruction &X,
309 void salvageDebugInfo(Instruction &I);
314 void salvageDebugInfoForDbgValues(Instruction &I,
357 bool replaceAllDbgUsesWith(Instruction &From, Value &To, Instruction &DomPoint,
402 void combineMetadata(Instruction *K, const Instruction *J,
411 void combineMetadataForCSE(Instruction *K, const Instruction *J,
460 void dropDebugUsers(Instruction &I);
[all …]
/freebsd-14.2/contrib/llvm-project/llvm/include/llvm/Transforms/InstCombine/
H A DInstCombiner.h139 if (isa<Instruction>(V)) { in getComplexity()
294 case Instruction::Select: in canFreelyInvertAllUsersOf()
300 case Instruction::Br: in canFreelyInvertAllUsersOf()
333 case Instruction::SRem: // X % 1 = 0 in getSafeVectorConstantForBinop()
349 case Instruction::SDiv: // 0 / X = 0 in getSafeVectorConstantForBinop()
351 case Instruction::SRem: // 0 % X = 0 in getSafeVectorConstantForBinop()
404 Instruction *InsertNewInstBefore(Instruction *New, BasicBlock::iterator Old) { in InsertNewInstBefore()
413 Instruction *InsertNewInstWith(Instruction *New, BasicBlock::iterator Old) { in InsertNewInstWith()
424 Instruction *replaceInstUsesWith(Instruction &I, Value *V) { in replaceInstUsesWith()
448 Instruction *replaceOperand(Instruction &I, unsigned OpNum, Value *V) { in replaceOperand()
[all …]
/freebsd-14.2/contrib/llvm-project/llvm/lib/Analysis/
H A DIVDescriptors.cpp75 Instruction *I, *J = cast<Instruction>(Phi->use_begin()->getUser()); in lookThroughAnd()
435 Instruction *UI = cast<Instruction>(U); in AddReductionVar()
742 Instruction *I1 = in isConditionalRdxPattern()
758 Instruction *IPhi = isa<PHINode>(*Op1) ? dyn_cast<Instruction>(Op1) in isConditionalRdxPattern()
783 case Instruction::Or: in isRecurrenceInstr()
826 Instruction *I, SmallPtrSetImpl<Instruction *> &Insts, in hasMultipleUsesOf()
1152 if (RedOp == Instruction::ICmp || RedOp == Instruction::FCmp) in getReductionOpChain()
1155 auto getNextInstruction = [&](Instruction *Cur) -> Instruction * { in getReductionOpChain()
1157 Instruction *UI = cast<Instruction>(User); in getReductionOpChain()
1160 if (RedOp == Instruction::ICmp || RedOp == Instruction::FCmp) { in getReductionOpChain()
[all …]
/freebsd-14.2/contrib/llvm-project/llvm/lib/CodeGen/
H A DComplexDeinterleavingPass.cpp313 NodePtr identifyPartialMul(Instruction *Real, Instruction *Imag);
319 identifyNodeWithImplicitAdd(Instruction *I, Instruction *J,
329 NodePtr identifyAdd(Instruction *Real, Instruction *Imag);
367 NodePtr identifyReassocNodes(Instruction *I, Instruction *J);
386 NodePtr identifyPHINode(Instruction *Real, Instruction *Imag);
390 NodePtr identifySelectNode(Instruction *Real, Instruction *Imag);
550 Instruction *Real, Instruction *Imag, in identifyNodeWithImplicitAdd()
658 return Op == Instruction::FAdd || Op == Instruction::Add; in identifyPartialMul()
661 return Op == Instruction::FSub || Op == Instruction::Sub; in identifyPartialMul()
826 (OpcA == Instruction::Add && OpcB == Instruction::Sub); in isInstructionPairAdd()
[all …]
H A DTypePromotion.cpp202 return Opc == Instruction::AShr || Opc == Instruction::SDiv || in GenerateSignBits()
203 Opc == Instruction::SRem || Opc == Instruction::SExt; in GenerateSignBits()
335 if (Opc != Instruction::Add && Opc != Instruction::Sub) in isSafeWrap()
411 Instruction *InstTo = dyn_cast<Instruction>(To); in ReplaceAllUsersOfWith()
719 case Instruction::Br: in isSupportedValue()
722 case Instruction::PHI: in isSupportedValue()
724 case Instruction::Ret: in isSupportedValue()
725 case Instruction::Load: in isSupportedValue()
730 case Instruction::ZExt: in isSupportedValue()
732 case Instruction::ICmp: in isSupportedValue()
[all …]
/freebsd-14.2/contrib/llvm-project/llvm/include/llvm/Transforms/Scalar/
H A DReassociate.h38 class Instruction; variable
74 SetVector<AssertingVH<Instruction>, std::deque<AssertingVH<Instruction>>>;
84 Instruction::BinaryOpsEnd - Instruction::BinaryOpsBegin;
102 void canonicalizeOperands(Instruction *I);
109 Value *OptimizeAdd(Instruction *I,
111 Value *OptimizeXor(Instruction *I,
113 bool CombineXorOpnd(Instruction *I, reassociate::XorOpnd *Opnd1,
123 void EraseInst(Instruction *I);
125 void OptimizeInst(Instruction *I);
126 Instruction *canonicalizeNegFPConstantsForOp(Instruction *I, Instruction *Op,
[all …]
/freebsd-14.2/contrib/llvm-project/llvm/lib/Target/Hexagon/
H A DHexagonVectorLoopCarriedReuse.cpp112 Instruction *back() const { in back()
205 DepChain *getDepChainBtwn(Instruction *I1, Instruction *I2, int Iters);
206 bool isEquivalentOperation(Instruction *I1, Instruction *I2);
390 Instruction *User = cast<Instruction>(U.getUser()); in findValueToReuse()
418 Instruction *BEUser = cast<Instruction>(U.getUser()); in findValueToReuse()
442 Instruction *OpInst = dyn_cast<Instruction>(Op); in findValueToReuse()
446 Instruction *BEOpInst = dyn_cast<Instruction>(BEOp); in findValueToReuse()
476 Instruction *OpInst = dyn_cast<Instruction>(Op); in findValueToReuse()
486 Instruction *BEOpInst = dyn_cast<Instruction>(BEOp); in findValueToReuse()
536 Instruction *I = dyn_cast<Instruction>(Inst2Replace->getOperand(j)); in reuseValue()
[all …]

12345678910>>...45