Fix updating of JNI references for String.<init>.

Was missing updates to globals and weak globals.

Bug: 21288130
Bug: 21440428

(cherry picked from commit 1a302fb4f84525289c1cf7a437f5be1999a75251)

Change-Id: I41b64e8aae906f5986de483db096d8191e45f260
diff --git a/runtime/java_vm_ext.h b/runtime/java_vm_ext.h
index deec6a9..594027c 100644
--- a/runtime/java_vm_ext.h
+++ b/runtime/java_vm_ext.h
@@ -125,9 +125,17 @@
   mirror::Object* DecodeGlobal(Thread* self, IndirectRef ref)
       SHARED_LOCKS_REQUIRED(Locks::mutator_lock_);
 
+  void UpdateGlobal(Thread* self, IndirectRef ref, mirror::Object* result)
+      SHARED_LOCKS_REQUIRED(Locks::mutator_lock_)
+      LOCKS_EXCLUDED(globals_lock_);
+
   mirror::Object* DecodeWeakGlobal(Thread* self, IndirectRef ref)
       SHARED_LOCKS_REQUIRED(Locks::mutator_lock_);
 
+  void UpdateWeakGlobal(Thread* self, IndirectRef ref, mirror::Object* result)
+      SHARED_LOCKS_REQUIRED(Locks::mutator_lock_)
+      LOCKS_EXCLUDED(weak_globals_lock_);
+
   const JNIInvokeInterface* GetUncheckedFunctions() const {
     return unchecked_functions_;
   }