1
0
mirror of https://sourceware.org/git/glibc.git synced 2025-08-07 06:43:00 +03:00
2003-09-04  Jakub Jelinek  <jakub@redhat.com>

	* libio/fileops.c (_IO_file_read, _IO_new_file_write): Add
	__builtin_expect.
	(_IO_file_open): Likewise.  Use close_not_cancel.
This commit is contained in:
Ulrich Drepper
2003-09-04 08:53:13 +00:00
parent ee8449f729
commit e3c54d8055
2 changed files with 12 additions and 5 deletions

View File

@@ -1,3 +1,9 @@
2003-09-04 Jakub Jelinek <jakub@redhat.com>
* libio/fileops.c (_IO_file_read, _IO_new_file_write): Add
__builtin_expect.
(_IO_file_open): Likewise. Use close_not_cancel.
2003-09-04 Ulrich Drepper <drepper@redhat.com> 2003-09-04 Ulrich Drepper <drepper@redhat.com>
* libio/libio.h: Define _IO_FLAGS2_NOTCANCEL. * libio/libio.h: Define _IO_FLAGS2_NOTCANCEL.

View File

@@ -226,7 +226,7 @@ _IO_file_open (fp, filename, posix_mode, prot, read_write, is32not64)
{ {
int fdesc; int fdesc;
#ifdef _LIBC #ifdef _LIBC
if (fp->_flags2 & _IO_FLAGS2_NOTCANCEL) if (__builtin_expect (fp->_flags2 & _IO_FLAGS2_NOTCANCEL, 0))
fdesc = open_not_cancel (filename, fdesc = open_not_cancel (filename,
posix_mode | (is32not64 ? 0 : O_LARGEFILE), prot); posix_mode | (is32not64 ? 0 : O_LARGEFILE), prot);
else else
@@ -242,7 +242,7 @@ _IO_file_open (fp, filename, posix_mode, prot, read_write, is32not64)
if (_IO_SEEKOFF (fp, (_IO_off64_t)0, _IO_seek_end, _IOS_INPUT|_IOS_OUTPUT) if (_IO_SEEKOFF (fp, (_IO_off64_t)0, _IO_seek_end, _IOS_INPUT|_IOS_OUTPUT)
== _IO_pos_BAD && errno != ESPIPE) == _IO_pos_BAD && errno != ESPIPE)
{ {
close (fdesc); close_not_cancel (fdesc);
return NULL; return NULL;
} }
INTUSE(_IO_link_in) ((struct _IO_FILE_plus *) fp); INTUSE(_IO_link_in) ((struct _IO_FILE_plus *) fp);
@@ -292,7 +292,7 @@ _IO_new_file_fopen (fp, filename, mode, is32not64)
#ifdef _LIBC #ifdef _LIBC
last_recognized = mode; last_recognized = mode;
#endif #endif
for (i = 1; i < 5; ++i) for (i = 1; i < 6; ++i)
{ {
switch (*++mode) switch (*++mode)
{ {
@@ -1204,7 +1204,7 @@ _IO_file_read (fp, buf, size)
void *buf; void *buf;
_IO_ssize_t size; _IO_ssize_t size;
{ {
return ((fp->_flags2 & _IO_FLAGS2_NOTCANCEL) return (__builtin_expect (fp->_flags2 & _IO_FLAGS2_NOTCANCEL, 0)
? read_not_cancel (fp->_fileno, buf, size) ? read_not_cancel (fp->_fileno, buf, size)
: read (fp->_fileno, buf, size)); : read (fp->_fileno, buf, size));
} }
@@ -1268,7 +1268,8 @@ _IO_new_file_write (f, data, n)
_IO_ssize_t to_do = n; _IO_ssize_t to_do = n;
while (to_do > 0) while (to_do > 0)
{ {
_IO_ssize_t count = ((f->_flags2 & _IO_FLAGS2_NOTCANCEL) _IO_ssize_t count = (__builtin_expect (f->_flags2
& _IO_FLAGS2_NOTCANCEL, 0)
? write_not_cancel (f->_fileno, data, to_do) ? write_not_cancel (f->_fileno, data, to_do)
: write (f->_fileno, data, to_do)); : write (f->_fileno, data, to_do));
if (count < 0) if (count < 0)