crtfastmath.c: New file.

2002-04-03  David S. Miller  <davem@redhat.com>

	* config/sparc/crtfastmath.c: New file.
	* config/sparc/t-crtfm: New file.
	* config/sparc/linux.h (ENDFILE_SPEC): Use crtfastmath.o
	* config/sparc/linux64.h (ENDFILE_SPEC): Likewise.
	* config/sparc/sol2.h (ENDFILE_SPEC): Likewise.
	* config/sparc/sp64-elf.h (ENDFILE_SPEC): Likewise.
	* config/sparc/elf.h (ENDFILE_SPEC): Likewise.
	* config.gcc (sparc*-*-{elf*,linux*,solaris2*}): Add
	sparc/t-crtfm to tmake_file.

From-SVN: r51905
This commit is contained in:
David S. Miller 2002-04-04 23:42:44 -08:00 committed by David S. Miller
parent 5c63fb35ea
commit 38e84e128c
7 changed files with 98 additions and 73 deletions

View File

@ -1,3 +1,15 @@
2002-04-04 David S. Miller <davem@redhat.com>
* config/sparc/crtfastmath.c: New file.
* config/sparc/t-crtfm: New file.
* config/sparc/linux.h (ENDFILE_SPEC): Use crtfastmath.o
* config/sparc/linux64.h (ENDFILE_SPEC): Likewise.
* config/sparc/sol2.h (ENDFILE_SPEC): Likewise.
* config/sparc/sp64-elf.h (ENDFILE_SPEC): Likewise.
* config/sparc/elf.h (ENDFILE_SPEC): Likewise.
* config.gcc (sparc*-*-{elf*,linux*,solaris2*}): Add
sparc/t-crtfm to tmake_file.
2002-04-05 Alan Modra <amodra@bigpond.net.au>
* config/rs6000/t-linux64 (EXTRA_MULTILIB_PARTS): Add crtsavres.o

View File

