summaryrefslogtreecommitdiffstats
path: root/libgcc/config
diff options
context:
space:
mode:
authorro <ro@138bc75d-0d04-0410-961f-82ee72b054a4>2011-06-03 13:23:35 +0000
committerro <ro@138bc75d-0d04-0410-961f-82ee72b054a4>2011-06-03 13:23:35 +0000
commit541346b9f18a694a8eed52aaa1ee613f21f0a545 (patch)
treedd0545b550441adbc780cb3b6024f826e84539f9 /libgcc/config
parent290a6dcffaee1d5e390fd4f2bd410888bd0ea566 (diff)
downloadppe42-gcc-541346b9f18a694a8eed52aaa1ee613f21f0a545.tar.gz
ppe42-gcc-541346b9f18a694a8eed52aaa1ee613f21f0a545.zip
gcc:
* config/alpha/t-osf5: Remove. * config/alpha/t-osf-pthread: Remove. * config.gcc (alpha*-dec-osf5.1*): Set tmake_file to t-slibgcc-dummy. * mkmap-flat.awk: Handle osf_export for Tru64 UNIX linker -input file. libgcc: * configure.ac (target_thread_file): Determine thread model. * configure: Regenerate. * config.host (alpha*-dec-osf5.1*): Set tmake_file, extra_parts. * config/alpha/t-alpha: New file. * config/alpha/t-crtfm: Use $<. * config/alpha/t-ieee: New file. * config/alpha/t-osf-pthread: New file. * config/alpha/t-slibgcc-osf: New file. * config/alpha/libgcc-osf5.ver: New file. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@174603 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'libgcc/config')
-rw-r--r--libgcc/config/alpha/libgcc-osf5.ver58
-rw-r--r--libgcc/config/alpha/t-alpha2
-rw-r--r--libgcc/config/alpha/t-crtfm3
-rw-r--r--libgcc/config/alpha/t-ieee2
-rw-r--r--libgcc/config/alpha/t-osf-pthread5
-rw-r--r--libgcc/config/alpha/t-slibgcc-osf29
6 files changed, 97 insertions, 2 deletions
diff --git a/libgcc/config/alpha/libgcc-osf5.ver b/libgcc/config/alpha/libgcc-osf5.ver
new file mode 100644
index 00000000000..4266928d1cf
--- /dev/null
+++ b/libgcc/config/alpha/libgcc-osf5.ver
@@ -0,0 +1,58 @@
+# Copyright (C) 2011 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/>.
+
+# Tru64 UNIX specific additions to libgcc-std.ver.
+
+GCC_4.7.0 {
+ __udiv_qrnnd
+ # Beware *not* to hide the POSIX threads related symbols provided by
+ # gthr-posix.c, as this would prevent their preemption by real symbols.
+ __pthread_cancel
+ __pthread_cond_broadcast
+ __pthread_cond_destroy
+ __pthread_cond_init
+ __pthread_cond_signal
+ __pthread_cond_timedwait
+ __pthread_cond_wait
+ __pthread_create
+ __pthread_detach
+ __pthread_exit
+ __pthread_getspecific
+ __pthread_join
+ __pthread_mutex_destroy
+ __pthread_mutex_init
+ __pthread_mutex_lock
+ __pthread_mutex_trylock
+ __pthread_mutex_unlock
+ __pthread_once
+ __pthread_self
+ __pthread_setspecific
+ pthread_attr_destroy
+ pthread_attr_init
+ pthread_attr_setdetachstate
+ pthread_getschedparam
+ pthread_key_create
+ pthread_key_delete
+ pthread_mutexattr_destroy
+ pthread_mutexattr_init
+ pthread_mutexattr_settype
+ pthread_setschedparam
+ sched_get_priority_max
+ sched_get_priority_min
+ sched_yield
+}
diff --git a/libgcc/config/alpha/t-alpha b/libgcc/config/alpha/t-alpha
new file mode 100644
index 00000000000..14c72d0808b
--- /dev/null
+++ b/libgcc/config/alpha/t-alpha
@@ -0,0 +1,2 @@
+# This is a support routine for longlong.h, used by libgcc2.c.
+LIB2ADD += $(gcc_srcdir)/config/alpha/qrnnd.asm
diff --git a/libgcc/config/alpha/t-crtfm b/libgcc/config/alpha/t-crtfm
index 48c21d88f24..5060c156451 100644
--- a/libgcc/config/alpha/t-crtfm
+++ b/libgcc/config/alpha/t-crtfm
@@ -2,5 +2,4 @@
# while migrating this rule from the GCC directory, but I do not
# know why it is necessary if no other crt file uses it.
crtfastmath.o: $(gcc_srcdir)/config/alpha/crtfastmath.c
- $(gcc_compile) -frandom-seed=gcc-crtfastmath -c \
- $(gcc_srcdir)/config/alpha/crtfastmath.c
+ $(gcc_compile) -frandom-seed=gcc-crtfastmath -c $<
diff --git a/libgcc/config/alpha/t-ieee b/libgcc/config/alpha/t-ieee
new file mode 100644
index 00000000000..5fdc729ec52
--- /dev/null
+++ b/libgcc/config/alpha/t-ieee
@@ -0,0 +1,2 @@
+# All alphas get an IEEE complaint set of libraries.
+HOST_LIBGCC2_CFLAGS += -mieee
diff --git a/libgcc/config/alpha/t-osf-pthread b/libgcc/config/alpha/t-osf-pthread
new file mode 100644
index 00000000000..c51f375a048
--- /dev/null
+++ b/libgcc/config/alpha/t-osf-pthread
@@ -0,0 +1,5 @@
+# Compile libgcc2 with POSIX threads supports
+HOST_LIBGCC2_CFLAGS += -pthread
+
+# Provide dummy POSIX threads functions
+LIB2ADD += $(gcc_srcdir)/gthr-posix.c
diff --git a/libgcc/config/alpha/t-slibgcc-osf b/libgcc/config/alpha/t-slibgcc-osf
new file mode 100644
index 00000000000..33a07a7b6aa
--- /dev/null
+++ b/libgcc/config/alpha/t-slibgcc-osf
@@ -0,0 +1,29 @@
+# Copyright (C) 2000, 2001, 2003, 2004, 2005, 2011
+# 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/>.
+
+# Build a shared libgcc library with the Tru64 UNIX linker.
+
+SHLIB_LDFLAGS = -Wl,-msym -Wl,-set_version,gcc.1 -Wl,-soname,$(SHLIB_SONAME) \
+ -Wl,-hidden -Wl,-input,$(SHLIB_MAP)
+
+SHLIB_MKMAP = $(gcc_srcdir)/mkmap-flat.awk
+SHLIB_MKMAP_OPTS = -v osf_export=1
+# Needed so mkmap-flat.awk can parse the nm output.
+SHLIB_NM_FLAGS = -Bg
+SHLIB_MAPFILES = libgcc-std.ver $(srcdir)/config/alpha/libgcc-osf5.ver
OpenPOWER on IntegriCloud