binutils-gdb/include
Andrew Burgess b63a5e38ef bfd/binutils: support for gdb target descriptions in the core file
This commit lays the ground work for allowing GDB to write its target
description into a generated core file.

The goal of this work is to allow a user to connect to a remote
target, capture a core file from within GDB, then pass the executable
and core file to another user and have the user be able to examine the
state of the machine without needing to connect to a running target.

Different remote targets can have different register sets and this
information is communicated from the target to GDB in the target
description.

It is possible for a user to extract the target description from GDB
and pass this along with the core file so that when the core file is
used the target description can be fed back into GDB, however this is
not a great user experience.

It would be nicer, I think, if GDB could write the target description
directly into the core file, and then make use of this description
when loading a core file.

This commit performs the binutils/bfd side of this task, adding the
boiler plate functions to access the target description from within a
core file note, and reserving a new number for a note containing the
target description.  Later commits will extend GDB to make use of
this.

The new note is given the name 'GDB' and a type NT_GDB_TDESC.  This
should hopefully protect us if there's ever a reuse of the number
assigned to NT_GDB_TDESC by some other core file producer.  It should
also, hopefully, make it clearer to users that this note carries GDB
specific information.

bfd/ChangeLog:

	* elf-bfd.h (elfcore_write_gdb_tdesc): Declare new function.
	* elf.c (elfcore_grok_gdb_tdesc): New function.
	(elfcore_grok_note): Handle NT_GDB_TDESC.
	(elfcore_write_gdb_tdesc): New function.
	(elfcore_write_register_note): Handle NT_GDB_TDESC.

binutils/ChangeLog:

	* readelf.c (get_note_type): Handle NT_GDB_TDESC.

include/ChangeLog:

	* elf/common.h (NT_GDB_TDESC): Define.
