RFR: 8304948: [vectorapi] C2 crashes when expanding VectorBox [v2]

Jatin Bhateja jbhateja at openjdk.org
Tue Apr 25 12:25:08 UTC 2023


On Sat, 22 Apr 2023 09:38:37 GMT, Eric Liu <eliu at openjdk.org> wrote:

>> I do still not fully grasp it though. When `expand_vbox_helper` is called on `Phi1`, it creates `NewPhi1`, then it calls `expand_vbox_helper` on `Phi2`, a `NewPhi2` is created, then `expand_vbox_helper` is invoked again on `Phi1`, which it shortcircuits to return `Phi1`, which will be attached as an input of `NewPhi2`, at this step should the second invocation on `Phi1` returns `NewPhi1` instead?
>> 
>> Thanks a lot.
>
> Yes, I think it should return the `NewPhi1` instead. 
> 
> In my test case, the `NewPhi1` and `NewPhi2` are idealized to `Phi1` and `Phi2`, so it does not matter whether it returns the new one. But I'm not sure if it's certain to be idealize to the old one. Anyway, return the new is more reasonable. I will fix that and do test.

Hi @e1iu , Can you please elaborate the reason for CYCLIC Phi creation in this case. Ideally we should not have seen that pallet in first place. You fix is circumventing this problem but will be good to know the cause of such graph shape.

-------------

PR Review Comment: https://git.openjdk.org/jdk/pull/13489#discussion_r1176432532


More information about the hotspot-compiler-dev mailing list