cvs commit: src/include _ctype.h

Andrey Chernov ache at nagual.pp.ru
Wed Oct 31 15:40:10 PDT 2007


On Thu, Nov 01, 2007 at 03:23:56AM +1100, Bruce Evans wrote:
> In fact, one of the cleanups/optimizations in rev.1.5 and 1.6 by ache
> and me was to get rid of the mask.  There was already a check for _c
> < 0, so the mask cost even more.  The top limit was 256 instead of
> 128, so the point about 8bit immediates didn't apply, but I don't know
> of any machines where the mask is faster (didn't look hard :-).  OTOH,
> _c is often a char or a u_char (it is declared as mumble_rune_t, but
> the functions are inline so the compiler can see the original type.
> If _c is u_char and u_char is uint8_t, then (_c < 0 || c >= 256) is
> always false, so the compiler should generate no code for it.  The top
> limit of 256 was preferred so that this optimization is possible.  A
> top limit of 128 doesn't work so well.

Please see the tests posted in this thread.

-- 
http://ache.pp.ru/


More information about the cvs-src mailing list