RFR: SFX AddP cloning should check for dependent AddP explicitly
Aleksey Shipilev
shade at redhat.com
Mon Jul 15 12:44:44 UTC 2019
On 7/15/19 2:40 PM, Roman Kennke wrote:
>>>>> CTW tests fail with sh/jdk with the assert here:
>>>>> 1545 assert(addr2->Opcode() == Op_AddP, "expected");
>>>>>
>>>>> I believe we should instead check for the shape of the graph explicitly here:
>>>>> http://cr.openjdk.java.net/~shade/shenandoah/sfx-hard-arr/webrev.01/
>>>>
>>>> This also apparently fixes a lot of x86_32 CTW tests.
>>>
>>> It looks ok to me.
>>> I assume the failure case is rare enough that we can accept the register
>>> mess-up there?
>>
>> Where is the register mess-up? I see there is a dangling CheckCastPP, but that node would be dead in
>> that corner case.
>
> Doesn't it mean we can't match the whole shape and would end up not
> cloning the thingy, which leads to the null-check becoming explicit or
> something? Either way, I guess it must be rare.
Ah yes, that. True, we would miss some opportunities. We can look deeper into that, after we unbreak
the tests.
--
Thanks,
-Aleksey
More information about the shenandoah-dev
mailing list