обратный ход GDB с помощью указателей

Иногда существует небольшое повреждение стека, которое приводит к тому, что GDB не может выполнить «обратную трассировку». Я создал приведенный ниже макрос GDB (x86-64, его можно легко заставить работать для x86), который зависит от отключения omit-frame-pointer ( т.е. -fno-omit-frame-pointer) и показывает мне функции в обратном следе. Однако мне бы хотелось, чтобы он также отображал значения параметров и в идеале мог выбрать один из этих кадров. (то есть что-то типа "frame 0x0123456789ABCDEF").

define et
set $frameptr = $rbp
while $frameptr != 0
 set $oldbp = *((void**)($frameptr+8))

 print $frameptr
 print $oldbp
 info symbol $oldbp

 set $frameptr = *((void**)($frameptr))
 end
end

Ответы на вопрос(0)

Ваш ответ на вопрос