On Tue, 19 Apr 2022 21:15:29 GMT, XenoAmess <d...@openjdk.java.net> wrote:

> some thoughts after watching 8285001: Simplify StringLatin1.regionMatches  
> https://github.com/openjdk/jdk/pull/8292/
> 
>             if (Character.toLowerCase(u1) == Character.toLowerCase(u2)) {
>                 continue;
>             }
> 
> should be changed to 
> 
>             if (((u1 == c1) ? CharacterDataLatin1.instance.toLowerCase(c1) : 
> c1) == Character.toLowerCase(u2)) {
>                 continue;
>             }
> 
> as:
> 
> 1. c1 is LATIN1, so CharacterDataLatin1.instance.toLowerCase seems faster.
> 2. because c1 is LATIN1, so if u1 != c1, then c1 is already lowercase, and 
> don't need a lowercase cauculation.

Point 1 make sense.
Point 2 adds a branch and branches aren't free.
Can you show some jmh data for these cases?

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

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

Reply via email to