Re: gcc/mfidoa again, or binutils?
On Mon, 1 Nov 2010, Thorsten Glaser wrote:
> I believe this may be a bug in our binutils:
Also binutils 18.104.22.16801024.
> root@ara2:~ # cat >x.s
> fmove.l %d1, %fpcr
> root@ara2:~ # as x.s
> root@ara2:~ # as x.s -mfidoa
> x.s: Assembler messages:
> x.s:2: Error: invalid instruction for this architecture; needs 68020 [68k, 68ec020], 68030 [68ec030], 68040 [68ec040], 68060 [68ec060], cpu32 [68330, 68331, 68332, 68333, 68334, 68336, 68340, 68341, 68349, 68360], 547x [5470, 5471, 5472, 5473, 5474, 5475], 548x [5480, 5481, 5482, 5483, 5484, 5485] -- statement move.l %d1,%fpcr' ignored
> Is it possible as thinks -mfidoa has no FPU? Andreas? Kazu?
$ m68k-linux-gnu-as x.s -mcpu32
Fido is supposed to be compatible with CPU32. With no FPU, the
unimplemented F-line instruction exception is available (says the Motorola
CPU32 Reference Manual on page 6-9).
Grep found this in gas/m68k/all.exp:
./gas/testsuite/ChangeLog-2007: * gas/m68k/all.exp: Skip fmoveml on fido.
Which comes from this patch:
I don't know why binutils treats fido and cpu32 differently in this case.
> This would explain the gcc-4.4 build aborting in libfortran for the
> mfidoa multilib/multiarch…
> Thanks in advance,