aboutsummaryrefslogtreecommitdiff
path: root/gdb
AgeCommit message (Collapse)AuthorFilesLines
2004-03-20Remove old frame code. Enable new frame code for AIX.Kevin Buettner4-407/+29
2004-03-20Commit Andrew Cagney's rs6000 / PPC framification patch.Kevin Buettner3-14/+377
2004-03-20*** empty log message ***gdbadmin1-1/+1
2004-03-19 * breakpoint.c (adjust_breakpoint_address): Don't adjustKevin Buettner2-6/+29
breakpoint address for watchpoints or the catch eventpoints. Add new paramter ``bptype''. Adjust all callers.
2004-03-192004-03-19 Andrew Cagney <cagney@redhat.com>Andrew Cagney4-3/+7
* config/pa/tm-hppa.h (GDB_TARGET_IS_HPPA): Delete unused macro. Index: doc/ChangeLog 2004-03-19 Andrew Cagney <cagney@redhat.com> * gdbint.texinfo (Target Architecture Definition): Delete reference to GDB_TARGET_IS_HPPA.
2004-03-192004-03-19 Andrew Cagney <cagney@redhat.com>Andrew Cagney2-9/+5
* PROBLEMS: Delete note that ARM does not use frame code, problem fixed.
2004-03-19*** empty log message ***gdbadmin1-1/+1
2004-03-182004-03-18 Andrew Cagney <cagney@redhat.com>Andrew Cagney2-12/+3
* stack.c (return_command): Delete code wrapped in #ifdef DEPRECATED_CALL_DUMMY_HAS_COMPLETED, macro no longer defined.
2004-03-182004-03-18 Andrew Cagney <cagney@redhat.com>Andrew Cagney2-2/+23
* rs6000-tdep.c (skip_prologue): Record only the first LR save.
2004-03-182004-03-18 Andrew Cagney <cagney@redhat.com>Andrew Cagney2-92/+67
* gdbint.texinfo (Coding): Update section on gdbarch_data, describe pre_init and post_init.
2004-03-182004-03-18 Andrew Cagney <cagney@redhat.com>Andrew Cagney12-17/+32
* config/mips/tm-nbsd.h: Replace IN_SIGTRAMP with DEPRECATED_IN_SIGTRAMP. * config/powerpc/tm-linux.h (DEPRECATED_IN_SIGTRAMP): Ditto. * config/mips/tm-linux.h (DEPRECATED_IN_SIGTRAMP) Ditto. * config/mips/tm-irix6.h (DEPRECATED_IN_SIGTRAMP): Ditto. * config/mips/tm-irix5.h (DEPRECATED_IN_SIGTRAMP): Ditto. * config/ia64/tm-linux.h (DEPRECATED_IN_SIGTRAMP): Ditto. * config/ia64/tm-aix.h (DEPRECATED_IN_SIGTRAMP): Ditto. * config/arm/tm-linux.h (DEPRECATED_IN_SIGTRAMP): Ditto. * config/arm/tm-embed.h (DEPRECATED_IN_SIGTRAMP): Ditto. * arch-utils.c (legacy_pc_in_sigtramp): Ditto. * arch-utils.h: Remove reference to IN_SIGTRAMP in comment.
2004-03-182004-03-18 Andrew Cagney <cagney@redhat.com>Andrew Cagney3-40/+41
* frame-base.c: Update copyright. Include "gdb_obstack.h". (struct frame_base_table_entry): Define. (struct frame_base_table): Re-implement as a linked list. (frame_base_init): Re-implement. (frame_base_table): Delete function. (append_predicate): Delete function. (frame_base_append_sniffer): Update. (frame_base_set_default): Update. (frame_base_find_by_frame): Update. (_initialize_frame_base): Use gdbarch_data_register_pre_init. * Makefile.in (frame-base.o): Update dependencies.
2004-03-18*** empty log message ***gdbadmin1-1/+1
2004-03-172004-03-17 Andrew Cagney <cagney@redhat.com>Andrew Cagney2-1/+6
* frame.c (legacy_get_prev_frame): Pass correct frame to frame_unwind_find_by_frame.
2004-03-172004-03-17 David Carlton <carlton@kealia.com>David Carlton2-2/+7
* gdb.cp/classes.exp (test_enums): Refer to PR c++/1588 instead of PR c++/826.
2004-03-172004-03-17 David Carlton <carlton@kealia.com>David Carlton2-0/+16
* NEWS: Mention C++ nested types and namespaces
2004-03-172004-03-16 Michael Chastain <mec.gnu@mindspring.com>Michael Chastain2-5/+39
* PROBLEMS: Add section headers, "Regressions since gdb 6.0" and "Regressions since gdb 5.3.". Add known regressions since gdb 6.0.
2004-03-17Fix typo in ChangeLog entry.Mark Kettenis1-2/+2
2004-03-17*** empty log message ***gdbadmin1-1/+1
2004-03-162004-03-16 David Carlton <carlton@kealia.com>David Carlton2-17/+24
* dwarf2read.c (process_structure_scope): Process children even when we're a declaration.
2004-03-16.Roland McGrath1-161/+166
2004-03-162004-03-16 Roland McGrath <roland@redhat.com>Roland McGrath2-0/+245
* gdb.base/auxv.exp: New file. * gdb.base/auxv.c: New file, copied verbatim from coremaker2.c.
2004-03-162004-03-16 Andrew Cagney <cagney@redhat.com>Andrew Cagney3-31/+27
* symtab.h (find_pc_sect_partial_function): Delete declaration. * blockframe.c (find_pc_partial_function) (find_pc_sect_partial_function): Merge into a single find_pc_partial_function.
2004-03-16* i386bsd-nat.c: s/regno/regnum/g.Mark Kettenis2-35/+42
(fetch_inferior_registers): Use I386_ST0_REGNUM instead of FP0_REGNUM. (store_inferior_registers): Likewise.
2004-03-16* i386bsd-nat.c (fill_fpregset): Call i387_collect_fsave insteadMark Kettenis2-4/+12
of i387_fill_fsave. (store_inferior_registers): Call i387_collect_fsave and i387_collect_fxsave instead of i387_fill_fsave and i387_fill_fxsave.
2004-03-16*** empty log message ***gdbadmin1-1/+1
2004-03-152004-03-15 Andrew Cagney <cagney@redhat.com>Andrew Cagney3-30/+39
* Makefile.in (frame-unwind.o): Update dependencies. * frame-unwind.c: Include "gdb_obstack.h". (frame_unwind_init): Replace "gdbarch" parameter with an "obstack" parameter. (append_predicate): Delete function. (struct frame_unwind_table_entry): New structure. (struct frame_unwind_table): Replace "sniffer" with "head" and "tail". (frame_unwind_append_sniffer): Update. (frame_unwind_find_by_frame): Update. (_initialize_frame_unwind): Registe frame_unwind_init using gdbarch_data_register_pre_init.
2004-03-15* i386bsd-nat.c: Update copyright year.Mark Kettenis2-5/+10
(CANNOT_FETCH_REGISTER, CANNOT_STORE_REGISTER): Undefine and then define unconditionally.
2004-03-15* i387-tdep.h (i387_collect_fsave): New prototype.Mark Kettenis3-5/+30
* i387-tdep.c (i387_collect_fsave): New function containing most of the code from i387_fill_fsave. (i387_fill_fsave): Call i387_fill_fsave.
2004-03-15* i386-linux-tdep.c: Update copyright year.Mark Kettenis2-46/+16
(i386_linux_svr4_fetch_link_map_offsets): Remove function. (i386_linux_init_abi): Set solib_svr4_fetch_link_maop_offsets to svr4_ilp32_link_map_offsets instead of i386_linux_svr4_fetch_link_map_offsets.
2004-03-152004-03-15 David Carlton <carlton@kealia.com>David Carlton2-131/+107
Fix for PR c++/1553: * dwarf2read.c (read_structure_type): Determine type name by calling determine_class_name. (determine_class_name): New. (determine_prefix): Look at TYPE_TAG_NAME and call determine_class_name when appropriate. (determine_prefix_aux, class_name): Delete.
2004-03-15 * breakpoint.c (TARGET_REGION_SIZE_OK_FOR_HW_WATCHPOINT): DeleteKevin Buettner2-5/+6
unused macro definition. The definition in target.h (or perhaps elsewhere) takes precedence.
2004-03-152004-03-15 Andrew Cagney <cagney@redhat.com>Andrew Cagney4-64/+149
* 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,
2004-03-152004-03-15 Andrew Cagney <cagney@redhat.com>Andrew Cagney2-2/+7
* rs6000-tdep.c (rs6000_register_virtual_type): Make registers unsigned.
2004-03-152004-03-15 Andrew Cagney <cagney@redhat.com>Andrew Cagney16-94/+177
* 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.
2004-03-152004-03-15 Andrew Cagney <cagney@redhat.com>Andrew Cagney2-38/+4
* cris-tdep.c (bfd_lookup_symbol): Delete unused function.
2004-03-15 * Makefile.in (frv-linux-tdep.o): Add dependencies.Kevin Buettner6-2/+416
* 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.
2004-03-15 * frv-tdep.c (frv_analyze_prologue): Terminate prologue scan,Kevin Buettner2-1/+12
but not via a call to error(), when unable to read memory.
2004-03-15 * frv-tdep.c (frv_call_dummy_words): Delete.Kevin Buettner2-5/+5
(frv_frame_unwind_cache): Delete unused variable, ``prev_sp''.
2004-03-15Index: ChangeLogAndrew Cagney2-30/+56
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.
2004-03-15*** empty log message ***gdbadmin1-1/+1
2004-03-14* amd64-linux-tdep.h: Remove file.Mark Kettenis5-152/+63
* 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.
2004-03-14* amd64-linux-nat.c (GETFPREGS_SUPPLIES): Remove macro.Mark Kettenis2-82/+39
(fetch_regs, fetch_fpregs, store_regs, store_fpregs): Remove functions. (fetch_inferior_registers, store_inferior_registers): Rewrite.
2004-03-14* amd64-tdep.h (amd64_fill_fxsave): Remove prototype.Mark Kettenis3-18/+5
* amd64-tdep.c (amd64_fill_fxsave): Remove function.
2004-03-14 * dwarf2read.c (read_structure_type): Rename fromDaniel Jacobowitz2-46/+116
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.
2004-03-14*** empty log message ***gdbadmin1-1/+1
2004-03-13 * m68hc11-tdep.c (m68hc11_register_name): Get soft reg information.Stephane Carrez2-0/+6
2004-03-13 * tui/tui-win.h (tui_get_cmd_list): Declare.Stephane Carrez8-619/+436
* 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.
2004-03-13* NEWS (New native configurations): Mention OpenBSD/amd64.Mark Kettenis2-0/+3
2004-03-13* config/i386/nm-fbsd.h: Include "config/nm-bsd.h".Mark Kettenis7-44/+52
(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.