[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.


This message was sent using IMP, the Internet Messaging Program.

reply via email to

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