Mercurial > hg > openjdk > aarch64-port > hotspot
changeset 8578:86ebc388af0b
Fix client build after addition of large code cache support
author | enevill |
---|---|
date | Tue, 05 Jan 2016 17:40:17 +0000 |
parents | 0096f1ef564e |
children | 0e3fa1efe9b1 |
files | src/cpu/aarch64/vm/macroAssembler_aarch64.cpp src/cpu/aarch64/vm/vm_version_aarch64.cpp |
diffstat | 2 files changed, 14 insertions(+), 0 deletions(-) [+] |
line wrap: on
line diff
--- a/src/cpu/aarch64/vm/macroAssembler_aarch64.cpp Tue Sep 15 16:14:32 2015 +0000 +++ b/src/cpu/aarch64/vm/macroAssembler_aarch64.cpp Tue Jan 05 17:40:17 2016 +0000 @@ -675,17 +675,23 @@ || entry.rspec().type() == relocInfo::virtual_call_type, "wrong reloc type"); unsigned int start_offset = offset(); +#ifdef COMPILER2 if (far_branches() && !Compile::current()->in_scratch_emit_size()) { emit_trampoline_stub(offset(), entry.target()); } +#endif if (cbuf) cbuf->set_insts_mark(); relocate(entry.rspec()); +#ifdef COMPILER2 if (Assembler::reachable_from_branch_at(pc(), entry.target())) { bl(entry.target()); } else { bl(pc()); } +#else + bl(entry.target()); +#endif } @@ -702,6 +708,7 @@ void MacroAssembler::emit_trampoline_stub(int insts_call_instruction_offset, address dest) { +#ifdef COMPILER2 address stub = start_a_stub(Compile::MAX_stubs_size/2); if (stub == NULL) { start_a_stub(Compile::MAX_stubs_size/2); @@ -733,6 +740,9 @@ assert(is_NativeCallTrampolineStub_at(stub_start_addr), "doesn't look like a trampoline"); end_a_stub(); +#else + ShouldNotReachHere(); +#endif } void MacroAssembler::ic_call(address entry) {
--- a/src/cpu/aarch64/vm/vm_version_aarch64.cpp Tue Sep 15 16:14:32 2015 +0000 +++ b/src/cpu/aarch64/vm/vm_version_aarch64.cpp Tue Jan 05 17:40:17 2016 +0000 @@ -236,6 +236,10 @@ if (FLAG_IS_DEFAULT(OptoScheduling)) { OptoScheduling = true; } +#else + if (ReservedCodeCacheSize > 128*M) { + vm_exit_during_initialization("client compiler does not support ReservedCodeCacheSize > 128M"); + } #endif }