--- a/src/hotspot/share/ci/ciObjectFactory.cpp Wed Jan 09 15:53:56 2019 +0100
+++ b/src/hotspot/share/ci/ciObjectFactory.cpp Thu Jan 10 18:10:15 2019 +0100
@@ -266,6 +266,24 @@
}
// ------------------------------------------------------------------
+// ciObjectFactory::cached_metadata
+//
+// Get the ciMetadata corresponding to some Metadata. If the ciMetadata has
+// already been created, it is returned. Otherwise, null is returned.
+ciMetadata* ciObjectFactory::cached_metadata(Metadata* key) {
+ ASSERT_IN_VM;
+
+ bool found = false;
+ int index = _ci_metadata->find_sorted<Metadata*, ciObjectFactory::metadata_compare>(key, found);
+
+ if (!found) {
+ return NULL;
+ }
+ return _ci_metadata->at(index)->as_metadata();
+}
+
+
+// ------------------------------------------------------------------
// ciObjectFactory::get_metadata
//
// Get the ciMetadata corresponding to some Metadata. If the ciMetadata has