@ -309,7 +309,7 @@ case $machine in
tmake_file="t-slibgcc-elf-ver t-linux t-gnu"
case $machine in
i[34567]86-*-*)
tm_file="${cpu_type}/${cpu_type}.h i386/att.h dbxelf.h elfos.h svr4.h linux.h i386/linux.h gnu.h ${tm_file}"
tm_file="${cpu_type}/${cpu_type}.h i386/unix.h i386/att.h dbxelf.h elfos.h svr4.h linux.h i386/linux.h gnu.h ${tm_file}"
;;
esac
;;
@ -1038,7 +1038,7 @@ i370-*-linux*)
;;
i[34567]86-*-chorusos*)
xm_defines=POSIX
tm_file="${tm_file} i386/att.h dbxelf.h elfos.h i386/i386elf.h chorus.h"
tm_file="${tm_file} i386/unix.h i386/att.h dbxelf.h elfos.h i386/i386elf.h chorus.h"
tmake_file="i386/t-i386elf t-svr4"
case x${enable_threads} in
xyes | xpthreads | xposix)
@ -1048,17 +1048,17 @@ i[34567]86-*-chorusos*)
;;
i[34567]86-*-elf*)
xm_defines=POSIX
tm_file="${tm_file} i386/att.h dbxelf.h elfos.h i386/i386elf.h"
tm_file="${tm_file} i386/unix.h i386/att.h dbxelf.h elfos.h i386/i386elf.h"
tmake_file="i386/t-i386elf t-svr4"
;;
i[34567]86-ibm-aix*) # IBM PS/2 running AIX
if test x$gas = xyes
then
tm_file=i386/aix386.h
tm_file="${tm_file} svr3.h i386/unix.h i386/att.h i386/aix386.h"
extra_parts="crtbegin.o crtend.o"
tmake_file=i386/t-crtstuff
else
tm_file=i386/aix386ng.h
tm_file="${tm_file} svr3.h i386/unix.h i386/att.h i386/aix386ng.h"
use_collect2=yes
fi
xm_defines=POSIX
@ -1069,14 +1069,14 @@ i[34567]86-ncr-sysv4*) # NCR 3000 - ix86 running system V.4
then
tm_file=i386/sysv4gdb.h
else
tm_file="${tm_file} i386/att.h dbxelf.h elfos.h svr4.h i386/sysv4.h"
tm_file="${tm_file} i386/unix.h i386/att.h dbxelf.h elfos.h svr4.h i386/sysv4.h"
fi
extra_parts="crtbegin.o crtend.o"
tmake_file=i386/t-crtpic
;;
i[34567]86-next-*)
tm_p_file="${tm_p_file} nextstep-protos.h"
tm_file=i386/next.h
tm_file="${tm_file} i386/unix.h i386/bsd.h i386/gas.h nextstep.h i386/next.h"
tmake_file=i386/t-next
extra_objs=nextstep.o
extra_parts="crtbegin.o crtend.o"
@ -1085,28 +1085,28 @@ i[34567]86-next-*)
fi
;;
i[34567]86-*-netware) # Intel 80386's running netware
tm_file="${tm_file} i386/att.h dbxelf.h elfos.h svr4.h i386/sysv4.h netware.h i386/netware.h"
tm_file="${tm_file} i386/unix.h i386/att.h dbxelf.h elfos.h svr4.h i386/sysv4.h netware.h i386/netware.h"
tmake_file=i386/t-netware
;;
i[34567]86-sequent-bsd*) # 80386 from Sequent
use_collect2=yes
if test x$gas = xyes
then
tm_file=i386/seq-gas.h
tm_file="${tm_file} i386/unix.h i386/bsd.h i386/sequent.h i386/seq-gas.h"
else
tm_file=i386/sequent.h
tm_file="${tm_file} i386/unix.h i386/bsd.h i386/sequent.h"
fi
;;
i[34567]86-sequent-ptx1*)
xm_defines=POSIX
tm_file=i386/seq-sysv3.h
tm_file="${tm_file} svr3.h i386/unix.h i386/att.h i386/sysv3.h i386/seq-sysv3.h"
tmake_file=i386/t-crtstuff
extra_parts="crtbegin.o crtend.o"
install_headers_dir=install-headers-cpio
;;
i[34567]86-sequent-ptx2* | i[34567]86-sequent-sysv3*)
xm_defines=POSIX
tm_file=i386/seq2-sysv3.h
tm_file="${tm_file} svr3.h i386/unix.h i386/att.h i386/sysv3.h i386/seq-sysv3.h i386/seq2-sysv3.h"
tmake_file=i386/t-crtstuff
extra_parts="crtbegin.o crtend.o"
install_headers_dir=install-headers-cpio
@ -1117,80 +1117,81 @@ i[34567]86-sequent-ptx4* | i[34567]86-sequent-sysv4*)
tm_file="${tm_file} usegas.h"
fi
xm_defines="POSIX SMALL_ARG_MAX"
tm_file="${tm_file} i386/att.h dbxelf.h elfos.h ptx4.h i386/ptx4-i.h"
tm_file="${tm_file} i386/unix.h i386/att.h dbxelf.h elfos.h ptx4.h i386/ptx4-i.h"
tmake_file=t-svr4
extra_parts="crtbegin.o crtend.o"
install_headers_dir=install-headers-cpio
;;
i386-sun-sunos*) # Sun i386 roadrunner
xm_defines=POSIX
tm_file=i386/sun.h
tm_file="${tm_file} i386/unix.h i386/sun386.h i386/sun.h"
use_collect2=yes
;;
i[34567]86-wrs-vxworks*)
tm_file=i386/vxi386.h
tm_file="${tm_file} i386/unix.h i386/bsd.h i386/gas.h i386/gstabs.h i386/i386-aout.h i386/vxi386.h"
thread_file='vxworks'
;;
i[34567]86-*-aout*)
tm_file=i386/i386-aout.h
tm_file="${tm_file} i386/unix.h i386/bsd.h i386/gas.h i386/gstabs.h i386/i386-aout.h"
;;
i[34567]86-*-beoself* | i[34567]86-*-beos*)
xm_defines=POSIX
tmake_file='i386/t-beos i386/t-crtpic'
tm_file="${tm_file} i386/att.h dbxelf.h elfos.h svr4.h i386/beos-elf.h"
tm_file="${tm_file} i386/unix.h i386/att.h dbxelf.h elfos.h svr4.h i386/beos-elf.h"
extra_parts='crtbegin.o crtend.o'
;;
i[34567]86-*-bsdi* | i[34567]86-*-bsd386*)
tm_file="i386/386bsd.h i386/bsd386.h"
tm_file="${tm_file} i386/unix.h i386/bsd.h i386/gas.h i386/gstabs.h i386/386bsd.h i386/bsd386.h"
# tmake_file=t-libc-ok
;;
i[34567]86-*-bsd*)
tm_file=i386/386bsd.h
tm_file="${tm_file} i386/unix.h i386/bsd.h i386/gas.h i386/gstabs.h i386/386bsd.h"
# tmake_file=t-libc-ok
# Next line turned off because both 386BSD and BSD/386 use GNU ld.
# use_collect2=yes
;;
i[34567]86-*-freebsd[12] | i[34567]86-*-freebsd[12].* | i[34567]86-*-freebsd*aout*)
tm_file=i386/freebsd-aout.h
tm_file="${tm_file} i386/unix.h i386/bsd.h i386/gas.h i386/gstabs.h i386/freebsd-aout.h"
tmake_file=t-freebsd
;;
i[34567]86-*-freebsd*)
tm_file="${tm_file} i386/att.h dbxelf.h elfos.h ${fbsd_tm_file} i386/freebsd.h"
tm_file="${tm_file} i386/unix.h i386/att.h dbxelf.h elfos.h ${fbsd_tm_file} i386/freebsd.h"
;;
x86_64-*-freebsd*)
tm_file="${tm_file} i386/att.h dbxelf.h elfos.h ${fbsd_tm_file} i386/x86-64.h i386/freebsd.h i386/freebsd64.h"
tm_file="${tm_file} i386/unix.h i386/att.h dbxelf.h elfos.h ${fbsd_tm_file} i386/x86-64.h i386/freebsd.h i386/freebsd64.h"
;;
i[34567]86-*-netbsdelf*)
tm_file="${tm_file} i386/att.h dbxelf.h elfos.h netbsd.h netbsd-elf.h i386/netbsd-elf.h"
tm_file="${tm_file} i386/unix.h i386/att.h dbxelf.h elfos.h netbsd.h netbsd-elf.h i386/netbsd-elf.h"
float_format=i386
;;
i[34567]86-*-netbsd*)
tm_file=i386/netbsd.h
tm_file="${tm_file} i386/unix.h i386/bsd.h i386/gas.h i386/gstabs.h netbsd.h netbsd-aout.h i386/netbsd.h"
tmake_file=t-netbsd
use_collect2=yes
;;
x86_64-*-netbsd*)
tm_file="${tm_file} i386/att.h dbxelf.h elfos.h netbsd.h netbsd-elf.h i386/x86-64.h i386/netbsd64.h"
tm_file="${tm_file} i386/unix.h i386/att.h dbxelf.h elfos.h netbsd.h netbsd-elf.h i386/x86-64.h i386/netbsd64.h"
float_format=i386
;;
i[34567]86-*-openbsd*)
tm_file="${cpu_type}/${cpu_type}.h i386/unix.h i386/bsd.h i386/gas.h i386/gstabs.h openbsd-oldgas.h openbsd.h ${tm_file}"
# needed to unconfuse gdb
tmake_file="t-libc-ok t-openbsd i386/t-openbsd"
# we need collect2 until our bug is fixed...
use_collect2=yes
;;
i[34567]86-*-coff*)
tm_file=i386/i386-coff.h
tm_file="${tm_file} i386/unix.h i386/bsd.h i386/gas.h dbxcoff.h i386/i386-coff.h"
;;
i[34567]86-*-isc*) # 80386 running ISC system
xm_defines=POSIX
if test x$gas = xyes -a x$stabs = xyes
then
tm_file=i386/iscdbx.h
tm_file="${tm_file} i386/unix.h i386/bsd.h i386/gas.h i386/svr3gas.h i386/svr3dbx.h i386/iscdbx.h"
tmake_file=i386/t-svr3dbx
extra_parts="svr3.ifile svr3z.ifile"
else
tm_file=i386/isccoff.h
tm_file="${tm_file} svr3.h i386/unix.h i386/att.h i386/sysv3.h i386/isc.h"
tmake_file=i386/t-crtstuff
extra_parts="crtbegin.o crtend.o"
fi
@ -1200,21 +1201,21 @@ i[34567]86-*-linux*oldld*) # Intel 80386's running GNU/Linux
# with a.out format using
# pre BFD linkers
tmake_file="t-linux-aout i386/t-crtstuff"
tm_file=i386/linux-oldld.h
tm_file="${tm_file} i386/unix.h i386/bsd.h i386/gas.h i386/gstabs.h linux-aout.h i386/linux-oldld.h"
gnu_ld=yes
float_format=i386
;;
i[34567]86-*-linux*aout*) # Intel 80386's running GNU/Linux
# with a.out format
tmake_file="t-linux-aout i386/t-crtstuff"
tm_file=i386/linux-aout.h
tm_file="${tm_file} i386/unix.h i386/bsd.h i386/gas.h i386/gstabs.h linux-aout.h i386/linux-aout.h"
gnu_ld=yes
float_format=i386
;;
i[34567]86-*-linux*libc1) # Intel 80386's running GNU/Linux
# with ELF format using the
# GNU/Linux C library 5
tm_file="${tm_file} i386/att.h dbxelf.h elfos.h svr4.h linux.h i386/linux.h"
tm_file="${tm_file} i386/unix.h i386/att.h dbxelf.h elfos.h svr4.h linux.h i386/linux.h"
tmake_file="t-slibgcc-elf-ver t-linux t-linux-gnulibc1 i386/t-crtstuff"
extra_parts="crtbegin.o crtbeginS.o crtend.o crtendS.o"
gnu_ld=yes
@ -1226,7 +1227,7 @@ i[34567]86-*-linux*libc1) # Intel 80386's running GNU/Linux
i[34567]86-*-linux*) # Intel 80386's running GNU/Linux
# with ELF format using glibc 2
# aka GNU/Linux C library 6
tm_file="${tm_file} i386/att.h dbxelf.h elfos.h svr4.h linux.h i386/linux.h"
tm_file="${tm_file} i386/unix.h i386/att.h dbxelf.h elfos.h svr4.h linux.h i386/linux.h"
tmake_file="t-slibgcc-elf-ver t-linux i386/t-crtstuff"
extra_parts="crtbegin.o crtbeginS.o crtbeginT.o crtend.o crtendS.o"
gnu_ld=yes
@ -1236,7 +1237,7 @@ i[34567]86-*-linux*) # Intel 80386's running GNU/Linux
fi
;;
x86_64-*-linux*)
tm_file="${tm_file} i386/att.h dbxelf.h elfos.h svr4.h linux.h \
tm_file="${tm_file} i386/unix.h i386/att.h dbxelf.h elfos.h svr4.h linux.h \
i386/x86-64.h i386/linux64.h"
tmake_file="t-slibgcc-elf-ver t-linux i386/t-crtstuff i386/t-linux64"
extra_parts="crtbegin.o crtbeginS.o crtbeginT.o crtend.o crtendS.o"
@ -1255,7 +1256,7 @@ i[34567]86-go32-msdos | i[34567]86-*-go32*)
;;
i[34567]86-pc-msdosdjgpp*)
xm_file=i386/xm-djgpp.h
tm_file=i386/djgpp.h
tm_file="dbxcoff.h ${tm_file} i386/djgpp.h"
tmake_file=i386/t-djgpp
gnu_ld=yes
gas=yes
@ -1267,7 +1268,7 @@ i[34567]86-pc-msdosdjgpp*)
esac
;;
i[34567]86-moss-msdos* | i[34567]86-*-moss*)
tm_file="${tm_file} i386/att.h dbxelf.h elfos.h svr4.h linux.h i386/linux.h i386/moss.h"
tm_file="${tm_file} i386/unix.h i386/att.h dbxelf.h elfos.h svr4.h linux.h i386/linux.h i386/moss.h"
tmake_file=t-libc-ok
gnu_ld=yes
gas=yes
@ -1275,23 +1276,23 @@ i[34567]86-moss-msdos* | i[34567]86-*-moss*)
i[34567]86-*-lynxos*)
if test x$gas = xyes
then
tm_file=i386/lynx.h
tm_file="${tm_file} i386/unix.h i386/bsd.h i386/gas.h i386/gstabs.h lynx.h i386/lynx.h"
else
tm_file=i386/lynx-ng.h
tm_file="${tm_file} i386/unix.h i386/bsd.h i386/gas.h i386/gstabs.h lynx-ng.h i386/lynx-ng.h"
fi
;;
i[34567]86-*-mach*)
tm_file=i386/mach.h
tm_file="${tm_file} i386/unix.h i386/bsd.h i386/gas.h i386/gstabs.h i386/mach.h"
# tmake_file=t-libc-ok
use_collect2=yes
;;
i[34567]86-*-osfrose*) # 386 using OSF/rose
if test x$elf = xyes
then
tm_file=i386/osfelf.h
tm_file="${tm_file} halfpic.h i386/unix.h i386/bsd.h i386/gas.h i386/gstabs.h i386/osfrose.h i386/osfelf.h"
use_collect2=
else
tm_file=i386/osfrose.h
tm_file="${tm_file} halfpic.h i386/unix.h i386/bsd.h i386/gas.h i386/gstabs.h i386/osfrose.h"
use_collect2=yes
fi
tmake_file=i386/t-osf
@ -1299,7 +1300,7 @@ i[34567]86-*-osfrose*) # 386 using OSF/rose
;;
i[34567]86-go32-rtems*)
xm_defines=POSIX
tm_file="i386/djgpp.h i386/djgpp-rtems.h rtems.h"
tm_file="dbxcoff.h ${tm_file} i386/djgpp.h i386/djgpp-rtems.h rtems.h"
tmake_file=t-rtems
if test x$enable_threads = xyes; then
thread_file='rtems'
@ -1307,7 +1308,7 @@ i[34567]86-go32-rtems*)
;;
i[34567]86-*-rtemscoff*)
xm_defines=POSIX
tm_file="i386/i386-coff.h i386/rtems.h rtems.h"
tm_file="${tm_file} i386/unix.h i386/bsd.h i386/gas.h dbxcoff.h i386/i386-coff.h i386/rtems.h rtems.h"
tmake_file=t-rtems
if test x$enable_threads = xyes; then
thread_file='rtems'
@ -1315,7 +1316,7 @@ i[34567]86-*-rtemscoff*)
;;
i[34567]86-*-rtems*|i[34567]86-*-rtemself*)
xm_defines=POSIX
tm_file="${tm_file} i386/att.h dbxelf.h elfos.h i386/i386elf.h i386/rtemself.h rtems.h"
tm_file="${tm_file} i386/unix.h i386/att.h dbxelf.h elfos.h i386/i386elf.h i386/rtemself.h rtems.h"
extra_parts="crtbegin.o crtend.o crti.o crtn.o"
tmake_file="i386/t-rtems-i386 i386/t-crtstuff t-rtems"
if test x$enable_threads = xyes; then
@ -1325,7 +1326,7 @@ i[34567]86-*-rtems*|i[34567]86-*-rtemself*)
i[34567]86-*-sco3.2v5*) # 80386 running SCO Open Server 5
xm_defines=POSIX
install_headers_dir=install-headers-cpio
tm_file=i386/sco5.h
tm_file="${tm_file} i386/unix.h i386/att.h i386/sco5.h"
if test x$gas = xyes
then
tm_file="usegas.h ${tm_file}"
@ -1337,7 +1338,7 @@ i[34567]86-*-sco3.2v5*) # 80386 running SCO Open Server 5
;;
i[34567]86-*-solaris2*)
xm_defines="POSIX SMALL_ARG_MAX"
tm_file="${tm_file} i386/att.h dbxelf.h elfos.h svr4.h i386/sysv4.h i386/sol2.h"
tm_file="${tm_file} i386/unix.h i386/att.h dbxelf.h elfos.h svr4.h i386/sysv4.h i386/sol2.h"
if test x$gas = xyes; then
tm_file="i386/sol2gas.h ${tm_file}"
fi
@ -1364,7 +1365,7 @@ i[34567]86-*-solaris2*)
;;
i[34567]86-*-sysv5*) # Intel x86 on System V Release 5
xm_defines=POSIX
tm_file="${tm_file} i386/att.h dbxelf.h elfos.h svr4.h i386/sysv4.h i386/sysv5.h"
tm_file="${tm_file} i386/unix.h i386/att.h dbxelf.h elfos.h svr4.h i386/sysv4.h i386/sysv5.h"
if test x$stabs = xyes
then
tm_file="${tm_file} dbx.h"
@ -1377,7 +1378,7 @@ i[34567]86-*-sysv5*) # Intel x86 on System V Release 5
;;
i[34567]86-*-sysv4*) # Intel 80386's running system V.4
xm_defines="POSIX SMALL_ARG_MAX"
tm_file="${tm_file} i386/att.h dbxelf.h elfos.h svr4.h i386/sysv4.h"
tm_file="${tm_file} i386/unix.h i386/att.h dbxelf.h elfos.h svr4.h i386/sysv4.h"
if test x$stabs = xyes
then
tm_file="${tm_file} dbx.h"
@ -1387,7 +1388,7 @@ i[34567]86-*-sysv4*) # Intel 80386's running system V.4
;;
i[34567]86-*-udk*) # Intel x86 on SCO UW/OSR5 Dev Kit
xm_defines=POSIX
tm_file="${tm_file} i386/att.h dbxelf.h elfos.h svr4.h i386/sysv4.h i386/sysv5.h i386/udk.h"
tm_file="${tm_file} i386/unix.h i386/att.h dbxelf.h elfos.h svr4.h i386/sysv4.h i386/sysv5.h i386/udk.h"
tmake_file="i386/t-crtpic i386/t-udk t-svr4"
extra_parts="crtbegin.o crtend.o"
install_headers_dir=install-headers-cpio
@ -1396,9 +1397,9 @@ i[34567]86-*-osf1*) # Intel 80386's running OSF/1 1.3+
xm_defines='POSIX USE_C_ALLOCA SMALL_ARG_MAX'
if test x$stabs = xyes
then
tm_file="${tm_file} i386/att.h dbxelf.h elfos.h svr4.h i386/sysv4.h i386/osf1elf.h i386/osf1elfgdb.h"
tm_file="${tm_file} i386/unix.h i386/att.h dbxelf.h elfos.h svr4.h i386/sysv4.h i386/osf1elf.h i386/osf1elfgdb.h"
else
tm_file="${tm_file} i386/att.h dbxelf.h elfos.h svr4.h i386/sysv4.h i386/osf1elf.h"
tm_file="${tm_file} i386/unix.h i386/att.h dbxelf.h elfos.h svr4.h i386/sysv4.h i386/osf1elf.h"
fi
tmake_file=i386/t-osf1elf
extra_parts="crti.o crtn.o crtbegin.o crtend.o"
@ -1409,31 +1410,31 @@ i[34567]86-*-sysv*) # Intel 80386's running system V
then
if test x$stabs = xyes
then
tm_file=i386/svr3dbx.h
tm_file="${tm_file} i386/unix.h i386/bsd.h i386/gas.h i386/svr3gas.h i386/svr3dbx.h"
tmake_file=i386/t-svr3dbx
extra_parts="svr3.ifile svr3z.rfile"
else
tm_file=i386/svr3gas.h
tm_file="${tm_file} i386/unix.h i386/bsd.h i386/gas.h i386/svr3gas.h"
extra_parts="crtbegin.o crtend.o"
tmake_file=i386/t-crtstuff
fi
else
tm_file=i386/sysv3.h
tm_file="${tm_file} svr3.h i386/unix.h i386/att.h i386/sysv3.h"
extra_parts="crtbegin.o crtend.o"
tmake_file=i386/t-crtstuff
fi
tmake_file="$tmake_file i386/t-crtpic"
;;
i386-*-vsta) # Intel 80386's running VSTa kernel
xm_file=i386/xm-vsta.h
tm_file=i386/vsta.h
xm_file="${tm_file} i386/unix.h i386/bsd.h i386/gas.h i386/xm-vsta.h"
tm_file="${tm_file} i386/vsta.h"
;;
i[34567]86-*-win32)
xm_defines=POSIX
xm_file=i386/xm-cygwin.h
float_format=i386
tmake_file=i386/t-cygwin
tm_file=i386/win32.h
tm_file="${tm_file} i386/win32.h"
extra_objs=winnt.o
if test x$enable_threads = xyes; then
thread_file='win32'
@ -1472,7 +1473,7 @@ i[34567]86-*-mingw32*)
esac
;;
i[34567]86-*-uwin*)
tm_file=i386/uwin.h
tm_file="i386/cygwin.h i386/uwin.h"
tmake_file="i386/t-cygwin i386/t-uwin"
extra_objs=winnt.o
if test x$enable_threads = xyes; then
@ -1481,7 +1482,7 @@ i[34567]86-*-uwin*)
exeext=.exe
;;
i[34567]86-*-interix3*)
tm_file="i386/i386-interix.h i386/i386-interix3.h interix.h interix3.h"
tm_file="${tm_file} i386/unix.h i386/bsd.h i386/gas.h i386/i386-interix.h i386/i386-interix3.h interix.h interix3.h"
xm_file="i386/xm-i386-interix.h"
xm_defines=POSIX
tmake_file="t-interix i386/t-interix"
@ -1495,7 +1496,7 @@ i[34567]86-*-interix3*)
fi
;;
i[34567]86-*-interix*)
tm_file="i386/i386-interix.h interix.h"
tm_file="${tm_file} i386/unix.h i386/bsd.h i386/gas.h i386/i386-interix.h interix.h"
xm_file="i386/xm-i386-interix.h"
xm_defines=POSIX
tmake_file="t-interix i386/t-interix"
@ -1509,7 +1510,7 @@ i[34567]86-*-interix*)
;;
i[34567]86-dg-dgux*)
xm_defines=POSIX
tm_file="${tm_file} i386/att.h dbxelf.h elfos.h svr4.h i386/sysv4.h i386/dgux.h"
tm_file="${tm_file} i386/unix.h i386/att.h dbxelf.h elfos.h svr4.h i386/sysv4.h i386/dgux.h"
tmake_file=i386/t-dgux
install_headers_dir=install-headers-cpio
;;
@ -3017,7 +3018,7 @@ sparc-*-chorusos*)
;;
sparc-*-elf*)
tm_file="${tm_file} dbxelf.h elfos.h svr4.h sparc/sysv4.h sparc/sol2.h sparc/elf.h"
tmake_file=sparc/t-elf
tmake_file="sparc/t-elf sparc/t-crtfm"
extra_parts="crti.o crtn.o crtbegin.o crtend.o"
#float_format=i128
float_format=i64
@ -3028,14 +3029,14 @@ sparc-*-linux*aout*) # Sparc's running GNU/Linux, a.out
;;
sparc-*-linux*libc1*) # Sparc's running GNU/Linux, libc5
tm_file="${tm_file} dbxelf.h elfos.h svr4.h sparc/sysv4.h sparc/linux.h"
tmake_file="t-slibgcc-elf-ver t-linux t-linux-gnulibc1"
tmake_file="t-slibgcc-elf-ver t-linux t-linux-gnulibc1 sparc/t-crtfm"
extra_parts="crtbegin.o crtbeginS.o crtend.o crtendS.o"
gnu_ld=yes
float_format=sparc
;;
sparc-*-linux*) # Sparc's running GNU/Linux, libc6
tm_file="${tm_file} dbxelf.h elfos.h svr4.h sparc/sysv4.h sparc/linux.h"
tmake_file="t-slibgcc-elf-ver t-linux"
tmake_file="t-slibgcc-elf-ver t-linux sparc/t-crtfm"
extra_parts="crtbegin.o crtbeginS.o crtbeginT.o crtend.o crtendS.o"
gnu_ld=yes
if test x$enable_threads = xyes; then
@ -3079,7 +3080,7 @@ sparcv9-*-solaris2* | sparc64-*-solaris2*)
tm_file=sparc/sol2-sld-64.h
fi
xm_defines=POSIX
tmake_file="sparc/t-sol2 sparc/t-sol2-64"
tmake_file="sparc/t-sol2 sparc/t-sol2-64 sparc/t-crtfm"
if test x$gnu_ld = xyes; then
tmake_file="$tmake_file t-slibgcc-elf-ver"
else
@ -3104,7 +3105,7 @@ sparcv9-*-solaris2* | sparc64-*-solaris2*)
sparc-hal-solaris2*)
xm_defines=POSIX
tm_file="${tm_file} dbxelf.h elfos.h svr4.h sparc/sysv4.h sparc/sol2.h sparc/hal.h"
tmake_file="sparc/t-halos sparc/t-sol2"
tmake_file="sparc/t-halos sparc/t-sol2 sparc/t-crtfm"
if test x$gnu_ld = xyes; then
tmake_file="$tmake_file t-slibgcc-elf-ver"
else
@ -3129,7 +3130,7 @@ sparc-*-solaris2*)
tm_file="${tm_file} dbxelf.h elfos.h svr4.h sparc/sysv4.h sparc/sol2.h sparc/sol2-sld.h"
fi
xm_defines=POSIX
tmake_file=sparc/t-sol2
tmake_file="sparc/t-sol2 sparc/t-crtfm"
if test x$gnu_ld = xyes; then
tmake_file="$tmake_file t-slibgcc-elf-ver"
else

