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