Subject: Compiling kernel with GCC 3.0.4
To: None <port-macppc@NetBSD.ORG>
From: Jeff Laughlin <jlaughli@vtc.edu>
List: port-macppc
Date: 03/09/2002 02:44:37
Howdy,
Well after playing some games I was able to get the newest version of GCC,
3.0.4, compiled and installed on my NetBSD 1.5.2 box. I wanted to recompile
the kernel with it, because from what I've read the PPC optimization in GCC
2.91 (the newest version that officially works with NetBSD PPC) is pretty
piss poor.
So I started compiling. As could be expected, I ran into many minor
problems compiling, most of which were easily fixed by a quick visit to the
CVS pages and changing a couple of lines here and there in the kernel
source. But then I hit a dead end...
/usr/local/gcc3/bin/gcc -O2 -pipe -fno-builtin -Wno-uninitialized
-msoft-float -I. -I../../../../arch -I../../../.. -nostdinc -DDIAGNOSTIC
-DTRAP_PANICWAIT -DNMBCLUSTERS="0x200" -DMAXUSERS=32 -D_KERNEL -Dmacppc
-fno-builtin -c ../../../../kern/kern_kthread.c
./../../../kern/kern_kthread.c: In function `kthread_create1':
./../../../kern/kern_kthread.c:88: __builtin_saveregs not supported by
this target
*** Error code 1
Stop.
Now I can't find any official information on this, but from browsing the
GCC developer's list I think I've gleaned an understanding of the problem.
I THINK that the __builtin_saveregs function has been broken on GCC PPC
since 2.95 or something. It sounded like they were working on it, but I
didn't see any messages related to it that were newer than 1999.
So, can anyone offer any advice? Should I give up? Does anyone know if GCC
will have this fixed at some point? If not, can we find a workaround or our
own fix?
-Jeff