summaryrefslogtreecommitdiff
path: root/contrib/gcc/config/s390/libgcc-glibc.ver
diff options
context:
space:
mode:
Diffstat (limited to 'contrib/gcc/config/s390/libgcc-glibc.ver')
-rw-r--r--contrib/gcc/config/s390/libgcc-glibc.ver33
1 files changed, 33 insertions, 0 deletions
diff --git a/contrib/gcc/config/s390/libgcc-glibc.ver b/contrib/gcc/config/s390/libgcc-glibc.ver
index 1d9e22904133d..e9413d0fff1e6 100644
--- a/contrib/gcc/config/s390/libgcc-glibc.ver
+++ b/contrib/gcc/config/s390/libgcc-glibc.ver
@@ -39,3 +39,36 @@ GLIBC_2.2 {
}
%endif
+# With GCC 4.1.0 long double 128 bit support was introduced. The
+# following symbols coming from libgcc are enabled when -mlong-double-128
+# is specified. These lines make the symbols to get a @@GCC_4.1.0 attached.
+
+%exclude {
+ __divtc3
+ __multc3
+ __powitf2
+ __fixtfti
+ __fixunstfti
+ __floattitf
+
+ __fixtfdi
+ __fixunstfdi
+ __floatditf
+}
+
+GCC_4.1.0 {
+ __divtc3
+ __multc3
+ __powitf2
+
+%ifdef __s390x__
+ __fixtfti
+ __fixunstfti
+ __floattitf
+
+%else
+ __fixtfdi
+ __fixunstfdi
+ __floatditf
+%endif
+}