| /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 …]
|
| /freebsd/contrib/llvm-project/llvm/lib/Target/AMDGPU/ |
| H A D | R600MachineCFGStructurizer.cpp | 89 using MBBVector = SmallVector<MachineBasicBlock *, 32>; 90 using MBBInfoMap = std::map<MachineBasicBlock *, BlockInformation *>; 91 using LoopLandInfoMap = std::map<MachineLoop *, MachineBasicBlock *>; 173 int getSCCNum(MachineBasicBlock *MBB) const; 174 MachineBasicBlock *getLoopLandInfo(MachineLoop *LoopRep) const; 175 bool hasBackEdge(MachineBasicBlock *MBB) const; 176 bool isRetiredBlock(MachineBasicBlock *MBB) const; 177 bool isActiveLoophead(MachineBasicBlock *MBB) const; 178 PathToKind singlePathTo(MachineBasicBlock *SrcMBB, MachineBasicBlock *DstMBB, 182 bool needMigrateBlock(MachineBasicBlock *MBB) const; [all …]
|
| H A D | R600InstrInfo.h | 48 MachineInstrBuilder buildIndirectRead(MachineBasicBlock *MBB, 49 MachineBasicBlock::iterator I, 54 MachineInstrBuilder buildIndirectWrite(MachineBasicBlock *MBB, 55 MachineBasicBlock::iterator I, 75 void copyPhysReg(MachineBasicBlock &MBB, MachineBasicBlock::iterator MI, 79 bool isLegalToSplitMBBAt(MachineBasicBlock &MBB, 80 MachineBasicBlock::iterator MBBI) const override; 168 bool analyzeBranch(MachineBasicBlock &MBB, MachineBasicBlock *&TBB, 169 MachineBasicBlock *&FBB, 173 unsigned insertBranch(MachineBasicBlock &MBB, MachineBasicBlock *TBB, [all …]
|
| H A D | SIOptimizeVGPRLiveRange.cpp | 105 MachineBasicBlock *getElseTarget(MachineBasicBlock *MBB) const; 107 void collectElseRegionBlocks(MachineBasicBlock *Flow, 108 MachineBasicBlock *Endif, 109 SmallSetVector<MachineBasicBlock *, 16> &) const; 112 collectCandidateRegisters(MachineBasicBlock *If, MachineBasicBlock *Flow, 113 MachineBasicBlock *Endif, 114 SmallSetVector<MachineBasicBlock *, 16> &ElseBlocks, 118 MachineBasicBlock *LoopHeader, MachineBasicBlock *LoopEnd, 120 SmallSetVector<MachineBasicBlock *, 2> &Blocks, 123 void findNonPHIUsesInBlock(Register Reg, 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 | MachineBasicBlock.h | 105 friend class MachineBasicBlock; // Set by the owning MachineBasicBlock. 107 MachineBasicBlock *Parent; 121 class MachineBasicBlock 122 : public ilist_node_with_parent<MachineBasicBlock, MachineFunction> { 158 SmallVector<MachineBasicBlock *, 4> Predecessors; 159 SmallVector<MachineBasicBlock *, 2> Successors; 240 MachineBasicBlock() = default; 242 explicit MachineBasicBlock(MachineFunction &MF, const BasicBlock *BB); 244 ~MachineBasicBlock(); 331 llvm::all_of(successors(), [](const MachineBasicBlock *Succ) { [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 …]
|
| /freebsd/contrib/llvm-project/llvm/lib/Target/Mips/ |
| H A D | MipsSEISelLowering.h | 22 class MachineBasicBlock; variable 55 MachineBasicBlock * 57 MachineBasicBlock *MBB) const override; 94 MachineBasicBlock *emitBPOSGE32(MachineInstr &MI, 95 MachineBasicBlock *BB) const; 96 MachineBasicBlock *emitMSACBranchPseudo(MachineInstr &MI, 97 MachineBasicBlock *BB, 100 MachineBasicBlock *emitCOPY_FW(MachineInstr &MI, 101 MachineBasicBlock *BB) const; 103 MachineBasicBlock *emitCOPY_FD(MachineInstr &MI, [all …]
|
| H A D | MipsSEInstrInfo.h | 45 void copyPhysReg(MachineBasicBlock &MBB, MachineBasicBlock::iterator MI, 51 MachineBasicBlock &MBB, MachineBasicBlock::iterator MI, Register SrcReg, 57 MachineBasicBlock &MBB, MachineBasicBlock::iterator MI, Register DestReg, 69 void adjustStackPtr(unsigned SP, int64_t Amount, MachineBasicBlock &MBB, 70 MachineBasicBlock::iterator I) const override; 75 unsigned loadImmediate(int64_t Imm, MachineBasicBlock &MBB, 76 MachineBasicBlock::iterator II, const DebugLoc &DL, 89 void expandRetRA(MachineBasicBlock &MBB, MachineBasicBlock::iterator I) const; 91 void expandERet(MachineBasicBlock &MBB, MachineBasicBlock::iterator I) const; 96 void expandPseudoMFHiLo(MachineBasicBlock &MBB, MachineBasicBlock::iterator I, [all …]
|
| H A D | Mips16InstrInfo.h | 51 void copyPhysReg(MachineBasicBlock &MBB, MachineBasicBlock::iterator MI, 57 MachineBasicBlock &MBB, MachineBasicBlock::iterator MBBI, Register SrcReg, 63 MachineBasicBlock &MBB, MachineBasicBlock::iterator MBBI, 73 void makeFrame(unsigned SP, int64_t FrameSize, MachineBasicBlock &MBB, 74 MachineBasicBlock::iterator I) const; 77 void restoreFrame(unsigned SP, int64_t FrameSize, MachineBasicBlock &MBB, 78 MachineBasicBlock::iterator I) const; 81 void adjustStackPtr(unsigned SP, int64_t Amount, MachineBasicBlock &MBB, 82 MachineBasicBlock::iterator I) const override; 87 unsigned loadImmediate(unsigned FrameReg, int64_t Imm, MachineBasicBlock &MBB, [all …]
|
| H A D | MipsInstrInfo.h | 65 bool analyzeBranch(MachineBasicBlock &MBB, MachineBasicBlock *&TBB, 66 MachineBasicBlock *&FBB, 70 unsigned removeBranch(MachineBasicBlock &MBB, 73 unsigned insertBranch(MachineBasicBlock &MBB, MachineBasicBlock *TBB, 74 MachineBasicBlock *FBB, ArrayRef<MachineOperand> Cond, 81 BranchType analyzeBranch(MachineBasicBlock &MBB, MachineBasicBlock *&TBB, 82 MachineBasicBlock *&FBB, 88 unsigned getEquivalentCompactForm(const MachineBasicBlock::iterator I) const; 121 void insertNoop(MachineBasicBlock &MBB, 122 MachineBasicBlock::iterator MI) const override; [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; 124 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::getEHContSymbol() const { in getEHContSymbol() 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 | 254 using BlockToChainMapType = DenseMap<const MachineBasicBlock *, BlockChain *>; 272 SmallVector<MachineBasicBlock *, 4> Blocks; 288 BlockChain(BlockToChainMapType &BlockToChain, MachineBasicBlock *BB) in BlockChain() 295 using iterator = SmallVectorImpl<MachineBasicBlock *>::iterator; 296 using const_iterator = SmallVectorImpl<MachineBasicBlock *>::const_iterator; 306 bool remove(MachineBasicBlock *BB) { in remove() 322 void merge(MachineBasicBlock *BB, BlockChain *Chain) { in merge() 340 for (MachineBasicBlock *ChainBB : *Chain) { in merge() 350 for (MachineBasicBlock *MBB : *this) in dump() 369 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, 387 static MachineBasicBlock *FindIDom(MachineBasicBlock &Block, ListOfBBs BBs, in FindIDom() [all …]
|
| /freebsd/contrib/llvm-project/llvm/lib/Target/Xtensa/ |
| H A D | XtensaInstrInfo.h | 38 void adjustStackPtr(MCRegister SP, int64_t Amount, MachineBasicBlock &MBB, 39 MachineBasicBlock::iterator I) const; 52 void copyPhysReg(MachineBasicBlock &MBB, MachineBasicBlock::iterator MBBI, 58 MachineBasicBlock &MBB, MachineBasicBlock::iterator MBBI, Register SrcReg, 64 MachineBasicBlock &MBB, MachineBasicBlock::iterator MBBI, 75 void loadImmediate(MachineBasicBlock &MBB, MachineBasicBlock::iterator MBBI, 81 MachineBasicBlock *getBranchDestBlock(const MachineInstr &MI) const override; 86 bool analyzeBranch(MachineBasicBlock &MBB, MachineBasicBlock *&TBB, 87 MachineBasicBlock *&FBB, 91 unsigned removeBranch(MachineBasicBlock &MBB, [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; 51 bool canUseAsPrologue(const MachineBasicBlock &MBB) const override; 64 bool spillCalleeSavedRegisters(MachineBasicBlock &MBB, 65 MachineBasicBlock::iterator MI, 70 restoreCalleeSavedRegisters(MachineBasicBlock &MBB, [all …]
|
| H A D | AArch64SpeculationHardening.cpp | 145 bool instrumentControlFlow(MachineBasicBlock &MBB, 147 bool endsWithCondControlFlow(MachineBasicBlock &MBB, MachineBasicBlock *&TBB, 148 MachineBasicBlock *&FBB, 150 void insertTrackingCode(MachineBasicBlock &SplitEdgeBB, 152 void insertSPToRegTaintPropagation(MachineBasicBlock &MBB, 153 MachineBasicBlock::iterator MBBI) const; 154 void insertRegToSPTaintPropagation(MachineBasicBlock &MBB, 155 MachineBasicBlock::iterator MBBI, 157 void insertFullSpeculationBarrier(MachineBasicBlock &MBB, 158 MachineBasicBlock::iterator MBBI, [all …]
|
| /freebsd/contrib/llvm-project/llvm/lib/Target/RISCV/ |
| H A D | RISCVFrameLowering.h | 26 void emitPrologue(MachineFunction &MF, MachineBasicBlock &MBB) const override; 27 void emitEpilogue(MachineFunction &MF, MachineBasicBlock &MBB) const override; 43 MachineBasicBlock::iterator 44 eliminateCallFramePseudoInstr(MachineFunction &MF, MachineBasicBlock &MBB, 45 MachineBasicBlock::iterator MI) const override; 52 bool spillCalleeSavedRegisters(MachineBasicBlock &MBB, 53 MachineBasicBlock::iterator MI, 57 restoreCalleeSavedRegisters(MachineBasicBlock &MBB, 58 MachineBasicBlock::iterator MI, 67 bool canUseAsPrologue(const MachineBasicBlock &MBB) const override; [all …]
|
| 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 expandVMSET_VMCLR(MachineBasicBlock &MBB, 50 MachineBasicBlock::iterator MBBI, unsigned Opcode); 51 bool expandMV_FPR16INX(MachineBasicBlock &MBB, 52 MachineBasicBlock::iterator MBBI); 53 bool expandMV_FPR32INX(MachineBasicBlock &MBB, [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 expandLargeAddressLoad(MachineBasicBlock &MBB, 66 MachineBasicBlock::iterator MBBI, 67 MachineBasicBlock::iterator &NextMBBI, 69 bool expandLargeAddressLoad(MachineBasicBlock &MBB, [all …]
|
| H A D | LoongArchInstrInfo.h | 32 void copyPhysReg(MachineBasicBlock &MBB, MachineBasicBlock::iterator MBBI, 38 MachineBasicBlock &MBB, MachineBasicBlock::iterator MBBI, Register SrcReg, 43 MachineBasicBlock &MBB, 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 &MBB, MachineBasicBlock *&TBB, 60 MachineBasicBlock *&FBB, 67 bool isSafeToMove(const MachineInstr &MI, const MachineBasicBlock *MBB, 71 const MachineBasicBlock *MBB, 74 unsigned removeBranch(MachineBasicBlock &MBB, [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 …]
|
| /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, 241 bool analyzeBranch(MachineBasicBlock &MBB, MachineBasicBlock *&TBB, [all …]
|