A RetroSearch Logo

Home - News ( United States | United Kingdom | Italy | Germany ) - Football scores

Search Query:

Showing content from https://mail.python.org/pipermail/python-dev/2000-July/005556.html below:

[Python-Dev] RE: [Python-checkins] CVS: python/dist/src/Objects unicodeobject.c,2.33,2.34

[Python-Dev] RE: [Python-checkins] CVS: python/dist/src/Objects unicodeobject.c,2.33,2.34M.-A. Lemburg mal@lemburg.com
Thu, 06 Jul 2000 11:48:56 +0200
Bill Tutt wrote:
> 
> !       if (c1 > (1<<11) * 26)
> !           c1 += utf16Fixup[c1>>11];
> !       if (c2 > (1<<11) * 26)
> !             c2 += utf16Fixup[c2>>11];
> !
> 
> 
> 
> This change from the patch is kind of silly. You've made the code flow more
> complicated for no particularly good reason,

The reason was that it avoids the fixup lookup for all non-surrogate
characters -- the vast majority of all chars processed.

> esp. considering the size of
> utf16Fixup[]. That is, the cost in the CPU of handling the branch prediction
> is likely to be much higher than the array lookup for every character.

Note that the lookup also involves a shift operation for every
character.

But if you insist, I'll do some benchmarking and check which 
version is faster.

-- 
Marc-Andre Lemburg
______________________________________________________________________
Business:                                      http://www.lemburg.com/
Python Pages:                           http://www.lemburg.com/python/



RetroSearch is an open source project built by @garambo | Open a GitHub Issue

Search and Browse the WWW like it's 1997 | Search results from DuckDuckGo

HTML: 3.2 | Encoding: UTF-8 | Version: 0.7.4