[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
CPU32 problems resolved.
- Date: Thu, 12 Mar 1998 18:59:13 +1100
- From: Robin.Kirkham at mlb.dmt.csiro.au (Robin Kirkham)
- Subject: CPU32 problems resolved.
Jake/Chris:
Now that I have the egcs source, I can see that the problem is not directly
related to MULTILIB_OPTIONS or any of that jazz.
The problem is that the options table in gcc/config/m68k/m68k.h is different
in egcs-1.0.2-prerelease compared to my egcs-1.0.1+patch, which worked.
I don't know how this happened: it could be an unintended side-effect of
some other patch, as I can't find anything specific in the Changelog.
Anyway, as a result -mcpu32, -m68332, or -m68302 (without -msoft-float) will
emit floating-point code. The entries for these two should include a
MASK_68881 in the target bits that are TURNED OFF. In other words, they
should say
{ "68302", - (MASK_5200|MASK_68060|MASK_68040|MASK_68040_ONLY \
|MASK_68020|MASK_BITFIELD|MASK_68881)}, \
{ "68332", - (MASK_5200|MASK_68060|MASK_68040|MASK_68040_ONLY \
|MASK_BITFIELD|MASK_68881)}, \
{ "68332", MASK_68020}, \
{ "cpu32", - (MASK_5200|MASK_68060|MASK_68040|MASK_68040_ONLY \
|MASK_BITFIELD|MASK_68881)}, \
{ "cpu32", MASK_68020}, \
The multilib arrangement assumes this. The library paths and the specs
strings are worked out on the basis of the difference between the -m options
and the default. If the default is not doing what is assumed, just about
nothing works!
This is why trying to specify -msoft-float didn't help: it would try to
use a library path lib/mcpu32/msoft-float, but since there isn't one (because
if there were, it should have been the same as just lib/mcpu32), it defaulted
to just lib/, and thus picked up m68020 libraries.
Altering MULTILIB_EXCEPTIONS to allow it to build a lib/mcpu32/msoft-float
appears to fix the problem, but for the wrong reason.
I'll change it tomorrow, test it out, and produce a patch for the egcs people
if I'm successful.
Robin Kirkham CSIRO Manufacturing Science and Technology
Project Engineer Locked Bag 9, Preston 3072, Australia
robin.kirkham at mlb.dmt.csiro.au Phone: +61 3 9662-7756 Fax: +61 3 9662-7851