Port-amiga archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

Re: NetBSD 7 m68060-only kernel



On Sun, 18 Jan 2015 01:06:38 +0000 (UTC)
John Klos <john%ziaspace.com@localhost> wrote:

> --- a2kbbc.o ---
> /var/tmp//ccpVrF1Q.s: Assembler messages:
> /var/tmp//ccpVrF1Q.s:11: Error: selected processor does not have all 
> features of selected architecture
> *** [a2kbbc.o] Error code 1
> 
> Adding option M68040, M68030, or M68020 fixes this. However, the rest of 
> userland may benefit noticeably from -m68060. While running postinstall,
> I was seeing 60intemu counts in the 10 to 11 thousands per second.

I couldn't reproduce any problems building the kernel with only M68060 and
M060SP. Neither with current nor 7.0.


> The OS can't be built with -m68060:
> 
> /usr/src/../tools/bin/m68k--netbsdelf-gcc -nodefaultlibs -Wl,-x -shared 
> -Wl,-soname,libgcc_s.so.1 -Wl,--warn-shared-textrel 
> -Wl,-Map=libgcc_s.so.1.map   --sysroot=/usr/src/../dest-amiga 
> -nodefaultlibs 
> -Wl,--version-script=/usr/src/../obj-amiga/external/gpl3/gcc/lib/libgcc/libgcc_s/libgcc.map 
> -o libgcc_s.so.1.0  -Wl,-rpath,/lib  -L=/lib  -Wl,--whole-archive 
> libgcc_s_pic.a  -Wl,--no-whole-archive
> libgcc_s_pic.a(_float.pico):(.text+0x8): relocation truncated to fit: 
> R_68K_PC16 against symbol `$_exception_handler' defined in .text section 
> in libgcc_s_pic.a(_floatex.pico)
> (et cetera)

I ran into the same problem when compiling userland with "DBG=-g". Seems
like libgcc becomes too big for 16-bit branch instruction.

The following patch fixes that in current (and probably 7.0 as well, but
untested):

--- ./external/gpl3/gcc.old/dist/gcc/config/m68k/lb1sf68.asm    25 Feb 2014 18:39:01 -0000      1.1.1.1
+++ ./external/gpl3/gcc.old/dist/gcc/config/m68k/lb1sf68.asm    24 Jan 2015 19:51:03 -0000
@@ -217,7 +217,7 @@
        lea     \addr-.-8,a0
        jmp     pc@(a0)
 #elif defined(__NetBSD__)
-       bra     \addr@PLTPC
+       jbra    \addr@PLTPC
 #else
        bra     \addr
 #endif


-- 
Frank Wille


Home | Main Index | Thread Index | Old Index