forked from OSchip/llvm-project
Add MachineBasicBlock::getName, and use it in place of getBasicBlock()->getName.
Fix debug code that assumes getBasicBlock never returns NULL. llvm-svn: 89428
This commit is contained in:
parent
62167b9516
commit
2bbeaa8774
|
@ -92,10 +92,15 @@ class MachineBasicBlock : public ilist_node<MachineBasicBlock> {
|
|||
|
||||
public:
|
||||
/// getBasicBlock - Return the LLVM basic block that this instance
|
||||
/// corresponded to originally.
|
||||
/// corresponded to originally. Note that this may be NULL if this instance
|
||||
/// does not correspond directly to an LLVM basic block.
|
||||
///
|
||||
const BasicBlock *getBasicBlock() const { return BB; }
|
||||
|
||||
/// getName - Return the name of the corresponding LLVM basic block, or
|
||||
/// "(null)".
|
||||
StringRef getName() const;
|
||||
|
||||
/// hasAddressTaken - Test whether this block is potentially the target
|
||||
/// of an indirect branch.
|
||||
bool hasAddressTaken() const { return AddressTaken; }
|
||||
|
|
|
@ -136,7 +136,7 @@ void LiveIntervals::printInstrs(raw_ostream &OS) const {
|
|||
|
||||
for (MachineFunction::iterator mbbi = mf_->begin(), mbbe = mf_->end();
|
||||
mbbi != mbbe; ++mbbi) {
|
||||
OS << ((Value*)mbbi->getBasicBlock())->getName() << ":\n";
|
||||
OS << mbbi->getName() << ":\n";
|
||||
for (MachineBasicBlock::iterator mii = mbbi->begin(),
|
||||
mie = mbbi->end(); mii != mie; ++mii) {
|
||||
OS << getInstructionIndex(mii) << '\t' << *mii;
|
||||
|
@ -658,7 +658,7 @@ void LiveIntervals::computeIntervals() {
|
|||
MachineBasicBlock *MBB = MBBI;
|
||||
// Track the index of the current machine instr.
|
||||
SlotIndex MIIndex = getMBBStartIdx(MBB);
|
||||
DEBUG(errs() << ((Value*)MBB->getBasicBlock())->getName() << ":\n");
|
||||
DEBUG(errs() << MBB->getName() << ":\n");
|
||||
|
||||
MachineBasicBlock::iterator MI = MBB->begin(), miEnd = MBB->end();
|
||||
|
||||
|
|
|
@ -172,6 +172,13 @@ static inline void OutputReg(raw_ostream &os, unsigned RegNo,
|
|||
os << " %reg" << RegNo;
|
||||
}
|
||||
|
||||
StringRef MachineBasicBlock::getName() const {
|
||||
if (const BasicBlock *LBB = getBasicBlock())
|
||||
return LBB->getName();
|
||||
else
|
||||
return "(null)";
|
||||
}
|
||||
|
||||
void MachineBasicBlock::print(raw_ostream &OS) const {
|
||||
const MachineFunction *MF = getParent();
|
||||
if (!MF) {
|
||||
|
|
|
@ -487,10 +487,10 @@ void MachineLICM::Hoist(MachineInstr *MI) {
|
|||
errs() << "Hoisting " << *MI;
|
||||
if (CurPreheader->getBasicBlock())
|
||||
errs() << " to MachineBasicBlock "
|
||||
<< CurPreheader->getBasicBlock()->getName();
|
||||
<< CurPreheader->getName();
|
||||
if (MI->getParent()->getBasicBlock())
|
||||
errs() << " from MachineBasicBlock "
|
||||
<< MI->getParent()->getBasicBlock()->getName();
|
||||
<< MI->getParent()->getName();
|
||||
errs() << "\n";
|
||||
});
|
||||
|
||||
|
|
|
@ -305,7 +305,7 @@ void MachineVerifier::report(const char *msg, const MachineFunction *MF) {
|
|||
void MachineVerifier::report(const char *msg, const MachineBasicBlock *MBB) {
|
||||
assert(MBB);
|
||||
report(msg, MBB->getParent());
|
||||
*OS << "- basic block: " << MBB->getBasicBlock()->getNameStr()
|
||||
*OS << "- basic block: " << MBB->getName()
|
||||
<< " " << (void*)MBB
|
||||
<< " (BB#" << MBB->getNumber() << ")\n";
|
||||
}
|
||||
|
|
|
@ -2380,7 +2380,7 @@ namespace {
|
|||
|
||||
void SimpleRegisterCoalescing::CopyCoalesceInMBB(MachineBasicBlock *MBB,
|
||||
std::vector<CopyRec> &TryAgain) {
|
||||
DEBUG(errs() << ((Value*)MBB->getBasicBlock())->getName() << ":\n");
|
||||
DEBUG(errs() << MBB->getName() << ":\n");
|
||||
|
||||
std::vector<CopyRec> VirtCopies;
|
||||
std::vector<CopyRec> PhysCopies;
|
||||
|
|
|
@ -1600,7 +1600,7 @@ private:
|
|||
std::vector<MachineOperand*> &KillOps) {
|
||||
|
||||
DEBUG(errs() << "\n**** Local spiller rewriting MBB '"
|
||||
<< MBB.getBasicBlock()->getName() << "':\n");
|
||||
<< MBB.getName() << "':\n");
|
||||
|
||||
MachineFunction &MF = *MBB.getParent();
|
||||
|
||||
|
|
Loading…
Reference in New Issue