Add conditional branches, and build dominator tree.

Change-Id: I4b151a07b72692961235a1419b54b6b45cf54e63
diff --git a/compiler/optimizing/pretty_printer.h b/compiler/optimizing/pretty_printer.h
index 62a5a2c..d4b6165 100644
--- a/compiler/optimizing/pretty_printer.h
+++ b/compiler/optimizing/pretty_printer.h
@@ -34,6 +34,24 @@
   virtual void VisitBasicBlock(HBasicBlock* block) {
     PrintString("BasicBlock ");
     PrintInt(block->block_id());
+    const GrowableArray<HBasicBlock*>* blocks = block->predecessors();
+    if (!blocks->IsEmpty()) {
+      PrintString(", pred: ");
+      for (size_t i = 0; i < blocks->Size() -1; i++) {
+        PrintInt(blocks->Get(i)->block_id());
+        PrintString(", ");
+      }
+      PrintInt(blocks->Peek()->block_id());
+    }
+    blocks = block->successors();
+    if (!blocks->IsEmpty()) {
+      PrintString(", succ: ");
+      for (size_t i = 0; i < blocks->Size() - 1; i++) {
+        PrintInt(blocks->Get(i)->block_id());
+        PrintString(", ");
+      }
+      PrintInt(blocks->Peek()->block_id());
+    }
     PrintNewLine();
     HGraphVisitor::VisitBasicBlock(block);
   }