Lines Matching refs:MachineBasicBlock
1 //===-- llvm/CodeGen/MachineBasicBlock.cpp ----------------------*- C++ -*-===//
13 #include "llvm/CodeGen/MachineBasicBlock.h"
51 MachineBasicBlock::MachineBasicBlock(MachineFunction &MF, const BasicBlock *B)
58 MachineBasicBlock::~MachineBasicBlock() = default;
61 MCSymbol *MachineBasicBlock::getSymbol() const {
93 MCSymbol *MachineBasicBlock::getEHCatchretSymbol() const {
104 MCSymbol *MachineBasicBlock::getEndSymbol() const {
115 raw_ostream &llvm::operator<<(raw_ostream &OS, const MachineBasicBlock &MBB) {
120 Printable llvm::printMBBReference(const MachineBasicBlock &MBB) {
131 void ilist_callback_traits<MachineBasicBlock>::addNodeToList(
132 MachineBasicBlock *N) {
142 void ilist_callback_traits<MachineBasicBlock>::removeNodeFromList(
143 MachineBasicBlock *N) {
200 MachineBasicBlock::iterator MachineBasicBlock::getFirstNonPHI() {
209 MachineBasicBlock::iterator
210 MachineBasicBlock::SkipPHIsAndLabels(MachineBasicBlock::iterator I) {
224 MachineBasicBlock::iterator
225 MachineBasicBlock::SkipPHIsLabelsAndDebug(MachineBasicBlock::iterator I,
242 MachineBasicBlock::iterator MachineBasicBlock::getFirstTerminator() {
251 MachineBasicBlock::instr_iterator MachineBasicBlock::getFirstInstrTerminator() {
260 MachineBasicBlock::iterator MachineBasicBlock::getFirstTerminatorForward() {
264 MachineBasicBlock::iterator
265 MachineBasicBlock::getFirstNonDebugInstr(bool SkipPseudoOp) {
270 MachineBasicBlock::iterator
271 MachineBasicBlock::getLastNonDebugInstr(bool SkipPseudoOp) {
287 bool MachineBasicBlock::hasEHPadSuccessor() const {
288 for (const MachineBasicBlock *Succ : successors())
294 bool MachineBasicBlock::isEntryBlock() const {
299 LLVM_DUMP_METHOD void MachineBasicBlock::dump() const {
304 bool MachineBasicBlock::mayHaveInlineAsmBr() const {
305 for (const MachineBasicBlock *Succ : successors()) {
312 bool MachineBasicBlock::isLegalToHoistInto() const {
318 bool MachineBasicBlock::hasName() const {
324 StringRef MachineBasicBlock::getName() const {
332 std::string MachineBasicBlock::getFullName() const {
343 void MachineBasicBlock::print(raw_ostream &OS, const SlotIndexes *Indexes,
347 OS << "Can't print out MachineBasicBlock because parent MachineFunction"
358 void MachineBasicBlock::print(raw_ostream &OS, ModuleSlotTracker &MST,
363 OS << "Can't print out MachineBasicBlock because parent MachineFunction"
488 void MachineBasicBlock::printName(raw_ostream &os, unsigned printNameFlags,
592 void MachineBasicBlock::printAsOperand(raw_ostream &OS,
598 void MachineBasicBlock::removeLiveIn(MCPhysReg Reg, LaneBitmask LaneMask) {
609 MachineBasicBlock::livein_iterator
610 MachineBasicBlock::removeLiveIn(MachineBasicBlock::livein_iterator I) {
616 bool MachineBasicBlock::isLiveIn(MCPhysReg Reg, LaneBitmask LaneMask) const {
622 void MachineBasicBlock::sortUniqueLiveIns() {
643 MachineBasicBlock::addLiveIn(MCRegister PhysReg, const TargetRegisterClass *RC) {
674 void MachineBasicBlock::moveBefore(MachineBasicBlock *NewAfter) {
678 void MachineBasicBlock::moveAfter(MachineBasicBlock *NewBefore) {
682 static int findJumpTableIndex(const MachineBasicBlock &MBB) {
683 MachineBasicBlock::const_iterator TerminatorI = MBB.getFirstTerminator();
691 void MachineBasicBlock::updateTerminator(
692 MachineBasicBlock *PreviousLayoutSuccessor) {
701 MachineBasicBlock *TBB = nullptr, *FBB = nullptr;
782 void MachineBasicBlock::validateSuccProbs() const {
796 void MachineBasicBlock::addSuccessor(MachineBasicBlock *Succ,
806 void MachineBasicBlock::addSuccessorWithoutProb(MachineBasicBlock *Succ) {
815 void MachineBasicBlock::splitSuccessor(MachineBasicBlock *Old,
816 MachineBasicBlock *New,
834 void MachineBasicBlock::removeSuccessor(MachineBasicBlock *Succ,
840 MachineBasicBlock::succ_iterator
841 MachineBasicBlock::removeSuccessor(succ_iterator I, bool NormalizeSuccProbs) {
857 void MachineBasicBlock::replaceSuccessor(MachineBasicBlock *Old,
858 MachineBasicBlock *New) {
897 void MachineBasicBlock::copySuccessor(const MachineBasicBlock *Orig,
905 void MachineBasicBlock::addPredecessor(MachineBasicBlock *Pred) {
909 void MachineBasicBlock::removePredecessor(MachineBasicBlock *Pred) {
915 void MachineBasicBlock::transferSuccessors(MachineBasicBlock *FromMBB) {
920 MachineBasicBlock *Succ = *FromMBB->succ_begin();
935 MachineBasicBlock::transferSuccessorsAndUpdatePHIs(MachineBasicBlock *FromMBB) {
940 MachineBasicBlock *Succ = *FromMBB->succ_begin();
954 bool MachineBasicBlock::isPredecessor(const MachineBasicBlock *MBB) const {
958 bool MachineBasicBlock::isSuccessor(const MachineBasicBlock *MBB) const {
962 bool MachineBasicBlock::isLayoutSuccessor(const MachineBasicBlock *MBB) const {
967 const MachineBasicBlock *MachineBasicBlock::getSingleSuccessor() const {
971 const MachineBasicBlock *MachineBasicBlock::getSinglePredecessor() const {
975 MachineBasicBlock *MachineBasicBlock::getFallThrough(bool JumpToFallThrough) {
987 MachineBasicBlock *TBB = nullptr, *FBB = nullptr;
1019 bool MachineBasicBlock::canFallThrough() {
1023 MachineBasicBlock *MachineBasicBlock::splitAt(MachineInstr &MI,
1026 MachineBasicBlock::iterator SplitPoint(&MI);
1040 MachineBasicBlock::iterator Prev(&MI);
1047 MachineBasicBlock *SplitBB = MF->CreateMachineBasicBlock(getBasicBlock());
1067 const MachineBasicBlock &IgnoreMBB,
1074 const MachineBasicBlock *MBB = nullptr;
1075 for (MachineBasicBlock *B : MJTE.MBBs) {
1085 for (MachineBasicBlock *Pred : MBB->predecessors()) {
1088 MachineBasicBlock *DummyT = nullptr;
1089 MachineBasicBlock *DummyF = nullptr;
1147 MachineBasicBlock *MachineBasicBlock::SplitCriticalEdge(
1148 MachineBasicBlock *Succ, Pass *P, MachineFunctionAnalysisManager *MFAM,
1155 MachineBasicBlock *PrevFallthrough = getNextNode();
1157 MachineBasicBlock *NMBB = MF->CreateMachineBasicBlock();
1294 for (MachineBasicBlock::instr_iterator
1382 bool MachineBasicBlock::canSplitCriticalEdge(
1383 const MachineBasicBlock *Succ) const {
1408 MachineBasicBlock *TBB = nullptr, *FBB = nullptr;
1411 if (TII->analyzeBranch(*const_cast<MachineBasicBlock *>(this), TBB, FBB, Cond,
1440 MachineBasicBlock::instr_iterator
1441 MachineBasicBlock::erase(MachineBasicBlock::instr_iterator I) {
1446 MachineInstr *MachineBasicBlock::remove_instr(MachineInstr *MI) {
1453 MachineBasicBlock::instr_iterator
1454 MachineBasicBlock::insert(instr_iterator I, MachineInstr *MI) {
1467 MachineBasicBlock *MachineBasicBlock::removeFromParent() {
1474 void MachineBasicBlock::eraseFromParent() {
1481 void MachineBasicBlock::ReplaceUsesOfBlockWith(MachineBasicBlock *Old,
1482 MachineBasicBlock *New) {
1485 MachineBasicBlock::instr_iterator I = instr_end();
1501 void MachineBasicBlock::replacePhiUsesWith(MachineBasicBlock *Old,
1502 MachineBasicBlock *New) {
1514 MachineBasicBlock::findDebugLoc(instr_iterator MBBI) {
1522 DebugLoc MachineBasicBlock::rfindDebugLoc(reverse_instr_iterator MBBI) {
1534 DebugLoc MachineBasicBlock::findPrevDebugLoc(instr_iterator MBBI) {
1544 DebugLoc MachineBasicBlock::rfindPrevDebugLoc(reverse_instr_iterator MBBI) {
1557 MachineBasicBlock::findBranchDebugLoc() {
1574 MachineBasicBlock::getSuccProbability(const_succ_iterator Succ) const {
1596 void MachineBasicBlock::setSuccProbability(succ_iterator I,
1605 MachineBasicBlock::const_probability_iterator
1606 MachineBasicBlock::getProbabilityIterator(
1607 MachineBasicBlock::const_succ_iterator I) const {
1615 MachineBasicBlock::probability_iterator
1616 MachineBasicBlock::getProbabilityIterator(MachineBasicBlock::succ_iterator I) {
1629 MachineBasicBlock::LivenessQueryResult
1630 MachineBasicBlock::computeRegisterLiveness(const TargetRegisterInfo *TRI,
1656 for (MachineBasicBlock *S : successors()) {
1657 for (const MachineBasicBlock::RegisterMaskPair &LI : S->liveins()) {
1716 for (const MachineBasicBlock::RegisterMaskPair &LI : liveins())
1728 MachineBasicBlock::getBeginClobberMask(const TargetRegisterInfo *TRI) const {
1734 MachineBasicBlock::getEndClobberMask(const TargetRegisterInfo *TRI) const {
1741 void MachineBasicBlock::clearLiveIns() {
1745 void MachineBasicBlock::clearLiveIns(
1751 MachineBasicBlock::livein_iterator MachineBasicBlock::livein_begin() const {
1758 MachineBasicBlock::liveout_iterator MachineBasicBlock::liveout_begin() const {
1775 bool MachineBasicBlock::sizeWithoutDebugLargerThan(unsigned Limit) const {