Illegal subtraction in tmp-dive_1.s

Dennis Clarke dclarke at
Fri Apr 17 18:11:29 CEST 2009

> Marc Glisse <marc.glisse at> writes:
>   Funny, on linux x86_64 with Sun Studio I also got an Illegal
>   subtraction, but a different one: the Sun assembler refuses to compute
>   differences of symbols in different sections, and
>   x86_64/sqr_basecase.asm does just that. Moving "TEXT" before L(jmptab)
>   in the 2 places where it occurs fixes it (I know gcc had a similar
>   problem with bug 31713, fixed in 2007) and the result passes all
>   tests.
> I have now addressed this Sun assembly bug, the one with
> sqr_basecase.asm.
> Please do
>   hg clone [TARGDIR]

Excellent, I'll go drag that down right away and give it a spin on Solaris
with GCC 4.3.3 and binutils 2.19.1 and THEN after that I'll go to Sun
Studio 11 and the Sun built in as/ld to see what we get.

> for a new copy of the code, or
>   cd [TARGDIR]
>   hg pull -u
> if you already have a copy of the repository.
> Indicendally, this patch also improves performance by a cycle or two per
> call.

Sweet. Every nanosec counts.

I had a bumper sticker once that said : "Just Say NO to NOPs"

> It is difficult to placate working ELF systems (GNU/Linux, BSD) as well
> as broken ones (Solaris using the "commercial grade" system tools) and
> the very broken Mac tools.  But the new code seems to work on all of
> them.  Does it work for you too?
> I suspect that a shared lib might need load time relocs on Macs, which
> is somewhat bad.  But the entire Mach-O ABI is really archaic so this is
> what to expect.  I think lots and lots of binaries will need load time
> relocs on these systems.  If there are some Darwin hackers on this list,
> and if you know if there is a better way to do this on Macs, please let
> us know.

I hope you guys *know* that if you ever need access to Sun
Solaris/OpenSolaris on anything from i386/AMD64 to Sparc/UltraSparc that
you can ssh into with an account that I'll provide to you.
If you ever want/need to.

Dennis Clarke

More information about the gmp-discuss mailing list