RFR: 8213795: Force explicit null check on patching placeholder offset

Vladimir Kozlov vladimir.kozlov at oracle.com
Tue Nov 13 17:32:18 UTC 2018

Hi Roman,

Would be nice if the comment points to C1 code which use -1 offset. In a future, when we forgot the context, I don't 
want to look through all Hotspot code to find where this -1 is coming from.


On 11/13/18 7:16 AM, Roman Kennke wrote:
> With current logic after JDK-8213199, we allow implicit null-checks in
> the offset range [-cell_header_size;vm_page_size). When using
> Shenandoah, cell_header_size is -8, so we allow [-8;vm_page_size).
> Unfortunately, this disables explicit null-checks on -1 which is used as
> placeholder for offsets to be patched in C1. This results in weird
> asserts later and may actually crash if offset is outside of legal range
> for implicit null-checks. We need to force explicit null checks on -1.
> Bug:
> https://bugs.openjdk.java.net/browse/JDK-8213795
> Webrev:
> http://cr.openjdk.java.net/~rkennke/JDK-8213795/webrev.00/
> Testing: tier1 and Shenandoah testing
> Can I please get a review?
> Roman

More information about the hotspot-compiler-dev mailing list