[aarch64-port-dev ] RFR: JDK8u-only: Fix MacroAssembler::mov() over-strict assert

Roman Kennke rkennke at redhat.com
Tue Dec 5 12:31:10 UTC 2017


Hi,
I see an assert in MacroAssembler::mov(Register, address) failing 
occasionally on 'addresses' like 0xdeaddead that are generated in some 
places, e.g. sharedRuntime_aarch64.cpp. Seems like 0xdeaddead can 
actually point into the heap :-)

I propose to fix it by removing the assert. It looks like it's not 
present in jdk9 and 10. The patch changes MacroAssembler::mov() to be 
like 9 and 10.

http://cr.openjdk.java.net/~rkennke/aarch64-jdk8u-movoops/webrev.00/

An alternative could be to keep the assert in place, but use a better 
dead value, e.g. badHeapOop from globalDefinitions.hpp . In this case I 
would bring 9 and 10 in sync too.

What do you think?

Roman


More information about the aarch64-port-dev mailing list