summaryrefslogtreecommitdiff
path: root/gdb/somsolib.h
diff options
context:
space:
mode:
authorJim Blandy <jimb@codesourcery.com>2004-09-01 17:39:06 +0000
committerJim Blandy <jimb@codesourcery.com>2004-09-01 17:39:06 +0000
commit2b6538ed8eba1c07f12efb198940a1cb853dc6d1 (patch)
tree5d642f0d86f2b9a9b241350371c1da2d1a46cca7 /gdb/somsolib.h
parent3ad1997a606fd1b9b5f427d1b887795ea15a073b (diff)
downloadgdb-2b6538ed8eba1c07f12efb198940a1cb853dc6d1.tar.gz
gdb/ChangeLog:
2004-08-25 Jim Blandy <jimb@redhat.com> Merge changes from trunk: 2004-08-09 Jim Blandy <jimb@redhat.com> * rs6000-tdep.c (set_sim_regno, init_sim_regno_table, rs6000_register_sim_regno): Doc fixes. 2004-08-04 Jim Blandy <jimb@redhat.com> * ppc-linux-nat.c (fetch_register): Replace 'gdb_assert (0)' with a call to 'internal_error', with a more helpful error message. * rs6000-tdep.c (e500_pseudo_register_read, e500_pseudo_register_write, rs6000_store_return_value): Same. Change the layout of the PowerPC E500 raw register cache to allow the lower 32-bit halves of the GPRS to be their own raw registers, not pseudoregisters. * ppc-tdep.h (struct gdbarch_tdep): Remove ppc_gprs_pseudo_p flag; add ppc_ev0_upper_regnum flag. * rs6000-tdep.c: #include "reggroups.h". (spe_register_p): Recognize the ev upper half registers as SPE registers. (init_sim_regno_table): Build gdb->sim mappings for the upper-half registers. (e500_move_ev_register): New function. (e500_pseudo_register_read, e500_pseudo_register_write): The 'ev' vector registers are the pseudo-registers now, formed by splicing together the gprs and the upper-half registers. (e500_register_reggroup_p): New function. (P): Macro deleted. (P8, A4): New macro. (PPC_EV_REGS, PPC_GPRS_PSEUDO_REGS): Macros deleted. (PPC_SPE_GP_REGS, PPC_SPE_UPPER_GP_REGS, PPC_EV_PSEUDO_REGS): New macros. (registers_e500): Rearrange register set so that the raw register set contains 32-bit GPRs and upper-half registers, and the SPE vector registers become pseudo-registers. (rs6000_gdbarch_init): Don't initialize tdep->ppc_gprs_pseudo_p; it has been deleted. Initialize ppc_ev0_upper_regnum. Many other register numbers are now the same for the E500 as they are for other PowerPC variants. Register e500_register_reggroup_p as the register group function for the E500. * Makefile.in (rs6000-tdep.o): Update dependencies. Adapt PPC E500 native support to the new raw regcache layout. * ppc-linux-nat.c (struct gdb_evrregset_t): Doc fixes. (read_spliced_spe_reg, write_spliced_spe_reg): Deleted. (fetch_spe_register, store_spe_register): Handle fetching/storing all the SPE registers at once, if regno == -1. These now take over the job of fetch_spe_registers and store_spe_registers. (fetch_spe_registers, store_spe_registers): Deleted. (fetch_ppc_registers, store_ppc_registers): Fetch/store gprs unconditionally; they're always raw. Fetch/store SPE upper half registers, if present, instead of ev registers. (fetch_register, store_register): Remove sanity checks: gprs are never pseudo-registers now, so we never need to even mention any registers that are ever pseudoregisters. Use a fixed register numbering when communicating with the PowerPC simulator. * ppc-tdep.h (struct gdbarch_tdep): New member: 'sim_regno'. * rs6000-tdep.c: #include "sim-regno.h" and "gdb/sim-ppc.h". (set_sim_regno, init_sim_regno_table, rs6000_register_sim_regno): New functions. (rs6000_gdbarch_init): Register rs6000_register_sim_regno. Call init_sim_regno_table. * Makefile.in (gdb_sim_ppc_h): New variable. (rs6000-tdep.o): Update dependencies. 2004-08-02 Andrew Cagney <cagney@gnu.org> Replace DEPRECATED_REGISTER_RAW_SIZE with register_size. * rs6000-tdep.c (rs6000_push_dummy_call) (rs6000_extract_return_value): Use register_size. ... * ppc-linux-nat.c (fetch_altivec_register, fetch_register) (supply_vrregset, store_altivec_register, fill_vrregset): Ditto. 2004-07-20 Jim Blandy <jimb@redhat.com> * rs6000-tdep.c (rs6000_gdbarch_init): The register set used for bfd_mach_ppc has no segment registers. Include PowerPC SPR numbers for special-purpose registers. * rs6000-tdep.c (struct reg): Add new member, 'spr_num'. (R, R4, R8, R16, F, P, R32, R64, R0): Include value for new member in initializer. (S, S4, SN4, S64): New macros for defining special-purpose registers. (PPC_UISA_SPRS, PPC_UISA_NOFP_SPRS, PPC_OEA_SPRS, registers_power, registers_403, registers_403GC, registers_505, registers_860, registers_601, registers_602, registers_603, registers_604, registers_750, registers_e500): Use them. * rs6000-tdep.c (rs6000_gdbarch_init): Delete variable 'power'; replace references with expression used to initialize variable. 2004-07-16 Jim Blandy <jimb@redhat.com> * ppc-tdep.h (ppc_spr_asr): Add missing OEA SPR. (ppc_spr_mi_dbcam, ppc_spr_mi_dbram0, ppc_spr_mi_dbram1) (ppc_spr_md_cam, ppc_spr_md_ram0, ppc_spr_md_ram1): Add missing MPC823 SPRs. (ppc_spr_m_twb): Renamed from ppc_spr_md_twb; the old name was incorrect. (This was corrected in GDB's register name tables on 2004-07-14.) * rs6000-tdep.c (registers_602): Correct register name: "esassr" should be "esasrr" ("ESA Save and Restore Register"). 2004-07-15 Jim Blandy <jimb@redhat.com> * ppc-tdep.h (struct gdbarch_tdep): New member: ppc_sr0_regnum. * rs6000-tdep.c (rs6000_gdbarch_init): Initialize it. 2004-07-14 Jim Blandy <jimb@redhat.com> * rs6000-tdep.c (COMMON_UISA_NOFP_REGS): Delete; unused. * ppc-tdep.h (ppc_num_vrs): New enum constant. * ppc-tdep.h (ppc_num_srs): New enum constant. * ppc-tdep.h (ppc_spr_mq, ppc_spr_xer, ppc_spr_rtcu, ppc_spr_rtcl) (ppc_spr_lr, ppc_spr_ctr, ppc_spr_cnt, ppc_spr_dsisr, ppc_spr_dar) (ppc_spr_dec, ppc_spr_sdr1, ppc_spr_srr0, ppc_spr_srr1) (ppc_spr_eie, ppc_spr_eid, ppc_spr_nri, ppc_spr_sp, ppc_spr_cmpa) (ppc_spr_cmpb, ppc_spr_cmpc, ppc_spr_cmpd, ppc_spr_icr) (ppc_spr_der, ppc_spr_counta, ppc_spr_countb, ppc_spr_cmpe) (ppc_spr_cmpf, ppc_spr_cmpg, ppc_spr_cmph, ppc_spr_lctrl1) (ppc_spr_lctrl2, ppc_spr_ictrl, ppc_spr_bar, ppc_spr_vrsave) (ppc_spr_sprg0, ppc_spr_sprg1, ppc_spr_sprg2, ppc_spr_sprg3) (ppc_spr_ear, ppc_spr_tbl, ppc_spr_tbu, ppc_spr_pvr) (ppc_spr_spefscr, ppc_spr_ibat0u, ppc_spr_ibat0l, ppc_spr_ibat1u) (ppc_spr_ibat1l, ppc_spr_ibat2u, ppc_spr_ibat2l, ppc_spr_ibat3u) (ppc_spr_ibat3l, ppc_spr_dbat0u, ppc_spr_dbat0l, ppc_spr_dbat1u) (ppc_spr_dbat1l, ppc_spr_dbat2u, ppc_spr_dbat2l, ppc_spr_dbat3u) (ppc_spr_dbat3l, ppc_spr_ic_cst, ppc_spr_ic_adr, ppc_spr_ic_dat) (ppc_spr_dc_cst, ppc_spr_dc_adr, ppc_spr_dc_dat, ppc_spr_dpdr) (ppc_spr_dpir, ppc_spr_immr, ppc_spr_mi_ctr, ppc_spr_mi_ap) (ppc_spr_mi_epn, ppc_spr_mi_twc, ppc_spr_mi_rpn, ppc_spr_mi_cam) (ppc_spr_mi_ram0, ppc_spr_mi_ram1, ppc_spr_md_ctr, ppc_spr_m_casid) (ppc_spr_md_ap, ppc_spr_md_epn, ppc_spr_md_twb, ppc_spr_md_twc) (ppc_spr_md_rpn, ppc_spr_m_tw, ppc_spr_md_dbcam, ppc_spr_md_dbram0) (ppc_spr_md_dbram1, ppc_spr_ummcr0, ppc_spr_upmc1, ppc_spr_upmc2) (ppc_spr_usia, ppc_spr_ummcr1, ppc_spr_upmc3, ppc_spr_upmc4) (ppc_spr_zpr, ppc_spr_pid, ppc_spr_mmcr0, ppc_spr_pmc1) (ppc_spr_sgr, ppc_spr_pmc2, ppc_spr_dcwr, ppc_spr_sia) (ppc_spr_mmcr1, ppc_spr_pmc3, ppc_spr_pmc4, ppc_spr_sda) (ppc_spr_tbhu, ppc_spr_tblu, ppc_spr_dmiss, ppc_spr_dcmp) (ppc_spr_hash1, ppc_spr_hash2, ppc_spr_icdbdr, ppc_spr_imiss) (ppc_spr_esr, ppc_spr_icmp, ppc_spr_dear, ppc_spr_rpa) (ppc_spr_evpr, ppc_spr_cdbcr, ppc_spr_tsr, ppc_spr_602_tcr) (ppc_spr_403_tcr, ppc_spr_ibr, ppc_spr_pit, ppc_spr_esasrr) (ppc_spr_tbhi, ppc_spr_tblo, ppc_spr_srr2, ppc_spr_sebr) (ppc_spr_srr3, ppc_spr_ser, ppc_spr_hid0, ppc_spr_dbsr) (ppc_spr_hid1, ppc_spr_iabr, ppc_spr_dbcr, ppc_spr_iac1) (ppc_spr_dabr, ppc_spr_iac2, ppc_spr_dac1, ppc_spr_dac2) (ppc_spr_l2cr, ppc_spr_dccr, ppc_spr_ictc, ppc_spr_iccr) (ppc_spr_thrm1, ppc_spr_pbl1, ppc_spr_thrm2, ppc_spr_pbu1) (ppc_spr_thrm3, ppc_spr_pbl2, ppc_spr_fpecr, ppc_spr_lt) (ppc_spr_pir, ppc_spr_pbu2): New enum constants for PowerPC special-purpose register numbers. * rs6000-tdep.c (registers_860): Correct register name. (No PPC manual mentions 'md_twb', but many mention 'm_twb', and at that point in the register list.) include/gdb/ChangeLog: 2004-08-04 Andrew Cagney <cagney@gnu.org> * sim-ppc.h: Add extern "C" wrapper. (enum sim_ppc_regnum): Add full list of SPRs. 2004-08-04 Jim Blandy <jimb@redhat.com> * sim-ppc.h: New file. sim/ppc/ChangeLog: 2004-08-04 Andrew Cagney <cagney@gnu.org> Jim Blandy <jimb@redhat.com> * sim_callbacks.h (simulator): Declare. * Makefile.in (gdb-sim.o): New rule. (MAIN_SRC, GDB_OBJ): Add gdb-sim.o, gdb-sim.c. (DEFS_H): Delete. (GDB_SIM_PPC_H): Define. * gdb-sim.c: New file. * sim_calls.c: Do not include "defs.h". (simulator): Drop static. (sim_store_register, sim_fetch_register): Delete.
Diffstat (limited to 'gdb/somsolib.h')
-rw-r--r--gdb/somsolib.h178
1 files changed, 0 insertions, 178 deletions
diff --git a/gdb/somsolib.h b/gdb/somsolib.h
deleted file mode 100644
index c2414118843..00000000000
--- a/gdb/somsolib.h
+++ /dev/null
@@ -1,178 +0,0 @@
-/* HP SOM Shared library declarations for GDB, the GNU Debugger.
-
- Copyright 1992, 1994, 1995, 1998, 1999, 2000, 2003 Free Software
- Foundation, Inc.
-
- This file is part of GDB.
-
- This program is free software; you can redistribute it and/or modify
- it under the terms of the GNU General Public License as published by
- the Free Software Foundation; either version 2 of the License, or
- (at your option) any later version.
-
- This program is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- GNU General Public License for more details.
-
- You should have received a copy of the GNU General Public License
- along with this program; if not, write to the Free Software
- Foundation, Inc., 59 Temple Place - Suite 330,
- Boston, MA 02111-1307, USA.
-
- Written by the Center for Software Science at the Univerity of Utah
- and by Cygnus Support. */
-
-#ifndef SOMSOLIB_H
-#define SOMSOLIB_H
-
-/* Forward decl's for prototypes */
-struct target_ops;
-struct objfile;
-struct section_offsets;
-
-/* Called to add symbols from a shared library to gdb's symbol table. */
-
-#define SOLIB_ADD(filename, from_tty, targ, readsyms) \
- som_solib_add (filename, from_tty, targ, readsyms)
-
-extern void som_solib_add (char *, int, struct target_ops *, int);
-
-extern CORE_ADDR som_solib_get_got_by_pc (CORE_ADDR);
-
-extern int som_solib_section_offsets (struct objfile *,
- struct section_offsets *);
-
-/* Function to be called when the inferior starts up, to discover the names
- of shared libraries that are dynamically linked, the base addresses to
- which they are linked, and sufficient information to read in their symbols
- at a later time. */
-
-#define SOLIB_CREATE_INFERIOR_HOOK(PID) som_solib_create_inferior_hook()
-
-extern void som_solib_create_inferior_hook (void);
-
-/* Function to be called to remove the connection between debugger and
- dynamic linker that was established by SOLIB_CREATE_INFERIOR_HOOK.
- (This operation does not remove shared library information from
- the debugger, as CLEAR_SOLIB does.)
- */
-#define SOLIB_REMOVE_INFERIOR_HOOK(PID) som_solib_remove_inferior_hook(PID)
-
-extern void som_solib_remove_inferior_hook (int);
-
-/* This function is called by the "catch load" command. It allows
- the debugger to be notified by the dynamic linker when a specified
- library file (or any library file, if filename is NULL) is loaded.
- */
-#define SOLIB_CREATE_CATCH_LOAD_HOOK(pid,tempflag, filename,cond_string) \
- som_solib_create_catch_load_hook (pid, tempflag, filename, cond_string)
-
-extern void som_solib_create_catch_load_hook (int, int, char *, char *);
-
-/* This function is called by the "catch unload" command. It allows
- the debugger to be notified by the dynamic linker when a specified
- library file (or any library file, if filename is NULL) is unloaded.
- */
-#define SOLIB_CREATE_CATCH_UNLOAD_HOOK(pid,tempflag,filename, cond_string) \
- som_solib_create_catch_unload_hook (pid, tempflag, filename, cond_string)
-
-extern void som_solib_create_catch_unload_hook (int, int, char *, char *);
-
-/* This function returns TRUE if the dynamic linker has just reported
- a load of a library.
-
- This function must be used only when the inferior has stopped in
- the dynamic linker hook, or undefined results are guaranteed.
- */
-#define SOLIB_HAVE_LOAD_EVENT(pid) \
- som_solib_have_load_event (pid)
-
-extern int som_solib_have_load_event (int);
-
-/* This function returns a pointer to the string representation of the
- pathname of the dynamically-linked library that has just been loaded.
-
- This function must be used only when SOLIB_HAVE_LOAD_EVENT is TRUE,
- or undefined results are guaranteed.
-
- This string's contents are only valid immediately after the inferior
- has stopped in the dynamic linker hook, and becomes invalid as soon
- as the inferior is continued. Clients should make a copy of this
- string if they wish to continue the inferior and then access the string.
- */
-#define SOLIB_LOADED_LIBRARY_PATHNAME(pid) \
- som_solib_loaded_library_pathname (pid)
-
-extern char *som_solib_loaded_library_pathname (int);
-
-/* This function returns TRUE if the dynamic linker has just reported
- an unload of a library.
-
- This function must be used only when the inferior has stopped in
- the dynamic linker hook, or undefined results are guaranteed.
- */
-#define SOLIB_HAVE_UNLOAD_EVENT(pid) \
- som_solib_have_unload_event (pid)
-
-extern int som_solib_have_unload_event (int);
-
-/* This function returns a pointer to the string representation of the
- pathname of the dynamically-linked library that has just been unloaded.
-
- This function must be used only when SOLIB_HAVE_UNLOAD_EVENT is TRUE,
- or undefined results are guaranteed.
-
- This string's contents are only valid immediately after the inferior
- has stopped in the dynamic linker hook, and becomes invalid as soon
- as the inferior is continued. Clients should make a copy of this
- string if they wish to continue the inferior and then access the string.
- */
-#define SOLIB_UNLOADED_LIBRARY_PATHNAME(pid) \
- som_solib_unloaded_library_pathname (pid)
-
-extern char *som_solib_unloaded_library_pathname (int);
-
-/* This function returns TRUE if pc is the address of an instruction that
- lies within the dynamic linker (such as the event hook, or the dld
- itself).
-
- This function must be used only when a dynamic linker event has been
- caught, and the inferior is being stepped out of the hook, or undefined
- results are guaranteed.
- */
-#define SOLIB_IN_DYNAMIC_LINKER(pid,pc) \
- som_solib_in_dynamic_linker (pid, pc)
-
-extern int som_solib_in_dynamic_linker (int, CORE_ADDR);
-
-/* This function must be called when the inferior is killed, and the program
- restarted. This is not the same as CLEAR_SOLIB, in that it doesn't discard
- any symbol tables.
-
- Presently, this functionality is not implemented.
- */
-#define SOLIB_RESTART() \
- som_solib_restart ()
-
-extern void som_solib_restart (void);
-
-/* If we can't set a breakpoint, and it's in a shared library, just
- disable it. */
-
-#define DISABLE_UNSETTABLE_BREAK(addr) (som_solib_address(addr) != NULL)
-
-extern char *som_solib_address (CORE_ADDR); /* somsolib.c */
-
-/* If ADDR lies in a shared library, return its name. */
-
-#define PC_SOLIB(addr) som_solib_address (addr)
-
-extern CORE_ADDR som_solib_get_solib_by_pc (CORE_ADDR addr);
-
-struct so_list;
-extern CORE_ADDR so_lib_thread_start_addr (struct so_list *so);
-
-extern void no_shared_libraries (char *ignored, int from_tty);
-
-#endif