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 <address@hidden>
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
|