/freebsd/contrib/llvm-project/llvm/lib/Target/AMDGPU/ |
H A D | R600MachineCFGStructurizer.cpp | 95 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 *DstMBB, 191 bool needMigrateBlock(MachineBasicBlock *MBB) const; [all …]
|
H A D | R600InstrInfo.h | 47 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 …]
|
H A D | SIOptimizeVGPRLiveRange.cpp | 102 MachineBasicBlock *getElseTarget(MachineBasicBlock *MBB) const; 104 void collectElseRegionBlocks(MachineBasicBlock *Flow, 105 MachineBasicBlock *Endif, 106 SmallSetVector<MachineBasicBlock *, 16> &) const; 109 collectCandidateRegisters(MachineBasicBlock *If, MachineBasicBlock *Flow, 110 MachineBasicBlock *Endif, 111 SmallSetVector<MachineBasicBlock *, 16> &ElseBlocks, 115 MachineBasicBlock *LoopHeader, MachineBasicBlock *LoopEnd, 117 SmallSetVector<MachineBasicBlock *, 2> &Blocks, 120 void findNonPHIUsesInBlock(Register Reg, MachineBasicBlock *MBB, [all …]
|
/freebsd/contrib/llvm-project/llvm/lib/Target/X86/ |
H A D | X86FrameLowering.h | 57 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 …]
|
H A D | X86WinFixupBufferSecurityCheck.cpp | 44 std::pair<MachineBasicBlock *, MachineInstr *> 47 void getGuardCheckSequence(MachineBasicBlock *CurMBB, MachineInstr *CheckCall, 50 void SplitBasicBlock(MachineBasicBlock *CurMBB, MachineBasicBlock *NewRetMBB, 51 MachineBasicBlock::iterator SplitIt); 53 void FinishBlock(MachineBasicBlock *MBB); 55 void FinishFunction(MachineBasicBlock *FailMBB, MachineBasicBlock *NewRetMBB); 58 CreateFailCheckSequence(MachineBasicBlock *CurMBB, MachineBasicBlock *FailMBB, 73 MachineBasicBlock *CurMBB, MachineBasicBlock *NewRetMBB, in SplitBasicBlock() 74 MachineBasicBlock::iterator SplitIt) { in SplitBasicBlock() 78 std::pair<MachineBasicBlock *, MachineInstr *> [all …]
|
/freebsd/contrib/llvm-project/llvm/lib/Target/LoongArch/ |
H A D | LoongArchExpandPseudoInsts.cpp | 57 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::iterator &NextMBBI); 68 bool expandLoadAddressGot(MachineBasicBlock &MBB, [all …]
|
/freebsd/contrib/llvm-project/llvm/include/llvm/CodeGen/ |
H A D | TailDuplicator.h | 29 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 *)> *RemovalCallback = nullptr, 95 SmallVectorImpl<MachineBasicBlock *> *CandidatePtr = nullptr); [all …]
|
H A D | MachineDominators.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 *From, 57 MachineBasicBlock *To); [all …]
|
H A D | ModuloSchedule.h | 72 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 *BB1, 199 MachineBasicBlock *BB2, MachineBasicBlock *KernelBB, [all …]
|
H A D | MachineBasicBlock.h | 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; 242 MachineBasicBlock() = default; 244 explicit MachineBasicBlock(MachineFunction &MF, const BasicBlock *BB); 246 ~MachineBasicBlock(); 370 static Instructions MachineBasicBlock::*getSublistAccess(MachineInstr *) { [all …]
|
H A D | MachineInstrBundle.h | 27 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/contrib/llvm-project/llvm/lib/Target/Mips/ |
H A D | MipsSEISelLowering.h | 22 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_FD(MachineInstr &MI, [all …]
|
H A D | MipsSEInstrInfo.h | 45 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::iterator II, const DebugLoc &DL, 90 void expandRetRA(MachineBasicBlock &MBB, MachineBasicBlock::iterator I) const; [all …]
|
H A D | MipsInstrInfo.h | 63 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 D | Mips16InstrInfo.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 &MBB, 79 MachineBasicBlock::iterator I) const; 82 void adjustStackPtr(unsigned SP, int64_t Amount, MachineBasicBlock &MBB, [all …]
|
/freebsd/contrib/llvm-project/llvm/lib/Target/Hexagon/ |
H A D | HexagonFrameLowering.h | 45 void emitPrologue(MachineFunction &MF, MachineBasicBlock &MBB) const 47 void emitEpilogue(MachineFunction &MF, MachineBasicBlock &MBB) const in emitEpilogue() 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::iterator I) const override; 122 void insertPrologueInBlock(MachineBasicBlock &MBB, bool PrologueStubs) const; [all …]
|
/freebsd/contrib/llvm-project/llvm/lib/CodeGen/ |
H A D | BranchFolding.h | 52 MachineBasicBlock *Block; 56 MergePotentialsElt(unsigned h, MachineBasicBlock *b, DebugLoc bdl) in MergePotentialsElt() 60 MachineBasicBlock *getBlock() const { return Block; } in getBlock() 62 void setBlock(MachineBasicBlock *MBB) { in setBlock() 74 SmallPtrSet<const MachineBasicBlock*, 2> TriedMerging; 75 DenseMap<const MachineBasicBlock *, int> EHScopeMembership; 79 MachineBasicBlock::iterator TailStartPos; 82 SameTailElt(MPIterator mp, MachineBasicBlock::iterator tsp) in SameTailElt() 93 MachineBasicBlock::iterator getTailStartPos() const { in getTailStartPos() 101 MachineBasicBlock *getBlock() const { in getBlock() [all …]
|
H A D | MachineBasicBlock.cpp | 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 &MBB) { in operator <<() 120 Printable llvm::printMBBReference(const MachineBasicBlock &MBB) { in printMBBReference() 131 void ilist_callback_traits<MachineBasicBlock>::addNodeToList( in addNodeToList() 132 MachineBasicBlock *N) { in addNodeToList() 142 void ilist_callback_traits<MachineBasicBlock>::removeNodeFromList( in removeNodeFromList() [all …]
|
H A D | MachineBlockPlacement.cpp | 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 *MBB : *this) in dump() 352 using BlockFilterSet = SmallSetVector<const MachineBasicBlock *, 16>; [all …]
|
H A D | ShrinkWrap.cpp | 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 *> &CleanPreds, 377 static MachineBasicBlock *FindIDom(MachineBasicBlock &Block, ListOfBBs BBs, in FindIDom() [all …]
|
H A D | BranchRelaxation.cpp | 12 #include "llvm/CodeGen/MachineBasicBlock.h" 68 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 *splitBlockBeforeInst [all...] |
/freebsd/contrib/llvm-project/llvm/lib/Target/AArch64/ |
H A D | AArch64FrameLowering.h | 28 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 &MBB, [all …]
|
/freebsd/contrib/llvm-project/llvm/lib/Target/SystemZ/ |
H A D | SystemZInstrInfo.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 *MBB); 189 void splitMove(MachineBasicBlock::iterator MI, unsigned NewOpcode) const; 190 void splitAdjDynAlloc(MachineBasicBlock::iterator MI) const; 204 emitGRX32Move(MachineBasicBlock &MBB, MachineBasicBlock::iterator MBBI, 237 bool analyzeBranch(MachineBasicBlock &MBB, MachineBasicBlock *&TBB, [all …]
|
/freebsd/contrib/llvm-project/llvm/lib/Target/RISCV/ |
H A D | RISCVExpandPseudoInsts.cpp | 44 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 &MBB, 51 MachineBasicBlock::iterator MBBI, unsigned Opcode); 52 bool expandRV32ZdinxStore(MachineBasicBlock &MBB, 53 MachineBasicBlock::iterator MBBI); [all …]
|
/freebsd/contrib/llvm-project/llvm/lib/Target/M68k/ |
H A D | M68kFrameLowering.h | 46 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 …]
|