Store zygote compiled code in a shared map.

- Store flags in the ArtMethod to know that it is compiled by the zygote
- Query the map when entering a zygote compiled method from the
interpreter.

Bug: 119800099
Test: boots
Change-Id: Ib1a38266573e28d371034d02d6bb83f9b8b2e317
diff --git a/runtime/jit/jit.h b/runtime/jit/jit.h
index d272a18..41876ca 100644
--- a/runtime/jit/jit.h
+++ b/runtime/jit/jit.h
@@ -313,11 +313,12 @@
   // Compile methods from the given profile. If `add_to_queue` is true, methods
   // in the profile are added to the JIT queue. Otherwise they are compiled
   // directly.
-  void CompileMethodsFromProfile(Thread* self,
-                                 const std::vector<const DexFile*>& dex_files,
-                                 const std::string& profile_path,
-                                 Handle<mirror::ClassLoader> class_loader,
-                                 bool add_to_queue);
+  // Return the number of methods added to the queue.
+  uint32_t CompileMethodsFromProfile(Thread* self,
+                                     const std::vector<const DexFile*>& dex_files,
+                                     const std::string& profile_path,
+                                     Handle<mirror::ClassLoader> class_loader,
+                                     bool add_to_queue);
 
   // Register the dex files to the JIT. This is to perform any compilation/optimization
   // at the point of loading the dex files.