RFR(XS): 8224538: LoadBarrierNode::common_barrier must check address

Tobias Hartmann tobias.hartmann at oracle.com
Tue May 28 15:12:28 UTC 2019


Hi Nils,

this looks reasonable to me but please add parentheses around the == expression.

>From the failure history it looks like this failure also showed up without ZGC?

Thanks,
Tobias

On 28.05.19 09:55, Nils Eliasson wrote:
> Hi,
> 
> This is patch fixes a problem in LoadBarrierNode::common_barriers that can lead to broken IRs in
> some very rare cases. The common barrier optimizations tries to merge two barriers if they have the
> same oop-in, and there is a site in the control flow where they can be merged. The problem is that
> it doesn't check the address too, it might be pinned by checkcast nodes.
> 
> In the failing IR the address is the same if it is traced upwards, but it isn't obvious which
> checkcast nodes can be skipped. Since the common_barriers optimization is removed in the late
> loadbarrier insertion patch, I choose to create a good-enough fix that can be easily backported. I
> will make sure to push this fix before the late loadbarrier patch.
> 
> Bug: https://bugs.openjdk.java.net/browse/JDK-8224538
> 
> Webrev: http://cr.openjdk.java.net/~neliasso/8224538/webrev.01/
> 
> Regards,
> 
> Nils
> 


More information about the hotspot-compiler-dev mailing list