Move static field storage to end of Class instance

Change-Id: I90061999c9eef9d900e4269508b983a61f48b264
diff --git a/src/image_writer.h b/src/image_writer.h
index 8e9ac10..ebd86a5 100644
--- a/src/image_writer.h
+++ b/src/image_writer.h
@@ -46,16 +46,18 @@
   }
 
   void CalculateNewObjectOffsets();
-  static void CalculateNewObjectOffsetsCallback(Object *obj, void *arg);
+  static void CalculateNewObjectOffsetsCallback(Object* obj, void *arg);
 
   void CopyAndFixupObjects();
-  static void CopyAndFixupObjectsCallback(Object *obj, void *arg);
-  void FixupClass(Class* orig, Class* copy);
-  void FixupMethod(Method* orig, Method* copy);
-  void FixupField(Field* orig, Field* copy);
-  void FixupObject(Object* orig, Object* copy);
-  void FixupObjectArray(ObjectArray<Object>* orig, ObjectArray<Object>* copy);
-  void FixupInstanceFields(Object* orig, Object* copy);
+  static void CopyAndFixupObjectsCallback(Object* obj, void *arg);
+  void FixupClass(const Class* orig, Class* copy);
+  void FixupMethod(const Method* orig, Method* copy);
+  void FixupField(const Field* orig, Field* copy);
+  void FixupObject(const Object* orig, Object* copy);
+  void FixupObjectArray(const ObjectArray<Object>* orig, ObjectArray<Object>* copy);
+  void FixupInstanceFields(const Object* orig, Object* copy);
+  void FixupStaticFields(const Class* orig, Class* copy);
+  void FixupFields(const Object* orig, Object* copy, uint32_t ref_offsets, bool is_static);
 
   // memory mapped for generating the image
   scoped_ptr<MemMap> image_;