diff options
-rw-r--r-- | ChangeLog | 4 | ||||
-rwxr-xr-x | configure | 40 | ||||
-rw-r--r-- | configure.in | 29 | ||||
-rw-r--r-- | stdio-common/vfprintf.c | 8 |
4 files changed, 8 insertions, 73 deletions
@@ -1,5 +1,9 @@ 2005-11-05 Ulrich Drepper <drepper@redhat.com> + * configure.in: Remove test for support for subtracting local labels. + * stdio-common/vfprintf.c: Remove test of + HAVE_SUBTRACT_LOCAL_LABELS. + * configure.in: If init_array/fini_array support is not available, bail out. * config.h.in: Remove trace of optional init_array/fini_array support. @@ -6462,46 +6462,6 @@ _ACEOF fi -echo "$as_me:$LINENO: checking for local label subtraction" >&5 -echo $ECHO_N "checking for local label subtraction... $ECHO_C" >&6 -if test "${libc_cv_gcc_subtract_local_labels+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -else - cat > conftest.c <<EOF -#line $LINENO "configure" -int foo (int a) -{ - static const int ar[] = { &&l1 - &&l1, &&l2 - &&l1 }; - void *p = &&l1 + ar[a]; - goto *p; - l1: - return 1; - l2: - return 2; -} -EOF -if { ac_try='${CC-cc} $CFLAGS $CPPFLAGS $LDFLAGS -nostdlib -nostartfiles - -o conftest conftest.c -lgcc >&5' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then - libc_cv_gcc_subtract_local_labels=yes -else - libc_cv_gcc_subtract_local_labels=no -fi -rm -f conftest* -fi -echo "$as_me:$LINENO: result: $libc_cv_gcc_subtract_local_labels" >&5 -echo "${ECHO_T}$libc_cv_gcc_subtract_local_labels" >&6 -if test "$libc_cv_gcc_subtract_local_labels" = yes; then - cat >>confdefs.h <<\_ACEOF -#define HAVE_SUBTRACT_LOCAL_LABELS 1 -_ACEOF - -fi - if test "x$use__thread" != xno; then echo "$as_me:$LINENO: checking for __thread" >&5 echo $ECHO_N "checking for __thread... $ECHO_C" >&6 diff --git a/configure.in b/configure.in index dae24b5..15f87fa 100644 --- a/configure.in +++ b/configure.in @@ -1855,35 +1855,6 @@ if test "$libc_cv_gcc_builtin_redirection" = yes ; then AC_DEFINE(HAVE_BUILTIN_REDIRECTION) fi -dnl Check whether the compiler supports subtraction of local labels. -AC_CACHE_CHECK(for local label subtraction, libc_cv_gcc_subtract_local_labels, -[cat > conftest.c <<EOF -changequote(,)dnl -#line $LINENO "configure" -int foo (int a) -{ - static const int ar[] = { &&l1 - &&l1, &&l2 - &&l1 }; - void *p = &&l1 + ar[a]; - goto *p; - l1: - return 1; - l2: - return 2; -} -changequote([,])dnl -EOF -dnl No \ in command here because it ends up inside ''. -if AC_TRY_COMMAND([${CC-cc} $CFLAGS $CPPFLAGS $LDFLAGS -nostdlib -nostartfiles - -o conftest conftest.c -lgcc >&AS_MESSAGE_LOG_FD]); then - libc_cv_gcc_subtract_local_labels=yes -else - libc_cv_gcc_subtract_local_labels=no -fi -rm -f conftest*]) -if test "$libc_cv_gcc_subtract_local_labels" = yes; then - AC_DEFINE(HAVE_SUBTRACT_LOCAL_LABELS) -fi - dnl Check whether the compiler supports the __thread keyword. if test "x$use__thread" != xno; then AC_CACHE_CHECK([for __thread], libc_cv_gcc___thread, diff --git a/stdio-common/vfprintf.c b/stdio-common/vfprintf.c index 832a6ed..83da710 100644 --- a/stdio-common/vfprintf.c +++ b/stdio-common/vfprintf.c @@ -1,4 +1,4 @@ -/* Copyright (C) 1991-2002, 2003, 2004 Free Software Foundation, Inc. +/* Copyright (C) 1991-2002, 2003, 2004, 2005 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or @@ -257,7 +257,7 @@ vfprintf (FILE *s, const CHAR_T *format, va_list ap) #define NOT_IN_JUMP_RANGE(Ch) ((Ch) < L_(' ') || (Ch) > L_('z')) #define CHAR_CLASS(Ch) (jump_table[(INT_T) (Ch) - L_(' ')]) -#if defined HAVE_SUBTRACT_LOCAL_LABELS && defined SHARED +#ifdef SHARED /* 'int' is enough and it saves some space on 64 bit systems. */ # define JUMP_TABLE_TYPE const int # define JUMP(ChExpr, table) \ @@ -1283,7 +1283,7 @@ vfprintf (FILE *s, const CHAR_T *format, va_list ap) /* Process whole format string. */ do { -#if defined HAVE_SUBTRACT_LOCAL_LABELS && defined SHARED +#ifdef SHARED # define REF(Name) &&do_##Name - &&do_form_unknown #else # define REF(Name) &&do_##Name @@ -1726,7 +1726,7 @@ do_positional: for (; (size_t) nspecs_done < nspecs; ++nspecs_done) { #undef REF -#if defined HAVE_SUBTRACT_LOCAL_LABELS && defined SHARED +#ifdef SHARED # define REF(Name) &&do2_##Name - &&do_form_unknown #else # define REF(Name) &&do2_##Name |