diff options
-rw-r--r-- | ChangeLog | 17 | ||||
-rw-r--r-- | README | 4 | ||||
-rw-r--r-- | elf/rtld.c | 12 | ||||
-rw-r--r-- | manual/install.texi | 1 |
4 files changed, 26 insertions, 8 deletions
@@ -1,5 +1,10 @@ 1998-11-05 Ulrich Drepper <drepper@cygnus.com> + * elf/rtld.c: Add a few __builtin_expects where they will improve + a lot. + +1998-11-05 Ulrich Drepper <drepper@cygnus.com> + * version.h (VERSION): Bump to 2.0.100. * sysdeps/i386/fpu/bits/mathinline.h (__pow2): Fix fldl -> fld. @@ -7,6 +12,18 @@ * sysdeps/libm-i387/s_fma.S: Optimize a bit. * sysdeps/libm-i387/s_fmaf.S: Likewise. +1998-11-04 Andreas Schwab <schwab@issan.cs.uni-dortmund.de> + + * libio/genops.c (_IO_least_marker): Add additional parameter + end_p replacing fp->_IO_read_end. + (save_for_backup): Likewise. All callers changed. Use _IO_size_t + and _IO_ssize_t instead of int. + (_IO_switch_to_main_get_area): Remove use of _IO_save_ptr. + (_IO_switch_to_backup_area): Likewise. Fix comments. + (_IO_seekmark): Undo last change. + (_IO_default_pbackfail): Correct use of backup area. + * libio/libio.h (_IO_FILE_complete): Remove _IO_save_ptr. + 1998-11-04 19:47 -0500 Zack Weinberg <zack@rabi.phys.columbia.edu> * configure.in: Search for install-info and substitute it. @@ -1,4 +1,4 @@ -This directory contains the version 2.0.99 test release of the GNU C Library. +This directory contains the version 2.0.100 test release of the GNU C Library. Many bugs have been fixed since the last release. Some bugs surely remain. @@ -53,7 +53,7 @@ provides the Unix `crypt' function, plus some other entry points. Because of the United States export restriction on DES implementations, we are distributing this code separately from the rest of the C library. There is an extra distribution tar file just for crypt; it is -called `glibc-crypt-2.0.99.tar.gz'. You can just unpack the crypt +called `glibc-crypt-2.0.100.tar.gz'. You can just unpack the crypt distribution along with the rest of the C library and build; you can also build the library without getting crypt. Users outside the USA can get the crypt distribution via anonymous FTP from ftp.ifi.uio.no diff --git a/elf/rtld.c b/elf/rtld.c index 472cb21127..b88e1e12b0 100644 --- a/elf/rtld.c +++ b/elf/rtld.c @@ -398,7 +398,7 @@ of this helper program; chances are you did not intend to run this program.\n\ _dl_init_paths (library_path); paths_initialized = 1; - if (mode == verify) + if (__builtin_expect (mode, normal) == verify) { char *err_str = NULL; struct map_args args; @@ -514,7 +514,7 @@ of this helper program; chances are you did not intend to run this program.\n\ /* Set up our cache of pointers into the hash table. */ _dl_setup_hash (_dl_loaded); - if (mode == verify) + if (__builtin_expect (mode, normal) == verify) { /* We were called just to verify that this is a dynamic executable using us as the program interpreter. Exit with an @@ -684,7 +684,7 @@ of this helper program; chances are you did not intend to run this program.\n\ if (_dl_rtld_map.l_next) _dl_rtld_map.l_next->l_prev = _dl_rtld_map.l_prev; - if (_dl_rtld_map.l_opencount > 1) + if (__builtin_expect (_dl_rtld_map.l_opencount, 2) > 1) { /* Some DT_NEEDED entry referred to the interpreter object itself, so put it back in the list of visible objects. We insert it into the @@ -714,7 +714,7 @@ of this helper program; chances are you did not intend to run this program.\n\ _dl_receive_error (print_missing_version, version_check_doit, &args); } - if (mode != normal) + if (__builtin_expect (mode, normal) != normal) { /* We were run just to list the shared libraries. It is important that we do this before real relocation, because the @@ -744,7 +744,7 @@ of this helper program; chances are you did not intend to run this program.\n\ } } - if (mode != trace) + if (__builtin_expect (mode, trace) != trace) for (i = 1; i < _dl_argc; ++i) { const ElfW(Sym) *ref = NULL; @@ -1283,7 +1283,7 @@ process_envvars (enum mode *modep, int *lazyp) /* LAZY is determined by the environment variable LD_WARN and LD_BIND_NOW if we trace the binary. */ - if (mode == trace) + if (__builtin_expect (mode, normal) == trace) *lazyp = _dl_verbose ? !bind_now : -1; else *lazyp = !__libc_enable_secure && !bind_now; diff --git a/manual/install.texi b/manual/install.texi index 69ba14b85f..3712643989 100644 --- a/manual/install.texi +++ b/manual/install.texi @@ -301,6 +301,7 @@ following patterns: @smallexample alpha-@var{*}-linux +arm-@var{*}-linux arm-@var{*}-linuxaout arm-@var{*}-none i@var{x}86-@var{*}-gnu |