public inbox for binutils@sourceware.org
 help / color / mirror / Atom feed
From: Richard Henderson <rth@redhat.com>
To: Dmitry Diky <ddiky@alarity.com>
Cc: binutils@sourceware.org, jimb@redhat.com
Subject: Re: dwarf2 and linker relaxation problem
Date: Wed, 07 Sep 2005 18:11:00 -0000	[thread overview]
Message-ID: <20050907175633.GA15848@redhat.com> (raw)
In-Reply-To: <200509071041.50094.ddiky@alarity.com>

On Wed, Sep 07, 2005 at 10:41:49AM +0400, Dmitry Diky wrote:
>   Special opcode 90: advance Address by 6 to 0x4814001c and Line by 1 to 21  
> <- relaxed insn is here.
>   Special opcode 34: advance Address by 2 to 0x4814001e and Line by 1 to 22
>  
> So, if the code 90 will be changed properly, everything should be Ok. Am I 
> correct?

From your picture I would have expected the following code 34 to change.

As long as the address displacement only decreases during relaxation, 
then you can find a replacement special opcode that will match the new
address displacement and the old line number displacement.

If your relaxation ever adds bytes, then the correction may need to add
new bytes to the .debug_line section to represent the change, at which
point you may have to re-encode the entire section.

If all of this is too difficult, then we can add an internal flag to the
assembler that limits the encoding of .debug_line to DW_LNS_fixed_advance_pc, 
which would involve a fixed length 16-bit displacement; presumably you
have a relocation for that.


r~

      reply	other threads:[~2005-09-07 17:56 UTC|newest]

Thread overview: 23+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2005-09-01 16:36 Dmitry Diky
2005-09-01 17:48 ` Ian Lance Taylor
2005-09-01 23:30   ` Jim Blandy
2005-09-02  2:51     ` Ian Lance Taylor
2005-09-02  7:44       ` Dmitry Diky
2005-09-02  8:43         ` Nick Clifton
2005-09-02  9:28           ` Dmitry Diky
2005-09-02  9:35             ` Dmitry Diky
2005-09-02  9:58             ` Nick Clifton
2005-09-02 11:17               ` Nick Clifton
2005-09-02 16:52         ` Hans-Peter Nilsson
2005-09-02 17:02           ` Dmitry Diky
2005-09-02 18:42             ` Hans-Peter Nilsson
2005-09-02 18:53               ` Dmitry Diky
2005-09-02 19:21                 ` Ian Lance Taylor
2005-09-02 21:27               ` Richard Henderson
2005-09-03  4:35                 ` Ian Lance Taylor
2005-09-05 21:47                   ` Dmitry Diky
2005-09-02 17:23         ` Ian Lance Taylor
2005-09-06 19:32       ` Jim Blandy
2005-09-06 20:15         ` Ian Lance Taylor
2005-09-07 11:39           ` Dmitry Diky
2005-09-07 18:11             ` Richard Henderson [this message]

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=20050907175633.GA15848@redhat.com \
    --to=rth@redhat.com \
    --cc=binutils@sourceware.org \
    --cc=ddiky@alarity.com \
    --cc=jimb@redhat.com \
    /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).