Avoid handle-less fields in ClassLinker::InitializeClass()

There were some handle-less fields in a SafeMap across GC points.

Bug: 12687968
Change-Id: Ib8c6527d4e23031f1d0074fa11d8f85499b68340
diff --git a/runtime/class_linker.h b/runtime/class_linker.h
index 5694149..edbf2b3 100644
--- a/runtime/class_linker.h
+++ b/runtime/class_linker.h
@@ -437,8 +437,8 @@
   void AppendToBootClassPath(const DexFile& dex_file, Handle<mirror::DexCache> dex_cache)
       SHARED_LOCKS_REQUIRED(Locks::mutator_lock_);
 
-  void ConstructFieldMap(const DexFile& dex_file, const DexFile::ClassDef& dex_class_def,
-                         mirror::Class* c, SafeMap<uint32_t, mirror::ArtField*>& field_map)
+  void ConstructFieldArray(const DexFile& dex_file, const DexFile::ClassDef& dex_class_def,
+                           mirror::Class* c, Handle<mirror::ObjectArray<mirror::ArtField>> field_array)
       SHARED_LOCKS_REQUIRED(Locks::mutator_lock_);
 
   // Precomputes size needed for Class, in the case of a non-temporary class this size must be