gdb: change linux gdbarch data from post to pre-init
The following patch will need to fill a field in linux_gdbarch_data while the gdbarch is being built. linux_gdbarch_data is currently allocated as a post-init gdbarch data, meaning it's not possible to fill it before the gdbarch is completely initialized. Change it to a pre-init gdbarch data to allow this. The init_linux_gdbarch_data function doesn't use the created gdbarch, it only allocates the linux_gdbarch_data structure on the gdbarch's obstack, so the change is trivial. gdb/ChangeLog: * linux-tdep.c (init_linux_gdbarch_data): Change parameter to obkstack. (_initialize_linux_tdep): Register pre-init gdb data instead of post-init. Change-Id: If35ce91b6bb5435680d43b9268d811d95661644f
This commit is contained in:
parent
187b041e25
commit
d965505887
2 changed files with 10 additions and 3 deletions
|
@ -171,9 +171,9 @@ struct linux_gdbarch_data
|
|||
};
|
||||
|
||||
static void *
|
||||
init_linux_gdbarch_data (struct gdbarch *gdbarch)
|
||||
init_linux_gdbarch_data (struct obstack *obstack)
|
||||
{
|
||||
return GDBARCH_OBSTACK_ZALLOC (gdbarch, struct linux_gdbarch_data);
|
||||
return obstack_zalloc<linux_gdbarch_data> (obstack);
|
||||
}
|
||||
|
||||
static struct linux_gdbarch_data *
|
||||
|
@ -2676,7 +2676,7 @@ void
|
|||
_initialize_linux_tdep ()
|
||||
{
|
||||
linux_gdbarch_data_handle =
|
||||
gdbarch_data_register_post_init (init_linux_gdbarch_data);
|
||||
gdbarch_data_register_pre_init (init_linux_gdbarch_data);
|
||||
|
||||
/* Observers used to invalidate the cache when needed. */
|
||||
gdb::observers::inferior_exit.attach (invalidate_linux_cache_inf);
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue