Mark Kettenis [Mon, 15 Sep 2003 19:30:50 +0000 (19:30 +0000)]
* amd64fbsd-nat.c (_initialize_amd64fbsd_nat): Rename from
_initialize_am64fbsd_nat.
* gdbarch.sh (DEPRECATED_REG_STRUCT_HAS_ADDR): Add comment.
(stabs_argument_has_addr): New architecture method.
* arch-utils.h (default_stabs_argument_has_addr): New prototype.
* arch-utils.c: Include "buildsym.h".
(default_stabs_argument_has_addr): New function.
* stabsread.c (define_symbol): Use stabs_argument_has_addr
instead of DEPRECATED_REG_STRUCT_HAS_ADDR.
* win32-nat.c: Just rely on CONTEXT_EXTENDED_REGISTER being defined for SSE
registers since gdb will not operate correctly without this. Restore include
file ordering munged in previous change.
* config/i386/tm-cygwin.h: Remove HAVE_SSE_REGS define.
* win32-nat.c: Reorganize so that defines used by target headers are actually
defined by the system headers.
* config/i386/tm-cygwin.h: Check for CONTEXT_EXTENDED_REGISTERS rather than
HAVE_CONTEXT_EXTENDED_REGISTERS, since the latter actually exists.
Jim Blandy [Sat, 13 Sep 2003 00:17:36 +0000 (00:17 +0000)]
* dbxread.c (read_dbx_symtab): Don't report an internal error if
the file has no .data, .bss, or .rodata sections. Instead wait
until we see a variable alleged to live in one of those sections.
Jim Blandy [Fri, 12 Sep 2003 22:49:25 +0000 (22:49 +0000)]
* dbxread.c (read_dbx_symtab): The N_DATA and N_DATA | N_EXT
symbol types are, by definition, in the .data section, so it is
correct to use SECT_OFF_DATA (objfile) here, not data_sect_index.
If there is no .data section, there should be no N_DATA or N_DATA
| N_EXT symbols.
Dave Brolley [Fri, 12 Sep 2003 22:05:22 +0000 (22:05 +0000)]
2003-09-12 Dave Brolley <brolley@redhat.com>
* registers.c (frv_check_spr_read_access): Check for access to
ACC4-ACC63 and ACCG4-ACCG63.
* profile.h (frv-desc.h): #include it.
(spr_busy): New member of FRV_PROFILE_STATE.
(spr_latency): Ditto.
(GNER_FOR_GR): New macro.
(FNER_FOR_FR): New maccro.
(update_SPR_latency): New function.
(vliw_wait_for_SPR): New function.
* profile.c (profile-fr550.h): #include it.
(update_latencies): Update SPR latencies.
(update_target_latencies): Ditto.
(update_SPR_latency): New function.
(vliw_wait_for_SPR): New function.
* profile-fr500.c (frvbf_model_fr500_u_idiv): Record GNER latency.
(frvbf_model_fr500_u_trap): Removed unused variable, ps.
(frvbf_model_fr500_u_check): Ditto.
(frvbf_model_fr500_u_clrgr): New unit modeller for fr500.
(frvbf_model_fr500_u_clrfr): Ditto.
(frvbf_model_fr500_u_spr2gr): Wait for SPR.
(frvbf_model_fr500_u_gr2spr): Ditto.
* frv-sim.h (H_SPR_ACC4): New macro.
(H_SPR_ACCG4): New macro;
(H_SPR_ACC0): Removed.
(H_SPR_ACCG0): Removed.
* arch.h,model.c,sem[ch],decode.[ch]: Regenerated.
Dave Brolley [Fri, 12 Sep 2003 22:04:22 +0000 (22:04 +0000)]
2003-09-12 Dave Brolley <brolley@redhat.com>
* frv.cpu (u-clrgr, u-clrfr): New units of model fr500.
(clear-ne-flag-r): Pass insn profiling in as an argument. Call
frv_ref_SI to get input register referenced for profiling.
(clear-ne-flag-all): Pass insn profiling in as an argument.
(clrgr,clrfr,clrga,clrfa): Add profiling information.
Jeff Johnston [Fri, 12 Sep 2003 15:24:24 +0000 (15:24 +0000)]
2003-09-12 Jeff Johnston <jjohnstn@redhat.com>
* top.c (quit_target): New static helper function.
(quit_force): Moved code to quit_target(). Call quit_target()
via catch_errors() to catch errors during quit.
Bob Wilson [Fri, 12 Sep 2003 00:00:03 +0000 (00:00 +0000)]
* config/tc-xtensa.c (insn_labels, free_insn_labels, saved_insn_labels,
literal_syms): New global variables.
(xtensa_define_label, add_target_symbol, xtensa_find_label,
map_over_defined_symbols, is_loop_target_label,
xtensa_mark_target_fragments, xtensa_move_frag_symbol,
xtensa_move_frag_symbols, defined_symbols, branch_targets): Delete.
(xtensa_begin_directive): Call md_flush_pending_output. Move symbols
from insn_labels to saved_insn_labels when entering a literal region.
(xtensa_end_directive): Call md_flush_pending_output. Restore
insn_labels list when leaving a literal region.
(xtensa_literal_position): Call xtensa_clear_insn_labels.
(xtensa_literal_pseudo): Add check to disallow .literal inside a
literal region. Move insn_labels to saved_insn_labels and then restore
insn_labels on exit.
(xg_add_branch_and_loop_targets): Replace add_target_symbol calls with
code to set is_loop_target or is_branch_target flag on the symbol
(xtensa_create_literal_symbol): Call xtensa_add_literal_sym.
(xtensa_add_literal_sym, xtensa_add_insn_label,
xtensa_clear_insn_labels): New functions.
(xtensa_move_labels): Remove old_frag and old_offset arguments. Add
loops_ok argument. Rewrite to use insn_labels list instead of
calling xtensa_find_label and to check the is_loop_target flag on
symbols when loops_ok is false.
(xtensa_frob_label): Remove call to xtensa_define_label. Add call
to either xtensa_add_literal_sym or xtensa_add_insn_label. Adjust
call to xtensa_move_labels. Propagate is_branch_target and
is_loop_target flags from symbols to frags.
(xtensa_flush_pending_output): Call xtensa_clear_insn_labels.
(md_assemble): Use xtensa_move_labels with loops_ok = FALSE when
aligning a loop instruction. Adjust call to xtensa_move_labels for
aligning entry instructions. Add call to xtensa_clear_insn_labels.
(xtensa_end): Remove call to xtensa_mark_target_fragments.
(xtensa_move_literals): Replace xtensa_move_frag_symbols call with
code to use new literal_syms list.
* config/tc-xtensa.h (xtensa_symfield_type): Add is_loop_target and
is_branch_target flags.
Andrew Cagney [Thu, 11 Sep 2003 19:27:25 +0000 (19:27 +0000)]
2003-09-11 Andrew Cagney <cagney@redhat.com>
* rs6000-tdep.c (rs6000_push_dummy_call): Use
regcache_raw_write_signed to set SP_REGNUM, move the operation to
near the function's end.
(rs6000_gdbarch_init): Do not set "deprecated_dummy_write_sp".
* ppc-sysv-tdep.c (ppc_sysv_abi_push_dummy_call): Use
regcache_raw_write_signed to set SP_REGNUM.
Dave Brolley [Wed, 10 Sep 2003 20:40:47 +0000 (20:40 +0000)]
2003-09-10 Dave Brolley <brolley@redhat.com>
* profile.c (slot_names): FM1 was listed twice. Changed first
instance to FM0. Added IALL, FMALL and FMLOW.
(print_parallel): Don't examine slots with no insns.
Dave Anglin [Wed, 10 Sep 2003 18:46:08 +0000 (18:46 +0000)]
* elf32-hppa.c (struct elf32_hppa_link_hash_entry,
hppa_link_hash_newfunc, hppa_build_one_stub,
elf32_hppa_adjust_dynamic_symbol, mark_PIC_calls, allocate_plt_static,
allocate_dynrelocs, elf32_hppa_size_dynamic_sections,
elf32_hppa_finish_dynamic_symbol): Remove pic_call field and all code
for generating import stubs for calls to statically linked PIC
functions.
(hppa_type_of_stub): Don't generate an import stub for calls to
statically linked pic functions. Generate import stubs for calls
in a shared object, to functions not in a regular file, and to
defined weak functions. Add new argument INFO.
(hppa_build_one_stub): Don't undef ADDIL_DP.
(elf32_hppa_check_relocs): Don't set SEC_HAS_GOT_REF flag.
(elf32_hppa_size_stubs): Pass info to hppa_type_of_stub.
(final_link_relocate): Change all DLTIND relocs to DPREL relocs in a
non-shared link. Convert instructions that use the the linkage table
pointer, or a facsimile thereof, to use the global data pointer when
the reloc has been changed.
Bob Wilson [Wed, 10 Sep 2003 00:17:29 +0000 (00:17 +0000)]
* config/tc-xtensa.c (xtensa_mark_literal_pool_location): Remove
"move_labels" argument and corresponding call to xtensa_move_labels.
(md_assemble): Add a separate call to xtensa_move_labels and remove
argument for call to xtensa_mark_literal_pool_location.
(xtensa_literal_position, xtensa_switch_to_literal_fragment): Fix
calls to xtensa_mark_literal_pool_location.
(xtensa_create_local_symbol): Delete and inline the code into...
(xtensa_create_literal_symbol): ...here.
(xtensa_frob_label): Combine conditionals.
(expression_maybe_register, xtensa_symbol_new_hook,
fix_new_exp_in_seg): Use symbol_get_tc.
David Carlton [Tue, 9 Sep 2003 23:23:05 +0000 (23:23 +0000)]
2003-09-09 David Carlton <carlton@kealia.com>
* dwarf2read.c (dwarf2_build_psymtabs_hard): Move lowpc and
highpc initialization here out of scan_partial_symbols.
(scan_partial_symbols): Restructure into a recursive version,
calling add_partial_namespace and add_partial_enumeration when
appropriate.
(add_partial_namespace): New.
(add_partial_enumeration, locate_pdi_sibling): Ditto.
Andrew Cagney [Tue, 9 Sep 2003 22:41:47 +0000 (22:41 +0000)]
2003-09-09 Andrew Cagney <cagney@redhat.com>
* rs6000-tdep.c (ppc_push_return_address): Delete function.
(rs6000_push_dummy_call): Set LR to BP_ADDR.
(rs6000_gdbarch_init): Do not set deprecated_push_return_address.
* ppc-sysv-tdep.c (ppc_sysv_abi_push_dummy_call): Ditto.
Andrew Cagney [Tue, 9 Sep 2003 22:10:57 +0000 (22:10 +0000)]
2003-09-09 Andrew Cagney <cagney@redhat.com>
* rs6000-tdep.c (rs6000_gdbarch_init): Do not set the deprecated
methods "max_register_raw_size", "max_register_virtual_size" or
"register_virtual_size".
David Lecomber [Tue, 9 Sep 2003 16:51:54 +0000 (16:51 +0000)]
Change array element access to something similar to way C works.
The old method would drag in the entire array, then look for the
single element. This method just gets the right element out instead.
Saves memory, and saves a crash for array with (*) as one of the
dimensions when it would previously have allocated (unsigned int) -1 bytes.