diff options
author | Simon Marchi <simon.marchi@efficios.com> | 2023-09-29 14:24:38 -0400 |
---|---|---|
committer | Simon Marchi <simon.marchi@efficios.com> | 2023-10-10 10:44:35 -0400 |
commit | 99d9c3b92ca96a7425cbb6b1bf453ede9477a2ee (patch) | |
tree | 7f642c989f7c7b49bd40ab5873fc12be632e6ea9 /gdb/solib-frv.c | |
parent | 72c4529c85907a5e1e04960ff1362a5a185553a0 (diff) | |
download | fsf-binutils-gdb-99d9c3b92ca96a7425cbb6b1bf453ede9477a2ee.zip fsf-binutils-gdb-99d9c3b92ca96a7425cbb6b1bf453ede9477a2ee.tar.gz fsf-binutils-gdb-99d9c3b92ca96a7425cbb6b1bf453ede9477a2ee.tar.bz2 |
gdb: remove target_gdbarch
This function is just a wrapper around the current inferior's gdbarch.
I find that having that wrapper just obscures where the arch is coming
from, and that it's often used as "I don't know which arch to use so
I'll use this magical target_gdbarch function that gets me an arch" when
the arch should in fact come from something in the context (a thread,
objfile, symbol, etc). I think that removing it and inlining
`current_inferior ()->arch ()` everywhere will make it a bit clearer
where that arch comes from and will trigger people into reflecting
whether this is the right place to get the arch or not.
Change-Id: I79f14b4e4934c88f91ca3a3155f5fc3ea2fadf6b
Reviewed-By: John Baldwin <jhb@FreeBSD.org>
Approved-By: Andrew Burgess <aburgess@redhat.com>
Diffstat (limited to 'gdb/solib-frv.c')
-rw-r--r-- | gdb/solib-frv.c | 19 |
1 files changed, 10 insertions, 9 deletions
diff --git a/gdb/solib-frv.c b/gdb/solib-frv.c index 152168c..d4e84a1 100644 --- a/gdb/solib-frv.c +++ b/gdb/solib-frv.c @@ -26,6 +26,7 @@ #include "symtab.h" #include "elf/frv.h" #include "gdb_bfd.h" +#include "inferior.h" /* FR-V pointers are four bytes wide. */ enum { FRV_PTR_SIZE = 4 }; @@ -89,7 +90,7 @@ struct int_elf32_fdpic_loadmap { static struct int_elf32_fdpic_loadmap * fetch_loadmap (CORE_ADDR ldmaddr) { - enum bfd_endian byte_order = gdbarch_byte_order (target_gdbarch ()); + bfd_endian byte_order = gdbarch_byte_order (current_inferior ()->arch ()); struct ext_elf32_fdpic_loadmap ext_ldmbuf_partial; struct ext_elf32_fdpic_loadmap *ext_ldmbuf; struct int_elf32_fdpic_loadmap *int_ldmbuf; @@ -262,7 +263,7 @@ static CORE_ADDR main_lm_addr = 0; static CORE_ADDR lm_base (void) { - enum bfd_endian byte_order = gdbarch_byte_order (target_gdbarch ()); + bfd_endian byte_order = gdbarch_byte_order (current_inferior ()->arch ()); struct bound_minimal_symbol got_sym; CORE_ADDR addr; gdb_byte buf[FRV_PTR_SIZE]; @@ -308,7 +309,7 @@ lm_base (void) static struct so_list * frv_current_sos (void) { - enum bfd_endian byte_order = gdbarch_byte_order (target_gdbarch ()); + bfd_endian byte_order = gdbarch_byte_order (current_inferior ()->arch ()); CORE_ADDR lm_addr, mgot; struct so_list *sos_head = NULL; struct so_list **sos_next_ptr = &sos_head; @@ -495,7 +496,7 @@ static int enable_break2_done = 0; static int enable_break2 (void) { - enum bfd_endian byte_order = gdbarch_byte_order (target_gdbarch ()); + bfd_endian byte_order = gdbarch_byte_order (current_inferior ()->arch ()); asection *interp_sect; if (enable_break2_done) @@ -548,7 +549,7 @@ enable_break2 (void) return 0; } - status = frv_fdpic_loadmap_addresses (target_gdbarch (), + status = frv_fdpic_loadmap_addresses (current_inferior ()->arch (), &interp_loadmap_addr, 0); if (status < 0) { @@ -665,7 +666,7 @@ enable_break2 (void) remove_solib_event_breakpoints (); /* Now (finally!) create the solib breakpoint. */ - create_solib_event_breakpoint (target_gdbarch (), addr); + create_solib_event_breakpoint (current_inferior ()->arch (), addr); enable_break2_done = 1; @@ -709,7 +710,7 @@ enable_break (void) return 0; } - create_solib_event_breakpoint (target_gdbarch (), entry_point); + create_solib_event_breakpoint (current_inferior ()->arch (), entry_point); solib_debug_printf ("solib event breakpoint placed at entry point: %s", hex_string_custom (entry_point, 8)); @@ -724,7 +725,7 @@ frv_relocate_main_executable (void) struct int_elf32_fdpic_loadmap *ldm; int changed; - status = frv_fdpic_loadmap_addresses (target_gdbarch (), + status = frv_fdpic_loadmap_addresses (current_inferior ()->arch (), &interp_addr, &exec_addr); if (status < 0 || (exec_addr == 0 && interp_addr == 0)) @@ -943,7 +944,7 @@ find_canonical_descriptor_in_load_object (CORE_ADDR entry_point, CORE_ADDR got_value, const char *name, bfd *abfd, lm_info_frv *lm) { - enum bfd_endian byte_order = gdbarch_byte_order (target_gdbarch ()); + bfd_endian byte_order = gdbarch_byte_order (current_inferior ()->arch ()); arelent *rel; unsigned int i; CORE_ADDR addr = 0; |