libgcc: Export XF, TF, HF and BFmode specific _BitInt symbols from libgcc_s.so.1 [PR113700]

Rainer pointed out that __PFX__ and __FIXPTPFX__ prefix replacement is done
solely for libgcc-std.ver.in and not for the *.ver files in config.
I've used the __PFX__ prefix even in config/i386/libgcc-glibc.ver because it
was used for similar symbols in libgcc-std.ver.in, and that results in those
symbols being STB_LOCAL in libgcc_s.so.1.  Tests still work because gcc by
default uses -static-libgcc when linking (unlike g++ etc.), but would
have failed when using -shared-libgcc (but I see nothing in the testsuite
actually testing with -shared-libgcc, so am not adding tests).

With the patch, libgcc_s.so.1 now exports
__fixtfbitint@@GCC_14.0.0 FUNC GLOBAL DEFAULT
__fixxfbitint@@GCC_14.0.0 FUNC GLOBAL DEFAULT
__floatbitintbf@@GCC_14.0.0 FUNC GLOBAL DEFAULT
__floatbitinthf@@GCC_14.0.0 FUNC GLOBAL DEFAULT
__floatbitinttf@@GCC_14.0.0 FUNC GLOBAL DEFAULT
__floatbitintxf@@GCC_14.0.0 FUNC GLOBAL DEFAULT
on x86_64-linux which it wasn't before.

2024-02-02  Jakub Jelinek  <jakub@redhat.com>

	PR target/113700
	* config/i386/libgcc-glibc.ver (GCC_14.0.0): Remove __PFX prefixes
	from symbol names.
This commit is contained in:
Jakub Jelinek 2024-02-02 11:46:34 +01:00
parent cc13e60ba7
commit 9f5caef53e

View file

@ -229,10 +229,10 @@ GCC_13.0.0 {
%inherit GCC_14.0.0 GCC_13.0.0 %inherit GCC_14.0.0 GCC_13.0.0
GCC_14.0.0 { GCC_14.0.0 {
__PFX__fixxfbitint __fixxfbitint
__PFX__fixtfbitint __fixtfbitint
__PFX__floatbitintbf __floatbitintbf
__PFX__floatbitinthf __floatbitinthf
__PFX__floatbitintxf __floatbitintxf
__PFX__floatbitinttf __floatbitinttf
} }