mirror of
https://sourceware.org/git/glibc.git
synced 2024-11-23 17:53:37 +08:00
* configure.in: Remove test for support for subtracting local labels.
* stdio-common/vfprintf.c: Remove test of HAVE_SUBTRACT_LOCAL_LABELS.
This commit is contained in:
parent
ce33ee7caa
commit
4520d7aac8
@ -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.
|
||||
|
40
configure
vendored
40
configure
vendored
@ -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
|
||||
|
29
configure.in
29
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,
|
||||
|
@ -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
|
||||
|
Loading…
Reference in New Issue
Block a user