Date: Wed, 23 Feb 2000 10:00:36 +0100 From: Martin Cracauer <cracauer@cons.org> To: jdp@FreeBSD.ORG Cc: jkh@FreeBSD.ORG, current@FreeBSD.ORG, dillon@apollo.backplane.com, obrien@FreeBSD.ORG Subject: Re: extern variables in shared libraries broken (ld.so or mmap bug) Message-ID: <20000223100036.A4872@cons.org> In-Reply-To: <20000223093546.B4666@cons.org>; from cracauer@cons.org on Wed, Feb 23, 2000 at 09:35:47AM %2B0100 References: <20000222100006.A13742@cons.org> <20000223093546.B4666@cons.org>
next in thread | previous in thread | raw e-mail | index | archive | help
[CC'ed David, since the new compiler seems to cause the problems]
Sorry for the update bombing, but I found that the file where the
tzname symbol is being defined in triggers this error mesage in a
`make world`:
cc -fpic -DPIC -O -pipe -DLIBC_RCS -DSYSLIBC_RCS -I/usr/src/lib/libc/include -D__DBINTERFACE_PRIVATE -DINET6 -DPOSIX_MISTAKE -I/usr/src/lib/libc/../libc/locale -DBROKEN_DES -DYP -I/usr/obj/usr/src/i386/usr/include -c /usr/src/lib/libc/../libc/stdtime/localtime.c -o localtime.So
{standard input}: Assembler messages:
{standard input}:87: Warning: warning: unrecognized characters
`@GOTOFF' in expression
{standard input}:114: Warning: warning: unrecognized characters
`@GOTOFF' in expression
The assembler code looks like this (not that it is surrounding the
symbol we have problems with):
.L18:
leal (%edi,%edi,4),%edx
leal 1868+lclmem@GOTOFF(%ebx),%eax <<< [1]
leal (%eax,%edx,4),%edx
movl tzname@GOT(%ebx),%esi
movl 4(%edx),%ecx
sall $2,%ecx
movl %ebx,%eax
addl 8(%edx),%eax
addl $6988+lclmem@GOTOFF,%eax <<< [2]
movl %eax,(%ecx,%esi)
incl %edi
movl -4(%ebp),%eax
cmpl 8(%eax),%edi
jl .L18
Note that 'as' complains about [2], [1] is fine.
I'm not that familar with gas syntax, but it seems to be that this is
a syntax error generated by the new gcc, that @GOTOFF must be passed
one argument.
/usr/src/contrib/gcc/config/i386/i386.c:2988 seems to be the line that
writes the GOTOFF without an argument.
Martin
--
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
Martin Cracauer <cracauer@cons.org> http://www.cons.org/cracauer/
Tel.: (private) +4940 5221829 Fax.: (private) +4940 5228536
To Unsubscribe: send mail to majordomo@FreeBSD.org
with "unsubscribe freebsd-current" in the body of the message
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20000223100036.A4872>
