[Top][All Lists]

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

[Bug ld/6727] Thumb interworking code zero when another section is posit

From: nickc at redhat dot com
Subject: [Bug ld/6727] Thumb interworking code zero when another section is positioned before positioning .text
Date: 15 Aug 2008 10:55:00 -0000

------- Additional Comments From nickc at redhat dot com  2008-08-15 10:54 
Hi Aaron,

  Right, it took some doing but I think that I have a fix for this problem.  The
cause of the misbehaviour is that the linker is writing out the arm-to-thumb
stubs before they have actually been initialised with code.  This in turn is
happening because the stubs are attached to an input file that is processed
before the file that actually needs the stubs.  (The stubs are generated on an
as-needed basis as each input file is processed).

  The attached patch "fixes" this problem by making sure that the last viable
input file is selected as the file to which the stubs are attached.  I used
fixed in quotes because this is not really a very reliable solution.  It is
still possible for some other part of the linker to re-order the input files
after the file to hold the interworking stubs has been selected.  In such a
situation this bug will reappear.  The proper solution is to use a similar
method to the arm-eabi port and create a special, fake, linker stubs input file
which is not attached to the normal input files list, but which is magically
added to the output at the appropriate time.  I am not doing that however as it
is far too likely to introduce new bugs.

So - please let me know if the uploaded patch works for you, and if it does I
will check it in and close this issue.  (For now...:)


           What    |Removed                     |Added
             Status|REOPENED                    |WAITING


------- You are receiving this mail because: -------
You are on the CC list for the bug, or are watching someone who is.

reply via email to

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