Refactor the compilers out of libart.

This builds three separate compilers and dynamically links with the right one
at runtime.

Change-Id: I59d22b9884f41de733c09f97e29ee290236d5f4b
diff --git a/src/heap_test.cc b/src/heap_test.cc
index 2035ce8..0077a77 100644
--- a/src/heap_test.cc
+++ b/src/heap_test.cc
@@ -21,11 +21,12 @@
 class HeapTest : public CommonTest {};
 
 TEST_F(HeapTest, ClearGrowthLimit) {
-  int64_t max_memory_before = Heap::GetMaxMemory();
-  int64_t total_memory_before = Heap::GetTotalMemory();
-  Heap::ClearGrowthLimit();
-  int64_t max_memory_after = Heap::GetMaxMemory();
-  int64_t total_memory_after = Heap::GetTotalMemory();
+  Heap* heap = Runtime::Current()->GetHeap();
+  int64_t max_memory_before = heap->GetMaxMemory();
+  int64_t total_memory_before = heap->GetTotalMemory();
+  heap->ClearGrowthLimit();
+  int64_t max_memory_after = heap->GetMaxMemory();
+  int64_t total_memory_after = heap->GetTotalMemory();
   EXPECT_GE(max_memory_after, max_memory_before);
   EXPECT_GE(total_memory_after, total_memory_before);
 }
@@ -41,7 +42,7 @@
     }
   }
 
-  Heap::CollectGarbage(false);
+  Runtime::Current()->GetHeap()->CollectGarbage(false);
 }
 
 }  // namespace art