2012-06-16 9 views
6

Duplicar posibles:
Switching to assembly in gdbHacer instrucciones de ensamblaje de la pantalla en lugar de GDB C

Estoy depurando algún código en GDB. Cuando ejecuto el comando ni (para siguiente instrucción), muestra el código C. Mostrar las instrucciones de ensamblaje ejecutadas tendría más sentido para mí.

(gdb) ni 
0x0804845a 28   tmp = *lpp; 
(gdb) ni 
0x0804845c 28   tmp = *lpp; 
(gdb) ni 
0x0804846a 29   **lpp = (unsigned long) &buf; 
(gdb) ni 
0x0804846c 29   **lpp = (unsigned long) &buf; 

¿Hay alguna manera de hacer que el BGF visualizar el código de montaje en su lugar, sin llamar disassm cada vez?

EDIT: Conozco el comando layout asm que muestra el código en una ventana de lectura. Me gustaría ver el desmontaje en la línea de comandos de gdb, no en una ventana de gdb.

+2

@OliCharlesworth no es un duplicado exacto, pero una de las respuestas (no la aceptada) responde a esta pregunta. –

+0

@DmitriChubarov: Sí, siempre busco respuestas duplicadas, no preguntas. –

Respuesta

11

Cuando paso a través de ni, mostrando el siguiente puñado de instrucciones de montaje es a menudo muy útil.

(gdb) display/4i $pc 

mostrará las próximas 4 instrucciones cada vez que se detenga el GDB.

6

¿Intentó utilizar el diseño TUI ASM?

Es bastante práctico.

(gdb) layout asm 
+0

Gracias por esto. No estaba enterado. –

Cuestiones relacionadas