200x-xx-xx Nathan Sidwell <nathan@codesourcery.com>

gcc/
200x-xx-xx  Nathan Sidwell  <nathan@codesourcery.com>

	* config.gcc (m68k-*-aout*, m68k-*-coff*, m68020-*-elf*, m68k-*-elf*)
	(m68k-*-uclinuxoldabi, m68k-*-uclinux*, m68k-*-rtems*): Add t-floatlib
	to $tmake_file.
	* config/m68k/t-floatlib: New file, extracting common code from...
	* config/m68k/t-m68kbare, config/m68k/t-m68kelf,
	* config/m68k/t-uclinux: Here.
	* config/m68k/fpgnulib.c: Do not compile extendeed precision
	routines on ColdFire targets.

From-SVN: r120917
This commit is contained in:
Nathan Sidwell 2007-01-18 19:29:48 +00:00 committed by Richard Sandiford
parent a96533d5e5
commit 47b41fa34a
7 changed files with 35 additions and 48 deletions

View file

@ -1,3 +1,14 @@
2007-01-18 Nathan Sidwell <nathan@codesourcery.com>
* config.gcc (m68k-*-aout*, m68k-*-coff*, m68020-*-elf*, m68k-*-elf*)
(m68k-*-uclinuxoldabi, m68k-*-uclinux*, m68k-*-rtems*): Add t-floatlib
to $tmake_file.
* config/m68k/t-floatlib: New file, extracting common code from...
* config/m68k/t-m68kbare, config/m68k/t-m68kelf,
* config/m68k/t-uclinux: Here.
* config/m68k/fpgnulib.c: Do not compile extendeed precision
routines on ColdFire targets.
2007-01-18 Nathan Sidwell <nathan@codesourcery.com>
* config.gcc (m68k-*-aout*, m68k-*-coff*, m68020-*-elf*, m68k-*-elf*)

View file

@ -1479,12 +1479,12 @@ m68hc12-*-*|m6812-*-*)
;;
m68k-*-aout*)
default_m68k_cpu=68020
tmake_file=m68k/t-m68kbare
tmake_file="m68k/t-floatlib m68k/t-m68kbare"
tm_file="${tm_file} m68k/m68k-none.h m68k/m68kemb.h m68k/m68k-aout.h libgloss.h"
;;
m68k-*-coff*)
default_m68k_cpu=68020
tmake_file=m68k/t-m68kbare
tmake_file="m68k/t-floatlib m68k/t-m68kbare"
tm_defines="${tm_defines} MOTOROLA=1 USE_GAS"
tm_file="${tm_file} m68k/m68k-none.h m68k/m68kemb.h dbxcoff.h m68k/coff.h dbx.h"
use_fixproto=yes
@ -1493,7 +1493,7 @@ m68020-*-elf* | m68k-*-elf*)
default_m68k_cpu=68020
tm_file="${tm_file} m68k/m68k-none.h m68k/m68kelf.h dbxelf.h elfos.h m68k/m68kemb.h m68k/m68020-elf.h"
tm_defines="${tm_defines} MOTOROLA=1 USE_GAS"
tmake_file=m68k/t-m68kelf
tmake_file="m68k/t-floatlib m68k/t-m68kelf"
extra_parts="crtbegin.o crtend.o"
;;
m68010-*-netbsdelf* | m68k*-*-netbsdelf*)
@ -1516,7 +1516,7 @@ m68k-*-uclinuxoldabi*) # Motorola m68k/ColdFire running uClinux
default_m68k_cpu=68020
tm_file="${tm_file} m68k/m68k-none.h m68k/m68kelf.h dbxelf.h elfos.h m68k/uclinux-oldabi.h"
tm_defines="${tm_defines} MOTOROLA=1 USE_GAS"
tmake_file=m68k/t-uclinux
tmake_file="m68k/t-floatlib m68k/t-uclinux"
use_fixproto=no
;;
m68k-*-uclinux*) # Motorola m68k/ColdFire running uClinux
@ -1526,7 +1526,7 @@ m68k-*-uclinux*) # Motorola m68k/ColdFire running uClinux
tm_file="${tm_file} dbxelf.h elfos.h svr4.h linux.h flat.h m68k/linux.h m68k/uclinux.h"
tm_defines="${tm_defines} MOTOROLA=1 USE_GAS UCLIBC_DEFAULT=1"
extra_options="${extra_options} linux.opt"
tmake_file=m68k/t-uclinux
tmake_file="m68k/t-floatlib m68k/t-uclinux"
use_fixproto=no
;;
m68k-*-linux*) # Motorola m68k's running GNU/Linux
@ -1544,7 +1544,7 @@ m68k-*-linux*) # Motorola m68k's running GNU/Linux
;;
m68k-*-rtems*)
default_m68k_cpu=68020
tmake_file="m68k/t-m68kbare m68k/t-crtstuff t-rtems m68k/t-rtems"
tmake_file="m68k/t-floatlib m68k/t-m68kbare m68k/t-crtstuff t-rtems m68k/t-rtems"
tm_file="${tm_file} m68k/m68k-none.h m68k/m68kelf.h dbxelf.h elfos.h m68k/m68kemb.h m68k/m68020-elf.h m68k/rtemself.h rtems.h"
tm_defines="${tm_defines} MOTOROLA=1 USE_GAS"
extra_parts="crtbegin.o crtend.o"

