RFR(S): 8239367: RunThese30M.java failed due to "assert(false) failed: graph should be schedulable"

Roland Westrelin rwestrel at redhat.com
Mon Mar 2 09:15:46 UTC 2020


http://cr.openjdk.java.net/~roland/8239367/webrev.00/

The code to wire memory when the new SubTypeCheck node is expanded is
broken. It assumes that the first bottom memory it encounters when
walking through the graph dominates the point where the SubTypeCheck is
expanded. That doesn't hold. In this particular case, the SubTypeCheck
node is expanded right after a region that has several memory Phis all
feeding into a MergeMem. The find_bottom_mem() method doesn't see bottom
memory at the region so picks one of the Region's edge and looks for
bottom memory there. It finds a bottom memory Phi which doesn't dominate
the SubTypeCheck node. I think fixing find_bottom_mem() is too
complicated and propose we go with Vladimir I's suggestion of using
immutable memory instead:

https://mail.openjdk.java.net/pipermail/hotspot-compiler-dev/2020-February/037022.html

Roland.



More information about the hotspot-compiler-dev mailing list