diff options
author | Ulrich Drepper <drepper@redhat.com> | 2000-06-07 16:35:57 +0000 |
---|---|---|
committer | Ulrich Drepper <drepper@redhat.com> | 2000-06-07 16:35:57 +0000 |
commit | 3a31f6f4092d33132669bde62141b0000d06fc68 (patch) | |
tree | 59156e88adc41e51b688d0c2788ca5e530bd8eb8 /locale/findlocale.c | |
parent | d5bc737a32bc409066a717cf517bfebe3daa6013 (diff) | |
download | glibc-3a31f6f4092d33132669bde62141b0000d06fc68.zip glibc-3a31f6f4092d33132669bde62141b0000d06fc68.tar.gz glibc-3a31f6f4092d33132669bde62141b0000d06fc68.tar.bz2 |
Add __builtin_expect in many places.
Diffstat (limited to 'locale/findlocale.c')
-rw-r--r-- | locale/findlocale.c | 13 |
1 files changed, 7 insertions, 6 deletions
diff --git a/locale/findlocale.c b/locale/findlocale.c index 60d318b..f0c911d 100644 --- a/locale/findlocale.c +++ b/locale/findlocale.c @@ -57,7 +57,7 @@ _nl_find_locale (const char *locale_path, size_t locale_path_len, if ((*name)[0] == '\0' /* In SUID binaries we must not allow people to access files outside the dedicated locale directories. */ - || (__libc_enable_secure + || (__builtin_expect (__libc_enable_secure, 0) && memchr (*name, '/', _nl_find_language (*name) - *name) != NULL)) { /* The user decides which locale to use by setting environment @@ -71,7 +71,8 @@ _nl_find_locale (const char *locale_path, size_t locale_path_len, *name = (char *) _nl_C_name; } - if (strcmp (*name, _nl_C_name) == 0 || strcmp (*name, _nl_POSIX_name) == 0) + if (__builtin_expect (strcmp (*name, _nl_C_name), 1) == 0 + || __builtin_expect (strcmp (*name, _nl_POSIX_name), 1) == 0) { /* We need not load anything. The needed data is contained in the library itself. */ @@ -159,10 +160,10 @@ _nl_find_locale (const char *locale_path, size_t locale_path_len, successors. */ locale_file->successor[0] = locale_file->successor[cnt]; locale_file = locale_file->successor[cnt]; - } - if (locale_file == NULL) - return NULL; + if (locale_file == NULL) + return NULL; + } /* Determine the locale name for which loading succeeded. This information comes from the file name. The form is @@ -214,7 +215,7 @@ _nl_remove_locale (int locale, struct locale_data *data) #ifdef _POSIX_MAPPED_FILES /* Really delete the data. First delete the real data. */ - if (data->mmaped) + if (__builtin_expect (data->mmaped, 1)) { /* Try to unmap the area. If this fails we mark the area as permanent. */ |