Am 24.03.2010 08:32, schrieb Martin Buchholz:
Hi Ulf,

You have this interesting optimization:

      public static boolean isSurrogate(char ch) {
-        return ch>= MIN_SURROGATE&&  ch<  MAX_SURROGATE + 1;
+        return (ch -= MIN_SURROGATE)>= 0&&  ch<  MAX_SURROGATE + 1 -
MIN_SURROGATE;
      }

Do you have any evidence that hotspot can produce better code from this,
or that there is a measurable performance improvement?
Or was this just an experiment?

If isHighSurrogate and isSurrogate are used consecutive on same char, result of ch -= MIN_SURROGATE could be used for both. If isLowSurrogate and isSurrogate are used consecutive on same char, result of ch -= MAX_SURROGATE would fit better. If isHighSurrogate and isLowSurrogate are used consecutive on same char, result of ch -= MIN_LOW_SURROGATE would fit better.

I suggest using 1st pair in JDK library.

-Ulf


Reply via email to