mirror of
https://sourceware.org/git/binutils-gdb.git
synced 2025-01-18 12:24:38 +08:00
be4d133316
Implement a "generate-core-file" command in gdb, save target state. * gcore.c: New file. Implement new command 'generate-core-file'. Save a corefile image of the current state of the inferior. * linux-proc.c: Add linux-specific code for saving corefiles. * target.h (struct target_ops): Add new target vectors for saving corefiles; to_find_memory_regions and to_make_corefile_notes. (target_find_memory_regions): New macro. (target_make_corefile_notes): New macro. * target.c (update_current_target): Inherit new target methods. (dummy_find_memory_regions): New place-holder method. (dummy_make_corefile_notes): New place-holder method. (init_dummy_target): Initialize new dummy target vectors. * exec.c (exec_set_find_memory_regions): New function. Allow the exec_ops vector for memory regions to be taken over. (exec_make_note_section): New function, target vector method. * defs.h (exec_set_find_memory_regions): Export prototype. * procfs.c (proc_find_memory_regions): New function, corefile method. (procfs_make_note_section): New function, corefile method. (init_procfs_ops): Set new target vector pointers. (find_memory_regions_callback): New function. (procfs_do_thread_registers): New function. (procfs_corefile_thread_callback): New function. * sol-thread.c (sol_find_memory_regions): New function. (sol_make_note_section): New function. (init_sol_thread_ops): Initialize new target vectors. * inftarg.c (inftarg_set_find_memory_regions): New function. Allow to_find_memory_regions vector to be taken over. (inftarg_set_make_corefile_notes): New function. Allow to_make_corefile_notes vector to be taken over. * thread-db.c (thread_db_new_objfile): Don't activate thread-db interface layer if not target_has_execution (may be a corefile). * config/i386/linux.mh: Add gcore.o to NATDEPFILES. * config/sparc/sun4sol2.mh: Ditto. * config/alpha/alpha-linux.mh: Ditto. * config/arm/linux.mh: Ditto. * config/i386/x86-64linux.mh: Ditto. * config/ia64/linux.mh: Ditto. * config/m68k/linux.mh: Ditto. * config/mips/linux.mh: Ditto. * config/powerpc/linux.mh: Ditto. * config/sparc/linux.mh: Ditto. |
||
---|---|---|
.. | ||
bigmips64.mt | ||
bigmips.mt | ||
decstation.mh | ||
decstation.mt | ||
embed64.mt | ||
embed.mt | ||
embedl64.mt | ||
embedl.mt | ||
irix3.mh | ||
irix3.mt | ||
irix4.mh | ||
irix5.mh | ||
irix5.mt | ||
irix6.mh | ||
irix6.mt | ||
linux.mh | ||
linux.mt | ||
littlemips.mh | ||
littlemips.mt | ||
mipsm3.mh | ||
mipsm3.mt | ||
mipsv4.mh | ||
mipsv4.mt | ||
news-mips.mh | ||
nm-irix3.h | ||
nm-irix4.h | ||
nm-irix5.h | ||
nm-irix6.h | ||
nm-linux.h | ||
nm-mips.h | ||
nm-news-mips.h | ||
nm-riscos.h | ||
riscos.mh | ||
tm-bigmips64.h | ||
tm-bigmips.h | ||
tm-embed64.h | ||
tm-embed.h | ||
tm-embedl64.h | ||
tm-embedl.h | ||
tm-irix3.h | ||
tm-irix5.h | ||
tm-irix6.h | ||
tm-linux.h | ||
tm-mips64.h | ||
tm-mips.h | ||
tm-mipsm3.h | ||
tm-mipsv4.h | ||
tm-tx39.h | ||
tm-tx39l.h | ||
tm-vr4xxx.h | ||
tm-vr4xxxel.h | ||
tm-vr4100.h | ||
tm-vr4300.h | ||
tm-vr4300el.h | ||
tm-vr5000.h | ||
tm-vr5000el.h | ||
tm-vxmips.h | ||
tm-wince.h | ||
tx39.mt | ||
tx39l.mt | ||
vr4xxx.mt | ||
vr4xxxel.mt | ||
vr4100.mt | ||
vr4300.mt | ||
vr4300el.mt | ||
vr5000.mt | ||
vr5000el.mt | ||
vxmips.mt | ||
wince.mt | ||
xm-irix3.h | ||
xm-irix4.h | ||
xm-irix5.h | ||
xm-irix6.h | ||
xm-linux.h | ||
xm-mips.h | ||
xm-mipsm3.h | ||
xm-mipsv4.h | ||
xm-news-mips.h | ||
xm-riscos.h |