Make ResolveField not rely on Field::GetType resolution

Change-Id: I10f4a874809ac9db2cd54e200cf10eb7c8979fce
diff --git a/src/heap.h b/src/heap.h
index 433bf6a..9e21272 100644
--- a/src/heap.h
+++ b/src/heap.h
@@ -45,11 +45,20 @@
   // Create a heap with the requested sizes. The possible empty
   // image_file_names names specify Spaces to load based on
   // ImageWriter output.
-  static void Init(size_t starting_size, size_t maximum_size,
+  static void Init(bool is_verbose_heap, bool is_verbose_gc,
+                   size_t starting_size, size_t maximum_size,
                    const std::vector<std::string>& image_file_names);
 
   static void Destroy();
 
+  static bool IsVerboseHeap() {
+    return is_verbose_heap_;
+  }
+
+  static bool IsVerboseGc() {
+    return is_verbose_gc_;
+  }
+
   // Allocates and initializes storage for an object instance.
   static Object* AllocObject(Class* klass, size_t num_bytes);
 
@@ -187,6 +196,10 @@
 
   static Mutex* lock_;
 
+  static bool is_verbose_heap_;
+
+  static bool is_verbose_gc_;
+
   static std::vector<Space*> spaces_;
 
   // default Space for allocations