mirror of
https://sourceware.org/git/glibc.git
synced 2025-07-29 11:41:21 +03:00
Remove xsputn small copy optimization.
* libio/fileops.c (_IO_new_file_xsputn): Don't try to optimize small copies by hand.
This commit is contained in:
@ -1341,24 +1341,13 @@ _IO_new_file_xsputn (f, data, n)
|
||||
{
|
||||
if (count > to_do)
|
||||
count = to_do;
|
||||
if (count > 20)
|
||||
{
|
||||
#ifdef _LIBC
|
||||
f->_IO_write_ptr = __mempcpy (f->_IO_write_ptr, s, count);
|
||||
f->_IO_write_ptr = __mempcpy (f->_IO_write_ptr, s, count);
|
||||
#else
|
||||
memcpy (f->_IO_write_ptr, s, count);
|
||||
f->_IO_write_ptr += count;
|
||||
memcpy (f->_IO_write_ptr, s, count);
|
||||
f->_IO_write_ptr += count;
|
||||
#endif
|
||||
s += count;
|
||||
}
|
||||
else
|
||||
{
|
||||
register char *p = f->_IO_write_ptr;
|
||||
register int i = (int) count;
|
||||
while (--i >= 0)
|
||||
*p++ = *s++;
|
||||
f->_IO_write_ptr = p;
|
||||
}
|
||||
s += count;
|
||||
to_do -= count;
|
||||
}
|
||||
if (to_do + must_flush > 0)
|
||||
|
Reference in New Issue
Block a user