Subject: Building 1.6-current on 1.5.2 fails for bios32.c
To: None <current-users@netbsd.org>
From: Gary Thorpe <gathorpe79@yahoo.com>
List: current-users
Date: 09/02/2002 15:36:38
Hi,

I am trying to build a current kernel on 1.5.2. After
doing config and make depend, I try to do a make in
the compile directory. I get the following error:

%/usr/devel/src/tools/obj.i386/tools.NetBSD-1.5.2-i386/bin/nbmake
       cc  -ffreestanding  -O2 -Werror -Wall -Wno-main
-Wno-format-zero-length -Wpointer-arith
-Wmissing-prototypes -Wstrict-prototypes
-Wno-uninitialized  -Di386 -I.  -I../../../../arch
-I../../../.. -nostdinc -DDIAGNOSTIC -DDEBUG
-DMAXUSERS=32 -D_KERNEL -D_KERNEL_OPT   -c
/usr/devel/src/sys/arch/i386/compile/KERNEL/../../../../arch/i386/i386/bios32.c
/tmp/cccWxUzh.s: Assembler messages:
/tmp/cccWxUzh.s:116: Error: operands given don't match
any known 386 instruction
*** Error code 1

Stop.
nbmake: stopped in
/usr/devel/src/sys/arch/i386/compile/KERNEL

I got the assembler output and this is the relvant
line:

#APP
        lcall *(%edi)
#NO_APP

This is the diff for the file betwwen 1.5.2 and
current:

%diff /usr/src/sys/arch/i386/i386/bios32.c
/usr/devel/src/sys/arch/i386/i386/bios32.c
1c1
< /*    $NetBSD: bios32.c,v 1.2 2000/02/02 04:09:37
thorpej Exp $       */
---
> /*    $NetBSD: bios32.c,v 1.6 2002/06/26 12:20:29
drochner Exp $      */
68a69,71
> #include <sys/cdefs.h>
> __KERNEL_RCSID(0, "$NetBSD: bios32.c,v 1.6
2002/06/26 12:20:29 drochner Exp $");
>
148c151
<       __asm __volatile("lcall (%%edi)"
---
>       __asm __volatile("lcall *(%%edi)"

It seems like a one line change that messes up the
build. I am using this compiler version (1.5.2's):

%gcc --version
egcs-1.1.2

Is this something that should work or is it an error
in the code?

______________________________________________________________________ 
Post your free ad now! http://personals.yahoo.ca