8132875: AArch64: Fix error introduced into AArch64 CodeCache by commit for 8130309
Summary: The fix for issue 8130309 introduced several errors into the AArch64 codecache routines
Reviewed-by: aph, thartmann, kvn
--- a/hotspot/src/cpu/aarch64/vm/c1_CodeStubs_aarch64.cpp Mon Aug 03 09:39:29 2015 +0200
+++ b/hotspot/src/cpu/aarch64/vm/c1_CodeStubs_aarch64.cpp Mon Aug 03 05:05:40 2015 -0400
@@ -334,7 +334,7 @@
relocInfo::static_call_type);
address call = __ trampoline_call(resolve);
if (call == NULL) {
- bailout("trampoline stub overflow");
+ ce->bailout("trampoline stub overflow");
return;
}
ce->add_call_info_here(info());
--- a/hotspot/src/cpu/aarch64/vm/c1_LIRAssembler_aarch64.hpp Mon Aug 03 09:39:29 2015 +0200
+++ b/hotspot/src/cpu/aarch64/vm/c1_LIRAssembler_aarch64.hpp Mon Aug 03 05:05:40 2015 -0400
@@ -26,6 +26,9 @@
#ifndef CPU_X86_VM_C1_LIRASSEMBLER_X86_HPP
#define CPU_X86_VM_C1_LIRASSEMBLER_X86_HPP
+// ArrayCopyStub needs access to bailout
+friend class ArrayCopyStub;
+
private:
int array_element_size(BasicType type) const;
--- a/hotspot/src/cpu/aarch64/vm/macroAssembler_aarch64.cpp Mon Aug 03 09:39:29 2015 +0200
+++ b/hotspot/src/cpu/aarch64/vm/macroAssembler_aarch64.cpp Mon Aug 03 05:05:40 2015 -0400
@@ -685,7 +685,8 @@
} else {
bl(pc());
}
- return start_offset;
+ // just need to return a non-null address
+ return pc();
}