Mirror of the gdb mailing list
 help / color / mirror / Atom feed
From: "Ben L. Titzer" <ben.titzer@gmail.com>
To: noloader@gmail.com
Cc: gdb@sourceware.org
Subject: Re: Break at address on darwin
Date: Tue, 02 Aug 2011 19:19:00 -0000	[thread overview]
Message-ID: <CAL9pw=9G_gfC4YZ+WysgNVGQi+VqHLm2JQoLsY-Rg-pD82B7Tw@mail.gmail.com> (raw)
In-Reply-To: <CAH8yC8mgg=HTf8frmEV_LH8ticBvpsT08d4vNdgUxvCzUZra5w@mail.gmail.com>

On Tue, Aug 2, 2011 at 12:00 PM, Jeffrey Walton <noloader@gmail.com> wrote:
> Hi Ben,
>
> On Tue, Aug 2, 2011 at 12:46 PM, Ben L. Titzer <ben.titzer@gmail.com> wrote:
>> I am generating very simple Mach-O binaries by hand without symbol
>> information and trying to debug them with gdb by setting breakpoints
>> at various addresses. However, the breakpoints I set do not fire,
>> though I am certain those addresses are being executed (program runs
>> to completion, I can put in illegal instructions and they trap in gdb,
>> my program makes system calls that output to stdout, etc).
> Are you certain you are setting a breakpoint on an address (eg, b
> 0x40000000)? Or is it a symbolic name (b main)?

It's an address. I know for sure it's being executed because it's the
first instruction in the binary. No gdb breakpoints work on my
binaries. However if I insert an int3 or illegal instruction in the
code, then it will break or trap in gdb.

>
>> When I debug other binaries (e.g. generated by gcc), I am able to set
>> breakpoints at various addresses and they fire in gdb no problem.
>>
>> Even though my binaries load and run correctly, producing the correct
>> output, gdb breakpoints don't work. If I explicitly insert an int3
>> instruction, a gdb breakpoint does occur.
>> I have a feeling that I am missing some step that is required by gdb,
>> such as setting an attribute or adding an extra section to my binary,
>> but I don't know what.
>>
>> [SNIP]
> When I have issues, it typically is because I have optimizations
> enabled and I set a symbolic breakpoint which is never hit (despite
> what the result of the break command states). Taking optimizations
> back to -O0 usually resolves the issue for me.
>

I am not trying to debug binaries generated by gcc. I am generating
binaries from my own compiler, and I think I missed some attribute or
section necessary for gdb breakpoints to work properly with my
binaries.

-B


  reply	other threads:[~2011-08-02 19:19 UTC|newest]

Thread overview: 12+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2011-08-02 16:47 Ben L. Titzer
2011-08-02 19:00 ` Jeffrey Walton
2011-08-02 19:19   ` Ben L. Titzer [this message]
2011-08-02 20:31     ` Jonas Maebe
2011-08-02 21:51       ` Ben L. Titzer
2011-08-03  8:09         ` Tristan Gingold
2011-08-03  9:00         ` Pedro Alves
2011-08-03  9:05           ` Jonas Maebe
2011-08-03 13:45             ` Ben L. Titzer
2011-08-03 14:06               ` Pedro Alves
2011-08-03 21:00                 ` Ben L. Titzer
2011-08-04  7:19                   ` Tristan Gingold

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='CAL9pw=9G_gfC4YZ+WysgNVGQi+VqHLm2JQoLsY-Rg-pD82B7Tw@mail.gmail.com' \
    --to=ben.titzer@gmail.com \
    --cc=gdb@sourceware.org \
    --cc=noloader@gmail.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