aboutsummaryrefslogtreecommitdiff
path: root/gdb
diff options
context:
space:
mode:
authorSimon Marchi <simon.marchi@efficios.com>2021-11-19 20:59:59 -0500
committerSimon Marchi <simon.marchi@polymtl.ca>2022-02-06 15:48:18 -0500
commit43b49762a17718fe13718238a8c0af9b62b682d4 (patch)
tree8be30b479fd70e628e0f8a4e2085465549f98768 /gdb
parent0b17a4f78fb969e7c1ae298561ef6963c73006a7 (diff)
downloadfsf-binutils-gdb-43b49762a17718fe13718238a8c0af9b62b682d4.zip
fsf-binutils-gdb-43b49762a17718fe13718238a8c0af9b62b682d4.tar.gz
fsf-binutils-gdb-43b49762a17718fe13718238a8c0af9b62b682d4.tar.bz2
gdb: add compunit_symtab::add_filetab method
Add a method to append a filetab/symtab to a compunit_symtab. There is a single place where this is done currently, in allocate_symtab. Change-Id: Ie86c6e34d175728173d1cffdce44acd6cff6c31d
Diffstat (limited to 'gdb')
-rw-r--r--gdb/symfile.c11
-rw-r--r--gdb/symtab.h14
2 files changed, 15 insertions, 10 deletions
diff --git a/gdb/symfile.c b/gdb/symfile.c
index a660422..8ec214f 100644
--- a/gdb/symfile.c
+++ b/gdb/symfile.c
@@ -2804,16 +2804,7 @@ allocate_symtab (struct compunit_symtab *cust, const char *filename)
}
/* Add it to CUST's list of symtabs. */
- if (cust->filetabs == NULL)
- {
- cust->filetabs = symtab;
- cust->last_filetab = symtab;
- }
- else
- {
- cust->last_filetab->next = symtab;
- cust->last_filetab = symtab;
- }
+ cust->add_filetab (symtab);
/* Backlink to the containing compunit symtab. */
symtab->compunit_symtab = cust;
diff --git a/gdb/symtab.h b/gdb/symtab.h
index f6d787c..3fa4d5f 100644
--- a/gdb/symtab.h
+++ b/gdb/symtab.h
@@ -1459,6 +1459,20 @@ struct compunit_symtab
m_objfile = objfile;
}
+ void add_filetab (symtab *filetab)
+ {
+ if (this->filetabs == nullptr)
+ {
+ this->filetabs = filetab;
+ this->last_filetab = filetab;
+ }
+ else
+ {
+ this->last_filetab->next = filetab;
+ this->last_filetab = filetab;
+ }
+ }
+
/* Return the primary filetab of the compunit. */
symtab *primary_filetab () const;