[lworld] Integrated: 8265726: [lworld] C2 compilation fails with assert "uses must be dominated by definitions"
Tobias Hartmann
thartmann at openjdk.java.net
Mon Apr 26 11:13:35 UTC 2021
On Fri, 23 Apr 2021 11:32:57 GMT, Tobias Hartmann <thartmann at openjdk.org> wrote:
> We hit an assert during `PhaseCFG` because the Phi input to a CatchNode does not dominate. The problem is in `PhaseMacroExpand::expand_mh_intrinsic_return` where we rewire projection nodes to merge the state of the slow call in.
>
> Here's the `invokeBasic` call before macro expansion:
> 
> And after macro expansion:
> 
> The input of the CatchNode was accidentally replaced by the Phi merging the exception IO from both calls.
>
> The fix is to re-connect the CatchNode.
>
> Thanks,
> Tobias
This pull request has now been integrated.
Changeset: 8dc4430d
Author: Tobias Hartmann <thartmann at openjdk.org>
URL: https://git.openjdk.java.net/valhalla/commit/8dc4430d
Stats: 7 lines in 3 files changed: 3 ins; 3 del; 1 mod
8265726: [lworld] C2 compilation fails with assert "uses must be dominated by definitions"
-------------
PR: https://git.openjdk.java.net/valhalla/pull/391
More information about the valhalla-dev
mailing list