2021-03-05 17:21:40 +00:00
..
aout Update year range in copyright notice of binutils files 2021-01-01 10:31:05 +10:30
cgen Update year range in copyright notice of binutils files 2021-01-01 10:31:05 +10:30
coff Split relocation defines out of coff/internal.h 2021-03-03 17:46:24 +10:30
elf bfd/binutils: support for gdb target descriptions in the core file 2021-03-05 17:21:40 +00:00
gdb gdb: riscv: enable sim integration 2021-02-04 19:15:17 -05:00
mach-o Update year range in copyright notice of binutils files 2021-01-01 10:31:05 +10:30
opcode RISC-V: PR27158, fixed UJ/SB types and added CSS/CL/CS types for .insn. 2021-02-19 11:44:49 +08:00
som Update year range in copyright notice of binutils files 2021-01-01 10:31:05 +10:30
vms Update year range in copyright notice of binutils files 2021-01-01 10:31:05 +10:30
alloca-conf.h Update year range in copyright notice of binutils files 2021-01-01 10:31:05 +10:30
ansidecl.h Update year range in copyright notice of binutils files 2021-01-01 10:31:05 +10:30
bfdlink.h PR27451, -z start_stop_gc 2021-03-01 17:28:03 +10:30
binary-io.h Update year range in copyright notice of binutils files 2021-01-01 10:31:05 +10:30
bout.h Update year range in copyright notice of binutils files 2021-01-01 10:31:05 +10:30
ChangeLog bfd/binutils: support for gdb target descriptions in the core file 2021-03-05 17:21:40 +00:00
ChangeLog-0415
ChangeLog-2016
ChangeLog-2017
ChangeLog-2018
ChangeLog-2019
ChangeLog-2020 ChangeLog rotation 2021-01-01 10:31:02 +10:30
ChangeLog-9103
COPYING
COPYING3
ctf-api.h libctf, include: remove the nondeduplicating CTF linker 2021-03-02 15:10:05 +00:00
ctf.h Update year range in copyright notice of binutils files 2021-01-01 10:31:05 +10:30
demangle.h Update year range in copyright notice of binutils files 2021-01-01 10:31:05 +10:30
diagnostics.h Update year range in copyright notice of binutils files 2021-01-01 10:31:05 +10:30
dis-asm.h Update year range in copyright notice of binutils files 2021-01-01 10:31:05 +10:30
dwarf2.def Update year range in copyright notice of binutils files 2021-01-01 10:31:05 +10:30
dwarf2.h Update year range in copyright notice of binutils files 2021-01-01 10:31:05 +10:30
dyn-string.h Update year range in copyright notice of binutils files 2021-01-01 10:31:05 +10:30
environ.h Update year range in copyright notice of binutils files 2021-01-01 10:31:05 +10:30
fibheap.h Update year range in copyright notice of binutils files 2021-01-01 10:31:05 +10:30
filenames.h Update year range in copyright notice of binutils files 2021-01-01 10:31:05 +10:30
floatformat.h Update year range in copyright notice of binutils files 2021-01-01 10:31:05 +10:30
fnmatch.h Update year range in copyright notice of binutils files 2021-01-01 10:31:05 +10:30
fopen-bin.h Update year range in copyright notice of binutils files 2021-01-01 10:31:05 +10:30
fopen-same.h Update year range in copyright notice of binutils files 2021-01-01 10:31:05 +10:30
fopen-vms.h Update year range in copyright notice of binutils files 2021-01-01 10:31:05 +10:30
gcc-c-fe.def Update year range in copyright notice of binutils files 2021-01-01 10:31:05 +10:30
gcc-c-interface.h Update year range in copyright notice of binutils files 2021-01-01 10:31:05 +10:30
gcc-cp-fe.def Update year range in copyright notice of binutils files 2021-01-01 10:31:05 +10:30
gcc-cp-interface.h Update year range in copyright notice of binutils files 2021-01-01 10:31:05 +10:30
gcc-interface.h Update year range in copyright notice of binutils files 2021-01-01 10:31:05 +10:30
getopt.h Update year range in copyright notice of binutils files 2021-01-01 10:31:05 +10:30
hashtab.h Update year range in copyright notice of binutils files 2021-01-01 10:31:05 +10:30
hp-symtab.h Update year range in copyright notice of binutils files 2021-01-01 10:31:05 +10:30
leb128.h Update year range in copyright notice of binutils files 2021-01-01 10:31:05 +10:30
libiberty.h Update year range in copyright notice of binutils files 2021-01-01 10:31:05 +10:30
longlong.h Update year range in copyright notice of binutils files 2021-01-01 10:31:05 +10:30
lto-symtab.h Update year range in copyright notice of binutils files 2021-01-01 10:31:05 +10:30
MAINTAINERS Update year range in copyright notice of binutils files 2021-01-01 10:31:05 +10:30
md5.h Update year range in copyright notice of binutils files 2021-01-01 10:31:05 +10:30
oasys.h Update year range in copyright notice of binutils files 2021-01-01 10:31:05 +10:30
objalloc.h Update year range in copyright notice of binutils files 2021-01-01 10:31:05 +10:30
obstack.h Update year range in copyright notice of binutils files 2021-01-01 10:31:05 +10:30
os9k.h Update year range in copyright notice of binutils files 2021-01-01 10:31:05 +10:30
partition.h Update year range in copyright notice of binutils files 2021-01-01 10:31:05 +10:30
plugin-api.h Update year range in copyright notice of binutils files 2021-01-01 10:31:05 +10:30
progress.h Update year range in copyright notice of binutils files 2021-01-01 10:31:05 +10:30
safe-ctype.h Update year range in copyright notice of binutils files 2021-01-01 10:31:05 +10:30
sha1.h Update year range in copyright notice of binutils files 2021-01-01 10:31:05 +10:30
simple-object.h Update year range in copyright notice of binutils files 2021-01-01 10:31:05 +10:30
sort.h Update year range in copyright notice of binutils files 2021-01-01 10:31:05 +10:30
splay-tree.h Update year range in copyright notice of binutils files 2021-01-01 10:31:05 +10:30
symcat.h Update year range in copyright notice of binutils files 2021-01-01 10:31:05 +10:30
timeval-utils.h Update year range in copyright notice of binutils files 2021-01-01 10:31:05 +10:30
vtv-change-permission.h Update year range in copyright notice of binutils files 2021-01-01 10:31:05 +10:30
xregex2.h Update year range in copyright notice of binutils files 2021-01-01 10:31:05 +10:30
xregex.h
xtensa-config.h Update year range in copyright notice of binutils files 2021-01-01 10:31:05 +10:30
xtensa-isa-internal.h Update year range in copyright notice of binutils files 2021-01-01 10:31:05 +10:30
xtensa-isa.h Update year range in copyright notice of binutils files 2021-01-01 10:31:05 +10:30