Re: Breakpoint on first instruction in program
Bob Plantz <[email protected]> Thu, 21 Jun 2012 08:41:30 -0700
| Newsgroups | gmane.comp.gdb.general |
|---|---|
| Message-ID | <[email protected]> |
On 06/21/2012 03:46 AM, Iurie wrote: > Hi Bob, > what course u are teaching out there? give me the link to it, perhaps > i will learn there something useful as i am also a student. I retired from teaching in 2004, but I keep my book, Introduction to Computer Architecture, updated. It is available on my web site: bob.cs.sonoma.edu I checked info gdb. Under Source->Specify Location I found an entry for `*ADDRESS'. Apparently, the *ADDRESS form is for C, C++, Java, Objective-C, Fortran, minimal, and assembly. The *&ADDRESS' form is for Pascal and Modula-2. However, it seems that gdb is forgiving between these two forms. And, from my personal experience, this can differ between versions and can change over time. --Bob > > On 21 June 2012 05:09, Bob Plantz <[email protected] > <mailto:[email protected]>> wrote: > > On 6/20/2012 1:39 PM, Adam Beneschan wrote: > > > I am using the following assembly language program > (doNothingProg.s) for > instruction purposes: > > .text > .globl main > .type main, @function > main: > pushq %rbp # save caller's frame pointer > movq %rsp, %rbp # establish our frame pointer > movl $0, %eax # return 0 to caller > movq %rbp, %rsp # restore stack pointer > popq %rbp # restore caller's frame pointer > ret # back to caller > > I want to set a breakpoint at the first instruction (pushq > %rbp) so > students can see how the stack frame is created. > > break *&main > > -- Adam > > Thank you for the response Adam. > > Actually, break *main worked for me. (Or just br *main). I'm not > in Linux right now, but I will double check next time I log in. > > I found this by using info gdb and some looking around. As usual, > the answer is in the documentation, as I often told my students. :-[ > > --Bob > > >