aboutsummaryrefslogtreecommitdiff
path: root/gdb/solist.h
diff options
context:
space:
mode:
authorJoseph Myers <joseph@codesourcery.com>2009-12-01 22:46:15 +0000
committerJoseph Myers <joseph@codesourcery.com>2009-12-01 22:46:15 +0000
commitde18c1d81e0722779ce942110fb271e94db9635b (patch)
tree9e9c8edb06dd77c05617f2d55ba4c7c5bdc6789a /gdb/solist.h
parent16af530a6fd6d33174ae322fb1739bcbcbeaf96d (diff)
downloadgdb-de18c1d81e0722779ce942110fb271e94db9635b.zip
gdb-de18c1d81e0722779ce942110fb271e94db9635b.tar.gz
gdb-de18c1d81e0722779ce942110fb271e94db9635b.tar.bz2
* 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/solist.h')
-rw-r--r--gdb/solist.h8
1 files changed, 8 insertions, 0 deletions
diff --git a/gdb/solist.h b/gdb/solist.h
index 4c164e6..4e8e88b 100644
--- a/gdb/solist.h
+++ b/gdb/solist.h
@@ -126,6 +126,14 @@ struct target_so_ops
Falls back to using strcmp on so_original_name field when set
to NULL. */
int (*same) (struct so_list *gdb, struct so_list *inferior);
+
+ /* Return whether a region of memory 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). */
+ int (*keep_data_in_core) (CORE_ADDR vaddr,
+ unsigned long size);
};
/* Free the memory associated with a (so_list *). */