From a7fa1476b6d8dd5e5b546aa5b700a85c650d6904 Mon Sep 17 00:00:00 2001 From: Chris Lattner Date: Mon, 16 Oct 2006 20:41:42 +0000 Subject: [PATCH] add a ReplaceMBBInJumpTables method git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@30983 91177308-0d34-0410-b5e6-96231b3b80d8 --- include/llvm/CodeGen/MachineJumpTableInfo.h | 12 ++++++++++++ 1 file changed, 12 insertions(+) diff --git a/include/llvm/CodeGen/MachineJumpTableInfo.h b/include/llvm/CodeGen/MachineJumpTableInfo.h index c0f4af34c22..7f6c965d7cd 100644 --- a/include/llvm/CodeGen/MachineJumpTableInfo.h +++ b/include/llvm/CodeGen/MachineJumpTableInfo.h @@ -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; -- 2.34.1