[0/7] Reliable CPU compatibility diagnostics in ld.so

Message ID cover.1642162312.git.fweimer@redhat.com
Headers
Series Reliable CPU compatibility diagnostics in ld.so |

Message

Florian Weimer Jan. 14, 2022, 12:40 p.m. UTC
  This series enables reliable CPU compatibility diagnostics by building
the early parts of the dynamic loader with an older ISA level than the
rest of glibc.

I tested this with our POWER9 build flags (running on POWER8), and with
-march=x86-64-v4 on a x86-64-v3 system.  In both cases, an accurate
erorr is printed.  Also built with build-many-glibcs.py, and tested on
i686-linux-gnu and x86_64-linux-gnu,.

Florian Weimer (7):
  x86: HAVE_X86_LAHF_SAHF, HAVE_X86_MOVBE and -march=x86-64-vN (bug
    28782)
  Generate gcc-macros.h
  elf: Split dl-printf.c from dl-misc.c
  Add --early-cflags configure option
  powerpc64le: Use <gcc-macros.h> in early HWCAP check
  x86: Add x86-64-vN check to early startup
  s390x: Use <gcc-macros.h> in early HWCAP check

 Makeconfig                                    |   9 +
 config.make.in                                |   1 +
 configure                                     |  13 +
 configure.ac                                  |   6 +
 elf/Makefile                                  |  10 +-
 elf/dl-misc.c                                 | 281 +----------------
 elf/dl-printf.c                               | 292 ++++++++++++++++++
 manual/install.texi                           |   7 +
 sysdeps/powerpc/powerpc64/le/dl-hwcap-check.h |   9 +-
 sysdeps/s390/s390-64/dl-hwcap-check.h         |   5 +-
 sysdeps/x86/Makefile                          |   1 +
 sysdeps/x86/configure                         |   4 +-
 sysdeps/x86/configure.ac                      |   4 +-
 sysdeps/x86/dl-get-cpu-features.c             |  31 +-
 14 files changed, 384 insertions(+), 289 deletions(-)
 create mode 100644 elf/dl-printf.c


base-commit: 4997a533ae4b51ef66a6b68862b7578a7acb82df