review (S) for 6777083: assert(target != __null,"must not be null")
Tom Rodriguez
tom.rodriguez at oracle.com
Mon Apr 4 16:21:44 PDT 2011
http://cr.openjdk.java.net/~never/6777083
6777083: assert(target != __null,"must not be null")
Reviewed-by:
ExternalAddress is often used to generate code for references to the
byte_map_base of the card table. Depending on the address layout we
get byte_map_base may be a real address looking value or sometimes it
maybe a small number or even zero. This causes
external_word_relocation to assert because the encoding it uses
assumes that the adress isn't within the first page. This has been
patched up at each use site in the past but keeps recurring as new
code gets written. To fix this I've modified ExternalAddress to drop
the reloc in the case where it's not encodable. It's almost
impossible to force a layout where byte_map_base is a small number but
injecting a small number into it indicates that the assembly code
generation works correcty after the change.
More information about the hotspot-compiler-dev
mailing list