compile error on moby with newly gcc 3.3.1
Jens Rehsack
rehsack at liwing.de
Mon Jul 14 14:48:56 PDT 2003
Hi,
I tried to update a machine which will become a webserver in
near future. I received following error in buildkernel:
[...]
cc -c -O -pipe -march=pentium4 -Wall \
-Wredundant-decls -Wnested-externs -Wstrict-prototypes \
-Wmissing-prototypes -Wpointer-arith -Winline \
-Wcast-qual-fformat-extensions -std=c99 -nostdinc \
-I- -I. -I/usr/src/sys -I/usr/src/sys/dev \
-I/usr/src/sys/contrib/dev/acpica \
-I/usr/src/sys/contrib/ipfilter \
-I/usr/src/sys/contrib/dev/ath \
-I/usr/src/sys/contrib/dev/ath/freebsd -D_KERNEL \
-include opt_global.h -fno-common \
-mno-align-long-strings \
-mpreferred-stack-boundary=2 -ffreestanding \
/usr/src/sys/dev/ata/ata-all.c
{standard input}: Assembler messages:
{standard input}:7652: Error: invalid character '_' in mnemonic
*** Error code 1
Stop in /usr/obj/usr/src/sys/MOBY.
*** Error code 1
Stop in /usr/src.
*** Error code 1
Stop in /usr/src.
The lines around the location are:
ata_enclosure_status:
pushl %ebp
movl %esp, %ebp
pushl %edi
pushl %esi
pushl %ebx
subl $24, %esp
movl 8(%ebp), %edi
movl $6, -16(%ebp)
testb $8, 20(%edi)
ds ; je .L2817
movl (%edi), %eax
movl $1, 4(%esp)
movl %eax, (%esp)
call *248(%eax)
movl (%edi), %ecx
movl $0, %eax
movl $128, %edx
#APP
lock ; cmpxchgl %edx,244(%ecx) ;
setz %al ; movzbl %al,%eax ; 1: #
atomic_cmpset_int
#NO_APP
testl %eax, %eax
jne .L2830
movl $0, %esi
movl $128, %ebx
.L2822:
The line 7652 is the "#NO_APP". I must blame myself and say, that I
don't know where #NO_APP stands for, so I don't have any idea where the
error comes from nor how it could be fixed.
The error doesn't appear compiling the file using -march=pentium3, where
the begin of "ata_enclosure_status" looks like:
ata_enclosure_status:
pushl %ebp
movl %esp, %ebp
pushl %edi
pushl %esi
pushl %ebx
subl $24, %esp
movl 8(%ebp), %edi
movl $6, -16(%ebp)
testb $8, 20(%edi)
je .L2817
movl (%edi), %eax
movl $1, 4(%esp)
movl %eax, (%esp)
call *248(%eax)
movl (%edi), %ecx
movl $0, %eax
movl $128, %edx
#APP
lock ; cmpxchgl %edx,244(%ecx) ;
setz %al ; movzbl %al,%eax ; 1: #
atomic_cmpset_int
#NO_APP
testl %eax, %eax
jne .L2830
movl $0, %esi
movl $128, %ebx
.p2align 4,,15
.L2822:
Does anyone know what's going on here?
Regards,
Jens
More information about the freebsd-current
mailing list