X-Git-Url: https://git.libre-soc.org/?a=blobdiff_plain;f=gdb%2Fhppa-tdep.h;h=f1e24a272c4dbf47475e56a702d2ee318b1208bf;hb=e008305278cb42a576107cd8aa9f0b182eea1af2;hp=f73c7ca0f4d123b210a66a1dc2f637e5864becf1;hpb=61a12cfa7b25746914493cc0d94e5053a8492aa5;p=binutils-gdb.git diff --git a/gdb/hppa-tdep.h b/gdb/hppa-tdep.h index f73c7ca0f4d..f1e24a272c4 100644 --- a/gdb/hppa-tdep.h +++ b/gdb/hppa-tdep.h @@ -1,6 +1,6 @@ /* Target-dependent code for the HP PA-RISC architecture. - Copyright (C) 2003-2015 Free Software Foundation, Inc. + Copyright (C) 2003-2022 Free Software Foundation, Inc. This file is part of GDB. @@ -20,6 +20,8 @@ #ifndef HPPA_TDEP_H #define HPPA_TDEP_H +#include "gdbarch.h" + struct trad_frame_saved_reg; struct objfile; struct so_list; @@ -82,24 +84,25 @@ enum hppa_regnum #define HPPA_INSN_SIZE 4 /* Target-dependent structure in gdbarch. */ -struct gdbarch_tdep +struct hppa_gdbarch_tdep : gdbarch_tdep { /* The number of bytes in an address. For now, this field is designed to allow us to differentiate hppa32 from hppa64 targets. */ - int bytes_per_address; + int bytes_per_address = 0; /* Is this an ELF target? This can be 64-bit HP-UX, or a 32/64-bit GNU/Linux system. */ - int is_elf; + int is_elf = 0; /* Given a function address, try to find the global pointer for the corresponding shared object. */ - CORE_ADDR (*find_global_pointer) (struct gdbarch *, struct value *); + CORE_ADDR (*find_global_pointer) (struct gdbarch *, struct value *) = nullptr; /* For shared libraries, each call goes through a small piece of trampoline code in the ".plt" section. IN_SOLIB_CALL_TRAMPOLINE evaluates to nonzero if we are currently stopped in one of these. */ - int (*in_solib_call_trampoline) (struct gdbarch *gdbarch, CORE_ADDR pc); + int (*in_solib_call_trampoline) (struct gdbarch *gdbarch, + CORE_ADDR pc) = nullptr; /* For targets that support multiple spaces, we may have additional stubs in the return path. These stubs are internal to the ABI, and users are @@ -107,14 +110,14 @@ struct gdbarch_tdep adjust the pc to the real caller. This improves the behavior of commands that traverse frames such as "up" and "finish". */ void (*unwind_adjust_stub) (struct frame_info *this_frame, CORE_ADDR base, - struct trad_frame_saved_reg *saved_regs); + trad_frame_saved_reg *saved_regs) = nullptr; /* These are solib-dependent methods. They are really HPUX only, but we don't have a HPUX-specific tdep vector at the moment. */ - CORE_ADDR (*solib_thread_start_addr) (struct so_list *so); - CORE_ADDR (*solib_get_got_by_pc) (CORE_ADDR addr); - CORE_ADDR (*solib_get_solib_by_pc) (CORE_ADDR addr); - CORE_ADDR (*solib_get_text_base) (struct objfile *objfile); + CORE_ADDR (*solib_thread_start_addr) (struct so_list *so) = nullptr; + CORE_ADDR (*solib_get_got_by_pc) (CORE_ADDR addr) = nullptr; + CORE_ADDR (*solib_get_solib_by_pc) (CORE_ADDR addr) = nullptr; + CORE_ADDR (*solib_get_text_base) (struct objfile *objfile) = nullptr; }; /* @@ -199,7 +202,7 @@ CORE_ADDR hppa_symbol_address(const char *sym); extern struct value * hppa_frame_prev_register_helper (struct frame_info *this_frame, - struct trad_frame_saved_reg *saved_regs, + trad_frame_saved_reg *saved_regs, int regnum); extern CORE_ADDR hppa_read_pc (struct regcache *regcache); @@ -209,7 +212,7 @@ extern CORE_ADDR hppa_unwind_pc (struct gdbarch *gdbarch, extern struct bound_minimal_symbol hppa_lookup_stub_minimal_symbol (const char *name, - enum unwind_stub_types stub_type); + enum unwind_stub_types stub_type); extern int hppa_in_solib_call_trampoline (struct gdbarch *gdbarch, CORE_ADDR pc);