Mirror of the gdb mailing list
 help / color / mirror / Atom feed
From: teawater <teawater@gmail.com>
To: Doug Evans <dje@google.com>, Daniel Jacobowitz <drow@false.org>
Cc: gdb ml <gdb@sourceware.org>
Subject: Re: What about add a interface to output the assembly codes follow  	inferior execution
Date: Wed, 04 Mar 2009 02:29:00 -0000	[thread overview]
Message-ID: <daef60380903031828j6332e71cx78eaaa1b0af2d792@mail.gmail.com> (raw)
In-Reply-To: <20090303170422.GA15154@caradoc.them.org>

Hi Doug and Daniel,

Thanks for your reply.

I think I didn't talk clear of my idea.
When exec-disassemble is on,
If the $pc doesn't have the line message, gdb will output the assembly
code for $pc.
If the $pc has the line message, gdb will output the assembly codes of
this line.

For example:
(gdb) set exec-disassemble on
(gdb) n
26              printf ("a = %d b = %d c = %d\n", a, b, c);
 80483fe:       8b 15 84 96 04 08       mov    0x8049684,%edx
 8048404:       8b 45 f4                mov    -0xc(%ebp),%eax
 8048407:       89 44 24 0c             mov    %eax,0xc(%esp)
 804840b:       8b 45 f8                mov    -0x8(%ebp),%eax
 804840e:       89 44 24 08             mov    %eax,0x8(%esp)
 8048412:       89 54 24 04             mov    %edx,0x4(%esp)
 8048416:       c7 04 24 58 85 04 08    movl   $0x8048558,(%esp)
 804841d:       e8 b6 fe ff ff          call   80482d8 <printf@plt>
This assembly codes is for line 26 printf ("a = %d b = %d c = %d\n", a, b, c);

(gdb) n
21	       int     c = 1;
80483c8:	c7 45 f4 01 00 00 00 	movl   $0x1,-0xc(%ebp)
This assembly codes is for line 21 int     c = 1;

It will make user clear what instructions will be execute in next line.



The "disp/8i $pc" just can output 8 instructions, even if the next
line just have 1 instruction.
For example:
(gdb) n
21	       int     c = 1;
1: x/8i $pc
0x80483c8 <main+24>:	movl   $0x1,-0xc(%ebp)
0x80483cf <main+31>:	mov    0x8049684,%edx
0x80483d5 <main+37>:	mov    -0xc(%ebp),%eax
0x80483d8 <main+40>:	mov    %eax,0xc(%esp)
0x80483dc <main+44>:	mov    -0x8(%ebp),%eax
0x80483df <main+47>:	mov    %eax,0x8(%esp)
0x80483e3 <main+51>:	mov    %edx,0x4(%esp)
0x80483e7 <main+55>:	movl   $0x8048558,(%esp)
Just 1 line for line 21.


Thanks,
Hui



On Wed, Mar 4, 2009 at 01:04, Daniel Jacobowitz <drow@false.org> wrote:
> On Tue, Mar 03, 2009 at 08:41:53AM -0800, Doug Evans wrote:
>> Are you looking for behaviour different than what "disp/8i $pc" would give you?
>
> I often run with display/i $pc.  But I think the 'auto' setting is a
> nice idea; it's when I don't have source code that this is most useful.
>
> --
> Daniel Jacobowitz
> CodeSourcery
>


  reply	other threads:[~2009-03-04  2:29 UTC|newest]

Thread overview: 19+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2009-03-03  3:11 teawater
2009-03-03 16:42 ` Doug Evans
2009-03-03 17:04   ` Daniel Jacobowitz
2009-03-04  2:29     ` teawater [this message]
2009-03-04  4:09       ` Eli Zaretskii
2009-03-04  5:30         ` teawater
2009-03-04 17:15           ` Doug Evans
2009-03-04 19:09             ` Eli Zaretskii
2009-03-04 19:20               ` Pedro Alves
2009-03-04 22:10                 ` Eli Zaretskii
2009-03-04 19:24               ` Doug Evans
2009-03-04 19:26               ` Daniel Jacobowitz
2009-03-04 19:32                 ` Pedro Alves
2009-03-04 21:25                   ` Doug Evans
2009-03-04 22:14                     ` Eli Zaretskii
2009-03-04 22:20                       ` Pedro Alves
2009-03-04 22:31                       ` Doug Evans
2009-03-04 23:41                 ` Tom Tromey
2009-03-05  2:42                   ` teawater

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=daef60380903031828j6332e71cx78eaaa1b0af2d792@mail.gmail.com \
    --to=teawater@gmail.com \
    --cc=dje@google.com \
    --cc=drow@false.org \
    --cc=gdb@sourceware.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