This is the mail archive of the
gcc@gcc.gnu.org
mailing list for the GCC project.
GNU GCC 68k floating point problem (fwd)
- To: egcs at cygnus dot com
- Subject: GNU GCC 68k floating point problem (fwd)
- From: jlarmour at cygnus dot co dot uk (Jonathan Larmour)
- Date: Tue, 12 Jan 1999 15:56:40 GMT
- Newsgroups: comp.arch.embedded
- Organization: Cygnus Solutions Ltd, UK
- References: <369a4baa.731269@news.demon.nl>
Here's a comment from comp.arch.embedded which some 68K fan may want
to investigate.
Jifl
------- start of forwarded message -------
From: Eric Doenges <doenges@lpr.e-technik.tu-muenchen.de>
Newsgroups: comp.arch.embedded
Subject: Re: GNU GCC 68k floating point problem
Date: 12 Jan 99 08:31:39 GMT
arjan.koers@nospam.demon.nl (Arjan Koers) writes:
>I am building a library with functions for an existing embedded 68340
>system. The library can be loaded into memory and the functions can
>then be called. I am using Gnu GCC for the 68k under DOS.
>My problem is that functions that use floating point crash the system.
>Even if I only use fp inside my functions and don't return fp results
>or pass fp arguments. int types are handled correctly.
Are you using the correct gcc-lib ? I had the problem that our
installation of gcc for 68k (on Linux) uses the version of the gcc-lib for
the 68020 by default. The floating point code makes use of the 68020's
bitfield instructions, which the 68332 (our target processor)
unfortunately does not have. If a floating point routine was called, the
processor would then crash with an illegal instruction. I suspect you are
having the same problem. We solved it by deleting the gcc-lib from it's
default place (..lib/gcc-lib/m68k-coff/egcs-2.91.57) and replacing it with
a symlink to the correct version. An ugly hack, but we couldn't figure out
how to change the gcc .specs file to link with the correct gcc-lib
depending on the processor type chosen.
--
Eric Doenges
EMail:<Doenges@lpr.ei.tum.de>
"You don't have to swim faster than the shark,
just faster than the guy next to you" - anonymous
------- end of forwarded message -------