non-68060 instructions in longlong.h

Ingolf Koch
Sun Apr 5 11:34:00 GMT 1998


building libgcc.a for a machine with a motorola 68060
processor (m68k-cbm-netbsd1.3), longlong.h generates
asm macros (at least) for umul_ppmm containing machine
instructions which have to be emulated on 060s. This
makes for example muldi3 terribly slow.

As I do not have knowledge about 060 instructions, I cannot
tell which one is offending or give a fix (see below). I only
see that there must be some emulation.

A reason for this could be that the specs file for
m68k-cbm-netbsd1.3 contains:

-Dunix -Dm68k -Dmc68000 -Dmc68020 -D__NetBSD__ -Asystem(unix)
-Asystem(NetBSD) -Acpu(m68k) -Amachine(m68k)

So longlong.h thinks we are compiling for a plain 68k
or 68020.

Maybe a -m68060 option to the compiler should automatically
add -Dmc68060, and longlong.h should check for this.


Ingolf Koch
FSU Jena, Institut fuer Angewandte Mathematik, 07740 Jena

More information about the Gcc-bugs mailing list