aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--gcc/ChangeLog11
-rw-r--r--gcc/config.gcc3
-rw-r--r--gcc/libgcc-std.ver5
-rw-r--r--libgcc/ChangeLog41
-rw-r--r--libgcc/config.host5
-rw-r--r--libgcc/config/i386/libgcc-bsd.ver108
-rw-r--r--libgcc/config/i386/t-freebsd2
7 files changed, 155 insertions, 20 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog
index 3d10080..0c260f1 100644
--- a/gcc/ChangeLog
+++ b/gcc/ChangeLog
@@ -1,3 +1,10 @@
+2010-09-01 Uros Bizjak <ubizjak@gmail.com>
+
+ * config.gcc (i[34567]86-*-freebsd*, x86_64-*-freebsd*): Add
+ i386/t-fprules-softfp and soft-fp/t-softfp to tmake_file.
+
+ * libgcc-std.ver (GCC_4.6.0): Define version.
+
2010-08-31 Eric Botcazou <ebotcazou@adacore.com>
* tree-nested.c (convert_all_function_calls): Iterate until after the
@@ -32,7 +39,7 @@
(arm_function_arg_advance): Likewise.
(TARGET_FUNCTION_ARG, TARGET_FUNCTION_ARG_ADVANCE): Define.
-2010-08-31 Andi Kleen <ak@linux.intel.com>
+2010-08-31 Andi Kleen <ak@linux.intel.com>
* common.opt (fwhopr=): Update for -fwhopr=jobserver
* doc/invoke.texi (fwhopr): Document -fwhopr=jobserver.
@@ -203,7 +210,7 @@
* config/xtensa/xtensa.h (FUNCTION_ARG, FUNCTION_ARG_ADVANCE): Delete.
(FUNCTION_INCOMING_ARG): Delete.
* config/xtensa/xtensa.c (function_arg_advance): Rename to...
- (xtensa_function_arg_advance): ...this. Make static. Take a const_tree
+ (xtensa_function_arg_advance): ...this. Make static. Take a const_tree
and a bool.
(function_arg): Rename to...
(xtensa_function_arg_1): ...this. Make static. Take a const_tree and
diff --git a/gcc/config.gcc b/gcc/config.gcc
index 148c99b..5919ac5 100644
--- a/gcc/config.gcc
+++ b/gcc/config.gcc
@@ -3485,6 +3485,9 @@ case ${target} in
i[34567]86-*-cygwin* | i[34567]86-*-mingw* | x86_64-*-mingw*)
tmake_file="${tmake_file} i386/t-fprules-softfp soft-fp/t-softfp"
;;
+ i[34567]86-*-freebsd* | x86_64-*-freebsd*)
+ tmake_file="${tmake_file} i386/t-fprules-softfp soft-fp/t-softfp"
+ ;;
ia64*-*-linux*)
tmake_file="${tmake_file} ia64/t-fprules-softfp soft-fp/t-softfp"
;;
diff --git a/gcc/libgcc-std.ver b/gcc/libgcc-std.ver
index 5aaff5e..1f24f17 100644
--- a/gcc/libgcc-std.ver
+++ b/gcc/libgcc-std.ver
@@ -213,6 +213,7 @@ GCC_3.3.1 {
%inherit GCC_3.3.2 GCC_3.3.1
GCC_3.3.2 {
}
+
%inherit GCC_3.3.4 GCC_3.3.2
GCC_3.3.4 {
__unorddf2
@@ -1910,3 +1911,7 @@ GCC_4.5.0 {
__unordxf2
__unordtf2
}
+
+%inherit GCC_4.6.0 GCC_4.5.0
+GCC_4.6.0 {
+}
diff --git a/libgcc/ChangeLog b/libgcc/ChangeLog
index c907fe1..d3bad75 100644
--- a/libgcc/ChangeLog
+++ b/libgcc/ChangeLog
@@ -1,3 +1,10 @@
+2010-09-01 Uros Bizjak <ubizjak@gmail.com>
+
+ * config.host (i[34567]86-*-freebsd*, x86_64-*-freebsd*): Add
+ i386/t-freebsd to tmake_file.
+ * config/i386/t-freebsd: New file.
+ * config/i386/libgcc-bsd.ver: New file.
+
2010-07-23 Nathan Froyd <froydnj@codesourcery.com>
* config.host (powerpc*-eabispe*): Set tmake_file.
@@ -100,23 +107,23 @@
2009-11-11 Jon Beniston <jon@beniston.com>
- * config.host: Add lm32 targets.
- * config/lm32: New directory.
- * config/lm32/libgcc_lm32.h: New file.
- * config/lm32/_mulsi3.c: New file.
- * config/lm32/_udivmodsi4.c: New file.
- * config/lm32/_divsi3.c: New file.
- * config/lm32/_modsi3.c: New file.
- * config/lm32/_udivsi3.c: New file.
- * config/lm32/_umodsi3.c: New file.
- * config/lm32/_lshrsi3.S: New file.
- * config/lm32/_ashrsi3.S: New file.
- * config/lm32/_ashlsi3.S: New file.
- * config/lm32/crti.S: New file.
- * config/lm32/crtn.S: New file.
- * config/lm32/t-lm32: New file.
- * config/lm32/t-elf: New file.
- * config/lm32/t-uclinux: New file.
+ * config.host: Add lm32 targets.
+ * config/lm32: New directory.
+ * config/lm32/libgcc_lm32.h: New file.
+ * config/lm32/_mulsi3.c: New file.
+ * config/lm32/_udivmodsi4.c: New file.
+ * config/lm32/_divsi3.c: New file.
+ * config/lm32/_modsi3.c: New file.
+ * config/lm32/_udivsi3.c: New file.
+ * config/lm32/_umodsi3.c: New file.
+ * config/lm32/_lshrsi3.S: New file.
+ * config/lm32/_ashrsi3.S: New file.
+ * config/lm32/_ashlsi3.S: New file.
+ * config/lm32/crti.S: New file.
+ * config/lm32/crtn.S: New file.
+ * config/lm32/t-lm32: New file.
+ * config/lm32/t-elf: New file.
+ * config/lm32/t-uclinux: New file.
2009-10-26 Nick Clifton <nickc@redhat.com>
diff --git a/libgcc/config.host b/libgcc/config.host
index 35dd250..9d9ae3a 100644
--- a/libgcc/config.host
+++ b/libgcc/config.host
@@ -279,8 +279,10 @@ i[34567]86-*-elf*)
x86_64-*-elf*)
;;
i[34567]86-*-freebsd*)
+ tmake_file="${tmake_file} i386/t-freebsd"
;;
x86_64-*-freebsd*)
+ tmake_file="${tmake_file} i386/t-freebsd"
;;
i[34567]86-*-netbsdelf*)
;;
@@ -608,7 +610,8 @@ i[34567]86-*-darwin* | x86_64-*-darwin* | \
i[34567]86-*-linux* | x86_64-*-linux* | \
i[34567]86-*-gnu* | \
i[34567]86-*-solaris2* | \
- i[34567]86-*-cygwin* | i[34567]86-*-mingw* | x86_64-*-mingw*)
+ i[34567]86-*-cygwin* | i[34567]86-*-mingw* | x86_64-*-mingw* | \
+ i[34567]86-*-freebsd* | x86_64-*-freebsd*)
if test "${host_address}" = 32; then
tmake_file="${tmake_file} t-softfp i386/${host_address}/t-fprules-softfp"
fi
diff --git a/libgcc/config/i386/libgcc-bsd.ver b/libgcc/config/i386/libgcc-bsd.ver
new file mode 100644
index 0000000..d9d74f9
--- /dev/null
+++ b/libgcc/config/i386/libgcc-bsd.ver
@@ -0,0 +1,108 @@
+# Copyright (C) 2010 Free Software Foundation, Inc.
+#
+# This file is part of GCC.
+#
+# GCC is free software; you can redistribute it and/or modify
+# it under the terms of the GNU General Public License as published by
+# the Free Software Foundation; either version 3, or (at your option)
+# any later version.
+#
+# GCC is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+# GNU General Public License for more details.
+#
+# You should have received a copy of the GNU General Public License
+# along with GCC; see the file COPYING3. If not see
+# <http://www.gnu.org/licenses/>.
+
+# 128 bit long double support was introduced with GCC 4.6.0 for FreeBSD.
+# These lines make the symbols to get a @@GCC_4.6.0.
+
+%exclude {
+ __addtf3
+ __copysigntf3
+ __divtc3
+ __divtf3
+ __eqtf2
+ __extenddftf2
+ __extendsftf2
+ __extendxftf2
+ __fabstf2
+ __fixtfdi
+ __fixtfsi
+ __fixtfti
+ __fixunstfdi
+ __fixunstfsi
+ __fixunstfti
+ __floatditf
+ __floatsitf
+ __floattitf
+ __floatunditf
+ __floatunsitf
+ __floatuntitf
+ __getf2
+ __gttf2
+ __letf2
+ __lttf2
+ __multc3
+ __multf3
+ __negtf2
+ __netf2
+ __powitf2
+ __subtf3
+ __trunctfdf2
+ __trunctfsf2
+ __trunctfxf2
+ __unordtf2
+}
+
+GCC_4.6.0 {
+ __addtf3
+%ifndef __x86_64__
+ __copysigntf3
+%endif
+ __divtc3
+ __divtf3
+ __eqtf2
+ __extenddftf2
+ __extendsftf2
+ __extendxftf2
+%ifndef __x86_64__
+ __fabstf2
+%endif
+ __fixtfdi
+ __fixtfsi
+%ifdef __x86_64__
+ __fixtfti
+%endif
+ __fixunstfdi
+ __fixunstfsi
+%ifdef __x86_64__
+ __fixunstfti
+%endif
+ __floatditf
+ __floatsitf
+%ifdef __x86_64__
+ __floattitf
+%endif
+ __floatunditf
+ __floatunsitf
+%ifdef __x86_64__
+ __floatuntitf
+%endif
+ __getf2
+ __gttf2
+ __letf2
+ __lttf2
+ __multc3
+ __multf3
+ __negtf2
+ __netf2
+ __powitf2
+ __subtf3
+ __trunctfdf2
+ __trunctfsf2
+ __trunctfxf2
+ __unordtf2
+}
diff --git a/libgcc/config/i386/t-freebsd b/libgcc/config/i386/t-freebsd
new file mode 100644
index 0000000..4f2bd20
--- /dev/null
+++ b/libgcc/config/i386/t-freebsd
@@ -0,0 +1,2 @@
+# Add support for the introduction of 128-bit long double.
+SHLIB_MAPFILES += $(srcdir)/config/i386/libgcc-bsd.ver