[lworld] RFR: 8367242: [lworld] C2 compilation asserts with "dead loop detected" [v2]
Marc Chevalier
mchevalier at openjdk.org
Tue Sep 30 23:40:31 UTC 2025
On Tue, 30 Sep 2025 08:24:37 GMT, Tobias Hartmann <thartmann at openjdk.org> wrote:
>> If we initialize the inputs of the `PhiNodes` above `this` to top, we don't even need to merge with anything. We can just skip the call to `merge_with`, no? It seems mostly harmless to change `clone_with_phis` this way, except for the callsite in `Parse::ensure_phi` where I'm not sure of the consequences.
>
> Right, skipping the call would be even better. I think the `ensure_phi` callsite should be fine as well as all the branches that the phi inputs correspond to should either be initialized afterwards or are dead (in which case `top` seems appropriate). But only testing will tell :D
I didn't dig too much, but it seems that if one put top everywhere in `clone_with_phis`, between a quarter and a third of all the tests are broken. Anyway, it doesn't seem good. But making this callsite init the inputs of the phi with top seems to simplify our life and seems to work.
-------------
PR Review Comment: https://git.openjdk.org/valhalla/pull/1640#discussion_r2393064006
More information about the valhalla-dev
mailing list