Bugfixes

llvm-svn: 30709
GitOrigin-RevId: bd7286e60696cb22e50a64c7f18d54b851a79706
diff --git a/lib/CodeGen/MachineFunction.cpp b/lib/CodeGen/MachineFunction.cpp
index 21f41b9..205414e 100644
--- a/lib/CodeGen/MachineFunction.cpp
+++ b/lib/CodeGen/MachineFunction.cpp
@@ -25,9 +25,10 @@
 #include "llvm/Target/TargetFrameInfo.h"
 #include "llvm/Function.h"
 #include "llvm/Instructions.h"
-#include "llvm/Support/LeakDetector.h"
-#include "llvm/Support/GraphWriter.h"
 #include "llvm/Support/Compiler.h"
+#include "llvm/Support/GraphWriter.h"
+#include "llvm/Support/LeakDetector.h"
+#include "llvm/ADT/STLExtras.h"
 #include "llvm/Config/config.h"
 #include <fstream>
 #include <iostream>
@@ -148,11 +149,8 @@
   
   // Figure out the block number this should have.
   unsigned BlockNo = 0;
-  if (MBB != &front()) {
-    MachineFunction::iterator I = MBB;
-    --I;
-    BlockNo = I->getNumber()+1;
-  }
+  if (MBBI != begin())
+    BlockNo = prior(MBBI)->getNumber()+1;
   
   for (; MBBI != E; ++MBBI, ++BlockNo) {
     if (MBBI->getNumber() != (int)BlockNo) {