Added support for SEA IR.

- Modified makefile to take the existance of SEA_IR_ART
  file to mean "switch to sea ir mode".
- Switching SEA IR mode on leads to the new compiler being
  fed the fibonacci methods only, if they are used as input.
- Added partial support for the control flow subgraph of
  the SEA IR (instruction nodes and region nodes for
  conditional and unconditional branches).

Change-Id: I29020b8e2df5a00fde75715c3683cc25038589f4

Conflicts:
	src/compiler/driver/compiler_driver.cc
diff --git a/src/runtime.h b/src/runtime.h
index dfcd647..0b893a3 100644
--- a/src/runtime.h
+++ b/src/runtime.h
@@ -108,9 +108,12 @@
     void (*hook_abort_)();
     std::vector<std::string> properties_;
     bool small_mode_;
+
     size_t small_mode_method_threshold_;
     size_t small_mode_method_dex_size_limit_;
 
+    bool sea_ir_mode_;
+
    private:
     ParsedOptions() {}
   };
@@ -131,6 +134,14 @@
     return is_concurrent_gc_enabled_;
   }
 
+  bool IsSeaIRMode() const {
+    return sea_ir_mode_;
+  }
+
+  void SetSeaIRMode(bool sea_ir_mode) {
+    sea_ir_mode_ = sea_ir_mode;
+  }
+
   bool IsSmallMode() const {
       return small_mode_;
   }
@@ -374,6 +385,8 @@
   size_t small_mode_method_threshold_;
   size_t small_mode_method_dex_size_limit_;
 
+  bool sea_ir_mode_;
+
   // The host prefix is used during cross compilation. It is removed
   // from the start of host paths such as:
   //    $ANDROID_PRODUCT_OUT/system/framework/boot.oat