gmp-4.1.3-rc1

Kevin Ryde user42 at zip.com.au
Tue Apr 27 22:22:23 CEST 2004


Torbjorn Granlund <tg at swox.com> writes:
>
> I could reproduce this on our systems here (actually on an
> athlon-pc-freebsd using the same options as you).

Ah yes.  A bug in past versions of gas.  In refmpn_random_half in
tests/refmpn.c gcc emits

        addl    $_GLOBAL_OFFSET_TABLE_, %eax

but gas assembles that with an offset of 2 in the relocation, where it
should be 1 for a 1 byte opcode.  (It's 2 bytes for a register other
than eax, like ebx which gcc always used to use for the GOT).

Seems to be fixed in debian binutils 2.14.90.0.7.  I remember striking
this when trying to do the same in some hand written asm, there's a
note about it in mpn/x86/README.


More information about the gmp-devel mailing list