gdb: pass program space to entry_point_address

Make the current program space reference bubble up one level.

Change-Id: Ifc9b8186abaefb10caf99f79ae09e526fa65c882
Approved-By: Tom Tromey <tom@tromey.com>
Reviewed-By: Thiago Jung Bauermann <thiago.bauermann@linaro.org>
This commit is contained in:
Simon Marchi
2024-05-16 17:04:13 -04:00
committed by Simon Marchi
parent b7513ebd18
commit d1e4438fa1
5 changed files with 9 additions and 7 deletions

View File

@@ -861,7 +861,7 @@ arc_push_dummy_code (struct gdbarch *gdbarch, CORE_ADDR sp, CORE_ADDR funaddr,
struct regcache *regcache)
{
*real_pc = funaddr;
*bp_addr = entry_point_address ();
*bp_addr = entry_point_address (current_program_space);
return sp;
}

View File

@@ -56,7 +56,7 @@ displaced_step_at_entry_point (struct gdbarch *gdbarch)
CORE_ADDR addr;
int bp_len;
addr = entry_point_address ();
addr = entry_point_address (current_program_space);
/* Inferior calls also use the entry point as a breakpoint location.
We don't want displaced stepping to interfere with those

View File

@@ -1271,7 +1271,7 @@ call_function_by_hand_dummy (struct value *function,
CORE_ADDR dummy_addr;
real_pc = funaddr;
dummy_addr = entry_point_address ();
dummy_addr = entry_point_address (current_program_space);
/* A call dummy always consists of just a single breakpoint, so
its address is the same as the address of the dummy.

View File

@@ -360,14 +360,14 @@ entry_point_address_query (program_space *pspace, CORE_ADDR *entry_p)
return 1;
}
/* Get current entry point address. Call error if it is not known. */
/* See objfiles.h. */
CORE_ADDR
entry_point_address (void)
entry_point_address (program_space *pspace)
{
CORE_ADDR retval;
if (!entry_point_address_query (current_program_space, &retval))
if (!entry_point_address_query (pspace, &retval))
error (_("Entry point address is not known."));
return retval;

View File

@@ -918,7 +918,9 @@ obj_section::set_offset (CORE_ADDR offset)
extern int entry_point_address_query (program_space *pspace,
CORE_ADDR *entry_p);
extern CORE_ADDR entry_point_address (void);
/* Get the entry point address in PSPACE. Call error if it is not known. */
extern CORE_ADDR entry_point_address (program_space *pspace);
extern void build_objfile_section_table (struct objfile *);