aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorSimon Marchi <simon.marchi@efficios.com>2020-05-27 11:13:58 -0400
committerSimon Marchi <simon.marchi@efficios.com>2020-05-27 11:15:56 -0400
commit47b14e8676aa8a4d91f9e3af02aed3a4be00186a (patch)
treecd7c036018b870c050a26bd7e0206e0a4973b44b
parent43182c09c6f90ebd46c3980e788c751efda8b1a9 (diff)
downloadgdb-47b14e8676aa8a4d91f9e3af02aed3a4be00186a.zip
gdb-47b14e8676aa8a4d91f9e3af02aed3a4be00186a.tar.gz
gdb-47b14e8676aa8a4d91f9e3af02aed3a4be00186a.tar.bz2
Add dwarf2_per_objfile parameter to process_full_{comp,type}_unit
This allows removing the dwarf2_per_cu_data::dwarf2_per_objfile references in them. gdb/ChangeLog: * dwarf2/read.c (process_full_comp_unit): Add dwarf2_per_objfile parameter. (process_full_type_unit): Likewise. (process_queue): Update. Change-Id: Ie68baa8cc4bf1f81cc67d4ad13a59881b4c3feb6
-rw-r--r--gdb/ChangeLog7
-rw-r--r--gdb/dwarf2/read.c24
2 files changed, 21 insertions, 10 deletions
diff --git a/gdb/ChangeLog b/gdb/ChangeLog
index 4b78983..5136a2b 100644
--- a/gdb/ChangeLog
+++ b/gdb/ChangeLog
@@ -1,5 +1,12 @@
2020-05-27 Simon Marchi <simon.marchi@efficios.com>
+ * dwarf2/read.c (process_full_comp_unit): Add dwarf2_per_objfile
+ parameter.
+ (process_full_type_unit): Likewise.
+ (process_queue): Update.
+
+2020-05-27 Simon Marchi <simon.marchi@efficios.com>
+
* dwarf2/read.c (recursively_compute_inclusions): Add
dwarf2_per_objfile parameter.
(compute_compunit_symtab_includes): Likewise.
diff --git a/gdb/dwarf2/read.c b/gdb/dwarf2/read.c
index 070d880..7b4cfb3 100644
--- a/gdb/dwarf2/read.c
+++ b/gdb/dwarf2/read.c
@@ -1572,11 +1572,13 @@ static void load_full_comp_unit (dwarf2_per_cu_data *per_cu,
bool skip_partial,
enum language pretend_language);
-static void process_full_comp_unit (struct dwarf2_per_cu_data *,
- enum language);
+static void process_full_comp_unit (dwarf2_per_cu_data *per_cu,
+ dwarf2_per_objfile *per_objfile,
+ enum language pretend_language);
-static void process_full_type_unit (struct dwarf2_per_cu_data *,
- enum language);
+static void process_full_type_unit (dwarf2_per_cu_data *per_cu,
+ dwarf2_per_objfile *per_objfile,
+ enum language pretend_language);
static void dwarf2_add_dependence (struct dwarf2_cu *,
struct dwarf2_per_cu_data *);
@@ -9035,9 +9037,11 @@ process_queue (struct dwarf2_per_objfile *dwarf2_per_objfile)
fprintf_unfiltered (gdb_stdlog, "Expanding symtab of %s\n", buf);
if (per_cu->is_debug_types)
- process_full_type_unit (per_cu, item.pretend_language);
+ process_full_type_unit (per_cu, dwarf2_per_objfile,
+ item.pretend_language);
else
- process_full_comp_unit (per_cu, item.pretend_language);
+ process_full_comp_unit (per_cu, dwarf2_per_objfile,
+ item.pretend_language);
if (dwarf_read_debug >= debug_print_threshold)
fprintf_unfiltered (gdb_stdlog, "Done expanding %s\n", buf);
@@ -9741,11 +9745,11 @@ process_cu_includes (struct dwarf2_per_objfile *dwarf2_per_objfile)
already been loaded into memory. */
static void
-process_full_comp_unit (struct dwarf2_per_cu_data *per_cu,
+process_full_comp_unit (dwarf2_per_cu_data *per_cu,
+ dwarf2_per_objfile *dwarf2_per_objfile,
enum language pretend_language)
{
struct dwarf2_cu *cu = per_cu->cu;
- struct dwarf2_per_objfile *dwarf2_per_objfile = per_cu->dwarf2_per_objfile;
struct objfile *objfile = dwarf2_per_objfile->objfile;
struct gdbarch *gdbarch = objfile->arch ();
CORE_ADDR lowpc, highpc;
@@ -9841,11 +9845,11 @@ process_full_comp_unit (struct dwarf2_per_cu_data *per_cu,
already been loaded into memory. */
static void
-process_full_type_unit (struct dwarf2_per_cu_data *per_cu,
+process_full_type_unit (dwarf2_per_cu_data *per_cu,
+ dwarf2_per_objfile *dwarf2_per_objfile,
enum language pretend_language)
{
struct dwarf2_cu *cu = per_cu->cu;
- struct dwarf2_per_objfile *dwarf2_per_objfile = per_cu->dwarf2_per_objfile;
struct objfile *objfile = dwarf2_per_objfile->objfile;
struct compunit_symtab *cust;
struct signatured_type *sig_type;