Subject: Re: sparc64 xserver vs relocs
To: None <port-sparc64@netbsd.org>
From: Martin Husemann <martin@duskware.de>
List: port-sparc64
Date: 05/13/2005 07:12:28
On Fri, May 13, 2005 at 03:34:31AM +0400, Valeriy E. Ushakov wrote:
> But note that %lo extracts only 10 bottom bits, so as long as the
> extra addend is small enough it's ok, as we have few free bits in
> simm13 to overflow into.

Yes, +/-4096 is ok for this optimization.

BTW: I asked the gcc maintainer for the different code generated, he said:

> The compiler uses the offsetable %lo only if the assembler supports it; there
> is a check in the configure script (HAVE_AS_OFFSETABLE_LO10).

And it seems we didn't run mknative after the last binutils update:

gnu/gcc3/arch/sparc64/auto-host.h:/* #undef HAVE_AS_OFFSETABLE_LO10 */

while the tools compiler has it:

gcc/build/gcc/auto-host.h:#define HAVE_AS_OFFSETABLE_LO10 1

Martin