View file

@ -361,6 +361,10 @@ __fixsfsi (float a1)
#else /* EXTFLOAT */
/* We do not need these routines for coldfire, as it has no extended
float format. */
#if !defined (__mcoldfire__)
/* Primitive extended precision floating point support.
We assume all numbers are normalized, don't do any rounding, etc. */
@ -569,4 +573,5 @@ __gexf2 (long double x1, long double x2)
return __cmpdf2 ((double) x1, (double) x2);
}
#endif /* !__mcoldfire__ */
#endif /* EXTFLOAT */

View file

@ -0,0 +1,13 @@
LIB1ASMSRC = m68k/lb1sf68.asm
LIB1ASMFUNCS = _mulsi3 _udivsi3 _divsi3 _umodsi3 _modsi3 \
_double _float _floatex \
_eqdf2 _nedf2 _gtdf2 _gedf2 _ltdf2 _ledf2 \
_eqsf2 _nesf2 _gtsf2 _gesf2 _ltsf2 _lesf2
LIB2FUNCS_EXTRA = fpgnulib.c xfgnulib.c
fpgnulib.c: $(srcdir)/config/m68k/fpgnulib.c
cp $(srcdir)/config/m68k/fpgnulib.c fpgnulib.c
xfgnulib.c: $(srcdir)/config/m68k/fpgnulib.c
echo '#define EXTFLOAT' > xfgnulib.c
cat $(srcdir)/config/m68k/fpgnulib.c >> xfgnulib.c

View file

@ -1,17 +1,3 @@
LIB1ASMSRC = m68k/lb1sf68.asm
LIB1ASMFUNCS = _mulsi3 _udivsi3 _divsi3 _umodsi3 _modsi3 \
_double _float _floatex \
_eqdf2 _nedf2 _gtdf2 _gedf2 _ltdf2 _ledf2 \
_eqsf2 _nesf2 _gtsf2 _gesf2 _ltsf2 _lesf2
LIB2FUNCS_EXTRA = fpgnulib.c xfgnulib.c
fpgnulib.c: $(srcdir)/config/m68k/fpgnulib.c
cp $(srcdir)/config/m68k/fpgnulib.c fpgnulib.c
xfgnulib.c: $(srcdir)/config/m68k/fpgnulib.c
echo '#define EXTFLOAT' > xfgnulib.c
cat $(srcdir)/config/m68k/fpgnulib.c >> xfgnulib.c
MULTILIB_OPTIONS = m68000/m68020/m5200/mcpu32/m68040/m68060 m68881/msoft-float
MULTILIB_DIRNAMES =
MULTILIB_MATCHES = m68000=mc68000 m68000=m68302 mcpu32=m68332 m68020=mc68020

View file

@ -1,17 +1,3 @@
LIB1ASMSRC = m68k/lb1sf68.asm
LIB1ASMFUNCS = _mulsi3 _udivsi3 _divsi3 _umodsi3 _modsi3 \
_double _float _floatex \
_eqdf2 _nedf2 _gtdf2 _gedf2 _ltdf2 _ledf2 \
_eqsf2 _nesf2 _gtsf2 _gesf2 _ltsf2 _lesf2
LIB2FUNCS_EXTRA = fpgnulib.c xfgnulib.c
fpgnulib.c: $(srcdir)/config/m68k/fpgnulib.c
cp $(srcdir)/config/m68k/fpgnulib.c fpgnulib.c
xfgnulib.c: $(srcdir)/config/m68k/fpgnulib.c
echo '#define EXTFLOAT' > xfgnulib.c
cat $(srcdir)/config/m68k/fpgnulib.c >> xfgnulib.c
MULTILIB_OPTIONS = m68000/m68020/m5200/m5206e/m528x/m5307/m5407/mcfv4e/mcpu32/m68040/m68060 m68881/msoft-float
MULTILIB_DIRNAMES =
MULTILIB_MATCHES = m68000=mc68000 m68000=m68302 mcpu32=m68332 m68020=mc68020 m5206e=m5272

View file

@ -1,20 +1,6 @@
# crti and crtn are provided by uClibc.
EXTRA_MULTILIB_PARTS=crtbegin.o crtend.o
LIB1ASMSRC = m68k/lb1sf68.asm
LIB1ASMFUNCS = _mulsi3 _udivsi3 _divsi3 _umodsi3 _modsi3 \
_double _float _floatex \
_eqdf2 _nedf2 _gtdf2 _gedf2 _ltdf2 _ledf2 \
_eqsf2 _nesf2 _gtsf2 _gesf2 _ltsf2 _lesf2
LIB2FUNCS_EXTRA = fpgnulib.c xfgnulib.c
fpgnulib.c: $(srcdir)/config/m68k/fpgnulib.c
cp $(srcdir)/config/m68k/fpgnulib.c fpgnulib.c
xfgnulib.c: $(srcdir)/config/m68k/fpgnulib.c
echo '#define EXTFLOAT' > xfgnulib.c
cat $(srcdir)/config/m68k/fpgnulib.c >> xfgnulib.c
MULTILIB_OPTIONS = m68000/m5200/m5206e/m528x/m5307/m5407/mcpu32 msep-data/mid-shared-library
MULTILIB_DIRNAMES =
MULTILIB_MATCHES = m68000=mc68000 m68000=m68302 mcpu32=m68332 m5206e=m5272