aboutsummaryrefslogtreecommitdiff
path: root/zlib/zlib.pc.in
diff options
context:
space:
mode:
authorMarkus Metzger <markus.t.metzger@intel.com>2015-09-11 14:47:08 +0200
committerMarkus Metzger <markus.t.metzger@intel.com>2015-11-04 09:12:33 +0100
commita50a40267668422e60901cc7fb949050caceb90c (patch)
tree68bb09c4fde6e801b0dcfec1d0a7f031e5ce9791 /zlib/zlib.pc.in
parentaf70908dc41c8bf21680aeb2f849ce4043b2031a (diff)
downloadgdb-a50a40267668422e60901cc7fb949050caceb90c.zip
gdb-a50a40267668422e60901cc7fb949050caceb90c.tar.gz
gdb-a50a40267668422e60901cc7fb949050caceb90c.tar.bz2
disasm: add struct disasm_insn to describe to-be-disassembled instruction
The "record instruction-history" command prints for each instruction in addition to the instruction's disassembly: - the instruction number in the recorded execution trace - a '?' before the instruction if it was executed speculatively To allow the "record instruction-history" command to use GDB's disassembly infrastructure, we extend gdb_pretty_print_insn to optionally print those additional fields and export the function. Add a new struct disasm_insn to add additional fields describing the to-be-disassembled instruction. The additional fields are: number an optional instruction number, zero if omitted. is_speculative a predicate saying whether the instruction was executed speculatively. If non-zero, the instruction number is printed first. It will also appear as a new optional field "insn-number" in MI. The field will be present if insn_num is non-zero. If is_speculative is set, speculative execution will be indicated by a "?" following the new instruction number field. Unless the PC is omitted, it will overwrite the first byte of the PC prefix. It will appear as a new optional field "is-speculative" in MI. The field will contain "?" and will be present if is_speculative is set. The speculative execution indication is guarded by a new flag DISASSEMBLY_SPECULATION. Replace the PC parameter of gdb_pretty_print_insn with a pointer to the above struct. GDB's "disassemble" command does not use the new fields. gdb/ * disasm.h (DISASSEMBLY_SPECULATION): New. (struct disasm_insn): New. (gdb_pretty_print_insn): New. * disasm.c (gdb_pretty_print_insn): Replace parameter PC with INSN. Update users. Print instruction number and indicate speculative execution, if requested.
Diffstat (limited to 'zlib/zlib.pc.in')
0 files changed, 0 insertions, 0 deletions