Move shlib support to toplevel libgcc
authorRainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
Wed, 2 Nov 2011 10:49:46 +0000 (10:49 +0000)
committerRainer Orth <ro@gcc.gnu.org>
Wed, 2 Nov 2011 10:49:46 +0000 (10:49 +0000)
gcc:
PR translation/45116
* Makefile.in (slibdir): Remove, don't export.
(SHLIB_NM_FLAGS): Remove.
(libgcc.mvars): Don't emit SHLIB_LINK, SHLIB_INSTALL,
SHLIB_DLLDIR, SHLIB_EXT, SHLIB_MKMAP, SHLIB_MKMAP_OPTS,
SHLIB_MAPFILES, SHLIB_NM_FLAGS.
(DRIVER_DEFINES): Test SHLIB instead of SHLIB_LINK.
(gcc.o): Pass SHLIB instead of SHLIB_LINK.
(gccspec.o): Likewise.
(installdirs): Don't create $(DESTDIR)$(slibdir).
* configure.ac (slibdir): Remove.
* configure: Regenerate.
* libgcc-libsystem.ver: Move to ../libgcc/config.
* mkmap-flat.awk, mkmap-symver.awk: Move to ../libgcc.
* config/libgcc-glibc.ver: Move to ../libgcc/config.
* config/t-libunwind (SHLIB_LC): Remove.
* config/t-linux (SHLIB_MAPFILES): Remove.
* config/t-slibgcc-dummy: Rename to config/t-slibgcc.
* config/t-slibgcc-elf-ver: Remove.
* config/t-slibgcc-libgcc, config/t-slibgcc-nolc-override: Move to
../libgcc/config.
* config/alpha/libgcc-alpha-ldbl.ver, config/alpha/t-linux: Move
to ../libgcc/config/alpha.
* config/alpha/t-vms (shlib_version, SHLIB_EXT, SHLIB_OBJS,
SHLIB_NAME, SHLIB_MULTILIB, SHLIB_INSTALL, SHLIB_SYMVEC,
SHLIB_SYMVECX2, SHLIB_LINK): Remove.
* config/arm/libgcc-bpabi.ver: Move to ../libgcc/config/arm.
* config/arm/t-bpabi (SHLIB_MAPFILES): Remove.
* config/arm/t-netbsd (SHLIB_EXT, SHLIB_NAME, SHLIB_SONAME,
SHLIB_OBJS, SHLIB_LINK, SHLIB_INSTALL): Remove.
* config/arm/t-symbian (SHLIB_LC): Remove.
* config/bfin/libgcc-bfin.ver: Move to
../libgcc/config/bfin/libgcc-glibc.ver.
* config/bfin/t-bfin-linux (SHLIB_MAPFILES): Remove.
* config/c6x/libgcc-c6xeabi.ver: Move to
../libgcc/config/c6x/libgcc-eabi.ver.
* config/c6x/t-c6x-elf (SHLIB_MAPFILES): Remove.
* config/cris/libgcc.ver: Move to
../libgcc/config/cris/libgcc-glibc.ver.
* config/cris/t-linux (SHLIB_MAPFILES): Remove.
* config/frv/libgcc-frv.ver: Move to ../libgcc/config/frv.
* config/frv/t-linux (SHLIB_MAPFILES): Remove.
* config/i386/darwin-libgcc.10.4.ver: Move to
../libgcc/config/i386/libgcc-darwin.10.4.ver.
* config/i386/darwin-libgcc.10.5.ver: Move to
../libgcc/config/i386/libgcc-darwin.10.5.ver.
* config/i386/libgcc-glibc.ver: Move to ../libgcc/config/i386.
* config/i386/t-cygming (SHLIB_EXT, SHLIB_IMPLIB, SHLIB_SOVERSION,
SHLIB_SONAME, SHLIB_MAP, SHLIB_OBJS, SHLIB_DIR, SHLIB_SLIBDIR_QUAL)
SHLIB_PTHREAD_CFLAG, SHLIB_PTHREAD_LDFLAG, SHLIB_LINK,
SHLIB_INSTALL, SHLIB_MKMAP, SHLIB_MKMAP_OPTS, SHLIB_MAPFILES):
Remove.
* config/i386/t-cygwin (SHLIB_LC, SHLIB_EH_EXTENSION,
SHLIB_IMPLIB, SHLIB_SONAME, SHLIB_MKMAP_OPTS): Remove.
* config/i386/t-dlldir, config/i386/t-dlldir-x: Move to
../libgcc/config/i386.
* config/i386/t-dw2-eh, config/i386/t-sjlj-eh: Move to
../libgcc/config/i386.
* config/i386/t-linux: Move to ../libgcc/config/i386.
* config/i386/t-mingw-pthread: Move to ../libgcc/config/i386.
* config/i386/t-mingw-w32 (SHLIB_LC): Remove.
* config/i386/t-mingw-w64: Likewise.
* config/i386/t-mingw32: Remove.
* config/ia64/libgcc-glibc.ver, config/ia64/libgcc-ia64.ver: Move
to ../libgcc/config/ia64.
* config/ia64/t-glibc: Remove.
* config/ia64/t-hpux (SHLIB_EXT, SHLIB_LINK, SHLIB_INSTALL): Remove.
* config/ia64/t-ia64 (SHLIB_MAPFILES): Remove.
* config/ia64/t-vms (shlib_version, SHLIB_EXT, SHLIB_OBJS,
SHLIB_NAME, SHLIB_MULTILIB, SHLIB_INSTALL, SHLIB_LINK): Remove.
* config/ia64/vms_symvec_libgcc_s.opt: Remove.
* config/m32r/libgcc-glibc.ver: Move to ../libgcc/config/m32r.
* config/m32r/t-linux (SHLIB_MAPFILES): Remove.
* config/m68k/t-slibgcc-elf-ver: Move to ../libgcc/config/m68k.
* config/mips/t-libgcc-mips16 (SHLIB_MAPFILES): Remove.
* config/pa/t-hpux-shlib: Move to ../libgcc/config/pa/t-slibgcc-hpux.
* config/pa/t-slibgcc-dwarf-ver, config/pa/t-slibgcc-sjsj-ver:
Move to ../libgcc/config/pa.
* config/rs6000/darwin-libgcc.10.4.ver: Move to
../libgcc/config/rs6000/libgcc-darwin.10.4.ver.
* config/rs6000/darwin-libgcc.10.5.ver: Move to
../libgcc/config/rs6000/libgcc-darwin.10.5.ver.
* config/rs6000/t-aix43 (SHLIB_EXT, SHLIB_LINK, SHLIB_INSTALL,
SHLIB_LIBS, SHLIB_MKMAP, SHLIB_NM_FLAGS, AR_FLAGS_FOR_TARGET): Remove.
* config/rs6000/t-aix52: Likewise.
* config/sh/libgcc-excl.ver, config/sh/libgcc-glibc.ver: Move to
../libgcc/config/sh.
* config/sparc/libgcc-sparc-glibc.ver: Move to
../libgcc/config/sparc/libgcc-glibc.ver.
* config/sparc/t-linux: Move to ../libgcc/config/sparc.
* config/xtensa/t-linux (SHLIB_MAPFILES): Remove.
* config/xtensa/libgcc-xtensa.ver: Move to
../libgcc/config/xtensa/libgcc-glibc.ver.
* config.gcc (*-*-freebsd*): Replace t-slibgcc-elf-ver with
t-slibgcc in tmake_file.
Remove t-slibgcc-nolc-override for *-*-freebsd[34],
*-*-freebsd[34].* with pthreads.
(*-*-linux*, frv-*-*linux*, *-*-kfreebsd*-gnu,
*-*-knetbsd*-gnu, *-*-gnu*, *-*-kopensolaris*-gnu): Replace
t-slibgcc-elf-ver with t-slibgcc in tmake_file.
(*-*-netbsd*): Likewise.
(*-*-solaris2*): Replace t-slibgcc-dummy with t-slibgcc in tmake_file.
(*-*-*vms*): Add t-slibgcc to tmake_file.
(alpha*-*-linux*): Remove alpha/t-linux from tmake_file.
(alpha*-dec-osf5.1*): Replace t-slibgcc-dummy with t-slibgcc in
tmake_file.
(arm*-*-linux*): Remove t-slibgcc-libgcc from tmake_file for
arm*-*-linux-*eabi.
(bfin*-linux-uclibc*): Replace t-slibgcc-dummy with t-slibgcc in
tmake_file.
(crisv32-*-linux*, cris-*-linux*): Likewise.
(hppa*-*-linux*): Remove t-slibgcc-libgcc, pa/t-slibgcc-sjlj-ver,
pa/t-slibgcc-dwarf-ver from tmake_file.
(hppa[12]*-*-hpux10*): Replace pa/t-hpux-shlib with t-slibgcc in
tmake_file.
Remove pa/t-slibgcc-sjlj-ver, pa/t-slibgcc-dwarf-ver from tmake_file.
(hppa*64*-*-hpux11*): Likewise.
(hppa[12]*-*-hpux11*): Likewise.
(i[34567]86-*-darwin*): Replace t-slibgcc-dummy in t-slibgcc in
tmake_file.
(x86_64-*-darwin*): Likewise.
(i[34567]86-*-cygwin*): Remove tmake_eh_file, tmake_dlldir_file.
Add t-slibgcc to tmake_file.
(i[34567]86-*-mingw*, x86_64-*-mingw*): Likewise.
Remove i386/t-mingw32 from tmake_file unless x86_64-w64-*,
i[34567]86-w64-*.
Remove i386/t-mingw-pthread from tmake_file.
(ia64*-*-linux*): Remove ia64/t-glibc from tmake_file.
(ia64*-*-hpux*): Add t-slibgcc to tmake_file.
(ia64-hp-*vms*): Likewise.
(m32r-*-linux*): Replace t-slibgcc-elf-ver with t-slibgcc in
tmake_file.
(m32rle-*-linux*): Likewise.
(m68k-*-linux*): Remove m68k/t-slibgcc-elf-ver from tmake_file.
(microblaze*-linux*): Remove t-slibgcc-elf-ver,
t-slibgcc-nolc-override from tmake_file.
(mips-sgi-irix6.5*): Replace t-slibgcc-dummy with t-slibgcc in
tmake_file.
(powerpc-*-darwin*): Likewise.
(powerpc64-*-darwin*): Likewise.
(powerpc-*-freebsd*): Remove t-slibgcc-libgcc from tmake_file.
(powerpc-*-linux*, powerpc64-*-linux*): Likewise.
(rs6000-ibm-aix4.[3456789]*, powerpc-ibm-aix4.[3456789]*): Add
t-slibgcc to tmake_file.
(rs6000-ibm-aix5.1.*, powerpc-ibm-aix5.1.*): Likewise.
(rs6000-ibm-aix5.2.*, powerpc-ibm-aix5.2.*): Likewise.
(rs6000-ibm-aix5.3.*, powerpc-ibm-aix5.3.*): Likewise.
(rs6000-ibm-aix[6789].*, powerpc-ibm-aix[6789].*): Likewise.
(sparc-*-linux*): Remove sparc/t-linux from tmake_file.
(sparc64-*-linux*): Likewise.
(tic6x-*-uclinux): Replace t-slibgcc-elf-ver with t-slibgcc in
tmake_file.
(i[34567]86-*-linux*, x86_64-*-linux*, i[34567]86-*-kfreebsd*-gnu,
x86_64-*-kfreebsd*-gnu, i[34567]86-*-gnu*): Remove i386/t-linux
from tmake_file.

gcc/cp:
* Make-lang.in (g++spec.o): Pass SHLIB instead of SHLIB_LINK.

gcc/fortran:
* Makef-lang.in (gfortranspec.o): Pass SHLIB instead of SHLIB_LINK.

gcc/go:
* Make-lang.in (gospec.o): Pass SHLIB instead of SHLIB_LINK.

gcc/java:
* Make-lang.in (jvspec.o): Pass SHLIB instead of SHLIB_LINK.

libgcc:
* Makefile.in (SHLIB_NM_FLAGS): Set.
* mkmap-flat.awk, mkmap-symver.awk: New files.
* configure.ac (libgcc_cv_lib_sjlj_exceptions): Check for SjLj
exceptions.
* configure: Regenerate.
* config/libgcc-glibc.ver: New file.
* config/libgcc-libsystem.ver: New file.
* config/t-libunwind (SHLIB_LC): Set.
* config/t-linux: New file.
* config/t-slibgcc (INSTALL_SHLIB): New.
(SHLIB_INSTALL): Use it.
* config/t-slibgcc-darwin (SHLIB_MKMAP): Use $(srcdir) to refer
to mkmap-symver.awk.
(SHLIB_MAPFILES): Don't append, adapt pathname.
(SHLIB_VERPFX): Set.
* config/t-slibgcc-elf-ver (SHLIB_MKMAP): Use $(srcdir) to refer
to mkmap-symver.awk.
* config/t-slibgcc-gld-nover, config/t-slibgcc-hpux,
config/t-slibgcc-libgcc, config/t-slibgcc-vms: New files.
* config/alpha/libgcc-alpha-ldbl.ver, config/alpha/t-linux: New files.
* config/alpha/t-slibgcc-osf (SHLIB_MKMAP): Use $(srcdir) to refer
to mkmap-flat.awk.
* config/arm/t-bpabi (SHLIB_MAPFILES): Set.
* config/bfin/libgcc-glibc.ver, config/bfin/t-linux: New files.
* config/c6x/libgcc-eabi.ver, config/c6x/t-elf: New files.
* config/cris/libgcc-glibc.ver, config/cris/t-linux: New files.
* config/frv/libgcc-frv.ver, config/frv/t-linux: New files.
* config/i386/libgcc-darwin.10.4.ver,
config/i386/libgcc-darwin.10.5.ver, config/i386/libgcc-glibc.ver:
New files.
* config/i386/t-darwin: Remove.
* config/i386/t-darwin64: Likewise.
* config/i386/t-dw2-eh, config/i386/t-sjlj-eh: New files.
* config/i386/t-slibgcc-cygming, config/i386/t-cygwin,
config/i386/t-dlldir, config/i386/t-dlldir-x: New files.
* config/i386/t-linux: New file.
* config/i386/t-mingw32: New file.
* config/ia64/libgcc-glibc.ver, config/ia64/libgcc-ia64.ver: New files.
* config/ia64/t-glibc: Rename to ...
* config/ia64/t-linux: ... this.
(SHLIB_MAPFILES): Set.
* config/ia64/t-glibc-libunwind: Rename to ...
* config/ia64/t-linux-libunwind: ... this.
* config/ia64/t-ia64 (SHLIB_MAPFILES): Set.
* config/ia64/t-slibgcc-hpux: New file.
* config/m32r/libgcc-glibc.ver, config/m32r/t-linux: New files.
* config/m68k/t-slibgcc-elf-ver: New file.
* config/mips/t-mips16 (SHLIB_MAPFILES): Set.
* config/mips/t-slibgcc-irix (SHLIB_MKMAP): Use $(srcdir) to refer
to mkmap-flat.awk.
* config/pa/t-slibgcc-hpux: New file.
* config/pa/t-slibgcc-dwarf-ver, config/pa/t-slibgcc-sjsj-ver: New
files.
* config/rs6000/libgcc-darwin.10.4.ver,
config/rs6000/libgcc-darwin.10.5.ver: New files.
* config/rs6000/libgcc-ppc-glibc.ver: Rename to
config/rs6000/libgcc-glibc.ver.
* config/rs6000/libgcc-ppc64.ver: Rename to
config/rs6000/libgcc-ibm-ldouble.ver.
* config/rs6000/t-darwin (SHLIB_VERPFX): Remove.
* config/rs6000/t-ibm-ldouble (SHLIB_MAPFILES): Adapt filename.
* config/rs6000/t-ldbl128: Rename to ...
* config/rs6000/t-linux: ... this.
(SHLIB_MAPFILES): Adapt filename.
* config/rs6000/t-slibgcc-aix: New file.
* config/sh/libgcc-excl.ver, config/sh/libgcc-glibc.ver: New files.
* config/sh/t-linux (SHLIB_MAPFILES): Use $(srcdir) to refer to
libgcc-excl.ver, libgcc-glibc.ver.
(SHLIB_LINK, SHLIB_INSTALL): Remove.
* config/sparc/libgcc-glibc.ver: New file.
* config/sparc/t-linux: New file.
* config/xtensa/libgcc-glibc.ver, config/xtensa/t-linux: New files.
* config.host (*-*-freebsd*): Add t-slibgcc, t-slibgcc-gld,
t-slibgcc-elf-ver to tmake_file.
Add t-slibgcc-nolc-override to tmake_file for posix threads on
*-*-freebsd[34].
(*-*-linux*, frv-*-*linux*, *-*-kfreebsd*-gnu, *-*-knetbsd*-gnu,
*-*-gnu*, *-*-kopensolaris*-gnu): Add t-slibgcc, t-slibgcc-gld,
t-slibgcc-elf-ver, t-linux to tmake_file.
(*-*-netbsd*): Add t-slibgcc, t-slibgcc-gld, t-slibgcc-elf-ver to
tmake_file.
(alpha*-*-linux*): Add alpha/t-linux to tmake_file.
(alpha64-dec-*vms*): Add t-slibgcc-vms to tmake_file.
(alpha*-dec-*vms*): Likewise.
(arm*-*-freebsd*): Append to tmake_file.
(arm*-*-netbsdelf*): Add t-slibgcc-gld-nover to tmake_file.
(arm*-*-linux*): Add t-slibgcc-libgcc to tmake_file for
arm*-*-linux-*eabi.
(arm*-*-eabi*, arm*-*-symbianelf*): Add t-slibgcc-nolc-override to
tmake_file for arm*-*-symbianelf*.
(bfin*-linux-uclibc*): Append to tmake_file, add bfin/t-linux.
(cris-*-linux*, crisv32-*-linux*): Append to tmake_file, add
cris/t-linux.
(frv-*-*linux*): Append to tmake_file, add frv/t-linux.
(hppa*-*-linux*): Add t-slibgcc-libgcc, pa/t-slibgcc-sjlj-ver,
pa/t-slibgcc-dwarf-ver to tmake_file.
(hppa[12]*-*-hpux10*): Add t-slibgcc, pa/t-slibgcc-sjlj-ver,
pa/t-slibgcc-dwarf-ver, t-slibgcc-hpux, pa/t-slibgcc-hpux to tmake_file.
(hppa*64*-*-hpux11*): Likewise.
(hppa[12]*-*-hpux11*): Likewise.
(x86_64-*-darwin*): Don't override tmake_file, but only keep
i386/t-crtpc, i386/t-crtfm.
(i[34567]86-*-cygwin*): Set tmake_eh_file, tmake_dlldir_file.
Prepend $tmake_eh_file, $tmake_dlldir_file, i386/t-slibgcc-cygming
to tmake_file.
Add i386/t-cygwin to tmake_file.
Prepent i386/t-mingw-pthread to tmake_file for posix threads.
(i[34567]86-*-mingw*): Set tmake_eh_file, tmake_dlldir_file.
Prepend $tmake_eh_file, $tmake_dlldir_file, i386/t-slibgcc-cygming
to tmake_file.
Add i386/t-mingw32 to tmake_file.
(x86_64-*-mingw*): Likewise.
(ia64*-*-freebsd*): Append to tmake_file.
(ia64*-*-linux*): Append to tmake_file.
Replace ia64/t-glibc by ia64/t-linux.
Replace ia64/t-glibc-libunwind by ia64/t-linux-libunwind if using
system libunwind.
(ia64*-*-hpux*): Add t-slibgcc, ia64/t-slibgcc-hpux,
t-slibgcc-hpux to tmake_file.
(ia64-hp-*vms*): Add t-slibgcc-vms to tmake_file.
(m32r-*-linux*): Append to tmake_file, add m32r/t-linux.
(m32rle-*-linux*): Likewise.
(m68k-*-linux*)): Add m68k/t-slibgcc-elf-ver to tmake_file unless
sjlj exceptions.
(microblaze*-linux*): New case.
Append to tmake_file, add t-slibgcc-nolc-override.
(powerpc-*-freebsd*): Add t-slibgcc-libgcc to tmake_file.
(powerpc-*-linux*, powerpc64-*-linux*): Likewise.
Replace rs6000/t-ldbl128 by rs6000/t-linux in tmake_file.
(rs6000-ibm-aix4.[3456789]*, powerpc-ibm-aix4.[3456789]*): Add
rs6000/t-slibgcc-aix to tmake_file.
(rs6000-ibm-aix5.1.*, powerpc-ibm-aix5.1.*): Likewise.
(rs6000-ibm-aix[56789].*, powerpc-ibm-aix[56789].*): Likewise.
(sh-*-elf*, sh[12346l]*-*-elf*, sh-*-linux*)
(sh[2346lbe]*-*-linux*, sh-*-netbsdelf*, shl*-*-netbsdelf*)
(sh5-*-netbsd*, sh5l*-*-netbsd*, sh64-*-netbsd*)
(sh64l*-*-netbsd*): Add t-slibgcc-libgcc to tmake_file for
sh*-*-linux*.
(sparc-*-linux*): Append to tmake_file for *-leon*.
Add sparc/t-linux to tmake_file for non-Leon targets.
(sparc64-*-linux*): Add sparc/t-linux to tmake_file.
(tic6x-*-uclinux): New case.
Add t-slibgcc, t-slibgcc-gld, t-slibgcc-elf-ver to tmake_file.
(tic6x-*-*): Add c6x/t-elf to tmake_file.
(xtensa*-*-linux*): Append to tmake_file, add xtensa/t-linux.
(am33_2.0-*-linux*): Append to tmake_file.
(i[34567]86-*-linux*, x86_64-*-linux*, i[34567]86-*-kfreebsd*-gnu)
(i[34567]86-*-knetbsd*-gnu, i[34567]86-*-gnu*): Also handle
x86_64-*-kfreebsd*-gnu.
Add i386/t-linux to tmake_file.

From-SVN: r180767

159 files changed:
gcc/ChangeLog
gcc/Makefile.in
gcc/config.gcc
gcc/config/alpha/libgcc-alpha-ldbl.ver [deleted file]
gcc/config/alpha/t-linux [deleted file]
gcc/config/alpha/t-vms
gcc/config/arm/libgcc-bpabi.ver [deleted file]
gcc/config/arm/t-bpabi
gcc/config/arm/t-netbsd
gcc/config/arm/t-symbian
gcc/config/bfin/libgcc-bfin.ver [deleted file]
gcc/config/bfin/t-bfin-linux
gcc/config/c6x/libgcc-c6xeabi.ver [deleted file]
gcc/config/c6x/t-c6x-elf
gcc/config/cris/libgcc.ver [deleted file]
gcc/config/cris/t-linux
gcc/config/frv/libgcc-frv.ver [deleted file]
gcc/config/frv/t-linux
gcc/config/i386/darwin-libgcc.10.4.ver [deleted file]
gcc/config/i386/darwin-libgcc.10.5.ver [deleted file]
gcc/config/i386/libgcc-glibc.ver [deleted file]
gcc/config/i386/t-cygming
gcc/config/i386/t-cygwin
gcc/config/i386/t-dlldir [deleted file]
gcc/config/i386/t-dlldir-x [deleted file]
gcc/config/i386/t-dw2-eh [deleted file]
gcc/config/i386/t-linux [deleted file]
gcc/config/i386/t-mingw-pthread [deleted file]
gcc/config/i386/t-mingw-w32
gcc/config/i386/t-mingw-w64
gcc/config/i386/t-mingw32 [deleted file]
gcc/config/i386/t-sjlj-eh [deleted file]
gcc/config/ia64/libgcc-glibc.ver [deleted file]
gcc/config/ia64/libgcc-ia64.ver [deleted file]
gcc/config/ia64/t-glibc [deleted file]
gcc/config/ia64/t-hpux
gcc/config/ia64/t-ia64
gcc/config/ia64/t-vms
gcc/config/ia64/vms_symvec_libgcc_s.opt [deleted file]
gcc/config/libgcc-glibc.ver [deleted file]
gcc/config/m32r/libgcc-glibc.ver [deleted file]
gcc/config/m32r/t-linux
gcc/config/m68k/t-slibgcc-elf-ver [deleted file]
gcc/config/mips/libgcc-mips16.ver [deleted file]
gcc/config/mips/t-libgcc-mips16
gcc/config/pa/t-hpux-shlib [deleted file]
gcc/config/pa/t-slibgcc-dwarf-ver [deleted file]
gcc/config/pa/t-slibgcc-sjlj-ver [deleted file]
gcc/config/rs6000/darwin-libgcc.10.4.ver [deleted file]
gcc/config/rs6000/darwin-libgcc.10.5.ver [deleted file]
gcc/config/rs6000/t-aix43
gcc/config/rs6000/t-aix52
gcc/config/sh/libgcc-excl.ver [deleted file]
gcc/config/sh/libgcc-glibc.ver [deleted file]
gcc/config/sparc/libgcc-sparc-glibc.ver [deleted file]
gcc/config/sparc/t-linux [deleted file]
gcc/config/t-libunwind
gcc/config/t-linux
gcc/config/t-slibgcc [new file with mode: 0644]
gcc/config/t-slibgcc-dummy [deleted file]
gcc/config/t-slibgcc-elf-ver [deleted file]
gcc/config/t-slibgcc-libgcc [deleted file]
gcc/config/t-slibgcc-nolc-override [deleted file]
gcc/config/xtensa/libgcc-xtensa.ver [deleted file]
gcc/config/xtensa/t-linux
gcc/configure
gcc/configure.ac
gcc/cp/ChangeLog
gcc/cp/Make-lang.in
gcc/fortran/ChangeLog
gcc/fortran/Make-lang.in
gcc/go/ChangeLog
gcc/go/Make-lang.in
gcc/java/ChangeLog
gcc/java/Make-lang.in
gcc/libgcc-libsystem.ver [deleted file]
gcc/mkmap-flat.awk [deleted file]
gcc/mkmap-symver.awk [deleted file]
libgcc/ChangeLog
libgcc/Makefile.in
libgcc/config.host
libgcc/config/alpha/libgcc-alpha-ldbl.ver [new file with mode: 0644]
libgcc/config/alpha/t-linux [new file with mode: 0644]
libgcc/config/alpha/t-slibgcc-osf
libgcc/config/arm/libgcc-bpabi.ver [new file with mode: 0644]
libgcc/config/arm/t-bpabi
libgcc/config/bfin/libgcc-glibc.ver [new file with mode: 0644]
libgcc/config/bfin/t-linux [new file with mode: 0644]
libgcc/config/c6x/libgcc-eabi.ver [new file with mode: 0644]
libgcc/config/c6x/t-elf [new file with mode: 0644]
libgcc/config/cris/libgcc-glibc.ver [new file with mode: 0644]
libgcc/config/cris/t-linux [new file with mode: 0644]
libgcc/config/frv/libgcc-glibc.ver [new file with mode: 0644]
libgcc/config/frv/t-linux [new file with mode: 0644]
libgcc/config/i386/libgcc-darwin.10.4.ver [new file with mode: 0644]
libgcc/config/i386/libgcc-darwin.10.5.ver [new file with mode: 0644]
libgcc/config/i386/libgcc-glibc.ver [new file with mode: 0644]
libgcc/config/i386/t-cygwin [new file with mode: 0644]
libgcc/config/i386/t-darwin [deleted file]
libgcc/config/i386/t-darwin64 [deleted file]
libgcc/config/i386/t-dlldir [new file with mode: 0644]
libgcc/config/i386/t-dlldir-x [new file with mode: 0644]
libgcc/config/i386/t-dw2-eh [new file with mode: 0644]
libgcc/config/i386/t-linux [new file with mode: 0644]
libgcc/config/i386/t-mingw-pthread [new file with mode: 0644]
libgcc/config/i386/t-mingw32 [new file with mode: 0644]
libgcc/config/i386/t-sjlj-eh [new file with mode: 0644]
libgcc/config/i386/t-slibgcc-cygming [new file with mode: 0644]
libgcc/config/ia64/libgcc-glibc.ver [new file with mode: 0644]
libgcc/config/ia64/libgcc-ia64.ver [new file with mode: 0644]
libgcc/config/ia64/t-glibc [deleted file]
libgcc/config/ia64/t-glibc-libunwind [deleted file]
libgcc/config/ia64/t-ia64
libgcc/config/ia64/t-linux [new file with mode: 0644]
libgcc/config/ia64/t-linux-libunwind [new file with mode: 0644]
libgcc/config/ia64/t-slibgcc-hpux [new file with mode: 0644]
libgcc/config/libgcc-glibc.ver [new file with mode: 0644]
libgcc/config/libgcc-libsystem.ver [new file with mode: 0644]
libgcc/config/m32r/libgcc-glibc.ver [new file with mode: 0644]
libgcc/config/m32r/t-linux [new file with mode: 0644]
libgcc/config/m68k/t-slibgcc-elf-ver [new file with mode: 0644]
libgcc/config/mips/libgcc-mips16.ver [new file with mode: 0644]
libgcc/config/mips/t-mips16
libgcc/config/mips/t-slibgcc-irix
libgcc/config/pa/t-slibgcc-dwarf-ver [new file with mode: 0644]
libgcc/config/pa/t-slibgcc-hpux [new file with mode: 0644]
libgcc/config/pa/t-slibgcc-sjlj-ver [new file with mode: 0644]
libgcc/config/rs6000/libgcc-darwin.10.4.ver [new file with mode: 0644]
libgcc/config/rs6000/libgcc-darwin.10.5.ver [new file with mode: 0644]
libgcc/config/rs6000/libgcc-glibc.ver [new file with mode: 0644]
libgcc/config/rs6000/libgcc-ibm-ldouble.ver [new file with mode: 0644]
libgcc/config/rs6000/libgcc-ppc-glibc.ver [deleted file]
libgcc/config/rs6000/libgcc-ppc64.ver [deleted file]
libgcc/config/rs6000/t-darwin
libgcc/config/rs6000/t-ibm-ldouble
libgcc/config/rs6000/t-ldbl128 [deleted file]
libgcc/config/rs6000/t-linux [new file with mode: 0644]
libgcc/config/rs6000/t-slibgcc-aix [new file with mode: 0644]
libgcc/config/sh/libgcc-excl.ver [new file with mode: 0644]
libgcc/config/sh/libgcc-glibc.ver [new file with mode: 0644]
libgcc/config/sh/t-linux
libgcc/config/sparc/libgcc-glibc.ver [new file with mode: 0644]
libgcc/config/sparc/t-linux [new file with mode: 0644]
libgcc/config/t-libunwind
libgcc/config/t-linux [new file with mode: 0644]
libgcc/config/t-slibgcc
libgcc/config/t-slibgcc-darwin
libgcc/config/t-slibgcc-elf-ver
libgcc/config/t-slibgcc-gld-nover [new file with mode: 0644]
libgcc/config/t-slibgcc-hpux [new file with mode: 0644]
libgcc/config/t-slibgcc-libgcc [new file with mode: 0644]
libgcc/config/t-slibgcc-nolc-override [new file with mode: 0644]
libgcc/config/t-slibgcc-vms [new file with mode: 0644]
libgcc/config/xtensa/libgcc-glibc.ver [new file with mode: 0644]
libgcc/config/xtensa/t-linux [new file with mode: 0644]
libgcc/configure
libgcc/configure.ac
libgcc/mkmap-flat.awk [new file with mode: 0644]
libgcc/mkmap-symver.awk [new file with mode: 0644]

index 87498634afa43f20e56966cf058684f4cdb76e82..b43baab918d74843f9cf37549d5926030a027e3c 100644 (file)
@@ -1,3 +1,161 @@
+2011-11-02  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
+
+       PR translation/45116
+       * Makefile.in (slibdir): Remove, don't export.
+       (SHLIB_NM_FLAGS): Remove.
+       (libgcc.mvars): Don't emit SHLIB_LINK, SHLIB_INSTALL,
+       SHLIB_DLLDIR, SHLIB_EXT, SHLIB_MKMAP, SHLIB_MKMAP_OPTS,
+       SHLIB_MAPFILES, SHLIB_NM_FLAGS.
+       (DRIVER_DEFINES): Test SHLIB instead of SHLIB_LINK.
+       (gcc.o): Pass SHLIB instead of SHLIB_LINK.
+       (gccspec.o): Likewise.
+       (installdirs): Don't create $(DESTDIR)$(slibdir).
+       * configure.ac (slibdir): Remove.
+       * configure: Regenerate.
+       * libgcc-libsystem.ver: Move to ../libgcc/config.
+       * mkmap-flat.awk, mkmap-symver.awk: Move to ../libgcc.
+       * config/libgcc-glibc.ver: Move to ../libgcc/config.
+       * config/t-libunwind (SHLIB_LC): Remove.
+       * config/t-linux (SHLIB_MAPFILES): Remove.
+       * config/t-slibgcc-dummy: Rename to config/t-slibgcc.
+       * config/t-slibgcc-elf-ver: Remove.
+       * config/t-slibgcc-libgcc, config/t-slibgcc-nolc-override: Move to
+       ../libgcc/config.
+       * config/alpha/libgcc-alpha-ldbl.ver, config/alpha/t-linux: Move
+       to ../libgcc/config/alpha.
+       * config/alpha/t-vms (shlib_version, SHLIB_EXT, SHLIB_OBJS,
+       SHLIB_NAME, SHLIB_MULTILIB, SHLIB_INSTALL, SHLIB_SYMVEC,
+       SHLIB_SYMVECX2, SHLIB_LINK): Remove.
+       * config/arm/libgcc-bpabi.ver: Move to ../libgcc/config/arm.
+       * config/arm/t-bpabi (SHLIB_MAPFILES): Remove.
+       * config/arm/t-netbsd (SHLIB_EXT, SHLIB_NAME, SHLIB_SONAME,
+       SHLIB_OBJS, SHLIB_LINK, SHLIB_INSTALL): Remove.
+       * config/arm/t-symbian (SHLIB_LC): Remove.
+       * config/bfin/libgcc-bfin.ver: Move to
+       ../libgcc/config/bfin/libgcc-glibc.ver.
+       * config/bfin/t-bfin-linux (SHLIB_MAPFILES): Remove.
+       * config/c6x/libgcc-c6xeabi.ver: Move to
+       ../libgcc/config/c6x/libgcc-eabi.ver.
+       * config/c6x/t-c6x-elf (SHLIB_MAPFILES): Remove.
+       * config/cris/libgcc.ver: Move to
+       ../libgcc/config/cris/libgcc-glibc.ver.
+       * config/cris/t-linux (SHLIB_MAPFILES): Remove.
+       * config/frv/libgcc-frv.ver: Move to ../libgcc/config/frv.
+       * config/frv/t-linux (SHLIB_MAPFILES): Remove.
+       * config/i386/darwin-libgcc.10.4.ver: Move to
+       ../libgcc/config/i386/libgcc-darwin.10.4.ver.
+       * config/i386/darwin-libgcc.10.5.ver: Move to
+       ../libgcc/config/i386/libgcc-darwin.10.5.ver.
+       * config/i386/libgcc-glibc.ver: Move to ../libgcc/config/i386.
+       * config/i386/t-cygming (SHLIB_EXT, SHLIB_IMPLIB, SHLIB_SOVERSION,
+       SHLIB_SONAME, SHLIB_MAP, SHLIB_OBJS, SHLIB_DIR, SHLIB_SLIBDIR_QUAL)
+       SHLIB_PTHREAD_CFLAG, SHLIB_PTHREAD_LDFLAG, SHLIB_LINK,
+       SHLIB_INSTALL, SHLIB_MKMAP, SHLIB_MKMAP_OPTS, SHLIB_MAPFILES):
+       Remove.
+       * config/i386/t-cygwin (SHLIB_LC, SHLIB_EH_EXTENSION,
+       SHLIB_IMPLIB, SHLIB_SONAME, SHLIB_MKMAP_OPTS): Remove.
+       * config/i386/t-dlldir, config/i386/t-dlldir-x: Move to
+       ../libgcc/config/i386.
+       * config/i386/t-dw2-eh, config/i386/t-sjlj-eh: Move to
+       ../libgcc/config/i386.
+       * config/i386/t-linux: Move to ../libgcc/config/i386.
+       * config/i386/t-mingw-pthread: Move to ../libgcc/config/i386.
+       * config/i386/t-mingw-w32 (SHLIB_LC): Remove.
+       * config/i386/t-mingw-w64: Likewise.
+       * config/i386/t-mingw32: Remove.
+       * config/ia64/libgcc-glibc.ver, config/ia64/libgcc-ia64.ver: Move
+       to ../libgcc/config/ia64.
+       * config/ia64/t-glibc: Remove.
+       * config/ia64/t-hpux (SHLIB_EXT, SHLIB_LINK, SHLIB_INSTALL): Remove.
+       * config/ia64/t-ia64 (SHLIB_MAPFILES): Remove.
+       * config/ia64/t-vms (shlib_version, SHLIB_EXT, SHLIB_OBJS,
+       SHLIB_NAME, SHLIB_MULTILIB, SHLIB_INSTALL, SHLIB_LINK): Remove.
+       * config/ia64/vms_symvec_libgcc_s.opt: Remove.
+       * config/m32r/libgcc-glibc.ver: Move to ../libgcc/config/m32r.
+       * config/m32r/t-linux (SHLIB_MAPFILES): Remove.
+       * config/m68k/t-slibgcc-elf-ver: Move to ../libgcc/config/m68k.
+       * config/mips/t-libgcc-mips16 (SHLIB_MAPFILES): Remove.
+       * config/pa/t-hpux-shlib: Move to ../libgcc/config/pa/t-slibgcc-hpux.
+       * config/pa/t-slibgcc-dwarf-ver, config/pa/t-slibgcc-sjsj-ver:
+       Move to ../libgcc/config/pa.
+       * config/rs6000/darwin-libgcc.10.4.ver: Move to
+       ../libgcc/config/rs6000/libgcc-darwin.10.4.ver.
+       * config/rs6000/darwin-libgcc.10.5.ver: Move to
+       ../libgcc/config/rs6000/libgcc-darwin.10.5.ver.
+       * config/rs6000/t-aix43 (SHLIB_EXT, SHLIB_LINK, SHLIB_INSTALL,
+       SHLIB_LIBS, SHLIB_MKMAP, SHLIB_NM_FLAGS, AR_FLAGS_FOR_TARGET): Remove.
+       * config/rs6000/t-aix52: Likewise.
+       * config/sh/libgcc-excl.ver, config/sh/libgcc-glibc.ver: Move to
+       ../libgcc/config/sh.
+       * config/sparc/libgcc-sparc-glibc.ver: Move to
+       ../libgcc/config/sparc/libgcc-glibc.ver.
+       * config/sparc/t-linux: Move to ../libgcc/config/sparc.
+       * config/xtensa/t-linux (SHLIB_MAPFILES): Remove.
+       * config/xtensa/libgcc-xtensa.ver: Move to
+       ../libgcc/config/xtensa/libgcc-glibc.ver.
+       * config.gcc (*-*-freebsd*): Replace t-slibgcc-elf-ver with
+       t-slibgcc in tmake_file.
+       Remove t-slibgcc-nolc-override for *-*-freebsd[34],
+       *-*-freebsd[34].* with pthreads.
+       (*-*-linux*, frv-*-*linux*, *-*-kfreebsd*-gnu,
+       *-*-knetbsd*-gnu, *-*-gnu*, *-*-kopensolaris*-gnu): Replace
+       t-slibgcc-elf-ver with t-slibgcc in tmake_file.
+       (*-*-netbsd*): Likewise.
+       (*-*-solaris2*): Replace t-slibgcc-dummy with t-slibgcc in tmake_file.
+       (*-*-*vms*): Add t-slibgcc to tmake_file.
+       (alpha*-*-linux*): Remove alpha/t-linux from tmake_file.
+       (alpha*-dec-osf5.1*): Replace t-slibgcc-dummy with t-slibgcc in
+       tmake_file.
+       (arm*-*-linux*): Remove t-slibgcc-libgcc from tmake_file for
+       arm*-*-linux-*eabi.
+       (bfin*-linux-uclibc*): Replace t-slibgcc-dummy with t-slibgcc in
+       tmake_file.
+       (crisv32-*-linux*, cris-*-linux*): Likewise.
+       (hppa*-*-linux*): Remove t-slibgcc-libgcc, pa/t-slibgcc-sjlj-ver,
+       pa/t-slibgcc-dwarf-ver from tmake_file.
+       (hppa[12]*-*-hpux10*): Replace pa/t-hpux-shlib with t-slibgcc in
+       tmake_file.
+       Remove pa/t-slibgcc-sjlj-ver, pa/t-slibgcc-dwarf-ver from tmake_file.
+       (hppa*64*-*-hpux11*): Likewise.
+       (hppa[12]*-*-hpux11*): Likewise.
+       (i[34567]86-*-darwin*): Replace t-slibgcc-dummy in t-slibgcc in
+       tmake_file.
+       (x86_64-*-darwin*): Likewise.
+       (i[34567]86-*-cygwin*): Remove tmake_eh_file, tmake_dlldir_file.
+       Add t-slibgcc to tmake_file.
+       (i[34567]86-*-mingw*, x86_64-*-mingw*): Likewise.
+       Remove i386/t-mingw32 from tmake_file unless x86_64-w64-*,
+       i[34567]86-w64-*.
+       Remove i386/t-mingw-pthread from tmake_file.
+       (ia64*-*-linux*): Remove ia64/t-glibc from tmake_file.
+       (ia64*-*-hpux*): Add t-slibgcc to tmake_file.
+       (ia64-hp-*vms*): Likewise.
+       (m32r-*-linux*): Replace t-slibgcc-elf-ver with t-slibgcc in
+       tmake_file.
+       (m32rle-*-linux*): Likewise.
+       (m68k-*-linux*): Remove m68k/t-slibgcc-elf-ver from tmake_file.
+       (microblaze*-linux*): Remove t-slibgcc-elf-ver,
+       t-slibgcc-nolc-override from tmake_file.
+       (mips-sgi-irix6.5*): Replace t-slibgcc-dummy with t-slibgcc in
+       tmake_file.
+       (powerpc-*-darwin*): Likewise.
+       (powerpc64-*-darwin*): Likewise.
+       (powerpc-*-freebsd*): Remove t-slibgcc-libgcc from tmake_file.
+       (powerpc-*-linux*, powerpc64-*-linux*): Likewise.
+       (rs6000-ibm-aix4.[3456789]*, powerpc-ibm-aix4.[3456789]*): Add
+       t-slibgcc to tmake_file.
+       (rs6000-ibm-aix5.1.*, powerpc-ibm-aix5.1.*): Likewise.
+       (rs6000-ibm-aix5.2.*, powerpc-ibm-aix5.2.*): Likewise.
+       (rs6000-ibm-aix5.3.*, powerpc-ibm-aix5.3.*): Likewise.
+       (rs6000-ibm-aix[6789].*, powerpc-ibm-aix[6789].*): Likewise.
+       (sparc-*-linux*): Remove sparc/t-linux from tmake_file.
+       (sparc64-*-linux*): Likewise.
+       (tic6x-*-uclinux): Replace t-slibgcc-elf-ver with t-slibgcc in
+       tmake_file.
+       (i[34567]86-*-linux*, x86_64-*-linux*, i[34567]86-*-kfreebsd*-gnu,
+       x86_64-*-kfreebsd*-gnu, i[34567]86-*-gnu*): Remove i386/t-linux
+       from tmake_file.
+
 2011-11-02  Richard Guenther  <rguenther@suse.de>
 
        PR tree-optimization/50902
index c8f6e92673d70bc09a619ac012f20851c00fa7f1..0211fdf8dbf77c839cf75fca9d321d9b42a6a679 100644 (file)
@@ -612,8 +612,6 @@ prefix_to_exec_prefix := \
 dollar = @dollar@
 # Used in install-cross.
 gcc_tooldir = @gcc_tooldir@
-# Used to install the shared libgcc.
-slibdir = @slibdir@
 # Since gcc_tooldir does not exist at build-time, use -B$(build_tooldir)/bin/
 build_tooldir = $(exec_prefix)/$(target_noncanonical)
 # Directory in which the compiler finds target-independent g++ includes.
@@ -696,9 +694,6 @@ CRTSTUFF_CFLAGS = -O2 $(GCC_CFLAGS) $(INCLUDES_FOR_TARGET) $(MULTILIB_CFLAGS) \
   -fno-stack-protector \
   $(INHIBIT_LIBC_CFLAGS)
 
-# nm flags to list global symbols in libgcc object files.
-SHLIB_NM_FLAGS = -pg
-
 # List of extra executables that should be compiled for this target machine
 # that are used for compiling from source code to object code.
 # The rules for compiling them should be in the t-* file for the machine.
@@ -1137,7 +1132,6 @@ export NM_FOR_TARGET
 export STRIP_FOR_TARGET
 export RANLIB_FOR_TARGET
 export libsubdir
-export slibdir
 
 FLAGS_TO_PASS = \
        "ADA_CFLAGS=$(ADA_CFLAGS)" \
@@ -1911,14 +1905,6 @@ libgcc.mvars: config.status Makefile $(LIB2ADD) $(LIB2ADD_ST) specs \
        echo LIB2_SIDITI_CONV_FUNCS = '$(LIB2_SIDITI_CONV_FUNCS)' >> tmp-libgcc.mvars
        echo LIB2_DIVMOD_FUNCS = '$(LIB2_DIVMOD_FUNCS)' >> tmp-libgcc.mvars
        echo GCC_EXTRA_PARTS = '$(GCC_EXTRA_PARTS)' >> tmp-libgcc.mvars
-       echo SHLIB_LINK = '$(subst $(GCC_FOR_TARGET),$$(GCC_FOR_TARGET),$(SHLIB_LINK))' >> tmp-libgcc.mvars
-       echo SHLIB_INSTALL = '$(SHLIB_INSTALL)' >> tmp-libgcc.mvars
-       echo SHLIB_DLLDIR = '$(SHLIB_DLLDIR)' >> tmp-libgcc.mvars
-       echo SHLIB_EXT = '$(SHLIB_EXT)' >> tmp-libgcc.mvars
-       echo SHLIB_MKMAP = '$(call srcdirify,$(SHLIB_MKMAP))' >> tmp-libgcc.mvars
-       echo SHLIB_MKMAP_OPTS = '$(SHLIB_MKMAP_OPTS)' >> tmp-libgcc.mvars
-       echo SHLIB_MAPFILES = '$(call srcdirify,$(SHLIB_MAPFILES))' >> tmp-libgcc.mvars
-       echo SHLIB_NM_FLAGS = '$(SHLIB_NM_FLAGS)' >> tmp-libgcc.mvars
        echo LIBGCC2_CFLAGS = '$(LIBGCC2_CFLAGS)' >> tmp-libgcc.mvars
        echo TARGET_LIBGCC2_CFLAGS = '$(TARGET_LIBGCC2_CFLAGS)' >> tmp-libgcc.mvars
        echo CRTSTUFF_CFLAGS = '$(CRTSTUFF_CFLAGS)' >> tmp-libgcc.mvars
@@ -2228,20 +2214,20 @@ DRIVER_DEFINES = \
   -DTOOLDIR_BASE_PREFIX=\"$(libsubdir_to_prefix)$(prefix_to_exec_prefix)\" \
   @TARGET_SYSTEM_ROOT_DEFINE@ \
   $(VALGRIND_DRIVER_DEFINES) \
-  `test "X$${SHLIB_LINK}" = "X" || test "@enable_shared@" != "yes" || echo "-DENABLE_SHARED_LIBGCC"` \
+  `test "X$${SHLIB}" = "X" || test "@enable_shared@" != "yes" || echo "-DENABLE_SHARED_LIBGCC"` \
   -DCONFIGURE_SPECS="\"@CONFIGURE_SPECS@\""
 
 gcc.o: gcc.c $(CONFIG_H) $(SYSTEM_H) coretypes.h $(TM_H) intl.h multilib.h \
     Makefile $(lang_specs_files) specs.h prefix.h $(GCC_H) $(FLAGS_H) \
     configargs.h $(OBSTACK_H) $(OPTS_H) $(DIAGNOSTIC_H) $(VEC_H) $(PARAMS_H)
-       (SHLIB_LINK='$(SHLIB_LINK)'; \
+       (SHLIB='$(SHLIB)'; \
        $(COMPILER) $(ALL_COMPILERFLAGS) $(ALL_CPPFLAGS) \
   $(DRIVER_DEFINES) \
   -c $(srcdir)/gcc.c $(OUTPUT_OPTION))
 
 gccspec.o: gccspec.c $(CONFIG_H) $(SYSTEM_H) coretypes.h $(TM_H) $(GCC_H) \
     $(OPTS_H)
-       (SHLIB_LINK='$(SHLIB_LINK)'; \
+       (SHLIB='$(SHLIB)'; \
        $(COMPILER) $(ALL_COMPILERFLAGS) $(ALL_CPPFLAGS) \
   $(DRIVER_DEFINES) \
   -c $(srcdir)/gccspec.c $(OUTPUT_OPTION))
@@ -4651,7 +4637,6 @@ installdirs:
        $(mkinstalldirs) $(DESTDIR)$(bindir)
        $(mkinstalldirs) $(DESTDIR)$(includedir)
        $(mkinstalldirs) $(DESTDIR)$(infodir)
-       $(mkinstalldirs) $(DESTDIR)$(slibdir)
        $(mkinstalldirs) $(DESTDIR)$(man1dir)
        $(mkinstalldirs) $(DESTDIR)$(man7dir)
 
index 2cb8b36589117d44aa18295e6b1f3332bf8ce2e2..999fe4d22390e72318ece5f91da5bf52bf9902ea 100644 (file)
@@ -559,7 +559,7 @@ case ${target} in
   extra_parts="crtbegin.o crtend.o crtbeginS.o crtendS.o"
   fbsd_major=`echo ${target} | sed -e 's/.*freebsd//g' | sed -e 's/\..*//g'`
   tm_defines="${tm_defines} FBSD_MAJOR=${fbsd_major}"
-  tmake_file="t-slibgcc-elf-ver t-freebsd"
+  tmake_file="t-freebsd t-slibgcc"
   case ${enable_threads} in
     no)
       fbsd_tm_file="${fbsd_tm_file} freebsd-nthr.h"
@@ -567,13 +567,6 @@ case ${target} in
     "" | yes | posix)
       thread_file='posix'
       tmake_file="${tmake_file} t-freebsd-thread"
-      # Before 5.0, FreeBSD can't bind shared libraries to -lc
-      # when "optionally" threaded via weak pthread_* checks.
-      case ${target} in
-        *-*-freebsd[34] | *-*-freebsd[34].*)
-          tmake_file="${tmake_file} t-slibgcc-nolc-override"
-          ;;
-      esac
       ;;
     *)
       echo 'Unknown thread configuration for FreeBSD'
@@ -599,7 +592,7 @@ case ${target} in
   case ${enable_threads} in
     "" | yes | posix) thread_file='posix' ;;
   esac
-  tmake_file="t-slibgcc-elf-ver t-linux"
+  tmake_file="t-linux t-slibgcc"
   case $target in
     *-*-linux* | frv-*-*linux* | *-*-kfreebsd*-gnu | *-*-knetbsd*-gnu | *-*-kopensolaris*-gnu)
       :;;
@@ -647,7 +640,7 @@ case ${target} in
   esac
   ;;
 *-*-netbsd*)
-  tmake_file="t-slibgcc-elf-ver t-libc-ok t-netbsd t-libgcc-pic"
+  tmake_file="t-libc-ok t-netbsd t-libgcc-pic t-slibgcc"
   gas=yes
   gnu_ld=yes
 
@@ -730,7 +723,7 @@ case ${target} in
     tm_file="usegas.h ${tm_file}"
   fi
   tm_p_file="${tm_p_file} sol2-protos.h"
-  tmake_file="${tmake_file} t-sol2 t-slibgcc-dummy"
+  tmake_file="${tmake_file} t-sol2 t-slibgcc"
   c_target_objs="${c_target_objs} sol2-c.o"
   cxx_target_objs="${cxx_target_objs} sol2-c.o sol2-cxx.o"
   extra_objs="sol2.o sol2-stubs.o"
@@ -744,7 +737,7 @@ case ${target} in
 *-*-*vms*)
   extra_options="${extra_options} vms/vms.opt"
   xmake_file=vms/x-vms
-  tmake_file="vms/t-vms"
+  tmake_file="vms/t-vms t-slibgcc"
   extra_objs="vms.o"
   target_gtfiles="$target_gtfiles \$(srcdir)/config/vms/vms.c"
   tm_p_file="${tm_p_file} vms/vms-protos.h"
@@ -777,7 +770,7 @@ alpha*-*-linux*)
        tm_file="${tm_file} alpha/elf.h alpha/linux.h alpha/linux-elf.h glibc-stdint.h"
        extra_options="${extra_options} alpha/elf.opt"
        target_cpu_default="MASK_GAS"
-       tmake_file="${tmake_file} alpha/t-alpha alpha/t-ieee alpha/t-linux"
+       tmake_file="${tmake_file} alpha/t-alpha alpha/t-ieee"
        extra_parts="${extra_parts} crtfastmath.o"
        ;;
 alpha*-*-freebsd*)
@@ -814,7 +807,7 @@ alpha*-dec-osf5.1*)
                extra_passes="mips-tfile mips-tdump"
        fi
        use_collect2=yes
-       tmake_file="t-slibgcc-dummy"
+       tmake_file="t-slibgcc"
        tm_file="${tm_file} alpha/osf5.h"
        tm_defines="${tm_defines} TARGET_SUPPORT_ARCH=1"
        extra_options="${extra_options} rpath.opt alpha/osf5.opt"
@@ -862,7 +855,7 @@ arm*-*-linux*)                      # ARM GNU/Linux with ELF
        arm*-*-linux-*eabi)
            tm_file="$tm_file arm/bpabi.h arm/linux-eabi.h"
            libgcc_tm_file="$libgcc_tm_file arm/bpabi-lib.h"
-           tmake_file="$tmake_file arm/t-arm-elf arm/t-bpabi arm/t-linux-eabi t-slibgcc-libgcc"
+           tmake_file="$tmake_file arm/t-arm-elf arm/t-bpabi arm/t-linux-eabi"
            # Define multilib configuration for arm-linux-androideabi.
            case ${target} in
            *-androideabi)
@@ -969,7 +962,7 @@ bfin*-uclinux*)
        ;;
 bfin*-linux-uclibc*)
        tm_file="${tm_file} dbxelf.h elfos.h bfin/elf.h gnu-user.h linux.h glibc-stdint.h bfin/linux.h ./linux-sysroot-suffix.h"
-       tmake_file="t-slibgcc-elf-ver bfin/t-bfin-linux"
+       tmake_file="bfin/t-bfin-linux t-slibgcc"
        extra_parts="crtbegin.o crtbeginS.o crtend.o crtendS.o"
        use_collect2=no
        ;;
@@ -1001,7 +994,7 @@ cris-*-elf | cris-*-none)
 crisv32-*-linux* | cris-*-linux*)
        tm_file="dbxelf.h elfos.h ${tm_file} gnu-user.h linux.h glibc-stdint.h cris/linux.h"
        # We need to avoid using t-linux, so override default tmake_file
-       tmake_file="cris/t-cris t-slibgcc-elf-ver cris/t-linux"
+       tmake_file="cris/t-cris cris/t-linux t-slibgcc"
        extra_options="${extra_options} cris/linux.opt"
        case $target in
          cris-*-*)
@@ -1069,13 +1062,7 @@ hppa*-*-linux*)
        target_cpu_default="MASK_PA_11|MASK_NO_SPACE_REGS"
        tm_file="${tm_file} dbxelf.h elfos.h gnu-user.h linux.h glibc-stdint.h pa/pa-linux.h \
                 pa/pa32-regs.h pa/pa32-linux.h"
-       tmake_file="${tmake_file} pa/t-linux t-slibgcc-libgcc"
-       # Set the libgcc version number
-       if test x$sjlj = x1; then
-           tmake_file="$tmake_file pa/t-slibgcc-sjlj-ver"
-       else
-           tmake_file="$tmake_file pa/t-slibgcc-dwarf-ver"
-       fi
+       tmake_file="${tmake_file} pa/t-linux"
        ;;
 # port not yet contributed.
 #hppa*-*-openbsd*)
@@ -1098,7 +1085,7 @@ hppa[12]*-*-hpux10*)
        esac
        use_gcc_stdint=provide
        tm_file="${tm_file} hpux-stdint.h"
-       tmake_file="pa/t-pa-hpux10 pa/t-pa-hpux pa/t-hpux-shlib"
+       tmake_file="pa/t-pa-hpux10 pa/t-pa-hpux t-slibgcc"
        case ${enable_threads} in
          "")
            if test x$have_pthread_h = xyes ; then
@@ -1109,12 +1096,6 @@ hppa[12]*-*-hpux10*)
            tmake_file="${tmake_file} pa/t-dce-thr"
            ;;
        esac
-       # Set the libgcc version number
-       if test x$sjlj = x1; then
-           tmake_file="$tmake_file pa/t-slibgcc-sjlj-ver"
-       else
-           tmake_file="$tmake_file pa/t-slibgcc-dwarf-ver"
-       fi
        use_collect2=yes
        gas=yes
        if test "x$with_dwarf2" != x; then
@@ -1147,13 +1128,7 @@ hppa*64*-*-hpux11*)
        extra_options="${extra_options} pa/pa-hpux.opt \
                       pa/pa-hpux1010.opt pa/pa64-hpux.opt hpux11.opt"
        need_64bit_hwint=yes
-       tmake_file="pa/t-pa64 pa/t-pa-hpux pa/t-hpux-shlib"
-       # Set the libgcc version number
-       if test x$sjlj = x1; then
-           tmake_file="$tmake_file pa/t-slibgcc-sjlj-ver"
-       else
-           tmake_file="$tmake_file pa/t-slibgcc-dwarf-ver"
-       fi
+       tmake_file="pa/t-pa64 pa/t-pa-hpux t-slibgcc"
        extra_parts="crtbegin.o crtend.o crtbeginS.o crtendS.o crtbeginT.o \
                     libgcc_stub.a"
        case x${enable_threads} in
@@ -1193,13 +1168,7 @@ hppa[12]*-*-hpux11*)
                extra_options="${extra_options} pa/pa-hpux1131.opt"
                ;;
        esac
-       tmake_file="pa/t-pa-hpux11 pa/t-pa-hpux pa/t-hpux-shlib"
-       # Set the libgcc version number
-       if test x$sjlj = x1; then
-           tmake_file="$tmake_file pa/t-slibgcc-sjlj-ver"
-       else
-           tmake_file="$tmake_file pa/t-slibgcc-dwarf-ver"
-       fi
+       tmake_file="pa/t-pa-hpux11 pa/t-pa-hpux t-slibgcc"
        extra_parts="libgcc_stub.a"
        case x${enable_threads} in
        x | xyes | xposix )
@@ -1227,12 +1196,12 @@ i[34567]86-*-darwin*)
        need_64bit_isa=yes
        # Baseline choice for a machine that allows m64 support.
        with_cpu=${with_cpu:-core2}
-       tmake_file="${tmake_file} t-slibgcc-dummy"
+       tmake_file="${tmake_file} t-slibgcc"
        libgcc_tm_file="$libgcc_tm_file i386/darwin-lib.h"
        ;;
 x86_64-*-darwin*)
        with_cpu=${with_cpu:-core2}
-       tmake_file="${tmake_file} ${cpu_type}/t-darwin64 t-slibgcc-dummy"
+       tmake_file="${tmake_file} ${cpu_type}/t-darwin64 t-slibgcc"
        tm_file="${tm_file} ${cpu_type}/darwin64.h"
        libgcc_tm_file="$libgcc_tm_file i386/darwin-lib.h"
        ;;
@@ -1460,19 +1429,7 @@ i[4567]86-wrs-vxworks|i[4567]86-wrs-vxworksae)
 i[34567]86-*-cygwin*)
        tm_file="${tm_file} i386/unix.h i386/bsd.h i386/gas.h dbxcoff.h i386/cygming.h i386/cygwin.h i386/cygwin-stdint.h"
        xm_file=i386/xm-cygwin.h
-       # This has to match the logic for DWARF2_UNWIND_INFO in gcc/config/i386/cygming.h
-       if test x$sjlj = x0; then
-               tmake_eh_file="i386/t-dw2-eh"
-       else
-               tmake_eh_file="i386/t-sjlj-eh"
-       fi
-       # Shared libgcc DLL install dir depends on cross/native build.
-       if test x${host} = x${target} ; then
-               tmake_dlldir_file="i386/t-dlldir"
-       else
-               tmake_dlldir_file="i386/t-dlldir-x"
-       fi
-       tmake_file="${tmake_file} ${tmake_eh_file} ${tmake_dlldir_file} i386/t-cygming i386/t-cygwin"
+       tmake_file="${tmake_file} i386/t-cygming i386/t-cygwin t-slibgcc"
        target_gtfiles="\$(srcdir)/config/i386/winnt.c"
        extra_options="${extra_options} i386/cygming.opt"
        extra_objs="winnt.o winnt-stubs.o"
@@ -1525,19 +1482,7 @@ i[34567]86-*-mingw* | x86_64-*-mingw*)
                        ;;
        esac
        tm_file="${tm_file} i386/mingw-stdint.h"
-       # This has to match the logic for DWARF2_UNWIND_INFO in gcc/config/i386/cygming.h
-       if test x$sjlj = x0; then
-               tmake_eh_file="i386/t-dw2-eh"
-       else
-               tmake_eh_file="i386/t-sjlj-eh"
-       fi
-       # Shared libgcc DLL install dir depends on cross/native build.
-       if test x${host} = x${target} ; then
-               tmake_dlldir_file="i386/t-dlldir"
-       else
-               tmake_dlldir_file="i386/t-dlldir-x"
-       fi
-       tmake_file="${tmake_file} ${tmake_eh_file} ${tmake_dlldir_file} i386/t-cygming"
+       tmake_file="${tmake_file} i386/t-cygming t-slibgcc"
         case ${target} in
                x86_64-w64-*)
                                tmake_file="${tmake_file} i386/t-mingw-w64"
@@ -1545,9 +1490,6 @@ i[34567]86-*-mingw* | x86_64-*-mingw*)
               i[34567]86-w64-*)
                        tmake_file="${tmake_file} i386/t-mingw-w32"
                        ;;
-               *)
-                               tmake_file="${tmake_file} i386/t-mingw32"
-                       ;;
        esac
         native_system_header_dir=/mingw/include
        target_gtfiles="\$(srcdir)/config/i386/winnt.c"
@@ -1570,7 +1512,6 @@ i[34567]86-*-mingw* | x86_64-*-mingw*)
            ;;
          posix)
            thread_file='posix'
-           tmake_file="i386/t-mingw-pthread ${tmake_file}"
            ;;
        esac
        case ${target} in
@@ -1616,13 +1557,13 @@ ia64*-*-freebsd*)
        ;;
 ia64*-*-linux*)
        tm_file="${tm_file} dbxelf.h elfos.h gnu-user.h linux.h glibc-stdint.h ia64/sysv4.h ia64/linux.h"
-       tmake_file="${tmake_file} ia64/t-ia64 t-libunwind ia64/t-glibc"
+       tmake_file="${tmake_file} ia64/t-ia64 t-libunwind"
        target_cpu_default="MASK_GNU_AS|MASK_GNU_LD"
        extra_parts="crtbegin.o crtend.o crtbeginS.o crtendS.o crtfastmath.o"
        ;;
 ia64*-*-hpux*)
        tm_file="${tm_file} dbxelf.h elfos.h ia64/sysv4.h ia64/hpux.h"
-       tmake_file="ia64/t-ia64 ia64/t-hpux"
+       tmake_file="ia64/t-ia64 ia64/t-hpux t-slibgcc"
        target_cpu_default="MASK_GNU_AS"
        case x$enable_threads in
        x | xyes | xposix )
@@ -1687,7 +1628,7 @@ m32r-*-rtems*)
 m32r-*-linux*)
        tm_file="dbxelf.h elfos.h gnu-user.h linux.h glibc-stdint.h ${tm_file} m32r/linux.h"
        # We override the tmake_file for linux -- why?
-       tmake_file="t-slibgcc-elf-ver m32r/t-linux"
+       tmake_file="m32r/t-linux t-slibgcc"
        gnu_ld=yes
        if test x$enable_threads = xyes; then
                thread_file='posix'
@@ -1696,7 +1637,7 @@ m32r-*-linux*)
 m32rle-*-linux*)
        tm_file="dbxelf.h elfos.h gnu-user.h linux.h glibc-stdint.h m32r/little.h ${tm_file} m32r/linux.h"
        # We override the tmake_file for linux -- why?
-       tmake_file="t-slibgcc-elf-ver m32r/t-linux"
+       tmake_file="m32r/t-linux t-slibgcc"
        gnu_ld=yes
        if test x$enable_threads = xyes; then
                thread_file='posix'
@@ -1772,11 +1713,6 @@ m68k-*-linux*)           # Motorola m68k's running GNU/Linux
        extra_options="${extra_options} m68k/ieee.opt"
        tm_defines="${tm_defines} MOTOROLA=1"
        tmake_file="${tmake_file} m68k/t-floatlib m68k/t-linux m68k/t-mlibs"
-       # if not configured with --enable-sjlj-exceptions, bump the
-       # libgcc version number
-       if test x$sjlj != x1; then
-           tmake_file="$tmake_file m68k/t-slibgcc-elf-ver"
-       fi
        ;;
 m68k-*-rtems*)
        default_m68k_cpu=68020
@@ -1807,7 +1743,7 @@ microblaze*-linux*)
        tm_file="${tm_file} dbxelf.h gnu-user.h linux.h microblaze/linux.h"
        c_target_objs="${c_target_objs} microblaze-c.o"
        cxx_target_objs="${cxx_target_objs} microblaze-c.o"
-       tmake_file="${tmake_file} t-slibgcc-elf-ver t-slibgcc-nolc-override t-linux microblaze/t-microblaze"
+       tmake_file="${tmake_file} t-linux microblaze/t-microblaze"
         extra_parts="crtbegin.o crtbeginS.o crtend.o crtendS.o crtbeginT.o"
        ;;
 microblaze*-*-*)
@@ -1818,7 +1754,7 @@ microblaze*-*-*)
         ;;
 mips-sgi-irix6.5*)
        tm_file="elfos.h ${tm_file} mips/iris6.h"
-       tmake_file="mips/t-irix6 t-slibgcc-dummy"
+       tmake_file="mips/t-irix6 t-slibgcc"
        extra_options="${extra_options} rpath.opt mips/iris6.opt"
        target_cpu_default="MASK_ABICALLS"
        tm_defines="${tm_defines} MIPS_ISA_DEFAULT=3 MIPS_ABI_DEFAULT=ABI_N32"
@@ -2045,19 +1981,18 @@ powerpc-*-darwin*)
          *-darwin[0-6]*)
            ;;
        esac
-       tmake_file="${tmake_file} t-slibgcc-dummy"
+       tmake_file="${tmake_file} t-slibgcc"
        extra_headers=altivec.h
        ;;
 powerpc64-*-darwin*)
        extra_options="${extra_options} ${cpu_type}/darwin.opt"
-       tmake_file="${tmake_file} ${cpu_type}/t-darwin64 t-slibgcc-dummy"
+       tmake_file="${tmake_file} ${cpu_type}/t-darwin64 t-slibgcc"
        tm_file="${tm_file} ${cpu_type}/darwin8.h ${cpu_type}/darwin64.h"
        extra_headers=altivec.h
        ;;
 powerpc-*-freebsd*)
        tm_file="${tm_file} dbxelf.h elfos.h ${fbsd_tm_file} rs6000/sysv4.h rs6000/freebsd.h"
        tmake_file="rs6000/t-fprules rs6000/t-ppcos ${tmake_file} rs6000/t-ppccomm"
-       tmake_file="${tmake_file} t-slibgcc-libgcc"
        extra_options="${extra_options} rs6000/sysv4.opt"
        ;;
 powerpc-*-netbsd*)
@@ -2143,7 +2078,6 @@ powerpc-*-linux* | powerpc64-*-linux*)
                tm_file="${tm_file} rs6000/linux.h glibc-stdint.h"
                ;;
        esac
-       tmake_file="${tmake_file} t-slibgcc-libgcc"
        case ${target} in
            powerpc*-*-linux*ppc476*)
                tm_file="${tm_file} rs6000/476.h"
@@ -2203,7 +2137,7 @@ powerpcle-*-eabi*)
        ;;
 rs6000-ibm-aix4.[3456789]* | powerpc-ibm-aix4.[3456789]*)
        tm_file="rs6000/biarch64.h ${tm_file} rs6000/aix.h rs6000/aix43.h rs6000/xcoff.h rs6000/aix-stdint.h"
-       tmake_file=rs6000/t-aix43
+       tmake_file="rs6000/t-aix43 t-slibgcc"
        extra_options="${extra_options} rs6000/aix64.opt"
        use_collect2=yes
        thread_file='aix'
@@ -2213,7 +2147,7 @@ rs6000-ibm-aix4.[3456789]* | powerpc-ibm-aix4.[3456789]*)
 rs6000-ibm-aix5.1.* | powerpc-ibm-aix5.1.*)
        tm_file="rs6000/biarch64.h ${tm_file} rs6000/aix.h rs6000/aix51.h rs6000/xcoff.h rs6000/aix-stdint.h"
        extra_options="${extra_options} rs6000/aix64.opt"
-       tmake_file=rs6000/t-aix43
+       tmake_file="rs6000/t-aix43 t-slibgcc"
        use_collect2=yes
        thread_file='aix'
        use_gcc_stdint=wrap
@@ -2221,7 +2155,7 @@ rs6000-ibm-aix5.1.* | powerpc-ibm-aix5.1.*)
        ;;
 rs6000-ibm-aix5.2.* | powerpc-ibm-aix5.2.*)
        tm_file="${tm_file} rs6000/aix.h rs6000/aix52.h rs6000/xcoff.h rs6000/aix-stdint.h"
-       tmake_file=rs6000/t-aix52
+       tmake_file="rs6000/t-aix52 t-slibgcc"
        extra_options="${extra_options} rs6000/aix64.opt"
        use_collect2=yes
        thread_file='aix'
@@ -2230,7 +2164,7 @@ rs6000-ibm-aix5.2.* | powerpc-ibm-aix5.2.*)
        ;;
 rs6000-ibm-aix5.3.* | powerpc-ibm-aix5.3.*)
        tm_file="${tm_file} rs6000/aix.h rs6000/aix53.h rs6000/xcoff.h rs6000/aix-stdint.h"
-       tmake_file=rs6000/t-aix52
+       tmake_file="rs6000/t-aix52 t-slibgcc"
        extra_options="${extra_options} rs6000/aix64.opt"
        use_collect2=yes
        thread_file='aix'
@@ -2239,7 +2173,7 @@ rs6000-ibm-aix5.3.* | powerpc-ibm-aix5.3.*)
        ;;
 rs6000-ibm-aix[6789].* | powerpc-ibm-aix[6789].*)
        tm_file="${tm_file} rs6000/aix.h rs6000/aix61.h rs6000/xcoff.h rs6000/aix-stdint.h"
-       tmake_file=rs6000/t-aix52
+       tmake_file="rs6000/t-aix52 t-slibgcc"
        extra_options="${extra_options} rs6000/aix64.opt"
        use_collect2=yes
        thread_file='aix'
@@ -2497,7 +2431,7 @@ sparc-*-linux*)
                tmake_file="${tmake_file} sparc/t-sparc sparc/t-leon3"
                ;;
            *)
-               tmake_file="${tmake_file} sparc/t-sparc sparc/t-linux"
+               tmake_file="${tmake_file} sparc/t-sparc"
                ;;
        esac
        if test x$enable_targets = xall; then
@@ -2543,7 +2477,7 @@ sparc64-*-rtems*)
 sparc64-*-linux*)
        tm_file="sparc/biarch64.h ${tm_file} dbxelf.h elfos.h sparc/sysv4.h gnu-user.h linux.h glibc-stdint.h sparc/default-64.h sparc/linux64.h"
        extra_options="${extra_options} sparc/long-double-switch.opt"
-       tmake_file="${tmake_file} sparc/t-sparc sparc/t-linux sparc/t-linux64"
+       tmake_file="${tmake_file} sparc/t-sparc sparc/t-linux64"
        extra_parts="${extra_parts} crtfastmath.o"
        ;;
 sparc64-*-freebsd*|ultrasparc-*-freebsd*)
@@ -2594,7 +2528,7 @@ tic6x-*-uclinux)
        tm_file="${tm_file} dbxelf.h tm-dwarf2.h glibc-stdint.h"
        tm_file="${tm_file} ./sysroot-suffix.h"
        libgcc_tm_file="${libgcc_tm_file} c6x/c6x-abi.h"
-       tmake_file="t-slibgcc-elf-ver t-sysroot-suffix"
+       tmake_file="t-sysroot-suffix t-slibgcc"
        tmake_file="${tmake_file} c6x/t-c6x c6x/t-c6x-elf c6x/t-c6x-uclinux"
        use_collect2=no
        ;;
@@ -3610,7 +3544,6 @@ case ${target} in
        i[34567]86-*-linux* | x86_64-*-linux* | \
          i[34567]86-*-kfreebsd*-gnu | x86_64-*-kfreebsd*-gnu | \
          i[34567]86-*-gnu*)
-               tmake_file="${tmake_file} i386/t-linux"
                ;;
        i[34567]86-*-solaris2* | x86_64-*-solaris2.1[0-9]*)
                ;;
diff --git a/gcc/config/alpha/libgcc-alpha-ldbl.ver b/gcc/config/alpha/libgcc-alpha-ldbl.ver
deleted file mode 100644 (file)
index 8dc54a7..0000000
+++ /dev/null
@@ -1,50 +0,0 @@
-# Copyright (C) 2006 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/>.
-
-%ifdef __LONG_DOUBLE_128__
-
-# long double 128 bit support in libgcc_s.so.1 is only available
-# when configured with --with-long-double-128.  Make sure all the
-# symbols are available at @@GCC_LDBL_* versions to make it clear
-# there is a configurable symbol set.
-
-%exclude {
-  __fixtfdi
-  __fixunstfdi
-  __floatditf
-
-  __divtc3
-  __multc3
-  __powitf2
-}
-
-%inherit GCC_LDBL_3.0 GCC_3.0
-GCC_LDBL_3.0 {
-  __fixtfdi
-  __fixunstfdi
-  __floatditf
-}
-
-%inherit GCC_LDBL_4.0.0 GCC_4.0.0
-GCC_LDBL_4.0.0 {
-  __divtc3
-  __multc3
-  __powitf2
-}
-
-%endif
diff --git a/gcc/config/alpha/t-linux b/gcc/config/alpha/t-linux
deleted file mode 100644 (file)
index fabf38f..0000000
+++ /dev/null
@@ -1 +0,0 @@
-SHLIB_MAPFILES += $(srcdir)/config/alpha/libgcc-alpha-ldbl.ver
index 410e219ff5bb25a91cb539cc6dd5c096f166babf..9dab1229f45cf19169af6d010b0351406e1d6c3f 100644 (file)
@@ -1,5 +1,5 @@
 # Copyright (C) 1996, 1997, 1998, 2001, 2002,
-# 2007, 2009 Free Software Foundation, Inc.
+# 2007, 2009, 2011 Free Software Foundation, Inc.
 #
 # This file is part of GCC.
 #
@@ -35,31 +35,3 @@ MULTILIB_DIRNAMES = ev6
 MULTILIB_OSDIRNAMES = ev6
 LIBGCC = stmp-multilib
 INSTALL_LIBGCC = install-multilib
-
-shlib_version:=$(shell echo $(BASEVER_c) | sed -e 's/\./,/' -e 's/\.//g')
-SHLIB_EXT = .exe
-SHLIB_OBJS = @shlib_objs@
-SHLIB_NAME = @shlib_base_name@.exe
-SHLIB_MULTILIB =
-SHLIB_INSTALL = $(INSTALL_DATA) $(SHLIB_NAME) $$(DESTDIR)$$(libsubdir)/$(SHLIB_NAME)
-SHLIB_SYMVEC = \
-  grep -F -e "\$$BSS\$$" -e "\$$DATA\$$" -e " sdata " -e " data.rel " -e " data.rel.ro " -e " sbss " \
-        -e "\$$LINK\$$" -e "\$$READONLY\$$" | \
-  sed -e "s/.*\$$LINK\$$   \(.*\)/SYMBOL_VECTOR=(\1=PROCEDURE)/" \
-      -e "s/.*\$$DATA\$$   \(.*\)/SYMBOL_VECTOR=(\1=DATA)/" \
-      -e "s/.* sbss     \(.*\)/SYMBOL_VECTOR=(\1=DATA)/" \
-      -e "s/.* sdata    \(.*\)/SYMBOL_VECTOR=(\1=DATA)/" \
-      -e "s/.* data.rel \(.*\)/SYMBOL_VECTOR=(\1=DATA)/" \
-      -e "s/.* data.rel.ro \(.*\)/SYMBOL_VECTOR=(\1=DATA)/" \
-      -e "s/.*\$$BSS\$$    \(.*\)/SYMBOL_VECTOR=(\1=DATA)/" \
-      -e "s/.*\$$READONLY\$$ \(.*\)/SYMBOL_VECTOR=(\1=DATA)/"
-SHLIB_SYMVECX2 := $(subst $$,$$$$,$(SHLIB_SYMVEC))
-SHLIB_LINK = \
-  echo "case_sensitive=yes" > SYMVEC_$$$$$$$$.opt; \
-  objdump --syms $(SHLIB_OBJS) | \
-  $(SHLIB_SYMVECX2) >> SYMVEC_$$$$$$$$.opt ; \
-  echo "case_sensitive=NO" >> SYMVEC_$$$$$$$$.opt; \
-  $(GCC_FOR_TARGET) $(LIBGCC2_CFLAGS) -nodefaultlibs \
-  -shared --for-linker=/noinform -o $(SHLIB_NAME) $(SHLIB_OBJS) \
-  --for-linker=SYMVEC_$$$$$$$$.opt \
-  --for-linker=gsmatch=equal,$(shlib_version)
diff --git a/gcc/config/arm/libgcc-bpabi.ver b/gcc/config/arm/libgcc-bpabi.ver
deleted file mode 100644 (file)
index 3ba8364..0000000
+++ /dev/null
@@ -1,108 +0,0 @@
-# Copyright (C) 2004, 2005, 2007 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/>.
-
-GCC_3.5 {
-  # BPABI symbols
-  __aeabi_cdcmpeq
-  __aeabi_cdcmple
-  __aeabi_cdrcmple
-  __aeabi_cfcmpeq
-  __aeabi_cfcmple
-  __aeabi_cfrcmple
-  __aeabi_d2f
-  __aeabi_d2iz
-  __aeabi_d2lz
-  __aeabi_d2uiz
-  __aeabi_d2ulz
-  __aeabi_dadd
-  __aeabi_dcmpeq
-  __aeabi_dcmpge
-  __aeabi_dcmpgt
-  __aeabi_dcmple
-  __aeabi_dcmplt
-  __aeabi_dcmpun
-  __aeabi_ddiv
-  __aeabi_dmul
-  __aeabi_dneg
-  __aeabi_drsub
-  __aeabi_dsub
-  __aeabi_f2d
-  __aeabi_f2iz
-  __aeabi_f2lz
-  __aeabi_f2uiz
-  __aeabi_f2ulz
-  __aeabi_fadd
-  __aeabi_fcmpeq
-  __aeabi_fcmpge
-  __aeabi_fcmpgt
-  __aeabi_fcmple
-  __aeabi_fcmplt
-  __aeabi_fcmpun
-  __aeabi_fdiv
-  __aeabi_fmul
-  __aeabi_fneg
-  __aeabi_frsub
-  __aeabi_fsub
-  __aeabi_i2d
-  __aeabi_i2f
-  __aeabi_idiv
-  __aeabi_idiv0
-  __aeabi_idivmod
-  __aeabi_l2d
-  __aeabi_l2f
-  __aeabi_lasr
-  __aeabi_lcmp
-  __aeabi_ldiv0
-  __aeabi_ldivmod
-  __aeabi_llsl
-  __aeabi_llsr
-  __aeabi_lmul
-  __aeabi_ui2d
-  __aeabi_ui2f
-  __aeabi_uidiv
-  __aeabi_uidivmod
-  __aeabi_uldivmod
-  __aeabi_ulcmp
-  __aeabi_ul2d
-  __aeabi_ul2f
-  __aeabi_uread4
-  __aeabi_uread8
-  __aeabi_uwrite4
-  __aeabi_uwrite8
-
-  # Exception-Handling
-  # \S 7.5
-  _Unwind_Complete
-  _Unwind_VRS_Get
-  _Unwind_VRS_Set
-  _Unwind_VRS_Pop
-  # \S 9.2
-  __aeabi_unwind_cpp_pr0
-  __aeabi_unwind_cpp_pr1
-  __aeabi_unwind_cpp_pr2
-  # The libstdc++ exception-handling personality routine uses this 
-  # GNU-specific entry point.
-  __gnu_unwind_frame
-}
-
-%exclude {
-  _Unwind_Backtrace
-}
-GCC_4.3.0 {
-  _Unwind_Backtrace
-}
index d8a1be45dcdcfd9c9c57b4b76b9fa419ed0df62f..047525682fcb0dcc022b603e90850fc6b457c923 100644 (file)
@@ -24,8 +24,4 @@ LIB2FUNCS_EXTRA = $(srcdir)/config/arm/bpabi.c \
                  $(srcdir)/config/arm/unaligned-funcs.c
 
 LIB2FUNCS_STATIC_EXTRA = $(srcdir)/config/arm/fp16.c
-
-# Add the BPABI names.
-SHLIB_MAPFILES += $(srcdir)/config/arm/libgcc-bpabi.ver
-
 EXTRA_HEADERS += $(srcdir)/ginclude/unwind-arm-common.h
index 22bbbe7dd4b0a9dabf2144ea4d8a39f2864b6cbf..d659b5a568f2d2fedbd91ee721bd0e99fcf52a80 100644 (file)
@@ -1,5 +1,5 @@
 # Copyright (C) 1997, 1998, 1999, 2000, 2001, 2003, 2004, 2005,
-# 2006 Free Software Foundation, Inc.
+# 2006, 2011 Free Software Foundation, Inc.
 #
 # This file is part of GCC.
 #
 TARGET_LIBGCC2_CFLAGS = -fomit-frame-pointer -fpic
 LIBGCC2_DEBUG_CFLAGS = -g0
 LIB2FUNCS_EXTRA = $(srcdir)/config/floatunsidf.c $(srcdir)/config/floatunsisf.c
-
-# Build a shared libgcc library.
-SHLIB_EXT = .so
-SHLIB_NAME = @shlib_base_name@.so
-SHLIB_SONAME = @shlib_base_name@.so.1
-SHLIB_OBJS = @shlib_objs@
-
-SHLIB_LINK = $(GCC_FOR_TARGET) $(LIBGCC2_CFLAGS) -shared -nodefaultlibs \
-       -Wl,-soname,$(SHLIB_SONAME) \
-       -o $(SHLIB_NAME).tmp @multilib_flags@ $(SHLIB_OBJS) -lc && \
-       rm -f $(SHLIB_SONAME) && \
-       if [ -f $(SHLIB_NAME) ]; then \
-         mv -f $(SHLIB_NAME) $(SHLIB_NAME).backup; \
-       else true; fi && \
-       mv $(SHLIB_NAME).tmp $(SHLIB_NAME) && \
-       $(LN_S) $(SHLIB_NAME) $(SHLIB_SONAME)
-# $(slibdir) double quoted to protect it from expansion while building
-# libgcc.mk.  We want this delayed until actual install time.
-SHLIB_INSTALL = \
-       $$(mkinstalldirs) $$(DESTDIR)$$(slibdir); \
-       $(INSTALL_DATA) $(SHLIB_NAME) $$(DESTDIR)$$(slibdir)/$(SHLIB_SONAME); \
-       rm -f $$(DESTDIR)$$(slibdir)/$(SHLIB_NAME); \
-       $(LN_S) $(SHLIB_SONAME) $$(DESTDIR)$$(slibdir)/$(SHLIB_NAME)
index e37d473eca01ed9274814ca336789c11247c4cfa..a0d6f7de887b60238a4d8bce2f92367892a05839 100644 (file)
@@ -41,9 +41,5 @@ LIB2FUNCS_STATIC_EXTRA = $(srcdir)/config/arm/fp16.c
 MULTILIB_OPTIONS     = mfloat-abi=softfp
 MULTILIB_DIRNAMES    = softfp
 
-# There is no C library to link against on Symbian OS -- at least when 
-# building GCC.
-SHLIB_LC = 
-
 # Symbian OS provides its own startup code.
 EXTRA_MULTILIB_PARTS=
diff --git a/gcc/config/bfin/libgcc-bfin.ver b/gcc/config/bfin/libgcc-bfin.ver
deleted file mode 100644 (file)
index 516d91f..0000000
+++ /dev/null
@@ -1,1914 +0,0 @@
-# Copyright (C) 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007,
-# 2008, 2009, 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/>.
-
-GCC_3.0 {
-  # libgcc1 integer symbols
-  ___absvsi2
-  ___addvsi3
-  ___ashlsi3
-  ___ashrsi3
-  ___divsi3
-  ___lshrsi3
-  ___modsi3
-  ___mulsi3
-  ___mulvsi3
-  ___negvsi2
-  ___subvsi3
-  ___udivsi3
-  ___umodsi3
-
-  # libgcc1 floating point symbols
-  ___addsf3
-  ___adddf3
-  ___addxf3
-  ___addtf3
-  ___divsf3
-  ___divdf3
-  ___divxf3
-  ___divtf3
-  ___eqsf2
-  ___eqdf2
-  ___eqxf2
-  ___eqtf2
-  ___extenddfxf2
-  ___extenddftf2
-  ___extendsfdf2
-  ___extendsfxf2
-  ___extendsftf2
-  ___fixsfsi
-  ___fixdfsi
-  ___fixxfsi
-  ___fixtfsi
-  ___floatsisf
-  ___floatsidf
-  ___floatsixf
-  ___floatsitf
-  ___gesf2
-  ___gedf2
-  ___gexf2
-  ___getf2
-  ___gtsf2
-  ___gtdf2
-  ___gtxf2
-  ___gttf2
-  ___lesf2
-  ___ledf2
-  ___lexf2
-  ___letf2
-  ___ltsf2
-  ___ltdf2
-  ___ltxf2
-  ___lttf2
-  ___mulsf3
-  ___muldf3
-  ___mulxf3
-  ___multf3
-  ___negsf2
-  ___negdf2
-  ___negxf2
-  ___negtf2
-  ___nesf2
-  ___nedf2
-  ___nexf2
-  ___netf2
-  ___subsf3
-  ___subdf3
-  ___subxf3
-  ___subtf3
-  ___truncdfsf2
-  ___truncxfsf2
-  ___trunctfsf2
-  ___truncxfdf2
-  ___trunctfdf2
-
-  # libgcc2 DImode arithmetic (for 32-bit targets).
-  ___absvdi2
-  ___addvdi3
-  ___ashldi3
-  ___ashrdi3
-  ___cmpdi2
-  ___divdi3
-  ___ffsdi2
-  ___fixdfdi
-  ___fixsfdi
-  ___fixtfdi
-  ___fixxfdi
-  ___fixunsdfdi
-  ___fixunsdfsi
-  ___fixunssfsi
-  ___fixunssfdi
-  ___fixunstfdi
-  ___fixunstfsi
-  ___fixunsxfdi
-  ___fixunsxfsi
-  ___floatdidf
-  ___floatdisf
-  ___floatdixf
-  ___floatditf
-  ___lshrdi3
-  ___moddi3
-  ___muldi3
-  ___mulvdi3
-  ___negdi2
-  ___negvdi2
-  ___subvdi3
-  ___ucmpdi2
-  ___udivdi3
-  ___udivmoddi4
-  ___umoddi3
-
-  # libgcc2 TImode arithmetic (for 64-bit targets).
-  ___ashlti3
-  ___ashrti3
-  ___cmpti2
-  ___divti3
-  ___ffsti2
-  ___fixdfti
-  ___fixsfti
-  ___fixtfti
-  ___fixxfti
-  ___lshrti3
-  ___modti3
-  ___multi3
-  ___negti2
-  ___ucmpti2
-  ___udivmodti4
-  ___udivti3
-  ___umodti3
-  ___fixunsdfti
-  ___fixunssfti
-  ___fixunstfti
-  ___fixunsxfti
-  ___floattidf
-  ___floattisf
-  ___floattixf
-  ___floattitf
-
-  # Used to deal with trampoline initialization on some platforms
-  ___clear_cache
-
-  # EH symbols
-  __Unwind_DeleteException
-  __Unwind_Find_FDE
-  __Unwind_ForcedUnwind
-  __Unwind_GetGR
-  __Unwind_GetIP
-  __Unwind_GetLanguageSpecificData
-  __Unwind_GetRegionStart
-  __Unwind_GetTextRelBase
-  __Unwind_GetDataRelBase
-  __Unwind_RaiseException
-  __Unwind_Resume
-  __Unwind_SetGR
-  __Unwind_SetIP
-  ___deregister_frame
-  ___deregister_frame_info
-  ___deregister_frame_info_bases
-  ___register_frame
-  ___register_frame_info
-  ___register_frame_info_bases
-  ___register_frame_info_table
-  ___register_frame_info_table_bases
-  ___register_frame_table
-
-  # SjLj EH symbols
-  __Unwind_SjLj_Register
-  __Unwind_SjLj_Unregister
-  __Unwind_SjLj_RaiseException
-  __Unwind_SjLj_ForcedUnwind
-  __Unwind_SjLj_Resume
-}
-
-%inherit GCC_3.3 GCC_3.0
-GCC_3.3 {
-  __Unwind_FindEnclosingFunction
-  __Unwind_GetCFA
-  __Unwind_Backtrace
-  __Unwind_Resume_or_Rethrow
-  __Unwind_SjLj_Resume_or_Rethrow
-}
-
-%inherit GCC_3.3.1 GCC_3.3
-GCC_3.3.1 {
-  ___gcc_personality_sj0
-  ___gcc_personality_v0
-}
-
-%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
-  ___unordsf2
-}
-
-%inherit GCC_3.4 GCC_3.3.4
-GCC_3.4 {
-  # bit scanning and counting built-ins
-  ___clzsi2
-  ___clzdi2
-  ___clzti2
-  ___ctzsi2
-  ___ctzdi2
-  ___ctzti2
-  ___popcountsi2
-  ___popcountdi2
-  ___popcountti2
-  ___paritysi2
-  ___paritydi2
-  ___parityti2
-}
-
-%inherit GCC_3.4.2 GCC_3.4
-GCC_3.4.2 {
-  # Used to deal with trampoline initialization on some platforms
-  ___enable_execute_stack
-  ___trampoline_setup
-}
-
-%inherit GCC_3.4.4 GCC_3.4.2
-GCC_3.4.4 {
-  # libgcc2 TImode arithmetic (for 64-bit targets).
-  ___absvti2
-  ___addvti3
-  ___mulvti3
-  ___negvti2
-  ___subvti3
-}
-
-%inherit GCC_4.0.0 GCC_3.4.4
-GCC_4.0.0 {
-  # libgcc2 __builtin_powi helpers.
-  ___powisf2
-  ___powidf2
-  ___powixf2
-  ___powitf2
-
-  # c99 compliant complex arithmetic
-  ___divsc3
-  ___divdc3
-  ___divxc3
-  ___divtc3
-  ___mulsc3
-  ___muldc3
-  ___mulxc3
-  ___multc3
-}
-
-%inherit GCC_4.1.0 GCC_4.0.0
-GCC_4.1.0 {
-  ___smulsi3_highpart
-  ___umulsi3_highpart
-}
-
-%inherit GCC_4.2.0 GCC_4.1.0
-GCC_4.2.0 {
-  # unsigned-to-floating conversions
-  ___floatunsisf
-  ___floatunsidf
-  ___floatunsixf
-  ___floatunsitf
-  ___floatundidf
-  ___floatundisf
-  ___floatundixf
-  ___floatunditf
-  ___floatuntidf
-  ___floatuntisf
-  ___floatuntixf
-  ___floatuntitf
-  __Unwind_GetIPInfo
-}
-
-%inherit GCC_4.3.0 GCC_4.2.0
-GCC_4.3.0 {
-  # byte swapping routines
-  ___bswapsi2
-  ___bswapdi2
-  ___emutls_get_address
-  ___emutls_register_common
-  ___ffssi2
-  ___extendxftf2
-  ___trunctfxf2
-
-  # fixed-point routines
-  ___addqq3
-  ___addhq3
-  ___addsq3
-  ___adddq3
-  ___addtq3
-  ___adduqq3
-  ___adduhq3
-  ___addusq3
-  ___addudq3
-  ___addutq3
-  ___addha3
-  ___addsa3
-  ___addda3
-  ___addta3
-  ___adduha3
-  ___addusa3
-  ___adduda3
-  ___adduta3
-  ___ssaddqq3
-  ___ssaddhq3
-  ___ssaddsq3
-  ___ssadddq3
-  ___ssaddtq3
-  ___ssaddha3
-  ___ssaddsa3
-  ___ssaddda3
-  ___ssaddta3
-  ___usadduqq3
-  ___usadduhq3
-  ___usaddusq3
-  ___usaddudq3
-  ___usaddutq3
-  ___usadduha3
-  ___usaddusa3
-  ___usadduda3
-  ___usadduta3
-  ___subqq3
-  ___subhq3
-  ___subsq3
-  ___subdq3
-  ___subtq3
-  ___subuqq3
-  ___subuhq3
-  ___subusq3
-  ___subudq3
-  ___subutq3
-  ___subha3
-  ___subsa3
-  ___subda3
-  ___subta3
-  ___subuha3
-  ___subusa3
-  ___subuda3
-  ___subuta3
-  ___sssubqq3
-  ___sssubhq3
-  ___sssubsq3
-  ___sssubdq3
-  ___sssubtq3
-  ___sssubha3
-  ___sssubsa3
-  ___sssubda3
-  ___sssubta3
-  ___ussubuqq3
-  ___ussubuhq3
-  ___ussubusq3
-  ___ussubudq3
-  ___ussubutq3
-  ___ussubuha3
-  ___ussubusa3
-  ___ussubuda3
-  ___ussubuta3
-  ___mulqq3
-  ___mulhq3
-  ___mulsq3
-  ___muldq3
-  ___multq3
-  ___muluqq3
-  ___muluhq3
-  ___mulusq3
-  ___muludq3
-  ___mulutq3
-  ___mulha3
-  ___mulsa3
-  ___mulda3
-  ___multa3
-  ___muluha3
-  ___mulusa3
-  ___muluda3
-  ___muluta3
-  ___ssmulqq3
-  ___ssmulhq3
-  ___ssmulsq3
-  ___ssmuldq3
-  ___ssmultq3
-  ___ssmulha3
-  ___ssmulsa3
-  ___ssmulda3
-  ___ssmulta3
-  ___usmuluqq3
-  ___usmuluhq3
-  ___usmulusq3
-  ___usmuludq3
-  ___usmulutq3
-  ___usmuluha3
-  ___usmulusa3
-  ___usmuluda3
-  ___usmuluta3
-  ___divqq3
-  ___divhq3
-  ___divsq3
-  ___divdq3
-  ___divtq3
-  ___divha3
-  ___divsa3
-  ___divda3
-  ___divta3
-  ___udivuqq3
-  ___udivuhq3
-  ___udivusq3
-  ___udivudq3
-  ___udivutq3
-  ___udivuha3
-  ___udivusa3
-  ___udivuda3
-  ___udivuta3
-  ___ssdivqq3
-  ___ssdivhq3
-  ___ssdivsq3
-  ___ssdivdq3
-  ___ssdivtq3
-  ___ssdivha3
-  ___ssdivsa3
-  ___ssdivda3
-  ___ssdivta3
-  ___usdivuqq3
-  ___usdivuhq3
-  ___usdivusq3
-  ___usdivudq3
-  ___usdivutq3
-  ___usdivuha3
-  ___usdivusa3
-  ___usdivuda3
-  ___usdivuta3
-  ___negqq2
-  ___neghq2
-  ___negsq2
-  ___negdq2
-  ___negtq2
-  ___neguqq2
-  ___neguhq2
-  ___negusq2
-  ___negudq2
-  ___negutq2
-  ___negha2
-  ___negsa2
-  ___negda2
-  ___negta2
-  ___neguha2
-  ___negusa2
-  ___neguda2
-  ___neguta2
-  ___ssnegqq2
-  ___ssneghq2
-  ___ssnegsq2
-  ___ssnegdq2
-  ___ssnegtq2
-  ___ssnegha2
-  ___ssnegsa2
-  ___ssnegda2
-  ___ssnegta2
-  ___usneguqq2
-  ___usneguhq2
-  ___usnegusq2
-  ___usnegudq2
-  ___usnegutq2
-  ___usneguha2
-  ___usnegusa2
-  ___usneguda2
-  ___usneguta2
-  ___ashlqq3
-  ___ashlhq3
-  ___ashlsq3
-  ___ashldq3
-  ___ashltq3
-  ___ashluqq3
-  ___ashluhq3
-  ___ashlusq3
-  ___ashludq3
-  ___ashlutq3
-  ___ashlha3
-  ___ashlsa3
-  ___ashlda3
-  ___ashlta3
-  ___ashluha3
-  ___ashlusa3
-  ___ashluda3
-  ___ashluta3
-  ___ashrqq3
-  ___ashrhq3
-  ___ashrsq3
-  ___ashrdq3
-  ___ashrtq3
-  ___ashrha3
-  ___ashrsa3
-  ___ashrda3
-  ___ashrta3
-  ___lshruqq3
-  ___lshruhq3
-  ___lshrusq3
-  ___lshrudq3
-  ___lshrutq3
-  ___lshruha3
-  ___lshrusa3
-  ___lshruda3
-  ___lshruta3
-  ___ssashlqq3
-  ___ssashlhq3
-  ___ssashlsq3
-  ___ssashldq3
-  ___ssashltq3
-  ___ssashlha3
-  ___ssashlsa3
-  ___ssashlda3
-  ___ssashlta3
-  ___usashluqq3
-  ___usashluhq3
-  ___usashlusq3
-  ___usashludq3
-  ___usashlutq3
-  ___usashluha3
-  ___usashlusa3
-  ___usashluda3
-  ___usashluta3
-  ___cmpqq2
-  ___cmphq2
-  ___cmpsq2
-  ___cmpdq2
-  ___cmptq2
-  ___cmpuqq2
-  ___cmpuhq2
-  ___cmpusq2
-  ___cmpudq2
-  ___cmputq2
-  ___cmpha2
-  ___cmpsa2
-  ___cmpda2
-  ___cmpta2
-  ___cmpuha2
-  ___cmpusa2
-  ___cmpuda2
-  ___cmputa2
-  ___fractqqhq2
-  ___fractqqsq2
-  ___fractqqdq2
-  ___fractqqtq2
-  ___fractqqha
-  ___fractqqsa
-  ___fractqqda
-  ___fractqqta
-  ___fractqquqq
-  ___fractqquhq
-  ___fractqqusq
-  ___fractqqudq
-  ___fractqqutq
-  ___fractqquha
-  ___fractqqusa
-  ___fractqquda
-  ___fractqquta
-  ___fractqqqi
-  ___fractqqhi
-  ___fractqqsi
-  ___fractqqdi
-  ___fractqqti
-  ___fractqqsf
-  ___fractqqdf
-  ___fracthqqq2
-  ___fracthqsq2
-  ___fracthqdq2
-  ___fracthqtq2
-  ___fracthqha
-  ___fracthqsa
-  ___fracthqda
-  ___fracthqta
-  ___fracthquqq
-  ___fracthquhq
-  ___fracthqusq
-  ___fracthqudq
-  ___fracthqutq
-  ___fracthquha
-  ___fracthqusa
-  ___fracthquda
-  ___fracthquta
-  ___fracthqqi
-  ___fracthqhi
-  ___fracthqsi
-  ___fracthqdi
-  ___fracthqti
-  ___fracthqsf
-  ___fracthqdf
-  ___fractsqqq2
-  ___fractsqhq2
-  ___fractsqdq2
-  ___fractsqtq2
-  ___fractsqha
-  ___fractsqsa
-  ___fractsqda
-  ___fractsqta
-  ___fractsquqq
-  ___fractsquhq
-  ___fractsqusq
-  ___fractsqudq
-  ___fractsqutq
-  ___fractsquha
-  ___fractsqusa
-  ___fractsquda
-  ___fractsquta
-  ___fractsqqi
-  ___fractsqhi
-  ___fractsqsi
-  ___fractsqdi
-  ___fractsqti
-  ___fractsqsf
-  ___fractsqdf
-  ___fractdqqq2
-  ___fractdqhq2
-  ___fractdqsq2
-  ___fractdqtq2
-  ___fractdqha
-  ___fractdqsa
-  ___fractdqda
-  ___fractdqta
-  ___fractdquqq
-  ___fractdquhq
-  ___fractdqusq
-  ___fractdqudq
-  ___fractdqutq
-  ___fractdquha
-  ___fractdqusa
-  ___fractdquda
-  ___fractdquta
-  ___fractdqqi
-  ___fractdqhi
-  ___fractdqsi
-  ___fractdqdi
-  ___fractdqti
-  ___fractdqsf
-  ___fractdqdf
-  ___fracttqqq2
-  ___fracttqhq2
-  ___fracttqsq2
-  ___fracttqdq2
-  ___fracttqha
-  ___fracttqsa
-  ___fracttqda
-  ___fracttqta
-  ___fracttquqq
-  ___fracttquhq
-  ___fracttqusq
-  ___fracttqudq
-  ___fracttqutq
-  ___fracttquha
-  ___fracttqusa
-  ___fracttquda
-  ___fracttquta
-  ___fracttqqi
-  ___fracttqhi
-  ___fracttqsi
-  ___fracttqdi
-  ___fracttqti
-  ___fracttqsf
-  ___fracttqdf
-  ___fracthaqq
-  ___fracthahq
-  ___fracthasq
-  ___fracthadq
-  ___fracthatq
-  ___fracthasa2
-  ___fracthada2
-  ___fracthata2
-  ___fracthauqq
-  ___fracthauhq
-  ___fracthausq
-  ___fracthaudq
-  ___fracthautq
-  ___fracthauha
-  ___fracthausa
-  ___fracthauda
-  ___fracthauta
-  ___fracthaqi
-  ___fracthahi
-  ___fracthasi
-  ___fracthadi
-  ___fracthati
-  ___fracthasf
-  ___fracthadf
-  ___fractsaqq
-  ___fractsahq
-  ___fractsasq
-  ___fractsadq
-  ___fractsatq
-  ___fractsaha2
-  ___fractsada2
-  ___fractsata2
-  ___fractsauqq
-  ___fractsauhq
-  ___fractsausq
-  ___fractsaudq
-  ___fractsautq
-  ___fractsauha
-  ___fractsausa
-  ___fractsauda
-  ___fractsauta
-  ___fractsaqi
-  ___fractsahi
-  ___fractsasi
-  ___fractsadi
-  ___fractsati
-  ___fractsasf
-  ___fractsadf
-  ___fractdaqq
-  ___fractdahq
-  ___fractdasq
-  ___fractdadq
-  ___fractdatq
-  ___fractdaha2
-  ___fractdasa2
-  ___fractdata2
-  ___fractdauqq
-  ___fractdauhq
-  ___fractdausq
-  ___fractdaudq
-  ___fractdautq
-  ___fractdauha
-  ___fractdausa
-  ___fractdauda
-  ___fractdauta
-  ___fractdaqi
-  ___fractdahi
-  ___fractdasi
-  ___fractdadi
-  ___fractdati
-  ___fractdasf
-  ___fractdadf
-  ___fracttaqq
-  ___fracttahq
-  ___fracttasq
-  ___fracttadq
-  ___fracttatq
-  ___fracttaha2
-  ___fracttasa2
-  ___fracttada2
-  ___fracttauqq
-  ___fracttauhq
-  ___fracttausq
-  ___fracttaudq
-  ___fracttautq
-  ___fracttauha
-  ___fracttausa
-  ___fracttauda
-  ___fracttauta
-  ___fracttaqi
-  ___fracttahi
-  ___fracttasi
-  ___fracttadi
-  ___fracttati
-  ___fracttasf
-  ___fracttadf
-  ___fractuqqqq
-  ___fractuqqhq
-  ___fractuqqsq
-  ___fractuqqdq
-  ___fractuqqtq
-  ___fractuqqha
-  ___fractuqqsa
-  ___fractuqqda
-  ___fractuqqta
-  ___fractuqquhq2
-  ___fractuqqusq2
-  ___fractuqqudq2
-  ___fractuqqutq2
-  ___fractuqquha
-  ___fractuqqusa
-  ___fractuqquda
-  ___fractuqquta
-  ___fractuqqqi
-  ___fractuqqhi
-  ___fractuqqsi
-  ___fractuqqdi
-  ___fractuqqti
-  ___fractuqqsf
-  ___fractuqqdf
-  ___fractuhqqq
-  ___fractuhqhq
-  ___fractuhqsq
-  ___fractuhqdq
-  ___fractuhqtq
-  ___fractuhqha
-  ___fractuhqsa
-  ___fractuhqda
-  ___fractuhqta
-  ___fractuhquqq2
-  ___fractuhqusq2
-  ___fractuhqudq2
-  ___fractuhqutq2
-  ___fractuhquha
-  ___fractuhqusa
-  ___fractuhquda
-  ___fractuhquta
-  ___fractuhqqi
-  ___fractuhqhi
-  ___fractuhqsi
-  ___fractuhqdi
-  ___fractuhqti
-  ___fractuhqsf
-  ___fractuhqdf
-  ___fractusqqq
-  ___fractusqhq
-  ___fractusqsq
-  ___fractusqdq
-  ___fractusqtq
-  ___fractusqha
-  ___fractusqsa
-  ___fractusqda
-  ___fractusqta
-  ___fractusquqq2
-  ___fractusquhq2
-  ___fractusqudq2
-  ___fractusqutq2
-  ___fractusquha
-  ___fractusqusa
-  ___fractusquda
-  ___fractusquta
-  ___fractusqqi
-  ___fractusqhi
-  ___fractusqsi
-  ___fractusqdi
-  ___fractusqti
-  ___fractusqsf
-  ___fractusqdf
-  ___fractudqqq
-  ___fractudqhq
-  ___fractudqsq
-  ___fractudqdq
-  ___fractudqtq
-  ___fractudqha
-  ___fractudqsa
-  ___fractudqda
-  ___fractudqta
-  ___fractudquqq2
-  ___fractudquhq2
-  ___fractudqusq2
-  ___fractudqutq2
-  ___fractudquha
-  ___fractudqusa
-  ___fractudquda
-  ___fractudquta
-  ___fractudqqi
-  ___fractudqhi
-  ___fractudqsi
-  ___fractudqdi
-  ___fractudqti
-  ___fractudqsf
-  ___fractudqdf
-  ___fractutqqq
-  ___fractutqhq
-  ___fractutqsq
-  ___fractutqdq
-  ___fractutqtq
-  ___fractutqha
-  ___fractutqsa
-  ___fractutqda
-  ___fractutqta
-  ___fractutquqq2
-  ___fractutquhq2
-  ___fractutqusq2
-  ___fractutqudq2
-  ___fractutquha
-  ___fractutqusa
-  ___fractutquda
-  ___fractutquta
-  ___fractutqqi
-  ___fractutqhi
-  ___fractutqsi
-  ___fractutqdi
-  ___fractutqti
-  ___fractutqsf
-  ___fractutqdf
-  ___fractuhaqq
-  ___fractuhahq
-  ___fractuhasq
-  ___fractuhadq
-  ___fractuhatq
-  ___fractuhaha
-  ___fractuhasa
-  ___fractuhada
-  ___fractuhata
-  ___fractuhauqq
-  ___fractuhauhq
-  ___fractuhausq
-  ___fractuhaudq
-  ___fractuhautq
-  ___fractuhausa2
-  ___fractuhauda2
-  ___fractuhauta2
-  ___fractuhaqi
-  ___fractuhahi
-  ___fractuhasi
-  ___fractuhadi
-  ___fractuhati
-  ___fractuhasf
-  ___fractuhadf
-  ___fractusaqq
-  ___fractusahq
-  ___fractusasq
-  ___fractusadq
-  ___fractusatq
-  ___fractusaha
-  ___fractusasa
-  ___fractusada
-  ___fractusata
-  ___fractusauqq
-  ___fractusauhq
-  ___fractusausq
-  ___fractusaudq
-  ___fractusautq
-  ___fractusauha2
-  ___fractusauda2
-  ___fractusauta2
-  ___fractusaqi
-  ___fractusahi
-  ___fractusasi
-  ___fractusadi
-  ___fractusati
-  ___fractusasf
-  ___fractusadf
-  ___fractudaqq
-  ___fractudahq
-  ___fractudasq
-  ___fractudadq
-  ___fractudatq
-  ___fractudaha
-  ___fractudasa
-  ___fractudada
-  ___fractudata
-  ___fractudauqq
-  ___fractudauhq
-  ___fractudausq
-  ___fractudaudq
-  ___fractudautq
-  ___fractudauha2
-  ___fractudausa2
-  ___fractudauta2
-  ___fractudaqi
-  ___fractudahi
-  ___fractudasi
-  ___fractudadi
-  ___fractudati
-  ___fractudasf
-  ___fractudadf
-  ___fractutaqq
-  ___fractutahq
-  ___fractutasq
-  ___fractutadq
-  ___fractutatq
-  ___fractutaha
-  ___fractutasa
-  ___fractutada
-  ___fractutata
-  ___fractutauqq
-  ___fractutauhq
-  ___fractutausq
-  ___fractutaudq
-  ___fractutautq
-  ___fractutauha2
-  ___fractutausa2
-  ___fractutauda2
-  ___fractutaqi
-  ___fractutahi
-  ___fractutasi
-  ___fractutadi
-  ___fractutati
-  ___fractutasf
-  ___fractutadf
-  ___fractqiqq
-  ___fractqihq
-  ___fractqisq
-  ___fractqidq
-  ___fractqitq
-  ___fractqiha
-  ___fractqisa
-  ___fractqida
-  ___fractqita
-  ___fractqiuqq
-  ___fractqiuhq
-  ___fractqiusq
-  ___fractqiudq
-  ___fractqiutq
-  ___fractqiuha
-  ___fractqiusa
-  ___fractqiuda
-  ___fractqiuta
-  ___fracthiqq
-  ___fracthihq
-  ___fracthisq
-  ___fracthidq
-  ___fracthitq
-  ___fracthiha
-  ___fracthisa
-  ___fracthida
-  ___fracthita
-  ___fracthiuqq
-  ___fracthiuhq
-  ___fracthiusq
-  ___fracthiudq
-  ___fracthiutq
-  ___fracthiuha
-  ___fracthiusa
-  ___fracthiuda
-  ___fracthiuta
-  ___fractsiqq
-  ___fractsihq
-  ___fractsisq
-  ___fractsidq
-  ___fractsitq
-  ___fractsiha
-  ___fractsisa
-  ___fractsida
-  ___fractsita
-  ___fractsiuqq
-  ___fractsiuhq
-  ___fractsiusq
-  ___fractsiudq
-  ___fractsiutq
-  ___fractsiuha
-  ___fractsiusa
-  ___fractsiuda
-  ___fractsiuta
-  ___fractdiqq
-  ___fractdihq
-  ___fractdisq
-  ___fractdidq
-  ___fractditq
-  ___fractdiha
-  ___fractdisa
-  ___fractdida
-  ___fractdita
-  ___fractdiuqq
-  ___fractdiuhq
-  ___fractdiusq
-  ___fractdiudq
-  ___fractdiutq
-  ___fractdiuha
-  ___fractdiusa
-  ___fractdiuda
-  ___fractdiuta
-  ___fracttiqq
-  ___fracttihq
-  ___fracttisq
-  ___fracttidq
-  ___fracttitq
-  ___fracttiha
-  ___fracttisa
-  ___fracttida
-  ___fracttita
-  ___fracttiuqq
-  ___fracttiuhq
-  ___fracttiusq
-  ___fracttiudq
-  ___fracttiutq
-  ___fracttiuha
-  ___fracttiusa
-  ___fracttiuda
-  ___fracttiuta
-  ___fractsfqq
-  ___fractsfhq
-  ___fractsfsq
-  ___fractsfdq
-  ___fractsftq
-  ___fractsfha
-  ___fractsfsa
-  ___fractsfda
-  ___fractsfta
-  ___fractsfuqq
-  ___fractsfuhq
-  ___fractsfusq
-  ___fractsfudq
-  ___fractsfutq
-  ___fractsfuha
-  ___fractsfusa
-  ___fractsfuda
-  ___fractsfuta
-  ___fractdfqq
-  ___fractdfhq
-  ___fractdfsq
-  ___fractdfdq
-  ___fractdftq
-  ___fractdfha
-  ___fractdfsa
-  ___fractdfda
-  ___fractdfta
-  ___fractdfuqq
-  ___fractdfuhq
-  ___fractdfusq
-  ___fractdfudq
-  ___fractdfutq
-  ___fractdfuha
-  ___fractdfusa
-  ___fractdfuda
-  ___fractdfuta
-  ___satfractqqhq2
-  ___satfractqqsq2
-  ___satfractqqdq2
-  ___satfractqqtq2
-  ___satfractqqha
-  ___satfractqqsa
-  ___satfractqqda
-  ___satfractqqta
-  ___satfractqquqq
-  ___satfractqquhq
-  ___satfractqqusq
-  ___satfractqqudq
-  ___satfractqqutq
-  ___satfractqquha
-  ___satfractqqusa
-  ___satfractqquda
-  ___satfractqquta
-  ___satfracthqqq2
-  ___satfracthqsq2
-  ___satfracthqdq2
-  ___satfracthqtq2
-  ___satfracthqha
-  ___satfracthqsa
-  ___satfracthqda
-  ___satfracthqta
-  ___satfracthquqq
-  ___satfracthquhq
-  ___satfracthqusq
-  ___satfracthqudq
-  ___satfracthqutq
-  ___satfracthquha
-  ___satfracthqusa
-  ___satfracthquda
-  ___satfracthquta
-  ___satfractsqqq2
-  ___satfractsqhq2
-  ___satfractsqdq2
-  ___satfractsqtq2
-  ___satfractsqha
-  ___satfractsqsa
-  ___satfractsqda
-  ___satfractsqta
-  ___satfractsquqq
-  ___satfractsquhq
-  ___satfractsqusq
-  ___satfractsqudq
-  ___satfractsqutq
-  ___satfractsquha
-  ___satfractsqusa
-  ___satfractsquda
-  ___satfractsquta
-  ___satfractdqqq2
-  ___satfractdqhq2
-  ___satfractdqsq2
-  ___satfractdqtq2
-  ___satfractdqha
-  ___satfractdqsa
-  ___satfractdqda
-  ___satfractdqta
-  ___satfractdquqq
-  ___satfractdquhq
-  ___satfractdqusq
-  ___satfractdqudq
-  ___satfractdqutq
-  ___satfractdquha
-  ___satfractdqusa
-  ___satfractdquda
-  ___satfractdquta
-  ___satfracttqqq2
-  ___satfracttqhq2
-  ___satfracttqsq2
-  ___satfracttqdq2
-  ___satfracttqha
-  ___satfracttqsa
-  ___satfracttqda
-  ___satfracttqta
-  ___satfracttquqq
-  ___satfracttquhq
-  ___satfracttqusq
-  ___satfracttqudq
-  ___satfracttqutq
-  ___satfracttquha
-  ___satfracttqusa
-  ___satfracttquda
-  ___satfracttquta
-  ___satfracthaqq
-  ___satfracthahq
-  ___satfracthasq
-  ___satfracthadq
-  ___satfracthatq
-  ___satfracthasa2
-  ___satfracthada2
-  ___satfracthata2
-  ___satfracthauqq
-  ___satfracthauhq
-  ___satfracthausq
-  ___satfracthaudq
-  ___satfracthautq
-  ___satfracthauha
-  ___satfracthausa
-  ___satfracthauda
-  ___satfracthauta
-  ___satfractsaqq
-  ___satfractsahq
-  ___satfractsasq
-  ___satfractsadq
-  ___satfractsatq
-  ___satfractsaha2
-  ___satfractsada2
-  ___satfractsata2
-  ___satfractsauqq
-  ___satfractsauhq
-  ___satfractsausq
-  ___satfractsaudq
-  ___satfractsautq
-  ___satfractsauha
-  ___satfractsausa
-  ___satfractsauda
-  ___satfractsauta
-  ___satfractdaqq
-  ___satfractdahq
-  ___satfractdasq
-  ___satfractdadq
-  ___satfractdatq
-  ___satfractdaha2
-  ___satfractdasa2
-  ___satfractdata2
-  ___satfractdauqq
-  ___satfractdauhq
-  ___satfractdausq
-  ___satfractdaudq
-  ___satfractdautq
-  ___satfractdauha
-  ___satfractdausa
-  ___satfractdauda
-  ___satfractdauta
-  ___satfracttaqq
-  ___satfracttahq
-  ___satfracttasq
-  ___satfracttadq
-  ___satfracttatq
-  ___satfracttaha2
-  ___satfracttasa2
-  ___satfracttada2
-  ___satfracttauqq
-  ___satfracttauhq
-  ___satfracttausq
-  ___satfracttaudq
-  ___satfracttautq
-  ___satfracttauha
-  ___satfracttausa
-  ___satfracttauda
-  ___satfracttauta
-  ___satfractuqqqq
-  ___satfractuqqhq
-  ___satfractuqqsq
-  ___satfractuqqdq
-  ___satfractuqqtq
-  ___satfractuqqha
-  ___satfractuqqsa
-  ___satfractuqqda
-  ___satfractuqqta
-  ___satfractuqquhq2
-  ___satfractuqqusq2
-  ___satfractuqqudq2
-  ___satfractuqqutq2
-  ___satfractuqquha
-  ___satfractuqqusa
-  ___satfractuqquda
-  ___satfractuqquta
-  ___satfractuhqqq
-  ___satfractuhqhq
-  ___satfractuhqsq
-  ___satfractuhqdq
-  ___satfractuhqtq
-  ___satfractuhqha
-  ___satfractuhqsa
-  ___satfractuhqda
-  ___satfractuhqta
-  ___satfractuhquqq2
-  ___satfractuhqusq2
-  ___satfractuhqudq2
-  ___satfractuhqutq2
-  ___satfractuhquha
-  ___satfractuhqusa
-  ___satfractuhquda
-  ___satfractuhquta
-  ___satfractusqqq
-  ___satfractusqhq
-  ___satfractusqsq
-  ___satfractusqdq
-  ___satfractusqtq
-  ___satfractusqha
-  ___satfractusqsa
-  ___satfractusqda
-  ___satfractusqta
-  ___satfractusquqq2
-  ___satfractusquhq2
-  ___satfractusqudq2
-  ___satfractusqutq2
-  ___satfractusquha
-  ___satfractusqusa
-  ___satfractusquda
-  ___satfractusquta
-  ___satfractudqqq
-  ___satfractudqhq
-  ___satfractudqsq
-  ___satfractudqdq
-  ___satfractudqtq
-  ___satfractudqha
-  ___satfractudqsa
-  ___satfractudqda
-  ___satfractudqta
-  ___satfractudquqq2
-  ___satfractudquhq2
-  ___satfractudqusq2
-  ___satfractudqutq2
-  ___satfractudquha
-  ___satfractudqusa
-  ___satfractudquda
-  ___satfractudquta
-  ___satfractutqqq
-  ___satfractutqhq
-  ___satfractutqsq
-  ___satfractutqdq
-  ___satfractutqtq
-  ___satfractutqha
-  ___satfractutqsa
-  ___satfractutqda
-  ___satfractutqta
-  ___satfractutquqq2
-  ___satfractutquhq2
-  ___satfractutqusq2
-  ___satfractutqudq2
-  ___satfractutquha
-  ___satfractutqusa
-  ___satfractutquda
-  ___satfractutquta
-  ___satfractuhaqq
-  ___satfractuhahq
-  ___satfractuhasq
-  ___satfractuhadq
-  ___satfractuhatq
-  ___satfractuhaha
-  ___satfractuhasa
-  ___satfractuhada
-  ___satfractuhata
-  ___satfractuhauqq
-  ___satfractuhauhq
-  ___satfractuhausq
-  ___satfractuhaudq
-  ___satfractuhautq
-  ___satfractuhausa2
-  ___satfractuhauda2
-  ___satfractuhauta2
-  ___satfractusaqq
-  ___satfractusahq
-  ___satfractusasq
-  ___satfractusadq
-  ___satfractusatq
-  ___satfractusaha
-  ___satfractusasa
-  ___satfractusada
-  ___satfractusata
-  ___satfractusauqq
-  ___satfractusauhq
-  ___satfractusausq
-  ___satfractusaudq
-  ___satfractusautq
-  ___satfractusauha2
-  ___satfractusauda2
-  ___satfractusauta2
-  ___satfractudaqq
-  ___satfractudahq
-  ___satfractudasq
-  ___satfractudadq
-  ___satfractudatq
-  ___satfractudaha
-  ___satfractudasa
-  ___satfractudada
-  ___satfractudata
-  ___satfractudauqq
-  ___satfractudauhq
-  ___satfractudausq
-  ___satfractudaudq
-  ___satfractudautq
-  ___satfractudauha2
-  ___satfractudausa2
-  ___satfractudauta2
-  ___satfractutaqq
-  ___satfractutahq
-  ___satfractutasq
-  ___satfractutadq
-  ___satfractutatq
-  ___satfractutaha
-  ___satfractutasa
-  ___satfractutada
-  ___satfractutata
-  ___satfractutauqq
-  ___satfractutauhq
-  ___satfractutausq
-  ___satfractutaudq
-  ___satfractutautq
-  ___satfractutauha2
-  ___satfractutausa2
-  ___satfractutauda2
-  ___satfractqiqq
-  ___satfractqihq
-  ___satfractqisq
-  ___satfractqidq
-  ___satfractqitq
-  ___satfractqiha
-  ___satfractqisa
-  ___satfractqida
-  ___satfractqita
-  ___satfractqiuqq
-  ___satfractqiuhq
-  ___satfractqiusq
-  ___satfractqiudq
-  ___satfractqiutq
-  ___satfractqiuha
-  ___satfractqiusa
-  ___satfractqiuda
-  ___satfractqiuta
-  ___satfracthiqq
-  ___satfracthihq
-  ___satfracthisq
-  ___satfracthidq
-  ___satfracthitq
-  ___satfracthiha
-  ___satfracthisa
-  ___satfracthida
-  ___satfracthita
-  ___satfracthiuqq
-  ___satfracthiuhq
-  ___satfracthiusq
-  ___satfracthiudq
-  ___satfracthiutq
-  ___satfracthiuha
-  ___satfracthiusa
-  ___satfracthiuda
-  ___satfracthiuta
-  ___satfractsiqq
-  ___satfractsihq
-  ___satfractsisq
-  ___satfractsidq
-  ___satfractsitq
-  ___satfractsiha
-  ___satfractsisa
-  ___satfractsida
-  ___satfractsita
-  ___satfractsiuqq
-  ___satfractsiuhq
-  ___satfractsiusq
-  ___satfractsiudq
-  ___satfractsiutq
-  ___satfractsiuha
-  ___satfractsiusa
-  ___satfractsiuda
-  ___satfractsiuta
-  ___satfractdiqq
-  ___satfractdihq
-  ___satfractdisq
-  ___satfractdidq
-  ___satfractditq
-  ___satfractdiha
-  ___satfractdisa
-  ___satfractdida
-  ___satfractdita
-  ___satfractdiuqq
-  ___satfractdiuhq
-  ___satfractdiusq
-  ___satfractdiudq
-  ___satfractdiutq
-  ___satfractdiuha
-  ___satfractdiusa
-  ___satfractdiuda
-  ___satfractdiuta
-  ___satfracttiqq
-  ___satfracttihq
-  ___satfracttisq
-  ___satfracttidq
-  ___satfracttitq
-  ___satfracttiha
-  ___satfracttisa
-  ___satfracttida
-  ___satfracttita
-  ___satfracttiuqq
-  ___satfracttiuhq
-  ___satfracttiusq
-  ___satfracttiudq
-  ___satfracttiutq
-  ___satfracttiuha
-  ___satfracttiusa
-  ___satfracttiuda
-  ___satfracttiuta
-  ___satfractsfqq
-  ___satfractsfhq
-  ___satfractsfsq
-  ___satfractsfdq
-  ___satfractsftq
-  ___satfractsfha
-  ___satfractsfsa
-  ___satfractsfda
-  ___satfractsfta
-  ___satfractsfuqq
-  ___satfractsfuhq
-  ___satfractsfusq
-  ___satfractsfudq
-  ___satfractsfutq
-  ___satfractsfuha
-  ___satfractsfusa
-  ___satfractsfuda
-  ___satfractsfuta
-  ___satfractdfqq
-  ___satfractdfhq
-  ___satfractdfsq
-  ___satfractdfdq
-  ___satfractdftq
-  ___satfractdfha
-  ___satfractdfsa
-  ___satfractdfda
-  ___satfractdfta
-  ___satfractdfuqq
-  ___satfractdfuhq
-  ___satfractdfusq
-  ___satfractdfudq
-  ___satfractdfutq
-  ___satfractdfuha
-  ___satfractdfusa
-  ___satfractdfuda
-  ___satfractdfuta
-  ___fractunsqqqi
-  ___fractunsqqhi
-  ___fractunsqqsi
-  ___fractunsqqdi
-  ___fractunsqqti
-  ___fractunshqqi
-  ___fractunshqhi
-  ___fractunshqsi
-  ___fractunshqdi
-  ___fractunshqti
-  ___fractunssqqi
-  ___fractunssqhi
-  ___fractunssqsi
-  ___fractunssqdi
-  ___fractunssqti
-  ___fractunsdqqi
-  ___fractunsdqhi
-  ___fractunsdqsi
-  ___fractunsdqdi
-  ___fractunsdqti
-  ___fractunstqqi
-  ___fractunstqhi
-  ___fractunstqsi
-  ___fractunstqdi
-  ___fractunstqti
-  ___fractunshaqi
-  ___fractunshahi
-  ___fractunshasi
-  ___fractunshadi
-  ___fractunshati
-  ___fractunssaqi
-  ___fractunssahi
-  ___fractunssasi
-  ___fractunssadi
-  ___fractunssati
-  ___fractunsdaqi
-  ___fractunsdahi
-  ___fractunsdasi
-  ___fractunsdadi
-  ___fractunsdati
-  ___fractunstaqi
-  ___fractunstahi
-  ___fractunstasi
-  ___fractunstadi
-  ___fractunstati
-  ___fractunsuqqqi
-  ___fractunsuqqhi
-  ___fractunsuqqsi
-  ___fractunsuqqdi
-  ___fractunsuqqti
-  ___fractunsuhqqi
-  ___fractunsuhqhi
-  ___fractunsuhqsi
-  ___fractunsuhqdi
-  ___fractunsuhqti
-  ___fractunsusqqi
-  ___fractunsusqhi
-  ___fractunsusqsi
-  ___fractunsusqdi
-  ___fractunsusqti
-  ___fractunsudqqi
-  ___fractunsudqhi
-  ___fractunsudqsi
-  ___fractunsudqdi
-  ___fractunsudqti
-  ___fractunsutqqi
-  ___fractunsutqhi
-  ___fractunsutqsi
-  ___fractunsutqdi
-  ___fractunsutqti
-  ___fractunsuhaqi
-  ___fractunsuhahi
-  ___fractunsuhasi
-  ___fractunsuhadi
-  ___fractunsuhati
-  ___fractunsusaqi
-  ___fractunsusahi
-  ___fractunsusasi
-  ___fractunsusadi
-  ___fractunsusati
-  ___fractunsudaqi
-  ___fractunsudahi
-  ___fractunsudasi
-  ___fractunsudadi
-  ___fractunsudati
-  ___fractunsutaqi
-  ___fractunsutahi
-  ___fractunsutasi
-  ___fractunsutadi
-  ___fractunsutati
-  ___fractunsqiqq
-  ___fractunsqihq
-  ___fractunsqisq
-  ___fractunsqidq
-  ___fractunsqitq
-  ___fractunsqiha
-  ___fractunsqisa
-  ___fractunsqida
-  ___fractunsqita
-  ___fractunsqiuqq
-  ___fractunsqiuhq
-  ___fractunsqiusq
-  ___fractunsqiudq
-  ___fractunsqiutq
-  ___fractunsqiuha
-  ___fractunsqiusa
-  ___fractunsqiuda
-  ___fractunsqiuta
-  ___fractunshiqq
-  ___fractunshihq
-  ___fractunshisq
-  ___fractunshidq
-  ___fractunshitq
-  ___fractunshiha
-  ___fractunshisa
-  ___fractunshida
-  ___fractunshita
-  ___fractunshiuqq
-  ___fractunshiuhq
-  ___fractunshiusq
-  ___fractunshiudq
-  ___fractunshiutq
-  ___fractunshiuha
-  ___fractunshiusa
-  ___fractunshiuda
-  ___fractunshiuta
-  ___fractunssiqq
-  ___fractunssihq
-  ___fractunssisq
-  ___fractunssidq
-  ___fractunssitq
-  ___fractunssiha
-  ___fractunssisa
-  ___fractunssida
-  ___fractunssita
-  ___fractunssiuqq
-  ___fractunssiuhq
-  ___fractunssiusq
-  ___fractunssiudq
-  ___fractunssiutq
-  ___fractunssiuha
-  ___fractunssiusa
-  ___fractunssiuda
-  ___fractunssiuta
-  ___fractunsdiqq
-  ___fractunsdihq
-  ___fractunsdisq
-  ___fractunsdidq
-  ___fractunsditq
-  ___fractunsdiha
-  ___fractunsdisa
-  ___fractunsdida
-  ___fractunsdita
-  ___fractunsdiuqq
-  ___fractunsdiuhq
-  ___fractunsdiusq
-  ___fractunsdiudq
-  ___fractunsdiutq
-  ___fractunsdiuha
-  ___fractunsdiusa
-  ___fractunsdiuda
-  ___fractunsdiuta
-  ___fractunstiqq
-  ___fractunstihq
-  ___fractunstisq
-  ___fractunstidq
-  ___fractunstitq
-  ___fractunstiha
-  ___fractunstisa
-  ___fractunstida
-  ___fractunstita
-  ___fractunstiuqq
-  ___fractunstiuhq
-  ___fractunstiusq
-  ___fractunstiudq
-  ___fractunstiutq
-  ___fractunstiuha
-  ___fractunstiusa
-  ___fractunstiuda
-  ___fractunstiuta
-  ___satfractunsqiqq
-  ___satfractunsqihq
-  ___satfractunsqisq
-  ___satfractunsqidq
-  ___satfractunsqitq
-  ___satfractunsqiha
-  ___satfractunsqisa
-  ___satfractunsqida
-  ___satfractunsqita
-  ___satfractunsqiuqq
-  ___satfractunsqiuhq
-  ___satfractunsqiusq
-  ___satfractunsqiudq
-  ___satfractunsqiutq
-  ___satfractunsqiuha
-  ___satfractunsqiusa
-  ___satfractunsqiuda
-  ___satfractunsqiuta
-  ___satfractunshiqq
-  ___satfractunshihq
-  ___satfractunshisq
-  ___satfractunshidq
-  ___satfractunshitq
-  ___satfractunshiha
-  ___satfractunshisa
-  ___satfractunshida
-  ___satfractunshita
-  ___satfractunshiuqq
-  ___satfractunshiuhq
-  ___satfractunshiusq
-  ___satfractunshiudq
-  ___satfractunshiutq
-  ___satfractunshiuha
-  ___satfractunshiusa
-  ___satfractunshiuda
-  ___satfractunshiuta
-  ___satfractunssiqq
-  ___satfractunssihq
-  ___satfractunssisq
-  ___satfractunssidq
-  ___satfractunssitq
-  ___satfractunssiha
-  ___satfractunssisa
-  ___satfractunssida
-  ___satfractunssita
-  ___satfractunssiuqq
-  ___satfractunssiuhq
-  ___satfractunssiusq
-  ___satfractunssiudq
-  ___satfractunssiutq
-  ___satfractunssiuha
-  ___satfractunssiusa
-  ___satfractunssiuda
-  ___satfractunssiuta
-  ___satfractunsdiqq
-  ___satfractunsdihq
-  ___satfractunsdisq
-  ___satfractunsdidq
-  ___satfractunsditq
-  ___satfractunsdiha
-  ___satfractunsdisa
-  ___satfractunsdida
-  ___satfractunsdita
-  ___satfractunsdiuqq
-  ___satfractunsdiuhq
-  ___satfractunsdiusq
-  ___satfractunsdiudq
-  ___satfractunsdiutq
-  ___satfractunsdiuha
-  ___satfractunsdiusa
-  ___satfractunsdiuda
-  ___satfractunsdiuta
-  ___satfractunstiqq
-  ___satfractunstihq
-  ___satfractunstisq
-  ___satfractunstidq
-  ___satfractunstitq
-  ___satfractunstiha
-  ___satfractunstisa
-  ___satfractunstida
-  ___satfractunstita
-  ___satfractunstiuqq
-  ___satfractunstiuhq
-  ___satfractunstiusq
-  ___satfractunstiudq
-  ___satfractunstiutq
-  ___satfractunstiuha
-  ___satfractunstiusa
-  ___satfractunstiuda
-  ___satfractunstiuta
-}
-
-%inherit GCC_4.4.0 GCC_4.3.0
-GCC_4.4.0 {
-  ___sync_fetch_and_add_1
-  ___sync_fetch_and_sub_1
-  ___sync_fetch_and_or_1
-  ___sync_fetch_and_and_1
-  ___sync_fetch_and_xor_1
-  ___sync_fetch_and_nand_1
-  ___sync_add_and_fetch_1
-  ___sync_sub_and_fetch_1
-  ___sync_or_and_fetch_1
-  ___sync_and_and_fetch_1
-  ___sync_xor_and_fetch_1
-  ___sync_nand_and_fetch_1
-  ___sync_bool_compare_and_swap_1
-  ___sync_val_compare_and_swap_1
-  ___sync_lock_test_and_set_1
-
-  ___sync_fetch_and_add_2
-  ___sync_fetch_and_sub_2
-  ___sync_fetch_and_or_2
-  ___sync_fetch_and_and_2
-  ___sync_fetch_and_xor_2
-  ___sync_fetch_and_nand_2
-  ___sync_add_and_fetch_2
-  ___sync_sub_and_fetch_2
-  ___sync_or_and_fetch_2
-  ___sync_and_and_fetch_2
-  ___sync_xor_and_fetch_2
-  ___sync_nand_and_fetch_2
-  ___sync_bool_compare_and_swap_2
-  ___sync_val_compare_and_swap_2
-  ___sync_lock_test_and_set_2
-
-  ___sync_fetch_and_add_4
-  ___sync_fetch_and_sub_4
-  ___sync_fetch_and_or_4
-  ___sync_fetch_and_and_4
-  ___sync_fetch_and_xor_4
-  ___sync_fetch_and_nand_4
-  ___sync_add_and_fetch_4
-  ___sync_sub_and_fetch_4
-  ___sync_or_and_fetch_4
-  ___sync_and_and_fetch_4
-  ___sync_xor_and_fetch_4
-  ___sync_nand_and_fetch_4
-  ___sync_bool_compare_and_swap_4
-  ___sync_val_compare_and_swap_4
-  ___sync_lock_test_and_set_4
-
-  ___sync_fetch_and_add_8
-  ___sync_fetch_and_sub_8
-  ___sync_fetch_and_or_8
-  ___sync_fetch_and_and_8
-  ___sync_fetch_and_xor_8
-  ___sync_fetch_and_nand_8
-  ___sync_add_and_fetch_8
-  ___sync_sub_and_fetch_8
-  ___sync_or_and_fetch_8
-  ___sync_and_and_fetch_8
-  ___sync_xor_and_fetch_8
-  ___sync_nand_and_fetch_8
-  ___sync_bool_compare_and_swap_8
-  ___sync_val_compare_and_swap_8
-  ___sync_lock_test_and_set_8
-
-  ___sync_fetch_and_add_16
-  ___sync_fetch_and_sub_16
-  ___sync_fetch_and_or_16
-  ___sync_fetch_and_and_16
-  ___sync_fetch_and_xor_16
-  ___sync_fetch_and_nand_16
-  ___sync_add_and_fetch_16
-  ___sync_sub_and_fetch_16
-  ___sync_or_and_fetch_16
-  ___sync_and_and_fetch_16
-  ___sync_xor_and_fetch_16
-  ___sync_nand_and_fetch_16
-  ___sync_bool_compare_and_swap_16
-  ___sync_val_compare_and_swap_16
-  ___sync_lock_test_and_set_16
-
-  ___sync_synchronize
-}
-
-%inherit GCC_4.5.0 GCC_4.4.0
-GCC_4.5.0 {
-  ___unordxf2
-  ___unordtf2
-}
index e7e705ef1d42d421ca0141ba6b509410633bba30..d6f67f0544563294e421834b61f2fb0aa69dedf3 100644 (file)
@@ -49,8 +49,6 @@ MULTILIB_MATCHES+=mcpu?bf532-none=mcpu?bf549m-none
 MULTILIB_MATCHES+=mcpu?bf532-none=mcpu?bf561-none
 MULTILIB_MATCHES+=mcpu?bf532-none=mcpu?bf592-none
 
-SHLIB_MAPFILES=$(srcdir)/config/bfin/libgcc-bfin.ver
-
 EXTRA_MULTILIB_PARTS = crtbegin.o crtend.o crtbeginS.o crtendS.o
 
 # This rule uses MULTILIB_MATCHES to generate a definition of
diff --git a/gcc/config/c6x/libgcc-c6xeabi.ver b/gcc/config/c6x/libgcc-c6xeabi.ver
deleted file mode 100644 (file)
index 6bce556..0000000
+++ /dev/null
@@ -1,103 +0,0 @@
-# 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/>.
-
-GCC_4.7.0 {
-  __c6xabi_strasgi
-  __c6xabi_call_stub
-  __c6xabi_mpyll
-  __c6xabi_negll
-  __c6xabi_llshru
-  __c6xabi_llshl
-  __c6xabi_llshr
-  __c6xabi_fixfu
-  __c6xabi_fixdu
-  __c6xabi_fixflli
-  __c6xabi_fixdlli
-  __c6xabi_fixfull
-  __c6xabi_fixdull
-  __c6xabi_fltllif
-  __c6xabi_fltllid
-  __c6xabi_fltullf
-  __c6xabi_fltulld
-  __c6xabi_divlli
-  __c6xabi_remlli
-  __c6xabi_divull
-  __c6xabi_remull
-  __c6xabi_divremull
-  __c6xabi_gef
-  __c6xabi_gtf
-  __c6xabi_lef
-  __c6xabi_ltf
-  __c6xabi_eqf
-  __c6xabi_ged
-  __c6xabi_gtd
-  __c6xabi_led
-  __c6xabi_ltd
-  __c6xabi_eqd
-  __c6xabi_addf
-  __c6xabi_divf
-  __c6xabi_neqf
-  __c6xabi_cmpf
-  __c6xabi_mpyf
-  __c6xabi_negf
-  __c6xabi_subf
-  __c6xabi_unordf
-  __c6xabi_fixfi
-  __c6xabi_fltif
-  __c6xabi_fltuf
-  __c6xabi_addd
-  __c6xabi_divd
-  __c6xabi_neqd
-  __c6xabi_cmpd
-  __c6xabi_mpyd
-  __c6xabi_negd
-  __c6xabi_subd
-  __c6xabi_unordd
-  __c6xabi_fixdi
-  __c6xabi_fltid
-  __c6xabi_fltud
-  __c6xabi_cvtfd
-  __c6xabi_cvtdf
-  __c6xabi_mulcf
-  __c6xabi_mulcd
-  __c6xabi_divcf
-  __c6xabi_divcd
-
-  __gnu_ltsf2
-  __gnu_ltdf2
-  __gnu_gesf2
-  __gnu_gedf2
-  __gnu_gtsf2
-  __gnu_gtdf2
-  __gnu_eqsf2
-  __gnu_eqdf2
-
-  # Exception-Handling
-  _Unwind_Complete
-  _Unwind_VRS_Get
-  _Unwind_VRS_Set
-  _Unwind_VRS_Pop
-  __c6xabi_unwind_cpp_pr0
-  __c6xabi_unwind_cpp_pr1
-  __c6xabi_unwind_cpp_pr2
-  __c6xabi_unwind_cpp_pr3
-  __c6xabi_unwind_cpp_pr4
-  # The libstdc++ exception-handling personality routine uses this 
-  # GNU-specific entry point.
-  __gnu_unwind_frame
-}
index 030a39ce18c590cec4da45e2d253e00d674c8c3d..98146150d32d530bceeb0a75ee6f0da51c520e2c 100644 (file)
@@ -63,5 +63,3 @@ EXTRA_MULTILIB_PARTS = crtbegin.o crtend.o crtbeginS.o crtendS.o crti.o crtn.o
 CRTSTUFF_T_CFLAGS = -msdata=none
 CRTSTUFF_T_CFLAGS_S = -msdata=none
 TARGET_LIBGCC2_CFLAGS = -msdata=none
-
-SHLIB_MAPFILES += $(srcdir)/config/c6x/libgcc-c6xeabi.ver
diff --git a/gcc/config/cris/libgcc.ver b/gcc/config/cris/libgcc.ver
deleted file mode 100644 (file)
index e35de83..0000000
+++ /dev/null
@@ -1,7 +0,0 @@
-GCC_4.3 {
- __Mul
- __Div
- __Udiv
- __Mod
- __Umod
-}
index 96e861a428359d8e989de99e2b4444139ef361db..e10d083f5654f89bd16d71f66b637cd63e9d56c9 100644 (file)
@@ -1,6 +1,5 @@
 TARGET_LIBGCC2_CFLAGS += -fPIC
 CRTSTUFF_T_CFLAGS_S = $(TARGET_LIBGCC2_CFLAGS)
-SHLIB_MAPFILES += $(srcdir)/config/cris/libgcc.ver
 
 # We *know* we have a limits.h in the glibc library, with extra
 # definitions needed for e.g. libgfortran.
diff --git a/gcc/config/frv/libgcc-frv.ver b/gcc/config/frv/libgcc-frv.ver
deleted file mode 100644 (file)
index 6e27b4f..0000000
+++ /dev/null
@@ -1,73 +0,0 @@
-# Copyright (C) 2004 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/>.
-
-GCC_3.4 {
-  # frv abi symbol names
-  __ftod
-  __ftoi
-  __ftoui
-  __dtoi
-  __ftoui
-  __dtoui
-  __ftoll
-  __dtoll
-  __ftoull
-  __dtoull
-  __itof
-  __lltof
-  __dtof
-  __itod
-  __lltof
-  __lltod
-  __addd
-  __subd
-  __muld
-  __divd
-  __addf
-  __subf
-  __mulf
-  __divf
-  __sllll
-  __srlll
-  __srall
-  __addll
-  __subll
-  __mulll
-  __umulll
-  __divll
-  __udivll
-  __modll
-  __umodll
-  __cmpll
-  __cmpf
-  __cmpd
-  __andll
-  __orll
-  __xorll
-  __notll
-  __cmov
-  __cmovd
-  __cmovh
-  __cmovw
-  __modi
-  __uitod
-  __uitof
-  __ulltod
-  __ulltof
-  __umodi
-}
index 5b094518a1dd58c48dfb9121bf51d15760806bed..305d3e6de4b8e81f0367a80753c8d58fe8998a83 100644 (file)
@@ -1,4 +1,4 @@
-# Copyright (C) 2004, 2007 Free Software Foundation, Inc.
+# Copyright (C) 2004, 2007, 2011 Free Software Foundation, Inc.
 #
 # This file is part of GCC.
 #
@@ -28,6 +28,3 @@ EXTRA_MULTILIB_PARTS =
 
 CRTSTUFF_T_CFLAGS = -fPIC
 TARGET_LIBGCC2_CFLAGS = -fPIC
-
-SHLIB_MAPFILES = $$(libgcc_objdir)/libgcc-std.ver \
-                $(srcdir)/config/frv/libgcc-frv.ver
diff --git a/gcc/config/i386/darwin-libgcc.10.4.ver b/gcc/config/i386/darwin-libgcc.10.4.ver
deleted file mode 100644 (file)
index 67f5e23..0000000
+++ /dev/null
@@ -1,98 +0,0 @@
-# Copyright (C) 2005 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/>.
-__Unwind_Backtrace
-__Unwind_DeleteException
-__Unwind_FindEnclosingFunction
-__Unwind_Find_FDE
-__Unwind_ForcedUnwind
-__Unwind_GetCFA
-__Unwind_GetDataRelBase
-__Unwind_GetGR
-__Unwind_GetIP
-__Unwind_GetLanguageSpecificData
-__Unwind_GetRegionStart
-__Unwind_GetTextRelBase
-__Unwind_RaiseException
-__Unwind_Resume
-__Unwind_Resume_or_Rethrow
-__Unwind_SetGR
-__Unwind_SetIP
-___absvdi2
-___absvsi2
-___addvdi3
-___addvsi3
-___ashldi3
-___ashrdi3
-___clear_cache
-___clzdi2
-___clzsi2
-___cmpdi2
-___ctzdi2
-___ctzsi2
-___deregister_frame
-___deregister_frame_info
-___deregister_frame_info_bases
-___divdc3
-___divdi3
-___divsc3
-___divxc3
-___enable_execute_stack
-___ffsdi2
-___fixdfdi
-___fixsfdi
-___fixunsdfdi
-___fixunsdfsi
-___fixunssfdi
-___fixunssfsi
-___fixunsxfdi
-___fixunsxfsi
-___fixxfdi
-___floatdidf
-___floatdisf
-___floatdixf
-___gcc_personality_v0
-___lshrdi3
-___moddi3
-___muldc3
-___muldi3
-___mulsc3
-___mulvdi3
-___mulvsi3
-___mulxc3
-___negdi2
-___negvdi2
-___negvsi2
-___paritydi2
-___paritysi2
-___popcountdi2
-___popcountsi2
-___powidf2
-___powisf2
-___powixf2
-___register_frame
-___register_frame_info
-___register_frame_info_bases
-___register_frame_info_table
-___register_frame_info_table_bases
-___register_frame_table
-___subvdi3
-___subvsi3
-___ucmpdi2
-___udivdi3
-___udivmoddi4
-___umoddi3
diff --git a/gcc/config/i386/darwin-libgcc.10.5.ver b/gcc/config/i386/darwin-libgcc.10.5.ver
deleted file mode 100644 (file)
index eeec9fb..0000000
+++ /dev/null
@@ -1,102 +0,0 @@
-# Copyright (C) 2005, 2006 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/>.
-__Unwind_Backtrace
-__Unwind_DeleteException
-__Unwind_FindEnclosingFunction
-__Unwind_Find_FDE
-__Unwind_ForcedUnwind
-__Unwind_GetCFA
-__Unwind_GetDataRelBase
-__Unwind_GetGR
-__Unwind_GetIP
-__Unwind_GetIPInfo
-__Unwind_GetLanguageSpecificData
-__Unwind_GetRegionStart
-__Unwind_GetTextRelBase
-__Unwind_RaiseException
-__Unwind_Resume
-__Unwind_Resume_or_Rethrow
-__Unwind_SetGR
-__Unwind_SetIP
-___absvdi2
-___absvsi2
-___addvdi3
-___addvsi3
-___ashldi3
-___ashrdi3
-___clear_cache
-___clzdi2
-___clzsi2
-___cmpdi2
-___ctzdi2
-___ctzsi2
-___deregister_frame
-___deregister_frame_info
-___deregister_frame_info_bases
-___divdc3
-___divdi3
-___divsc3
-___divxc3
-___enable_execute_stack
-___ffsdi2
-___fixdfdi
-___fixsfdi
-___fixunsdfdi
-___fixunsdfsi
-___fixunssfdi
-___fixunssfsi
-___fixunsxfdi
-___fixunsxfsi
-___fixxfdi
-___floatdidf
-___floatdisf
-___floatdixf
-___floatundidf
-___floatundisf
-___floatundixf
-___gcc_personality_v0
-___lshrdi3
-___moddi3
-___muldc3
-___muldi3
-___mulsc3
-___mulvdi3
-___mulvsi3
-___mulxc3
-___negdi2
-___negvdi2
-___negvsi2
-___paritydi2
-___paritysi2
-___popcountdi2
-___popcountsi2
-___powidf2
-___powisf2
-___powixf2
-___register_frame
-___register_frame_info
-___register_frame_info_bases
-___register_frame_info_table
-___register_frame_info_table_bases
-___register_frame_table
-___subvdi3
-___subvsi3
-___ucmpdi2
-___udivdi3
-___udivmoddi4
-___umoddi3
diff --git a/gcc/config/i386/libgcc-glibc.ver b/gcc/config/i386/libgcc-glibc.ver
deleted file mode 100644 (file)
index e79d326..0000000
+++ /dev/null
@@ -1,186 +0,0 @@
-# Copyright (C) 2008, 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/>.
-
-# In order to work around the very problems that force us to now generally
-# create a libgcc.so, glibc reexported a number of routines from libgcc.a.
-# By now choosing the same version tags for these specific routines, we
-# maintain enough binary compatibility to allow future versions of glibc
-# to defer implementation of these routines to libgcc.so via DT_AUXILIARY.
-
-%ifndef __x86_64__
-%exclude {
-  __divdi3
-  __moddi3
-  __udivdi3
-  __umoddi3
-  __register_frame
-  __register_frame_table
-  __deregister_frame
-  __register_frame_info
-  __deregister_frame_info
-  __frame_state_for
-  __register_frame_info_table
-}
-
-%inherit GCC_3.0 GLIBC_2.0
-GLIBC_2.0 {
-  # Sampling of DImode arithmetic used by (at least) i386 and m68k.
-  __divdi3
-  __moddi3
-  __udivdi3
-  __umoddi3
-
-  # Exception handling support functions used by most everyone.
-  __register_frame
-  __register_frame_table
-  __deregister_frame
-  __register_frame_info
-  __deregister_frame_info
-  __frame_state_for
-  __register_frame_info_table
-}
-%endif
-
-# 128 bit long double support was introduced with GCC 4.3.0 to 64bit
-# and with GCC 4.4.0 to 32bit.  These lines make the symbols to get
-# a @@GCC_4.3.0 or @@GCC_4.4.0 attached.
-
-%exclude {
-  __addtf3
-  __divtc3
-  __divtf3
-  __eqtf2
-  __extenddftf2
-  __extendsftf2
-  __extendxftf2
-  __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
-}
-
-%ifdef __x86_64__
-# Those symbols had improper versions when they were added to gcc 4.3.0.
-# We corrected the default version to GCC_4.3.0.  But we keep the old
-# version for backward binary compatibility. 
-GCC_3.0 {
-  __gttf2
-  __lttf2
-  __netf2
-}
-
-GCC_4.0.0 {
-  __divtc3
-  __multc3
-  __powitf2
-}
-
-GCC_4.3.0 {
-  __addtf3
-  __divtc3
-  __divtf3
-  __eqtf2
-  __extenddftf2
-  __extendsftf2
-  __extendxftf2
-  __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
-}
-%else
-GCC_4.4.0 {
-  __addtf3
-  __copysigntf3
-  __divtc3
-  __divtf3
-  __eqtf2
-  __extenddftf2
-  __extendsftf2
-  __fabstf2
-  __fixtfdi
-  __fixtfsi
-  __fixunstfdi
-  __fixunstfsi
-  __floatditf
-  __floatsitf
-  __floatunditf
-  __floatunsitf
-  __getf2
-  __gttf2
-  __letf2
-  __lttf2
-  __multc3
-  __multf3
-  __negtf2
-  __netf2
-  __powitf2
-  __subtf3
-  __trunctfdf2
-  __trunctfsf2
-  __trunctfxf2
-  __unordtf2
-}
-GCC_4.5.0 {
-  __extendxftf2
-}
-%endif
index af2c9e41c4de37da4d19ad9c81e4d876f39fd559..242d7f27f65f7542bdbe48136ba7992ecddc2b50 100644 (file)
@@ -1,4 +1,5 @@
-# Copyright (C) 2003, 2005, 2008, 2009, 2010 Free Software Foundation, Inc.
+# Copyright (C) 2003, 2005, 2008, 2009, 2010, 2011
+# Free Software Foundation, Inc.
 #
 # This file is part of GCC.
 #
@@ -54,63 +55,3 @@ msformat-c.o: $(srcdir)/config/i386/msformat-c.c $(CONFIG_H) $(SYSTEM_H) coretyp
        $(srcdir)/config/i386/msformat-c.c
 
 STMP_FIXINC=stmp-fixinc
-
-# Build a shared libgcc library for PECOFF with a DEF file
-# with the GNU linker.
-#
-# mkmap-flat.awk is used with the pe_dll option to produce a DEF instead
-# of an ELF map file.
-#
-# Warning: If SHLIB_SOVERSION or SHLIB_SONAME are updated, LIBGCC_SONAME
-# in mingw32.h and SHLIB_MKMAP_OPTS below must be updated also.
-
-SHLIB_EXT = .dll
-SHLIB_IMPLIB = @shlib_base_name@.a
-SHLIB_SOVERSION = 1
-SHLIB_SONAME = @shlib_base_name@_$(EH_MODEL)-$(SHLIB_SOVERSION)$(SHLIB_EXT)
-SHLIB_MAP = @shlib_map_file@
-SHLIB_OBJS = @shlib_objs@
-SHLIB_DIR = @multilib_dir@/shlib
-SHLIB_SLIBDIR_QUAL = @shlib_slibdir_qual@
-# SHLIB_DLLDIR is defined by including one of either t-dlldir or t-dlldir-x
-# (native/cross build respectively) in the tmake_file list in gcc/config.gcc.
-ifndef SHLIB_DLLDIR
-$(error SHLIB_DLLDIR must be defined)
-endif
-ifndef SHLIB_PTHREAD_CFLAG
-SHLIB_PTHREAD_CFLAG =
-endif
-ifndef SHLIB_PTHREAD_LDFLAG
-SHLIB_PTHREAD_LDFLAG =
-endif
-
-SHLIB_LINK = $(LN_S) -f $(SHLIB_MAP) $(SHLIB_MAP).def && \
-       if [ ! -d $(SHLIB_DIR) ]; then \
-               mkdir $(SHLIB_DIR); \
-       else true; fi && \
-       $(GCC_FOR_TARGET) $(LIBGCC2_CFLAGS) $(SHLIB_PTHREAD_CFLAG) \
-       -shared -nodefaultlibs \
-       $(SHLIB_MAP).def \
-       -Wl,--out-implib,$(SHLIB_DIR)/$(SHLIB_IMPLIB).tmp \
-       -o $(SHLIB_DIR)/$(SHLIB_SONAME).tmp @multilib_flags@ \
-       $(SHLIB_OBJS) ${SHLIB_PTHREAD_LDFLAG} $(SHLIB_LC) && \
-       if [ -f $(SHLIB_DIR)/$(SHLIB_SONAME) ]; then \
-         mv -f $(SHLIB_DIR)/$(SHLIB_SONAME) \
-               $(SHLIB_DIR)/$(SHLIB_SONAME).backup; \
-       else true; fi && \
-       mv $(SHLIB_DIR)/$(SHLIB_SONAME).tmp $(SHLIB_DIR)/$(SHLIB_SONAME) && \
-       mv $(SHLIB_DIR)/$(SHLIB_IMPLIB).tmp $(SHLIB_DIR)/$(SHLIB_IMPLIB)
-# $(slibdir) double quoted to protect it from expansion while building
-# libgcc.mk.  We want this delayed until actual install time.
-SHLIB_INSTALL = \
-       $$(mkinstalldirs) $$(DESTDIR)$$(SHLIB_DLLDIR) \
-         $$(DESTDIR)$$(slibdir)$(SHLIB_SLIBDIR_QUAL); \
-       $(INSTALL) $(SHLIB_DIR)/$(SHLIB_SONAME) \
-         $$(DESTDIR)$$(SHLIB_DLLDIR)/$(SHLIB_SONAME); \
-       $(INSTALL_DATA) $(SHLIB_DIR)/$(SHLIB_IMPLIB) \
-         $$(DESTDIR)$$(slibdir)$(SHLIB_SLIBDIR_QUAL)/$(SHLIB_IMPLIB)
-SHLIB_MKMAP = $(srcdir)/mkmap-flat.awk
-# We'd like to use SHLIB_SONAME here too, but shlib_base_name
-# does not get substituted before mkmap-flat.awk is run.
-SHLIB_MKMAP_OPTS = -v pe_dll=libgcc_s_$(EH_MODEL)-$(SHLIB_SOVERSION)$(SHLIB_EXT)
-SHLIB_MAPFILES = $$(libgcc_objdir)/libgcc-std.ver
index f5eda91c0ef275a7a175db7f5d36f1ba4467d488..9ac234b6f4938da5a5d9cb98c216f90d8907d3bf 100644 (file)
@@ -1,4 +1,4 @@
-# Copyright (C) 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2008, 2009, 2010
+# Copyright (C) 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2008, 2009, 2010, 2011
 # Free Software Foundation, Inc.
 #
 # This file is part of GCC.
 # first.
 LIBGCC2_INCLUDES += -I$(srcdir)/../winsup/include \
        -I$(srcdir)/../winsup/cygwin/include
-
-# Cygwin-specific parts of LIB_SPEC
-SHLIB_LC = -lcygwin -ladvapi32 -lshell32 -luser32 -lkernel32
-
-# We have already included one of the t-{dw2,sjlj}-eh fragments for EH_MODEL
-SHLIB_EH_EXTENSION = $(subst -dw2,,-$(EH_MODEL))
-
-# Cygwin uses different conventions than MinGW; override generic SHLIB_ def'ns here.
-SHLIB_IMPLIB = @shlib_base_name@$(SHLIB_EXT).a
-SHLIB_SONAME = cyggcc_s$(SHLIB_EH_EXTENSION)-$(SHLIB_SOVERSION)$(SHLIB_EXT)
-# This must match the definitions of SHLIB_SONAME/SHLIB_SOVERSION and LIBGCC_SONAME.
-# We'd like to use SHLIB_SONAME here too, and we can, since
-# we don't rely on shlib_base_name substitution for it.
-SHLIB_MKMAP_OPTS = -v pe_dll=$(SHLIB_SONAME)
-
diff --git a/gcc/config/i386/t-dlldir b/gcc/config/i386/t-dlldir
deleted file mode 100644 (file)
index a3e0331..0000000
+++ /dev/null
@@ -1,6 +0,0 @@
-
-# In a native build, target DLLs go in bindir, where they can be executed.
-# Note double quoting to prevent variables from being evaluated until install
-# time; we don't want to expand them during libgcc.mvars generation.
-
-SHLIB_DLLDIR = $$(bindir)
diff --git a/gcc/config/i386/t-dlldir-x b/gcc/config/i386/t-dlldir-x
deleted file mode 100644 (file)
index 07dd845..0000000
+++ /dev/null
@@ -1,9 +0,0 @@
-
-# In a cross build, bindir contains host not target binaries, so target DLLs
-# instead go in toolexeclibdir, alongside other target binaries and static libs.
-# Note double quoting to prevent variables from being evaluated until install
-# time; we don't want to expand them during libgcc.mvars generation, and in
-# any case, $toolexeclibdir is not defined in the gcc/ subdirectory, only in
-# target lib directories.
-
-SHLIB_DLLDIR = $$(toolexeclibdir)
diff --git a/gcc/config/i386/t-dw2-eh b/gcc/config/i386/t-dw2-eh
deleted file mode 100644 (file)
index ffcc39a..0000000
+++ /dev/null
@@ -1,3 +0,0 @@
-
-# We are using Dwarf-2 EH.
-EH_MODEL = dw2
diff --git a/gcc/config/i386/t-linux b/gcc/config/i386/t-linux
deleted file mode 100644 (file)
index 500d932..0000000
+++ /dev/null
@@ -1,5 +0,0 @@
-# On 64bit we do not need any exports for glibc for 64-bit libgcc_s.
-# Need to support TImode for x86.  Override the settings from
-# t-slibgcc-elf-ver and t-linux
-SHLIB_MAPFILES = $$(libgcc_objdir)/libgcc-std.ver \
-                $(srcdir)/config/i386/libgcc-glibc.ver
diff --git a/gcc/config/i386/t-mingw-pthread b/gcc/config/i386/t-mingw-pthread
deleted file mode 100644 (file)
index 622ef82..0000000
+++ /dev/null
@@ -1,2 +0,0 @@
-SHLIB_PTHREAD_CFLAG = -pthread
-SHLIB_PTHREAD_LDFLAG = -Wl,-lpthread
index 83cee71f1c12ef2b7946cc4d58a17da8061c3f4a..68669d44a0a78942eaac5b0ebff04faefcd5f8b7 100644 (file)
@@ -2,8 +2,5 @@ MULTILIB_OPTIONS = m64/m32
 MULTILIB_DIRNAMES = 64 32
 MULTILIB_OSDIRNAMES = ../lib64 ../lib
 
-# MinGW-specific parts of LIB_SPEC
-SHLIB_LC = -lmingwthrd -lmingw32 -lmingwex -lmoldname -lmsvcrt -ladvapi32 -lshell32 -luser32 -lkernel32
-
 LIBGCC = stmp-multilib
 INSTALL_LIBGCC = install-multilib
index 041a02f1018d21bd9ef3a5c64725eaa8b6ab9fc7..1e86e05e701548e9aa2e58a00ba0c4ccc7e6aa21 100644 (file)
@@ -2,8 +2,5 @@ MULTILIB_OPTIONS = m64/m32
 MULTILIB_DIRNAMES = 64 32
 MULTILIB_OSDIRNAMES = ../lib ../lib32
 
-# MinGW-specific parts of LIB_SPEC
-SHLIB_LC = -lmingwthrd -lmingw32 -lmingwex -lmoldname -lmsvcrt -ladvapi32 -lshell32 -luser32 -lkernel32
-
 LIBGCC = stmp-multilib
 INSTALL_LIBGCC = install-multilib
diff --git a/gcc/config/i386/t-mingw32 b/gcc/config/i386/t-mingw32
deleted file mode 100644 (file)
index bfdef67..0000000
+++ /dev/null
@@ -1,2 +0,0 @@
-# MinGW-specific parts of LIB_SPEC
-SHLIB_LC = -lmingwthrd -lmingw32 -lmingwex -lmoldname -lmsvcrt -ladvapi32 -lshell32 -luser32 -lkernel32
diff --git a/gcc/config/i386/t-sjlj-eh b/gcc/config/i386/t-sjlj-eh
deleted file mode 100644 (file)
index c9085f4..0000000
+++ /dev/null
@@ -1,3 +0,0 @@
-
-# We are using SjLj EH.
-EH_MODEL = sjlj
diff --git a/gcc/config/ia64/libgcc-glibc.ver b/gcc/config/ia64/libgcc-glibc.ver
deleted file mode 100644 (file)
index 34a6961..0000000
+++ /dev/null
@@ -1,97 +0,0 @@
-# Copyright (C) 2009 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.4.0. These lines
-# make the symbols to get @@GCC_4.4.0 attached.
-
-%exclude {
-  __addtf3
-  __divtc3
-  __divtf3
-  __eqtf2
-  __extenddftf2
-  __extendsftf2
-  __extendxftf2
-  __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
-}
-
-# Those TF functions are the aliases of the XF functions before gcc 3.4.
-GCC_3.0 {
-  __divtf3
-  __fixtfti
-  __fixunstfti
-  __floattitf
-}
-
-GCC_4.4.0 {
-  __addtf3
-  __copysigntf3
-  __divtc3
-  __divtf3
-  __eqtf2
-  __extenddftf2
-  __extendsftf2
-  __fabstf2
-  __fixtfdi
-  __fixtfsi
-  __fixunstfdi
-  __fixunstfsi
-  __floatditf
-  __floatsitf
-  __floatunditf
-  __floatunsitf
-  __getf2
-  __gttf2
-  __letf2
-  __lttf2
-  __multc3
-  __multf3
-  __negtf2
-  __netf2
-  __powitf2
-  __subtf3
-  __trunctfdf2
-  __trunctfsf2
-  __trunctfxf2
-  __unordtf2
-}
diff --git a/gcc/config/ia64/libgcc-ia64.ver b/gcc/config/ia64/libgcc-ia64.ver
deleted file mode 100644 (file)
index 11c1fe6..0000000
+++ /dev/null
@@ -1,30 +0,0 @@
-# Copyright (C) 2000, 2001, 2003 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/>.
-
-GCC_3.0 {
-  # IA-64 symbols
-  __ia64_nonlocal_goto
-  __ia64_personality_v1
-  __ia64_restore_stack_nonlocal
-  __ia64_save_stack_nonlocal
-  __ia64_trampoline
-  __ia64_backtrace
-}
-GCC_3.3.2 {
-  _Unwind_GetBSP
-}
diff --git a/gcc/config/ia64/t-glibc b/gcc/config/ia64/t-glibc
deleted file mode 100644 (file)
index ce18a92..0000000
+++ /dev/null
@@ -1 +0,0 @@
-SHLIB_MAPFILES += $(srcdir)/config/ia64/libgcc-glibc.ver
index 4aa661441b2b0ba034d2a9a97675353daa689b07..e1554861d18bc1e3852f1bdb2ceca85dca2117e6 100644 (file)
@@ -49,25 +49,3 @@ LIBGCC1_TEST =
 # the HP-UX libunwind library.
 
 T_CFLAGS += -DUSE_LIBUNWIND_EXCEPTIONS
-
-SHLIB_EXT = .so
-# Must include -lunwind in the link, so that libgcc_s.so has the necessary
-# DT_NEEDED entry for libunwind.
-SHLIB_LINK = $(GCC_FOR_TARGET) $(LIBGCC2_CFLAGS) -shared -nodefaultlibs \
-       -Wl,+h,@shlib_base_name@.so.0 \
-       -o @multilib_dir@/@shlib_base_name@.so @multilib_flags@ \
-       @shlib_objs@ -lunwind -lc && \
-       rm -f @multilib_dir@/@shlib_base_name@.so.0 && \
-       $(LN_S) @shlib_base_name@.so @multilib_dir@/@shlib_base_name@.so.0
-# $(slibdir) double quoted to protect it from expansion while building
-# libgcc.mk.  We want this delayed until actual install time.
-SHLIB_INSTALL = \
-        $$(mkinstalldirs) $$(DESTDIR)$$(slibdir)@shlib_slibdir_qual@; \
-       $(INSTALL_DATA) @multilib_dir@/@shlib_base_name@.so \
-       $$(DESTDIR)$$(slibdir)@shlib_slibdir_qual@/@shlib_base_name@.so.0; \
-       rm -f $$(DESTDIR)$$(slibdir)@shlib_slibdir_qual@/@shlib_base_name@.so; \
-       $(LN_S) @shlib_base_name@.so.0 \
-       $$(DESTDIR)$$(slibdir)@shlib_slibdir_qual@/@shlib_base_name@.so; \
-       chmod +x $$(DESTDIR)$$(slibdir)@shlib_slibdir_qual@/@shlib_base_name@.so
-
-SHLIB_MKMAP = $(srcdir)/mkmap-flat.awk
index f130f7c09d13c8c0db5452c291caa417f1bd1542..874e9ecf1071fc52b14e1fdaf32afbc99da11897 100644 (file)
@@ -38,8 +38,6 @@ LIB1ASMFUNCS  = __divxf3 __divdf3 __divsf3 \
 # to support the Intel assembler.
 #LIBGCC2_DEBUG_CFLAGS = -g1 -P
 
-SHLIB_MAPFILES += $(srcdir)/config/ia64/libgcc-ia64.ver
-
 # Effectively disable the crtbegin/end rules using crtstuff.c
 T = disable
 
index 094d53483ee50cbd1ef70d6bb8cba405be159e32..e834aea1ab029e620c08116f32eb44e5f76f55ad 100644 (file)
@@ -31,17 +31,3 @@ CRTSTUFF_T_CFLAGS_S = -O0
 $(T)crtinitS.o: $(srcdir)/config/ia64/vms-crtinit.asm $(GCC_PASSES)
        $(GCC_FOR_TARGET) -I. -c -o $(T)crtinitS.o -x assembler-with-cpp \
                $(srcdir)/config/ia64/vms-crtinit.asm
-
-# Shared library macros
-shlib_version:=$(shell echo $(BASEVER_c) | sed -e 's/\./,/' -e 's/\.//g')
-SHLIB_EXT = .exe
-SHLIB_OBJS = @shlib_objs@
-SHLIB_NAME = @shlib_base_name@.exe
-SHLIB_MULTILIB =
-SHLIB_INSTALL = $(INSTALL_DATA) $(SHLIB_NAME) $$(DESTDIR)$$(libsubdir)/$(SHLIB_ NAME)
-SHLIB_LINK = \
-  $(GCC_FOR_TARGET) $(LIBGCC2_CFLAGS) -nodefaultlibs \
-  -shared --for-linker=/noinform -o $(SHLIB_NAME) $(SHLIB_OBJS) \
-  --for-linker=$(srcdir)/config/ia64/VMS_SYMVEC_@shlib_base_name@.opt \
-  --for-linker=gsmatch=equal,$(shlib_version)
-
diff --git a/gcc/config/ia64/vms_symvec_libgcc_s.opt b/gcc/config/ia64/vms_symvec_libgcc_s.opt
deleted file mode 100644 (file)
index 88b46df..0000000
+++ /dev/null
@@ -1,89 +0,0 @@
-! Symbol vector listing all the universal symbols to be exported when
-! building libgcc_s.exe shareable image on IVMS for Gcc 3.4.5.
-! It would be better to auto-generate this file.
-
-case_sensitive=yes
-SYMBOL_VECTOR=(__divdf3=PROCEDURE)
-SYMBOL_VECTOR=(__divdi3=PROCEDURE)
-SYMBOL_VECTOR=(__divsf3=PROCEDURE)
-SYMBOL_VECTOR=(__divsi3=PROCEDURE)
-SYMBOL_VECTOR=(__divxf3=PROCEDURE)
-SYMBOL_VECTOR=(__moddi3=PROCEDURE)
-SYMBOL_VECTOR=(__modsi3=PROCEDURE)
-SYMBOL_VECTOR=(__ia64_nonlocal_goto=PROCEDURE)
-SYMBOL_VECTOR=(__ia64_restore_stack_nonlocal=PROCEDURE)
-SYMBOL_VECTOR=(__ia64_save_stack_nonlocal=PROCEDURE)
-SYMBOL_VECTOR=(__ia64_trampoline=PROCEDURE)
-SYMBOL_VECTOR=(__udivdi3=PROCEDURE)
-SYMBOL_VECTOR=(__udivsi3=PROCEDURE)
-SYMBOL_VECTOR=(__umoddi3=PROCEDURE)
-SYMBOL_VECTOR=(__umodsi3=PROCEDURE)
-SYMBOL_VECTOR=(__absvti2=PROCEDURE)
-SYMBOL_VECTOR=(__absvdi2=PROCEDURE)
-SYMBOL_VECTOR=(__absvsi2=PROCEDURE)
-SYMBOL_VECTOR=(__addvti3=PROCEDURE)
-SYMBOL_VECTOR=(__addvdi3=PROCEDURE)
-SYMBOL_VECTOR=(__addvsi3=PROCEDURE)
-SYMBOL_VECTOR=(__ashlti3=PROCEDURE)
-SYMBOL_VECTOR=(__ashrti3=PROCEDURE)
-SYMBOL_VECTOR=(__clear_cache=PROCEDURE)
-SYMBOL_VECTOR=(__clzti2=PROCEDURE)
-SYMBOL_VECTOR=(__clzdi2=PROCEDURE)
-SYMBOL_VECTOR=(__cmpti2=PROCEDURE)
-SYMBOL_VECTOR=(__ctzti2=PROCEDURE)
-SYMBOL_VECTOR=(__ctzdi2=PROCEDURE)
-SYMBOL_VECTOR=(__divti3=PROCEDURE)
-SYMBOL_VECTOR=(__enable_execute_stack=PROCEDURE)
-SYMBOL_VECTOR=(__ffsti2=PROCEDURE)
-SYMBOL_VECTOR=(__ffsdi2=PROCEDURE)
-SYMBOL_VECTOR=(__fixdfti=PROCEDURE)
-SYMBOL_VECTOR=(__fixsfti=PROCEDURE)
-SYMBOL_VECTOR=(__fixunsdfti=PROCEDURE)
-SYMBOL_VECTOR=(__fixunsdfdi=PROCEDURE)
-SYMBOL_VECTOR=(__fixunssfti=PROCEDURE)
-SYMBOL_VECTOR=(__fixunssfdi=PROCEDURE)
-SYMBOL_VECTOR=(__floattidf=PROCEDURE)
-SYMBOL_VECTOR=(__floattisf=PROCEDURE)
-SYMBOL_VECTOR=(__lshrti3=PROCEDURE)
-SYMBOL_VECTOR=(__modti3=PROCEDURE)
-SYMBOL_VECTOR=(__multi3=PROCEDURE)
-SYMBOL_VECTOR=(__mulvti3=PROCEDURE)
-SYMBOL_VECTOR=(__mulvdi3=PROCEDURE)
-SYMBOL_VECTOR=(__mulvsi3=PROCEDURE)
-SYMBOL_VECTOR=(__negti2=PROCEDURE)
-SYMBOL_VECTOR=(__negvti2=PROCEDURE)
-SYMBOL_VECTOR=(__negvdi2=PROCEDURE)
-SYMBOL_VECTOR=(__negvsi2=PROCEDURE)
-SYMBOL_VECTOR=(__parityti2=PROCEDURE)
-SYMBOL_VECTOR=(__paritydi2=PROCEDURE)
-SYMBOL_VECTOR=(__popcountti2=PROCEDURE)
-SYMBOL_VECTOR=(__popcountdi2=PROCEDURE)
-SYMBOL_VECTOR=(__subvti3=PROCEDURE)
-SYMBOL_VECTOR=(__subvdi3=PROCEDURE)
-SYMBOL_VECTOR=(__subvsi3=PROCEDURE)
-SYMBOL_VECTOR=(__ucmpti2=PROCEDURE)
-SYMBOL_VECTOR=(__udiv_w_sdiv=PROCEDURE)
-SYMBOL_VECTOR=(__udivti3=PROCEDURE)
-SYMBOL_VECTOR=(__udivmodti4=PROCEDURE)
-SYMBOL_VECTOR=(__umodti3=PROCEDURE)
-SYMBOL_VECTOR=(__gthread_active_p=PROCEDURE)
-SYMBOL_VECTOR=(__gthread_mutex_lock=PROCEDURE)
-SYMBOL_VECTOR=(__gthread_mutex_unlock=PROCEDURE)
-SYMBOL_VECTOR=(__gcc_personality_v0=PROCEDURE)
-SYMBOL_VECTOR=(_Unwind_GetGR=PROCEDURE)
-SYMBOL_VECTOR=(_Unwind_SetGR=PROCEDURE)
-SYMBOL_VECTOR=(_Unwind_GetIP=PROCEDURE)
-SYMBOL_VECTOR=(_Unwind_GetIPInfo=PROCEDURE)
-SYMBOL_VECTOR=(_Unwind_SetIP=PROCEDURE)
-SYMBOL_VECTOR=(_Unwind_GetLanguageSpecificData=PROCEDURE)
-SYMBOL_VECTOR=(_Unwind_GetRegionStart=PROCEDURE)
-SYMBOL_VECTOR=(_Unwind_FindEnclosingFunction=PROCEDURE)
-SYMBOL_VECTOR=(_Unwind_GetCFA=PROCEDURE)
-SYMBOL_VECTOR=(_Unwind_GetBSP=PROCEDURE)
-SYMBOL_VECTOR=(_Unwind_RaiseException=PROCEDURE)
-SYMBOL_VECTOR=(_Unwind_ForcedUnwind=PROCEDURE)
-SYMBOL_VECTOR=(_Unwind_Resume=PROCEDURE)
-SYMBOL_VECTOR=(_Unwind_Resume_or_Rethrow=PROCEDURE)
-SYMBOL_VECTOR=(_Unwind_DeleteException=PROCEDURE)
-SYMBOL_VECTOR=(_Unwind_Backtrace=PROCEDURE)
-case_sensitive=NO
diff --git a/gcc/config/libgcc-glibc.ver b/gcc/config/libgcc-glibc.ver
deleted file mode 100644 (file)
index 7824ad5..0000000
+++ /dev/null
@@ -1,55 +0,0 @@
-# Copyright (C) 2000, 2008 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/>.
-
-# In order to work around the very problems that force us to now generally
-# create a libgcc.so, glibc reexported a number of routines from libgcc.a.
-# By now choosing the same version tags for these specific routines, we
-# maintain enough binary compatibility to allow future versions of glibc
-# to defer implementation of these routines to libgcc.so via DT_AUXILIARY.
-
-%exclude {
-  __divdi3
-  __moddi3
-  __udivdi3
-  __umoddi3
-  __register_frame
-  __register_frame_table
-  __deregister_frame
-  __register_frame_info
-  __deregister_frame_info
-  __frame_state_for
-  __register_frame_info_table
-}
-
-%inherit GCC_3.0 GLIBC_2.0
-GLIBC_2.0 {
-  # Sampling of DImode arithmetic used by (at least) i386 and m68k.
-  __divdi3
-  __moddi3
-  __udivdi3
-  __umoddi3
-
-  # Exception handling support functions used by most everyone.
-  __register_frame
-  __register_frame_table
-  __deregister_frame
-  __register_frame_info
-  __deregister_frame_info
-  __frame_state_for
-  __register_frame_info_table
-}
diff --git a/gcc/config/m32r/libgcc-glibc.ver b/gcc/config/m32r/libgcc-glibc.ver
deleted file mode 100644 (file)
index 0e1304b..0000000
+++ /dev/null
@@ -1,48 +0,0 @@
-# Copyright (C) 2004, 2008 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/>.
-
-# In order to work around the very problems that force us to now generally
-# create a libgcc.so, glibc reexported a number of routines from libgcc.a.
-# By now choosing the same version tags for these specific routines, we
-# maintain enough binary compatibility to allow future versions of glibc
-# to defer implementation of these routines to libgcc.so via DT_AUXILIARY.
-
-# Note that we cannot use the default libgcc-glibc.ver file on sh,
-# because GLIBC_2.0 does not exist on this architecture, as the first 
-# ever glibc release on the platform was GLIBC_2.3.
-
-%exclude {
-  __register_frame
-  __register_frame_table
-  __deregister_frame
-  __register_frame_info
-  __deregister_frame_info
-  __frame_state_for
-  __register_frame_info_table
-}
-
-%inherit GCC_3.0 GLIBC_2.3
-GLIBC_2.3 {
-  __register_frame
-  __register_frame_table
-  __deregister_frame
-  __register_frame_info
-  __deregister_frame_info
-  __frame_state_for
-  __register_frame_info_table
-}
index 6de9c781a670da29b278ef9641ea99600af748d3..6697e7bd10a2cc03fdd4d2b024495d02d0c5ad83 100644 (file)
@@ -41,5 +41,3 @@ INSTALL_ASSERT_H =
 LIBGCC1 = 
 CROSS_LIBGCC1 =
 LIBGCC1_TEST =
-
-SHLIB_MAPFILES += $(srcdir)/config/m32r/libgcc-glibc.ver
diff --git a/gcc/config/m68k/t-slibgcc-elf-ver b/gcc/config/m68k/t-slibgcc-elf-ver
deleted file mode 100644 (file)
index 6aac37c..0000000
+++ /dev/null
@@ -1,3 +0,0 @@
-# Bump the version number of the shared libgcc library
-
-SHLIB_SOVERSION = 2
diff --git a/gcc/config/mips/libgcc-mips16.ver b/gcc/config/mips/libgcc-mips16.ver
deleted file mode 100644 (file)
index ddb23e7..0000000
+++ /dev/null
@@ -1,86 +0,0 @@
-# Copyright (C) 2008 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/>.
-
-GCC_4.4.0 {
-  __mips16_addsf3
-  __mips16_subsf3
-  __mips16_mulsf3
-  __mips16_divsf3
-  __mips16_eqsf2
-  __mips16_nesf2
-  __mips16_gtsf2
-  __mips16_gesf2
-  __mips16_lesf2
-  __mips16_ltsf2
-  __mips16_floatsisf
-  __mips16_floatunsisf
-  __mips16_fix_truncsfsi
-  __mips16_adddf3
-  __mips16_subdf3
-  __mips16_muldf3
-  __mips16_divdf3
-  __mips16_extendsfdf2
-  __mips16_truncdfsf2
-  __mips16_eqdf2
-  __mips16_nedf2
-  __mips16_gtdf2
-  __mips16_gedf2
-  __mips16_ledf2
-  __mips16_ltdf2
-  __mips16_floatsidf
-  __mips16_floatunsidf
-  __mips16_fix_truncdfsi
-  __mips16_ret_sf
-  __mips16_ret_sc
-  __mips16_ret_df
-  __mips16_ret_dc
-  __mips16_call_stub_1
-  __mips16_call_stub_5
-  __mips16_call_stub_2
-  __mips16_call_stub_6
-  __mips16_call_stub_9
-  __mips16_call_stub_10
-  __mips16_call_stub_sf_0
-  __mips16_call_stub_sf_1
-  __mips16_call_stub_sf_5
-  __mips16_call_stub_sf_2
-  __mips16_call_stub_sf_6
-  __mips16_call_stub_sf_9
-  __mips16_call_stub_sf_10
-  __mips16_call_stub_sc_0
-  __mips16_call_stub_sc_1
-  __mips16_call_stub_sc_5
-  __mips16_call_stub_sc_2
-  __mips16_call_stub_sc_6
-  __mips16_call_stub_sc_9
-  __mips16_call_stub_sc_10
-  __mips16_call_stub_df_0
-  __mips16_call_stub_df_1
-  __mips16_call_stub_df_5
-  __mips16_call_stub_df_2
-  __mips16_call_stub_df_6
-  __mips16_call_stub_df_9
-  __mips16_call_stub_df_10
-  __mips16_call_stub_dc_0
-  __mips16_call_stub_dc_1
-  __mips16_call_stub_dc_5
-  __mips16_call_stub_dc_2
-  __mips16_call_stub_dc_6
-  __mips16_call_stub_dc_9
-  __mips16_call_stub_dc_10
-}
index 772b05ac45ea208e7e0974849f16cf8d953353ab..31a042bb75e3ce7024b71c5f1aca38bef9831cb5 100644 (file)
@@ -37,6 +37,3 @@ LIB1ASMFUNCS = _m16addsf3 _m16subsf3 _m16mulsf3 _m16divsf3 \
        _m16stubsc9 _m16stubsc10 \
        _m16stubdc0 _m16stubdc1 _m16stubdc2 _m16stubdc5 _m16stubdc6 \
        _m16stubdc9 _m16stubdc10
-
-# Version these symbols if building libgcc.so.
-SHLIB_MAPFILES += $(srcdir)/config/mips/libgcc-mips16.ver
diff --git a/gcc/config/pa/t-hpux-shlib b/gcc/config/pa/t-hpux-shlib
deleted file mode 100644 (file)
index d5a5b6c..0000000
+++ /dev/null
@@ -1,46 +0,0 @@
-# Copyright (C) 2001, 2003, 2004, 2005, 2006 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.
-SHLIB_EXT = .sl
-SHLIB_NAME = @shlib_base_name@$(SHLIB_EXT)
-SHLIB_SOVERSION = 1
-SHLIB_SONAME = @shlib_base_name@.$(SHLIB_SOVERSION)
-SHLIB_OBJS = @shlib_objs@
-SHLIB_DIR = @multilib_dir@
-SHLIB_SLIBDIR_QUAL = @shlib_slibdir_qual@
-
-SHLIB_LINK = $(GCC_FOR_TARGET) $(LIBGCC2_CFLAGS) -shared  -nodefaultlibs \
-       -Wl,+h -Wl,$(SHLIB_SONAME) \
-       -o $(SHLIB_DIR)/$(SHLIB_NAME).tmp @multilib_flags@ $(SHLIB_OBJS) && \
-        rm -f $(SHLIB_DIR)/$(SHLIB_SONAME) && \
-       if [ -f $(SHLIB_DIR)/$(SHLIB_NAME) ]; then \
-         mv -f $(SHLIB_DIR)/$(SHLIB_NAME) $(SHLIB_DIR)/$(SHLIB_NAME).backup; \
-       else true; fi && \
-       mv $(SHLIB_DIR)/$(SHLIB_NAME).tmp $(SHLIB_DIR)/$(SHLIB_NAME) && \
-        $(LN_S) $(SHLIB_NAME) $(SHLIB_DIR)/$(SHLIB_SONAME)
-
-# $(slibdir) double quoted to protect it from expansion while building
-# libgcc.mk.  We want this delayed until actual install time.
-SHLIB_INSTALL = \
-        $$(mkinstalldirs) $$(DESTDIR)$$(slibdir)$(SHLIB_SLIBDIR_QUAL); \
-       $(INSTALL_DATA) -m 555 $(SHLIB_DIR)/$(SHLIB_NAME) \
-       $$(DESTDIR)$$(slibdir)$(SHLIB_SLIBDIR_QUAL)/$(SHLIB_SONAME); \
-        rm -f $$(DESTDIR)$$(slibdir)$(SHLIB_SLIBDIR_QUAL)/$(SHLIB_NAME); \
-        $(LN_S) $(SHLIB_SONAME) \
-       $$(DESTDIR)$$(slibdir)$(SHLIB_SLIBDIR_QUAL)/$(SHLIB_NAME)
diff --git a/gcc/config/pa/t-slibgcc-dwarf-ver b/gcc/config/pa/t-slibgcc-dwarf-ver
deleted file mode 100644 (file)
index fa4688d..0000000
+++ /dev/null
@@ -1,3 +0,0 @@
-# Set the version number of the shared libgcc library (DWARF2 EH).
-
-SHLIB_SOVERSION = 4
diff --git a/gcc/config/pa/t-slibgcc-sjlj-ver b/gcc/config/pa/t-slibgcc-sjlj-ver
deleted file mode 100644 (file)
index 00140cf..0000000
+++ /dev/null
@@ -1,3 +0,0 @@
-# Set the version number of the shared libgcc library (SJLJ EH).
-
-SHLIB_SOVERSION = 3
diff --git a/gcc/config/rs6000/darwin-libgcc.10.4.ver b/gcc/config/rs6000/darwin-libgcc.10.4.ver
deleted file mode 100644 (file)
index 0c6f7c2..0000000
+++ /dev/null
@@ -1,93 +0,0 @@
-# Copyright (C) 2005 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/>.
-__Unwind_Backtrace
-__Unwind_DeleteException
-__Unwind_FindEnclosingFunction
-__Unwind_Find_FDE
-__Unwind_ForcedUnwind
-__Unwind_GetCFA
-__Unwind_GetDataRelBase
-__Unwind_GetGR
-__Unwind_GetIP
-__Unwind_GetLanguageSpecificData
-__Unwind_GetRegionStart
-__Unwind_GetTextRelBase
-__Unwind_RaiseException
-__Unwind_Resume
-__Unwind_Resume_or_Rethrow
-__Unwind_SetGR
-__Unwind_SetIP
-___absvdi2
-___absvsi2
-___addvdi3
-___addvsi3
-___ashldi3
-___ashrdi3
-___clear_cache
-___clzdi2
-___clzsi2
-___cmpdi2
-___ctzdi2
-___ctzsi2
-___deregister_frame
-___deregister_frame_info
-___deregister_frame_info_bases
-___divdi3
-___enable_execute_stack
-___ffsdi2
-___fixdfdi
-___fixsfdi
-___fixtfdi
-___fixunsdfdi
-___fixunsdfsi
-___fixunssfdi
-___fixunssfsi
-___fixunstfdi
-___floatdidf
-___floatdisf
-___floatditf
-___gcc_personality_v0
-___gcc_qadd
-___gcc_qdiv
-___gcc_qmul
-___gcc_qsub
-___lshrdi3
-___moddi3
-___muldi3
-___mulvdi3
-___mulvsi3
-___negdi2
-___negvdi2
-___negvsi2
-___paritydi2
-___paritysi2
-___popcountdi2
-___popcountsi2
-___register_frame
-___register_frame_info
-___register_frame_info_bases
-___register_frame_info_table
-___register_frame_info_table_bases
-___register_frame_table
-___subvdi3
-___subvsi3
-___trampoline_setup
-___ucmpdi2
-___udivdi3
-___udivmoddi4
-___umoddi3
diff --git a/gcc/config/rs6000/darwin-libgcc.10.5.ver b/gcc/config/rs6000/darwin-libgcc.10.5.ver
deleted file mode 100644 (file)
index c2f0892..0000000
+++ /dev/null
@@ -1,106 +0,0 @@
-# Copyright (C) 2005, 2006 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/>.
-__Unwind_Backtrace
-__Unwind_DeleteException
-__Unwind_FindEnclosingFunction
-__Unwind_Find_FDE
-__Unwind_ForcedUnwind
-__Unwind_GetCFA
-__Unwind_GetDataRelBase
-__Unwind_GetGR
-__Unwind_GetIP
-__Unwind_GetIPInfo
-__Unwind_GetLanguageSpecificData
-__Unwind_GetRegionStart
-__Unwind_GetTextRelBase
-__Unwind_RaiseException
-__Unwind_Resume
-__Unwind_Resume_or_Rethrow
-__Unwind_SetGR
-__Unwind_SetIP
-___absvdi2
-___absvsi2
-___addvdi3
-___addvsi3
-___ashldi3
-___ashrdi3
-___clear_cache
-___clzdi2
-___clzsi2
-___cmpdi2
-___ctzdi2
-___ctzsi2
-___deregister_frame
-___deregister_frame_info
-___deregister_frame_info_bases
-___divdc3
-___divdi3
-___divsc3
-___divtc3
-___enable_execute_stack
-___ffsdi2
-___fixdfdi
-___fixsfdi
-___fixtfdi
-___fixunsdfdi
-___fixunsdfsi
-___fixunssfdi
-___fixunssfsi
-___fixunstfdi
-___floatdidf
-___floatdisf
-___floatditf
-___floatundidf
-___floatundisf
-___floatunditf
-___gcc_personality_v0
-___gcc_qadd
-___gcc_qdiv
-___gcc_qmul
-___gcc_qsub
-___lshrdi3
-___moddi3
-___muldc3
-___muldi3
-___mulsc3
-___multc3
-___mulvdi3
-___mulvsi3
-___negdi2
-___negvdi2
-___negvsi2
-___paritydi2
-___paritysi2
-___popcountdi2
-___popcountsi2
-___powidf2
-___powisf2
-___powitf2
-___register_frame
-___register_frame_info
-___register_frame_info_bases
-___register_frame_info_table
-___register_frame_info_table_bases
-___register_frame_table
-___subvdi3
-___subvsi3
-___trampoline_setup
-___ucmpdi2
-___udivdi3
-___udivmoddi4
-___umoddi3
index 374b98dfa93e3e2197f6f8e2d8db7def39b6552b..ebd898d178468eba275c555954609c90b983650e 100644 (file)
@@ -47,32 +47,3 @@ MULTILIB_MATCHES     = mcpu?power=mcpu?power \
 
 LIBGCC = stmp-multilib
 INSTALL_LIBGCC = install-multilib
-
-# Build a shared libgcc library.
-SHLIB_EXT = .a
-SHLIB_LINK = $(GCC_FOR_TARGET) $(LIBGCC2_CFLAGS) -shared -nodefaultlibs \
-       -Wl,-bE:@shlib_map_file@ -o @multilib_dir@/shr.o \
-       @multilib_flags@ @shlib_objs@ -lc \
-       `case @multilib_dir@ in \
-       *pthread*) echo -L/usr/lib/threads -lpthreads -lc_r /usr/lib/libc.a ;; \
-       *) echo -lc ;; esac` ; \
-       rm -f @multilib_dir@/tmp-@shlib_base_name@.a ; \
-       $(AR_CREATE_FOR_TARGET) @multilib_dir@/tmp-@shlib_base_name@.a \
-       @multilib_dir@/shr.o ; \
-       mv @multilib_dir@/tmp-@shlib_base_name@.a \
-          @multilib_dir@/@shlib_base_name@.a ; \
-       rm -f @multilib_dir@/shr.o
-# $(slibdir) double quoted to protect it from expansion while building
-# libgcc.mk.  We want this delayed until actual install time.
-SHLIB_INSTALL = \
-       $$(mkinstalldirs) $$(DESTDIR)$$(slibdir)@shlib_slibdir_qual@; \
-       $(INSTALL_DATA) @multilib_dir@/@shlib_base_name@.a \
-               $$(DESTDIR)$$(slibdir)@shlib_slibdir_qual@/
-SHLIB_LIBS = -lc `case @multilib_dir@ in *pthread*) echo -lpthread ;; esac`
-SHLIB_MKMAP = $(srcdir)/mkmap-flat.awk
-SHLIB_MAPFILES = $$(libgcc_objdir)/libgcc-std.ver
-SHLIB_NM_FLAGS = -Bpg -X32_64
-
-# Either 32-bit and 64-bit objects in archives.
-AR_FLAGS_FOR_TARGET = -X32_64
-
index 79ef16fd84e4b18ec353558f75a8f07784fbebdd..3822b8a112cb5a4dfe1b87577d6c4a7acd208a54 100644 (file)
@@ -28,31 +28,3 @@ MULTILIB_MATCHES     =
 
 LIBGCC = stmp-multilib
 INSTALL_LIBGCC = install-multilib
-
-# Build a shared libgcc library.
-SHLIB_EXT = .a
-SHLIB_LINK = $(GCC_FOR_TARGET) $(LIBGCC2_CFLAGS) -shared -nodefaultlibs \
-       -Wl,-bE:@shlib_map_file@ -o @multilib_dir@/shr.o \
-       @multilib_flags@ @shlib_objs@ -lc \
-       `case @multilib_dir@ in \
-       *pthread*) echo -L$(TARGET_SYSTEM_ROOT)/usr/lib/threads -lpthreads -lc_r $(TARGET_SYSTEM_ROOT)/usr/lib/libc.a ;; \
-       *) echo -lc ;; esac` ; \
-       rm -f @multilib_dir@/tmp-@shlib_base_name@.a ; \
-       $(AR_CREATE_FOR_TARGET) @multilib_dir@/tmp-@shlib_base_name@.a \
-       @multilib_dir@/shr.o ; \
-       mv @multilib_dir@/tmp-@shlib_base_name@.a \
-          @multilib_dir@/@shlib_base_name@.a ; \
-       rm -f @multilib_dir@/shr.o
-# $(slibdir) double quoted to protect it from expansion while building
-# libgcc.mk.  We want this delayed until actual install time.
-SHLIB_INSTALL = \
-       $$(mkinstalldirs) $$(DESTDIR)$$(slibdir)@shlib_slibdir_qual@; \
-       $(INSTALL_DATA) @multilib_dir@/@shlib_base_name@.a \
-               $$(DESTDIR)$$(slibdir)@shlib_slibdir_qual@/
-SHLIB_LIBS = -lc `case @multilib_dir@ in *pthread*) echo -lpthread ;; esac`
-SHLIB_MKMAP = $(srcdir)/mkmap-flat.awk
-SHLIB_MAPFILES = $$(libgcc_objdir)/libgcc-std.ver
-SHLIB_NM_FLAGS = -Bpg -X32_64
-
-# Either 32-bit and 64-bit objects in archives.
-AR_FLAGS_FOR_TARGET = -X32_64
diff --git a/gcc/config/sh/libgcc-excl.ver b/gcc/config/sh/libgcc-excl.ver
deleted file mode 100644 (file)
index 325c740..0000000
+++ /dev/null
@@ -1,8 +0,0 @@
-# Exclude various symbols which should not be visible in libgcc.so for SH.
-%exclude {
-  __ashlsi3
-  __ashrsi3
-  __lshrsi3
-  __mulsi3 # this is an SH1-only symbol.
-  __udivsi3
-}
diff --git a/gcc/config/sh/libgcc-glibc.ver b/gcc/config/sh/libgcc-glibc.ver
deleted file mode 100644 (file)
index b8ec326..0000000
+++ /dev/null
@@ -1,48 +0,0 @@
-# Copyright (C) 2002, 2008 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/>.
-
-# In order to work around the very problems that force us to now generally
-# create a libgcc.so, glibc reexported a number of routines from libgcc.a.
-# By now choosing the same version tags for these specific routines, we
-# maintain enough binary compatibility to allow future versions of glibc
-# to defer implementation of these routines to libgcc.so via DT_AUXILIARY.
-
-# Note that we cannot use the default libgcc-glibc.ver file on sh,
-# because GLIBC_2.0 does not exist on this architecture, as the first 
-# ever glibc release on the platform was GLIBC_2.2.
-
-%exclude {
-  __register_frame
-  __register_frame_table
-  __deregister_frame
-  __register_frame_info
-  __deregister_frame_info
-  __frame_state_for
-  __register_frame_info_table
-}
-
-%inherit GCC_3.0 GLIBC_2.2
-GLIBC_2.2 {
-  __register_frame
-  __register_frame_table
-  __deregister_frame
-  __register_frame_info
-  __deregister_frame_info
-  __frame_state_for
-  __register_frame_info_table
-}
diff --git a/gcc/config/sparc/libgcc-sparc-glibc.ver b/gcc/config/sparc/libgcc-sparc-glibc.ver
deleted file mode 100644 (file)
index 91138d3..0000000
+++ /dev/null
@@ -1,93 +0,0 @@
-# Copyright (C) 2002, 2006, 2008 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/>.
-
-# In order to work around the very problems that force us to now generally
-# create a libgcc.so, glibc reexported a number of routines from libgcc.a.
-# By now choosing the same version tags for these specific routines, we
-# maintain enough binary compatibility to allow future versions of glibc
-# to defer implementation of these routines to libgcc.so via DT_AUXILIARY.
-
-%exclude {
-  __divdi3
-  __moddi3
-  __udivdi3
-  __umoddi3
-  __register_frame
-  __register_frame_table
-  __deregister_frame
-  __register_frame_info
-  __deregister_frame_info
-  __frame_state_for
-  __register_frame_info_table
-}
-
-%ifdef __arch64__
-%define GLIBC_VER GLIBC_2.2
-%else
-%define GLIBC_VER GLIBC_2.0
-%endif
-%inherit GCC_3.0 GLIBC_VER
-GLIBC_VER {
-  # Sampling of DImode arithmetic used by (at least) i386 and m68k.
-  __divdi3
-  __moddi3
-  __udivdi3
-  __umoddi3
-
-  # Exception handling support functions used by most everyone.
-  __register_frame
-  __register_frame_table
-  __deregister_frame
-  __register_frame_info
-  __deregister_frame_info
-  __frame_state_for
-  __register_frame_info_table
-}
-
-%if !defined (__arch64__) && defined (__LONG_DOUBLE_128__)
-
-# long double 128 bit support from 32-bit libgcc_s.so.1 is only available
-# when configured with --with-long-double-128.  Make sure all the
-# symbols are available at @@GCC_LDBL_* versions to make it clear
-# there is a configurable symbol set.
-
-%exclude {
-  __fixtfdi
-  __fixunstfdi
-  __floatditf
-
-  __divtc3
-  __multc3
-  __powitf2
-}
-
-%inherit GCC_LDBL_3.0 GCC_3.0
-GCC_LDBL_3.0 {
-  __fixtfdi
-  __fixunstfdi
-  __floatditf
-}
-
-%inherit GCC_LDBL_4.0.0 GCC_4.0.0
-GCC_LDBL_4.0.0 {
-  __divtc3
-  __multc3
-  __powitf2
-}
-
-%endif
diff --git a/gcc/config/sparc/t-linux b/gcc/config/sparc/t-linux
deleted file mode 100644 (file)
index 30daa37..0000000
+++ /dev/null
@@ -1,5 +0,0 @@
-# Override t-slibgcc-elf-ver to export some libgcc symbols with
-# the symbol versions that glibc used.
-# Avoid the t-linux version file.
-SHLIB_MAPFILES = $$(libgcc_objdir)/libgcc-std.ver \
-                $(srcdir)/config/sparc/libgcc-sparc-glibc.ver
index 6b8d2dd1292c19a077a0cd2f07535a3a72ad7b08..e517778be6febe2a1f553672fd983175307d4b5d 100644 (file)
 # <http://www.gnu.org/licenses/>.
 
 # Use the system libunwind library.
-#
-# Override the default value from t-slibgcc-elf-ver and mention -lunwind
-# so that the resulting libgcc_s.so has the necessary DT_NEEDED entry for
-# libunwind.
-SHLIB_LC = -lunwind -lc
 
 T_CFLAGS += -DUSE_LIBUNWIND_EXCEPTIONS
 TARGET_LIBGCC2_CFLAGS += -DUSE_GAS_SYMVER
index 64d19ca8dd77ff1c0b62a8d2da18396de2668a71..5fb71c98f9db4dd58ec65c7312a9bb32eeec7d7a 100644 (file)
@@ -21,7 +21,3 @@
 CRTSTUFF_T_CFLAGS_S = $(CRTSTUFF_T_CFLAGS) -fPIC
 # Compile libgcc2.a with pic.
 TARGET_LIBGCC2_CFLAGS = -fPIC
-
-# Override t-slibgcc-elf-ver to export some libgcc symbols with
-# the symbol versions that glibc used.
-SHLIB_MAPFILES += $(srcdir)/config/libgcc-glibc.ver
diff --git a/gcc/config/t-slibgcc b/gcc/config/t-slibgcc
new file mode 100644 (file)
index 0000000..91f2d92
--- /dev/null
@@ -0,0 +1,2 @@
+# Cause ENABLE_SHARED_LIBGCC to be defined in gcc/Makefile.in (DRIVER_DEFINES).
+SHLIB = true
diff --git a/gcc/config/t-slibgcc-dummy b/gcc/config/t-slibgcc-dummy
deleted file mode 100644 (file)
index e68ce5e..0000000
+++ /dev/null
@@ -1,3 +0,0 @@
-# SHLIB_LINK must be non-empty so ENABLE_SHARED_LIBGCC is defined correctly
-# in DRIVER_DEFINES if libgcc configuration has been moved to toplevel.
-SHLIB_LINK = dummy
diff --git a/gcc/config/t-slibgcc-elf-ver b/gcc/config/t-slibgcc-elf-ver
deleted file mode 100644 (file)
index b90f4fc..0000000
+++ /dev/null
@@ -1,56 +0,0 @@
-# Copyright (C) 2001, 2002, 2003, 2004, 2005 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 for ELF with symbol versioning
-# with the GNU linker.
-
-SHLIB_EXT = .so
-SHLIB_SOLINK = @shlib_base_name@.so
-SHLIB_SOVERSION = 1
-SHLIB_SONAME = @shlib_base_name@.so.$(SHLIB_SOVERSION)
-SHLIB_MAP = @shlib_map_file@
-SHLIB_OBJS = @shlib_objs@
-SHLIB_DIR = @multilib_dir@
-SHLIB_SLIBDIR_QUAL = @shlib_slibdir_qual@
-SHLIB_LC = -lc
-SHLIB_MAKE_SOLINK = $(LN_S) $(SHLIB_SONAME) $(SHLIB_DIR)/$(SHLIB_SOLINK)
-SHLIB_INSTALL_SOLINK = $(LN_S) $(SHLIB_SONAME) \
-       $$(DESTDIR)$$(slibdir)$(SHLIB_SLIBDIR_QUAL)/$(SHLIB_SOLINK)
-
-SHLIB_LINK = $(GCC_FOR_TARGET) $(LIBGCC2_CFLAGS) -shared -nodefaultlibs \
-       -Wl,--soname=$(SHLIB_SONAME) \
-       -Wl,--version-script=$(SHLIB_MAP) \
-       -o $(SHLIB_DIR)/$(SHLIB_SONAME).tmp @multilib_flags@ \
-       $(SHLIB_OBJS) $(SHLIB_LC) && \
-       rm -f $(SHLIB_DIR)/$(SHLIB_SOLINK) && \
-       if [ -f $(SHLIB_DIR)/$(SHLIB_SONAME) ]; then \
-         mv -f $(SHLIB_DIR)/$(SHLIB_SONAME) \
-               $(SHLIB_DIR)/$(SHLIB_SONAME).backup; \
-       else true; fi && \
-       mv $(SHLIB_DIR)/$(SHLIB_SONAME).tmp $(SHLIB_DIR)/$(SHLIB_SONAME) && \
-       $(SHLIB_MAKE_SOLINK)
-# $(slibdir) double quoted to protect it from expansion while building
-# libgcc.mk.  We want this delayed until actual install time.
-SHLIB_INSTALL = \
-       $$(mkinstalldirs) $$(DESTDIR)$$(slibdir)$(SHLIB_SLIBDIR_QUAL); \
-       $(INSTALL_DATA) $(SHLIB_DIR)/$(SHLIB_SONAME) \
-         $$(DESTDIR)$$(slibdir)$(SHLIB_SLIBDIR_QUAL)/$(SHLIB_SONAME); \
-       rm -f $$(DESTDIR)$$(slibdir)$(SHLIB_SLIBDIR_QUAL)/$(SHLIB_SOLINK); \
-       $(SHLIB_INSTALL_SOLINK)
-SHLIB_MKMAP = $(srcdir)/mkmap-symver.awk
-SHLIB_MAPFILES = $$(libgcc_objdir)/libgcc-std.ver
diff --git a/gcc/config/t-slibgcc-libgcc b/gcc/config/t-slibgcc-libgcc
deleted file mode 100644 (file)
index df004a5..0000000
+++ /dev/null
@@ -1,32 +0,0 @@
-# Copyright (C) 2009 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/>.
-
-# Instead of creating $(SHLIB_SOLINK) symlink create a GNU ld
-# linker script which sources in both $(SHLIB_SONAME) and libgcc.a.
-# This is needed on targets where libgcc.a contains routines that aren't in
-# $(SHLIB_SONAME) and are needed for shared libraries.
-
-SHLIB_MAKE_SOLINK = \
-       (echo "/* GNU ld script"; \
-        echo "   Use the shared library, but some functions are only in"; \
-        echo "   the static library.  */"; \
-        echo "GROUP ( $(SHLIB_SONAME) libgcc.a )" \
-       ) > $(SHLIB_DIR)/$(SHLIB_SOLINK)
-SHLIB_INSTALL_SOLINK = \
-       $(INSTALL_DATA) $(SHLIB_DIR)/$(SHLIB_SOLINK) \
-         $$(DESTDIR)$$(slibdir)$(SHLIB_SLIBDIR_QUAL)/$(SHLIB_SOLINK)
diff --git a/gcc/config/t-slibgcc-nolc-override b/gcc/config/t-slibgcc-nolc-override
deleted file mode 100644 (file)
index 959d2cc..0000000
+++ /dev/null
@@ -1 +0,0 @@
-SHLIB_LC =
diff --git a/gcc/config/xtensa/libgcc-xtensa.ver b/gcc/config/xtensa/libgcc-xtensa.ver
deleted file mode 100644 (file)
index 43e7d4f..0000000
+++ /dev/null
@@ -1,3 +0,0 @@
-GCC_4.3.0 {
-  __umulsidi3
-}
index 7d535e155b484004ce307fa323676af548b68d40..7d39351fa66c5d98a59b739be4a7117aa7cf0f3b 100644 (file)
@@ -1,3 +1 @@
 EXTRA_MULTILIB_PARTS = crtbegin.o crtend.o crtbeginS.o crtendS.o crtbeginT.o
-
-SHLIB_MAPFILES += $(srcdir)/config/xtensa/libgcc-xtensa.ver
index 0540430dc2075c1f7913dcd8459cea9052f10086..2a205093a437054849c47c40641ba67fd82b2b23 100755 (executable)
@@ -671,7 +671,6 @@ all_gtfiles
 all_compilers
 srcdir
 subdirs
-slibdir
 dollar
 gcc_tooldir
 enable_lto
@@ -918,7 +917,6 @@ with_gc
 with_system_zlib
 enable_maintainer_mode
 enable_version_specific_runtime_libs
-with_slibdir
 enable_plugin
 enable_libquadmath_support
 with_linker_hash_style
@@ -1674,7 +1672,6 @@ Optional Packages:
   --with-gc={page,zone}   choose the garbage collection mechanism to use with
                           the compiler
   --with-system-zlib      use installed libz
-  --with-slibdir=DIR      shared libraries in DIR [LIBDIR]
   --with-linker-hash-style={sysv,gnu,both}
                           specify the linker hash style
 
@@ -18072,7 +18069,7 @@ else
   lt_dlunknown=0; lt_dlno_uscore=1; lt_dlneed_uscore=2
   lt_status=$lt_dlunknown
   cat > conftest.$ac_ext <<_LT_EOF
-#line 18075 "configure"
+#line 18072 "configure"
 #include "confdefs.h"
 
 #if HAVE_DLFCN_H
@@ -18178,7 +18175,7 @@ else
   lt_dlunknown=0; lt_dlno_uscore=1; lt_dlneed_uscore=2
   lt_status=$lt_dlunknown
   cat > conftest.$ac_ext <<_LT_EOF
-#line 18181 "configure"
+#line 18178 "configure"
 #include "confdefs.h"
 
 #if HAVE_DLFCN_H
@@ -26957,22 +26954,6 @@ if test "${enable_version_specific_runtime_libs+set}" = set; then :
 fi
 
 
-
-# Check whether --with-slibdir was given.
-if test "${with_slibdir+set}" = set; then :
-  withval=$with_slibdir; slibdir="$with_slibdir"
-else
-  if test "${enable_version_specific_runtime_libs+set}" = set; then
-  slibdir='$(libsubdir)'
-elif test "$host" != "$target"; then
-  slibdir='$(build_tooldir)/lib'
-else
-  slibdir='$(libdir)'
-fi
-fi
-
-
-
 # Substitute configuration variables
 
 
index d63acea68f5c7afc434adeee03f5828ee7558593..9f7997b9141ffa5bce236d79346957d19680664c 100644 (file)
@@ -4921,18 +4921,6 @@ AC_ARG_ENABLE(version-specific-runtime-libs,
                 [specify that runtime libraries should be
                  installed in a compiler-specific directory])])
 
-AC_ARG_WITH(slibdir,
-[AS_HELP_STRING([--with-slibdir=DIR], [shared libraries in DIR @<:@LIBDIR@:>@])],
-slibdir="$with_slibdir",
-if test "${enable_version_specific_runtime_libs+set}" = set; then
-  slibdir='$(libsubdir)'
-elif test "$host" != "$target"; then
-  slibdir='$(build_tooldir)/lib'
-else
-  slibdir='$(libdir)'
-fi)
-AC_SUBST(slibdir)
-
 # Substitute configuration variables
 AC_SUBST(subdirs)
 AC_SUBST(srcdir)
index f7328db2bd19d895e81c3731f0f0dc065d966d33..d246e5cc4ba29d22e6e4848ef8ccd217c7ab210d 100644 (file)
@@ -1,3 +1,7 @@
+2011-11-02  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
+
+       * Make-lang.in (g++spec.o): Pass SHLIB instead of SHLIB_LINK.
+
 2011-11-01  Paolo Carlini  <paolo.carlini@oracle.com>
 
        PR c++/44277
index 6944ce972a8a8aecc079ad1dff0ffe55d5f63b54..650fc38509657af6f11d986a8036691c3c393d62 100644 (file)
@@ -55,7 +55,7 @@ c++: cc1plus$(exeext)
 
 g++spec.o: $(srcdir)/cp/g++spec.c $(SYSTEM_H) coretypes.h $(TM_H) $(GCC_H) \
     $(CONFIG_H) $(OPTS_H)
-       (SHLIB_LINK='$(SHLIB_LINK)'; \
+       (SHLIB='$(SHLIB)'; \
        $(COMPILER) -c $(ALL_COMPILERFLAGS) $(ALL_CPPFLAGS) $(DRIVER_DEFINES) \
                $(INCLUDES) $(srcdir)/cp/g++spec.c)
 
index 40d2a304bd56b8e984e7a9b9ed81761486d2387e..ade1906d2553ffe527b1ed9b91aaa31a13ab7616 100644 (file)
@@ -1,3 +1,7 @@
+2011-11-02  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
+
+       * Makef-lang.in (gfortranspec.o): Pass SHLIB instead of SHLIB_LINK.
+
 2011-10-30  Steven G. Kargl  <kargl@gcc.gnu.org>
 
        PR fortran/50573
index b766da651a2d4b2f0a31bd2298b2315a93cd4696..2602b157ab857e96d0b20ac1bb585756405ac76c 100644 (file)
@@ -79,7 +79,7 @@ fortran: f951$(exeext)
 
 gfortranspec.o: $(srcdir)/fortran/gfortranspec.c $(SYSTEM_H) $(TM_H) $(GCC_H) \
        $(CONFIG_H) coretypes.h intl.h $(OPTS_H)
-       (SHLIB_LINK='$(SHLIB_LINK)'; \
+       (SHLIB='$(SHLIB)'; \
        $(COMPILER) -c $(ALL_COMPILERFLAGS) $(ALL_CPPFLAGS) $(DRIVER_DEFINES) \
                $(INCLUDES) $(srcdir)/fortran/gfortranspec.c)
 
index 3802fa8e46336da4ad62a1f474d4e9fced973cdb..2eaf210c94fc70e873214d2b945a55c92ddf3add 100644 (file)
@@ -1,3 +1,7 @@
+2011-11-02  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
+
+       * Make-lang.in (gospec.o): Pass SHLIB instead of SHLIB_LINK.
+
 2011-08-24  Roberto Lublinerman  <rluble@gmail.com>
 
        * lang.opt: Add fgo-optimize-.
index d7ae7aee6fbebf9830bcdbeb5d324b3b4e7e700e..62a4d6f0deefe18accb2be1eac1e2637721ed3a9 100644 (file)
@@ -32,7 +32,7 @@ go: go1$(exeext)
 
 gospec.o: $(srcdir)/go/gospec.c $(SYSTEM_H) coretypes.h $(TM_H) $(GCC_H) \
     $(CONFIG_H) opts.h
-       (SHLIB_LINK='$(SHLIB_LINK)'; \
+       (SHLIB='$(SHLIB)'; \
        $(COMPILER) -c $(ALL_COMPILERFLAGS) $(ALL_CPPFLAGS) $(DRIVER_DEFINES) \
                $(INCLUDES) $(srcdir)/go/gospec.c)
 
index ac83a40c50b9e1dfe833357e56b66de5027c9342..715d1f5885cada07844501973ce0bbf50670e90a 100644 (file)
@@ -1,3 +1,7 @@
+2011-11-02  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
+
+       * Make-lang.in (jvspec.o): Pass SHLIB instead of SHLIB_LINK.
+
 2011-10-15  Tom Tromey  <tromey@redhat.com>
            Dodji Seketeli  <dodji@redhat.com>
 
index 1d9fd2b2988644440b02c5aec71885b8b62f08c1..4d6b63b37082ef4dfd993a055325e8e88495d7f2 100644 (file)
@@ -58,7 +58,7 @@ JAVA_TARGET_INDEPENDENT_BIN_TOOLS = jcf-dump
 
 jvspec.o: $(srcdir)/java/jvspec.c $(SYSTEM_H) coretypes.h $(TM_H) \
   $(GCC_H) $(CONFIG_H) java/jcf.h java/javaop.h $(OPTS_H)
-       (SHLIB_LINK='$(SHLIB_LINK)'; \
+       (SHLIB='$(SHLIB)'; \
        $(COMPILER) -c $(ALL_COMPILERFLAGS) $(ALL_CPPFLAGS) $(DRIVER_DEFINES) \
                $(INCLUDES) $(srcdir)/java/jvspec.c $(OUTPUT_OPTION))
 
diff --git a/gcc/libgcc-libsystem.ver b/gcc/libgcc-libsystem.ver
deleted file mode 100644 (file)
index 4763174..0000000
+++ /dev/null
@@ -1 +0,0 @@
-_darwin10_Unwind_FindEnclosingFunction
diff --git a/gcc/mkmap-flat.awk b/gcc/mkmap-flat.awk
deleted file mode 100644 (file)
index ec5e1fd..0000000
+++ /dev/null
@@ -1,109 +0,0 @@
-# Generate a flat list of symbols to export.
-#      Copyright (C) 2007, 2008, 2009, 2011  Free Software Foundation, Inc.
-#      Contributed by Richard Henderson <rth@cygnus.com>
-#
-# 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/>.
-
-# Options:
-#   "-v leading_underscore=1" : Symbols in map need leading underscore.
-#   "-v osf_export=1"        : Create -input file for Tru64 UNIX linker
-#                              instead of map file.
-#   "-v pe_dll=1"             : Create .DEF file for Windows PECOFF
-#                               DLL link instead of map file.
-
-BEGIN {
-  state = "nm";
-  excluding = 0;
-  if (leading_underscore)
-    prefix = "_";
-  else
-    prefix = "";
-}
-
-# Remove comment and blank lines.
-/^ *#/ || /^ *$/ {
-  next;
-}
-
-# We begin with nm input.  Collect the set of symbols that are present
-# so that we can elide undefined symbols.
-
-state == "nm" && /^%%/ {
-  state = "ver";
-  next;
-}
-
-state == "nm" && ($1 == "U" || $2 == "U") {
-  next;
-}
-
-state == "nm" && NF == 3 {
-  def[$3] = 1;
-  next;
-}
-
-state == "nm" {
-  next;
-}
-
-# Now we process a simplified variant of the Solaris symbol version
-# script.  We have one symbol per line, no semicolons, simple markers
-# for beginning and ending each section, and %inherit markers for
-# describing version inheritance.  A symbol may appear in more than
-# one symbol version, and the last seen takes effect.
-# The magic version name '%exclude' causes all the symbols given that
-# version to be dropped from the output (unless a later version overrides).
-
-NF == 3 && $1 == "%inherit" {
-  next;
-}
-
-NF == 2 && $2 == "{" {
-  if ($1 == "%exclude")
-    excluding = 1;
-  next;
-}
-
-$1 == "}" {
-  excluding = 0;
-  next;
-}
-
-{
-  sym = prefix $1;
-  if (excluding)
-    delete export[sym];
-  else
-    export[sym] = 1;
-  next;
-}
-
-END {
-
-  if (pe_dll) {
-    print "LIBRARY " pe_dll;
-    print "EXPORTS";
-  }
-
-  for (sym in export)
-    if (def[sym] || (pe_dll && def["_" sym])) {
-      if (!osf_export)
-       print sym;
-      else
-       print "-exported_symbol " sym;
-    }
-}
diff --git a/gcc/mkmap-symver.awk b/gcc/mkmap-symver.awk
deleted file mode 100644 (file)
index 4877e90..0000000
+++ /dev/null
@@ -1,136 +0,0 @@
-# Generate an ELF symbol version map a-la Solaris and GNU ld.
-#      Copyright (C) 2007, 2008  Free Software Foundation, Inc.
-#      Contributed by Richard Henderson <rth@cygnus.com>
-#
-# 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/>.
-
-BEGIN {
-  state = "nm";
-  sawsymbol = 0;
-  if (leading_underscore)
-    prefix = "_";
-  else
-    prefix = "";
-}
-
-# Remove comment and blank lines.
-/^ *#/ || /^ *$/ {
-  next;
-}
-
-# We begin with nm input.  Collect the set of symbols that are present
-# so that we can not emit them into the final version script -- Solaris
-# complains at us if we do.
-
-state == "nm" && /^%%/ {
-  state = "ver";
-  next;
-}
-
-state == "nm" && ($1 == "U" || $2 == "U") {
-  next;
-}
-
-state == "nm" && NF == 3 {
-  split ($3, s, "@")
-  def[s[1]] = 1;
-  sawsymbol = 1;
-  next;
-}
-
-state == "nm" {
-  next;
-}
-
-# Now we process a simplified variant of the Solaris symbol version
-# script.  We have one symbol per line, no semicolons, simple markers
-# for beginning and ending each section, and %inherit markers for
-# describing version inheritance.  A symbol may appear in more than
-# one symbol version, and the last seen takes effect.
-# The magic version name '%exclude' causes all the symbols given that
-# version to be dropped from the output (unless a later version overrides).
-
-NF == 3 && $1 == "%inherit" {
-  inherit[$2] = $3;
-  next;
-}
-
-NF == 2 && $2 == "{" {
-  if ($1 != "%exclude")
-    libs[$1] = 1;
-  thislib = $1;
-  next;
-}
-
-$1 == "}" {
-  thislib = "";
-  next;
-}
-
-{
-  sym = prefix $1;
-  symbols[sym] = 1
-  if (thislib != "%exclude")
-    ver[sym, thislib] = 1;
-  else {
-    for (l in libs)
-      ver[sym, l] = 0;
-  }
-  next;
-}
-
-END {
-  if (!sawsymbol)
-    {
-      print "No symbols seen -- broken or mis-installed nm?" | "cat 1>&2";
-      exit 1;
-    }
-  for (l in libs)
-    output(l);
-}
-
-function output(lib) {
-  if (done[lib])
-    return;
-  done[lib] = 1;
-  if (inherit[lib])
-    output(inherit[lib]);
-
-  empty=1
-  for (sym in symbols)
-    if ((ver[sym, lib] != 0) && (sym in def))
-      {
-       if (empty)
-         {
-           printf("%s {\n", lib);
-           printf("  global:\n");
-           empty = 0;
-         }
-       printf("\t%s;\n", sym);
-      }
-
-  if (empty)
-    {
-      for (l in libs)
-       if (inherit[l] == lib)
-         inherit[l] = inherit[lib];
-    }
-  else if (inherit[lib])
-    printf("} %s;\n", inherit[lib]);
-  else
-    printf ("\n  local:\n\t*;\n};\n");
-}
index a261e7524cdd7f3040c9f96af026075ef2235cb1..5227073acfe4e14690d626a6dcb3f88e81954641 100644 (file)
@@ -1,3 +1,156 @@
+2011-11-02  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
+
+       * Makefile.in (SHLIB_NM_FLAGS): Set.
+       * mkmap-flat.awk, mkmap-symver.awk: New files.
+       * configure.ac (libgcc_cv_lib_sjlj_exceptions): Check for SjLj
+       exceptions.
+       * configure: Regenerate.
+       * config/libgcc-glibc.ver: New file.
+       * config/libgcc-libsystem.ver: New file.
+       * config/t-libunwind (SHLIB_LC): Set.
+       * config/t-linux: New file.
+       * config/t-slibgcc (INSTALL_SHLIB): New.
+       (SHLIB_INSTALL): Use it.
+       * config/t-slibgcc-darwin (SHLIB_MKMAP): Use $(srcdir) to refer
+       to mkmap-symver.awk.
+       (SHLIB_MAPFILES): Don't append, adapt pathname.
+       (SHLIB_VERPFX): Set.
+       * config/t-slibgcc-elf-ver (SHLIB_MKMAP): Use $(srcdir) to refer
+       to mkmap-symver.awk.
+       * config/t-slibgcc-gld-nover, config/t-slibgcc-hpux,
+       config/t-slibgcc-libgcc, config/t-slibgcc-vms: New files.
+       * config/alpha/libgcc-alpha-ldbl.ver, config/alpha/t-linux: New files.
+       * config/alpha/t-slibgcc-osf (SHLIB_MKMAP): Use $(srcdir) to refer
+       to mkmap-flat.awk.
+       * config/arm/t-bpabi (SHLIB_MAPFILES): Set.
+       * config/bfin/libgcc-glibc.ver, config/bfin/t-linux: New files.
+       * config/c6x/libgcc-eabi.ver, config/c6x/t-elf: New files.
+       * config/cris/libgcc-glibc.ver, config/cris/t-linux: New files.
+       * config/frv/libgcc-frv.ver, config/frv/t-linux: New files.
+       * config/i386/libgcc-darwin.10.4.ver,
+       config/i386/libgcc-darwin.10.5.ver, config/i386/libgcc-glibc.ver:
+       New files.
+       * config/i386/t-darwin: Remove.
+       * config/i386/t-darwin64: Likewise.
+       * config/i386/t-dw2-eh, config/i386/t-sjlj-eh: New files.
+       * config/i386/t-slibgcc-cygming, config/i386/t-cygwin,
+       config/i386/t-dlldir, config/i386/t-dlldir-x: New files.
+       * config/i386/t-linux: New file.
+       * config/i386/t-mingw32: New file.
+       * config/ia64/libgcc-glibc.ver, config/ia64/libgcc-ia64.ver: New files.
+       * config/ia64/t-glibc: Rename to ...
+       * config/ia64/t-linux: ... this.
+       (SHLIB_MAPFILES): Set.
+       * config/ia64/t-glibc-libunwind: Rename to ...
+       * config/ia64/t-linux-libunwind: ... this.
+       * config/ia64/t-ia64 (SHLIB_MAPFILES): Set.
+       * config/ia64/t-slibgcc-hpux: New file.
+       * config/m32r/libgcc-glibc.ver, config/m32r/t-linux: New files.
+       * config/m68k/t-slibgcc-elf-ver: New file.
+       * config/mips/t-mips16 (SHLIB_MAPFILES): Set.
+       * config/mips/t-slibgcc-irix (SHLIB_MKMAP): Use $(srcdir) to refer
+       to mkmap-flat.awk.
+       * config/pa/t-slibgcc-hpux: New file.
+       * config/pa/t-slibgcc-dwarf-ver, config/pa/t-slibgcc-sjsj-ver: New
+       files.
+       * config/rs6000/libgcc-darwin.10.4.ver,
+       config/rs6000/libgcc-darwin.10.5.ver: New files.
+       * config/rs6000/libgcc-ppc-glibc.ver: Rename to
+       config/rs6000/libgcc-glibc.ver.
+       * config/rs6000/libgcc-ppc64.ver: Rename to
+       config/rs6000/libgcc-ibm-ldouble.ver.
+       * config/rs6000/t-darwin (SHLIB_VERPFX): Remove.
+       * config/rs6000/t-ibm-ldouble (SHLIB_MAPFILES): Adapt filename.
+       * config/rs6000/t-ldbl128: Rename to ...
+       * config/rs6000/t-linux: ... this.
+       (SHLIB_MAPFILES): Adapt filename.
+       * config/rs6000/t-slibgcc-aix: New file.
+       * config/sh/libgcc-excl.ver, config/sh/libgcc-glibc.ver: New files.
+       * config/sh/t-linux (SHLIB_MAPFILES): Use $(srcdir) to refer to
+       libgcc-excl.ver, libgcc-glibc.ver.
+       (SHLIB_LINK, SHLIB_INSTALL): Remove.
+       * config/sparc/libgcc-glibc.ver: New file.
+       * config/sparc/t-linux: New file.
+       * config/xtensa/libgcc-glibc.ver, config/xtensa/t-linux: New files.
+       * config.host (*-*-freebsd*): Add t-slibgcc, t-slibgcc-gld,
+       t-slibgcc-elf-ver to tmake_file.
+       Add t-slibgcc-nolc-override to tmake_file for posix threads on
+       *-*-freebsd[34].
+       (*-*-linux*, frv-*-*linux*, *-*-kfreebsd*-gnu, *-*-knetbsd*-gnu,
+       *-*-gnu*, *-*-kopensolaris*-gnu): Add t-slibgcc, t-slibgcc-gld,
+       t-slibgcc-elf-ver, t-linux to tmake_file.
+       (*-*-netbsd*): Add t-slibgcc, t-slibgcc-gld, t-slibgcc-elf-ver to
+       tmake_file.
+       (alpha*-*-linux*): Add alpha/t-linux to tmake_file.
+       (alpha64-dec-*vms*): Add t-slibgcc-vms to tmake_file.
+       (alpha*-dec-*vms*): Likewise.
+       (arm*-*-freebsd*): Append to tmake_file.
+       (arm*-*-netbsdelf*): Add t-slibgcc-gld-nover to tmake_file.
+       (arm*-*-linux*): Add t-slibgcc-libgcc to tmake_file for
+       arm*-*-linux-*eabi.
+       (arm*-*-eabi*, arm*-*-symbianelf*): Add t-slibgcc-nolc-override to
+       tmake_file for arm*-*-symbianelf*.
+       (bfin*-linux-uclibc*): Append to tmake_file, add bfin/t-linux.
+       (cris-*-linux*, crisv32-*-linux*): Append to tmake_file, add
+       cris/t-linux.
+       (frv-*-*linux*): Append to tmake_file, add frv/t-linux.
+       (hppa*-*-linux*): Add t-slibgcc-libgcc, pa/t-slibgcc-sjlj-ver,
+       pa/t-slibgcc-dwarf-ver to tmake_file.
+       (hppa[12]*-*-hpux10*): Add t-slibgcc, pa/t-slibgcc-sjlj-ver,
+       pa/t-slibgcc-dwarf-ver, t-slibgcc-hpux, pa/t-slibgcc-hpux to tmake_file.
+       (hppa*64*-*-hpux11*): Likewise.
+       (hppa[12]*-*-hpux11*): Likewise.
+       (x86_64-*-darwin*): Don't override tmake_file, but only keep
+       i386/t-crtpc, i386/t-crtfm.
+       (i[34567]86-*-cygwin*): Set tmake_eh_file, tmake_dlldir_file.
+       Prepend $tmake_eh_file, $tmake_dlldir_file, i386/t-slibgcc-cygming
+       to tmake_file.
+       Add i386/t-cygwin to tmake_file.
+       Prepent i386/t-mingw-pthread to tmake_file for posix threads.
+       (i[34567]86-*-mingw*): Set tmake_eh_file, tmake_dlldir_file.
+       Prepend $tmake_eh_file, $tmake_dlldir_file, i386/t-slibgcc-cygming
+       to tmake_file.
+       Add i386/t-mingw32 to tmake_file.
+       (x86_64-*-mingw*): Likewise.
+       (ia64*-*-freebsd*): Append to tmake_file.
+       (ia64*-*-linux*): Append to tmake_file.
+       Replace ia64/t-glibc by ia64/t-linux.
+       Replace ia64/t-glibc-libunwind by ia64/t-linux-libunwind if using
+       system libunwind.
+       (ia64*-*-hpux*): Add t-slibgcc, ia64/t-slibgcc-hpux,
+       t-slibgcc-hpux to tmake_file.
+       (ia64-hp-*vms*): Add t-slibgcc-vms to tmake_file.
+       (m32r-*-linux*): Append to tmake_file, add m32r/t-linux.
+       (m32rle-*-linux*): Likewise.
+       (m68k-*-linux*)): Add m68k/t-slibgcc-elf-ver to tmake_file unless
+       sjlj exceptions.
+       (microblaze*-linux*): New case.
+       Append to tmake_file, add t-slibgcc-nolc-override.
+       (powerpc-*-freebsd*): Add t-slibgcc-libgcc to tmake_file.
+       (powerpc-*-linux*, powerpc64-*-linux*): Likewise.
+       Replace rs6000/t-ldbl128 by rs6000/t-linux in tmake_file.
+       (rs6000-ibm-aix4.[3456789]*, powerpc-ibm-aix4.[3456789]*): Add
+       rs6000/t-slibgcc-aix to tmake_file.
+       (rs6000-ibm-aix5.1.*, powerpc-ibm-aix5.1.*): Likewise.
+       (rs6000-ibm-aix[56789].*, powerpc-ibm-aix[56789].*): Likewise.
+       (sh-*-elf*, sh[12346l]*-*-elf*, sh-*-linux*)
+       (sh[2346lbe]*-*-linux*, sh-*-netbsdelf*, shl*-*-netbsdelf*)
+       (sh5-*-netbsd*, sh5l*-*-netbsd*, sh64-*-netbsd*)
+       (sh64l*-*-netbsd*): Add t-slibgcc-libgcc to tmake_file for
+       sh*-*-linux*.
+       (sparc-*-linux*): Append to tmake_file for *-leon*.
+       Add sparc/t-linux to tmake_file for non-Leon targets.
+       (sparc64-*-linux*): Add sparc/t-linux to tmake_file.
+       (tic6x-*-uclinux): New case.
+       Add t-slibgcc, t-slibgcc-gld, t-slibgcc-elf-ver to tmake_file.
+       (tic6x-*-*): Add c6x/t-elf to tmake_file.
+       (xtensa*-*-linux*): Append to tmake_file, add xtensa/t-linux.
+       (am33_2.0-*-linux*): Append to tmake_file.
+       (i[34567]86-*-linux*, x86_64-*-linux*, i[34567]86-*-kfreebsd*-gnu)
+       (i[34567]86-*-knetbsd*-gnu, i[34567]86-*-gnu*): Also handle
+       x86_64-*-kfreebsd*-gnu.
+       Add i386/t-linux to tmake_file.
+
 2011-10-28  Ian Lance Taylor  <iant@google.com>
 
        * config/i386/morestack.S: Correct CFI information to do proper
index e9f2fa2f2b848db1248b22f92c395a467d006a60..e199b6ce3b11f803e3fe3bbeac82e9c173c18129 100644 (file)
@@ -279,6 +279,9 @@ LIB2ADDEH = $(srcdir)/unwind-dw2.c $(srcdir)/unwind-dw2-fde.c \
 LIB2ADDEHSTATIC = $(LIB2ADDEH)
 LIB2ADDEHSHARED = $(LIB2ADDEH)
 
+# nm flags to list global symbols in libgcc object files.
+SHLIB_NM_FLAGS = -pg
+
 # Don't build libunwind by default.
 LIBUNWIND =
 SHLIBUNWIND_LINK =
index 08c00a37f97c4856e57d60e5a96a546d2786abc7..40870704e2fe994646f75df6534b5cd9e75f64ce 100644 (file)
@@ -179,13 +179,25 @@ case ${host} in
   # This is the generic ELF configuration of FreeBSD.  Later
   # machine-specific sections may refine and add to this
   # configuration.
-  tmake_file="$tmake_file t-eh-dw2-dip"
+  tmake_file="$tmake_file t-eh-dw2-dip t-slibgcc t-slibgcc-gld t-slibgcc-elf-ver"
+  case ${target_thread_file} in
+    posix)
+      # Before 5.0, FreeBSD can't bind shared libraries to -lc
+      # when "optionally" threaded via weak pthread_* checks.
+      case ${host} in
+        *-*-freebsd[34] | *-*-freebsd[34].*)
+          tmake_file="${tmake_file} t-slibgcc-nolc-override"
+          ;;
+      esac
+      ;;
+  esac
   ;;
 *-*-linux* | frv-*-*linux* | *-*-kfreebsd*-gnu | *-*-knetbsd*-gnu | *-*-gnu* | *-*-kopensolaris*-gnu)
-  tmake_file="$tmake_file t-eh-dw2-dip"
+  tmake_file="$tmake_file t-eh-dw2-dip t-slibgcc t-slibgcc-gld t-slibgcc-elf-ver t-linux"
   extra_parts="crtbegin.o crtbeginS.o crtbeginT.o crtend.o crtendS.o"
   ;;
 *-*-netbsd*)
+  tmake_file="$tmake_file t-slibgcc t-slibgcc-gld t-slibgcc-elf-ver"
   ;;
 *-*-openbsd*)
   ;;
@@ -239,7 +251,7 @@ esac
 
 case ${host} in
 alpha*-*-linux*)
-       tmake_file="${tmake_file} t-crtfm"
+       tmake_file="${tmake_file} t-crtfm alpha/t-linux"
        extra_parts="$extra_parts crtfastmath.o"
        md_unwind_header=alpha/linux-unwind.h
        ;;
@@ -262,26 +274,27 @@ alpha*-dec-osf5.1*)
        md_unwind_header=alpha/osf5-unwind.h
        ;;
 alpha64-dec-*vms*)
-       tmake_file="vms/t-vms vms/t-vms64 alpha/t-vms"
+       tmake_file="vms/t-vms vms/t-vms64 alpha/t-vms t-slibgcc-vms"
        md_unwind_header=alpha/vms-unwind.h
        ;;
 alpha*-dec-*vms*)
-       tmake_file="vms/t-vms alpha/t-vms"
+       tmake_file="vms/t-vms alpha/t-vms t-slibgcc-vms"
        md_unwind_header=alpha/vms-unwind.h
        ;;
 arm-wrs-vxworks)
        tmake_file=t-fdpbit
        ;;
 arm*-*-freebsd*)
-       tmake_file=t-fdpbit
+       tmake_file="$tmake_file t-fdpbit"
        ;;
 arm*-*-netbsdelf*)
+       tmake_file="$tmake_file t-slibgcc-gld-nover"
        ;;
 arm*-*-linux*)                 # ARM GNU/Linux with ELF
        tmake_file="${tmake_file} t-fixedpoint-gnu-prefix"
        case ${host} in
        arm*-*-linux-*eabi)
-         tmake_file="${tmake_file} arm/t-bpabi"
+         tmake_file="${tmake_file} arm/t-bpabi t-slibgcc-libgcc"
          unwind_header=config/arm/unwind-arm.h
          ;;
        esac
@@ -307,7 +320,7 @@ arm*-*-eabi* | arm*-*-symbianelf* )
          tmake_file="${tmake_file} arm/t-bpabi"
          ;;
        arm*-*-symbianelf*)
-         tmake_file="${tmake_file} arm/t-symbian"
+         tmake_file="${tmake_file} arm/t-symbian t-slibgcc-nolc-override"
          ;;
        esac
        tmake_file="$tmake_file t-softfp-sfdf t-softfp-excl arm/t-softfp t-softfp"
@@ -336,7 +349,7 @@ bfin*-uclinux*)
        md_unwind_header=bfin/linux-unwind.h
         ;;
 bfin*-linux-uclibc*)
-       tmake_file=t-fdpbit
+       tmake_file="$tmake_file t-fdpbit bfin/t-linux"
        # No need to build crtbeginT.o on uClibc systems.  Should probably
        # be moved to the OS specific section above.
        extra_parts="crtbegin.o crtbeginS.o crtend.o crtendS.o"
@@ -353,7 +366,7 @@ crisv32-*-elf | crisv32-*-none | cris-*-elf | cris-*-none)
        extra_parts="crtbegin.o crtend.o"
        ;;
 cris-*-linux* | crisv32-*-linux*)
-       tmake_file=t-fdpbit
+       tmake_file="$tmake_file t-fdpbit cris/t-linux"
        ;;
 fido-*-elf)
        ;;
@@ -364,7 +377,7 @@ frv-*-elf)
        tmake_file=t-fdpbit
        ;;
 frv-*-*linux*)
-       tmake_file=t-fdpbit
+       tmake_file="$tmake_file t-fdpbit frv/t-linux"
        ;;
 h8300-*-rtems*)
        tmake_file=t-fpbit
@@ -375,15 +388,46 @@ h8300-*-elf*)
 hppa*64*-*-linux*)
        ;;
 hppa*-*-linux*)
+       tmake_file="$tmake_file t-slibgcc-libgcc"
+       # Set the libgcc version number
+       if test x$enable_sjlj_exceptions = xyes; then
+           tmake_file="$tmake_file pa/t-slibgcc-sjlj-ver"
+       else
+           tmake_file="$tmake_file pa/t-slibgcc-dwarf-ver"
+       fi
        md_unwind_header=pa/linux-unwind.h
        ;;
 hppa[12]*-*-hpux10*)
+       tmake_file="$tmake_file t-slibgcc"
+       # Set the libgcc version number
+       if test x$enable_sjlj_exceptions = xyes; then
+           tmake_file="$tmake_file pa/t-slibgcc-sjlj-ver"
+       else
+           tmake_file="$tmake_file pa/t-slibgcc-dwarf-ver"
+       fi
+       tmake_file="$tmake_file pa/t-slibgcc-hpux t-slibgcc-hpux"
        md_unwind_header=pa/hpux-unwind.h
        ;;
 hppa*64*-*-hpux11*)
+       tmake_file="$tmake_file t-slibgcc"
+       # Set the libgcc version number
+       if test x$enable_sjlj_exceptions = xyes; then
+           tmake_file="$tmake_file pa/t-slibgcc-sjlj-ver"
+       else
+           tmake_file="$tmake_file pa/t-slibgcc-dwarf-ver"
+       fi
+       tmake_file="$tmake_file pa/t-slibgcc-hpux t-slibgcc-hpux"
        md_unwind_header=pa/hpux-unwind.h
        ;;
 hppa[12]*-*-hpux11*)
+       tmake_file="$tmake_file t-slibgcc"
+       # Set the libgcc version number
+       if test x$enable_sjlj_exceptions = xyes; then
+           tmake_file="$tmake_file pa/t-slibgcc-sjlj-ver"
+       else
+           tmake_file="$tmake_file pa/t-slibgcc-dwarf-ver"
+       fi
+       tmake_file="$tmake_file pa/t-slibgcc-hpux t-slibgcc-hpux"
        md_unwind_header=pa/hpux-unwind.h
        ;;
 i[34567]86-*-darwin*)
@@ -391,7 +435,7 @@ i[34567]86-*-darwin*)
        extra_parts="$extra_parts crtprec32.o crtprec64.o crtprec80.o crtfastmath.o"
        ;;
 x86_64-*-darwin*)
-       tmake_file="t-darwin ${cpu_type}/t-darwin64 i386/t-crtpc i386/t-crtfm t-slibgcc-darwin"
+       tmake_file="$tmake_file i386/t-crtpc i386/t-crtfm"
        extra_parts="$extra_parts crtprec32.o crtprec64.o crtprec80.o crtfastmath.o"
        ;;
 i[34567]86-*-elf*)
@@ -449,15 +493,56 @@ i[4567]86-wrs-vxworks|i[4567]86-wrs-vxworksae)
        ;;
 i[34567]86-*-cygwin*)
        extra_parts="crtbegin.o crtend.o crtfastmath.o"
-       tmake_file="i386/t-cygming i386/t-crtfm t-dfprules"
+       # This has to match the logic for DWARF2_UNWIND_INFO in gcc/config/i386/cygming.h
+       if test x$enable_sjlj_exceptions = xyes; then
+               tmake_eh_file="i386/t-sjlj-eh"
+       else
+               tmake_eh_file="i386/t-dw2-eh"
+       fi
+       # Shared libgcc DLL install dir depends on cross/native build.
+       if test x${build} = x${host} ; then
+               tmake_dlldir_file="i386/t-dlldir"
+       else
+               tmake_dlldir_file="i386/t-dlldir-x"
+       fi
+       tmake_file="${tmake_file} ${tmake_eh_file} ${tmake_dlldir_file} i386/t-slibgcc-cygming i386/t-cygming i386/t-cygwin i386/t-crtfm t-dfprules"
+       case ${target_thread_file} in
+         posix)
+           tmake_file="i386/t-mingw-pthread $tmake_file"
+           ;;
+       esac
        ;;
 i[34567]86-*-mingw*)
        extra_parts="crtbegin.o crtend.o crtfastmath.o"
-       tmake_file="i386/t-cygming i386/t-crtfm t-dfprules"
+       # This has to match the logic for DWARF2_UNWIND_INFO in gcc/config/i386/cygming.h
+       if test x$enable_sjlj_exceptions = xyes; then
+               tmake_eh_file="i386/t-sjlj-eh"
+       else
+               tmake_eh_file="i386/t-dw2-eh"
+       fi
+       # Shared libgcc DLL install dir depends on cross/native build.
+       if test x${build} = x${host} ; then
+               tmake_dlldir_file="i386/t-dlldir"
+       else
+               tmake_dlldir_file="i386/t-dlldir-x"
+       fi
+       tmake_file="${tmake_file} ${tmake_eh_file} ${tmake_dlldir_file} i386/t-slibgcc-cygming i386/t-cygming i386/t-mingw32 i386/t-crtfm t-dfprules"
        md_unwind_header=i386/w32-unwind.h
        ;;
 x86_64-*-mingw*)
-       tmake_file="t-dfprules i386/t-crtfm"
+       # This has to match the logic for DWARF2_UNWIND_INFO in gcc/config/i386/cygming.h
+       if test x$enable_sjlj_exceptions = xyes; then
+               tmake_eh_file="i386/t-sjlj-eh"
+       else
+               tmake_eh_file="i386/t-dw2-eh"
+       fi
+       # Shared libgcc DLL install dir depends on cross/native build.
+       if test x${build} = x${host} ; then
+               tmake_dlldir_file="i386/t-dlldir"
+       else
+               tmake_dlldir_file="i386/t-dlldir-x"
+       fi
+       tmake_file="${tmake_file} ${tmake_eh_file} ${tmake_dlldir_file} i386/t-slibgcc-cygming i386/t-mingw32 t-dfprules i386/t-crtfm"
        extra_parts="$extra_parts crtfastmath.o"
        ;;
 i[34567]86-*-interix3*)
@@ -468,21 +553,21 @@ ia64*-*-elf*)
        ;;
 ia64*-*-freebsd*)
        extra_parts="crtbegin.o crtend.o crtbeginS.o crtendS.o crtfastmath.o"
-       tmake_file="ia64/t-ia64 ia64/t-eh-ia64 t-crtfm"
+       tmake_file="$tmake_file ia64/t-ia64 ia64/t-eh-ia64 t-crtfm"
        ;;
 ia64*-*-linux*)
        extra_parts="crtbegin.o crtend.o crtbeginS.o crtendS.o crtfastmath.o"
-       tmake_file="ia64/t-ia64 t-crtfm t-softfp-tf ia64/t-softfp t-softfp ia64/t-softfp-compat ia64/t-eh-ia64 t-libunwind ia64/t-glibc"
+       tmake_file="$tmake_file ia64/t-ia64 t-crtfm t-softfp-tf ia64/t-softfp t-softfp ia64/t-softfp-compat ia64/t-eh-ia64 t-libunwind ia64/t-linux"
        if test x$with_system_libunwind != xyes ; then
-               tmake_file="${tmake_file} t-libunwind-elf ia64/t-glibc-libunwind"
+               tmake_file="${tmake_file} t-libunwind-elf ia64/t-linux-libunwind"
        fi
        md_unwind_header=ia64/linux-unwind.h
        ;;
 ia64*-*-hpux*)
-       tmake_file="ia64/t-hpux"
+       tmake_file="ia64/t-hpux t-slibgcc ia64/t-slibgcc-hpux t-slibgcc-hpux"
        ;;
 ia64-hp-*vms*)
-       tmake_file="vms/t-vms vms/t-vms64 ia64/t-eh-ia64 ia64/t-vms"
+       tmake_file="vms/t-vms vms/t-vms64 ia64/t-eh-ia64 ia64/t-vms t-slibgcc-vms"
        md_unwind_header=ia64/vms-unwind.h
        ;;
 iq2000*-*-elf*)
@@ -503,10 +588,10 @@ m32rle-*-elf*)
        tmake_file=t-fdpbit
        ;;
 m32r-*-linux*)
-       tmake_file=t-fdpbit
+       tmake_file="$tmake_file t-fdpbit m32r/t-linux"
        ;;
 m32rle-*-linux*)
-       tmake_file=t-fdpbit
+       tmake_file="$tmake_file t-fdpbit m32r/t-linux"
        ;;
 m68k-*-elf*)
        ;;
@@ -520,6 +605,11 @@ m68k-*-uclinux*)           # Motorola m68k/ColdFire running uClinux with uClibc
 m68k-*-linux*)                 # Motorola m68k's running GNU/Linux
                                # with ELF format using glibc 2
                                # aka the GNU/Linux C library 6.
+       # If not configured with --enable-sjlj-exceptions, bump the
+       # libgcc version number.
+       if test x$enable_sjlj_exceptions != xyes; then
+           tmake_file="$tmake_file m68k/t-slibgcc-elf-ver"
+       fi
        md_unwind_header=m68k/linux-unwind.h
        ;;
 m68k-*-rtems*)
@@ -527,6 +617,9 @@ m68k-*-rtems*)
 mcore-*-elf)
        tmake_file=t-fdpbit
        ;;
+microblaze*-linux*)
+        tmake_file="$tmake_file t-slibgcc-nolc-override microblaze/t-microblaze t-fdpbit"
+       ;;
 microblaze*-*-*)
         tmake_file="microblaze/t-microblaze t-fdpbit"
        ;;
@@ -627,7 +720,7 @@ powerpc64-*-darwin*)
        extra_parts="$extra_parts crt2.o"
        ;;
 powerpc-*-freebsd*)
-       tmake_file="${tmake_file} rs6000/t-ppccomm rs6000/t-freebsd t-softfp-sfdf t-softfp-excl t-softfp"
+       tmake_file="${tmake_file} rs6000/t-ppccomm rs6000/t-freebsd t-softfp-sfdf t-softfp-excl t-softfp t-slibgcc-libgcc"
        ;;
 powerpc-*-netbsd*)
        ;;
@@ -656,7 +749,7 @@ powerpc-*-rtems*)
        tmake_file="rs6000/t-ppccomm-ldbl t-fdpbit"
        ;;
 powerpc-*-linux* | powerpc64-*-linux*)
-       tmake_file="${tmake_file} rs6000/t-ppccomm rs6000/t-ldbl128 t-softfp-sfdf t-softfp-excl t-dfprules rs6000/t-ppc64-fp t-softfp"
+       tmake_file="${tmake_file} rs6000/t-ppccomm rs6000/t-linux t-softfp-sfdf t-softfp-excl t-dfprules rs6000/t-ppc64-fp t-softfp t-slibgcc-libgcc"
        md_unwind_header=rs6000/linux-unwind.h
        ;;
 powerpc-wrs-vxworks|powerpc-wrs-vxworksae)
@@ -676,15 +769,15 @@ powerpcle-*-eabi*)
        ;;
 rs6000-ibm-aix4.[3456789]* | powerpc-ibm-aix4.[3456789]*)
        md_unwind_header=rs6000/aix-unwind.h
-       tmake_file="t-fdpbit rs6000/t-ppc64-fp rs6000/t-ibm-ldouble"
+       tmake_file="t-fdpbit rs6000/t-ppc64-fp rs6000/t-ibm-ldouble rs6000/t-slibgcc-aix"
        ;;
 rs6000-ibm-aix5.1.* | powerpc-ibm-aix5.1.*)
        md_unwind_header=rs6000/aix-unwind.h
-       tmake_file="t-fdpbit rs6000/t-ppc64-fp rs6000/t-ibm-ldouble"
+       tmake_file="t-fdpbit rs6000/t-ppc64-fp rs6000/t-ibm-ldouble rs6000/t-slibgcc-aix"
        ;;
 rs6000-ibm-aix[56789].* | powerpc-ibm-aix[56789].*)
        md_unwind_header=rs6000/aix-unwind.h
-       tmake_file="t-fdpbit rs6000/t-ppc64-fp rs6000/t-ibm-ldouble"
+       tmake_file="t-fdpbit rs6000/t-ppc64-fp rs6000/t-ibm-ldouble rs6000/t-slibgcc-aix"
        ;;
 rx-*-elf)
        extra_parts="crtbegin.o crtend.o"
@@ -711,7 +804,7 @@ sh-*-elf* | sh[12346l]*-*-elf* | \
    sh64-*-netbsd* | sh64l*-*-netbsd*)
        case ${host} in
        sh*-*-linux*)
-               tmake_file="${tmake_file} sh/t-linux t-fdpbit"
+               tmake_file="${tmake_file} t-slibgcc-libgcc sh/t-linux t-fdpbit"
                md_unwind_header=sh/linux-unwind.h
                ;;
        sh*-*-netbsd*)
@@ -749,7 +842,10 @@ sparc-*-elf*)
 sparc-*-linux*)                # SPARC's running GNU/Linux, libc6
        case ${host} in
        *-leon*)
-               tmake_file=t-fdpbit
+               tmake_file="${tmake_file} t-fdpbit"
+               ;;
+       *)
+               tmake_file="${tmake_file} sparc/t-linux"
                ;;
        esac
        extra_parts="$extra_parts crtfastmath.o"
@@ -781,7 +877,7 @@ sparc64-*-freebsd*|ultrasparc-*-freebsd*)
        ;;
 sparc64-*-linux*)              # 64-bit SPARC's running GNU/Linux
        extra_parts="$extra_parts crtfastmath.o"
-       tmake_file="${tmake_file} t-crtfm"
+       tmake_file="${tmake_file} t-crtfm sparc/t-linux"
        md_unwind_header=sparc/linux-unwind.h
        ;;
 sparc64-*-netbsd*)
@@ -789,8 +885,12 @@ sparc64-*-netbsd*)
 spu-*-elf*)
        tmake_file="t-fdpbit spu/t-elf"
        ;;
+tic6x-*-uclinux)
+       tmake_file="${tmake_file} t-softfp-sfdf t-softfp-excl t-softfp c6x/t-elf t-slibgcc t-slibgcc-gld t-slibgcc-elf-ver t-gnu-prefix"
+       unwind_header=config/c6x/unwind-c6x.h
+       ;;
 tic6x-*-*)
-       tmake_file="${tmake_file} t-softfp-sfdf t-softfp-excl t-softfp t-gnu-prefix c6x/t-c6x-elf"
+       tmake_file="${tmake_file} t-softfp-sfdf t-softfp-excl t-softfp c6x/t-elf t-gnu-prefix"
        unwind_header=config/c6x/unwind-c6x.h
        ;;
 v850*-*-*)
@@ -809,12 +909,12 @@ xtensa*-*-elf*)
        tmake_file=xtensa/t-xtensa
        ;;
 xtensa*-*-linux*)
-       tmake_file=xtensa/t-xtensa
+       tmake_file="$tmake_file xtensa/t-xtensa xtensa/t-linux"
        md_unwind_header=xtensa/linux-unwind.h
        ;;
 am33_2.0-*-linux*)
        extra_parts="crtbegin.o crtend.o crtbeginS.o crtendS.o"
-       tmake_file=t-fdpbit
+       tmake_file="$tmake_file t-fdpbit"
        ;;
 m32c-*-elf*|m32c-*-rtems*)
        ;;
@@ -829,9 +929,10 @@ esac
 
 case ${host} in
 i[34567]86-*-linux* | x86_64-*-linux* | \
-  i[34567]86-*-kfreebsd*-gnu | i[34567]86-*-knetbsd*-gnu | \
+  i[34567]86-*-kfreebsd*-gnu | x86_64-*-kfreebsd*-gnu | \
+  i[34567]86-*-knetbsd*-gnu | \
   i[34567]86-*-gnu*)
-       tmake_file="${tmake_file} t-tls"
+       tmake_file="${tmake_file} t-tls i386/t-linux"
        if test "$libgcc_cv_cfi" = "yes"; then
                tmake_file="${tmake_file} t-stack i386/t-stack-i386"
        fi
diff --git a/libgcc/config/alpha/libgcc-alpha-ldbl.ver b/libgcc/config/alpha/libgcc-alpha-ldbl.ver
new file mode 100644 (file)
index 0000000..8dc54a7
--- /dev/null
@@ -0,0 +1,50 @@
+# Copyright (C) 2006 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/>.
+
+%ifdef __LONG_DOUBLE_128__
+
+# long double 128 bit support in libgcc_s.so.1 is only available
+# when configured with --with-long-double-128.  Make sure all the
+# symbols are available at @@GCC_LDBL_* versions to make it clear
+# there is a configurable symbol set.
+
+%exclude {
+  __fixtfdi
+  __fixunstfdi
+  __floatditf
+
+  __divtc3
+  __multc3
+  __powitf2
+}
+
+%inherit GCC_LDBL_3.0 GCC_3.0
+GCC_LDBL_3.0 {
+  __fixtfdi
+  __fixunstfdi
+  __floatditf
+}
+
+%inherit GCC_LDBL_4.0.0 GCC_4.0.0
+GCC_LDBL_4.0.0 {
+  __divtc3
+  __multc3
+  __powitf2
+}
+
+%endif
diff --git a/libgcc/config/alpha/t-linux b/libgcc/config/alpha/t-linux
new file mode 100644 (file)
index 0000000..fabf38f
--- /dev/null
@@ -0,0 +1 @@
+SHLIB_MAPFILES += $(srcdir)/config/alpha/libgcc-alpha-ldbl.ver
index 33a07a7b6aa069043dfcef2452cb8741885e7d4a..66e5cf12aa17665b09892fa40121964c02a57fee 100644 (file)
@@ -22,7 +22,7 @@
 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 = $(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
diff --git a/libgcc/config/arm/libgcc-bpabi.ver b/libgcc/config/arm/libgcc-bpabi.ver
new file mode 100644 (file)
index 0000000..3ba8364
--- /dev/null
@@ -0,0 +1,108 @@
+# Copyright (C) 2004, 2005, 2007 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/>.
+
+GCC_3.5 {
+  # BPABI symbols
+  __aeabi_cdcmpeq
+  __aeabi_cdcmple
+  __aeabi_cdrcmple
+  __aeabi_cfcmpeq
+  __aeabi_cfcmple
+  __aeabi_cfrcmple
+  __aeabi_d2f
+  __aeabi_d2iz
+  __aeabi_d2lz
+  __aeabi_d2uiz
+  __aeabi_d2ulz
+  __aeabi_dadd
+  __aeabi_dcmpeq
+  __aeabi_dcmpge
+  __aeabi_dcmpgt
+  __aeabi_dcmple
+  __aeabi_dcmplt
+  __aeabi_dcmpun
+  __aeabi_ddiv
+  __aeabi_dmul
+  __aeabi_dneg
+  __aeabi_drsub
+  __aeabi_dsub
+  __aeabi_f2d
+  __aeabi_f2iz
+  __aeabi_f2lz
+  __aeabi_f2uiz
+  __aeabi_f2ulz
+  __aeabi_fadd
+  __aeabi_fcmpeq
+  __aeabi_fcmpge
+  __aeabi_fcmpgt
+  __aeabi_fcmple
+  __aeabi_fcmplt
+  __aeabi_fcmpun
+  __aeabi_fdiv
+  __aeabi_fmul
+  __aeabi_fneg
+  __aeabi_frsub
+  __aeabi_fsub
+  __aeabi_i2d
+  __aeabi_i2f
+  __aeabi_idiv
+  __aeabi_idiv0
+  __aeabi_idivmod
+  __aeabi_l2d
+  __aeabi_l2f
+  __aeabi_lasr
+  __aeabi_lcmp
+  __aeabi_ldiv0
+  __aeabi_ldivmod
+  __aeabi_llsl
+  __aeabi_llsr
+  __aeabi_lmul
+  __aeabi_ui2d
+  __aeabi_ui2f
+  __aeabi_uidiv
+  __aeabi_uidivmod
+  __aeabi_uldivmod
+  __aeabi_ulcmp
+  __aeabi_ul2d
+  __aeabi_ul2f
+  __aeabi_uread4
+  __aeabi_uread8
+  __aeabi_uwrite4
+  __aeabi_uwrite8
+
+  # Exception-Handling
+  # \S 7.5
+  _Unwind_Complete
+  _Unwind_VRS_Get
+  _Unwind_VRS_Set
+  _Unwind_VRS_Pop
+  # \S 9.2
+  __aeabi_unwind_cpp_pr0
+  __aeabi_unwind_cpp_pr1
+  __aeabi_unwind_cpp_pr2
+  # The libstdc++ exception-handling personality routine uses this 
+  # GNU-specific entry point.
+  __gnu_unwind_frame
+}
+
+%exclude {
+  _Unwind_Backtrace
+}
+GCC_4.3.0 {
+  _Unwind_Backtrace
+}
index a3b23dcd20c02b9ac2c18225008cbc18770dbdb5..ebb2f9fd85d51404a4c4edf541ea28014a18f1d7 100644 (file)
@@ -1,3 +1,6 @@
 LIB2ADDEH = $(srcdir)/config/arm/unwind-arm.c \
   $(srcdir)/config/arm/libunwind.S \
   $(srcdir)/config/arm/pr-support.c $(srcdir)/unwind-c.c
+
+# Add the BPABI names.
+SHLIB_MAPFILES += $(srcdir)/config/arm/libgcc-bpabi.ver
diff --git a/libgcc/config/bfin/libgcc-glibc.ver b/libgcc/config/bfin/libgcc-glibc.ver
new file mode 100644 (file)
index 0000000..516d91f
--- /dev/null
@@ -0,0 +1,1914 @@
+# Copyright (C) 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007,
+# 2008, 2009, 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/>.
+
+GCC_3.0 {
+  # libgcc1 integer symbols
+  ___absvsi2
+  ___addvsi3
+  ___ashlsi3
+  ___ashrsi3
+  ___divsi3
+  ___lshrsi3
+  ___modsi3
+  ___mulsi3
+  ___mulvsi3
+  ___negvsi2
+  ___subvsi3
+  ___udivsi3
+  ___umodsi3
+
+  # libgcc1 floating point symbols
+  ___addsf3
+  ___adddf3
+  ___addxf3
+  ___addtf3
+  ___divsf3
+  ___divdf3
+  ___divxf3
+  ___divtf3
+  ___eqsf2
+  ___eqdf2
+  ___eqxf2
+  ___eqtf2
+  ___extenddfxf2
+  ___extenddftf2
+  ___extendsfdf2
+  ___extendsfxf2
+  ___extendsftf2
+  ___fixsfsi
+  ___fixdfsi
+  ___fixxfsi
+  ___fixtfsi
+  ___floatsisf
+  ___floatsidf
+  ___floatsixf
+  ___floatsitf
+  ___gesf2
+  ___gedf2
+  ___gexf2
+  ___getf2
+  ___gtsf2
+  ___gtdf2
+  ___gtxf2
+  ___gttf2
+  ___lesf2
+  ___ledf2
+  ___lexf2
+  ___letf2
+  ___ltsf2
+  ___ltdf2
+  ___ltxf2
+  ___lttf2
+  ___mulsf3
+  ___muldf3
+  ___mulxf3
+  ___multf3
+  ___negsf2
+  ___negdf2
+  ___negxf2
+  ___negtf2
+  ___nesf2
+  ___nedf2
+  ___nexf2
+  ___netf2
+  ___subsf3
+  ___subdf3
+  ___subxf3
+  ___subtf3
+  ___truncdfsf2
+  ___truncxfsf2
+  ___trunctfsf2
+  ___truncxfdf2
+  ___trunctfdf2
+
+  # libgcc2 DImode arithmetic (for 32-bit targets).
+  ___absvdi2
+  ___addvdi3
+  ___ashldi3
+  ___ashrdi3
+  ___cmpdi2
+  ___divdi3
+  ___ffsdi2
+  ___fixdfdi
+  ___fixsfdi
+  ___fixtfdi
+  ___fixxfdi
+  ___fixunsdfdi
+  ___fixunsdfsi
+  ___fixunssfsi
+  ___fixunssfdi
+  ___fixunstfdi
+  ___fixunstfsi
+  ___fixunsxfdi
+  ___fixunsxfsi
+  ___floatdidf
+  ___floatdisf
+  ___floatdixf
+  ___floatditf
+  ___lshrdi3
+  ___moddi3
+  ___muldi3
+  ___mulvdi3
+  ___negdi2
+  ___negvdi2
+  ___subvdi3
+  ___ucmpdi2
+  ___udivdi3
+  ___udivmoddi4
+  ___umoddi3
+
+  # libgcc2 TImode arithmetic (for 64-bit targets).
+  ___ashlti3
+  ___ashrti3
+  ___cmpti2
+  ___divti3
+  ___ffsti2
+  ___fixdfti
+  ___fixsfti
+  ___fixtfti
+  ___fixxfti
+  ___lshrti3
+  ___modti3
+  ___multi3
+  ___negti2
+  ___ucmpti2
+  ___udivmodti4
+  ___udivti3
+  ___umodti3
+  ___fixunsdfti
+  ___fixunssfti
+  ___fixunstfti
+  ___fixunsxfti
+  ___floattidf
+  ___floattisf
+  ___floattixf
+  ___floattitf
+
+  # Used to deal with trampoline initialization on some platforms
+  ___clear_cache
+
+  # EH symbols
+  __Unwind_DeleteException
+  __Unwind_Find_FDE
+  __Unwind_ForcedUnwind
+  __Unwind_GetGR
+  __Unwind_GetIP
+  __Unwind_GetLanguageSpecificData
+  __Unwind_GetRegionStart
+  __Unwind_GetTextRelBase
+  __Unwind_GetDataRelBase
+  __Unwind_RaiseException
+  __Unwind_Resume
+  __Unwind_SetGR
+  __Unwind_SetIP
+  ___deregister_frame
+  ___deregister_frame_info
+  ___deregister_frame_info_bases
+  ___register_frame
+  ___register_frame_info
+  ___register_frame_info_bases
+  ___register_frame_info_table
+  ___register_frame_info_table_bases
+  ___register_frame_table
+
+  # SjLj EH symbols
+  __Unwind_SjLj_Register
+  __Unwind_SjLj_Unregister
+  __Unwind_SjLj_RaiseException
+  __Unwind_SjLj_ForcedUnwind
+  __Unwind_SjLj_Resume
+}
+
+%inherit GCC_3.3 GCC_3.0
+GCC_3.3 {
+  __Unwind_FindEnclosingFunction
+  __Unwind_GetCFA
+  __Unwind_Backtrace
+  __Unwind_Resume_or_Rethrow
+  __Unwind_SjLj_Resume_or_Rethrow
+}
+
+%inherit GCC_3.3.1 GCC_3.3
+GCC_3.3.1 {
+  ___gcc_personality_sj0
+  ___gcc_personality_v0
+}
+
+%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
+  ___unordsf2
+}
+
+%inherit GCC_3.4 GCC_3.3.4
+GCC_3.4 {
+  # bit scanning and counting built-ins
+  ___clzsi2
+  ___clzdi2
+  ___clzti2
+  ___ctzsi2
+  ___ctzdi2
+  ___ctzti2
+  ___popcountsi2
+  ___popcountdi2
+  ___popcountti2
+  ___paritysi2
+  ___paritydi2
+  ___parityti2
+}
+
+%inherit GCC_3.4.2 GCC_3.4
+GCC_3.4.2 {
+  # Used to deal with trampoline initialization on some platforms
+  ___enable_execute_stack
+  ___trampoline_setup
+}
+
+%inherit GCC_3.4.4 GCC_3.4.2
+GCC_3.4.4 {
+  # libgcc2 TImode arithmetic (for 64-bit targets).
+  ___absvti2
+  ___addvti3
+  ___mulvti3
+  ___negvti2
+  ___subvti3
+}
+
+%inherit GCC_4.0.0 GCC_3.4.4
+GCC_4.0.0 {
+  # libgcc2 __builtin_powi helpers.
+  ___powisf2
+  ___powidf2
+  ___powixf2
+  ___powitf2
+
+  # c99 compliant complex arithmetic
+  ___divsc3
+  ___divdc3
+  ___divxc3
+  ___divtc3
+  ___mulsc3
+  ___muldc3
+  ___mulxc3
+  ___multc3
+}
+
+%inherit GCC_4.1.0 GCC_4.0.0
+GCC_4.1.0 {
+  ___smulsi3_highpart
+  ___umulsi3_highpart
+}
+
+%inherit GCC_4.2.0 GCC_4.1.0
+GCC_4.2.0 {
+  # unsigned-to-floating conversions
+  ___floatunsisf
+  ___floatunsidf
+  ___floatunsixf
+  ___floatunsitf
+  ___floatundidf
+  ___floatundisf
+  ___floatundixf
+  ___floatunditf
+  ___floatuntidf
+  ___floatuntisf
+  ___floatuntixf
+  ___floatuntitf
+  __Unwind_GetIPInfo
+}
+
+%inherit GCC_4.3.0 GCC_4.2.0
+GCC_4.3.0 {
+  # byte swapping routines
+  ___bswapsi2
+  ___bswapdi2
+  ___emutls_get_address
+  ___emutls_register_common
+  ___ffssi2
+  ___extendxftf2
+  ___trunctfxf2
+
+  # fixed-point routines
+  ___addqq3
+  ___addhq3
+  ___addsq3
+  ___adddq3
+  ___addtq3
+  ___adduqq3
+  ___adduhq3
+  ___addusq3
+  ___addudq3
+  ___addutq3
+  ___addha3
+  ___addsa3
+  ___addda3
+  ___addta3
+  ___adduha3
+  ___addusa3
+  ___adduda3
+  ___adduta3
+  ___ssaddqq3
+  ___ssaddhq3
+  ___ssaddsq3
+  ___ssadddq3
+  ___ssaddtq3
+  ___ssaddha3
+  ___ssaddsa3
+  ___ssaddda3
+  ___ssaddta3
+  ___usadduqq3
+  ___usadduhq3
+  ___usaddusq3
+  ___usaddudq3
+  ___usaddutq3
+  ___usadduha3
+  ___usaddusa3
+  ___usadduda3
+  ___usadduta3
+  ___subqq3
+  ___subhq3
+  ___subsq3
+  ___subdq3
+  ___subtq3
+  ___subuqq3
+  ___subuhq3
+  ___subusq3
+  ___subudq3
+  ___subutq3
+  ___subha3
+  ___subsa3
+  ___subda3
+  ___subta3
+  ___subuha3
+  ___subusa3
+  ___subuda3
+  ___subuta3
+  ___sssubqq3
+  ___sssubhq3
+  ___sssubsq3
+  ___sssubdq3
+  ___sssubtq3
+  ___sssubha3
+  ___sssubsa3
+  ___sssubda3
+  ___sssubta3
+  ___ussubuqq3
+  ___ussubuhq3
+  ___ussubusq3
+  ___ussubudq3
+  ___ussubutq3
+  ___ussubuha3
+  ___ussubusa3
+  ___ussubuda3
+  ___ussubuta3
+  ___mulqq3
+  ___mulhq3
+  ___mulsq3
+  ___muldq3
+  ___multq3
+  ___muluqq3
+  ___muluhq3
+  ___mulusq3
+  ___muludq3
+  ___mulutq3
+  ___mulha3
+  ___mulsa3
+  ___mulda3
+  ___multa3
+  ___muluha3
+  ___mulusa3
+  ___muluda3
+  ___muluta3
+  ___ssmulqq3
+  ___ssmulhq3
+  ___ssmulsq3
+  ___ssmuldq3
+  ___ssmultq3
+  ___ssmulha3
+  ___ssmulsa3
+  ___ssmulda3
+  ___ssmulta3
+  ___usmuluqq3
+  ___usmuluhq3
+  ___usmulusq3
+  ___usmuludq3
+  ___usmulutq3
+  ___usmuluha3
+  ___usmulusa3
+  ___usmuluda3
+  ___usmuluta3
+  ___divqq3
+  ___divhq3
+  ___divsq3
+  ___divdq3
+  ___divtq3
+  ___divha3
+  ___divsa3
+  ___divda3
+  ___divta3
+  ___udivuqq3
+  ___udivuhq3
+  ___udivusq3
+  ___udivudq3
+  ___udivutq3
+  ___udivuha3
+  ___udivusa3
+  ___udivuda3
+  ___udivuta3
+  ___ssdivqq3
+  ___ssdivhq3
+  ___ssdivsq3
+  ___ssdivdq3
+  ___ssdivtq3
+  ___ssdivha3
+  ___ssdivsa3
+  ___ssdivda3
+  ___ssdivta3
+  ___usdivuqq3
+  ___usdivuhq3
+  ___usdivusq3
+  ___usdivudq3
+  ___usdivutq3
+  ___usdivuha3
+  ___usdivusa3
+  ___usdivuda3
+  ___usdivuta3
+  ___negqq2
+  ___neghq2
+  ___negsq2
+  ___negdq2
+  ___negtq2
+  ___neguqq2
+  ___neguhq2
+  ___negusq2
+  ___negudq2
+  ___negutq2
+  ___negha2
+  ___negsa2
+  ___negda2
+  ___negta2
+  ___neguha2
+  ___negusa2
+  ___neguda2
+  ___neguta2
+  ___ssnegqq2
+  ___ssneghq2
+  ___ssnegsq2
+  ___ssnegdq2
+  ___ssnegtq2
+  ___ssnegha2
+  ___ssnegsa2
+  ___ssnegda2
+  ___ssnegta2
+  ___usneguqq2
+  ___usneguhq2
+  ___usnegusq2
+  ___usnegudq2
+  ___usnegutq2
+  ___usneguha2
+  ___usnegusa2
+  ___usneguda2
+  ___usneguta2
+  ___ashlqq3
+  ___ashlhq3
+  ___ashlsq3
+  ___ashldq3
+  ___ashltq3
+  ___ashluqq3
+  ___ashluhq3
+  ___ashlusq3
+  ___ashludq3
+  ___ashlutq3
+  ___ashlha3
+  ___ashlsa3
+  ___ashlda3
+  ___ashlta3
+  ___ashluha3
+  ___ashlusa3
+  ___ashluda3
+  ___ashluta3
+  ___ashrqq3
+  ___ashrhq3
+  ___ashrsq3
+  ___ashrdq3
+  ___ashrtq3
+  ___ashrha3
+  ___ashrsa3
+  ___ashrda3
+  ___ashrta3
+  ___lshruqq3
+  ___lshruhq3
+  ___lshrusq3
+  ___lshrudq3
+  ___lshrutq3
+  ___lshruha3
+  ___lshrusa3
+  ___lshruda3
+  ___lshruta3
+  ___ssashlqq3
+  ___ssashlhq3
+  ___ssashlsq3
+  ___ssashldq3
+  ___ssashltq3
+  ___ssashlha3
+  ___ssashlsa3
+  ___ssashlda3
+  ___ssashlta3
+  ___usashluqq3
+  ___usashluhq3
+  ___usashlusq3
+  ___usashludq3
+  ___usashlutq3
+  ___usashluha3
+  ___usashlusa3
+  ___usashluda3
+  ___usashluta3
+  ___cmpqq2
+  ___cmphq2
+  ___cmpsq2
+  ___cmpdq2
+  ___cmptq2
+  ___cmpuqq2
+  ___cmpuhq2
+  ___cmpusq2
+  ___cmpudq2
+  ___cmputq2
+  ___cmpha2
+  ___cmpsa2
+  ___cmpda2
+  ___cmpta2
+  ___cmpuha2
+  ___cmpusa2
+  ___cmpuda2
+  ___cmputa2
+  ___fractqqhq2
+  ___fractqqsq2
+  ___fractqqdq2
+  ___fractqqtq2
+  ___fractqqha
+  ___fractqqsa
+  ___fractqqda
+  ___fractqqta
+  ___fractqquqq
+  ___fractqquhq
+  ___fractqqusq
+  ___fractqqudq
+  ___fractqqutq
+  ___fractqquha
+  ___fractqqusa
+  ___fractqquda
+  ___fractqquta
+  ___fractqqqi
+  ___fractqqhi
+  ___fractqqsi
+  ___fractqqdi
+  ___fractqqti
+  ___fractqqsf
+  ___fractqqdf
+  ___fracthqqq2
+  ___fracthqsq2
+  ___fracthqdq2
+  ___fracthqtq2
+  ___fracthqha
+  ___fracthqsa
+  ___fracthqda
+  ___fracthqta
+  ___fracthquqq
+  ___fracthquhq
+  ___fracthqusq
+  ___fracthqudq
+  ___fracthqutq
+  ___fracthquha
+  ___fracthqusa
+  ___fracthquda
+  ___fracthquta
+  ___fracthqqi
+  ___fracthqhi
+  ___fracthqsi
+  ___fracthqdi
+  ___fracthqti
+  ___fracthqsf
+  ___fracthqdf
+  ___fractsqqq2
+  ___fractsqhq2
+  ___fractsqdq2
+  ___fractsqtq2
+  ___fractsqha
+  ___fractsqsa
+  ___fractsqda
+  ___fractsqta
+  ___fractsquqq
+  ___fractsquhq
+  ___fractsqusq
+  ___fractsqudq
+  ___fractsqutq
+  ___fractsquha
+  ___fractsqusa
+  ___fractsquda
+  ___fractsquta
+  ___fractsqqi
+  ___fractsqhi
+  ___fractsqsi
+  ___fractsqdi
+  ___fractsqti
+  ___fractsqsf
+  ___fractsqdf
+  ___fractdqqq2
+  ___fractdqhq2
+  ___fractdqsq2
+  ___fractdqtq2
+  ___fractdqha
+  ___fractdqsa
+  ___fractdqda
+  ___fractdqta
+  ___fractdquqq
+  ___fractdquhq
+  ___fractdqusq
+  ___fractdqudq
+  ___fractdqutq
+  ___fractdquha
+  ___fractdqusa
+  ___fractdquda
+  ___fractdquta
+  ___fractdqqi
+  ___fractdqhi
+  ___fractdqsi
+  ___fractdqdi
+  ___fractdqti
+  ___fractdqsf
+  ___fractdqdf
+  ___fracttqqq2
+  ___fracttqhq2
+  ___fracttqsq2
+  ___fracttqdq2
+  ___fracttqha
+  ___fracttqsa
+  ___fracttqda
+  ___fracttqta
+  ___fracttquqq
+  ___fracttquhq
+  ___fracttqusq
+  ___fracttqudq
+  ___fracttqutq
+  ___fracttquha
+  ___fracttqusa
+  ___fracttquda
+  ___fracttquta
+  ___fracttqqi
+  ___fracttqhi
+  ___fracttqsi
+  ___fracttqdi
+  ___fracttqti
+  ___fracttqsf
+  ___fracttqdf
+  ___fracthaqq
+  ___fracthahq
+  ___fracthasq
+  ___fracthadq
+  ___fracthatq
+  ___fracthasa2
+  ___fracthada2
+  ___fracthata2
+  ___fracthauqq
+  ___fracthauhq
+  ___fracthausq
+  ___fracthaudq
+  ___fracthautq
+  ___fracthauha
+  ___fracthausa
+  ___fracthauda
+  ___fracthauta
+  ___fracthaqi
+  ___fracthahi
+  ___fracthasi
+  ___fracthadi
+  ___fracthati
+  ___fracthasf
+  ___fracthadf
+  ___fractsaqq
+  ___fractsahq
+  ___fractsasq
+  ___fractsadq
+  ___fractsatq
+  ___fractsaha2
+  ___fractsada2
+  ___fractsata2
+  ___fractsauqq
+  ___fractsauhq
+  ___fractsausq
+  ___fractsaudq
+  ___fractsautq
+  ___fractsauha
+  ___fractsausa
+  ___fractsauda
+  ___fractsauta
+  ___fractsaqi
+  ___fractsahi
+  ___fractsasi
+  ___fractsadi
+  ___fractsati
+  ___fractsasf
+  ___fractsadf
+  ___fractdaqq
+  ___fractdahq
+  ___fractdasq
+  ___fractdadq
+  ___fractdatq
+  ___fractdaha2
+  ___fractdasa2
+  ___fractdata2
+  ___fractdauqq
+  ___fractdauhq
+  ___fractdausq
+  ___fractdaudq
+  ___fractdautq
+  ___fractdauha
+  ___fractdausa
+  ___fractdauda
+  ___fractdauta
+  ___fractdaqi
+  ___fractdahi
+  ___fractdasi
+  ___fractdadi
+  ___fractdati
+  ___fractdasf
+  ___fractdadf
+  ___fracttaqq
+  ___fracttahq
+  ___fracttasq
+  ___fracttadq
+  ___fracttatq
+  ___fracttaha2
+  ___fracttasa2
+  ___fracttada2
+  ___fracttauqq
+  ___fracttauhq
+  ___fracttausq
+  ___fracttaudq
+  ___fracttautq
+  ___fracttauha
+  ___fracttausa
+  ___fracttauda
+  ___fracttauta
+  ___fracttaqi
+  ___fracttahi
+  ___fracttasi
+  ___fracttadi
+  ___fracttati
+  ___fracttasf
+  ___fracttadf
+  ___fractuqqqq
+  ___fractuqqhq
+  ___fractuqqsq
+  ___fractuqqdq
+  ___fractuqqtq
+  ___fractuqqha
+  ___fractuqqsa
+  ___fractuqqda
+  ___fractuqqta
+  ___fractuqquhq2
+  ___fractuqqusq2
+  ___fractuqqudq2
+  ___fractuqqutq2
+  ___fractuqquha
+  ___fractuqqusa
+  ___fractuqquda
+  ___fractuqquta
+  ___fractuqqqi
+  ___fractuqqhi
+  ___fractuqqsi
+  ___fractuqqdi
+  ___fractuqqti
+  ___fractuqqsf
+  ___fractuqqdf
+  ___fractuhqqq
+  ___fractuhqhq
+  ___fractuhqsq
+  ___fractuhqdq
+  ___fractuhqtq
+  ___fractuhqha
+  ___fractuhqsa
+  ___fractuhqda
+  ___fractuhqta
+  ___fractuhquqq2
+  ___fractuhqusq2
+  ___fractuhqudq2
+  ___fractuhqutq2
+  ___fractuhquha
+  ___fractuhqusa
+  ___fractuhquda
+  ___fractuhquta
+  ___fractuhqqi
+  ___fractuhqhi
+  ___fractuhqsi
+  ___fractuhqdi
+  ___fractuhqti
+  ___fractuhqsf
+  ___fractuhqdf
+  ___fractusqqq
+  ___fractusqhq
+  ___fractusqsq
+  ___fractusqdq
+  ___fractusqtq
+  ___fractusqha
+  ___fractusqsa
+  ___fractusqda
+  ___fractusqta
+  ___fractusquqq2
+  ___fractusquhq2
+  ___fractusqudq2
+  ___fractusqutq2
+  ___fractusquha
+  ___fractusqusa
+  ___fractusquda
+  ___fractusquta
+  ___fractusqqi
+  ___fractusqhi
+  ___fractusqsi
+  ___fractusqdi
+  ___fractusqti
+  ___fractusqsf
+  ___fractusqdf
+  ___fractudqqq
+  ___fractudqhq
+  ___fractudqsq
+  ___fractudqdq
+  ___fractudqtq
+  ___fractudqha
+  ___fractudqsa
+  ___fractudqda
+  ___fractudqta
+  ___fractudquqq2
+  ___fractudquhq2
+  ___fractudqusq2
+  ___fractudqutq2
+  ___fractudquha
+  ___fractudqusa
+  ___fractudquda
+  ___fractudquta
+  ___fractudqqi
+  ___fractudqhi
+  ___fractudqsi
+  ___fractudqdi
+  ___fractudqti
+  ___fractudqsf
+  ___fractudqdf
+  ___fractutqqq
+  ___fractutqhq
+  ___fractutqsq
+  ___fractutqdq
+  ___fractutqtq
+  ___fractutqha
+  ___fractutqsa
+  ___fractutqda
+  ___fractutqta
+  ___fractutquqq2
+  ___fractutquhq2
+  ___fractutqusq2
+  ___fractutqudq2
+  ___fractutquha
+  ___fractutqusa
+  ___fractutquda
+  ___fractutquta
+  ___fractutqqi
+  ___fractutqhi
+  ___fractutqsi
+  ___fractutqdi
+  ___fractutqti
+  ___fractutqsf
+  ___fractutqdf
+  ___fractuhaqq
+  ___fractuhahq
+  ___fractuhasq
+  ___fractuhadq
+  ___fractuhatq
+  ___fractuhaha
+  ___fractuhasa
+  ___fractuhada
+  ___fractuhata
+  ___fractuhauqq
+  ___fractuhauhq
+  ___fractuhausq
+  ___fractuhaudq
+  ___fractuhautq
+  ___fractuhausa2
+  ___fractuhauda2
+  ___fractuhauta2
+  ___fractuhaqi
+  ___fractuhahi
+  ___fractuhasi
+  ___fractuhadi
+  ___fractuhati
+  ___fractuhasf
+  ___fractuhadf
+  ___fractusaqq
+  ___fractusahq
+  ___fractusasq
+  ___fractusadq
+  ___fractusatq
+  ___fractusaha
+  ___fractusasa
+  ___fractusada
+  ___fractusata
+  ___fractusauqq
+  ___fractusauhq
+  ___fractusausq
+  ___fractusaudq
+  ___fractusautq
+  ___fractusauha2
+  ___fractusauda2
+  ___fractusauta2
+  ___fractusaqi
+  ___fractusahi
+  ___fractusasi
+  ___fractusadi
+  ___fractusati
+  ___fractusasf
+  ___fractusadf
+  ___fractudaqq
+  ___fractudahq
+  ___fractudasq
+  ___fractudadq
+  ___fractudatq
+  ___fractudaha
+  ___fractudasa
+  ___fractudada
+  ___fractudata
+  ___fractudauqq
+  ___fractudauhq
+  ___fractudausq
+  ___fractudaudq
+  ___fractudautq
+  ___fractudauha2
+  ___fractudausa2
+  ___fractudauta2
+  ___fractudaqi
+  ___fractudahi
+  ___fractudasi
+  ___fractudadi
+  ___fractudati
+  ___fractudasf
+  ___fractudadf
+  ___fractutaqq
+  ___fractutahq
+  ___fractutasq
+  ___fractutadq
+  ___fractutatq
+  ___fractutaha
+  ___fractutasa
+  ___fractutada
+  ___fractutata
+  ___fractutauqq
+  ___fractutauhq
+  ___fractutausq
+  ___fractutaudq
+  ___fractutautq
+  ___fractutauha2
+  ___fractutausa2
+  ___fractutauda2
+  ___fractutaqi
+  ___fractutahi
+  ___fractutasi
+  ___fractutadi
+  ___fractutati
+  ___fractutasf
+  ___fractutadf
+  ___fractqiqq
+  ___fractqihq
+  ___fractqisq
+  ___fractqidq
+  ___fractqitq
+  ___fractqiha
+  ___fractqisa
+  ___fractqida
+  ___fractqita
+  ___fractqiuqq
+  ___fractqiuhq
+  ___fractqiusq
+  ___fractqiudq
+  ___fractqiutq
+  ___fractqiuha
+  ___fractqiusa
+  ___fractqiuda
+  ___fractqiuta
+  ___fracthiqq
+  ___fracthihq
+  ___fracthisq
+  ___fracthidq
+  ___fracthitq
+  ___fracthiha
+  ___fracthisa
+  ___fracthida
+  ___fracthita
+  ___fracthiuqq
+  ___fracthiuhq
+  ___fracthiusq
+  ___fracthiudq
+  ___fracthiutq
+  ___fracthiuha
+  ___fracthiusa
+  ___fracthiuda
+  ___fracthiuta
+  ___fractsiqq
+  ___fractsihq
+  ___fractsisq
+  ___fractsidq
+  ___fractsitq
+  ___fractsiha
+  ___fractsisa
+  ___fractsida
+  ___fractsita
+  ___fractsiuqq
+  ___fractsiuhq
+  ___fractsiusq
+  ___fractsiudq
+  ___fractsiutq
+  ___fractsiuha
+  ___fractsiusa
+  ___fractsiuda
+  ___fractsiuta
+  ___fractdiqq
+  ___fractdihq
+  ___fractdisq
+  ___fractdidq
+  ___fractditq
+  ___fractdiha
+  ___fractdisa
+  ___fractdida
+  ___fractdita
+  ___fractdiuqq
+  ___fractdiuhq
+  ___fractdiusq
+  ___fractdiudq
+  ___fractdiutq
+  ___fractdiuha
+  ___fractdiusa
+  ___fractdiuda
+  ___fractdiuta
+  ___fracttiqq
+  ___fracttihq
+  ___fracttisq
+  ___fracttidq
+  ___fracttitq
+  ___fracttiha
+  ___fracttisa
+  ___fracttida
+  ___fracttita
+  ___fracttiuqq
+  ___fracttiuhq
+  ___fracttiusq
+  ___fracttiudq
+  ___fracttiutq
+  ___fracttiuha
+  ___fracttiusa
+  ___fracttiuda
+  ___fracttiuta
+  ___fractsfqq
+  ___fractsfhq
+  ___fractsfsq
+  ___fractsfdq
+  ___fractsftq
+  ___fractsfha
+  ___fractsfsa
+  ___fractsfda
+  ___fractsfta
+  ___fractsfuqq
+  ___fractsfuhq
+  ___fractsfusq
+  ___fractsfudq
+  ___fractsfutq
+  ___fractsfuha
+  ___fractsfusa
+  ___fractsfuda
+  ___fractsfuta
+  ___fractdfqq
+  ___fractdfhq
+  ___fractdfsq
+  ___fractdfdq
+  ___fractdftq
+  ___fractdfha
+  ___fractdfsa
+  ___fractdfda
+  ___fractdfta
+  ___fractdfuqq
+  ___fractdfuhq
+  ___fractdfusq
+  ___fractdfudq
+  ___fractdfutq
+  ___fractdfuha
+  ___fractdfusa
+  ___fractdfuda
+  ___fractdfuta
+  ___satfractqqhq2
+  ___satfractqqsq2
+  ___satfractqqdq2
+  ___satfractqqtq2
+  ___satfractqqha
+  ___satfractqqsa
+  ___satfractqqda
+  ___satfractqqta
+  ___satfractqquqq
+  ___satfractqquhq
+  ___satfractqqusq
+  ___satfractqqudq
+  ___satfractqqutq
+  ___satfractqquha
+  ___satfractqqusa
+  ___satfractqquda
+  ___satfractqquta
+  ___satfracthqqq2
+  ___satfracthqsq2
+  ___satfracthqdq2
+  ___satfracthqtq2
+  ___satfracthqha
+  ___satfracthqsa
+  ___satfracthqda
+  ___satfracthqta
+  ___satfracthquqq
+  ___satfracthquhq
+  ___satfracthqusq
+  ___satfracthqudq
+  ___satfracthqutq
+  ___satfracthquha
+  ___satfracthqusa
+  ___satfracthquda
+  ___satfracthquta
+  ___satfractsqqq2
+  ___satfractsqhq2
+  ___satfractsqdq2
+  ___satfractsqtq2
+  ___satfractsqha
+  ___satfractsqsa
+  ___satfractsqda
+  ___satfractsqta
+  ___satfractsquqq
+  ___satfractsquhq
+  ___satfractsqusq
+  ___satfractsqudq
+  ___satfractsqutq
+  ___satfractsquha
+  ___satfractsqusa
+  ___satfractsquda
+  ___satfractsquta
+  ___satfractdqqq2
+  ___satfractdqhq2
+  ___satfractdqsq2
+  ___satfractdqtq2
+  ___satfractdqha
+  ___satfractdqsa
+  ___satfractdqda
+  ___satfractdqta
+  ___satfractdquqq
+  ___satfractdquhq
+  ___satfractdqusq
+  ___satfractdqudq
+  ___satfractdqutq
+  ___satfractdquha
+  ___satfractdqusa
+  ___satfractdquda
+  ___satfractdquta
+  ___satfracttqqq2
+  ___satfracttqhq2
+  ___satfracttqsq2
+  ___satfracttqdq2
+  ___satfracttqha
+  ___satfracttqsa
+  ___satfracttqda
+  ___satfracttqta
+  ___satfracttquqq
+  ___satfracttquhq
+  ___satfracttqusq
+  ___satfracttqudq
+  ___satfracttqutq
+  ___satfracttquha
+  ___satfracttqusa
+  ___satfracttquda
+  ___satfracttquta
+  ___satfracthaqq
+  ___satfracthahq
+  ___satfracthasq
+  ___satfracthadq
+  ___satfracthatq
+  ___satfracthasa2
+  ___satfracthada2
+  ___satfracthata2
+  ___satfracthauqq
+  ___satfracthauhq
+  ___satfracthausq
+  ___satfracthaudq
+  ___satfracthautq
+  ___satfracthauha
+  ___satfracthausa
+  ___satfracthauda
+  ___satfracthauta
+  ___satfractsaqq
+  ___satfractsahq
+  ___satfractsasq
+  ___satfractsadq
+  ___satfractsatq
+  ___satfractsaha2
+  ___satfractsada2
+  ___satfractsata2
+  ___satfractsauqq
+  ___satfractsauhq
+  ___satfractsausq
+  ___satfractsaudq
+  ___satfractsautq
+  ___satfractsauha
+  ___satfractsausa
+  ___satfractsauda
+  ___satfractsauta
+  ___satfractdaqq
+  ___satfractdahq
+  ___satfractdasq
+  ___satfractdadq
+  ___satfractdatq
+  ___satfractdaha2
+  ___satfractdasa2
+  ___satfractdata2
+  ___satfractdauqq
+  ___satfractdauhq
+  ___satfractdausq
+  ___satfractdaudq
+  ___satfractdautq
+  ___satfractdauha
+  ___satfractdausa
+  ___satfractdauda
+  ___satfractdauta
+  ___satfracttaqq
+  ___satfracttahq
+  ___satfracttasq
+  ___satfracttadq
+  ___satfracttatq
+  ___satfracttaha2
+  ___satfracttasa2
+  ___satfracttada2
+  ___satfracttauqq
+  ___satfracttauhq
+  ___satfracttausq
+  ___satfracttaudq
+  ___satfracttautq
+  ___satfracttauha
+  ___satfracttausa
+  ___satfracttauda
+  ___satfracttauta
+  ___satfractuqqqq
+  ___satfractuqqhq
+  ___satfractuqqsq
+  ___satfractuqqdq
+  ___satfractuqqtq
+  ___satfractuqqha
+  ___satfractuqqsa
+  ___satfractuqqda
+  ___satfractuqqta
+  ___satfractuqquhq2
+  ___satfractuqqusq2
+  ___satfractuqqudq2
+  ___satfractuqqutq2
+  ___satfractuqquha
+  ___satfractuqqusa
+  ___satfractuqquda
+  ___satfractuqquta
+  ___satfractuhqqq
+  ___satfractuhqhq
+  ___satfractuhqsq
+  ___satfractuhqdq
+  ___satfractuhqtq
+  ___satfractuhqha
+  ___satfractuhqsa
+  ___satfractuhqda
+  ___satfractuhqta
+  ___satfractuhquqq2
+  ___satfractuhqusq2
+  ___satfractuhqudq2
+  ___satfractuhqutq2
+  ___satfractuhquha
+  ___satfractuhqusa
+  ___satfractuhquda
+  ___satfractuhquta
+  ___satfractusqqq
+  ___satfractusqhq
+  ___satfractusqsq
+  ___satfractusqdq
+  ___satfractusqtq
+  ___satfractusqha
+  ___satfractusqsa
+  ___satfractusqda
+  ___satfractusqta
+  ___satfractusquqq2
+  ___satfractusquhq2
+  ___satfractusqudq2
+  ___satfractusqutq2
+  ___satfractusquha
+  ___satfractusqusa
+  ___satfractusquda
+  ___satfractusquta
+  ___satfractudqqq
+  ___satfractudqhq
+  ___satfractudqsq
+  ___satfractudqdq
+  ___satfractudqtq
+  ___satfractudqha
+  ___satfractudqsa
+  ___satfractudqda
+  ___satfractudqta
+  ___satfractudquqq2
+  ___satfractudquhq2
+  ___satfractudqusq2
+  ___satfractudqutq2
+  ___satfractudquha
+  ___satfractudqusa
+  ___satfractudquda
+  ___satfractudquta
+  ___satfractutqqq
+  ___satfractutqhq
+  ___satfractutqsq
+  ___satfractutqdq
+  ___satfractutqtq
+  ___satfractutqha
+  ___satfractutqsa
+  ___satfractutqda
+  ___satfractutqta
+  ___satfractutquqq2
+  ___satfractutquhq2
+  ___satfractutqusq2
+  ___satfractutqudq2
+  ___satfractutquha
+  ___satfractutqusa
+  ___satfractutquda
+  ___satfractutquta
+  ___satfractuhaqq
+  ___satfractuhahq
+  ___satfractuhasq
+  ___satfractuhadq
+  ___satfractuhatq
+  ___satfractuhaha
+  ___satfractuhasa
+  ___satfractuhada
+  ___satfractuhata
+  ___satfractuhauqq
+  ___satfractuhauhq
+  ___satfractuhausq
+  ___satfractuhaudq
+  ___satfractuhautq
+  ___satfractuhausa2
+  ___satfractuhauda2
+  ___satfractuhauta2
+  ___satfractusaqq
+  ___satfractusahq
+  ___satfractusasq
+  ___satfractusadq
+  ___satfractusatq
+  ___satfractusaha
+  ___satfractusasa
+  ___satfractusada
+  ___satfractusata
+  ___satfractusauqq
+  ___satfractusauhq
+  ___satfractusausq
+  ___satfractusaudq
+  ___satfractusautq
+  ___satfractusauha2
+  ___satfractusauda2
+  ___satfractusauta2
+  ___satfractudaqq
+  ___satfractudahq
+  ___satfractudasq
+  ___satfractudadq
+  ___satfractudatq
+  ___satfractudaha
+  ___satfractudasa
+  ___satfractudada
+  ___satfractudata
+  ___satfractudauqq
+  ___satfractudauhq
+  ___satfractudausq
+  ___satfractudaudq
+  ___satfractudautq
+  ___satfractudauha2
+  ___satfractudausa2
+  ___satfractudauta2
+  ___satfractutaqq
+  ___satfractutahq
+  ___satfractutasq
+  ___satfractutadq
+  ___satfractutatq
+  ___satfractutaha
+  ___satfractutasa
+  ___satfractutada
+  ___satfractutata
+  ___satfractutauqq
+  ___satfractutauhq
+  ___satfractutausq
+  ___satfractutaudq
+  ___satfractutautq
+  ___satfractutauha2
+  ___satfractutausa2
+  ___satfractutauda2
+  ___satfractqiqq
+  ___satfractqihq
+  ___satfractqisq
+  ___satfractqidq
+  ___satfractqitq
+  ___satfractqiha
+  ___satfractqisa
+  ___satfractqida
+  ___satfractqita
+  ___satfractqiuqq
+  ___satfractqiuhq
+  ___satfractqiusq
+  ___satfractqiudq
+  ___satfractqiutq
+  ___satfractqiuha
+  ___satfractqiusa
+  ___satfractqiuda
+  ___satfractqiuta
+  ___satfracthiqq
+  ___satfracthihq
+  ___satfracthisq
+  ___satfracthidq
+  ___satfracthitq
+  ___satfracthiha
+  ___satfracthisa
+  ___satfracthida
+  ___satfracthita
+  ___satfracthiuqq
+  ___satfracthiuhq
+  ___satfracthiusq
+  ___satfracthiudq
+  ___satfracthiutq
+  ___satfracthiuha
+  ___satfracthiusa
+  ___satfracthiuda
+  ___satfracthiuta
+  ___satfractsiqq
+  ___satfractsihq
+  ___satfractsisq
+  ___satfractsidq
+  ___satfractsitq
+  ___satfractsiha
+  ___satfractsisa
+  ___satfractsida
+  ___satfractsita
+  ___satfractsiuqq
+  ___satfractsiuhq
+  ___satfractsiusq
+  ___satfractsiudq
+  ___satfractsiutq
+  ___satfractsiuha
+  ___satfractsiusa
+  ___satfractsiuda
+  ___satfractsiuta
+  ___satfractdiqq
+  ___satfractdihq
+  ___satfractdisq
+  ___satfractdidq
+  ___satfractditq
+  ___satfractdiha
+  ___satfractdisa
+  ___satfractdida
+  ___satfractdita
+  ___satfractdiuqq
+  ___satfractdiuhq
+  ___satfractdiusq
+  ___satfractdiudq
+  ___satfractdiutq
+  ___satfractdiuha
+  ___satfractdiusa
+  ___satfractdiuda
+  ___satfractdiuta
+  ___satfracttiqq
+  ___satfracttihq
+  ___satfracttisq
+  ___satfracttidq
+  ___satfracttitq
+  ___satfracttiha
+  ___satfracttisa
+  ___satfracttida
+  ___satfracttita
+  ___satfracttiuqq
+  ___satfracttiuhq
+  ___satfracttiusq
+  ___satfracttiudq
+  ___satfracttiutq
+  ___satfracttiuha
+  ___satfracttiusa
+  ___satfracttiuda
+  ___satfracttiuta
+  ___satfractsfqq
+  ___satfractsfhq
+  ___satfractsfsq
+  ___satfractsfdq
+  ___satfractsftq
+  ___satfractsfha
+  ___satfractsfsa
+  ___satfractsfda
+  ___satfractsfta
+  ___satfractsfuqq
+  ___satfractsfuhq
+  ___satfractsfusq
+  ___satfractsfudq
+  ___satfractsfutq
+  ___satfractsfuha
+  ___satfractsfusa
+  ___satfractsfuda
+  ___satfractsfuta
+  ___satfractdfqq
+  ___satfractdfhq
+  ___satfractdfsq
+  ___satfractdfdq
+  ___satfractdftq
+  ___satfractdfha
+  ___satfractdfsa
+  ___satfractdfda
+  ___satfractdfta
+  ___satfractdfuqq
+  ___satfractdfuhq
+  ___satfractdfusq
+  ___satfractdfudq
+  ___satfractdfutq
+  ___satfractdfuha
+  ___satfractdfusa
+  ___satfractdfuda
+  ___satfractdfuta
+  ___fractunsqqqi
+  ___fractunsqqhi
+  ___fractunsqqsi
+  ___fractunsqqdi
+  ___fractunsqqti
+  ___fractunshqqi
+  ___fractunshqhi
+  ___fractunshqsi
+  ___fractunshqdi
+  ___fractunshqti
+  ___fractunssqqi
+  ___fractunssqhi
+  ___fractunssqsi
+  ___fractunssqdi
+  ___fractunssqti
+  ___fractunsdqqi
+  ___fractunsdqhi
+  ___fractunsdqsi
+  ___fractunsdqdi
+  ___fractunsdqti
+  ___fractunstqqi
+  ___fractunstqhi
+  ___fractunstqsi
+  ___fractunstqdi
+  ___fractunstqti
+  ___fractunshaqi
+  ___fractunshahi
+  ___fractunshasi
+  ___fractunshadi
+  ___fractunshati
+  ___fractunssaqi
+  ___fractunssahi
+  ___fractunssasi
+  ___fractunssadi
+  ___fractunssati
+  ___fractunsdaqi
+  ___fractunsdahi
+  ___fractunsdasi
+  ___fractunsdadi
+  ___fractunsdati
+  ___fractunstaqi
+  ___fractunstahi
+  ___fractunstasi
+  ___fractunstadi
+  ___fractunstati
+  ___fractunsuqqqi
+  ___fractunsuqqhi
+  ___fractunsuqqsi
+  ___fractunsuqqdi
+  ___fractunsuqqti
+  ___fractunsuhqqi
+  ___fractunsuhqhi
+  ___fractunsuhqsi
+  ___fractunsuhqdi
+  ___fractunsuhqti
+  ___fractunsusqqi
+  ___fractunsusqhi
+  ___fractunsusqsi
+  ___fractunsusqdi
+  ___fractunsusqti
+  ___fractunsudqqi
+  ___fractunsudqhi
+  ___fractunsudqsi
+  ___fractunsudqdi
+  ___fractunsudqti
+  ___fractunsutqqi
+  ___fractunsutqhi
+  ___fractunsutqsi
+  ___fractunsutqdi
+  ___fractunsutqti
+  ___fractunsuhaqi
+  ___fractunsuhahi
+  ___fractunsuhasi
+  ___fractunsuhadi
+  ___fractunsuhati
+  ___fractunsusaqi
+  ___fractunsusahi
+  ___fractunsusasi
+  ___fractunsusadi
+  ___fractunsusati
+  ___fractunsudaqi
+  ___fractunsudahi
+  ___fractunsudasi
+  ___fractunsudadi
+  ___fractunsudati
+  ___fractunsutaqi
+  ___fractunsutahi
+  ___fractunsutasi
+  ___fractunsutadi
+  ___fractunsutati
+  ___fractunsqiqq
+  ___fractunsqihq
+  ___fractunsqisq
+  ___fractunsqidq
+  ___fractunsqitq
+  ___fractunsqiha
+  ___fractunsqisa
+  ___fractunsqida
+  ___fractunsqita
+  ___fractunsqiuqq
+  ___fractunsqiuhq
+  ___fractunsqiusq
+  ___fractunsqiudq
+  ___fractunsqiutq
+  ___fractunsqiuha
+  ___fractunsqiusa
+  ___fractunsqiuda
+  ___fractunsqiuta
+  ___fractunshiqq
+  ___fractunshihq
+  ___fractunshisq
+  ___fractunshidq
+  ___fractunshitq
+  ___fractunshiha
+  ___fractunshisa
+  ___fractunshida
+  ___fractunshita
+  ___fractunshiuqq
+  ___fractunshiuhq
+  ___fractunshiusq
+  ___fractunshiudq
+  ___fractunshiutq
+  ___fractunshiuha
+  ___fractunshiusa
+  ___fractunshiuda
+  ___fractunshiuta
+  ___fractunssiqq
+  ___fractunssihq
+  ___fractunssisq
+  ___fractunssidq
+  ___fractunssitq
+  ___fractunssiha
+  ___fractunssisa
+  ___fractunssida
+  ___fractunssita
+  ___fractunssiuqq
+  ___fractunssiuhq
+  ___fractunssiusq
+  ___fractunssiudq
+  ___fractunssiutq
+  ___fractunssiuha
+  ___fractunssiusa
+  ___fractunssiuda
+  ___fractunssiuta
+  ___fractunsdiqq
+  ___fractunsdihq
+  ___fractunsdisq
+  ___fractunsdidq
+  ___fractunsditq
+  ___fractunsdiha
+  ___fractunsdisa
+  ___fractunsdida
+  ___fractunsdita
+  ___fractunsdiuqq
+  ___fractunsdiuhq
+  ___fractunsdiusq
+  ___fractunsdiudq
+  ___fractunsdiutq
+  ___fractunsdiuha
+  ___fractunsdiusa
+  ___fractunsdiuda
+  ___fractunsdiuta
+  ___fractunstiqq
+  ___fractunstihq
+  ___fractunstisq
+  ___fractunstidq
+  ___fractunstitq
+  ___fractunstiha
+  ___fractunstisa
+  ___fractunstida
+  ___fractunstita
+  ___fractunstiuqq
+  ___fractunstiuhq
+  ___fractunstiusq
+  ___fractunstiudq
+  ___fractunstiutq
+  ___fractunstiuha
+  ___fractunstiusa
+  ___fractunstiuda
+  ___fractunstiuta
+  ___satfractunsqiqq
+  ___satfractunsqihq
+  ___satfractunsqisq
+  ___satfractunsqidq
+  ___satfractunsqitq
+  ___satfractunsqiha
+  ___satfractunsqisa
+  ___satfractunsqida
+  ___satfractunsqita
+  ___satfractunsqiuqq
+  ___satfractunsqiuhq
+  ___satfractunsqiusq
+  ___satfractunsqiudq
+  ___satfractunsqiutq
+  ___satfractunsqiuha
+  ___satfractunsqiusa
+  ___satfractunsqiuda
+  ___satfractunsqiuta
+  ___satfractunshiqq
+  ___satfractunshihq
+  ___satfractunshisq
+  ___satfractunshidq
+  ___satfractunshitq
+  ___satfractunshiha
+  ___satfractunshisa
+  ___satfractunshida
+  ___satfractunshita
+  ___satfractunshiuqq
+  ___satfractunshiuhq
+  ___satfractunshiusq
+  ___satfractunshiudq
+  ___satfractunshiutq
+  ___satfractunshiuha
+  ___satfractunshiusa
+  ___satfractunshiuda
+  ___satfractunshiuta
+  ___satfractunssiqq
+  ___satfractunssihq
+  ___satfractunssisq
+  ___satfractunssidq
+  ___satfractunssitq
+  ___satfractunssiha
+  ___satfractunssisa
+  ___satfractunssida
+  ___satfractunssita
+  ___satfractunssiuqq
+  ___satfractunssiuhq
+  ___satfractunssiusq
+  ___satfractunssiudq
+  ___satfractunssiutq
+  ___satfractunssiuha
+  ___satfractunssiusa
+  ___satfractunssiuda
+  ___satfractunssiuta
+  ___satfractunsdiqq
+  ___satfractunsdihq
+  ___satfractunsdisq
+  ___satfractunsdidq
+  ___satfractunsditq
+  ___satfractunsdiha
+  ___satfractunsdisa
+  ___satfractunsdida
+  ___satfractunsdita
+  ___satfractunsdiuqq
+  ___satfractunsdiuhq
+  ___satfractunsdiusq
+  ___satfractunsdiudq
+  ___satfractunsdiutq
+  ___satfractunsdiuha
+  ___satfractunsdiusa
+  ___satfractunsdiuda
+  ___satfractunsdiuta
+  ___satfractunstiqq
+  ___satfractunstihq
+  ___satfractunstisq
+  ___satfractunstidq
+  ___satfractunstitq
+  ___satfractunstiha
+  ___satfractunstisa
+  ___satfractunstida
+  ___satfractunstita
+  ___satfractunstiuqq
+  ___satfractunstiuhq
+  ___satfractunstiusq
+  ___satfractunstiudq
+  ___satfractunstiutq
+  ___satfractunstiuha
+  ___satfractunstiusa
+  ___satfractunstiuda
+  ___satfractunstiuta
+}
+
+%inherit GCC_4.4.0 GCC_4.3.0
+GCC_4.4.0 {
+  ___sync_fetch_and_add_1
+  ___sync_fetch_and_sub_1
+  ___sync_fetch_and_or_1
+  ___sync_fetch_and_and_1
+  ___sync_fetch_and_xor_1
+  ___sync_fetch_and_nand_1
+  ___sync_add_and_fetch_1
+  ___sync_sub_and_fetch_1
+  ___sync_or_and_fetch_1
+  ___sync_and_and_fetch_1
+  ___sync_xor_and_fetch_1
+  ___sync_nand_and_fetch_1
+  ___sync_bool_compare_and_swap_1
+  ___sync_val_compare_and_swap_1
+  ___sync_lock_test_and_set_1
+
+  ___sync_fetch_and_add_2
+  ___sync_fetch_and_sub_2
+  ___sync_fetch_and_or_2
+  ___sync_fetch_and_and_2
+  ___sync_fetch_and_xor_2
+  ___sync_fetch_and_nand_2
+  ___sync_add_and_fetch_2
+  ___sync_sub_and_fetch_2
+  ___sync_or_and_fetch_2
+  ___sync_and_and_fetch_2
+  ___sync_xor_and_fetch_2
+  ___sync_nand_and_fetch_2
+  ___sync_bool_compare_and_swap_2
+  ___sync_val_compare_and_swap_2
+  ___sync_lock_test_and_set_2
+
+  ___sync_fetch_and_add_4
+  ___sync_fetch_and_sub_4
+  ___sync_fetch_and_or_4
+  ___sync_fetch_and_and_4
+  ___sync_fetch_and_xor_4
+  ___sync_fetch_and_nand_4
+  ___sync_add_and_fetch_4
+  ___sync_sub_and_fetch_4
+  ___sync_or_and_fetch_4
+  ___sync_and_and_fetch_4
+  ___sync_xor_and_fetch_4
+  ___sync_nand_and_fetch_4
+  ___sync_bool_compare_and_swap_4
+  ___sync_val_compare_and_swap_4
+  ___sync_lock_test_and_set_4
+
+  ___sync_fetch_and_add_8
+  ___sync_fetch_and_sub_8
+  ___sync_fetch_and_or_8
+  ___sync_fetch_and_and_8
+  ___sync_fetch_and_xor_8
+  ___sync_fetch_and_nand_8
+  ___sync_add_and_fetch_8
+  ___sync_sub_and_fetch_8
+  ___sync_or_and_fetch_8
+  ___sync_and_and_fetch_8
+  ___sync_xor_and_fetch_8
+  ___sync_nand_and_fetch_8
+  ___sync_bool_compare_and_swap_8
+  ___sync_val_compare_and_swap_8
+  ___sync_lock_test_and_set_8
+
+  ___sync_fetch_and_add_16
+  ___sync_fetch_and_sub_16
+  ___sync_fetch_and_or_16
+  ___sync_fetch_and_and_16
+  ___sync_fetch_and_xor_16
+  ___sync_fetch_and_nand_16
+  ___sync_add_and_fetch_16
+  ___sync_sub_and_fetch_16
+  ___sync_or_and_fetch_16
+  ___sync_and_and_fetch_16
+  ___sync_xor_and_fetch_16
+  ___sync_nand_and_fetch_16
+  ___sync_bool_compare_and_swap_16
+  ___sync_val_compare_and_swap_16
+  ___sync_lock_test_and_set_16
+
+  ___sync_synchronize
+}
+
+%inherit GCC_4.5.0 GCC_4.4.0
+GCC_4.5.0 {
+  ___unordxf2
+  ___unordtf2
+}
diff --git a/libgcc/config/bfin/t-linux b/libgcc/config/bfin/t-linux
new file mode 100644 (file)
index 0000000..1c42e48
--- /dev/null
@@ -0,0 +1 @@
+SHLIB_MAPFILES = $(srcdir)/config/bfin/libgcc-glibc.ver
diff --git a/libgcc/config/c6x/libgcc-eabi.ver b/libgcc/config/c6x/libgcc-eabi.ver
new file mode 100644 (file)
index 0000000..6bce556
--- /dev/null
@@ -0,0 +1,103 @@
+# 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/>.
+
+GCC_4.7.0 {
+  __c6xabi_strasgi
+  __c6xabi_call_stub
+  __c6xabi_mpyll
+  __c6xabi_negll
+  __c6xabi_llshru
+  __c6xabi_llshl
+  __c6xabi_llshr
+  __c6xabi_fixfu
+  __c6xabi_fixdu
+  __c6xabi_fixflli
+  __c6xabi_fixdlli
+  __c6xabi_fixfull
+  __c6xabi_fixdull
+  __c6xabi_fltllif
+  __c6xabi_fltllid
+  __c6xabi_fltullf
+  __c6xabi_fltulld
+  __c6xabi_divlli
+  __c6xabi_remlli
+  __c6xabi_divull
+  __c6xabi_remull
+  __c6xabi_divremull
+  __c6xabi_gef
+  __c6xabi_gtf
+  __c6xabi_lef
+  __c6xabi_ltf
+  __c6xabi_eqf
+  __c6xabi_ged
+  __c6xabi_gtd
+  __c6xabi_led
+  __c6xabi_ltd
+  __c6xabi_eqd
+  __c6xabi_addf
+  __c6xabi_divf
+  __c6xabi_neqf
+  __c6xabi_cmpf
+  __c6xabi_mpyf
+  __c6xabi_negf
+  __c6xabi_subf
+  __c6xabi_unordf
+  __c6xabi_fixfi
+  __c6xabi_fltif
+  __c6xabi_fltuf
+  __c6xabi_addd
+  __c6xabi_divd
+  __c6xabi_neqd
+  __c6xabi_cmpd
+  __c6xabi_mpyd
+  __c6xabi_negd
+  __c6xabi_subd
+  __c6xabi_unordd
+  __c6xabi_fixdi
+  __c6xabi_fltid
+  __c6xabi_fltud
+  __c6xabi_cvtfd
+  __c6xabi_cvtdf
+  __c6xabi_mulcf
+  __c6xabi_mulcd
+  __c6xabi_divcf
+  __c6xabi_divcd
+
+  __gnu_ltsf2
+  __gnu_ltdf2
+  __gnu_gesf2
+  __gnu_gedf2
+  __gnu_gtsf2
+  __gnu_gtdf2
+  __gnu_eqsf2
+  __gnu_eqdf2
+
+  # Exception-Handling
+  _Unwind_Complete
+  _Unwind_VRS_Get
+  _Unwind_VRS_Set
+  _Unwind_VRS_Pop
+  __c6xabi_unwind_cpp_pr0
+  __c6xabi_unwind_cpp_pr1
+  __c6xabi_unwind_cpp_pr2
+  __c6xabi_unwind_cpp_pr3
+  __c6xabi_unwind_cpp_pr4
+  # The libstdc++ exception-handling personality routine uses this 
+  # GNU-specific entry point.
+  __gnu_unwind_frame
+}
diff --git a/libgcc/config/c6x/t-elf b/libgcc/config/c6x/t-elf
new file mode 100644 (file)
index 0000000..89b6896
--- /dev/null
@@ -0,0 +1 @@
+SHLIB_MAPFILES += $(srcdir)/config/c6x/libgcc-eabi.ver
diff --git a/libgcc/config/cris/libgcc-glibc.ver b/libgcc/config/cris/libgcc-glibc.ver
new file mode 100644 (file)
index 0000000..e35de83
--- /dev/null
@@ -0,0 +1,7 @@
+GCC_4.3 {
+ __Mul
+ __Div
+ __Udiv
+ __Mod
+ __Umod
+}
diff --git a/libgcc/config/cris/t-linux b/libgcc/config/cris/t-linux
new file mode 100644 (file)
index 0000000..8c7f4d4
--- /dev/null
@@ -0,0 +1,2 @@
+# Override t-linux default.
+SHLIB_MAPFILES = libgcc-std.ver $(srcdir)/config/cris/libgcc-glibc.ver
diff --git a/libgcc/config/frv/libgcc-glibc.ver b/libgcc/config/frv/libgcc-glibc.ver
new file mode 100644 (file)
index 0000000..6e27b4f
--- /dev/null
@@ -0,0 +1,73 @@
+# Copyright (C) 2004 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/>.
+
+GCC_3.4 {
+  # frv abi symbol names
+  __ftod
+  __ftoi
+  __ftoui
+  __dtoi
+  __ftoui
+  __dtoui
+  __ftoll
+  __dtoll
+  __ftoull
+  __dtoull
+  __itof
+  __lltof
+  __dtof
+  __itod
+  __lltof
+  __lltod
+  __addd
+  __subd
+  __muld
+  __divd
+  __addf
+  __subf
+  __mulf
+  __divf
+  __sllll
+  __srlll
+  __srall
+  __addll
+  __subll
+  __mulll
+  __umulll
+  __divll
+  __udivll
+  __modll
+  __umodll
+  __cmpll
+  __cmpf
+  __cmpd
+  __andll
+  __orll
+  __xorll
+  __notll
+  __cmov
+  __cmovd
+  __cmovh
+  __cmovw
+  __modi
+  __uitod
+  __uitof
+  __ulltod
+  __ulltof
+  __umodi
+}
diff --git a/libgcc/config/frv/t-linux b/libgcc/config/frv/t-linux
new file mode 100644 (file)
index 0000000..dbab5a4
--- /dev/null
@@ -0,0 +1 @@
+SHLIB_MAPFILES = libgcc-std.ver $(srcdir)/config/frv/libgcc-glibc.ver
diff --git a/libgcc/config/i386/libgcc-darwin.10.4.ver b/libgcc/config/i386/libgcc-darwin.10.4.ver
new file mode 100644 (file)
index 0000000..67f5e23
--- /dev/null
@@ -0,0 +1,98 @@
+# Copyright (C) 2005 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/>.
+__Unwind_Backtrace
+__Unwind_DeleteException
+__Unwind_FindEnclosingFunction
+__Unwind_Find_FDE
+__Unwind_ForcedUnwind
+__Unwind_GetCFA
+__Unwind_GetDataRelBase
+__Unwind_GetGR
+__Unwind_GetIP
+__Unwind_GetLanguageSpecificData
+__Unwind_GetRegionStart
+__Unwind_GetTextRelBase
+__Unwind_RaiseException
+__Unwind_Resume
+__Unwind_Resume_or_Rethrow
+__Unwind_SetGR
+__Unwind_SetIP
+___absvdi2
+___absvsi2
+___addvdi3
+___addvsi3
+___ashldi3
+___ashrdi3
+___clear_cache
+___clzdi2
+___clzsi2
+___cmpdi2
+___ctzdi2
+___ctzsi2
+___deregister_frame
+___deregister_frame_info
+___deregister_frame_info_bases
+___divdc3
+___divdi3
+___divsc3
+___divxc3
+___enable_execute_stack
+___ffsdi2
+___fixdfdi
+___fixsfdi
+___fixunsdfdi
+___fixunsdfsi
+___fixunssfdi
+___fixunssfsi
+___fixunsxfdi
+___fixunsxfsi
+___fixxfdi
+___floatdidf
+___floatdisf
+___floatdixf
+___gcc_personality_v0
+___lshrdi3
+___moddi3
+___muldc3
+___muldi3
+___mulsc3
+___mulvdi3
+___mulvsi3
+___mulxc3
+___negdi2
+___negvdi2
+___negvsi2
+___paritydi2
+___paritysi2
+___popcountdi2
+___popcountsi2
+___powidf2
+___powisf2
+___powixf2
+___register_frame
+___register_frame_info
+___register_frame_info_bases
+___register_frame_info_table
+___register_frame_info_table_bases
+___register_frame_table
+___subvdi3
+___subvsi3
+___ucmpdi2
+___udivdi3
+___udivmoddi4
+___umoddi3
diff --git a/libgcc/config/i386/libgcc-darwin.10.5.ver b/libgcc/config/i386/libgcc-darwin.10.5.ver
new file mode 100644 (file)
index 0000000..eeec9fb
--- /dev/null
@@ -0,0 +1,102 @@
+# Copyright (C) 2005, 2006 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/>.
+__Unwind_Backtrace
+__Unwind_DeleteException
+__Unwind_FindEnclosingFunction
+__Unwind_Find_FDE
+__Unwind_ForcedUnwind
+__Unwind_GetCFA
+__Unwind_GetDataRelBase
+__Unwind_GetGR
+__Unwind_GetIP
+__Unwind_GetIPInfo
+__Unwind_GetLanguageSpecificData
+__Unwind_GetRegionStart
+__Unwind_GetTextRelBase
+__Unwind_RaiseException
+__Unwind_Resume
+__Unwind_Resume_or_Rethrow
+__Unwind_SetGR
+__Unwind_SetIP
+___absvdi2
+___absvsi2
+___addvdi3
+___addvsi3
+___ashldi3
+___ashrdi3
+___clear_cache
+___clzdi2
+___clzsi2
+___cmpdi2
+___ctzdi2
+___ctzsi2
+___deregister_frame
+___deregister_frame_info
+___deregister_frame_info_bases
+___divdc3
+___divdi3
+___divsc3
+___divxc3
+___enable_execute_stack
+___ffsdi2
+___fixdfdi
+___fixsfdi
+___fixunsdfdi
+___fixunsdfsi
+___fixunssfdi
+___fixunssfsi
+___fixunsxfdi
+___fixunsxfsi
+___fixxfdi
+___floatdidf
+___floatdisf
+___floatdixf
+___floatundidf
+___floatundisf
+___floatundixf
+___gcc_personality_v0
+___lshrdi3
+___moddi3
+___muldc3
+___muldi3
+___mulsc3
+___mulvdi3
+___mulvsi3
+___mulxc3
+___negdi2
+___negvdi2
+___negvsi2
+___paritydi2
+___paritysi2
+___popcountdi2
+___popcountsi2
+___powidf2
+___powisf2
+___powixf2
+___register_frame
+___register_frame_info
+___register_frame_info_bases
+___register_frame_info_table
+___register_frame_info_table_bases
+___register_frame_table
+___subvdi3
+___subvsi3
+___ucmpdi2
+___udivdi3
+___udivmoddi4
+___umoddi3
diff --git a/libgcc/config/i386/libgcc-glibc.ver b/libgcc/config/i386/libgcc-glibc.ver
new file mode 100644 (file)
index 0000000..e79d326
--- /dev/null
@@ -0,0 +1,186 @@
+# Copyright (C) 2008, 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/>.
+
+# In order to work around the very problems that force us to now generally
+# create a libgcc.so, glibc reexported a number of routines from libgcc.a.
+# By now choosing the same version tags for these specific routines, we
+# maintain enough binary compatibility to allow future versions of glibc
+# to defer implementation of these routines to libgcc.so via DT_AUXILIARY.
+
+%ifndef __x86_64__
+%exclude {
+  __divdi3
+  __moddi3
+  __udivdi3
+  __umoddi3
+  __register_frame
+  __register_frame_table
+  __deregister_frame
+  __register_frame_info
+  __deregister_frame_info
+  __frame_state_for
+  __register_frame_info_table
+}
+
+%inherit GCC_3.0 GLIBC_2.0
+GLIBC_2.0 {
+  # Sampling of DImode arithmetic used by (at least) i386 and m68k.
+  __divdi3
+  __moddi3
+  __udivdi3
+  __umoddi3
+
+  # Exception handling support functions used by most everyone.
+  __register_frame
+  __register_frame_table
+  __deregister_frame
+  __register_frame_info
+  __deregister_frame_info
+  __frame_state_for
+  __register_frame_info_table
+}
+%endif
+
+# 128 bit long double support was introduced with GCC 4.3.0 to 64bit
+# and with GCC 4.4.0 to 32bit.  These lines make the symbols to get
+# a @@GCC_4.3.0 or @@GCC_4.4.0 attached.
+
+%exclude {
+  __addtf3
+  __divtc3
+  __divtf3
+  __eqtf2
+  __extenddftf2
+  __extendsftf2
+  __extendxftf2
+  __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
+}
+
+%ifdef __x86_64__
+# Those symbols had improper versions when they were added to gcc 4.3.0.
+# We corrected the default version to GCC_4.3.0.  But we keep the old
+# version for backward binary compatibility. 
+GCC_3.0 {
+  __gttf2
+  __lttf2
+  __netf2
+}
+
+GCC_4.0.0 {
+  __divtc3
+  __multc3
+  __powitf2
+}
+
+GCC_4.3.0 {
+  __addtf3
+  __divtc3
+  __divtf3
+  __eqtf2
+  __extenddftf2
+  __extendsftf2
+  __extendxftf2
+  __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
+}
+%else
+GCC_4.4.0 {
+  __addtf3
+  __copysigntf3
+  __divtc3
+  __divtf3
+  __eqtf2
+  __extenddftf2
+  __extendsftf2
+  __fabstf2
+  __fixtfdi
+  __fixtfsi
+  __fixunstfdi
+  __fixunstfsi
+  __floatditf
+  __floatsitf
+  __floatunditf
+  __floatunsitf
+  __getf2
+  __gttf2
+  __letf2
+  __lttf2
+  __multc3
+  __multf3
+  __negtf2
+  __netf2
+  __powitf2
+  __subtf3
+  __trunctfdf2
+  __trunctfsf2
+  __trunctfxf2
+  __unordtf2
+}
+GCC_4.5.0 {
+  __extendxftf2
+}
+%endif
diff --git a/libgcc/config/i386/t-cygwin b/libgcc/config/i386/t-cygwin
new file mode 100644 (file)
index 0000000..22df636
--- /dev/null
@@ -0,0 +1,13 @@
+# Cygwin-specific parts of LIB_SPEC
+SHLIB_LC = -lcygwin -ladvapi32 -lshell32 -luser32 -lkernel32
+
+# We have already included one of the t-{dw2,sjlj}-eh fragments for EH_MODEL
+SHLIB_EH_EXTENSION = $(subst -dw2,,-$(EH_MODEL))
+
+# Cygwin uses different conventions than MinGW; override generic SHLIB_ def'ns here.
+SHLIB_IMPLIB = @shlib_base_name@$(SHLIB_EXT).a
+SHLIB_SONAME = cyggcc_s$(SHLIB_EH_EXTENSION)-$(SHLIB_SOVERSION)$(SHLIB_EXT)
+# This must match the definitions of SHLIB_SONAME/SHLIB_SOVERSION and LIBGCC_SONAME.
+# We'd like to use SHLIB_SONAME here too, and we can, since
+# we don't rely on shlib_base_name substitution for it.
+SHLIB_MKMAP_OPTS = -v pe_dll=$(SHLIB_SONAME)
diff --git a/libgcc/config/i386/t-darwin b/libgcc/config/i386/t-darwin
deleted file mode 100644 (file)
index 4578f74..0000000
+++ /dev/null
@@ -1 +0,0 @@
-SHLIB_VERPFX = $(gcc_srcdir)/config/i386/darwin-libgcc
diff --git a/libgcc/config/i386/t-darwin64 b/libgcc/config/i386/t-darwin64
deleted file mode 100644 (file)
index 4578f74..0000000
+++ /dev/null
@@ -1 +0,0 @@
-SHLIB_VERPFX = $(gcc_srcdir)/config/i386/darwin-libgcc
diff --git a/libgcc/config/i386/t-dlldir b/libgcc/config/i386/t-dlldir
new file mode 100644 (file)
index 0000000..d2cf39b
--- /dev/null
@@ -0,0 +1,2 @@
+# In a native build, target DLLs go in bindir, where they can be executed.
+SHLIB_DLLDIR = $(bindir)
diff --git a/libgcc/config/i386/t-dlldir-x b/libgcc/config/i386/t-dlldir-x
new file mode 100644 (file)
index 0000000..0f8c29b
--- /dev/null
@@ -0,0 +1,3 @@
+# In a cross build, bindir contains host not target binaries, so target DLLs
+# instead go in toolexeclibdir, alongside other target binaries and static libs.
+SHLIB_DLLDIR = $(toolexeclibdir)
diff --git a/libgcc/config/i386/t-dw2-eh b/libgcc/config/i386/t-dw2-eh
new file mode 100644 (file)
index 0000000..ffcc39a
--- /dev/null
@@ -0,0 +1,3 @@
+
+# We are using Dwarf-2 EH.
+EH_MODEL = dw2
diff --git a/libgcc/config/i386/t-linux b/libgcc/config/i386/t-linux
new file mode 100644 (file)
index 0000000..29b4c22
--- /dev/null
@@ -0,0 +1,4 @@
+# On 64bit we do not need any exports for glibc for 64-bit libgcc_s.
+# Need to support TImode for x86.  Override the settings from
+# t-slibgcc-elf-ver and t-linux
+SHLIB_MAPFILES = libgcc-std.ver $(srcdir)/config/i386/libgcc-glibc.ver
diff --git a/libgcc/config/i386/t-mingw-pthread b/libgcc/config/i386/t-mingw-pthread
new file mode 100644 (file)
index 0000000..622ef82
--- /dev/null
@@ -0,0 +1,2 @@
+SHLIB_PTHREAD_CFLAG = -pthread
+SHLIB_PTHREAD_LDFLAG = -Wl,-lpthread
diff --git a/libgcc/config/i386/t-mingw32 b/libgcc/config/i386/t-mingw32
new file mode 100644 (file)
index 0000000..bfdef67
--- /dev/null
@@ -0,0 +1,2 @@
+# MinGW-specific parts of LIB_SPEC
+SHLIB_LC = -lmingwthrd -lmingw32 -lmingwex -lmoldname -lmsvcrt -ladvapi32 -lshell32 -luser32 -lkernel32
diff --git a/libgcc/config/i386/t-sjlj-eh b/libgcc/config/i386/t-sjlj-eh
new file mode 100644 (file)
index 0000000..c9085f4
--- /dev/null
@@ -0,0 +1,3 @@
+
+# We are using SjLj EH.
+EH_MODEL = sjlj
diff --git a/libgcc/config/i386/t-slibgcc-cygming b/libgcc/config/i386/t-slibgcc-cygming
new file mode 100644 (file)
index 0000000..3bee8b9
--- /dev/null
@@ -0,0 +1,58 @@
+# Build a shared libgcc library for PECOFF with a DEF file
+# with the GNU linker.
+#
+# mkmap-flat.awk is used with the pe_dll option to produce a DEF instead
+# of an ELF map file.
+#
+# Warning: If SHLIB_SOVERSION or SHLIB_SONAME are updated, LIBGCC_SONAME
+# in mingw32.h and SHLIB_MKMAP_OPTS below must be updated also.
+
+SHLIB_EXT = .dll
+SHLIB_IMPLIB = @shlib_base_name@.a
+SHLIB_SOVERSION = 1
+SHLIB_SONAME = @shlib_base_name@_$(EH_MODEL)-$(SHLIB_SOVERSION)$(SHLIB_EXT)
+SHLIB_MAP = @shlib_map_file@
+SHLIB_OBJS = @shlib_objs@
+SHLIB_DIR = @multilib_dir@/shlib
+SHLIB_SLIBDIR_QUAL = @shlib_slibdir_qual@
+# SHLIB_DLLDIR is defined by including one of either t-dlldir or t-dlldir-x
+# (native/cross build respectively) in the tmake_file list in
+# libgcc/config.host.
+ifndef SHLIB_DLLDIR
+$(error SHLIB_DLLDIR must be defined)
+endif
+ifndef SHLIB_PTHREAD_CFLAG
+SHLIB_PTHREAD_CFLAG =
+endif
+ifndef SHLIB_PTHREAD_LDFLAG
+SHLIB_PTHREAD_LDFLAG =
+endif
+
+SHLIB_LINK = $(LN_S) -f $(SHLIB_MAP) $(SHLIB_MAP).def && \
+       if [ ! -d $(SHLIB_DIR) ]; then \
+               mkdir $(SHLIB_DIR); \
+       else true; fi && \
+       $(CC) $(LIBGCC2_CFLAGS) $(SHLIB_PTHREAD_CFLAG) \
+       -shared -nodefaultlibs \
+       $(SHLIB_MAP).def \
+       -Wl,--out-implib,$(SHLIB_DIR)/$(SHLIB_IMPLIB).tmp \
+       -o $(SHLIB_DIR)/$(SHLIB_SONAME).tmp @multilib_flags@ \
+       $(SHLIB_OBJS) ${SHLIB_PTHREAD_LDFLAG} $(SHLIB_LC) && \
+       if [ -f $(SHLIB_DIR)/$(SHLIB_SONAME) ]; then \
+         mv -f $(SHLIB_DIR)/$(SHLIB_SONAME) \
+               $(SHLIB_DIR)/$(SHLIB_SONAME).backup; \
+       else true; fi && \
+       mv $(SHLIB_DIR)/$(SHLIB_SONAME).tmp $(SHLIB_DIR)/$(SHLIB_SONAME) && \
+       mv $(SHLIB_DIR)/$(SHLIB_IMPLIB).tmp $(SHLIB_DIR)/$(SHLIB_IMPLIB)
+SHLIB_INSTALL = \
+       $(mkinstalldirs) $(DESTDIR)$(SHLIB_DLLDIR) \
+         $(DESTDIR)$(slibdir)$(SHLIB_SLIBDIR_QUAL); \
+       $(INSTALL) $(SHLIB_DIR)/$(SHLIB_SONAME) \
+         $(DESTDIR)$(SHLIB_DLLDIR)/$(SHLIB_SONAME); \
+       $(INSTALL_DATA) $(SHLIB_DIR)/$(SHLIB_IMPLIB) \
+         $(DESTDIR)$(slibdir)$(SHLIB_SLIBDIR_QUAL)/$(SHLIB_IMPLIB)
+SHLIB_MKMAP = $(srcdir)/mkmap-flat.awk
+# We'd like to use SHLIB_SONAME here too, but shlib_base_name
+# does not get substituted before mkmap-flat.awk is run.
+SHLIB_MKMAP_OPTS = -v pe_dll=libgcc_s_$(EH_MODEL)-$(SHLIB_SOVERSION)$(SHLIB_EXT)
+SHLIB_MAPFILES = libgcc-std.ver
diff --git a/libgcc/config/ia64/libgcc-glibc.ver b/libgcc/config/ia64/libgcc-glibc.ver
new file mode 100644 (file)
index 0000000..34a6961
--- /dev/null
@@ -0,0 +1,97 @@
+# Copyright (C) 2009 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.4.0. These lines
+# make the symbols to get @@GCC_4.4.0 attached.
+
+%exclude {
+  __addtf3
+  __divtc3
+  __divtf3
+  __eqtf2
+  __extenddftf2
+  __extendsftf2
+  __extendxftf2
+  __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
+}
+
+# Those TF functions are the aliases of the XF functions before gcc 3.4.
+GCC_3.0 {
+  __divtf3
+  __fixtfti
+  __fixunstfti
+  __floattitf
+}
+
+GCC_4.4.0 {
+  __addtf3
+  __copysigntf3
+  __divtc3
+  __divtf3
+  __eqtf2
+  __extenddftf2
+  __extendsftf2
+  __fabstf2
+  __fixtfdi
+  __fixtfsi
+  __fixunstfdi
+  __fixunstfsi
+  __floatditf
+  __floatsitf
+  __floatunditf
+  __floatunsitf
+  __getf2
+  __gttf2
+  __letf2
+  __lttf2
+  __multc3
+  __multf3
+  __negtf2
+  __netf2
+  __powitf2
+  __subtf3
+  __trunctfdf2
+  __trunctfsf2
+  __trunctfxf2
+  __unordtf2
+}
diff --git a/libgcc/config/ia64/libgcc-ia64.ver b/libgcc/config/ia64/libgcc-ia64.ver
new file mode 100644 (file)
index 0000000..11c1fe6
--- /dev/null
@@ -0,0 +1,30 @@
+# Copyright (C) 2000, 2001, 2003 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/>.
+
+GCC_3.0 {
+  # IA-64 symbols
+  __ia64_nonlocal_goto
+  __ia64_personality_v1
+  __ia64_restore_stack_nonlocal
+  __ia64_save_stack_nonlocal
+  __ia64_trampoline
+  __ia64_backtrace
+}
+GCC_3.3.2 {
+  _Unwind_GetBSP
+}
diff --git a/libgcc/config/ia64/t-glibc b/libgcc/config/ia64/t-glibc
deleted file mode 100644 (file)
index df4fe9c..0000000
+++ /dev/null
@@ -1,3 +0,0 @@
-# Use system libunwind library on IA-64 GLIBC based system.
-LIB2ADDEH = $(srcdir)/unwind-sjlj.c $(srcdir)/unwind-c.c \
-  $(srcdir)/unwind-compat.c
diff --git a/libgcc/config/ia64/t-glibc-libunwind b/libgcc/config/ia64/t-glibc-libunwind
deleted file mode 100644 (file)
index 8b1736a..0000000
+++ /dev/null
@@ -1,3 +0,0 @@
-# Build libunwind for IA-64 GLIBC based system.
-LIBUNWIND = $(srcdir)/config/ia64/fde-glibc.c \
-  $(srcdir)/config/ia64/unwind-ia64.c
index 3ec5fc5db084c6d8076f05b2758dfd100e5c509f..55bb8c11630b9aaa115f7ad16e17b410eb1d9919 100644 (file)
@@ -13,3 +13,5 @@ crtbeginS.o: $(gcc_srcdir)/config/ia64/crtbegin.asm
 crtendS.o: $(gcc_srcdir)/config/ia64/crtend.asm
        $(CC) $(compile_deps) -I. -I$(gcc_objdir) -c -x assembler-with-cpp \
                -o $@ -DSHARED $(gcc_srcdir)/config/ia64/crtend.asm
+
+SHLIB_MAPFILES += $(srcdir)/config/ia64/libgcc-ia64.ver
diff --git a/libgcc/config/ia64/t-linux b/libgcc/config/ia64/t-linux
new file mode 100644 (file)
index 0000000..e6d72b9
--- /dev/null
@@ -0,0 +1,5 @@
+# Use system libunwind library on IA-64 GLIBC based system.
+LIB2ADDEH = $(srcdir)/unwind-sjlj.c $(srcdir)/unwind-c.c \
+  $(srcdir)/unwind-compat.c
+
+SHLIB_MAPFILES += $(srcdir)/config/ia64/libgcc-glibc.ver
diff --git a/libgcc/config/ia64/t-linux-libunwind b/libgcc/config/ia64/t-linux-libunwind
new file mode 100644 (file)
index 0000000..8b1736a
--- /dev/null
@@ -0,0 +1,3 @@
+# Build libunwind for IA-64 GLIBC based system.
+LIBUNWIND = $(srcdir)/config/ia64/fde-glibc.c \
+  $(srcdir)/config/ia64/unwind-ia64.c
diff --git a/libgcc/config/ia64/t-slibgcc-hpux b/libgcc/config/ia64/t-slibgcc-hpux
new file mode 100644 (file)
index 0000000..27c7a66
--- /dev/null
@@ -0,0 +1,6 @@
+# Build a shared libgcc library with the HP-UX linker on IA64.
+
+SHLIB_SOVERSION = 0
+# Must include -lunwind in the link, so that libgcc_s.so has the necessary
+# DT_NEEDED entry for libunwind.
+SHLIB_LC += -lunwind
diff --git a/libgcc/config/libgcc-glibc.ver b/libgcc/config/libgcc-glibc.ver
new file mode 100644 (file)
index 0000000..7824ad5
--- /dev/null
@@ -0,0 +1,55 @@
+# Copyright (C) 2000, 2008 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/>.
+
+# In order to work around the very problems that force us to now generally
+# create a libgcc.so, glibc reexported a number of routines from libgcc.a.
+# By now choosing the same version tags for these specific routines, we
+# maintain enough binary compatibility to allow future versions of glibc
+# to defer implementation of these routines to libgcc.so via DT_AUXILIARY.
+
+%exclude {
+  __divdi3
+  __moddi3
+  __udivdi3
+  __umoddi3
+  __register_frame
+  __register_frame_table
+  __deregister_frame
+  __register_frame_info
+  __deregister_frame_info
+  __frame_state_for
+  __register_frame_info_table
+}
+
+%inherit GCC_3.0 GLIBC_2.0
+GLIBC_2.0 {
+  # Sampling of DImode arithmetic used by (at least) i386 and m68k.
+  __divdi3
+  __moddi3
+  __udivdi3
+  __umoddi3
+
+  # Exception handling support functions used by most everyone.
+  __register_frame
+  __register_frame_table
+  __deregister_frame
+  __register_frame_info
+  __deregister_frame_info
+  __frame_state_for
+  __register_frame_info_table
+}
diff --git a/libgcc/config/libgcc-libsystem.ver b/libgcc/config/libgcc-libsystem.ver
new file mode 100644 (file)
index 0000000..4763174
--- /dev/null
@@ -0,0 +1 @@
+_darwin10_Unwind_FindEnclosingFunction
diff --git a/libgcc/config/m32r/libgcc-glibc.ver b/libgcc/config/m32r/libgcc-glibc.ver
new file mode 100644 (file)
index 0000000..0e1304b
--- /dev/null
@@ -0,0 +1,48 @@
+# Copyright (C) 2004, 2008 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/>.
+
+# In order to work around the very problems that force us to now generally
+# create a libgcc.so, glibc reexported a number of routines from libgcc.a.
+# By now choosing the same version tags for these specific routines, we
+# maintain enough binary compatibility to allow future versions of glibc
+# to defer implementation of these routines to libgcc.so via DT_AUXILIARY.
+
+# Note that we cannot use the default libgcc-glibc.ver file on sh,
+# because GLIBC_2.0 does not exist on this architecture, as the first 
+# ever glibc release on the platform was GLIBC_2.3.
+
+%exclude {
+  __register_frame
+  __register_frame_table
+  __deregister_frame
+  __register_frame_info
+  __deregister_frame_info
+  __frame_state_for
+  __register_frame_info_table
+}
+
+%inherit GCC_3.0 GLIBC_2.3
+GLIBC_2.3 {
+  __register_frame
+  __register_frame_table
+  __deregister_frame
+  __register_frame_info
+  __deregister_frame_info
+  __frame_state_for
+  __register_frame_info_table
+}
diff --git a/libgcc/config/m32r/t-linux b/libgcc/config/m32r/t-linux
new file mode 100644 (file)
index 0000000..29c83c5
--- /dev/null
@@ -0,0 +1 @@
+SHLIB_MAPFILES = libgcc-std.ver $(srcdir)/config/m32r/libgcc-glibc.ver
diff --git a/libgcc/config/m68k/t-slibgcc-elf-ver b/libgcc/config/m68k/t-slibgcc-elf-ver
new file mode 100644 (file)
index 0000000..6aac37c
--- /dev/null
@@ -0,0 +1,3 @@
+# Bump the version number of the shared libgcc library
+
+SHLIB_SOVERSION = 2
diff --git a/libgcc/config/mips/libgcc-mips16.ver b/libgcc/config/mips/libgcc-mips16.ver
new file mode 100644 (file)
index 0000000..ddb23e7
--- /dev/null
@@ -0,0 +1,86 @@
+# Copyright (C) 2008 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/>.
+
+GCC_4.4.0 {
+  __mips16_addsf3
+  __mips16_subsf3
+  __mips16_mulsf3
+  __mips16_divsf3
+  __mips16_eqsf2
+  __mips16_nesf2
+  __mips16_gtsf2
+  __mips16_gesf2
+  __mips16_lesf2
+  __mips16_ltsf2
+  __mips16_floatsisf
+  __mips16_floatunsisf
+  __mips16_fix_truncsfsi
+  __mips16_adddf3
+  __mips16_subdf3
+  __mips16_muldf3
+  __mips16_divdf3
+  __mips16_extendsfdf2
+  __mips16_truncdfsf2
+  __mips16_eqdf2
+  __mips16_nedf2
+  __mips16_gtdf2
+  __mips16_gedf2
+  __mips16_ledf2
+  __mips16_ltdf2
+  __mips16_floatsidf
+  __mips16_floatunsidf
+  __mips16_fix_truncdfsi
+  __mips16_ret_sf
+  __mips16_ret_sc
+  __mips16_ret_df
+  __mips16_ret_dc
+  __mips16_call_stub_1
+  __mips16_call_stub_5
+  __mips16_call_stub_2
+  __mips16_call_stub_6
+  __mips16_call_stub_9
+  __mips16_call_stub_10
+  __mips16_call_stub_sf_0
+  __mips16_call_stub_sf_1
+  __mips16_call_stub_sf_5
+  __mips16_call_stub_sf_2
+  __mips16_call_stub_sf_6
+  __mips16_call_stub_sf_9
+  __mips16_call_stub_sf_10
+  __mips16_call_stub_sc_0
+  __mips16_call_stub_sc_1
+  __mips16_call_stub_sc_5
+  __mips16_call_stub_sc_2
+  __mips16_call_stub_sc_6
+  __mips16_call_stub_sc_9
+  __mips16_call_stub_sc_10
+  __mips16_call_stub_df_0
+  __mips16_call_stub_df_1
+  __mips16_call_stub_df_5
+  __mips16_call_stub_df_2
+  __mips16_call_stub_df_6
+  __mips16_call_stub_df_9
+  __mips16_call_stub_df_10
+  __mips16_call_stub_dc_0
+  __mips16_call_stub_dc_1
+  __mips16_call_stub_dc_5
+  __mips16_call_stub_dc_2
+  __mips16_call_stub_dc_6
+  __mips16_call_stub_dc_9
+  __mips16_call_stub_dc_10
+}
index 94fa0e94275008422371485796e700368c28fbe0..46c7472f5f69d421c8e58e1b5b912a3d3fd757c7 100644 (file)
@@ -1,2 +1,5 @@
 SYNC = yes
 SYNC_CFLAGS = -mno-mips16
+
+# Version these symbols if building libgcc.so.
+SHLIB_MAPFILES += $(srcdir)/config/mips/libgcc-mips16.ver
index 6e0ac3654376902ac46a89a0a0a148d5fd5b418b..47b2e0eec216079de3f1910c4f14371e28af0d97 100644 (file)
@@ -3,5 +3,5 @@
 SHLIB_LDFLAGS = -Wl,-soname,$(SHLIB_SONAME) \
        -Wl,-exports_file,$(SHLIB_MAP)
 
-SHLIB_MKMAP = $(gcc_srcdir)/mkmap-flat.awk
+SHLIB_MKMAP = $(srcdir)/mkmap-flat.awk
 SHLIB_MAPFILES = libgcc-std.ver
diff --git a/libgcc/config/pa/t-slibgcc-dwarf-ver b/libgcc/config/pa/t-slibgcc-dwarf-ver
new file mode 100644 (file)
index 0000000..fa4688d
--- /dev/null
@@ -0,0 +1,3 @@
+# Set the version number of the shared libgcc library (DWARF2 EH).
+
+SHLIB_SOVERSION = 4
diff --git a/libgcc/config/pa/t-slibgcc-hpux b/libgcc/config/pa/t-slibgcc-hpux
new file mode 100644 (file)
index 0000000..d7ed64a
--- /dev/null
@@ -0,0 +1,25 @@
+# Copyright (C) 2001, 2003, 2004, 2005, 2006, 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 HP-UX linker on PA.
+
+SHLIB_EXT = .sl
+SHLIB_SOLINK = @shlib_base_name@$(SHLIB_EXT)
+SHLIB_SONAME = @shlib_base_name@.$(SHLIB_SOVERSION)
+SHLIB_LC =
diff --git a/libgcc/config/pa/t-slibgcc-sjlj-ver b/libgcc/config/pa/t-slibgcc-sjlj-ver
new file mode 100644 (file)
index 0000000..00140cf
--- /dev/null
@@ -0,0 +1,3 @@
+# Set the version number of the shared libgcc library (SJLJ EH).
+
+SHLIB_SOVERSION = 3
diff --git a/libgcc/config/rs6000/libgcc-darwin.10.4.ver b/libgcc/config/rs6000/libgcc-darwin.10.4.ver
new file mode 100644 (file)
index 0000000..0c6f7c2
--- /dev/null
@@ -0,0 +1,93 @@
+# Copyright (C) 2005 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/>.
+__Unwind_Backtrace
+__Unwind_DeleteException
+__Unwind_FindEnclosingFunction
+__Unwind_Find_FDE
+__Unwind_ForcedUnwind
+__Unwind_GetCFA
+__Unwind_GetDataRelBase
+__Unwind_GetGR
+__Unwind_GetIP
+__Unwind_GetLanguageSpecificData
+__Unwind_GetRegionStart
+__Unwind_GetTextRelBase
+__Unwind_RaiseException
+__Unwind_Resume
+__Unwind_Resume_or_Rethrow
+__Unwind_SetGR
+__Unwind_SetIP
+___absvdi2
+___absvsi2
+___addvdi3
+___addvsi3
+___ashldi3
+___ashrdi3
+___clear_cache
+___clzdi2
+___clzsi2
+___cmpdi2
+___ctzdi2
+___ctzsi2
+___deregister_frame
+___deregister_frame_info
+___deregister_frame_info_bases
+___divdi3
+___enable_execute_stack
+___ffsdi2
+___fixdfdi
+___fixsfdi
+___fixtfdi
+___fixunsdfdi
+___fixunsdfsi
+___fixunssfdi
+___fixunssfsi
+___fixunstfdi
+___floatdidf
+___floatdisf
+___floatditf
+___gcc_personality_v0
+___gcc_qadd
+___gcc_qdiv
+___gcc_qmul
+___gcc_qsub
+___lshrdi3
+___moddi3
+___muldi3
+___mulvdi3
+___mulvsi3
+___negdi2
+___negvdi2
+___negvsi2
+___paritydi2
+___paritysi2
+___popcountdi2
+___popcountsi2
+___register_frame
+___register_frame_info
+___register_frame_info_bases
+___register_frame_info_table
+___register_frame_info_table_bases
+___register_frame_table
+___subvdi3
+___subvsi3
+___trampoline_setup
+___ucmpdi2
+___udivdi3
+___udivmoddi4
+___umoddi3
diff --git a/libgcc/config/rs6000/libgcc-darwin.10.5.ver b/libgcc/config/rs6000/libgcc-darwin.10.5.ver
new file mode 100644 (file)
index 0000000..c2f0892
--- /dev/null
@@ -0,0 +1,106 @@
+# Copyright (C) 2005, 2006 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/>.
+__Unwind_Backtrace
+__Unwind_DeleteException
+__Unwind_FindEnclosingFunction
+__Unwind_Find_FDE
+__Unwind_ForcedUnwind
+__Unwind_GetCFA
+__Unwind_GetDataRelBase
+__Unwind_GetGR
+__Unwind_GetIP
+__Unwind_GetIPInfo
+__Unwind_GetLanguageSpecificData
+__Unwind_GetRegionStart
+__Unwind_GetTextRelBase
+__Unwind_RaiseException
+__Unwind_Resume
+__Unwind_Resume_or_Rethrow
+__Unwind_SetGR
+__Unwind_SetIP
+___absvdi2
+___absvsi2
+___addvdi3
+___addvsi3
+___ashldi3
+___ashrdi3
+___clear_cache
+___clzdi2
+___clzsi2
+___cmpdi2
+___ctzdi2
+___ctzsi2
+___deregister_frame
+___deregister_frame_info
+___deregister_frame_info_bases
+___divdc3
+___divdi3
+___divsc3
+___divtc3
+___enable_execute_stack
+___ffsdi2
+___fixdfdi
+___fixsfdi
+___fixtfdi
+___fixunsdfdi
+___fixunsdfsi
+___fixunssfdi
+___fixunssfsi
+___fixunstfdi
+___floatdidf
+___floatdisf
+___floatditf
+___floatundidf
+___floatundisf
+___floatunditf
+___gcc_personality_v0
+___gcc_qadd
+___gcc_qdiv
+___gcc_qmul
+___gcc_qsub
+___lshrdi3
+___moddi3
+___muldc3
+___muldi3
+___mulsc3
+___multc3
+___mulvdi3
+___mulvsi3
+___negdi2
+___negvdi2
+___negvsi2
+___paritydi2
+___paritysi2
+___popcountdi2
+___popcountsi2
+___powidf2
+___powisf2
+___powitf2
+___register_frame
+___register_frame_info
+___register_frame_info_bases
+___register_frame_info_table
+___register_frame_info_table_bases
+___register_frame_table
+___subvdi3
+___subvsi3
+___trampoline_setup
+___ucmpdi2
+___udivdi3
+___udivmoddi4
+___umoddi3
diff --git a/libgcc/config/rs6000/libgcc-glibc.ver b/libgcc/config/rs6000/libgcc-glibc.ver
new file mode 100644 (file)
index 0000000..8862c14
--- /dev/null
@@ -0,0 +1,73 @@
+# Copyright (C) 2006, 2007 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/>.
+
+%ifndef _SOFT_FLOAT
+%ifndef __powerpc64__
+%exclude {
+  __multc3
+  __divtc3
+  __powitf2
+  __fixtfdi
+  __fixunstfdi
+  __floatditf
+}
+
+GCC_4.1.0 {
+  # long double support
+  __multc3
+  __divtc3
+  __powitf2
+  __fixtfdi
+  __fixunstfdi
+  __floatditf
+
+%else
+GCC_3.4.4 {
+%endif
+%else
+GCC_4.2.0 {
+%endif
+
+  # long double support
+  __gcc_qadd
+  __gcc_qsub
+  __gcc_qmul
+  __gcc_qdiv
+
+%ifdef _SOFT_DOUBLE
+  __gcc_qneg
+  __gcc_qeq
+  __gcc_qne
+  __gcc_qgt
+  __gcc_qge
+  __gcc_qlt
+  __gcc_qle
+  __gcc_stoq
+  __gcc_dtoq
+  __gcc_qtos
+  __gcc_qtod
+  __gcc_qtoi
+  __gcc_qtou
+  __gcc_itoq
+  __gcc_utoq
+%endif
+
+%ifdef __NO_FPRS__
+  __gcc_qunord
+%endif
+}
diff --git a/libgcc/config/rs6000/libgcc-ibm-ldouble.ver b/libgcc/config/rs6000/libgcc-ibm-ldouble.ver
new file mode 100644 (file)
index 0000000..b27b4b4
--- /dev/null
@@ -0,0 +1,7 @@
+GCC_3.4.4 {
+  # long double support
+  __gcc_qadd
+  __gcc_qsub
+  __gcc_qmul
+  __gcc_qdiv
+}
diff --git a/libgcc/config/rs6000/libgcc-ppc-glibc.ver b/libgcc/config/rs6000/libgcc-ppc-glibc.ver
deleted file mode 100644 (file)
index 8862c14..0000000
+++ /dev/null
@@ -1,73 +0,0 @@
-# Copyright (C) 2006, 2007 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/>.
-
-%ifndef _SOFT_FLOAT
-%ifndef __powerpc64__
-%exclude {
-  __multc3
-  __divtc3
-  __powitf2
-  __fixtfdi
-  __fixunstfdi
-  __floatditf
-}
-
-GCC_4.1.0 {
-  # long double support
-  __multc3
-  __divtc3
-  __powitf2
-  __fixtfdi
-  __fixunstfdi
-  __floatditf
-
-%else
-GCC_3.4.4 {
-%endif
-%else
-GCC_4.2.0 {
-%endif
-
-  # long double support
-  __gcc_qadd
-  __gcc_qsub
-  __gcc_qmul
-  __gcc_qdiv
-
-%ifdef _SOFT_DOUBLE
-  __gcc_qneg
-  __gcc_qeq
-  __gcc_qne
-  __gcc_qgt
-  __gcc_qge
-  __gcc_qlt
-  __gcc_qle
-  __gcc_stoq
-  __gcc_dtoq
-  __gcc_qtos
-  __gcc_qtod
-  __gcc_qtoi
-  __gcc_qtou
-  __gcc_itoq
-  __gcc_utoq
-%endif
-
-%ifdef __NO_FPRS__
-  __gcc_qunord
-%endif
-}
diff --git a/libgcc/config/rs6000/libgcc-ppc64.ver b/libgcc/config/rs6000/libgcc-ppc64.ver
deleted file mode 100644 (file)
index b27b4b4..0000000
+++ /dev/null
@@ -1,7 +0,0 @@
-GCC_3.4.4 {
-  # long double support
-  __gcc_qadd
-  __gcc_qsub
-  __gcc_qmul
-  __gcc_qdiv
-}
index 4464fd7d6e6ecdd8aeee23d16b6a536646a0914f..deec5e3a470fae05c22308ddc00d156f2fb25f3b 100644 (file)
@@ -6,5 +6,3 @@ crt2.o: $(srcdir)/config/rs6000/darwin-crt2.c
 LIB2ADD += $(srcdir)/config/rs6000/ppc64-fp.c
 
 LIB2ADDEH += $(srcdir)/config/rs6000/darwin-fallback.c
-
-SHLIB_VERPFX = $(gcc_srcdir)/config/rs6000/darwin-libgcc
index 3f7a2d847e23e9d874decb2ab2ae504baebc22fe..b13278498eca6e7d8b6a5096f926e179765f9dd3 100644 (file)
@@ -3,4 +3,4 @@ LIB2ADD += $(srcdir)/config/rs6000/ibm-ldouble.c
 
 HOST_LIBGCC2_CFLAGS += -mlong-double-128
 
-SHLIB_MAPFILES += $(srcdir)/config/rs6000/libgcc-ppc64.ver
+SHLIB_MAPFILES += $(srcdir)/config/rs6000/libgcc-ibm-ldouble.ver
diff --git a/libgcc/config/rs6000/t-ldbl128 b/libgcc/config/rs6000/t-ldbl128
deleted file mode 100644 (file)
index ecc3581..0000000
+++ /dev/null
@@ -1,3 +0,0 @@
-SHLIB_MAPFILES += $(srcdir)/config/rs6000/libgcc-ppc-glibc.ver
-
-HOST_LIBGCC2_CFLAGS += -mlong-double-128
diff --git a/libgcc/config/rs6000/t-linux b/libgcc/config/rs6000/t-linux
new file mode 100644 (file)
index 0000000..dcf7ffc
--- /dev/null
@@ -0,0 +1,3 @@
+SHLIB_MAPFILES += $(srcdir)/config/rs6000/libgcc-glibc.ver
+
+HOST_LIBGCC2_CFLAGS += -mlong-double-128
diff --git a/libgcc/config/rs6000/t-slibgcc-aix b/libgcc/config/rs6000/t-slibgcc-aix
new file mode 100644 (file)
index 0000000..a0fdd13
--- /dev/null
@@ -0,0 +1,44 @@
+# Copyright (C) 2002, 2003, 2004, 2005, 2006,
+# 2008, 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.
+SHLIB_EXT = .a
+SHLIB_LINK = $(CC) $(LIBGCC2_CFLAGS) -shared -nodefaultlibs \
+       -Wl,-bE:@shlib_map_file@ -o @multilib_dir@/shr.o \
+       @multilib_flags@ @shlib_objs@ -lc \
+       `case @multilib_dir@ in \
+       *pthread*) echo -L$(TARGET_SYSTEM_ROOT)/usr/lib/threads -lpthreads -lc_r $(TARGET_SYSTEM_ROOT)/usr/lib/libc.a ;; \
+       *) echo -lc ;; esac` ; \
+       rm -f @multilib_dir@/tmp-@shlib_base_name@.a ; \
+       $(AR_CREATE_FOR_TARGET) @multilib_dir@/tmp-@shlib_base_name@.a \
+       @multilib_dir@/shr.o ; \
+       mv @multilib_dir@/tmp-@shlib_base_name@.a \
+          @multilib_dir@/@shlib_base_name@.a ; \
+       rm -f @multilib_dir@/shr.o
+SHLIB_INSTALL = \
+       $(mkinstalldirs) $(DESTDIR)$(slibdir)@shlib_slibdir_qual@; \
+       $(INSTALL_DATA) @multilib_dir@/@shlib_base_name@.a \
+               $(DESTDIR)$(slibdir)@shlib_slibdir_qual@/
+SHLIB_LIBS = -lc `case @multilib_dir@ in *pthread*) echo -lpthread ;; esac`
+SHLIB_MKMAP = $(srcdir)/mkmap-flat.awk
+SHLIB_MAPFILES = libgcc-std.ver
+SHLIB_NM_FLAGS = -Bpg -X32_64
+
+# Either 32-bit and 64-bit objects in archives.
+AR_FLAGS_FOR_TARGET = -X32_64
diff --git a/libgcc/config/sh/libgcc-excl.ver b/libgcc/config/sh/libgcc-excl.ver
new file mode 100644 (file)
index 0000000..325c740
--- /dev/null
@@ -0,0 +1,8 @@
+# Exclude various symbols which should not be visible in libgcc.so for SH.
+%exclude {
+  __ashlsi3
+  __ashrsi3
+  __lshrsi3
+  __mulsi3 # this is an SH1-only symbol.
+  __udivsi3
+}
diff --git a/libgcc/config/sh/libgcc-glibc.ver b/libgcc/config/sh/libgcc-glibc.ver
new file mode 100644 (file)
index 0000000..b8ec326
--- /dev/null
@@ -0,0 +1,48 @@
+# Copyright (C) 2002, 2008 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/>.
+
+# In order to work around the very problems that force us to now generally
+# create a libgcc.so, glibc reexported a number of routines from libgcc.a.
+# By now choosing the same version tags for these specific routines, we
+# maintain enough binary compatibility to allow future versions of glibc
+# to defer implementation of these routines to libgcc.so via DT_AUXILIARY.
+
+# Note that we cannot use the default libgcc-glibc.ver file on sh,
+# because GLIBC_2.0 does not exist on this architecture, as the first 
+# ever glibc release on the platform was GLIBC_2.2.
+
+%exclude {
+  __register_frame
+  __register_frame_table
+  __deregister_frame
+  __register_frame_info
+  __deregister_frame_info
+  __frame_state_for
+  __register_frame_info_table
+}
+
+%inherit GCC_3.0 GLIBC_2.2
+GLIBC_2.2 {
+  __register_frame
+  __register_frame_table
+  __deregister_frame
+  __register_frame_info
+  __deregister_frame_info
+  __frame_state_for
+  __register_frame_info_table
+}
index a98fb18e8d1d32d76c30bfcbfbf31eea19efd292..af618e260c671f592df961e5d170bcecaa9f2a7d 100644 (file)
@@ -6,32 +6,5 @@ HOST_LIBGCC2_CFLAGS = -fpic -mieee -DNO_FPSCR_VALUES
 # the list from scratch.
 SHLIB_MAPFILES = \
        libgcc-std.ver \
-       $(gcc_srcdir)/config/sh/libgcc-excl.ver \
-       $(gcc_srcdir)/config/sh/libgcc-glibc.ver
-
-# Override SHLIB_LINK and SHLIB_INSTALL to use linker script
-# libgcc_s.so.
-SHLIB_LINK = $(CC) $(LIBGCC2_CFLAGS) -shared -nodefaultlibs \
-       -Wl,--soname=@shlib_base_name@.so.1 \
-       -Wl,--version-script=@shlib_map_file@ \
-       -o @multilib_dir@/@shlib_base_name@.so.1.tmp @multilib_flags@ \
-       @shlib_objs@ -lc && \
-       rm -f @multilib_dir@/@shlib_base_name@.so && \
-       if [ -f @multilib_dir@/@shlib_base_name@.so.1 ]; then \
-         mv -f @multilib_dir@/@shlib_base_name@.so.1 \
-               @multilib_dir@/@shlib_base_name@.so.1.backup; \
-       else true; fi && \
-       mv @multilib_dir@/@shlib_base_name@.so.1.tmp \
-          @multilib_dir@/@shlib_base_name@.so.1 && \
-       (echo "/* GNU ld script"; \
-        echo "   Use the shared library, but some functions are only in"; \
-        echo "   the static library.  */"; \
-        echo "GROUP ( @shlib_base_name@.so.1 libgcc.a )" \
-       ) > @multilib_dir@/@shlib_base_name@.so
-SHLIB_INSTALL = \
-       $(mkinstalldirs) $(DESTDIR)$(slibdir)@shlib_slibdir_qual@; \
-       $(INSTALL_DATA) @multilib_dir@/@shlib_base_name@.so.1 \
-         $(DESTDIR)$(slibdir)@shlib_slibdir_qual@/@shlib_base_name@.so.1; \
-       rm -f $(DESTDIR)$(slibdir)@shlib_slibdir_qual@/@shlib_base_name@.so; \
-       $(INSTALL_DATA) @multilib_dir@/@shlib_base_name@.so \
-         $(DESTDIR)$(slibdir)@shlib_slibdir_qual@/@shlib_base_name@.so
+       $(srcdir)/config/sh/libgcc-excl.ver \
+       $(srcdir)/config/sh/libgcc-glibc.ver
diff --git a/libgcc/config/sparc/libgcc-glibc.ver b/libgcc/config/sparc/libgcc-glibc.ver
new file mode 100644 (file)
index 0000000..91138d3
--- /dev/null
@@ -0,0 +1,93 @@
+# Copyright (C) 2002, 2006, 2008 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/>.
+
+# In order to work around the very problems that force us to now generally
+# create a libgcc.so, glibc reexported a number of routines from libgcc.a.
+# By now choosing the same version tags for these specific routines, we
+# maintain enough binary compatibility to allow future versions of glibc
+# to defer implementation of these routines to libgcc.so via DT_AUXILIARY.
+
+%exclude {
+  __divdi3
+  __moddi3
+  __udivdi3
+  __umoddi3
+  __register_frame
+  __register_frame_table
+  __deregister_frame
+  __register_frame_info
+  __deregister_frame_info
+  __frame_state_for
+  __register_frame_info_table
+}
+
+%ifdef __arch64__
+%define GLIBC_VER GLIBC_2.2
+%else
+%define GLIBC_VER GLIBC_2.0
+%endif
+%inherit GCC_3.0 GLIBC_VER
+GLIBC_VER {
+  # Sampling of DImode arithmetic used by (at least) i386 and m68k.
+  __divdi3
+  __moddi3
+  __udivdi3
+  __umoddi3
+
+  # Exception handling support functions used by most everyone.
+  __register_frame
+  __register_frame_table
+  __deregister_frame
+  __register_frame_info
+  __deregister_frame_info
+  __frame_state_for
+  __register_frame_info_table
+}
+
+%if !defined (__arch64__) && defined (__LONG_DOUBLE_128__)
+
+# long double 128 bit support from 32-bit libgcc_s.so.1 is only available
+# when configured with --with-long-double-128.  Make sure all the
+# symbols are available at @@GCC_LDBL_* versions to make it clear
+# there is a configurable symbol set.
+
+%exclude {
+  __fixtfdi
+  __fixunstfdi
+  __floatditf
+
+  __divtc3
+  __multc3
+  __powitf2
+}
+
+%inherit GCC_LDBL_3.0 GCC_3.0
+GCC_LDBL_3.0 {
+  __fixtfdi
+  __fixunstfdi
+  __floatditf
+}
+
+%inherit GCC_LDBL_4.0.0 GCC_4.0.0
+GCC_LDBL_4.0.0 {
+  __divtc3
+  __multc3
+  __powitf2
+}
+
+%endif
diff --git a/libgcc/config/sparc/t-linux b/libgcc/config/sparc/t-linux
new file mode 100644 (file)
index 0000000..474f175
--- /dev/null
@@ -0,0 +1,4 @@
+# Override t-slibgcc-elf-ver to export some libgcc symbols with
+# the symbol versions that glibc used.
+# Avoid the t-linux version file.
+SHLIB_MAPFILES = libgcc-std.ver $(srcdir)/config/sparc/libgcc-glibc.ver
index 1c7a898675fa160a6394a06d7ffc729b1608796f..135cbe1e82f04a8609e58d566aebd9bd5fed2db3 100644 (file)
@@ -1,3 +1,10 @@
+# Use the system libunwind library.
+
 LIB2ADDEH = $(srcdir)/unwind-sjlj.c $(srcdir)/unwind-c.c \
   $(srcdir)/unwind-compat.c $(srcdir)/unwind-dw2-fde-compat.c
 LIB2ADDEHSTATIC = $(srcdir)/unwind-sjlj.c $(srcdir)/unwind-c.c
+
+# Override the default value from t-slibgcc-elf-ver and mention -lunwind
+# so that the resulting libgcc_s.so has the necessary DT_NEEDED entry for
+# libunwind.
+SHLIB_LC = -lunwind -lc
diff --git a/libgcc/config/t-linux b/libgcc/config/t-linux
new file mode 100644 (file)
index 0000000..d1bdac4
--- /dev/null
@@ -0,0 +1,3 @@
+# Override t-slibgcc-elf-ver to export some libgcc symbols with
+# the symbol versions that glibc used.
+SHLIB_MAPFILES += $(srcdir)/config/libgcc-glibc.ver
index 0b5cc4bfc50de14cd965c6be10b1454e4df7d283..3727244c424d1693aed3709031f0bb14611053a1 100644 (file)
@@ -43,9 +43,12 @@ SHLIB_LINK = $(CC) $(LIBGCC2_CFLAGS) -shared -nodefaultlibs \
        else true; fi && \
        mv $(SHLIB_DIR)/$(SHLIB_SONAME).tmp $(SHLIB_DIR)/$(SHLIB_SONAME) && \
        $(SHLIB_MAKE_SOLINK)
+
+INSTALL_SHLIB = $(INSTALL_DATA)
+
 SHLIB_INSTALL = \
        $(mkinstalldirs) $(DESTDIR)$(slibdir)$(SHLIB_SLIBDIR_QUAL); \
-       $(INSTALL_DATA) $(SHLIB_DIR)/$(SHLIB_SONAME) \
+       $(INSTALL_SHLIB) $(SHLIB_DIR)/$(SHLIB_SONAME) \
          $(DESTDIR)$(slibdir)$(SHLIB_SLIBDIR_QUAL)/$(SHLIB_SONAME); \
        rm -f $(DESTDIR)$(slibdir)$(SHLIB_SLIBDIR_QUAL)/$(SHLIB_SOLINK); \
        $(SHLIB_INSTALL_SOLINK)
index bb6569a87d998fc60c19f48c9f9d70af9776c831..9970d0034360e96e979b62763d916c336dd7718a 100644 (file)
@@ -22,9 +22,10 @@ SHLIB_LINK = $(CC) $(LIBGCC2_CFLAGS) -dynamiclib -nodefaultlibs \
        $(SHLIB_VERSTRING) \
        @multilib_flags@ $(SHLIB_OBJS) $(SHLIB_LC)
 
-SHLIB_MKMAP = $(gcc_srcdir)/mkmap-flat.awk
+SHLIB_MKMAP = $(srcdir)/mkmap-flat.awk
 SHLIB_MKMAP_OPTS = -v leading_underscore=1
-SHLIB_MAPFILES += libgcc-std.ver $(gcc_srcdir)/libgcc-libsystem.ver
+SHLIB_MAPFILES = libgcc-std.ver $(srcdir)/config/libgcc-libsystem.ver
+SHLIB_VERPFX = $(srcdir)/config/$(cpu_type)/libgcc-darwin
 
 # we're only going to build the stubs if the target slib is /usr/lib
 # there is no other case in which they're useful in a live system.
index 2616d31cae56d9df85d1993d84ebf87d0b31f877..4a00edc96638abeaee9c7a2f4fd04b4ee42a0059 100644 (file)
@@ -1,4 +1,4 @@
 # Build a shared libgcc library for ELF with symbol versioning.
 
-SHLIB_MKMAP = $(gcc_srcdir)/mkmap-symver.awk
+SHLIB_MKMAP = $(srcdir)/mkmap-symver.awk
 SHLIB_MAPFILES = libgcc-std.ver
diff --git a/libgcc/config/t-slibgcc-gld-nover b/libgcc/config/t-slibgcc-gld-nover
new file mode 100644 (file)
index 0000000..e9b78ea
--- /dev/null
@@ -0,0 +1,3 @@
+# Build a shared libgcc library for ELF with the GNU linker.
+
+SHLIB_LDFLAGS = -Wl,--soname=$(SHLIB_SONAME)
diff --git a/libgcc/config/t-slibgcc-hpux b/libgcc/config/t-slibgcc-hpux
new file mode 100644 (file)
index 0000000..866457f
--- /dev/null
@@ -0,0 +1,7 @@
+# Build a shared libgcc library with the HP-UX linker.
+
+SHLIB_LDFLAGS = -Wl,+h,$(SHLIB_SONAME)
+
+INSTALL_SHLIB = $(INSTALL_DATA) -m 555
+
+SHLIB_MKMAP = $(srcdir)/mkmap-flat.awk
diff --git a/libgcc/config/t-slibgcc-libgcc b/libgcc/config/t-slibgcc-libgcc
new file mode 100644 (file)
index 0000000..ec36b27
--- /dev/null
@@ -0,0 +1,32 @@
+# Copyright (C) 2009, 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/>.
+
+# Instead of creating $(SHLIB_SOLINK) symlink create a GNU ld
+# linker script which sources in both $(SHLIB_SONAME) and libgcc.a.
+# This is needed on targets where libgcc.a contains routines that aren't in
+# $(SHLIB_SONAME) and are needed for shared libraries.
+
+SHLIB_MAKE_SOLINK = \
+       (echo "/* GNU ld script"; \
+        echo "   Use the shared library, but some functions are only in"; \
+        echo "   the static library.  */"; \
+        echo "GROUP ( $(SHLIB_SONAME) libgcc.a )" \
+       ) > $(SHLIB_DIR)/$(SHLIB_SOLINK)
+SHLIB_INSTALL_SOLINK = \
+       $(INSTALL_DATA) $(SHLIB_DIR)/$(SHLIB_SOLINK) \
+         $(DESTDIR)$(slibdir)$(SHLIB_SLIBDIR_QUAL)/$(SHLIB_SOLINK)
diff --git a/libgcc/config/t-slibgcc-nolc-override b/libgcc/config/t-slibgcc-nolc-override
new file mode 100644 (file)
index 0000000..959d2cc
--- /dev/null
@@ -0,0 +1 @@
+SHLIB_LC =
diff --git a/libgcc/config/t-slibgcc-vms b/libgcc/config/t-slibgcc-vms
new file mode 100644 (file)
index 0000000..d01c343
--- /dev/null
@@ -0,0 +1,28 @@
+shlib_version:=$(shell $(CC) --version 2>&1 | \
+       sed -n 's/^.*(GCC).* \([0-9]*\.[0-9.]*\).*$/\1/p' | \
+       sed -e 's/\./,/' -e 's/\.//g')
+SHLIB_EXT = .exe
+SHLIB_OBJS = @shlib_objs@
+SHLIB_NAME = @shlib_base_name@.exe
+SHLIB_MULTILIB =
+SHLIB_INSTALL = $(INSTALL_DATA) $(SHLIB_NAME) $(DESTDIR)$(libsubdir)/$(SHLIB_NAME)
+SHLIB_SYMVEC = \
+  grep -F -e "\$$BSS\$$" -e "\$$DATA\$$" -e " sdata " -e " data.rel " -e " data.rel.ro " -e " sbss " \
+        -e "\$$LINK\$$" -e "\$$READONLY\$$" | \
+  sed -e "s/.*\$$LINK\$$   \(.*\)/SYMBOL_VECTOR=(\1=PROCEDURE)/" \
+      -e "s/.*\$$DATA\$$   \(.*\)/SYMBOL_VECTOR=(\1=DATA)/" \
+      -e "s/.* sbss     \(.*\)/SYMBOL_VECTOR=(\1=DATA)/" \
+      -e "s/.* sdata    \(.*\)/SYMBOL_VECTOR=(\1=DATA)/" \
+      -e "s/.* data.rel \(.*\)/SYMBOL_VECTOR=(\1=DATA)/" \
+      -e "s/.* data.rel.ro \(.*\)/SYMBOL_VECTOR=(\1=DATA)/" \
+      -e "s/.*\$$BSS\$$    \(.*\)/SYMBOL_VECTOR=(\1=DATA)/" \
+      -e "s/.*\$$READONLY\$$ \(.*\)/SYMBOL_VECTOR=(\1=DATA)/"
+SHLIB_LINK = \
+  echo "case_sensitive=yes" > SYMVEC_$$$$.opt; \
+  objdump --syms $(SHLIB_OBJS) | \
+  $(SHLIB_SYMVEC) >> SYMVEC_$$$$.opt ; \
+  echo "case_sensitive=NO" >> SYMVEC_$$$$.opt; \
+  $(CC) $(LIBGCC2_CFLAGS) -nodefaultlibs \
+  -shared --for-linker=/noinform -o $(SHLIB_NAME) $(SHLIB_OBJS) \
+  --for-linker=SYMVEC_$$$$.opt \
+  --for-linker=gsmatch=equal,$(shlib_version)
diff --git a/libgcc/config/xtensa/libgcc-glibc.ver b/libgcc/config/xtensa/libgcc-glibc.ver
new file mode 100644 (file)
index 0000000..43e7d4f
--- /dev/null
@@ -0,0 +1,3 @@
+GCC_4.3.0 {
+  __umulsidi3
+}
diff --git a/libgcc/config/xtensa/t-linux b/libgcc/config/xtensa/t-linux
new file mode 100644 (file)
index 0000000..6f4ae89
--- /dev/null
@@ -0,0 +1 @@
+SHLIB_MAPFILES += $(srcdir)/config/xtensa/libgcc-glibc.ver
index 80bb61c80afc69c4121e5bfdbe653d90ffd8f87a..0506dcf8e40a377777d7cd0849a18a9c83ef3b94 100644 (file)
@@ -694,6 +694,7 @@ enable_maintainer_mode
 with_build_libsubdir
 enable_decimal_float
 with_system_libunwind
+enable_sjlj_exceptions
 enable_tls
 '
       ac_precious_vars='build_alias
@@ -1328,6 +1329,8 @@ Optional Features:
                        enable decimal float extension to C.  Selecting 'bid'
                        or 'dpd' choses which decimal floating point format
                        to use
+  --enable-sjlj-exceptions
+                          force use of builtin_setjmp for exceptions
   --enable-tls            Use thread-local storage [default=yes]
 
 Optional Packages:
@@ -4408,6 +4411,72 @@ $as_echo "#define HAVE_GETIPINFO 1" >>confdefs.h
   fi
 
 
+# The sjlj test is almost duplicated here and in libgo/configure.ac (for C),
+# libstdc++-v3/acinclude.m4 and libjava/configure.ac (for C++), and
+# libobjc/configure.ac (for Objective-C).
+# FIXME: This should be centralized in config/sjlj.m4.
+# Check whether --enable-sjlj-exceptions was given.
+if test "${enable_sjlj_exceptions+set}" = set; then :
+  enableval=$enable_sjlj_exceptions; case "$enableval" in
+   yes|no|auto) ;;
+   *) as_fn_error "unknown argument to --enable-sjlj-exceptions" "$LINENO" 5 ;;
+   esac
+else
+  enable_sjlj_exceptions=auto
+fi
+
+
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether to use setjmp/longjmp exceptions" >&5
+$as_echo_n "checking whether to use setjmp/longjmp exceptions... " >&6; }
+if test "${libgcc_cv_lib_sjlj_exceptions+set}" = set; then :
+  $as_echo_n "(cached) " >&6
+else
+  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+/* end confdefs.h.  */
+
+void bar ();
+void clean (int *);
+void foo ()
+{
+  int i __attribute__ ((cleanup (clean)));
+  bar();
+}
+
+_ACEOF
+CFLAGS_hold=$CFLAGS
+CFLAGS="--save-temps -fexceptions"
+libgcc_cv_lib_sjlj_exceptions=unknown
+if ac_fn_c_try_compile; then :
+  if grep _Unwind_SjLj_Resume conftest.s >/dev/null 2>&1; then
+    libgcc_cv_lib_sjlj_exceptions=yes
+  elif grep _Unwind_Resume conftest.s >/dev/null 2>&1; then
+    libgcc_cv_lib_sjlj_exceptions=no
+  fi
+fi
+CFLAGS=$CFLAGS_hold
+rm -f conftest*
+
+fi
+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $libgcc_cv_lib_sjlj_exceptions" >&5
+$as_echo "$libgcc_cv_lib_sjlj_exceptions" >&6; }
+
+if test "$enable_sjlj_exceptions" = "auto"; then
+  enable_sjlj_exceptions=$libgcc_cv_lib_sjlj_exceptions
+fi
+
+case $enable_sjlj_exceptions in
+yes)
+
+$as_echo "#define LIBGCC_SJLJ_EXCEPTIONS 1" >>confdefs.h
+
+  ;;
+no)
+  ;;
+*)
+  as_fn_error "unable to detect exception model" "$LINENO" 5
+  ;;
+esac
+
 { $as_echo "$as_me:${as_lineno-$LINENO}: checking if the linker ($LD) is GNU ld" >&5
 $as_echo_n "checking if the linker ($LD) is GNU ld... " >&6; }
 if test "${acl_cv_prog_gnu_ld+set}" = set; then :
index c1a3dce0f5ba7d17dd57ce218597e118701b7073..b40e6d733d68deb3e56594219e337a383851c291 100644 (file)
@@ -180,6 +180,60 @@ AC_SUBST(fixed_point)
 # config.gcc also contains tests of with_system_libunwind.
 GCC_CHECK_UNWIND_GETIPINFO
 
+# The sjlj test is almost duplicated here and in libgo/configure.ac (for C),
+# libstdc++-v3/acinclude.m4 and libjava/configure.ac (for C++), and
+# libobjc/configure.ac (for Objective-C).
+# FIXME: This should be centralized in config/sjlj.m4.
+AC_ARG_ENABLE(sjlj-exceptions,
+  AC_HELP_STRING([--enable-sjlj-exceptions],
+                [force use of builtin_setjmp for exceptions]),
+  [case "$enableval" in
+   yes|no|auto) ;;
+   *) AC_MSG_ERROR([unknown argument to --enable-sjlj-exceptions]) ;;
+   esac],
+  [enable_sjlj_exceptions=auto])
+
+AC_CACHE_CHECK([whether to use setjmp/longjmp exceptions],
+[libgcc_cv_lib_sjlj_exceptions],
+[AC_LANG_CONFTEST(
+  [AC_LANG_SOURCE([
+void bar ();
+void clean (int *);
+void foo ()
+{
+  int i __attribute__ ((cleanup (clean)));
+  bar();
+}
+])])
+CFLAGS_hold=$CFLAGS
+CFLAGS="--save-temps -fexceptions"
+libgcc_cv_lib_sjlj_exceptions=unknown
+AS_IF([ac_fn_c_try_compile],
+  [if grep _Unwind_SjLj_Resume conftest.s >/dev/null 2>&1; then
+    libgcc_cv_lib_sjlj_exceptions=yes
+  elif grep _Unwind_Resume conftest.s >/dev/null 2>&1; then
+    libgcc_cv_lib_sjlj_exceptions=no
+  fi])
+CFLAGS=$CFLAGS_hold
+rm -f conftest*
+])
+
+if test "$enable_sjlj_exceptions" = "auto"; then
+  enable_sjlj_exceptions=$libgcc_cv_lib_sjlj_exceptions
+fi
+
+case $enable_sjlj_exceptions in
+yes)
+  AC_DEFINE(LIBGCC_SJLJ_EXCEPTIONS, 1,
+       [Define if the C compiler is configured for setjmp/longjmp exceptions.])
+  ;;
+no)
+  ;;
+*)
+  AC_MSG_ERROR([unable to detect exception model])
+  ;;
+esac
+
 AC_LIB_PROG_LD_GNU
 
 AC_MSG_CHECKING([for thread model used by GCC])
diff --git a/libgcc/mkmap-flat.awk b/libgcc/mkmap-flat.awk
new file mode 100644 (file)
index 0000000..ec5e1fd
--- /dev/null
@@ -0,0 +1,109 @@
+# Generate a flat list of symbols to export.
+#      Copyright (C) 2007, 2008, 2009, 2011  Free Software Foundation, Inc.
+#      Contributed by Richard Henderson <rth@cygnus.com>
+#
+# 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/>.
+
+# Options:
+#   "-v leading_underscore=1" : Symbols in map need leading underscore.
+#   "-v osf_export=1"        : Create -input file for Tru64 UNIX linker
+#                              instead of map file.
+#   "-v pe_dll=1"             : Create .DEF file for Windows PECOFF
+#                               DLL link instead of map file.
+
+BEGIN {
+  state = "nm";
+  excluding = 0;
+  if (leading_underscore)
+    prefix = "_";
+  else
+    prefix = "";
+}
+
+# Remove comment and blank lines.
+/^ *#/ || /^ *$/ {
+  next;
+}
+
+# We begin with nm input.  Collect the set of symbols that are present
+# so that we can elide undefined symbols.
+
+state == "nm" && /^%%/ {
+  state = "ver";
+  next;
+}
+
+state == "nm" && ($1 == "U" || $2 == "U") {
+  next;
+}
+
+state == "nm" && NF == 3 {
+  def[$3] = 1;
+  next;
+}
+
+state == "nm" {
+  next;
+}
+
+# Now we process a simplified variant of the Solaris symbol version
+# script.  We have one symbol per line, no semicolons, simple markers
+# for beginning and ending each section, and %inherit markers for
+# describing version inheritance.  A symbol may appear in more than
+# one symbol version, and the last seen takes effect.
+# The magic version name '%exclude' causes all the symbols given that
+# version to be dropped from the output (unless a later version overrides).
+
+NF == 3 && $1 == "%inherit" {
+  next;
+}
+
+NF == 2 && $2 == "{" {
+  if ($1 == "%exclude")
+    excluding = 1;
+  next;
+}
+
+$1 == "}" {
+  excluding = 0;
+  next;
+}
+
+{
+  sym = prefix $1;
+  if (excluding)
+    delete export[sym];
+  else
+    export[sym] = 1;
+  next;
+}
+
+END {
+
+  if (pe_dll) {
+    print "LIBRARY " pe_dll;
+    print "EXPORTS";
+  }
+
+  for (sym in export)
+    if (def[sym] || (pe_dll && def["_" sym])) {
+      if (!osf_export)
+       print sym;
+      else
+       print "-exported_symbol " sym;
+    }
+}
diff --git a/libgcc/mkmap-symver.awk b/libgcc/mkmap-symver.awk
new file mode 100644 (file)
index 0000000..4877e90
--- /dev/null
@@ -0,0 +1,136 @@
+# Generate an ELF symbol version map a-la Solaris and GNU ld.
+#      Copyright (C) 2007, 2008  Free Software Foundation, Inc.
+#      Contributed by Richard Henderson <rth@cygnus.com>
+#
+# 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/>.
+
+BEGIN {
+  state = "nm";
+  sawsymbol = 0;
+  if (leading_underscore)
+    prefix = "_";
+  else
+    prefix = "";
+}
+
+# Remove comment and blank lines.
+/^ *#/ || /^ *$/ {
+  next;
+}
+
+# We begin with nm input.  Collect the set of symbols that are present
+# so that we can not emit them into the final version script -- Solaris
+# complains at us if we do.
+
+state == "nm" && /^%%/ {
+  state = "ver";
+  next;
+}
+
+state == "nm" && ($1 == "U" || $2 == "U") {
+  next;
+}
+
+state == "nm" && NF == 3 {
+  split ($3, s, "@")
+  def[s[1]] = 1;
+  sawsymbol = 1;
+  next;
+}
+
+state == "nm" {
+  next;
+}
+
+# Now we process a simplified variant of the Solaris symbol version
+# script.  We have one symbol per line, no semicolons, simple markers
+# for beginning and ending each section, and %inherit markers for
+# describing version inheritance.  A symbol may appear in more than
+# one symbol version, and the last seen takes effect.
+# The magic version name '%exclude' causes all the symbols given that
+# version to be dropped from the output (unless a later version overrides).
+
+NF == 3 && $1 == "%inherit" {
+  inherit[$2] = $3;
+  next;
+}
+
+NF == 2 && $2 == "{" {
+  if ($1 != "%exclude")
+    libs[$1] = 1;
+  thislib = $1;
+  next;
+}
+
+$1 == "}" {
+  thislib = "";
+  next;
+}
+
+{
+  sym = prefix $1;
+  symbols[sym] = 1
+  if (thislib != "%exclude")
+    ver[sym, thislib] = 1;
+  else {
+    for (l in libs)
+      ver[sym, l] = 0;
+  }
+  next;
+}
+
+END {
+  if (!sawsymbol)
+    {
+      print "No symbols seen -- broken or mis-installed nm?" | "cat 1>&2";
+      exit 1;
+    }
+  for (l in libs)
+    output(l);
+}
+
+function output(lib) {
+  if (done[lib])
+    return;
+  done[lib] = 1;
+  if (inherit[lib])
+    output(inherit[lib]);
+
+  empty=1
+  for (sym in symbols)
+    if ((ver[sym, lib] != 0) && (sym in def))
+      {
+       if (empty)
+         {
+           printf("%s {\n", lib);
+           printf("  global:\n");
+           empty = 0;
+         }
+       printf("\t%s;\n", sym);
+      }
+
+  if (empty)
+    {
+      for (l in libs)
+       if (inherit[l] == lib)
+         inherit[l] = inherit[lib];
+    }
+  else if (inherit[lib])
+    printf("} %s;\n", inherit[lib]);
+  else
+    printf ("\n  local:\n\t*;\n};\n");
+}