summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorSimon Marchi <simon.marchi@polymtl.ca>2019-09-30 11:49:25 -0400
committerSimon Marchi <simon.marchi@efficios.com>2019-09-30 11:49:57 -0400
commit703a86c2fa74e6c998ed24a8823658119f176b2d (patch)
tree7fc9d2839ea1f065fe04c7dafde70fc8f386ef9b
parent663f67df1e8a7ac0ab8c8c577817067ca32ea4be (diff)
downloadbinutils-gdb-703a86c2fa74e6c998ed24a8823658119f176b2d.tar.gz
gdb: re-write add_psymbol_to_list doc, move it to header file
The comment above the add_psymbol_to_list function seems outdated and misleading, here's an attempt at improving it. gdb/ChangeLog: * psymtab.c (add_psymbol_to_list): Move comment to psympriv.h. * psympriv.h (add_psymbol_to_list): Move comment here and update it.
-rw-r--r--gdb/ChangeLog6
-rw-r--r--gdb/psympriv.h35
-rw-r--r--gdb/psymtab.c6
3 files changed, 33 insertions, 14 deletions
diff --git a/gdb/ChangeLog b/gdb/ChangeLog
index 077b7496323..89859ef1dfe 100644
--- a/gdb/ChangeLog
+++ b/gdb/ChangeLog
@@ -1,3 +1,9 @@
+2019-09-30 Simon Marchi <simon.marchi@polymtl.ca>
+
+ * psymtab.c (add_psymbol_to_list): Move comment to psympriv.h.
+ * psympriv.h (add_psymbol_to_list): Move comment here and update
+ it.
+
2019-09-29 Tom de Vries <tdevries@suse.de>
* contrib/cc-with-tweaks.sh (get_tmpdir): New function.
diff --git a/gdb/psympriv.h b/gdb/psympriv.h
index 9d22f5c9acf..3e89742d8d5 100644
--- a/gdb/psympriv.h
+++ b/gdb/psympriv.h
@@ -286,15 +286,32 @@ enum class psymbol_placement
GLOBAL
};
-/* Add any kind of symbol to a partial_symbol vector. */
-
-extern void add_psymbol_to_list (const char *, int,
- bool, domain_enum,
- enum address_class,
- short /* section */,
- enum psymbol_placement,
- CORE_ADDR,
- enum language, struct objfile *);
+/* Add a symbol to the partial symbol table of OBJFILE.
+
+ If COPY_NAME is true, make a copy of NAME, otherwise use the passed
+ reference.
+
+ THECLASS is the type of symbol.
+
+ SECTION is the index of the section of OBJFILE in which the symbol is found.
+
+ WHERE determines whether the symbol goes in the list of static or global
+ partial symbols of OBJFILE.
+
+ COREADDR is the address of the symbol. For partial symbols that don't have
+ an address, zero is passed.
+
+ LANGUAGE is the language from which the symbol originates. This will
+ influence, amongst other things, how the symbol name is demangled. */
+
+extern void add_psymbol_to_list (const char *name, int namelength,
+ bool copy_name, domain_enum domain,
+ enum address_class theclass,
+ short section,
+ psymbol_placement where,
+ CORE_ADDR coreaddr,
+ enum language language,
+ struct objfile *objfile);
/* Initialize storage for partial symbols. If partial symbol storage
has already been initialized, this does nothing. TOTAL_SYMBOLS is
diff --git a/gdb/psymtab.c b/gdb/psymtab.c
index 031dbd9c1ef..31b6d597773 100644
--- a/gdb/psymtab.c
+++ b/gdb/psymtab.c
@@ -1605,11 +1605,7 @@ append_psymbol_to_list (std::vector<partial_symbol *> *list,
OBJSTAT (objfile, n_psyms++);
}
-/* Add a symbol with a long value to a psymtab.
- Since one arg is a struct, we pass in a ptr and deref it (sigh).
- The only value we need to store for psyms is an address.
- For all other psyms pass zero for COREADDR.
- Return the partial symbol that has been added. */
+/* See psympriv.h. */
void
add_psymbol_to_list (const char *name, int namelength, bool copy_name,