Mercurial > hg > graal-jvmci-8
diff src/cpu/sparc/vm/jvmciCodeInstaller_sparc.cpp @ 22204:339beb637508
[SPARC] Offset constant table base pointer to leverage full 13 bit address range for constant loads
author | Stefan Anzinger <stefan.anzinger@oracle.com> |
---|---|
date | Mon, 13 Jul 2015 11:03:41 +0200 |
parents | a0d0ecbceeb4 |
children | 02fc27dc1da7 |
line wrap: on
line diff
--- a/src/cpu/sparc/vm/jvmciCodeInstaller_sparc.cpp Mon Jul 13 10:14:34 2015 +0200 +++ b/src/cpu/sparc/vm/jvmciCodeInstaller_sparc.cpp Mon Jul 13 11:03:41 2015 +0200 @@ -79,7 +79,8 @@ }else { int const_size = align_size_up(_constants->end()-_constants->start(), CodeEntryAlignment); NativeMovRegMem* load = nativeMovRegMem_at(pc); - load->set_offset(- (const_size - data_offset)); + // This offset must match with SPARCLoadConstantTableBaseOp.emitCode + load->set_offset(- (const_size - data_offset + Assembler::min_simm13())); TRACE_jvmci_3("relocating ld at %p (+%d) with destination at %d", pc, pc_offset, data_offset); } }