aboutsummaryrefslogtreecommitdiff
path: root/llvm/lib/CodeGen/MachineBasicBlock.cpp
diff options
context:
space:
mode:
authorEvan Cheng <evan.cheng@apple.com>2007-02-17 11:10:48 +0000
committerEvan Cheng <evan.cheng@apple.com>2007-02-17 11:10:48 +0000
commit41d2a1d8bf63504498e8010c61e729adac84ac65 (patch)
tree342240e51e49a33f28147b75e5023659b521c2a0 /llvm/lib/CodeGen/MachineBasicBlock.cpp
parent6accd480a2b419fa12e306b1ea96e4ca3196d48f (diff)
downloadllvm-41d2a1d8bf63504498e8010c61e729adac84ac65.zip
llvm-41d2a1d8bf63504498e8010c61e729adac84ac65.tar.gz
llvm-41d2a1d8bf63504498e8010c61e729adac84ac65.tar.bz2
Added removeLiveIn.
llvm-svn: 34381
Diffstat (limited to 'llvm/lib/CodeGen/MachineBasicBlock.cpp')
-rw-r--r--llvm/lib/CodeGen/MachineBasicBlock.cpp8
1 files changed, 7 insertions, 1 deletions
diff --git a/llvm/lib/CodeGen/MachineBasicBlock.cpp b/llvm/lib/CodeGen/MachineBasicBlock.cpp
index d67159d..bef2502 100644
--- a/llvm/lib/CodeGen/MachineBasicBlock.cpp
+++ b/llvm/lib/CodeGen/MachineBasicBlock.cpp
@@ -118,7 +118,7 @@ void MachineBasicBlock::print(std::ostream &OS) const {
const MRegisterInfo *MRI = MF->getTarget().getRegisterInfo();
if (livein_begin() != livein_end()) {
OS << "Live Ins:";
- for (livein_iterator I = livein_begin(), E = livein_end(); I != E; ++I)
+ for (const_livein_iterator I = livein_begin(),E = livein_end(); I != E; ++I)
OutputReg(OS, *I, MRI);
OS << "\n";
}
@@ -144,6 +144,12 @@ void MachineBasicBlock::print(std::ostream &OS) const {
}
}
+void MachineBasicBlock::removeLiveIn(unsigned Reg) {
+ livein_iterator I = std::find(livein_begin(), livein_end(), Reg);
+ assert(I != livein_end() && "Not a live in!");
+ LiveIns.erase(I);
+}
+
void MachineBasicBlock::moveBefore(MachineBasicBlock *NewAfter) {
MachineFunction::BasicBlockListType &BBList =getParent()->getBasicBlockList();
getParent()->getBasicBlockList().splice(NewAfter, BBList, this);