Andrew Cagney [Mon, 15 Mar 2004 21:35:25 +0000 (21:35 +0000)]
2004-03-15 Andrew Cagney <cagney@redhat.com>
* ppc-tdep.h: Update copyright.
(ppc_linux_supply_gregset, ppc_linux_supply_fpregset): Change
function signatures to match "regsets.h".
* ppc-linux-tdep.c: Include "regset.h".
(ELF_GREGSET_SIZE): Delete.
(right_supply_register): New function.
(ppc_linux_supply_fpregset, ppc_linux_supply_gregset): Rewrite
using right_supply_register.
(ppc32_linux_supply_gregset, ppc64_linux_supply_gregset): New
functions.
(ppc64_linux_gregset, ppc32_linux_gregset): Define.
(ppc_linux_init_abi): Register ppc_linux_regset_from_core_section.
(_initialize_ppc_linux_tdep): Do not register
ppc_linux_regset_core_fns.
(ppc_linux_regset_from_core_section): Replace
fetch_core_registers.
(ppc_linux_regset_core_fns): Delete.
* ppc-linux-nat.c: (right_fill_reg): New function.
(supply_gregset): Update call to ppc_linux_supply_gregset.
(fill_gregset): Clear the register set, use right_fill_reg.
(supply_fpregset): Update call to ppc_linux_supply_fpregset.
(fill_fpregset): Use right_fill_reg, correctly compute FP offsets.
Index: ppc-linux-nat.c
===================================================================
RCS file: /cvs/src/src/gdb/ppc-linux-nat.c,v
retrieving revision 1.28
diff -u -r1.28 ppc-linux-nat.c
--- ppc-linux-nat.c 8 Mar 2004 01:45:02 -0000 1.28
+++ ppc-linux-nat.c 15 Mar 2004 21:28:31 -0000
@@ -507,7 +507,24 @@
void
supply_gregset (gdb_gregset_t *gregsetp)
{
- ppc_linux_supply_gregset ((char *) gregsetp);
+ /* NOTE: cagney/2003-11-25: This is the word size used by the ptrace
+ interface, and not the wordsize of the program's ABI. */
+ int wordsize = sizeof (PTRACE_XFER_TYPE);
+ ppc_linux_supply_gregset (current_regcache, -1, gregsetp,
+ sizeof (gdb_gregset_t), wordsize);
+}
+
+static void
+right_fill_reg (int regnum, void *reg)
+{
+ /* NOTE: cagney/2003-11-25: This is the word size used by the ptrace
+ interface, and not the wordsize of the program's ABI. */
+ int wordsize = sizeof (PTRACE_XFER_TYPE);
+ /* Right fill the register. */
+ regcache_raw_collect (current_regcache, regnum,
+ ((bfd_byte *) reg
+ + wordsize
+ - register_size (current_gdbarch, regnum)));
}
void
@@ -516,36 +533,42 @@
int regi;
elf_greg_t *regp = (elf_greg_t *) gregsetp;
struct gdbarch_tdep *tdep = gdbarch_tdep (current_gdbarch);
+ const int elf_ngreg = 48;
+
+
+ /* Start with zeros. */
+ memset (regp, 0, elf_ngreg * sizeof (*regp));
for (regi = 0; regi < 32; regi++)
{
if ((regno == -1) || regno == regi)
- regcache_collect (regi, regp + PT_R0 + regi);
+ right_fill_reg (regi, (regp + PT_R0 + regi));
}
if ((regno == -1) || regno == PC_REGNUM)
- regcache_collect (PC_REGNUM, regp + PT_NIP);
+ right_fill_reg (PC_REGNUM, regp + PT_NIP);
if ((regno == -1) || regno == tdep->ppc_lr_regnum)
- regcache_collect (tdep->ppc_lr_regnum, regp + PT_LNK);
+ right_fill_reg (tdep->ppc_lr_regnum, regp + PT_LNK);
if ((regno == -1) || regno == tdep->ppc_cr_regnum)
regcache_collect (tdep->ppc_cr_regnum, regp + PT_CCR);
if ((regno == -1) || regno == tdep->ppc_xer_regnum)
regcache_collect (tdep->ppc_xer_regnum, regp + PT_XER);
if ((regno == -1) || regno == tdep->ppc_ctr_regnum)
- regcache_collect (tdep->ppc_ctr_regnum, regp + PT_CTR);
+ right_fill_reg (tdep->ppc_ctr_regnum, regp + PT_CTR);
#ifdef PT_MQ
if (((regno == -1) || regno == tdep->ppc_mq_regnum)
&& (tdep->ppc_mq_regnum != -1))
- regcache_collect (tdep->ppc_mq_regnum, regp + PT_MQ);
+ right_fill_reg (tdep->ppc_mq_regnum, regp + PT_MQ);
#endif
if ((regno == -1) || regno == tdep->ppc_ps_regnum)
- regcache_collect (tdep->ppc_ps_regnum, regp + PT_MSR);
+ right_fill_reg (tdep->ppc_ps_regnum, regp + PT_MSR);
}
void
supply_fpregset (gdb_fpregset_t * fpregsetp)
{
- ppc_linux_supply_fpregset ((char *) fpregsetp);
+ ppc_linux_supply_fpregset (NULL, current_regcache, -1, fpregsetp,
+ sizeof (gdb_fpregset_t));
}
/* Given a pointer to a floating point register set in /proc format
@@ -557,12 +580,13 @@
{
int regi;
struct gdbarch_tdep *tdep = gdbarch_tdep (current_gdbarch);
+ bfd_byte *fpp = (void *) fpregsetp;
for (regi = 0; regi < 32; regi++)
{
if ((regno == -1) || (regno == FP0_REGNUM + regi))
- regcache_collect (FP0_REGNUM + regi, (char *) (*fpregsetp + regi));
+ regcache_collect (FP0_REGNUM + regi, fpp + 8 * regi);
}
if ((regno == -1) || regno == tdep->ppc_fpscr_regnum)
- regcache_collect (tdep->ppc_fpscr_regnum, (char *) (*fpregsetp + regi));
+ right_fill_reg (tdep->ppc_fpscr_regnum, (fpp + 8 * 32));
}
Index: ppc-linux-tdep.c
===================================================================
RCS file: /cvs/src/src/gdb/ppc-linux-tdep.c,v
retrieving revision 1.50
diff -u -r1.50 ppc-linux-tdep.c
--- ppc-linux-tdep.c 16 Feb 2004 21:49:22 -0000 1.50
+++ ppc-linux-tdep.c 15 Mar 2004 21:28:31 -0000
@@ -32,7 +32,7 @@
#include "regcache.h"
#include "value.h"
#include "osabi.h"
-
+#include "regset.h"
#include "solib-svr4.h"
#include "ppc-tdep.h"
@@ -959,81 +959,114 @@
};
enum {
- ELF_GREGSET_SIZE = (ELF_NGREG * 4),
ELF_FPREGSET_SIZE = (ELF_NFPREG * 8)
};
+static void
+right_supply_register (struct regcache *regcache, int wordsize, int regnum,
+ const bfd_byte *buf)
+{
+ regcache_raw_supply (regcache, regnum,
+ (buf + wordsize
+ - register_size (current_gdbarch, regnum)));
+}
+
+/* Extract the register values found in the WORDSIZED ABI GREGSET,
+ storing their values in REGCACHE. Note that some are left-aligned,
+ while others are right aligned. */
+
void
-ppc_linux_supply_gregset (char *buf)
+ppc_linux_supply_gregset (struct regcache *regcache,
+ int regnum, const void *gregs, size_t size,
+ int wordsize)
{
int regi;
- struct gdbarch_tdep *tdep = gdbarch_tdep (current_gdbarch);
+ struct gdbarch *regcache_arch = get_regcache_arch (regcache);
+ struct gdbarch_tdep *regcache_tdep = gdbarch_tdep (regcache_arch);
+ const bfd_byte *buf = gregs;
for (regi = 0; regi < 32; regi++)
- supply_register (regi, buf + 4 * regi);
+ right_supply_register (regcache, wordsize, regi, buf + wordsize * regi);
+
+ right_supply_register (regcache, wordsize, gdbarch_pc_regnum (regcache_arch),
+ buf + wordsize * PPC_LINUX_PT_NIP);
+ right_supply_register (regcache, wordsize, regcache_tdep->ppc_lr_regnum,
+ buf + wordsize * PPC_LINUX_PT_LNK);
+ regcache_raw_supply (regcache, regcache_tdep->ppc_cr_regnum,
+ buf + wordsize * PPC_LINUX_PT_CCR);
+ regcache_raw_supply (regcache, regcache_tdep->ppc_xer_regnum,
+ buf + wordsize * PPC_LINUX_PT_XER);
+ regcache_raw_supply (regcache, regcache_tdep->ppc_ctr_regnum,
+ buf + wordsize * PPC_LINUX_PT_CTR);
+ if (regcache_tdep->ppc_mq_regnum != -1)
+ right_supply_register (regcache, wordsize, regcache_tdep->ppc_mq_regnum,
+ buf + wordsize * PPC_LINUX_PT_MQ);
+ right_supply_register (regcache, wordsize, regcache_tdep->ppc_ps_regnum,
+ buf + wordsize * PPC_LINUX_PT_MSR);
+}
- supply_register (PC_REGNUM, buf + 4 * PPC_LINUX_PT_NIP);
- supply_register (tdep->ppc_lr_regnum, buf + 4 * PPC_LINUX_PT_LNK);
- supply_register (tdep->ppc_cr_regnum, buf + 4 * PPC_LINUX_PT_CCR);
- supply_register (tdep->ppc_xer_regnum, buf + 4 * PPC_LINUX_PT_XER);
- supply_register (tdep->ppc_ctr_regnum, buf + 4 * PPC_LINUX_PT_CTR);
- if (tdep->ppc_mq_regnum != -1)
- supply_register (tdep->ppc_mq_regnum, buf + 4 * PPC_LINUX_PT_MQ);
- supply_register (tdep->ppc_ps_regnum, buf + 4 * PPC_LINUX_PT_MSR);
+static void
+ppc32_linux_supply_gregset (const struct regset *regset,
+ struct regcache *regcache,
+ int regnum, const void *gregs, size_t size)
+{
+ ppc_linux_supply_gregset (regcache, regnum, gregs, size, 4);
}
+static struct regset ppc32_linux_gregset = {
+ NULL, ppc32_linux_supply_gregset
+};
+
+static void
+ppc64_linux_supply_gregset (const struct regset *regset,
+ struct regcache * regcache,
+ int regnum, const void *gregs, size_t size)
+{
+ ppc_linux_supply_gregset (regcache, regnum, gregs, size, 8);
+}
+
+static struct regset ppc64_linux_gregset = {
+ NULL, ppc64_linux_supply_gregset
+};
+
void
-ppc_linux_supply_fpregset (char *buf)
+ppc_linux_supply_fpregset (const struct regset *regset,
+ struct regcache * regcache,
+ int regnum, const void *fpset, size_t size)
{
int regi;
- struct gdbarch_tdep *tdep = gdbarch_tdep (current_gdbarch);
+ struct gdbarch *regcache_arch = get_regcache_arch (regcache);
+ struct gdbarch_tdep *regcache_tdep = gdbarch_tdep (regcache_arch);
+ const bfd_byte *buf = fpset;
for (regi = 0; regi < 32; regi++)
- supply_register (FP0_REGNUM + regi, buf + 8 * regi);
+ regcache_raw_supply (regcache, FP0_REGNUM + regi, buf + 8 * regi);
/* The FPSCR is stored in the low order word of the last doubleword in the
fpregset. */
- supply_register (tdep->ppc_fpscr_regnum, buf + 8 * 32 + 4);
+ regcache_raw_supply (regcache, regcache_tdep->ppc_fpscr_regnum,
+ buf + 8 * 32 + 4);
}
-/*
- Use a local version of this function to get the correct types for regsets.
-*/
+static struct regset ppc_linux_fpregset = { NULL, ppc_linux_supply_fpregset };
-static void
-fetch_core_registers (char *core_reg_sect,
- unsigned core_reg_size,
- int which,
- CORE_ADDR reg_addr)
+static const struct regset *
+ppc_linux_regset_from_core_section (struct gdbarch *core_arch,
+ const char *sect_name, size_t sect_size)
{
- if (which == 0)
+ struct gdbarch_tdep *tdep = gdbarch_tdep (core_arch);
+ if (strcmp (sect_name, ".reg") == 0)
{
- if (core_reg_size == ELF_GREGSET_SIZE)
- ppc_linux_supply_gregset (core_reg_sect);
+ if (tdep->wordsize == 4)
+ return &ppc32_linux_gregset;
else
- warning ("wrong size gregset struct in core file");
- }
- else if (which == 2)
- {
- if (core_reg_size == ELF_FPREGSET_SIZE)
- ppc_linux_supply_fpregset (core_reg_sect);
- else
- warning ("wrong size fpregset struct in core file");
+ return &ppc64_linux_gregset;
}
+ if (strcmp (sect_name, ".reg2") == 0)
+ return &ppc_linux_fpregset;
+ return NULL;
}
-/* Register that we are able to handle ELF file formats using standard
- procfs "regset" structures. */
-
-static struct core_fns ppc_linux_regset_core_fns =
-{
- bfd_target_elf_flavour, /* core_flavour */
- default_check_format, /* check_format */
- default_core_sniffer, /* core_sniffer */
- fetch_core_registers, /* core_read_registers */
- NULL /* next */
-};
-
static void
ppc_linux_init_abi (struct gdbarch_info info,
struct gdbarch *gdbarch)
@@ -1086,6 +1119,7 @@
/* PPC64 malloc's entry-point is called ".malloc". */
set_gdbarch_name_of_malloc (gdbarch, ".malloc");
}
+ set_gdbarch_regset_from_core_section (gdbarch, ppc_linux_regset_from_core_section);
}
void
@@ -1099,5 +1133,4 @@
ppc_linux_init_abi);
gdbarch_register_osabi (bfd_arch_rs6000, bfd_mach_rs6k, GDB_OSABI_LINUX,
ppc_linux_init_abi);
- add_core_fns (&ppc_linux_regset_core_fns);
}
Index: ppc-tdep.h
===================================================================
RCS file: /cvs/src/src/gdb/ppc-tdep.h,v
retrieving revision 1.25
diff -u -r1.25 ppc-tdep.h
--- ppc-tdep.h 10 Nov 2003 22:47:28 -0000 1.25
+++ ppc-tdep.h 15 Mar 2004 21:28:31 -0000
@@ -1,6 +1,7 @@
/* Target-dependent code for GDB, the GNU debugger.
- Copyright 2000, 2001, 2002, 2003
- Free Software Foundation, Inc.
+
+ Copyright 2000, 2001, 2002, 2003, 2004 Free Software Foundation,
+ Inc.
This file is part of GDB.
@@ -62,8 +63,12 @@
CORE_ADDR bpaddr);
int ppc_linux_memory_remove_breakpoint (CORE_ADDR addr, char *contents_cache);
struct link_map_offsets *ppc_linux_svr4_fetch_link_map_offsets (void);
-void ppc_linux_supply_gregset (char *buf);
-void ppc_linux_supply_fpregset (char *buf);
+void ppc_linux_supply_gregset (struct regcache *regcache,
+ int regnum, const void *gregs, size_t size,
+ int wordsize);
+void ppc_linux_supply_fpregset (const struct regset *regset,
+ struct regcache *regcache,
+ int regnum, const void *gregs, size_t size);
enum return_value_convention ppc64_sysv_abi_return_value (struct gdbarch *gdbarch,
struct type *valtype,
Andrew Cagney [Mon, 15 Mar 2004 21:21:01 +0000 (21:21 +0000)]
2004-03-15 Andrew Cagney <cagney@redhat.com>
* rs6000-tdep.c (rs6000_register_virtual_type): Make registers
unsigned.
Andrew Cagney [Mon, 15 Mar 2004 20:38:08 +0000 (20:38 +0000)]
2004-03-15 Andrew Cagney <cagney@redhat.com>
* gdbarch.sh (gdbarch_data_pre_init_fytpe)
(gdbarch_data_register_pre_init, gdbarch_data_post_init_fytpe)
(gdbarch_data_register_post_init): Replace gdbarch_data_init_ftype
and register_gdbarch_data.
(deprecated_set_gdbarch_data): Rename set_gdbarch_data.
(struct gdbarch_data): Replace "init" by "pre_init" and
"post_init".
* gdbarch.h, gdbarch.c: Re-generate.
* dwarf2-frame.c (dwarf2_frame_init): Replace "gdbarch" paramter
with"obstack", use OBSTACK_ZALLOC.
(dwarf2_frame_ops): Delete.
(dwarf2_frame_set_init_reg): Use gdbarch_data.
(dwarf2_frame_init_reg): Use gdbarch_data.
(_initialize_dwarf2_frame): Use gdbarch_data_register_pre_init.
* solib-svr4.c (set_solib_svr4_fetch_link_map_offsets)
(_initialize_svr4_solib): Update.
* user-regs.c (_initialize_user_regs): Update.
* reggroups.c (_initialize_reggroup): Update.
* regcache.c (_initialize_regcache): Update.
* mips-linux-tdep.c (_initialize_mips_linux_tdep): Update.
* libunwind-frame.c (_initialize_libunwind_frame): Update.
* gnu-v3-abi.c (init_gnuv3_ops): Update.
* frame-unwind.c (_initialize_frame_unwind): Update.
* frame-base.c (_initialize_frame_base): Update.
* user-regs.c (user_reg_add): Update.
* reggroups.c (reggroup_add): Update.
* mips-linux-tdep.c (set_mips_linux_register_addr): Update.
* libunwind-frame.c (libunwind_frame_set_descr): Update.
* frame-unwind.c (frame_unwind_append_sniffer): Update.
* frame-base.c (frame_base_table): Update.
* remote.c (_initialize_remote): Update.
* gdb_obstack.h (OBSTACK_ZALLOC, OBSTACK_CALLOC): Define.
Andrew Cagney [Mon, 15 Mar 2004 20:32:54 +0000 (20:32 +0000)]
2004-03-15 Andrew Cagney <cagney@redhat.com>
* cris-tdep.c (bfd_lookup_symbol): Delete unused function.
Kevin Buettner [Mon, 15 Mar 2004 19:42:25 +0000 (19:42 +0000)]
* Makefile.in (frv-linux-tdep.o): Add dependencies.
* frv-linux-tdep.c: New file.
* frv-tdep.c (struct gdbarch_tdep): Add new field
``sigcontext_reg_addr''.
(frv_set_sigcontext_reg_addr, frv_sigtramp,frame_cache)
(frv_sigtramp_frame_this_id, frv_sigtramp_frame_prev_register)
(frv_sigramp_frame_sniffer): New functions.
(frv_sigtramp_frame_unwind): New static global.
(frv_gdbarch_init): Hook in ABI-specific overrides. Hook up frame
sniffers.
* frv-tdep.h (frv_set_sigcontext_reg_addr): New function.
* config/frv/frv.mt (TDEPFILES): Add frv-linux-tdep.o.
Aldy Hernandez [Mon, 15 Mar 2004 19:07:39 +0000 (19:07 +0000)]
* ppc-opc.c (powerpc_opcodes): Add BOOKE versions of mfsprg.
Kevin Buettner [Mon, 15 Mar 2004 18:49:02 +0000 (18:49 +0000)]
* frv-tdep.c (frv_analyze_prologue): Terminate prologue scan,
but not via a call to error(), when unable to read memory.
Kevin Buettner [Mon, 15 Mar 2004 18:31:37 +0000 (18:31 +0000)]
* frv-tdep.c (frv_call_dummy_words): Delete.
(frv_frame_unwind_cache): Delete unused variable, ``prev_sp''.
Dave Anglin [Mon, 15 Mar 2004 17:53:45 +0000 (17:53 +0000)]
* elf-hppa.h (elf_hppa_relocate_section): Pass input_bfd instead of
input_section in calls to get_dyn_name.
* elf64-hppa.c (get_dyn_name): Change type of first argument to "bfd *". Use section id of first section in input BFD to build dynamic name for
local symbols.
(elf64_hppa_check_relocs): Pass abfd in call to get_dyn_name.
Andrew Cagney [Mon, 15 Mar 2004 17:12:50 +0000 (17:12 +0000)]
Index: ChangeLog
2004-03-15 Andrew Cagney <cagney@redhat.com>
* infrun.c (handle_step_into_function, step_over_function): Only
update and use STEP_FRAME_ID when the system is using legacy
frames. Update comments.
Alan Modra [Mon, 15 Mar 2004 14:21:43 +0000 (14:21 +0000)]
* bfd-in.h (bfd_int64_t, bfd_uint64_t): New types.
(BFD_HOST_64_BIT, BFD_HOST_U_64_BIT): Don't define here.
(bfd_getb64, bfd_getl64, bfd_get_bits): Return bfd_uint64_t.
(bfd_getb_signed_64, bfd_getl_signed_64): Return bfd_int64_t.
(bfd_putb64, bfd_putl64, bfd_put_bits): Accept bfd_uint64_t.
* configure.in (HOST_U_64BIT_TYPE): Set when sizeof long is 8.
(BFD_HOST_64_BIT_DEFINED, BFD_HOST_64_BIT, BFD_HOST_U_64_BIT): Set
when using long.
* libbfd.c (EIGHT_GAZILLION, COERCE64): Use bfd_int64_t.
(bfd_getb64): Return bfd_uint64_t. Enable when BFD_HOST_64_BIT.
(bfd_getl64, bfd_getb_signed_64, bfd_getl_signed_64): Likewise.
(bfd_putb64): Accept bfd_uint64_t. Enable when BFD_HOST_64_BIT.
(bfd_putl64, bfd_put_bits, bfd_get_bits): Likewise.
* dwarf2.c (struct attribute): Use bfd_int64_t and bfd_uint64_t.
(read_8_bytes, read_indirect_string, read_address): Likewise.
(read_abbrevs, parse_comp_unit): Likewise.
* targets.c (struct bfd_target): Likewise.
* aix386-core.c (NO_GET64, NO_PUT64, NO_GETS64): Define and use.
* hppabsd-core.c: Likewise. Formatting.
* hpux-core.c: Likewise.
* irix-core.c: Likewise.
* netbsd-core.c: Likewise.
* osf-core.c: Likewise.
* ptrace-core.c: Likewise.
* sco5-core.c: Likewise.
* trad-core.c: Likewise.
* configure: Regenerate.
* bfd-in2.h: Regenerate.
Alan Modra [Mon, 15 Mar 2004 13:36:28 +0000 (13:36 +0000)]
* sparc-dis.c (print_insn_sparc): Update getword prototype.
Nathan Sidwell [Mon, 15 Mar 2004 12:31:41 +0000 (12:31 +0000)]
* objdump.c (struct SFILE): Replace current pointer with pos
offset, rename size to alloc.
(objdump_sprintf): Avoid unnecessary copies in the common case
(disassemble_bytes): Keep sfile live throughout the
function. Adjust usage appropriately.
Alan Modra [Mon, 15 Mar 2004 12:23:11 +0000 (12:23 +0000)]
* bfd-in.h (bfd_getb64, bfd_getl64): Replace bfd_byte* with void*.
(bfd_getb32, bfd_getl32, bfd_getb16, bfd_getl16): Likewise.
(bfd_getb_signed_64, bfd_getl_signed_64): Likewise.
(bfd_getb_signed_32, bfd_getl_signed_32): Likewise.
(bfd_getb_signed_16, bfd_getl_signed_16): Likewise.
(bfd_putb64, bfd_putl64, bfd_putb32, bfd_putl32): Likewise.
(bfd_putb16, bfd_putl16, bfd_get_bits, bfd_put_bits): Likewise.
* libbfd.c: Likewise in function definitions.
(bfd_put_8): Mask with 0xff rather than casting to char.
(bfd_putb16, bfd_putl16, bfd_putb32, bfd_putl32): Likewise.
(bfd_putb64, bfd_putl64, bfd_put_bits): Likewise.
(H_PUT_64, H_PUT_32, H_PUT_16, H_PUT_8): Remove casts, simplify.
(H_PUT_S64, H_PUT_S32, H_PUT_S16, H_PUT_S8): Likewise.
(H_GET_64, H_GET_32, H_GET_16, H_GET_8): Likewise.
(H_GET_S64, H_GET_S32, H_GET_S16, H_GET_S8): Likewise.
* libaout.h (H_PUT_64 H_PUT_32, H_PUT_16): Remove casts, simplify.
(H_PUT_S64, H_PUT_S32, H_PUT_S16): Likewise.
(H_GET_64, H_GET_32, H_GET_16): Likewise.
(H_GET_S64, H_GET_S32, H_GET_S16): Likewise.
* archive.c (do_slurp_coff_armap): Update swap prototype.
* coff-tic54x.c (tic54x_getl32): Replace bfd_byte* with void*.
(tic54x_getl_signed_32): Likewise.
(tic54x_putl32): Likewise. Mask with 0xff rather than casting to char.
* mach-o.c (bfd_mach_o_read_header): Update get32 prototype.
* pdp11.c (bfd_getp32): Make static, replace bfd_byte* with void*.
(bfd_getp_signed_32, bfd_putp32): Likewise.
* targets.c (struct bfd_target): Use void* in place of bfd_byte* for
bfd_getx64, bfd_getx_signed_64, bfd_putx64, bfd_getx32,
bfd_getx_signed_32, bfd_putx32, bfd_getx16, bfd_getx_signed_16,
bfd_putx16, bfd_h_getx64, bfd_h_getx_signed_64, bfd_h_putx64,
bfd_h_getx32, bfd_h_getx_signed_32, bfd_h_putx32, bfd_h_getx16,
bfd_h_getx_signed_16, bfd_h_putx16.
* aix386-core.c (NO_GET, NO_GETS, NO_PUT): Update prototypes.
* hppabsd-core.c: Similarly. Rename NO_SIGNED_GET to NO_GETS.
* hpux-core.c: Likewise.
* irix-core.c: Likewise.
* netbsd-core.c: Likewise.
* osf-core.c: Likewise.
* ptrace-core.c: Likewise.
* sco5-core.c: Likewise.
* trad-core.c: Likewise.
* bfd-in2.h: Regenerate.
Alan Modra [Mon, 15 Mar 2004 00:45:34 +0000 (00:45 +0000)]
* gas/i386/padlock.s: Pad with .p2align.
* gas/i386/padlock.d: Adjust.
Alan Modra [Mon, 15 Mar 2004 00:02:56 +0000 (00:02 +0000)]
* config.bfd: Add x86-64 vector to NetBSD/i386 if 64bit BFD is
selected.
gdbadmin [Mon, 15 Mar 2004 00:00:32 +0000 (00:00 +0000)]
*** empty log message ***
Alan Modra [Sun, 14 Mar 2004 23:00:05 +0000 (23:00 +0000)]
daily update
Mark Kettenis [Sun, 14 Mar 2004 22:39:26 +0000 (22:39 +0000)]
* amd64-linux-tdep.h: Remove file.
* amd64-linux-tdep.c: Don't include "inferior.h" and
"amd64-linux-tdep.h". Include "frame.h" and "solib-svr4.h".
(USER_R15, USER_R14, USER_R13, USER_R12, USER_RBP, USER_RBX)
(USER_R11, USER_R10, USER_R9, USER_R8, USER_RAX, USER_RCX)
(USER_RDX, USER_RSI, USER_RDI, USER_RIP, USER_CS, USER_EFLAGS)
(USER_RSP, USER_SS, USER_DS, USER_ES, USER_FS, USER_GS): Remove
macros.
(user_to_gdb_regmap): Remove variable.
(amd64_linux_gregset_reg_offset): New variable.
(amd64_core_fns): Remove variable.
(fetch_core_registers): Remove function.
(amd64_linux_supply_gregset, amd64_linux_fill_gregset): Remove
functions.
(_initialize_amd64_linux_tdep): Don't set add_core_fns.
* amd64-linux-nat.c: Don't include "amd64-linux-tdep.h".
* Makefile.in (amd64_linux_tdep_h): Remove.
(amd64-linux-nat.o): Update dependencies.
(amd64-linux-tdep.o): Update dependencies.
Mark Kettenis [Sun, 14 Mar 2004 22:11:25 +0000 (22:11 +0000)]
* amd64-linux-nat.c (GETFPREGS_SUPPLIES): Remove macro.
(fetch_regs, fetch_fpregs, store_regs, store_fpregs): Remove
functions.
(fetch_inferior_registers, store_inferior_registers): Rewrite.
Mark Kettenis [Sun, 14 Mar 2004 21:38:55 +0000 (21:38 +0000)]
* amd64-tdep.h (amd64_fill_fxsave): Remove prototype.
* amd64-tdep.c (amd64_fill_fxsave): Remove function.
Daniel Jacobowitz [Sun, 14 Mar 2004 21:08:24 +0000 (21:08 +0000)]
* dwarf2read.c (read_structure_type): Rename from
read_structure_scope. Don't create a symbol or call process_die.
Return immediately if die->type is set. Call read_type_die before
dwarf2_add_member_fn.
(process_structure_scope): New function.
(read_enumeration_type, process_enumeration_scope): New functions,
broken out from read_enumeration. Don't create the enumeration
type if it has already been created.
(read_enumeration): Removed.
(process_die): Call read_structure_type, process_structure_scope,
read_enumeration_type, and process_enumeration_scope. Just call
new_symbol for base and subrange types. Add a comment about other
type dies.
(read_type_die): Call read_enumeration_type.
(add_partial_structure, new_symbol): Update comments.
gdbadmin [Sun, 14 Mar 2004 00:00:35 +0000 (00:00 +0000)]
*** empty log message ***
Alan Modra [Sat, 13 Mar 2004 23:00:35 +0000 (23:00 +0000)]
daily update
Stephane Carrez [Sat, 13 Mar 2004 14:51:55 +0000 (14:51 +0000)]
* m68hc11-tdep.c (m68hc11_register_name): Get soft reg information.
Stephane Carrez [Sat, 13 Mar 2004 14:14:01 +0000 (14:14 +0000)]
* tui/tui-win.h (tui_get_cmd_list): Declare.
* tui/tui-win.c (tui_command): New function.
(tui_get_cmd_list): New function.
(_initialize_tui_win): Moved initialization of tui command in
tui_get_cmd_list.
* tui/tui-data.c (init_content_element): Setup new data members.
(init_win_info): Likewise.
(free_content_elements): Free it.
* tui/tui-data.h (struct tui_data_element): Store the register
content to print.
(struct tui_data_info): Keep the current register group.
* tui/tui-layout.c (tui_set_layout): Update call to tui_show_registers.
* tui/tui-regs.h (tui_show_registers): Update prototype.
(tui_toggle_float_regs, tui_calculate_regs_column_count): Remove.
(tui_resize_all): No need to calculate anything for register window.
* tui/tui-regs.c (tui_calculate_regs_column_count): Remove.
(tui_set_register_element, tui_set_general_regs_content): Remove.
(tui_set_special_regs_content): Remove.
(tui_set_general_and_special_regs_content): Remove.
(tui_set_float_regs_content): Remove.
(tui_reg_value_has_changed, tui_get_register_raw_value): Remove.
(tui_set_regs_content): Remove.
(tui_toggle_float_regs, _tui_toggle_float_regs_command): Remove.
(tui_v_show_registers_command_support): Remove.
(tui_show_registers): Use a reggroup to specify the registers to show.
(tui_show_register_group): New function.
(tui_display_registers_from): Compute the layout of register window
and refresh with new API; be sure to delete old register windows.
(tui_check_register_values): Update to use tui_get_register and
tui_display_data.
(tui_display_register): Just refresh the register window part.
(tui_register_format): Format registers and save in tui_data_element.
(tui_get_register): New to combine tui_reg_value_has_changed and
tui_get_register_raw_value; fix to use the new gdb API.
(tui_show_float_command): Renamed tui_reg_float_command.
(tui_show_general_command): Renamed tui_reg_general_command.
(tui_show_special_command): Renamed tui_reg_system_command.
(_initialize_tui_regs): Remove unused commands.
Mark Kettenis [Sat, 13 Mar 2004 13:11:53 +0000 (13:11 +0000)]
* NEWS (New native configurations): Mention OpenBSD/amd64.
Mark Kettenis [Sat, 13 Mar 2004 13:07:20 +0000 (13:07 +0000)]
* config/i386/nm-fbsd.h: Include "config/nm-bsd.h".
(PTRACE_ARG3_TYPE, FETCH_INFERIOR_REGISTERS, ATTACH_DETACH):
Remove defines.
* config/i386/nm-fbsd64.h: Likewise.
* config/i386/nm-obsd.h: Likewise.
* config/sparc/nm-fbsd.h: Likewise. Update copyright year.
* config/alpha/nm-fbsd.h: Likewise. Update copyright year.
Mark Kettenis [Sat, 13 Mar 2004 12:33:48 +0000 (12:33 +0000)]
* config.bfd: Add x86_64-*-openbsd*.
* configure.in (x86_64-*-openbsd*): Set COREFILE to
netbsd-core.lo.
* configure: Regenerate.
Nathanael Nerode [Sat, 13 Mar 2004 05:54:47 +0000 (05:54 +0000)]
2004-03-12 Eric Botcazou <ebotcazou@gcc.gnu.org>
Paolo Bonzini <bonzini@gnu.org>
PR bootstrap/14522
* configure.in: Cope with shells that do not support unquoted ^
* configure: Regenerate.
Kevin Buettner [Sat, 13 Mar 2004 01:27:20 +0000 (01:27 +0000)]
Revise ChangeLog entry of previous commit to credit Richard Sandiford
for FR450 support.
Kevin Buettner [Sat, 13 Mar 2004 01:24:20 +0000 (01:24 +0000)]
Add FR450 support.
Kevin Buettner [Sat, 13 Mar 2004 01:13:04 +0000 (01:13 +0000)]
* frv-tdep.c, frv-tdep.h (first_gpr_regnum, sp_regnum, fp_regnum)
(struct_return_regnum, last_gpr_regnum, first_fpr_regnum)
(last_fpr_regnum, pc_regnum, first_spr_regnum, psr_regnum, ccr_regnum)
(cccr_regnum, fdpic_loadmap_exec_regnum, fdpic_loadmap_interp_regnum)
(tbr_regnum, brr_regnum, dbar0_regnum, dbar1_regnum, dbar2_regnum)
(dbar3_regnum, lr_regnum, lcr_regnum, iacc0h_regnum, iacc0l_regnum)
(last_spr_regnum, frv_num_regs, first_pseudo_regnum, iacc0_regnum)
(last_pseudo_regnum, frv_num_pseudo_regs): Move constant (enum)
definitions from frv-tdep.c to frv-tdep.h.
Kevin Buettner [Sat, 13 Mar 2004 00:50:53 +0000 (00:50 +0000)]
Add shared library support for FR-V FDPIC ABI.
Kevin Buettner [Sat, 13 Mar 2004 00:36:53 +0000 (00:36 +0000)]
Fix typo in Makefile.in; commit ChangeLog entries for previous change.
Kevin Buettner [Sat, 13 Mar 2004 00:16:23 +0000 (00:16 +0000)]
Add support for FDPIC executables.
gdbadmin [Sat, 13 Mar 2004 00:00:05 +0000 (00:00 +0000)]
*** empty log message ***
Alan Modra [Fri, 12 Mar 2004 23:00:04 +0000 (23:00 +0000)]
daily update
Mark Kettenis [Fri, 12 Mar 2004 22:01:39 +0000 (22:01 +0000)]
* solib-svr4.h: Change SOLIB_SVR4 wrapper into SOLIB_SVR4_H
wrapper.
Daniel Jacobowitz [Fri, 12 Mar 2004 20:51:50 +0000 (20:51 +0000)]
* linux-low.c: Include <errno.h>. Remove extern declaration of
errno.
Daniel Jacobowitz [Fri, 12 Mar 2004 20:51:21 +0000 (20:51 +0000)]
* gdbreplay.c, server.h, utils.c: Update copyright years.
Bob Wilson [Fri, 12 Mar 2004 17:48:12 +0000 (17:48 +0000)]
* read.c (s_leb128): Call md_flush_pending_output.
David Carlton [Fri, 12 Mar 2004 17:46:27 +0000 (17:46 +0000)]
2004-03-12 David Carlton <carlton@kealia.com>
* gdb.cp/pr-1553.exp: New. Tests for PR c++/1553.
* gdb.cp/pr-1553.cc: Ditto.
* gdb.cp/local.exp (ptype NestedInnerLocal): Add comment, third
pass branch.
Michael Chastain [Fri, 12 Mar 2004 16:40:07 +0000 (16:40 +0000)]
2004-03-12 Michael Chastain <mec.gnu@mindspring.com>
* gdb.cp/templates.exp: Accept more template types.
Michal Ludvig [Fri, 12 Mar 2004 13:38:46 +0000 (13:38 +0000)]
2004-03-12 Michal Ludvig <mludvig@suse.cz>
* i386.h (i386_optab): Added xstore as an alias for xstorerng.
Michal Ludvig [Fri, 12 Mar 2004 13:38:16 +0000 (13:38 +0000)]
2004-03-12 Michal Ludvig <mludvig@suse.cz>
* i386-dis.c (GRPPLOCK): Delete.
(grps): Detele GRPPLOCK entry.
Michal Ludvig [Fri, 12 Mar 2004 13:37:38 +0000 (13:37 +0000)]
2004-03-12 Michal Ludvig <mludvig@suse.cz>
* gas/i386/padlock.s, gas/i386/padlock.d: New tests for
VIA PadLock instructions.
* gas/i386/i386.exp: Run padlock tests.
Alan Modra [Fri, 12 Mar 2004 13:06:50 +0000 (13:06 +0000)]
* i386-dis.c (OP_M, OP_0f0e, OP_0fae, NOP_Fixup): New functions.
(M, Mp): Use OP_M.
(None, PADLOCK_SPECIAL, PADLOCK_0): Delete.
(GRPPADLCK): Define.
(dis386): Use NOP_Fixup on "nop".
(dis386_twobyte): Use GRPPADLCK on opcode 0xa7.
(twobyte_has_modrm): Set for 0xa7.
(padlock_table): Delete. Move to..
(grps): ..here, using OP_0f07. Use OP_Ofae on lfence, mfence
and clflush.
(print_insn): Revert PADLOCK_SPECIAL code.
(OP_E): Delete sfence, lfence, mfence checks.
* gas/i386/katmai.d: Revert last change.
Nick Clifton [Fri, 12 Mar 2004 11:57:05 +0000 (11:57 +0000)]
Ignore data-only sections when checking interworking status
Jakub Jelinek [Fri, 12 Mar 2004 10:47:49 +0000 (10:47 +0000)]
* i386-dis.c (grps): Use INVLPG_Fixup instead of OP_E for invlpg.
(INVLPG_Fixup): New function.
(PNI_Fixup): Remove ATTRIBUTE_UNUSED from sizeflag.
* opcode/i386.h (i386_optab): Remove CpuNo64 from sysenter and
sysexit.
Michal Ludvig [Fri, 12 Mar 2004 10:14:29 +0000 (10:14 +0000)]
2004-03-12 Michal Ludvig <mludvig@suse.cz>
* gas/config/tc-i386.c (output_insn): Handle PadLock instructions.
* gas/config/tc-i386.h (CpuPadLock): New define.
(CpuUnknownFlags): Added CpuPadLock.
* include/opcode/i386.h (i386_optab): Added xstore/xcrypt insns.
* opcodes/i386-dis.c (PADLOCK_SPECIAL, PADLOCK_0): New defines.
(dis386_twobyte): Opcode 0xa7 is PADLOCK_0.
(padlock_table): New struct with PadLock instructions.
(print_insn): Handle PADLOCK_SPECIAL.
Alan Modra [Fri, 12 Mar 2004 07:01:37 +0000 (07:01 +0000)]
opcodes/
* i386-dis.c (grps): Use clflush by default for 0x0fae/7.
(OP_E): Twiddle clflush to sfence here.
gas/testsuite/
* gas/i386/katmai.d: Adjust for clflush change.
gdbadmin [Fri, 12 Mar 2004 00:00:03 +0000 (00:00 +0000)]
*** empty log message ***
Andrew Cagney [Thu, 11 Mar 2004 23:51:58 +0000 (23:51 +0000)]
2004-03-11 Andrew Cagney <cagney@redhat.com>
* solib-svr4.h: Add #ifndef SOLIB_SVR4 wrapper.
Alan Modra [Thu, 11 Mar 2004 23:00:05 +0000 (23:00 +0000)]
daily update
DJ Delorie [Thu, 11 Mar 2004 18:30:52 +0000 (18:30 +0000)]
2004-03-11 Eric Botcazou <ebotcazou@gcc.gnu.org>
Paolo Bonzini <bonzini@gnu.org>
PR bootstrap/14522
* configure.in: Cope with shell that do not support nesting
quotes inside quoted backquote substitutions.
* configure: Regenerate.
2004-03-10 Andrew Pinski <pinskia@physics.uc.edu>
PR bootstrap/14522
* configure.in: Fix escaping of $.
* configure: Regenerate.
Kevin Buettner [Thu, 11 Mar 2004 17:04:40 +0000 (17:04 +0000)]
* solist.h (master_so_list): New function.
* solib.c (master_so_list): Likewise.
* solib-svr4.c (enable_break): Iterate over so_list entries
obtained from master list instead of entries obtained directly
via svr4_current_sos().
Nathanael Nerode [Thu, 11 Mar 2004 05:15:36 +0000 (05:15 +0000)]
(top level)
2004-03-11 Nathanael Nerode <neroden@gcc.gnu.org>
* configure: Regenerate.
2004-03-08 Paolo Bonzini <bonzini@gnu.org>
PR ada/14131
Move language detection to the top level.
* configure.in: Find default values for the tools as
soon as possible. Disable ada if GNAT is not found.
Emit error message about missing languages. Expand
--enable-languages=all for the gcc subdirectory.
(config)
2004-03-08 Paolo Bonzini <bonzini@gnu.org>
PR ada/14131
Move language detection to the top level.
* acx.m4 (ACX_PROG_GNAT): New macro, moved here
from the gcc subdirectory.
2004-03-09 Hans-Peter Nilsson <hp@axis.com>
* accross.m4 (AC_C_BIGENDIAN_CROSS): Compile endian probe with
"-c". Properly quote parameter for AC_MSG_ERROR.
gdbadmin [Thu, 11 Mar 2004 00:00:33 +0000 (00:00 +0000)]
*** empty log message ***
Alan Modra [Wed, 10 Mar 2004 23:00:05 +0000 (23:00 +0000)]
daily update
Ben Elliston [Wed, 10 Mar 2004 02:58:24 +0000 (02:58 +0000)]
* MAINTAINERS: Update my mail address.
DJ Delorie [Wed, 10 Mar 2004 01:02:12 +0000 (01:02 +0000)]
merge from gcc
Kazuhiro Inaoka [Wed, 10 Mar 2004 00:18:44 +0000 (00:18 +0000)]
2004-03-10 Kei Sakamoto <sakamoto.kei@renesas.com>
* remote-m32r-sdi.c: Support hardware watchpoint.
DJ Delorie [Wed, 10 Mar 2004 00:01:28 +0000 (00:01 +0000)]
merge from gcc
gdbadmin [Wed, 10 Mar 2004 00:00:35 +0000 (00:00 +0000)]
*** empty log message ***
Alan Modra [Tue, 9 Mar 2004 23:00:16 +0000 (23:00 +0000)]
daily update
Jim Wilson [Tue, 9 Mar 2004 20:50:56 +0000 (20:50 +0000)]
Patch from Steve Ellcey for potential race condition.
* elfxx-ia64.c (plt_full_entry): Change ld8 to ld8.acq.
Daniel Jacobowitz [Tue, 9 Mar 2004 20:03:37 +0000 (20:03 +0000)]
* user-regs.c: Update copyright years.
(struct user_regs): Rename to gdb_user_regs.
(append_user_reg, builtin_user_regs, user_regs_init)
(user_reg_add, user_reg_map_name_to_regnum)
(usernum_to_user_reg): Update.
Daniel Jacobowitz [Tue, 9 Mar 2004 19:38:11 +0000 (19:38 +0000)]
* dwarf2read.c (skip_leb128, peek_die_abbrev, skip_one_die)
(skip_children): New functions.
(locate_pdi_sibling): Call skip_children.
Michael Chastain [Tue, 9 Mar 2004 17:34:39 +0000 (17:34 +0000)]
2004-03-09 Michael Chastain <mec.gnu@mindspring.com>
From Corinna Vinschen with modifications.
* gdb.cp/classes.cc (enums1): Add a line to extend scope of
local variable obj_with_enum.
* gdb.cp/classes.exp (test_enums): Remove TODO note about FAIL
results with obj_with_enum.
Michael Chastain [Tue, 9 Mar 2004 17:11:55 +0000 (17:11 +0000)]
2004-03-09 Michael Chastain <mec.gnu@mindspring.com>
* gdb.cp/classes.cc: New file, copied from misc.cc.
* gdb.cp/classes.exp: Use classes.cc rather than misc.cc.
Daniel Jacobowitz [Tue, 9 Mar 2004 17:08:25 +0000 (17:08 +0000)]
* arm-tdep.c (arm_use_struct_convention): Look through typedefs.
* gdbtypes.c (check_typedef): Update comments.
Michael Chastain [Tue, 9 Mar 2004 17:02:06 +0000 (17:02 +0000)]
2004-03-09 Michael Chastain <mec.gnu@mindspring.com>
* gdb.cp/misc.cc: Add copyright notice.
Daniel Jacobowitz [Tue, 9 Mar 2004 16:57:44 +0000 (16:57 +0000)]
* dwarf2read.c (struct comp_unit_head): Remove dwarf2_abbrevs array.
(struct dwarf2_cu): Add abbrev_obstack and dwarf2_abbrevs
pointer. Update comment about comp_unit_head.
(struct abbrev_info): Shorten two int flags.
(dwarf_alloc_abbrev): Take a CU argument.
(dwarf2_build_psymtabs_hard): Call dwarf2_free_abbrev_table
each time through the loop. Update cleanup argument.
(psymtab_to_symtab_1): Update cleanup call.
(dwarf2_read_abbrevs, dwarf2_alloc_abbrev): Allocate on the
abbrev_obstack.
(dwarf2_free_abbrev_table): Renamed from dwarf2_empty_abbrev_table.
Just call obstack_free and clear the pointer.
Daniel Jacobowitz [Tue, 9 Mar 2004 16:40:08 +0000 (16:40 +0000)]
* infrun.c (handle_inferior_event): Remove short-circuit code for
events in a different thread.
Daniel Jacobowitz [Tue, 9 Mar 2004 16:16:52 +0000 (16:16 +0000)]
* target.c (debug_to_xfer_memory): If targetdebug is 1, don't
print the whole transfer.
(initialize_targets): Update description of "set debug target".
Daniel Jacobowitz [Tue, 9 Mar 2004 16:16:35 +0000 (16:16 +0000)]
* gdb.texinfo (Debugging Output): Document values for "set debug
target".
Daniel Jacobowitz [Tue, 9 Mar 2004 15:44:26 +0000 (15:44 +0000)]
* arm-tdep.c (thumb_get_next_pc): Handle Thumb BLX.
DJ Delorie [Tue, 9 Mar 2004 05:31:00 +0000 (05:31 +0000)]
merge from gcc
gdbadmin [Tue, 9 Mar 2004 00:00:02 +0000 (00:00 +0000)]
*** empty log message ***
Alan Modra [Mon, 8 Mar 2004 23:00:05 +0000 (23:00 +0000)]
daily update
Andreas Jaeger [Mon, 8 Mar 2004 19:12:30 +0000 (19:12 +0000)]
* gas/cfi/cfi-s390x-1.d: Adjust offsets.
Nathan J. Williams [Mon, 8 Mar 2004 17:52:27 +0000 (17:52 +0000)]
2004-03-08 Nathan J. Williams <nathanw@wasabisystems.com>
* MAINTAINERS (write after approval): Add myself.
Nick Clifton [Mon, 8 Mar 2004 11:50:36 +0000 (11:50 +0000)]
Honour the PRIVATE keyword
Nick Clifton [Mon, 8 Mar 2004 11:33:59 +0000 (11:33 +0000)]
Honour PRIVATE keyword
Corinna Vinschen [Mon, 8 Mar 2004 10:18:13 +0000 (10:18 +0000)]
* sh-tdep.c (sh_print_registers_info): Use for loop.
Don't skip multiple registers when a float register is encountered.
Corinna Vinschen [Mon, 8 Mar 2004 10:15:33 +0000 (10:15 +0000)]
Fix PR tdep/1291.
* sh-tdep.c (sh_analyze_prologue): Align PC relative addressing
to official SH documentation.
Nick Clifton [Mon, 8 Mar 2004 10:06:13 +0000 (10:06 +0000)]
Updated German translation
Andrew Cagney [Mon, 8 Mar 2004 01:45:02 +0000 (01:45 +0000)]
2004-03-07 Andrew Cagney <cagney@redhat.com>
* ppc-linux-nat.c (ppc_ptrace_cannot_fetch_store_register): Delete
unused function.
gdbadmin [Mon, 8 Mar 2004 00:00:03 +0000 (00:00 +0000)]
*** empty log message ***
Richard Henderson [Sun, 7 Mar 2004 23:02:02 +0000 (23:02 +0000)]
* gas/cfi/cfi-common-2.d, gas/cfi/cfi-i386.d: Adjust offsets.
Alan Modra [Sun, 7 Mar 2004 23:00:05 +0000 (23:00 +0000)]
daily update
Daniel Jacobowitz [Sun, 7 Mar 2004 20:03:12 +0000 (20:03 +0000)]
* arm-tdep.c (thumb_get_next_pc): Handle BX.
(arm_get_next_pc): Handle BX and BLX.
Andrew Cagney [Sun, 7 Mar 2004 19:58:27 +0000 (19:58 +0000)]
2004-03-07 Andrew Cagney <cagney@redhat.com>
* hppa-tdep.c: Replace DEPRECATED_FP_REGNUM with HPPA_FP_REGNUM,
FP0_REGNUM with HPPA_FP0_REGNUM, and SP_REGNUM with
HPPA_SP_REGNUM.
(hppa_register_raw_size, hppa_register_byte, hppa_read_fp)
(hppa_target_read_fp): Delete.
(hppa_gdbarch_init): Do not set deprecated register_raw_size,
register_virtual_size, max_register_raw_size,
max_register_virtual_size, register_byte, register_size,
target_read_fp, fp_regnum, and register_bytes. Set register_type
instead of register_virtual_type.
(hppa32_register_type, hppa64_register_type): Replace
hppa32_register_virtual_type and hppa64_register_virtual_type.
* config/pa/tm-hppa.h (HPPA_FP0_REGNUM, HPPA_SP_REGNUM)
(HPPA_FP_REGNUM): Define.
Andrew Cagney [Sun, 7 Mar 2004 19:21:13 +0000 (19:21 +0000)]
2004-03-07 Andrew Cagney <cagney@redhat.com>
* hppa-tdep.c (hppa_gdbarch_init): Add missing "break".
Andrew Cagney [Sun, 7 Mar 2004 19:00:43 +0000 (19:00 +0000)]
2004-03-07 Andrew Cagney <cagney@redhat.com>
* hppa-tdep.c (pa_do_registers_info, pa_do_strcat_registers_info)
(pa_print_registers, pa_print_fp_reg, pa_strcat_registers)
(pa_strcat_fp_reg, pa_register_look_aside): Delete.
* config/pa/tm-hppa.h (DEPRECATED_DO_REGISTERS_INFO)
(pa_do_registers_info): Delete.
Andrew Cagney [Sun, 7 Mar 2004 18:09:23 +0000 (18:09 +0000)]
Oops, fix tipo.
Andrew Cagney [Sun, 7 Mar 2004 18:06:14 +0000 (18:06 +0000)]
2004-03-07 Andrew Cagney <cagney@redhat.com>
* infcall.c (legacy_push_dummy_code): Delete #ifdef
GDB_TARGET_IS_HPPA code.
* config/pa/tm-hppa.h (DEPRECATED_FIX_CALL_DUMMY)
(hppa_fix_call_dummy, DEPRECATED_CALL_DUMMY_HAS_COMPLETED)
(DEPRECATED_DUMMY_WRITE_SP, CALL_DUMMY): Delete.
* config/pa/tm-hppa64.h (CALL_DUMMY): Delete.
* hppa-tdep.c (hppa_frame_chain, hppa_frame_chain_valid)
(hppa_push_dummy_frame, hppa_pop_frame, hppa_push_arguments)
(hppa_fix_call_dummy, hppa64_stack_align, hppa_frame_saved_pc)
(hppa_init_extra_frame_info, hppa_saved_pc_after_call)
(hppa64_call_dummy_breakpoint_offset, hppa_frame_init_saved_regs)
(hppa_frameless_function_invocation, hppa64_store_return_value)
(hppa_store_struct_return, hppa64_extract_return_value)
(hppa64_use_struct_convention, hppa_frame_find_saved_regs)
(hppa32_call_dummy_length, hppa64_call_dummy_length)
(find_dummy_frame_regs, FUNC_LDIL_OFFSET, FUNC_LDO_OFFSET)
(find_proc_framesize, deposit_21, restore_pc_queue)
(find_return_regnum, pc_in_interrupt_handler, deposit_14)
(rp_saved, pc_in_linker_stub):
Andrew Cagney [Sun, 7 Mar 2004 17:19:26 +0000 (17:19 +0000)]
2004-03-07 Andrew Cagney <cagney@redhat.com>
Unconditionally enable 64-bit frame and ABI code.
* hppa-tdep.c (hppa_gdbarch_init): Do not set deprecated
call_dummy_breakpoint_offset, call_dummy_length, stack_align,
push_dummy_frame, fix_call_dummy, push_arguments,
call_dummy_location, extract_return_value, use_struct_convention,
store_return_value, store_struct_return, saved_pc_after_call,
init_frame_pc, frame_init_saved_regs, init_extra_frame_info,
frame_chain, frame_chain_valid, frameless_function_invocation,
frame_saved_pc, and pop_frame.
Andrew Cagney [Sun, 7 Mar 2004 17:06:21 +0000 (17:06 +0000)]
2004-03-07 Andrew Cagney <cagney@redhat.com>
* hppa-tdep.c: Replace PC_REGNUM with PCOQ_HEAD_REGNUM.
(hppa64_return_value, hppa64_push_dummy_call): Rewrite.
(hppa_gdbarch_init): Do not set PC_REGNUM.