View File

@ -26,7 +26,9 @@ Boston, MA 02111-1307, USA. */
#define STARTFILE_SPEC "crt0.o%s crti.o%s crtbegin.o%s"
#undef ENDFILE_SPEC
#define ENDFILE_SPEC "crtend.o%s crtn.o%s"
#define ENDFILE_SPEC \
"%{ffast-math|funsafe-math-optimizations:crtfastmath.o%s} \
crtend.o%s crtn.o%s"
/* Use the default. */
#undef LINK_SPEC

View File

@ -62,7 +62,8 @@ Boston, MA 02111-1307, USA. */
#undef ENDFILE_SPEC
#define ENDFILE_SPEC \
"%{!shared:crtend.o%s} %{shared:crtendS.o%s} crtn.o%s"
"%{ffast-math|funsafe-math-optimizations:crtfastmath.o%s} \
%{!shared:crtend.o%s} %{shared:crtendS.o%s} crtn.o%s"
/* This is for -profile to use -lc_p instead of -lc. */
#undef CC1_SPEC

View File

@ -102,23 +102,28 @@ Boston, MA 02111-1307, USA. */
#define ENDFILE_SPEC64 \
"%{!shared:crtend.o%s} %{shared:crtendS.o%s} /usr/lib64/crtn.o%s"
#define ENDFILE_SPEC_COMMON \
"%{ffast-math|funsafe-math-optimizations:crtfastmath.o%s}"
#ifdef SPARC_BI_ARCH
#if DEFAULT_ARCH32_P
#define ENDFILE_SPEC "\
%{m32:" ENDFILE_SPEC32 "} \
%{m64:" ENDFILE_SPEC64 "} \
%{!m32:%{!m64:" ENDFILE_SPEC32 "}}"
%{!m32:%{!m64:" ENDFILE_SPEC32 "}} " \
ENDFILE_SPEC_COMMON
#else
#define ENDFILE_SPEC "\
%{m32:" ENDFILE_SPEC32 "} \
%{m64:" ENDFILE_SPEC64 "} \
%{!m32:%{!m64:" ENDFILE_SPEC64 "}}"
%{!m32:%{!m64:" ENDFILE_SPEC64 "}} " \
ENDFILE_SPEC_COMMON
#endif
#else
#define ENDFILE_SPEC ENDFILE_SPEC64
#define ENDFILE_SPEC ENDFILE_SPEC64 " " ENDFILE_SPEC_COMMON
#endif

View File

@ -162,7 +162,9 @@ Boston, MA 02111-1307, USA. */
%{p|pg:-ldl} -lc}}"
#undef ENDFILE_SPEC
#define ENDFILE_SPEC "crtend.o%s crtn.o%s"
#define ENDFILE_SPEC \
"%{ffast-math|funsafe-math-optimizations:crtfastmath.o%s} \
crtend.o%s crtn.o%s"
/* This should be the same as in svr4.h, except with -R added. */
#undef LINK_SPEC

View File

@ -71,7 +71,9 @@ crtbegin.o%s \
"
#undef ENDFILE_SPEC
#define ENDFILE_SPEC "crtend.o%s"
#define ENDFILE_SPEC \
"%{ffast-math|funsafe-math-optimizations:crtfastmath.o%s} \
crtend.o%s"
/* Use the default (for now). */
#undef LIB_SPEC