LD script bug

Nick Clifton nickc@redhat.com
Fri Jan 2 18:22:00 GMT 2004


Hi Ankur,

> ld version: 2.13.90.0.18 20030206 on a vanilla RH 9 system. 

Note - this is an old version of the linker.  I would recommend that
you download the sources for the latest version (2.14) and find out if
this fixes the problem.


> I am getting this weird behaviour(relevant excerpt from the
> linker map):
>  0x08048527                value = ((. + 0x20) - 0x1)
>  0x08048518                . = (value & 0xffffffe0)
>  *fill*         0x08048508       0x10 00
>  				^^^^^^
> Fill value should be 0x18 or I am going crazy. Please tell 
> me which :).

Well, the *fill* size is correct for the displayed resulting address,
ie 0x08048518 does equal 0x80488508 plus 0x10.

But I agree that the resulting address appears to be wrong.
(0x8048527 & 0xffffffe0) ought to be 0x8048520 rather than 0x8048518,
so the fill size ought to be 0x18.

> In case any more information is required I will be happy
> to provide it.

If switching to the 2.14 release does not fix the problem then please
could you send a *small* reproducible example to the list that
reproduces the problem.

Cheers
        Nick
        



More information about the Binutils mailing list