gdb: introduce displaced_debug_printf
authorSimon Marchi <simon.marchi@efficios.com>
Fri, 30 Oct 2020 19:10:08 +0000 (15:10 -0400)
committerSimon Marchi <simon.marchi@efficios.com>
Fri, 30 Oct 2020 19:10:58 +0000 (15:10 -0400)
commit136821d9f6fdb7f457500d154166a1b4b41a0d1b
tree8204382983b0abf241cd990e5731ae9ac3225e83
parentaa2045e7fa41ea80a876421bca89443f7a2df92f
gdb: introduce displaced_debug_printf

Move all debug prints of the "displaced" category to use a new
displaced_debug_printf macro, like what was done for infrun and others
earlier.

The debug output for one displaced step one amd64 looks like:

    [displaced] displaced_step_prepare_throw: stepping process 3367044 now
    [displaced] displaced_step_prepare_throw: saved 0x555555555042: 1e fa 31 ed 49 89 d1 5e 48 89 e2 48 83 e4 f0 50
    [displaced] amd64_displaced_step_copy_insn: copy 0x555555555131->0x555555555042: b8 00 00 00 00 5d c3 0f 1f 84 00 00 00 00 00 f3
    [displaced] displaced_step_prepare_throw: displaced pc to 0x555555555042
    [displaced] resume_1: run 0x555555555042: b8 00 00 00
    [displaced] displaced_step_restore: restored process 3367044 0x555555555042
    [displaced] amd64_displaced_step_fixup: fixup (0x555555555131, 0x555555555042), insn = 0xb8 0x00 ...
    [displaced] amd64_displaced_step_fixup: relocated %rip from 0x555555555047 to 0x555555555136

On test case needed to be updated because it relied on the specific
formatting of the message.

gdb/ChangeLog:

* infrun.h (displaced_debug_printf): New macro.  Replace
displaced debug prints throughout to use it.
(displaced_debug_printf_1): New declaration.
(displaced_step_dump_bytes): Return string, remove ui_file
parameter, update all callers.
* infrun.c (displaced_debug_printf_1): New function.
(displaced_step_dump_bytes): Return string, remove ui_file
parameter

gdb/testsuite/ChangeLog:

* gdb.arch/amd64-disp-step-avx.exp: Update displaced step debug
expected output.

Change-Id: Ie78837f56431f6f98378790ba1e6051337bf6533
12 files changed:
gdb/ChangeLog
gdb/aarch64-tdep.c
gdb/amd64-tdep.c
gdb/arm-linux-tdep.c
gdb/arm-tdep.c
gdb/i386-tdep.c
gdb/infrun.c
gdb/infrun.h
gdb/rs6000-tdep.c
gdb/s390-tdep.c
gdb/testsuite/ChangeLog
gdb/testsuite/gdb.arch/amd64-disp-step-avx.exp