RFR: 8276162: Optimise unsigned comparison pattern

Jie Fu jiefu at openjdk.java.net
Fri Oct 29 09:48:34 UTC 2021


On Mon, 25 Oct 2021 10:15:42 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.

It would be better if you can provide a micro benchmark to show us the performance improvement.
Thanks.

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

PR: https://git.openjdk.java.net/jdk/pull/6101


More information about the hotspot-compiler-dev mailing list