This is the mail archive of the
gcc-patches@gcc.gnu.org
mailing list for the GCC project.
[PATCH]: TFmode/TImode support for x86_64 - addendum
Joseph S. Myers wrote:
* soft-fp/extendxftf.c: New file.
* soft-fp/trunctfxf.c: New file.
It looks like these functions need to be entered in GCC_4.3.0 in
libgcc-std.ver. Actually, to get the right versions for the other symbols
you also need to update libgcc-x86_64-glibc.ver: the symbols with earlier
versions in libgcc-std.ver but not previously in libgcc for this target
should appear first in a %exclude section to avoid them getting the older
version numbers by default, then in a GCC_4.3.0 section to give them the
new number instead.
Attached patch implements the above suggestion. Patch was bootstrapped
(together with soft-fp patch) on x86_64-pc-linux-gnu and regression
tested for all default languages.
2007-05-04 Uros Bizjak <ubizjak@gmail.com>
* libgcc-std.ver (__extendxftf2): Added to GCC_4.3.0 section.
(__trunctfxf2): Ditto.
* config/i386/libgcc-x86_64-glibc.ver (__addtf3, __divtf3, __eqtf2,
__extenddftf2, __extendsftf2, __fixdfti, __fixsfti, __fixtfdi,
__fixtfsi, __fixtfti, __fixunsdfti, __fixunssfti, __fixunstfdi,
__fixunstfsi, __fixunstfti, __floatditf, __floatsitf, __floattidf,
__floattisf, __floattitf, __floatunditf, __floatunsitf,
__floatuntidf,
__floatuntisf, __floatuntitf, __getf2, __letf2, __multf3, __negtf2,
__subtf3, __trunctfdf2, __trunctfsf2, __unordtf2): Exclude and
add to GCC_4.3.0 section.
Uros.
Index: libgcc-std.ver
===================================================================
--- libgcc-std.ver (revision 124412)
+++ libgcc-std.ver (working copy)
@@ -283,4 +283,6 @@
__emutls_get_address
__emutls_register_common
__ffssi2
+ __extendxftf2
+ __trunctfxf2
}
Index: config/i386/libgcc-x86_64-glibc.ver
===================================================================
--- config/i386/libgcc-x86_64-glibc.ver (revision 124412)
+++ config/i386/libgcc-x86_64-glibc.ver (working copy)
@@ -4,6 +4,78 @@
# maintain enough binary compatibility to allow future versions of glibc
# to defer implementation of these routines to libgcc.so via DT_AUXILIARY.
+%exclude {
+ __addtf3
+ __divtf3
+ __eqtf2
+ __extenddftf2
+ __extendsftf2
+ __fixdfti
+ __fixsfti
+ __fixtfdi
+ __fixtfsi
+ __fixtfti
+ __fixunsdfti
+ __fixunssfti
+ __fixunstfdi
+ __fixunstfsi
+ __fixunstfti
+ __floatditf
+ __floatsitf
+ __floattidf
+ __floattisf
+ __floattitf
+ __floatunditf
+ __floatunsitf
+ __floatuntidf
+ __floatuntisf
+ __floatuntitf
+ __getf2
+ __letf2
+ __multf3
+ __negtf2
+ __subtf3
+ __trunctfdf2
+ __trunctfsf2
+ __unordtf2
+}
+
+GCC_4.3.0 {
+ __addtf3
+ __divtf3
+ __eqtf2
+ __extenddftf2
+ __extendsftf2
+ __fixdfti
+ __fixsfti
+ __fixtfdi
+ __fixtfsi
+ __fixtfti
+ __fixunsdfti
+ __fixunssfti
+ __fixunstfdi
+ __fixunstfsi
+ __fixunstfti
+ __floatditf
+ __floatsitf
+ __floattidf
+ __floattisf
+ __floattitf
+ __floatunditf
+ __floatunsitf
+ __floatuntidf
+ __floatuntisf
+ __floatuntitf
+ __getf2
+ __letf2
+ __multf3
+ __negtf2
+ __subtf3
+ __trunctfdf2
+ __trunctfsf2
+ __unordtf2
+}
+
%ifndef __x86_64__
%inherit GCC_3.0 GLIBC_2.0
GLIBC_2.0 {