aboutsummaryrefslogtreecommitdiff
path: root/gdb/doc/gdbint.texinfo
diff options
context:
space:
mode:
authorDaniel Jacobowitz <drow@false.org>2006-02-06 22:14:31 +0000
committerDaniel Jacobowitz <drow@false.org>2006-02-06 22:14:31 +0000
commitc91d38aa7043aaf262d88fed5eeaaeee990db8c0 (patch)
treefe0a718581307d14f72aa687fec78b2ee015668d /gdb/doc/gdbint.texinfo
parent75eb734c5cf4c99438b48359bef717055af77e8c (diff)
downloadgdb-c91d38aa7043aaf262d88fed5eeaaeee990db8c0.zip
gdb-c91d38aa7043aaf262d88fed5eeaaeee990db8c0.tar.gz
gdb-c91d38aa7043aaf262d88fed5eeaaeee990db8c0.tar.bz2
* gdbint.texinfo (Symbol Handling): Add a section
on memory management.
Diffstat (limited to 'gdb/doc/gdbint.texinfo')
-rw-r--r--gdb/doc/gdbint.texinfo20
1 files changed, 18 insertions, 2 deletions
diff --git a/gdb/doc/gdbint.texinfo b/gdb/doc/gdbint.texinfo
index b86b083..737d225 100644
--- a/gdb/doc/gdbint.texinfo
+++ b/gdb/doc/gdbint.texinfo
@@ -9,7 +9,7 @@
@ifinfo
This file documents the internals of the GNU debugger @value{GDBN}.
Copyright (C) 1990, 1991, 1992, 1993, 1994, 1996, 1998, 1999, 2000, 2001,
- 2002, 2003, 2004, 2005
+ 2002, 2003, 2004, 2005, 2006
Free Software Foundation, Inc.
Contributed by Cygnus Solutions. Written by John Gilmore.
Second Edition by Stan Shebs.
@@ -49,7 +49,7 @@ Free Documentation License''.
@vskip 0pt plus 1filll
Copyright @copyright{} 1990,1991,1992,1993,1994,1996,1998,1999,2000,2001,
- 2002, 2003, 2004, 2005 Free Software Foundation, Inc.
+ 2002, 2003, 2004, 2005, 2006 Free Software Foundation, Inc.
Permission is granted to copy, distribute and/or modify this document
under the terms of the GNU Free Documentation License, Version 1.1 or
@@ -1985,6 +1985,22 @@ will only ever be implemented by one object file format may be called
directly. This interface should be described in a file
@file{bfd/lib@var{xyz}.h}, which is included by @value{GDBN}.
+@section Memory Management for Symbol Files
+
+Most memory associated with a loaded symbol file is stored on
+its @code{objfile_obstack}. This includes symbols, types,
+namespace data, and other information produced by the symbol readers.
+
+Because this data lives on the objfile's obstack, it is automatically
+released when the objfile is unloaded or reloaded. Therefore one
+objfile must not reference symbol or type data from another objfile;
+they could be unloaded at different times.
+
+User convenience variables, et cetera, have associated types. Normally
+these types live in the associated objfile. However, when the objfile
+is unloaded, those types are deep copied to global memory, so that
+the values of the user variables and history items are not lost.
+
@node Language Support