public inbox for binutils@sourceware.org
 help / color / mirror / Atom feed
From: johnmc@sidsa.es
To: "Daniel Jacobowitz" <drow@false.org>
Cc: binutils@sources.redhat.com
Subject: Re: plt for arm gnu thumb
Date: Tue, 18 Apr 2006 15:14:00 -0000	[thread overview]
Message-ID: <4429.195.53.86.158.1145366326.squirrel@webmail> (raw)
In-Reply-To: <20060418130617.GA10461@nevyn.them.org>

The problem is this.

Code in thumb mode calls the plt sequence which is in ARM code with a BX
instruction in order to call a function located in a shared library - this
part is ok -
Next the plt sequence accesses the GOT for the address of the function in
the shared library and calls the function - this is the problem the plt is
ARM code but the shared library is THUMB and the microprocessor is still
in ARM mode when it starts to run the shared library thumb code i.e. I can
see the program counter increments in 4 bytes.

john mcwhinnie


> On Tue, Apr 18, 2006 at 01:58:18PM +0200, johnmc@sidsa.es wrote:
>> hello
>>
>>
>> I have just finished a shared library system using the gnu tools for a
>> system using  arm thumb code but I have found that there is a problem in
>> that the plt is produced for arm code and it does not work correctly .
>> question - can I force the gnu tools to produce thumb code plt.
>
> What is the actual problem?
>
> The PLT will always be in 32-bit instructions, but the linker should
> arrange for things to work for PLT calls from Thumb also.
>
> --
> Daniel Jacobowitz
> CodeSourcery
>


  reply	other threads:[~2006-04-18 13:19 UTC|newest]

Thread overview: 11+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2006-04-18 13:06 johnmc
2006-04-18 13:10 ` Daniel Jacobowitz
2006-04-18 15:14   ` johnmc [this message]
2006-04-18 15:45 ` Richard Earnshaw
2006-04-18 15:49   ` Daniel Jacobowitz
2006-04-18 16:01     ` Richard Earnshaw
2006-04-18 16:49       ` Daniel Jacobowitz
     [not found]         ` <4596.195.53.86.158.1145376723.squirrel@webmail>
     [not found]           ` <20060418203900.GA23304@nevyn.them.org>
     [not found]             ` <1178.195.53.86.158.1145458815.squirrel@webmail>
     [not found]               ` <20060419150716.GA13655@nevyn.them.org>
2006-04-20 14:32                 ` johnmc
2006-04-20 14:38                   ` Richard Earnshaw
     [not found]                     ` <1507.195.53.86.158.1145536917.squirrel@webmail>
     [not found]                       ` <1145538390.16122.39.camel@pc960.cambridge.arm.com>
     [not found]                         ` <1576.195.53.86.158.1145540607.squirrel@webmail>
     [not found]                           ` <1145541382.16122.62.camel@pc960.cambridge.arm.com>
2006-04-24 18:23                             ` johnmc
2006-04-25 17:19                               ` Nick Clifton

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=4429.195.53.86.158.1145366326.squirrel@webmail \
    --to=johnmc@sidsa.es \
    --cc=binutils@sources.redhat.com \
    --cc=drow@false.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).