Преглед изворни кода

Move MachineJumpTableInfo::ReplaceMBBInJumpTables out of line.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@69125 91177308-0d34-0410-b5e6-96231b3b80d8
Dan Gohman пре 16 година
родитељ
комит
593ea05957
2 измењених фајлова са 19 додато и 14 уклоњено
  1. 2 14
      include/llvm/CodeGen/MachineJumpTableInfo.h
  2. 17 0
      lib/CodeGen/MachineFunction.cpp

+ 2 - 14
include/llvm/CodeGen/MachineJumpTableInfo.h

@@ -67,20 +67,8 @@ public:
   
   /// ReplaceMBBInJumpTables - If Old is the target of any jump tables, update
   /// the jump tables to branch to New instead.
-  bool ReplaceMBBInJumpTables(MachineBasicBlock *Old, MachineBasicBlock *New) {
-    assert(Old != New && "Not making a change?");
-    bool MadeChange = false;
-    for (size_t i = 0, e = JumpTables.size(); i != e; ++i) {
-      MachineJumpTableEntry &JTE = JumpTables[i];
-      for (size_t j = 0, e = JTE.MBBs.size(); j != e; ++j)
-        if (JTE.MBBs[j] == Old) {
-          JTE.MBBs[j] = New;
-          MadeChange = true;
-        }
-    }
-    return MadeChange;
-  }
-  
+  bool ReplaceMBBInJumpTables(MachineBasicBlock *Old, MachineBasicBlock *New);
+
   /// getEntrySize - Returns the size of an individual field in a jump table. 
   ///
   unsigned getEntrySize() const { return EntrySize; }

+ 17 - 0
lib/CodeGen/MachineFunction.cpp

@@ -486,6 +486,23 @@ unsigned MachineJumpTableInfo::getJumpTableIndex(
   return JumpTables.size()-1;
 }
 
+/// ReplaceMBBInJumpTables - If Old is the target of any jump tables, update
+/// the jump tables to branch to New instead.
+bool
+MachineJumpTableInfo::ReplaceMBBInJumpTables(MachineBasicBlock *Old,
+                                             MachineBasicBlock *New) {
+  assert(Old != New && "Not making a change?");
+  bool MadeChange = false;
+  for (size_t i = 0, e = JumpTables.size(); i != e; ++i) {
+    MachineJumpTableEntry &JTE = JumpTables[i];
+    for (size_t j = 0, e = JTE.MBBs.size(); j != e; ++j)
+      if (JTE.MBBs[j] == Old) {
+        JTE.MBBs[j] = New;
+        MadeChange = true;
+      }
+  }
+  return MadeChange;
+}
 
 void MachineJumpTableInfo::print(std::ostream &OS) const {
   // FIXME: this is lame, maybe we could print out the MBB numbers or something