aboutsummaryrefslogtreecommitdiff
path: root/gcc
diff options
context:
space:
mode:
authorNathan Sidwell <nathan@codesourcery.com>2007-01-18 19:29:48 +0000
committerRichard Sandiford <rsandifo@gcc.gnu.org>2007-01-18 19:29:48 +0000
commit47b41fa34abeff893fb1358c8154e681e68fdddd (patch)
treec1ce496cc8ad1aab36c512fa6b5b52749444b6b7 /gcc
parenta96533d5e5ec94af81be2c74a41d8f67fb809cfe (diff)
downloadgcc-47b41fa34abeff893fb1358c8154e681e68fdddd.zip
gcc-47b41fa34abeff893fb1358c8154e681e68fdddd.tar.gz
gcc-47b41fa34abeff893fb1358c8154e681e68fdddd.tar.bz2
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
Diffstat (limited to 'gcc')
-rw-r--r--gcc/ChangeLog11
-rw-r--r--gcc/config.gcc12
-rw-r--r--gcc/config/m68k/fpgnulib.c5
-rw-r--r--gcc/config/m68k/t-floatlib13
-rw-r--r--gcc/config/m68k/t-m68kbare14
-rw-r--r--gcc/config/m68k/t-m68kelf14
-rw-r--r--gcc/config/m68k/t-uclinux14
7 files changed, 35 insertions, 48 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog
index 929686b..5a23a4a 100644
--- a/gcc/ChangeLog
+++ b/gcc/ChangeLog
@@ -1,6 +1,17 @@
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*)
(m68010-*-netbsdelf*, m68k*-*-netbsdelf*, m68k*-*-openbsd*)
(m68k-*-uclinuxoldabi, m68k-*-uclinux*, m68k-*-linux*)
(m68k-*-rtems*): Use tm_file rather than m68k/m68k.h and
diff --git a/gcc/config.gcc b/gcc/config.gcc
index 7a911ff..b55f3b5 100644
--- a/gcc/config.gcc
+++ b/gcc/config.gcc
@@ -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"
diff --git a/gcc/config/m68k/fpgnulib.c b/gcc/config/m68k/fpgnulib.c
index 1ef43c7..cbff918 100644
--- a/gcc/config/m68k/fpgnulib.c
+++ b/gcc/config/m68k/fpgnulib.c
@@ -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 */
diff --git a/gcc/config/m68k/t-floatlib b/gcc/config/m68k/t-floatlib
new file mode 100644
index 0000000..91703be
--- /dev/null
+++ b/gcc/config/m68k/t-floatlib
@@ -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
diff --git a/gcc/config/m68k/t-m68kbare b/gcc/config/m68k/t-m68kbare
index 8bb4b94..7a93d620 100644
--- a/gcc/config/m68k/t-m68kbare
+++ b/gcc/config/m68k/t-m68kbare
@@ -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
diff --git a/gcc/config/m68k/t-m68kelf b/gcc/config/m68k/t-m68kelf
index ecf738f..a88d323 100644
--- a/gcc/config/m68k/t-m68kelf
+++ b/gcc/config/m68k/t-m68kelf
@@ -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
diff --git a/gcc/config/m68k/t-uclinux b/gcc/config/m68k/t-uclinux
index 4908042..bebae9c 100644
--- a/gcc/config/m68k/t-uclinux
+++ b/gcc/config/m68k/t-uclinux
@@ -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