Switching to assembly in gdb

Viewed 50784

Is there is any way to switch to assembly when debugging a C or C++ program in gdb ? (Given that all source files and their corresponding assembly files are available)

5 Answers

You can switch to asm layout in gdb:

(gdb) layout asm

See here for more information.

There is a way to disassemble a function or a certain section of code, is that what you are after?

The command to do so would be disassemble <function name> or a memory location.

Is this what you are referring to?

(gdb) help disassemble
Disassemble a specified section of memory.
Default is the function surrounding the pc of the selected frame.
With a single argument, the function surrounding that address is dumped.
Two arguments are taken as a range of memory to dump.

Using the disas command will probably do what you want.

According to the internal help, the disas command does the following:

Disassemble a specified section of memory.
Default is the function surrounding the pc of the selected frame.
With a single argument, the function surrounding that address is dumped.
Two arguments are taken as a range of memory to dump.
Related