Optimize conversion of single character in gconv

This commit is contained in:
Ulrich Drepper 2011-05-14 01:03:08 -04:00
parent 1af4e29837
commit 0656e90edc
2 changed files with 4 additions and 2 deletions

View File

@ -1,7 +1,8 @@
2011-05-14 Ulrich Drepper <drepper@gmail.com>
* iconv/loop.c (SINGLE) [STORE_REST]: Add input bytes to bytebuf before
storing incomplete byte sequence in state object.
storing incomplete byte sequence in state object. Avoid testing for
guaranteed too small input if we know there is enough data available.
2011-05-11 Andreas Schwab <schwab@redhat.com>

View File

@ -395,7 +395,8 @@ SINGLE(LOOPFCT) (struct __gconv_step *step,
#endif
/* Are there enough bytes in the input buffer? */
if (__builtin_expect (inptr + (MIN_NEEDED_INPUT - inlen) > inend, 0))
if (MIN_NEEDED_INPUT > 1
&& __builtin_expect (inptr + (MIN_NEEDED_INPUT - inlen) > inend, 0))
{
*inptrp = inend;
#ifdef STORE_REST