]> git.ipfire.org Git - thirdparty/gcc.git/commit
sparc: Remove HAVE_AS_SPARC_UA_PCREL and HAVE_AS_SPARC_UA_PCREL_HIDDEN
authorRainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
Thu, 15 Jan 2026 08:50:04 +0000 (09:50 +0100)
committerRainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
Thu, 15 Jan 2026 08:50:04 +0000 (09:50 +0100)
commit1b2ece60f28d143dc4eef4c44973d5ff84e7dc6c
treec4b171143505901f525dcf6e428c7ac59c41dd86
parentfebb0eac64c4a771c9f7260d4c28c5aca707c95e
sparc: Remove HAVE_AS_SPARC_UA_PCREL and HAVE_AS_SPARC_UA_PCREL_HIDDEN

The SPARC backend currently has workarounds for two bugs in old versions
of the assembler and linker.  However, I find both
HAVE_AS_SPARC_UA_PCREL and HAVE_AS_SPARC_UA_PCREL_HIDDEN are always
defined as 1 on both Solaris/SPARC and Linux/sparc64.

I've checked all combinations of the assemblers supported on SPARC: the
Solaris 11.4 FCS as and ld, current Solaris as and ld, gas and gld 2.30
and 2.45.  The tests work on all of those, so the workarounds can be
removed.

Bootstrapped on sparc-sun-solaris2.11 (as and gas) and
sparc64-unknown-linux-gnu.

2026-01-13  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>

gcc:
* configure.ac (gcc_cv_as_sparc_ua_pcrel): Remove.
(gcc_cv_as_sparc_ua_pcrel_hidden): Likewise.
* configure: Regenerate.
* config.in: Regenerate.

* config/sparc/sparc.h (ASM_PREFERRED_EH_DATA_FORMAT): Remove
!HAVE_AS_SPARC_UA_PCREL, !HAVE_AS_SPARC_UA_PCREL_HIDDEN support.
* config/sparc/sol2.h (ASM_PREFERRED_EH_DATA_FORMAT): Remove.
* config/sparc/sparc.cc (TARGET_ASM_OUTPUT_DWARF_DTPREL): Remove
HAVE_AS_SPARC_UA_PCREL guard.
gcc/config.in
gcc/config/sparc/sol2.h
gcc/config/sparc/sparc.cc
gcc/config/sparc/sparc.h
gcc/configure
gcc/configure.ac