This is the mail archive of the
gcc-patches@gcc.gnu.org
mailing list for the GCC project.
Re: [m68k] Fix PR target/13292: -msoft-float seems to corrupt builtindefines
- From: Bernardo Innocenti <bernie at develer dot com>
- To: Gunther Nikl <gni at gecko dot de>
- Cc: GCC Patches <gcc-patches at gcc dot gnu dot org>
- Date: Tue, 15 Jun 2004 14:21:34 +0200
- Subject: Re: [m68k] Fix PR target/13292: -msoft-float seems to corrupt builtindefines
- Organization: Develer S.r.l.
- References: <40CA6D0B.1080908@develer.com> <20040615120525.GA19257@lorien.int.gecko.de>
Gunther Nikl wrote:
On Sat, Jun 12, 2004 at 04:40:11AM +0200, Bernardo Innocenti wrote:
The -msoft-float option incorrectly removed MASK_68040_ONLY
in addition to MASK_68881. This leads to incorrect
predefines and unwanted degradation of integer code.
There was just one place where we were using
TARGET_68040_ONLY to generate a floating-point
instruction without taking TARGET_68881 into account.
Tested on m68k-unknown-uclinux by comparing assembly
output of some selected testcases from gcc.c-torture.
OK for mainline? 3_4-branch?
Shouldn't this go to the 3.3 branch as well?
I clearly remember posting the patch to reorganize
the m68k predefines during the 3.4 timeframe.
Before that patch, we had that mess with CPP_SPEC
which used to set all of the __m680x0__ predefines
even in the 68040 case, which was inappropriate but
consistent with previous versions of GCC.
I'd not change 3.3.4 to the new 3.4 semantics
because it would be quite a large change which
has the potential to break old code relying on
our former misbehavior.
--
// Bernardo Innocenti - Develer S.r.l., R&D dept.
\X/ http://www.develer.com/