summaryrefslogtreecommitdiff
path: root/gdb/solib.h
diff options
context:
space:
mode:
authorJoseph Myers <jsm@polyomino.org.uk>2009-12-01 22:46:07 +0000
committerJoseph Myers <jsm@polyomino.org.uk>2009-12-01 22:46:07 +0000
commit575d4a276cceae9dca086aced83dece6146a5fe6 (patch)
treed0ce1987be8a7da2084190ba01466ff6f4adfbae /gdb/solib.h
parent9104dec90808466c32a1ad779f5a5f245f37c0aa (diff)
downloadgdb-575d4a276cceae9dca086aced83dece6146a5fe6.tar.gz
* gcore.c: Include solib.h.
(gcore_create_callback): Call solib_keep_data_in_core when considering not saving memory in core file. * solib-svr4.c (svr4_keep_data_in_core): New. (_initialize_svr4_solib): Initialize svr4_so_ops.keep_data_in_core. * solib.c (solib_keep_data_in_core): New. * solib.h (solib_keep_data_in_core): Declare. * solist.h (struct target_so_ops): Add keep_data_in_core.
Diffstat (limited to 'gdb/solib.h')
-rw-r--r--gdb/solib.h8
1 files changed, 8 insertions, 0 deletions
diff --git a/gdb/solib.h b/gdb/solib.h
index fee8d1c4434..c12de944e7b 100644
--- a/gdb/solib.h
+++ b/gdb/solib.h
@@ -52,6 +52,14 @@ extern char *solib_name_from_address (struct program_space *, CORE_ADDR);
extern int solib_contains_address_p (const struct so_list *, CORE_ADDR);
+/* Return whether the data starting at VADDR, size SIZE, must be kept
+ in a core file for shared libraries loaded before "gcore" is used
+ to be handled correctly when the core file is loaded. This only
+ applies when the section would otherwise not be kept in the core
+ file (in particular, for readonly sections). */
+
+extern int solib_keep_data_in_core (CORE_ADDR vaddr, unsigned long size);
+
/* Return 1 if PC lies in the dynamic symbol resolution code of the
run time loader. */