RFR: 8276162: Optimise unsigned comparison pattern [v3]
Vladimir Kozlov
kvn at openjdk.java.net
Fri Nov 12 17:33:40 UTC 2021
On Thu, 11 Nov 2021 05:12:09 GMT, Mai Đặng Quân Anh <duke at openjdk.java.net> wrote:
>> This patch changes operations in the form `x +- Integer.MIN_VALUE <=> y +- Integer.MIN_VALUE`, which is a pattern used to do unsigned comparisons, into `x u<=> y`.
>>
>> In addition to being basic operations, they may be utilised to implement range checks such as the methods in `jdk.internal.util.Preconditions`, or in places where the compiler cannot deduce the non-negativeness of the bound as in `java.util.ArrayList`.
>>
>> Thank you very much.
>
> Mai Đặng Quân Anh has updated the pull request incrementally with two additional commits since the last revision:
>
> - replace cmpx->Opcode() with cmpx_op
> - address reviews, remove checks for subtraction operatios
Thank you for addressing my comments.
I am tentatively approve these changes leaving final approval and testing to @TobiHartmann
-------------
Marked as reviewed by kvn (Reviewer).
PR: https://git.openjdk.java.net/jdk/pull/6101
More information about the hotspot-compiler-dev
mailing list