public inbox for libc-alpha@sourceware.org
 help / color / mirror / Atom feed
From: Adhemerval Zanella <adhemerval.zanella@linaro.org>
To: Fangrui Song <maskray@google.com>, libc-alpha@sourceware.org
Subject: Re: [PATCH] Remove fno-unit-at-a-time make variable
Date: Wed, 30 Mar 2022 09:46:30 -0300	[thread overview]
Message-ID: <0295bfe2-2f44-c15e-1628-acaf94fc407c@linaro.org> (raw)
In-Reply-To: <20220330050729.2176630-1-maskray@google.com>



On 30/03/2022 02:07, Fangrui Song wrote:
> 795985e4e751 in 2003 added -fno-unit-at-a-time to errlist.c and
> siglist.c to "avoid reordering assembler output". -fno-toplevel-reorder
> is a rough replacement for this legacy option
> (https://sourceware.org/pipermail/gcc-patches/2006-January/186801.html).
> 
> The reordering requirement does not seem to be needed any longer.

We still need them for otherwise DEFINE_COMPAT_ERRLIST used on errlist-compat.c
does not create _sys_errlist and _sys_siglist with expected sizes defined by
glibc ABI.

I am trying to fix without resorting to compiler options.

> ---
>  config.make.in        |  1 -
>  configure             | 32 --------------------------------
>  configure.ac          | 19 -------------------
>  stdio-common/Makefile |  2 --
>  4 files changed, 54 deletions(-)
> 
> diff --git a/config.make.in b/config.make.in
> index 6d43e691f7..ecde84a7da 100644
> --- a/config.make.in
> +++ b/config.make.in
> @@ -69,7 +69,6 @@ have-selinux = @have_selinux@
>  have-libaudit = @have_libaudit@
>  have-libcap = @have_libcap@
>  have-cc-with-libunwind = @libc_cv_cc_with_libunwind@
> -fno-unit-at-a-time = @fno_unit_at_a_time@
>  bind-now = @bindnow@
>  have-hash-style = @libc_cv_hashstyle@
>  use-default-link = @use_default_link@
> diff --git a/configure b/configure
> index 2a3cb49b0b..f836874a58 100755
> --- a/configure
> +++ b/configure
> @@ -620,7 +620,6 @@ libc_cv_cc_loop_to_function
>  libc_cv_cc_submachine
>  libc_cv_cc_nofma
>  libc_cv_mtls_dialect_gnu2
> -fno_unit_at_a_time
>  libc_cv_has_glob_dat
>  libc_cv_hashstyle
>  libc_cv_fpie
> @@ -6319,37 +6318,6 @@ fi
>  $as_echo "$libc_cv_has_glob_dat" >&6; }
>  
>  
> -{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for -fno-toplevel-reorder -fno-section-anchors" >&5
> -$as_echo_n "checking for -fno-toplevel-reorder -fno-section-anchors... " >&6; }
> -if ${libc_cv_fno_toplevel_reorder+:} false; then :
> -  $as_echo_n "(cached) " >&6
> -else
> -  cat > conftest.c <<EOF
> -int foo;
> -EOF
> -if { ac_try='${CC-cc} $CFLAGS $CPPFLAGS -S -fno-toplevel-reorder -fno-section-anchors
> -			    conftest.c 1>&5'
> -  { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$ac_try\""; } >&5
> -  (eval $ac_try) 2>&5
> -  ac_status=$?
> -  $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
> -  test $ac_status = 0; }; }
> -then
> -  libc_cv_fno_toplevel_reorder=yes
> -else
> -  libc_cv_fno_toplevel_reorder=no
> -fi
> -rm -f conftest*
> -fi
> -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $libc_cv_fno_toplevel_reorder" >&5
> -$as_echo "$libc_cv_fno_toplevel_reorder" >&6; }
> -if test $libc_cv_fno_toplevel_reorder = yes; then
> -  fno_unit_at_a_time="-fno-toplevel-reorder -fno-section-anchors"
> -else
> -  fno_unit_at_a_time=-fno-unit-at-a-time
> -fi
> -
> -
>  { $as_echo "$as_me:${as_lineno-$LINENO}: checking for -mtls-dialect=gnu2" >&5
>  $as_echo_n "checking for -mtls-dialect=gnu2... " >&6; }
>  if ${libc_cv_mtls_dialect_gnu2+:} false; then :
> diff --git a/configure.ac b/configure.ac
> index fa7d3c025b..ec1db36d46 100644
> --- a/configure.ac
> +++ b/configure.ac
> @@ -1478,25 +1478,6 @@ fi
>  rm -f conftest*])
>  AC_SUBST(libc_cv_has_glob_dat)
>  
> -AC_CACHE_CHECK(for -fno-toplevel-reorder -fno-section-anchors, libc_cv_fno_toplevel_reorder, [dnl
> -cat > conftest.c <<EOF
> -int foo;
> -EOF
> -if AC_TRY_COMMAND([${CC-cc} $CFLAGS $CPPFLAGS -S -fno-toplevel-reorder -fno-section-anchors
> -			    conftest.c 1>&AS_MESSAGE_LOG_FD])
> -then
> -  libc_cv_fno_toplevel_reorder=yes
> -else
> -  libc_cv_fno_toplevel_reorder=no
> -fi
> -rm -f conftest*])
> -if test $libc_cv_fno_toplevel_reorder = yes; then
> -  fno_unit_at_a_time="-fno-toplevel-reorder -fno-section-anchors"
> -else
> -  fno_unit_at_a_time=-fno-unit-at-a-time
> -fi
> -AC_SUBST(fno_unit_at_a_time)
> -
>  AC_CACHE_CHECK([for -mtls-dialect=gnu2], libc_cv_mtls_dialect_gnu2,
>  [dnl
>  cat > conftest.c <<EOF
> diff --git a/stdio-common/Makefile b/stdio-common/Makefile
> index 435cd8904f..dbaecbd76e 100644
> --- a/stdio-common/Makefile
> +++ b/stdio-common/Makefile
> @@ -333,8 +333,6 @@ CFLAGS-isoc99_vfscanf.c += -fexceptions
>  CFLAGS-isoc99_vscanf.c += -fexceptions
>  CFLAGS-isoc99_fscanf.c += -fexceptions
>  CFLAGS-isoc99_scanf.c += -fexceptions
> -CFLAGS-errlist.c += $(fno-unit-at-a-time)
> -CFLAGS-siglist.c += $(fno-unit-at-a-time)
>  
>  # scanf14a.c and scanf16a.c test a deprecated extension which is no
>  # longer visible under most conformance levels; see the source files

  reply	other threads:[~2022-03-30 12:46 UTC|newest]

Thread overview: 20+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2022-03-30  5:07 Fangrui Song
2022-03-30 12:46 ` Adhemerval Zanella [this message]
2022-03-30 16:23   ` Fangrui Song
2022-03-30 16:28     ` Adhemerval Zanella
2022-03-31  3:43       ` Fangrui Song
2022-03-31 11:33         ` Adhemerval Zanella
2022-04-04 15:57           ` Fangrui Song
2022-04-05 14:35             ` Adhemerval Zanella
2022-04-05 16:22               ` Fāng-ruì Sòng
2022-04-05 16:40                 ` Adhemerval Zanella
2022-04-05 16:44                   ` Fāng-ruì Sòng
2022-04-05 16:49                     ` Adhemerval Zanella
2022-04-05 17:53                       ` Florian Weimer
2022-04-05 20:01                         ` Adhemerval Zanella
2022-04-05 20:26                           ` Florian Weimer
2022-04-05 20:30                             ` Adhemerval Zanella
2022-04-05 20:40                               ` Florian Weimer
2022-04-05 21:15                                 ` Adhemerval Zanella
2022-04-06 15:35                                   ` Adhemerval Zanella
2022-04-07  7:02                       ` Fāng-ruì Sòng

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=0295bfe2-2f44-c15e-1628-acaf94fc407c@linaro.org \
    --to=adhemerval.zanella@linaro.org \
    --cc=libc-alpha@sourceware.org \
    --cc=maskray@google.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).