add a ReplaceMBBInJumpTables method

llvm-svn: 30983
This commit is contained in:
Chris Lattner 2006-10-16 20:41:42 +00:00
parent 9db3a08864
commit e7d49862a5
1 changed files with 12 additions and 0 deletions

View File

@ -26,6 +26,7 @@
namespace llvm {
class MachineBasicBlock;
class TargetData;
/// MachineJumpTableEntry - One jump table in the jump table info.
///
@ -54,6 +55,17 @@ public:
return JumpTables;
}
/// ReplaceMBBInJumpTables - If Old is the target of any jump tables, update
/// the jump tables to branch to New instead.
void ReplaceMBBInJumpTables(MachineBasicBlock *Old, MachineBasicBlock *New) {
for (unsigned i = 0, e = JumpTables.size(); i != e; ++i) {
MachineJumpTableEntry &JTE = JumpTables[i];
for (unsigned j = 0, e = JTE.MBBs.size(); j != e; ++j)
if (JTE.MBBs[j] == Old)
JTE.MBBs[j] = New;
}
}
/// getEntrySize - returns the size of an individual field in a jump table
unsigned getEntrySize() const;