Wrong jump/branch-offsets with assembler startup
Sat Mar 16 02:03:00 GMT 2013
On Fri, Mar 15, 2013 at 06:50:25PM +0100, Jens Mehler wrote:
> Whenever I try assemble with two files let's call them start.s (that
> handles setting the stack poiner and jumping to main) and hello.s (that
> contains code to emit a string) the jump/branch offsets are off by one.
> This is not the case for jumping to main, it is however everywhere
> starting from main i.e. in main in a jump to foo this jump is off by one
> (negative one) while the offset from start to main is spot on.
> The problem vanishes when I put the stuff from start.s into hello.s
> Could someone please give me a pointer on how to solve this problem?
First examine your object files. Are the relocations correct? If
not, you have an assembler problem rather than a linker problem.
Australia Development Lab, IBM
More information about the Binutils