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 _______________________________________________ bug-binutils mailing list bug-binutils@gnu.org http://lists.gnu.org/mailman/listinfo/bug-binutils