public inbox for libc-alpha@sourceware.org
 help / color / mirror / Atom feed
From: Adhemerval Zanella <adhemerval.zanella@linaro.org>
To: libc-alpha@sourceware.org, Fangrui Song <maskray@google.com>
Subject: [PATCH v2 0/4] Remove fno_unit_at_a_time configure check
Date: Thu, 12 May 2022 09:59:27 -0300	[thread overview]
Message-ID: <20220512125931.523712-1-adhemerval.zanella@linaro.org> (raw)

Both siglist.c and errlist.c require gcc -fno-toplevel-reorder option
to avoid compiler to reorder the compat assembly directives due a
assembler issue [1] (fixed on binutils 2.39).

This patchset removes the flag requirement by reorganizing how the
compat symbols are created: an intermediary compiler assembly with
just the data definition is used as input to another source file
that actually creates the compat symbols.  This prevents compiler to
move any compat directive prior the _sys_errlist_internal
definition itself.

[1] https://sourceware.org/bugzilla/show_bug.cgi?id=29012

Adhemerval Zanella (3):
  stdio: Remove the usage of $(fno-unit-at-a-time) for errlist.c
  stdio: Remove the usage of $(fno-unit-at-a-time) for siglist.c
  Remove configure fno_unit_at_a_time

H.J. Lu (1):
  Add declare_object_symbol_alias for assembly codes (BZ #28128)

 Makeconfig                                    |  3 +-
 config.make.in                                |  1 -
 configure                                     | 32 -----------------
 configure.ac                                  | 19 -----------
 include/libc-symbols.h                        | 14 ++++----
 include/signal.h                              |  6 ++--
 include/stdio.h                               |  1 +
 stdio-common/Makefile                         | 34 +++++++++++++++++--
 stdio-common/err_map.h                        | 24 +++++++++++++
 stdio-common/errlist-compat-data.h            |  1 +
 stdio-common/errlist-compat.c                 |  1 -
 stdio-common/errlist-data-gen.c               | 34 +++++++++++++++++++
 stdio-common/errlist-data.S                   |  7 ++++
 stdio-common/errlist.c                        | 20 +++--------
 stdio-common/{siglist.c => siglist-gen.c}     |  4 ---
 stdio-common/siglist.S                        |  7 ++++
 ...{siglist-compat.h => siglist-compat-def.h} | 27 ++++++++-------
 sysdeps/generic/siglist-compat.c              |  1 -
 sysdeps/mach/hurd/{errlist.c => err_map.h}    |  9 +++--
 .../{siglist-compat.c => siglist-compat.h}    |  7 ++--
 ...errlist-compat.c => errlist-compat-data.h} |  0
 ...errlist-compat.c => errlist-compat-data.h} |  0
 sysdeps/unix/sysv/linux/errlist-compat.h      | 33 +++++++++++-------
 ...errlist-compat.c => errlist-compat-data.h} |  0
 ...errlist-compat.c => errlist-compat-data.h} |  0
 .../{siglist-compat.c => siglist-compat.h}    |  7 ++--
 ...errlist-compat.c => errlist-compat-data.h} |  0
 27 files changed, 175 insertions(+), 117 deletions(-)
 create mode 100644 stdio-common/err_map.h
 create mode 100644 stdio-common/errlist-compat-data.h
 delete mode 100644 stdio-common/errlist-compat.c
 create mode 100644 stdio-common/errlist-data-gen.c
 create mode 100644 stdio-common/errlist-data.S
 rename stdio-common/{siglist.c => siglist-gen.c} (92%)
 create mode 100644 stdio-common/siglist.S
 rename sysdeps/generic/{siglist-compat.h => siglist-compat-def.h} (69%)
 delete mode 100644 sysdeps/generic/siglist-compat.c
 rename sysdeps/mach/hurd/{errlist.c => err_map.h} (83%)
 rename sysdeps/mach/hurd/{siglist-compat.c => siglist-compat.h} (86%)
 rename sysdeps/unix/sysv/linux/alpha/{errlist-compat.c => errlist-compat-data.h} (100%)
 rename sysdeps/unix/sysv/linux/{errlist-compat.c => errlist-compat-data.h} (100%)
 rename sysdeps/unix/sysv/linux/hppa/{errlist-compat.c => errlist-compat-data.h} (100%)
 rename sysdeps/unix/sysv/linux/mips/{errlist-compat.c => errlist-compat-data.h} (100%)
 rename sysdeps/unix/sysv/linux/{siglist-compat.c => siglist-compat.h} (87%)
 rename sysdeps/unix/sysv/linux/sparc/{errlist-compat.c => errlist-compat-data.h} (100%)

-- 
2.34.1


             reply	other threads:[~2022-05-12 12:59 UTC|newest]

Thread overview: 11+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2022-05-12 12:59 Adhemerval Zanella [this message]
2022-05-12 12:59 ` [PATCH v2 1/4] Add declare_object_symbol_alias for assembly codes (BZ #28128) Adhemerval Zanella
2022-05-12 16:52   ` Fangrui Song
2022-05-12 12:59 ` [PATCH v2 2/4] stdio: Remove the usage of $(fno-unit-at-a-time) for errlist.c Adhemerval Zanella
2022-05-12 17:03   ` Fangrui Song
2022-05-12 20:03     ` Adhemerval Zanella
2022-05-12 12:59 ` [PATCH v2 3/4] stdio: Remove the usage of $(fno-unit-at-a-time) for siglist.c Adhemerval Zanella
2022-05-12 17:06   ` Fangrui Song
2022-05-12 20:04     ` Adhemerval Zanella
2022-05-12 12:59 ` [PATCH v2 4/4] Remove configure fno_unit_at_a_time Adhemerval Zanella
2022-05-12 17:07   ` Fangrui Song

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=20220512125931.523712-1-adhemerval.zanella@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).