Summary of GDB commands for x86-64 Systems - Carnegie Mellon University
[Pages:2]Summary of GDB commands for x86-64 Systems
Command
Effect
Starting: gdb gdb
Running and stopping
quit
Exit gdb
run
Run program
run 1 2 3
Run program with command-line arguments 1 2 3
kill
Stop the program
quit
Exit gdb
Ctrl-d
Exit gdb
Note: Ctrl-C does not exit from gdb, but halts the current
gdb command
Breakpoints
break sum break *0x80483c3 delete 1 disable 1
enable 1 delete clear sum
Set breakpoint at the entry to function sum Set breakpoint at address 0x80483c3 Delete breakpoint 1 Disable the breakpoint 1
(gdb numbers each breakpoint you create) Enable breakpoint 1 Delete all breakpoints Clear any breakpoints at the entry to function sum
Execution
stepi stepi 4 nexti
step continue until 3 finish call sum(1, 2)
Execute one instruction Execute four instructions Like stepi, but proceed through function calls without stopping Execute one C statement Resume execution until the next breakpoint Continue executing until program hits breakpoint 3 Resume execution until current function returns Call sum(1,2) and print return value
Examining code
disas
Disassemble current function
disas sum
Disassemble function sum
disas 0x80483b7
Disassemble function around 0x80483b7
disas 0x80483b7 0x80483c7 Disassemble code within specified address range
print /x $rip print /d $rip print /t $rip
Print program counter in hex Print program counter in decimal Print program counter in binary
Examining data
print /d $rax print /x $rax print /t $rax print /d (int)$rax
Print contents of %rax in decimal Print contents of %rax in hex Print contents of %rax in binary Print contents of %rax in decimal after sign-extending lower 32-bits.
You need this to print 32-bit, negative numbers stored in the lower 32 bits of %rax. For example, if the lower 32-bits of %rax store 0xffffffff, you will see
(gdb) print $rax $1 = 4294967295 (gdb) print (int)$rax $2 = -1 (gdb)
print 0x100
Print decimal representation of 0x100
print /x 555
Print hex representation of 555
print /x ($rsp+8)
Print (contents of %rsp) + 8 in hex
print *(int *) 0xbffff890 Print integer at address 0xbffff890
print *(int *) ($rsp+8) Print integer at address %rsp + 8
print (char *) 0xbfff890 Examine a string stored at 0xbffff890
x/w 0xbffff890
x/w $rsp x/wd $rsp
x/2w $rsp
x/2wd $rsp
x/g $rsp x/gd $rsp
x/a $rsp
x/s 0xbffff890 x/20b sum x/10i sum
Examine (4-byte) word starting at address 0xbffff890 Examine (4-byte) word starting at address in $rsp Examine (4-byte) word starting at address in $rsp. Print in decimal Examine two (4-byte) words starting at address in $rsp Examine two (4-byte) words starting at address in $rsp. Print in decimal Examine (8-byte) word starting at address in $rsp. Examine (8-byte) word starting at address in $rsp. Print in decimal Examine address in $rsp. Print as offset from previous global symbol. Examine a string stored at 0xbffff890 Examine first 20 opcode bytes of function sum Examine first 10 instructions of function sum
(Note: the format string for the `x' command has the general form x/[NUM][SIZE][FORMAT] where
NUM = number of objects to display SIZE = size of each object (b=byte, h=half-word, w=word,
g=giant (quad-word)) FORMAT = how to display each object (d=decimal, x=hex, o=octal, etc.)
If you don't specify SIZE or FORMAT, either a default value, or the last value you specified in a previous `print' or `x' command is used. )
Useful information
backtrace where
Print the current address and stack backtrace Print the current address and stack backtrace
info program info functions info stack info frame info registers info breakpoints
Print current status of the program) Print functions in program Print backtrace of the stack) Print information about the current stack frame Print registers and their contents Print status of user-settable breakpoints
display /FMT EXPR
undisplay help
Print expression EXPR using format FMT every time GDB stops Turn off display mode Get information about gdb
................
................
In order to avoid copyright disputes, this page is only a partial summary.
To fulfill the demand for quickly locating and searching documents.
It is intelligent file search solution for home and business.
Related download
- x86 64 university of washington
- gdb cheatsheet brown university
- intro to gdb virginia tech
- gdb quick reference breakpoints and watchpoints execution control
- gdb cheat sheet github pages
- summary of gdb commands for x86 64 systems carnegie mellon university
- csci 2330 gdb reference sheet bowdoin college
- quick start with c gcc and gdb cornell university
- cse 410 section 3 university of washington
- debugging assembly code with
Related searches
- summary of history of philosophy
- custom commands for minecraft
- custom commands for minecraft 1.12
- summary of books of the bible pdf
- custom commands for minecraft 1 12
- custom commands for minecraft 1 15
- commands for command blocks 1 12
- example of summary of an article
- summary of each chapter of huckleberry finn
- summary of life of jesus
- powershell commands for windows 10
- commands for linux terminal