[16] RFR(M) 8252188: Crash in OrINode::Ideal(PhaseGVN*, bool)+0x8b9
Vladimir Kozlov
vladimir.kozlov at oracle.com
Fri Sep 4 18:39:06 UTC 2020
Thank you, Tobias
On 9/3/20 10:58 PM, Tobias Hartmann wrote:
> Hi Vladimir,
>
> looks good to me.
>
> Some minor comments:
> - This notation is confusing "0/{32|64}" (looks like a division). I think it should be something
> like "{0|32|64}".
Right. Fixed.
> - Extra whitespaces in the lines with "return new" and "val , " should be removed.
Fixed.
Thanks,
Vladimir K
>
> Best regards,
> Tobias
>
> On 03.09.20 23:43, Vladimir Kozlov wrote:
>> https://cr.openjdk.java.net/~kvn/8252188/webrev.00/
>> https://bugs.openjdk.java.net/browse/JDK-8252188
>>
>> Code added by 8248830 [1] uses Node::is_Con() check when looking for constant shift values.
>> Unfortunately it does not guarantee that it will be Integer constant because TOP node is also ConNode.
>> I used C2 types to check and get shift values. I also refactor code to consolidate checks.
>>
>> Tested: tier1, hs-tier2, hs-tier3.
>> Verified fix with replay file from bug report.
>> I also checked that RotateBenchmark.java added by 8248830 still creates Rotate vectors after this fix.
>>
>> I created subtask to add new regerssion test later because this fix is urgent and I did not have
>> time to prepare it.
>>
>> Thanks,
>> Vladimir
>>
>> [1] https://bugs.openjdk.java.net/browse/JDK-8248830
More information about the hotspot-compiler-dev
mailing list