[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: Problem with 2.21 ld when linking HelenOS ia64 binaries
From: |
jakub |
Subject: |
Re: Problem with 2.21 ld when linking HelenOS ia64 binaries |
Date: |
Mon, 11 Apr 2011 14:15:21 +0200 |
User-agent: |
Internet Messaging Program (IMP) 4.3.3 |
Hi Nick,
Quoting Nick Clifton <address@hidden>:
The following instruction:
addl r36 = @ltoff(@fptr(__entry#)), gp
gets linked as either (ld 2.20):
28806: 40 02 04 00 48 20 addl r36=0,r1
or (ld 2.21):
24846: 40 02 07 8c 48 20 addl r36=9056,r1
Have you verified that the object files produced by the 2.20 and
2.21 assemblers are the same ? (Including the relocs). If not then
this could be a gas bug rather than an ld bug...
No actually. What I did was that I built with 2.21 assembler (and 4.6 gcc) and
obtained a set of .o files. When I start the linking phase from the these
.o files, I get two different results depending on ld version.
(Please ignore the program counter addresses as I unfortunately copy-n-pasted
older disassembly where the instruction was located at different address. This
does not change anything about the above observation though.)
It sounds like the evaluation of the relocation that computes the gp
offset is going wrong. Without more context it is hard to theorize
any further. Things that you could try include:
* Submit a bug report to http://sourceware.org/bugzilla/
If you include a small testcase to reproduce the problem that
would really help.
In the worst case, I could attach my .o files, the linker script and
the linker
command line. I will try to see if I can limit the test case to only one .o.
Thanks,
Jakub
----------------------------------------------------------------
This message was sent using IMP, the Internet Messaging Program.