ucs4_internal_loop_single (const unsigned char **inptrp,
ucs4_internal_loop_single (struct __gconv_step *step, struct __gconv_step_data *step_data, const unsigned char **inptrp,
ucs4_internal_loop_single (const unsigned char **inptrp,			   const unsigned char *inend,			   unsigned char **outptrp, unsigned char *outend,			   mbstate_t *state, int flags, void *data,			   size_t *irreversible){  size_t cnt = state->__count & 7;  while (*inptrp < inend && cnt < 4)    state->__value.__wchb[cnt++] = *(*inptrp)++;  if (__builtin_expect (cnt, 4) < 4)    {      /* Still not enough bytes.  Store the ones in the input buffer.  */      state->__count &= ~7;      state->__count |= cnt;      return __GCONV_INCOMPLETE_INPUT;    }  if (__builtin_expect (((unsigned char *) state->__value.__wchb)[0], 0)      > 0x80)    {      /* The value is too large.  */      if (!(flags & __GCONV_IGNORE_ERRORS))	{	  *inptrp -= cnt - (state->__count & 7);	  return __GCONV_ILLEGAL_INPUT;	}    }  else    {#if __BYTE_ORDER == __LITTLE_ENDIAN      (*outptrp)[0] = state->__value.__wchb[3];      (*outptrp)[1] = state->__value.__wchb[2];      (*outptrp)[2] = state->__value.__wchb[1];      (*outptrp)[3] = state->__value.__wchb[0];#elif __BYTE_ORDER == __BIG_ENDIAN      (*outptrp)[0] = state->__value.__wchb[0];      (*outptrp)[1] = state->__value.__wchb[1];      (*outptrp)[2] = state->__value.__wchb[2];      (*outptrp)[3] = state->__value.__wchb[3];#endif      *outptrp += 4;    }  /* Clear the state buffer.  */  state->__count &= ~7;  return __GCONV_OK;}