[jdk16] RFR: 8259641: C2: assert(early->dominates(LCA)) failed: early is high enough
Roland Westrelin
roland at openjdk.java.net
Fri Jan 15 08:24:06 UTC 2021
On Thu, 14 Jan 2021 09:37:36 GMT, Christian Hagedorn <chagedorn at openjdk.org> wrote:
>> For the fix of 8258393 that causes this regression, I wrote that the
>> goal was:
>>
>> "I propose to be less conservative in anti-dependence analysis for
>> Phis. For a Phi, when computing the LCA, I think it's sufficient to
>> only consider region's inputs that we actually reach by following the
>> memory edges and that's what I propose here."
>>
>> But that's not what the logic I added does. It checks whether a Phi
>> input should be taken into account by checking whether it's in the
>> worklist but the worklist doesn't include mem, the memory state from
>> which we started.
>
> test/hotspot/jtreg/compiler/loopopts/TestBrokenAntiDependenceWithPhi.java line 30:
>
>> 28: *
>> 29: * @run main/othervm -Xcomp -XX:CompileOnly=TestBrokenAntiDependenceWithPhi TestBrokenAntiDependenceWithPhi
>> 30: *
>
> Empty line can be removed
Which of the lines do you suggest removing? One that starts with a *?
> test/hotspot/jtreg/compiler/loopopts/TestBrokenAntiDependenceWithPhi.java line 32:
>
>> 30: *
>> 31: */
>> 32:
>
> You could move the test into the `compiler.loopopts` package.
Sure but I usually don't (so they are a several tests without it). Why is it important?
-------------
PR: https://git.openjdk.java.net/jdk16/pull/121
More information about the hotspot-compiler-dev
mailing list