This is the mail archive of the gcc-patches@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

[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 {

Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]