Andrew Cagney [Thu, 18 Mar 2004 20:13:34 +0000 (20:13 +0000)]
2004-03-18 Andrew Cagney <cagney@redhat.com>
* gdbint.texinfo (Coding): Update section on gdbarch_data,
describe pre_init and post_init.
Andrew Cagney [Thu, 18 Mar 2004 19:59:07 +0000 (19:59 +0000)]
2004-03-18 Andrew Cagney <cagney@redhat.com>
* 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.
Andrew Cagney [Thu, 18 Mar 2004 16:22:00 +0000 (16:22 +0000)]
2004-03-18 Andrew Cagney <cagney@redhat.com>
* 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.
Nathan Sidwell [Thu, 18 Mar 2004 13:31:04 +0000 (13:31 +0000)]
* read.c (read_a_source_file): Use demand_empty_rest_of_line.
(demand_empty_rest_of_line): Issue an error here.
(ignore_rest_of_line): Silently skip to end.
(demand_copy_string): Issue an error, not warning.
(equals): Likewise.
* config/obj-elf.c (obj_elf_section_name): Likewise.
(obj_elf_section): Likewise.
* config/tc-arc.c (arc_extoper): Remove bogus NULL checks.
(arc_extinst): Likewise.
* config/tc-ia64.c (dot_saveb): Use demand_empty_rest_of_line.
(dot_spill): Likewise.
(dot_unwabi): Likewise.
(dot_prologue): Likewise.
Alan Modra [Thu, 18 Mar 2004 12:50:20 +0000 (12:50 +0000)]
bfd/
* elf-bfd.h (struct elf_obj_tdata): Delete dt_soname field. Add
dyn_lib_class field. Rearrange for better packing.
(elf_dt_soname): Delete.
(elf_dyn_lib_class): Define.
* elf.c (bfd_elf_set_dt_needed_name): Update comment.
(bfd_elf_set_dt_needed_soname): Delete.
(bfd_elf_set_dyn_lib_class): New function.
* elflink.h (add_dt_needed_tag): New function. Split out from..
(elf_link_add_object_symbols): ..here. Rename "name" to "soname".
Use elf_dyn_lib_class to set dt_needed and add_needed. Move fallback
initialization of soname.
(elf_link_check_versioned_symbol): Test elf_dyn_lib_class instead of
elf_dt_soname.
* bfd-in.h (enum dynamic_lib_link_class): New.
(bfd_elf_set_dt_needed_soname): Delete.
(bfd_elf_set_dyn_lib_class): Declare.
* bfd-in2.h: Regenerate.
ld/
* ld.texinfo: Add --as-needed doco.
* ldmain.c (as_needed): New global var.
* ldmain.h (as_needed): Declare.
* lexsup.c (option_values): Add OPTION_AS_NEEDED and
OPTION_NO_AS_NEEDED.
(ld_options): Likewise.
(parse_args): Handle them.
* ldlang.h (lang_input_statement_type): Add as_needed field.
* ldlang.c (new_afile): Set p->as_needed.
* emultempl/elf32.em (gld${EMULATION_NAME}_load_symbols): New function.
(gld${EMULATION_NAME}_try_needed): Use bfd_elf_set_dyn_lib_class.
(ld_${EMULATION_NAME}_emulation): Set LDEMUL_RECOGNIZED_FILE entry.
* ldlang.c (open_input_bfds): Remove useless cast.
(lang_do_assignments_1): Likewise.
(lang_for_each_input_section): Delete.
Nathan Sidwell [Thu, 18 Mar 2004 09:19:20 +0000 (09:19 +0000)]
* expr.c (operand): Reject ++ and --.
(operator): Likewise.
Alan Modra [Thu, 18 Mar 2004 04:32:17 +0000 (04:32 +0000)]
* elflink.c (_bfd_elf_merge_symbol): Rewrite weak symbol handling.
(_bfd_elf_add_default_symbol): Remove indirect BFD_ASSERTs.
* elflink.h (elf_link_add_object_symbols): Don't clear dt_needed in
symbol loop. Instead use add_needed to flag tag as written.
DJ Delorie [Thu, 18 Mar 2004 04:07:41 +0000 (04:07 +0000)]
merge from gcc
DJ Delorie [Thu, 18 Mar 2004 02:07:18 +0000 (02:07 +0000)]
merge from gcc
Kaz Kojima [Thu, 18 Mar 2004 00:49:23 +0000 (00:49 +0000)]
[gas]
* config/tc-sh.c: Include dw2gencfi.h.
(sh_cfi_frame_initial_instructions): New function.
(sh_regname_to_dw2regnum): Likewise.
* config/tc-sh.h (DWARF2_LINE_MIN_INSN_LENGTH): Move to the end of
file.
(TARGET_USE_CFIPOP): Define.
(tc_cfi_frame_initial_instructions): Likewise.
(tc_regname_to_dw2regnum): Likewise.
(DWARF2_DEFAULT_RETURN_COLUMN, DWARF2_CIE_DATA_ALIGNMENT): Likewise.
* Makefile.am: Update dependencies.
* Makefile.in: Regenerate.
[gas/testsuite]
* gas/cfi/cfi-sh-1.d: New file.
* gas/cfi/cfi-sh-1.s: Likewise.
* gas/cfi/cfi.exp: Add SH case.
gdbadmin [Thu, 18 Mar 2004 00:00:32 +0000 (00:00 +0000)]
*** empty log message ***
Andrew Cagney [Wed, 17 Mar 2004 23:43:36 +0000 (23:43 +0000)]
2004-03-17 Andrew Cagney <cagney@redhat.com>
* frame.c (legacy_get_prev_frame): Pass correct frame to
frame_unwind_find_by_frame.
Alan Modra [Wed, 17 Mar 2004 23:00:06 +0000 (23:00 +0000)]
daily update
David Carlton [Wed, 17 Mar 2004 20:11:22 +0000 (20:11 +0000)]
2004-03-17 David Carlton <carlton@kealia.com>
* gdb.cp/classes.exp (test_enums): Refer to PR c++/1588 instead of
PR c++/826.
Nathanael Nerode [Wed, 17 Mar 2004 19:26:07 +0000 (19:26 +0000)]
2004-03-17 Paolo Bonzini <bonzini@gnu.org>
* configure.in: Remove symbolic link section.
* configure: Regenerate.
* Makefile.tpl (links): Remove.
* Makefile.in: Regenerate.
David Carlton [Wed, 17 Mar 2004 17:35:54 +0000 (17:35 +0000)]
2004-03-17 David Carlton <carlton@kealia.com>
* NEWS: Mention C++ nested types and namespaces
Nathan Sidwell [Wed, 17 Mar 2004 12:27:05 +0000 (12:27 +0000)]
* elfxx-mips.c (_bfd_mips_elf_merge_private_bfd_data): Correct
logic for null_input_bfd detection.
Michael Chastain [Wed, 17 Mar 2004 07:00:41 +0000 (07:00 +0000)]
2004-03-16 Michael Chastain <mec.gnu@mindspring.com>
* PROBLEMS: Add section headers, "Regressions since gdb 6.0"
and "Regressions since gdb 5.3.". Add known regressions since
gdb 6.0.
Alan Modra [Wed, 17 Mar 2004 00:46:25 +0000 (00:46 +0000)]
Switch sh-*-rtems* to ELF. Add sh-*-rtemscoff*.
Mark Kettenis [Wed, 17 Mar 2004 00:21:17 +0000 (00:21 +0000)]
Fix typo in ChangeLog entry.
gdbadmin [Wed, 17 Mar 2004 00:00:05 +0000 (00:00 +0000)]
*** empty log message ***
Alan Modra [Tue, 16 Mar 2004 23:00:07 +0000 (23:00 +0000)]
daily update
David Carlton [Tue, 16 Mar 2004 22:43:15 +0000 (22:43 +0000)]
2004-03-16 David Carlton <carlton@kealia.com>
* dwarf2read.c (process_structure_scope): Process children even
when we're a declaration.
Nathanael Nerode [Tue, 16 Mar 2004 22:21:55 +0000 (22:21 +0000)]
2004-03-15 Paolo Bonzini <bonzini@gnu.org>
Nathanael Nerode <neroden@gcc.gnu.org>
* configure.in (DEFAULT_YACC, DEFAULT_M4, DEFAULT_LEX):
Set with AC_CHECK_PROGS.
* configure.in: Fix comment typo from last patch.
* configure: Regenerate.
Roland McGrath [Tue, 16 Mar 2004 21:47:19 +0000 (21:47 +0000)]
.
Roland McGrath [Tue, 16 Mar 2004 21:47:03 +0000 (21:47 +0000)]
2004-03-16 Roland McGrath <roland@redhat.com>
* gdb.base/auxv.exp: New file.
* gdb.base/auxv.c: New file, copied verbatim from coremaker2.c.
Andrew Cagney [Tue, 16 Mar 2004 20:25:24 +0000 (20:25 +0000)]
2004-03-16 Andrew Cagney <cagney@redhat.com>
* 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.
Mark Kettenis [Tue, 16 Mar 2004 13:54:10 +0000 (13:54 +0000)]
* i386bsd-nat.c: s/regno/regnum/g.
(fetch_inferior_registers): Use I386_ST0_REGNUM instead of
FP0_REGNUM.
(store_inferior_registers): Likewise.
Mark Kettenis [Tue, 16 Mar 2004 13:48:23 +0000 (13:48 +0000)]
* i386bsd-nat.c (fill_fpregset): Call i387_collect_fsave instead
of i387_fill_fsave.
(store_inferior_registers): Call i387_collect_fsave and
i387_collect_fxsave instead of i387_fill_fsave and
i387_fill_fxsave.
Mark Kettenis [Tue, 16 Mar 2004 12:22:18 +0000 (12:22 +0000)]
* netbsd-core.c (netbsd_core_file_p) [CORE_FPU_OFFSET]: Remove
code.
Alan Modra [Tue, 16 Mar 2004 11:46:15 +0000 (11:46 +0000)]
Revert "lsdx", "lsdi", "stsdx", "stsdi", "lmd" and "stmd" insns.
Alan Modra [Tue, 16 Mar 2004 10:31:18 +0000 (10:31 +0000)]
copyright date.
Alan Modra [Tue, 16 Mar 2004 10:29:12 +0000 (10:29 +0000)]
* elflink.c (elf_link_read_relocs_from_section): Don't use
NUM_SHDR_ENTRIES in end of reloc calc. Move NULL shdr check..
(_bfd_elf_link_read_relocs): ..to here.
* elf32-ppc.c (ppc_elf_relax_section): Formatting.
Alan Modra [Tue, 16 Mar 2004 09:05:22 +0000 (09:05 +0000)]
* configure.in (HOST_64BIT_TYPE, HOST_U_64BIT_TYPE): Don't override
values selected in configure.host. Require both to be defined
before setting BFD_HOST_64_BIT_DEFINED. Protect assignment to
corresponding BFD_HOST vars with quotes.
<${host64}-${target64}-${want64} in *true*>: Don't exempt gcc;
Always require BFD_HOST_64_BIT_DEFINED.
<file_ptr type>: Find off_t size before emitting message. Combine
off_t and ftello64 conditional.
* configure: Regenerate.
Alan Modra [Tue, 16 Mar 2004 01:49:30 +0000 (01:49 +0000)]
* elf32-m32r.c (m32r_elf_create_dynamic_sections): Fix pointer
aliasing warning. Remove trailing whitespace throughout file.
Alan Modra [Tue, 16 Mar 2004 00:58:43 +0000 (00:58 +0000)]
opcodes/
* ppc-dis.c (print_insn_powerpc): Don't print tabs. Handle
PPC_OPERANDS_GPR_0.
* ppc-opc.c (RA0): Define.
(RAQ, RAL, RAM, RAS, RSQ, RTQ, RSO): Use PPC_OPERAND_GPR_0.
(RAOPT): Rename from RAO. Update all uses.
(powerpc_opcodes): Use RA0 as appropriate. Add "lsdx", "lsdi",
"stsdx", "stsdi", "lmd" and "stmd" insns.
include/opcode/
* ppc.h (PPC_OPERAND_GPR_0): Define. Bump other operand defines.
gas/testsuite/
Update gas/ppc/.
ld/testsuite/
Update ld-powerpc/.
Nathanael Nerode [Tue, 16 Mar 2004 00:04:59 +0000 (00:04 +0000)]
2004-03-15 Nathanael Nerode <neroden@gcc.gnu.org>
* Makefile.tpl: Introduce experimental top level bootstrap support.
* Makefile.in: Regenerate.
* configure.in: Introduce support for top level bootstrap.
* configure: Regenerate.
gdbadmin [Tue, 16 Mar 2004 00:00:33 +0000 (00:00 +0000)]
*** empty log message ***
Andrew Cagney [Mon, 15 Mar 2004 23:08:28 +0000 (23:08 +0000)]
2004-03-15 Andrew Cagney <cagney@redhat.com>
* 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.
Mark Kettenis [Mon, 15 Mar 2004 23:03:07 +0000 (23:03 +0000)]
* i386bsd-nat.c: Update copyright year.
(CANNOT_FETCH_REGISTER, CANNOT_STORE_REGISTER): Undefine and then
define unconditionally.
Alan Modra [Mon, 15 Mar 2004 23:00:05 +0000 (23:00 +0000)]
daily update
Mark Kettenis [Mon, 15 Mar 2004 22:44:12 +0000 (22:44 +0000)]
* i387-tdep.h (i387_collect_fsave): New prototype.
* i387-tdep.c (i387_collect_fsave): New function containing most
of the code from i387_fill_fsave.
(i387_fill_fsave): Call i387_fill_fsave.
Mark Kettenis [Mon, 15 Mar 2004 22:38:21 +0000 (22:38 +0000)]
* i386-linux-tdep.c: Update copyright year.
(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.
David Carlton [Mon, 15 Mar 2004 22:33:52 +0000 (22:33 +0000)]
2004-03-15 David Carlton <carlton@kealia.com>
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.
Kevin Buettner [Mon, 15 Mar 2004 21:58:31 +0000 (21:58 +0000)]
* breakpoint.c (TARGET_REGION_SIZE_OK_FOR_HW_WATCHPOINT): Delete
unused macro definition. The definition in target.h (or perhaps
elsewhere) takes precedence.
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