diff options
author | Ulrich Drepper <drepper@redhat.com> | 2007-10-16 23:25:46 +0000 |
---|---|---|
committer | Ulrich Drepper <drepper@redhat.com> | 2007-10-16 23:25:46 +0000 |
commit | 6a649d25bb4eac00000781221310b7c9e547b503 (patch) | |
tree | ce7f4589969bab7eddd9ba57522e11d7b09e0ad5 | |
parent | 800d6f9ee878373efac8d7063f1231be4b054225 (diff) | |
download | glibc-6a649d25bb4eac00000781221310b7c9e547b503.zip glibc-6a649d25bb4eac00000781221310b7c9e547b503.tar.gz glibc-6a649d25bb4eac00000781221310b7c9e547b503.tar.bz2 |
Help the compiler recognize unreachable code on 32-bit machines.
2007-10-16 Ulrich Drepper <drepper@redhat.com>
* time/tzfile.c (__tzfile_read): Help the compiler recognize
unreachable code on 32-bit machines.
-rw-r--r-- | ChangeLog | 5 | ||||
-rwxr-xr-x | sysdeps/i386/elf/configure | 8 | ||||
-rw-r--r-- | time/tzfile.c | 6 |
3 files changed, 12 insertions, 7 deletions
@@ -1,3 +1,8 @@ +2007-10-16 Ulrich Drepper <drepper@redhat.com> + + * time/tzfile.c (__tzfile_read): Help the compiler recognize + unreachable code on 32-bit machines. + 2007-10-16 Jakub Jelinek <jakub@redhat.com> [BZ #5184] diff --git a/sysdeps/i386/elf/configure b/sysdeps/i386/elf/configure index 1182d97..12e92cd 100755 --- a/sysdeps/i386/elf/configure +++ b/sysdeps/i386/elf/configure @@ -4,8 +4,8 @@ if test "$usetls" != no; then # Check for support of thread-local storage handling in assembler and # linker. -echo "$as_me:$LINENO: checking for i386 TLS support" >&5 -echo $ECHO_N "checking for i386 TLS support... $ECHO_C" >&6 +{ echo "$as_me:$LINENO: checking for i386 TLS support" >&5 +echo $ECHO_N "checking for i386 TLS support... $ECHO_C" >&6; } if test "${libc_cv_386_tls+set}" = set; then echo $ECHO_N "(cached) $ECHO_C" >&6 else @@ -37,8 +37,8 @@ else fi rm -f conftest* fi -echo "$as_me:$LINENO: result: $libc_cv_386_tls" >&5 -echo "${ECHO_T}$libc_cv_386_tls" >&6 +{ echo "$as_me:$LINENO: result: $libc_cv_386_tls" >&5 +echo "${ECHO_T}$libc_cv_386_tls" >&6; } if test $libc_cv_386_tls = yes; then cat >>confdefs.h <<\_ACEOF #define HAVE_TLS_SUPPORT 1 diff --git a/time/tzfile.c b/time/tzfile.c index 925f95f..6a8bf89 100644 --- a/time/tzfile.c +++ b/time/tzfile.c @@ -243,7 +243,7 @@ __tzfile_read (const char *file, size_t extra, char **extrap) & ~(__alignof__ (struct leap) - 1)); leaps_idx = total_size; total_size += num_leaps * sizeof (struct leap); - tzspec_len = (trans_width == 8 + tzspec_len = (sizeof (time_t) == 8 && trans_width == 8 ? st.st_size - (ftello (f) + num_transitions * (8 + 1) + num_types * 6 @@ -263,14 +263,14 @@ __tzfile_read (const char *file, size_t extra, char **extrap) types = (struct ttinfo *) ((char *) transitions + types_idx); zone_names = (char *) types + num_types * sizeof (struct ttinfo); leaps = (struct leap *) ((char *) transitions + leaps_idx); - if (trans_width == 8) + if (sizeof (time_t) == 8 && trans_width == 8) tzspec = (char *) leaps + num_leaps * sizeof (struct leap) + extra; else tzspec = NULL; if (extra > 0) *extrap = (char *) &leaps[num_leaps]; - if (sizeof (time_t) == 4 || trans_width == 8) + if (sizeof (time_t) == 4 || __builtin_expect (trans_width == 8, 1)) { if (__builtin_expect (fread_unlocked (transitions, trans_width + 1, num_transitions, f) |