Home
last modified time | relevance | path

Searched refs:MachineBasicBlock (Results 1 – 25 of 816) sorted by relevance

12345678910>>...33

/freebsd-src/contrib/llvm-project/llvm/lib/Target/AMDGPU/
H A DR600MachineCFGStructurizer.cpp95 using MBBVector = SmallVector<MachineBasicBlock *, 32>;
96 using MBBInfoMap = std::map<MachineBasicBlock *, BlockInformation *>;
97 using LoopLandInfoMap = std::map<MachineLoop *, MachineBasicBlock *>;
182 int getSCCNum(MachineBasicBlock *MBB) const;
183 MachineBasicBlock *getLoopLandInfo(MachineLoop *LoopRep) const;
184 bool hasBackEdge(MachineBasicBlock *MBB) const;
185 bool isRetiredBlock(MachineBasicBlock *MBB) const;
186 bool isActiveLoophead(MachineBasicBlock *MBB) const;
187 PathToKind singlePathTo(MachineBasicBlock *SrcMBB, MachineBasicBlock *DstMB
[all...]
H A DR600InstrInfo.h47 MachineInstrBuilder buildIndirectRead(MachineBasicBlock *MBB,
48 MachineBasicBlock::iterator I,
53 MachineInstrBuilder buildIndirectWrite(MachineBasicBlock *MBB,
54 MachineBasicBlock::iterator I,
74 void copyPhysReg(MachineBasicBlock &MBB, MachineBasicBlock::iterator MI,
77 bool isLegalToSplitMBBAt(MachineBasicBlock &MBB,
78 MachineBasicBlock::iterator MBBI) const override;
166 bool analyzeBranch(MachineBasicBlock &MBB, MachineBasicBlock *&TBB,
167 MachineBasicBlock *&FBB,
171 unsigned insertBranch(MachineBasicBlock &MBB, MachineBasicBlock *TBB,
[all …]
/freebsd-src/contrib/llvm-project/llvm/lib/Target/LoongArch/
H A DLoongArchExpandPseudoInsts.cpp57 bool expandMBB(MachineBasicBlock &MBB);
58 bool expandMI(MachineBasicBlock &MBB, MachineBasicBlock::iterator MBBI,
59 MachineBasicBlock::iterator &NextMBBI);
60 bool expandPcalau12iInstPair(MachineBasicBlock &MBB,
61 MachineBasicBlock::iterator MBBI,
62 MachineBasicBlock::iterator &NextMBBI,
65 bool expandLoadAddressPcrel(MachineBasicBlock &MBB,
66 MachineBasicBlock::iterator MBBI,
67 MachineBasicBlock
[all...]
H A DLoongArchInstrInfo.h32 void copyPhysReg(MachineBasicBlock &MBB, MachineBasicBlock::iterator MBBI,
36 void storeRegToStackSlot(MachineBasicBlock &MBB,
37 MachineBasicBlock::iterator MBBI, Register SrcReg,
42 void loadRegFromStackSlot(MachineBasicBlock &MBB,
43 MachineBasicBlock::iterator MBBI, Register DstReg,
49 void movImm(MachineBasicBlock &MBB, MachineBasicBlock::iterator MBBI,
57 MachineBasicBlock *getBranchDestBlock(const MachineInstr &MI) const override;
59 bool analyzeBranch(MachineBasicBlock
[all...]
/freebsd-src/contrib/llvm-project/llvm/lib/Target/X86/
H A DX86FrameLowering.h57 void emitStackProbe(MachineFunction &MF, MachineBasicBlock &MBB,
58 MachineBasicBlock::iterator MBBI, const DebugLoc &DL,
67 MachineBasicBlock &PrologMBB) const override;
70 MachineBasicBlock &MBB, MachineBasicBlock::iterator MBBI) const override;
72 void emitCalleeSavedFrameMoves(MachineBasicBlock &MBB,
73 MachineBasicBlock::iterator MBBI,
78 void emitPrologue(MachineFunction &MF, MachineBasicBlock &MBB) const override;
79 void emitEpilogue(MachineFunction &MF, MachineBasicBlock &MBB) const override;
82 MachineBasicBlock &PrologueMBB) const override;
85 MachineBasicBlock &PrologueMBB) const override;
[all …]
/freebsd-src/contrib/llvm-project/llvm/lib/Target/Mips/
H A DMipsSEISelLowering.h22 class MachineBasicBlock; variable
52 MachineBasicBlock *
54 MachineBasicBlock *MBB) const override;
91 MachineBasicBlock *emitBPOSGE32(MachineInstr &MI,
92 MachineBasicBlock *BB) const;
93 MachineBasicBlock *emitMSACBranchPseudo(MachineInstr &MI,
94 MachineBasicBlock *BB,
97 MachineBasicBlock *emitCOPY_FW(MachineInstr &MI,
98 MachineBasicBlock *BB) const;
100 MachineBasicBlock *emitCOPY_F
[all...]
H A DMipsSEInstrInfo.h45 void copyPhysReg(MachineBasicBlock &MBB, MachineBasicBlock::iterator MI,
49 void storeRegToStack(MachineBasicBlock &MBB,
50 MachineBasicBlock::iterator MI,
56 void loadRegFromStack(MachineBasicBlock &MBB,
57 MachineBasicBlock::iterator MI,
70 void adjustStackPtr(unsigned SP, int64_t Amount, MachineBasicBlock &MBB,
71 MachineBasicBlock::iterator I) const override;
76 unsigned loadImmediate(int64_t Imm, MachineBasicBlock &MBB,
77 MachineBasicBlock
[all...]
H A DMipsInstrInfo.h63 bool analyzeBranch(MachineBasicBlock &MBB, MachineBasicBlock *&TBB,
64 MachineBasicBlock *&FBB,
68 unsigned removeBranch(MachineBasicBlock &MBB,
71 unsigned insertBranch(MachineBasicBlock &MBB, MachineBasicBlock *TBB,
72 MachineBasicBlock *FBB, ArrayRef<MachineOperand> Cond,
79 BranchType analyzeBranch(MachineBasicBlock &MBB, MachineBasicBlock *&TBB,
80 MachineBasicBlock *&FBB,
86 unsigned getEquivalentCompactForm(const MachineBasicBlock::iterator I) const;
113 void insertNoop(MachineBasicBlock &MBB,
114 MachineBasicBlock::iterator MI) const override;
[all …]
H A DMips16InstrInfo.h18 #include "llvm/CodeGen/MachineBasicBlock.h"
51 void copyPhysReg(MachineBasicBlock &MBB, MachineBasicBlock::iterator MI,
55 void storeRegToStack(MachineBasicBlock &MBB,
56 MachineBasicBlock::iterator MBBI,
62 void loadRegFromStack(MachineBasicBlock &MBB,
63 MachineBasicBlock::iterator MBBI,
74 void makeFrame(unsigned SP, int64_t FrameSize, MachineBasicBlock &MBB,
75 MachineBasicBlock::iterator I) const;
78 void restoreFrame(unsigned SP, int64_t FrameSize, MachineBasicBlock
[all...]
/freebsd-src/contrib/llvm-project/llvm/include/llvm/CodeGen/
H A DTailDuplicator.h29 class MachineBasicBlock; variable
56 using AvailableValsTy = std::vector<std::pair<MachineBasicBlock *, Register>>;
77 static bool isSimpleBB(MachineBasicBlock *TailBB);
78 bool shouldTailDuplicate(bool IsSimple, MachineBasicBlock &TailBB);
81 bool canTailDuplicate(MachineBasicBlock *TailBB, MachineBasicBlock *PredBB);
91 bool IsSimple, MachineBasicBlock *MBB,
92 MachineBasicBlock *ForcedLayoutPred,
93 SmallVectorImpl<MachineBasicBlock*> *DuplicatedPreds = nullptr,
94 function_ref<void(MachineBasicBlock *)> *RemovalCallbac
[all...]
H A DMachineDominators.h19 #include "llvm/CodeGen/MachineBasicBlock.h"
36 inline void DominatorTreeBase<MachineBasicBlock, false>::addRoot( in addRoot()
37 MachineBasicBlock *MBB) { in addRoot()
41 extern template class DomTreeNodeBase<MachineBasicBlock>;
42 extern template class DominatorTreeBase<MachineBasicBlock, false>; // DomTree
44 using MachineDomTreeNode = DomTreeNodeBase<MachineBasicBlock>;
47 using MBBDomTree = DomTreeBase<MachineBasicBlock>;
48 using MBBUpdates = ArrayRef<llvm::cfg::Update<MachineBasicBlock *>>;
49 using MBBDomTreeGraphDiff = GraphDiff<MachineBasicBlock *, false>;
56 MachineBasicBlock *Fro
[all...]
H A DMachineBasicBlock.h1 //===- llvm/CodeGen/MachineBasicBlock.h -------------------------*- C++ -*-===//
108 friend class MachineBasicBlock; // Set by the owning MachineBasicBlock.
110 MachineBasicBlock *Parent;
123 class MachineBasicBlock
124 : public ilist_node_with_parent<MachineBasicBlock, MachineFunction> {
160 std::vector<MachineBasicBlock *> Predecessors;
161 std::vector<MachineBasicBlock *> Successors;
188 /// Indicate that this MachineBasicBlock is referenced somewhere other than
192 /// If this MachineBasicBlock correspond
[all...]
H A DModuloSchedule.h72 class MachineBasicBlock; variable
167 using MBBVectorTy = SmallVectorImpl<MachineBasicBlock *>;
177 MachineBasicBlock *BB = nullptr;
178 MachineBasicBlock *Preheader = nullptr;
179 MachineBasicBlock *NewKernel = nullptr;
192 void generateProlog(unsigned LastStage, MachineBasicBlock *KernelBB,
194 void generateEpilog(unsigned LastStage, MachineBasicBlock *KernelBB,
195 MachineBasicBlock *OrigBB, ValueMapTy *VRMap,
198 void generateExistingPhis(MachineBasicBlock *NewBB, MachineBasicBlock *BB
[all...]
H A DMachineInstrBundle.h27 void finalizeBundle(MachineBasicBlock &MBB,
28 MachineBasicBlock::instr_iterator FirstMI,
29 MachineBasicBlock::instr_iterator LastMI);
36 MachineBasicBlock::instr_iterator finalizeBundle(MachineBasicBlock &MBB,
37 MachineBasicBlock::instr_iterator FirstMI);
44 inline MachineBasicBlock::instr_iterator getBundleStart( in getBundleStart()
45 MachineBasicBlock::instr_iterator I) { in getBundleStart()
52 inline MachineBasicBlock::const_instr_iterator getBundleStart( in getBundleStart()
53 MachineBasicBlock::const_instr_iterator I) { in getBundleStart()
60 inline MachineBasicBlock::instr_iterator getBundleEnd( in getBundleEnd()
[all …]
/freebsd-src/contrib/llvm-project/llvm/lib/Target/Hexagon/
H A DHexagonFrameLowering.h16 #include "llvm/CodeGen/MachineBasicBlock.h"
45 void emitPrologue(MachineFunction &MF, MachineBasicBlock &MBB) const
47 void emitEpilogue(MachineFunction &MF, MachineBasicBlock &MBB) const
52 bool spillCalleeSavedRegisters(MachineBasicBlock &MBB, in spillCalleeSavedRegisters()
53 MachineBasicBlock::iterator MI, in spillCalleeSavedRegisters()
60 restoreCalleeSavedRegisters(MachineBasicBlock &MBB, in restoreCalleeSavedRegisters()
61 MachineBasicBlock::iterator MI, in restoreCalleeSavedRegisters()
78 MachineBasicBlock::iterator
79 eliminateCallFramePseudoInstr(MachineFunction &MF, MachineBasicBlock &MBB,
80 MachineBasicBlock
[all...]
/freebsd-src/contrib/llvm-project/llvm/lib/CodeGen/
H A DBranchFolding.h15 #include "llvm/CodeGen/MachineBasicBlock.h"
52 MachineBasicBlock *Block;
56 MergePotentialsElt(unsigned h, MachineBasicBlock *b, DebugLoc bdl) in MergePotentialsElt()
60 MachineBasicBlock *getBlock() const { return Block; }
62 void setBlock(MachineBasicBlock *MBB) { in setBlock()
74 SmallPtrSet<const MachineBasicBlock*, 2> TriedMerging;
75 DenseMap<const MachineBasicBlock *, int> EHScopeMembership;
79 MachineBasicBlock::iterator TailStartPos; in SameTailElt()
82 SameTailElt(MPIterator mp, MachineBasicBlock::iterator tsp) in getMPIter()
93 MachineBasicBlock in getTailStartPos()
[all...]
H A DMachineBasicBlock.cpp1 //===-- llvm/CodeGen/MachineBasicBlock.cpp ----------------------*- C++ -*-===//
13 #include "llvm/CodeGen/MachineBasicBlock.h"
51 MachineBasicBlock::MachineBasicBlock(MachineFunction &MF, const BasicBlock *B) in MachineBasicBlock() function in MachineBasicBlock
58 MachineBasicBlock::~MachineBasicBlock() = default;
61 MCSymbol *MachineBasicBlock::getSymbol() const { in getSymbol()
93 MCSymbol *MachineBasicBlock::getEHCatchretSymbol() const { in getEHCatchretSymbol()
104 MCSymbol *MachineBasicBlock::getEndSymbol() const { in getEndSymbol()
115 raw_ostream &llvm::operator<<(raw_ostream &OS, const MachineBasicBlock
[all...]
H A DMachineBlockPlacement.cpp38 #include "llvm/CodeGen/MachineBasicBlock.h"
237 using BlockToChainMapType = DenseMap<const MachineBasicBlock *, BlockChain *>;
255 SmallVector<MachineBasicBlock *, 4> Blocks;
271 BlockChain(BlockToChainMapType &BlockToChain, MachineBasicBlock *BB) in BlockChain()
278 using iterator = SmallVectorImpl<MachineBasicBlock *>::iterator;
279 using const_iterator = SmallVectorImpl<MachineBasicBlock *>::const_iterator;
289 bool remove(MachineBasicBlock* BB) { in remove()
305 void merge(MachineBasicBlock *BB, BlockChain *Chain) { in merge()
323 for (MachineBasicBlock *ChainBB : *Chain) { in merge()
333 for (MachineBasicBlock *MB in dump()
705 collectViableSuccessors(const MachineBasicBlock * BB,const BlockChain & Chain,const BlockFilterSet * BlockFilter,SmallVector<MachineBasicBlock *,4> & Successors) collectViableSuccessors() argument
[all...]
H A DShrinkWrap.cpp57 #include "llvm/CodeGen/MachineBasicBlock.h"
123 MachineBasicBlock *Save = nullptr;
128 MachineBasicBlock *Restore = nullptr;
154 const MachineBasicBlock *Entry = nullptr;
197 void updateSaveRestorePoints(MachineBasicBlock &MBB, RegScavenger *RS);
202 const ReversePostOrderTraversal<MachineBasicBlock *> &RPOT,
219 const MachineBasicBlock *CurRestore,
220 const DenseSet<const MachineBasicBlock *> &ReachableByDirty,
221 SmallVectorImpl<MachineBasicBlock *> &DirtyPreds,
222 SmallVectorImpl<MachineBasicBlock *>
[all...]
H A DBranchRelaxation.cpp68 unsigned postOffset(const MachineBasicBlock &MBB) const { in postOffset()
85 MachineBasicBlock *TrampolineInsertionPoint = nullptr;
86 SmallDenseSet<std::pair<MachineBasicBlock *, MachineBasicBlock *>>
99 MachineBasicBlock *createNewBlockAfter(MachineBasicBlock &OrigMBB);
100 MachineBasicBlock *createNewBlockAfter(MachineBasicBlock &OrigMBB,
103 MachineBasicBlock *splitBlockBeforeInstr(MachineInstr &MI,
104 MachineBasicBlock *DestBB);
105 void adjustBlockOffsets(MachineBasicBlock &Start);
106 bool isBlockInRange(const MachineInstr &MI, const MachineBasicBlock &BB) const;
110 uint64_t computeBlockSize(const MachineBasicBlock &MBB) const;
[all …]
/freebsd-src/contrib/llvm-project/llvm/lib/Target/AArch64/
H A DAArch64FrameLowering.h28 void resetCFIToInitialState(MachineBasicBlock &MBB) const override;
30 MachineBasicBlock::iterator
31 eliminateCallFramePseudoInstr(MachineFunction &MF, MachineBasicBlock &MBB,
32 MachineBasicBlock::iterator I) const override;
36 void emitPrologue(MachineFunction &MF, MachineBasicBlock &MBB) const override;
37 void emitEpilogue(MachineFunction &MF, MachineBasicBlock &MBB) const override;
41 bool canUseAsPrologue(const MachineBasicBlock &MBB) const override;
54 bool spillCalleeSavedRegisters(MachineBasicBlock &MBB,
55 MachineBasicBlock::iterator MI,
60 restoreCalleeSavedRegisters(MachineBasicBlock
[all...]
/freebsd-src/contrib/llvm-project/llvm/lib/Target/SystemZ/
H A DSystemZInstrInfo.h19 #include "llvm/CodeGen/MachineBasicBlock.h"
142 MachineBasicBlock *getMBBTarget() { in getMBBTarget()
175 MachineBasicBlock *emitBlockAfter(MachineBasicBlock *MBB);
178 MachineBasicBlock *splitBlockAfter(MachineBasicBlock::iterator MI,
179 MachineBasicBlock *MBB);
181 MachineBasicBlock *splitBlockBefore(MachineBasicBlock::iterator MI,
182 MachineBasicBlock *MB
[all...]
/freebsd-src/contrib/llvm-project/llvm/lib/Target/M68k/
H A DM68kFrameLowering.h46 MachineInstrBuilder BuildStackAdjustment(MachineBasicBlock &MBB,
47 MachineBasicBlock::iterator MBBI,
52 void BuildStackAlignAND(MachineBasicBlock &MBB,
53 MachineBasicBlock::iterator MBBI, const DebugLoc &DL,
57 void BuildCFI(MachineBasicBlock &MBB, MachineBasicBlock::iterator MBBI,
60 void emitPrologueCalleeSavedFrameMoves(MachineBasicBlock &MBB,
61 MachineBasicBlock::iterator MBBI,
77 MachineBasicBlock::iterator
78 eliminateCallFramePseudoInstr(MachineFunction &MF, MachineBasicBlock &MBB,
79 MachineBasicBlock::iterator MI) const override;
[all …]
/freebsd-src/contrib/llvm-project/llvm/lib/Target/RISCV/
H A DRISCVExpandPseudoInsts.cpp44 bool expandMBB(MachineBasicBlock &MBB);
45 bool expandMI(MachineBasicBlock &MBB, MachineBasicBlock::iterator MBBI,
46 MachineBasicBlock::iterator &NextMBBI);
47 bool expandCCOp(MachineBasicBlock &MBB, MachineBasicBlock::iterator MBBI,
48 MachineBasicBlock::iterator &NextMBBI);
49 bool expandVSetVL(MachineBasicBlock &MBB, MachineBasicBlock::iterator MBBI);
50 bool expandVMSET_VMCLR(MachineBasicBlock
[all...]
/freebsd-src/contrib/llvm-project/llvm/lib/Target/XCore/
H A DXCoreInstrInfo.h52 bool analyzeBranch(MachineBasicBlock &MBB, MachineBasicBlock *&TBB,
53 MachineBasicBlock *&FBB,
57 unsigned insertBranch(MachineBasicBlock &MBB, MachineBasicBlock *TBB,
58 MachineBasicBlock *FBB, ArrayRef<MachineOperand> Cond,
62 unsigned removeBranch(MachineBasicBlock &MBB,
65 void copyPhysReg(MachineBasicBlock &MBB, MachineBasicBlock::iterator I,
69 void storeRegToStackSlot(MachineBasicBlock
[all...]

12345678910>>...33