Searched refs:Instruction (Results 1 - 25 of 722) sorted by relevance

1234567891011>>

/freebsd-11-stable/contrib/llvm-project/llvm/include/llvm/Analysis/
H A DOrderedBasicBlock.h14 // maintains an internal Instruction -> Position map. A OrderedBasicBlock
30 class Instruction;
36 SmallDenseMap<const Instruction *, unsigned, 32> NumberedInsts;
51 bool comesBefore(const Instruction *A, const Instruction *B);
61 bool dominates(const Instruction *A, const Instruction *B);
64 void eraseInstruction(const Instruction *I);
69 void replaceInstruction(const Instruction *Old, const Instruction *Ne
[all...]
H A DOrderedInstructions.h40 bool localDominates(const Instruction *, const Instruction *) const;
47 bool dominates(const Instruction *, const Instruction *) const;
53 bool dfsBefore(const Instruction *, const Instruction *) const;
H A DInstructionPrecedenceTracking.h32 DenseMap<const BasicBlock *, const Instruction *> FirstSpecialInsts;
57 const Instruction *getFirstSpecialInstruction(const BasicBlock *BB);
65 bool isPreceededBySpecialInstruction(const Instruction *Insn);
72 virtual bool isSpecialInstruction(const Instruction *Insn) const = 0;
80 void insertInstructionTo(const Instruction *Inst, const BasicBlock *BB);
84 void removeInstruction(const Instruction *Inst);
104 const Instruction *getFirstICFI(const BasicBlock *BB) {
115 bool isDominatedByICFIFromSameBlock(const Instruction *Insn) {
119 virtual bool isSpecialInstruction(const Instruction *Insn) const;
128 const Instruction *getFirstMemoryWrit
[all...]
H A DIVDescriptors.h91 RecurrenceDescriptor(Value *Start, Instruction *Exit, RecurrenceKind K,
93 Instruction *UAI, Type *RT, bool Signed,
94 SmallPtrSetImpl<Instruction *> &CI)
104 InstDesc(bool IsRecur, Instruction *I, Instruction *UAI = nullptr)
108 InstDesc(Instruction *I, MinMaxRecurrenceKind K, Instruction *UAI = nullptr)
116 Instruction *getUnsafeAlgebraInst() { return UnsafeAlgebraInst; }
120 Instruction *getPatternInst() { return PatternLastInst; }
127 Instruction *PatternLastIns
[all...]
H A DMustExecute.h32 #include "llvm/IR/Instruction.h"
40 class Instruction;
96 virtual bool isGuaranteedToExecute(const Instruction &Inst,
121 virtual bool isGuaranteedToExecute(const Instruction &Inst,
150 virtual bool isGuaranteedToExecute(const Instruction &Inst,
161 bool doesNotWriteMemoryBefore(const Instruction &I, const Loop *CurLoop)
167 void insertInstructionTo(const Instruction *Inst, const BasicBlock *BB);
172 void removeInstruction(const Instruction *Inst);
206 /// Start Instruction | Visit Set
257 /// Start Instruction | Visi
[all...]
/freebsd-11-stable/contrib/llvm-project/llvm/lib/Transforms/InstCombine/
H A DInstCombineInternal.h31 #include "llvm/IR/Instruction.h"
84 if (isa<Instruction>(V)) {
203 if (BO->getOpcode() == Instruction::Add ||
204 BO->getOpcode() == Instruction::Sub)
224 auto *I = cast<Instruction>(U);
226 case Instruction::Select:
227 case Instruction::Br:
229 case Instruction::Xor: // Can invert 'xor' if it's a 'not', by ignoring it.
256 case Instruction::SRem: // X % 1 = 0
257 case Instruction
[all...]
/freebsd-11-stable/contrib/llvm-project/llvm/include/llvm/MC/
H A DMCWin64EH.h25 struct Instruction { struct in namespace:llvm::Win64EH
26 static WinEH::Instruction PushNonVol(MCSymbol *L, unsigned Reg) {
27 return WinEH::Instruction(Win64EH::UOP_PushNonVol, L, Reg, -1);
29 static WinEH::Instruction Alloc(MCSymbol *L, unsigned Size) {
30 return WinEH::Instruction(Size > 128 ? UOP_AllocLarge : UOP_AllocSmall, L,
33 static WinEH::Instruction PushMachFrame(MCSymbol *L, bool Code) {
34 return WinEH::Instruction(UOP_PushMachFrame, L, -1, Code ? 1 : 0);
36 static WinEH::Instruction SaveNonVol(MCSymbol *L, unsigned Reg,
38 return WinEH::Instruction(Offset > 512 * 1024 - 8 ? UOP_SaveNonVolBig
42 static WinEH::Instruction SaveXM
[all...]
/freebsd-11-stable/contrib/llvm-project/llvm/include/llvm/Transforms/Scalar/
H A DFloat2Int.h34 SmallPtrSet<Instruction *, 8> &Roots);
35 void seen(Instruction *I, ConstantRange R);
39 void walkBackwards(const SmallPtrSetImpl<Instruction *> &Roots);
42 Value *convert(Instruction *I, Type *ToTy);
45 MapVector<Instruction *, ConstantRange> SeenInsts;
46 SmallPtrSet<Instruction *, 8> Roots;
47 EquivalenceClasses<Instruction *> ECs;
48 MapVector<Instruction *, Value *> ConvertedInsts;
/freebsd-11-stable/contrib/llvm-project/llvm/include/llvm/Transforms/Utils/
H A DMisExpect.h27 /// \param I The Instruction being checked
30 void verifyMisExpect(llvm::Instruction *I,
39 /// \param I the Instruction being checked
40 void checkFrontendInstrumentation(Instruction &I);
H A DCodeMoverUtils.h22 class Instruction;
30 bool isControlFlowEquivalent(const Instruction &I0, const Instruction &I1,
44 bool isSafeToMoveBefore(Instruction &I, Instruction &InsertPoint,
H A DCallPromotionUtils.h38 Instruction *promoteCall(CallSite CS, Function *Callee,
48 Instruction *promoteCallWithIfThenElse(CallSite CS, Function *Callee,
/freebsd-11-stable/contrib/llvm-project/llvm/lib/Target/RISCV/
H A DRISCVTargetTransformInfo.cpp47 case Instruction::GetElementPtr:
52 case Instruction::Add:
53 case Instruction::And:
54 case Instruction::Or:
55 case Instruction::Xor:
56 case Instruction::Mul:
59 case Instruction::Sub:
60 case Instruction::Shl:
61 case Instruction::LShr:
62 case Instruction
[all...]
/freebsd-11-stable/contrib/llvm-project/llvm/lib/Target/XCore/
H A DXCoreLowerThreadLocal.cpp77 static Instruction *
78 createReplacementInstr(ConstantExpr *CE, Instruction *Instr) {
82 case Instruction::GetElementPtr: {
85 return dyn_cast<Instruction>(Builder.CreateInBoundsGEP(
89 case Instruction::Add:
90 case Instruction::Sub:
91 case Instruction::Mul:
92 case Instruction::UDiv:
93 case Instruction::SDiv:
94 case Instruction
[all...]
/freebsd-11-stable/contrib/llvm-project/llvm/include/llvm/Transforms/InstCombine/
H A DInstCombineWorklist.h15 #include "llvm/IR/Instruction.h"
27 SmallVector<Instruction *, 256> Worklist;
28 DenseMap<Instruction *, unsigned> WorklistMap;
40 void Add(Instruction *I) {
42 assert(I->getParent() && "Instruction not inserted yet?");
51 if (Instruction *I = dyn_cast<Instruction>(V))
58 void AddInitialGroup(ArrayRef<Instruction *> List) {
65 for (Instruction *I : reverse(List)) {
72 void Remove(Instruction *
[all...]
/freebsd-11-stable/contrib/llvm-project/llvm/tools/llvm-diff/
H A DDiffLog.h20 class Instruction;
61 typedef std::pair<Instruction*,Instruction*> DiffRecord;
70 void addMatch(Instruction *L, Instruction *R);
72 void addLeft(Instruction *L);
73 void addRight(Instruction *R);
77 Instruction *getLeft(unsigned I) const;
78 Instruction *getRight(unsigned I) const;
/freebsd-11-stable/contrib/llvm-project/llvm/lib/Transforms/Scalar/
H A DSpeculativeExecution.cpp212 static unsigned ComputeSpeculationCost(const Instruction *I,
215 case Instruction::GetElementPtr:
216 case Instruction::Add:
217 case Instruction::Mul:
218 case Instruction::And:
219 case Instruction::Or:
220 case Instruction::Select:
221 case Instruction::Shl:
222 case Instruction::Sub:
223 case Instruction
[all...]
H A DFloat2Int.cpp112 static Instruction::BinaryOps mapBinOpcode(unsigned Opcode) {
115 case Instruction::FAdd: return Instruction::Add;
116 case Instruction::FSub: return Instruction::Sub;
117 case Instruction::FMul: return Instruction::Mul;
124 SmallPtrSet<Instruction*,8> &Roots) {
131 for (Instruction &I : BB) {
136 case Instruction
[all...]
/freebsd-11-stable/contrib/llvm-project/llvm/lib/IR/
H A DInstruction.cpp1 //===-- Instruction.cpp - Implement the Instruction class -----------------===//
9 // This file implements the Instruction class for the IR library.
13 #include "llvm/IR/Instruction.h"
23 Instruction::Instruction(Type *ty, unsigned it, Use *Ops, unsigned NumOps, function in class:Instruction
24 Instruction *InsertBefore)
30 assert(BB && "Instruction to insert before is not in a basic block!");
35 Instruction::Instruction(Typ function in class:Instruction
[all...]
/freebsd-11-stable/contrib/llvm-project/llvm/lib/Transforms/Utils/
H A DCodeMoverUtils.cpp33 bool llvm::isControlFlowEquivalent(const Instruction &I0, const Instruction &I1,
49 static bool reportInvalidCandidate(const Instruction &I,
60 collectInstructionsInBetween(Instruction &StartInst, const Instruction &EndInst,
61 SmallPtrSetImpl<Instruction *> &InBetweenInsts) {
65 auto getNextInsts = [](Instruction &I,
66 SmallPtrSetImpl<Instruction *> &WorkList) {
67 if (Instruction *NextInst = I.getNextNode())
76 SmallPtrSet<Instruction *, 1
[all...]
/freebsd-11-stable/contrib/llvm-project/llvm/lib/Transforms/AggressiveInstCombine/
H A DTruncInstCombine.cpp41 static void getRelevantOperands(Instruction *I, SmallVectorImpl<Value *> &Ops) {
44 case Instruction::Trunc:
45 case Instruction::ZExt:
46 case Instruction::SExt:
50 case Instruction::Add:
51 case Instruction::Sub:
52 case Instruction::Mul:
53 case Instruction::And:
54 case Instruction::Or:
55 case Instruction
[all...]
/freebsd-11-stable/contrib/llvm-project/llvm/include/llvm/IR/
H A DNoFolder.h27 #include "llvm/IR/Instruction.h"
41 Instruction *CreateAdd(Constant *LHS, Constant *RHS,
49 Instruction *CreateNSWAdd(Constant *LHS, Constant *RHS) const {
53 Instruction *CreateNUWAdd(Constant *LHS, Constant *RHS) const {
57 Instruction *CreateFAdd(Constant *LHS, Constant *RHS) const {
61 Instruction *CreateSub(Constant *LHS, Constant *RHS,
69 Instruction *CreateNSWSub(Constant *LHS, Constant *RHS) const {
73 Instruction *CreateNUWSub(Constant *LHS, Constant *RHS) const {
77 Instruction *CreateFSub(Constant *LHS, Constant *RHS) const {
81 Instruction *CreateMu
[all...]
H A DInstruction.h1 //===-- llvm/Instruction.h - Instruction class definition -------*- C++ -*-===//
9 // This file contains the declaration of the Instruction class, which is the
39 template <> struct ilist_alloc_traits<Instruction> {
40 static inline void deleteNode(Instruction *V);
43 class Instruction : public User, class in namespace:llvm
44 public ilist_node_with_parent<Instruction, BasicBlock> {
55 ~Instruction(); // Use deleteValue() to delete a generic Instruction.
58 Instruction(cons
[all...]
H A DOperator.h20 #include "llvm/IR/Instruction.h"
39 /// Return the opcode for this Instruction or ConstantExpr.
41 if (const Instruction *I = dyn_cast<Instruction>(this))
46 /// If V is an Instruction or ConstantExpr, return its opcode.
49 if (const Instruction *I = dyn_cast<Instruction>(V))
53 return Instruction::UserOp1;
56 static bool classof(const Instruction *) { return true; }
59 return isa<Instruction>(
[all...]
/freebsd-11-stable/contrib/llvm-project/llvm/lib/Transforms/ObjCARC/
H A DDependencyAnalysis.h30 class Instruction;
55 BasicBlock *StartBB, Instruction *StartInst,
56 SmallPtrSetImpl<Instruction *> &DependingInstructions,
61 Depends(DependenceKind Flavor, Instruction *Inst, const Value *Arg,
66 bool CanUse(const Instruction *Inst, const Value *Ptr, ProvenanceAnalysis &PA,
71 bool CanAlterRefCount(const Instruction *Inst, const Value *Ptr,
76 bool CanDecrementRefCount(const Instruction *Inst, const Value *Ptr,
79 static inline bool CanDecrementRefCount(const Instruction *Inst,
/freebsd-11-stable/contrib/llvm-project/llvm/lib/Target/SystemZ/
H A DSystemZTargetTransformInfo.cpp81 case Instruction::GetElementPtr:
88 case Instruction::Store:
98 case Instruction::ICmp:
108 case Instruction::Add:
109 case Instruction::Sub:
119 case Instruction::Mul:
126 case Instruction::Or:
127 case Instruction::Xor:
137 case Instruction::And:
155 case Instruction
[all...]

Completed in 159 milliseconds

1234567891011>>