[aarch64-port-dev ] RFR: Large code cache

Andrew Haley aph at redhat.com
Tue Dec 9 16:03:18 UTC 2014


On 12/09/2014 02:55 PM, Andrew Dinn wrote:
> One more thing. I am not sure about the validity of this comment which
> occurs in the middle of MacroAssembler::emit_trampoline_stub()
> 
> +  // For java_to_interp stubs we use rscratch1 as scratch register and
> +  // in call trampoline stubs we use rmethod. This way we can
> +  // distinguish them (see is_NativeCallTrampolineStub_at()).
> 
> The code in compiledIC_aarch64.cpp has been changed to use rscratch1

Mmm, that's too fragile.  I've strengthened the test in

inline bool is_NativeCallTrampolineStub_at(address addr) {
  // Ensure that the stub is exactly
  //      ldr   xscratch1, L
  //      br    xscratch1
  // L:
  uint32_t *i = (uint32_t *)addr;
  return i[0] == 0x58000048 && i[1] == 0xd61f0100;
}

Andrew.



More information about the aarch64-port-dev mailing list