--- a/src/hotspot/cpu/aarch64/interp_masm_aarch64.cpp Fri Jun 28 11:26:07 2019 +0100
+++ b/src/hotspot/cpu/aarch64/interp_masm_aarch64.cpp Fri Jun 28 17:10:22 2019 +0300
@@ -288,6 +288,18 @@
ldr(klass, Address(klass, Array<Klass*>::base_offset_in_bytes()));
}
+void InterpreterMacroAssembler::load_resolved_method_at_index(int byte_no,
+ Register method,
+ Register cache) {
+ const int method_offset = in_bytes(
+ ConstantPoolCache::base_offset() +
+ ((byte_no == TemplateTable::f2_byte)
+ ? ConstantPoolCacheEntry::f2_offset()
+ : ConstantPoolCacheEntry::f1_offset()));
+
+ ldr(method, Address(cache, method_offset)); // get f1 Method*
+}
+
// Generate a subtype check: branch to ok_is_subtype if sub_klass is a
// subtype of super_klass.
//