RFR(S): 8244663: Shenandoah: C2 assertion fails in Matcher::collect_null_checks

Roland Westrelin rwestrel at redhat.com
Fri May 15 08:46:08 UTC 2020


https://bugs.openjdk.java.net/browse/JDK-8244663
http://cr.openjdk.java.net/~roland/8244663/webrev.00/

When a load barrier is used after a call in both an exception handler
and the fallthrough path, it must be cloned in the 2 paths. If the
barrier is used after both paths, a phi must be added to merge the
barriers from both paths. If that use is a If, the current code may
create a Phi which merges 2 Bool nodes. An If shouldn't have a Phi as
input. This patch adds some logic for this special case so the Bool->Cmp
is cloned and the Phi is created as input of the Cmp node.

Roland.



More information about the hotspot-compiler-dev mailing list