bug-binutils
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: BUG elf32-i386 R_386_PC32 done wrong


From: doctor electron
Subject: Re: BUG elf32-i386 R_386_PC32 done wrong
Date: Sat, 24 Jun 2006 16:03:00 -0500

Long, long ago, Ian Lance Taylor, a life form in far off space,
emitted:

>If you ignore the contents of the .o file, then how do you propose to
>handle the assembler code
>    call foo + 16
>?

Very good question.  Thank you.  Apparently the ABI assemblers
would put foo's address in the rel reloc Symbol entry and (16-4)
in the location to be relocated.  I get it.  [But would vote for
such compilers to evaluate foo + 16 and use that value ;)]

I was wrong to assume that all assemblers would put the actual
destination (foo + 16) in the rel reloc symbol entry and that
therefore, -4 was a constant.

Thanks for clarifying that really the -4 value is not (always) a
constant, at least given the behavior of assemblers you
describe.

hmmm.  OK, for my object files, alternate entry points all have
labels, so for those the -4 is a constant and an ld assuming
that (which would not work for the call you cite above) would
still be of interest in my project.  Let's see.

Thanks again and best wishes, j





reply via email to

[Prev in Thread] Current Thread [Next in Thread]