[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