Pedro Alves [Sat, 24 Nov 2007 12:13:28 +0000 (12:13 +0000)]
* win32-nat.c (DR6_CLEAR_VALUE): New define.
(thread_info_struct): Rename suspend_count to suspended, to be
used as a flag.
(thread_rec): Only suspend the thread if it wasn't suspended by
gdb before. Warn if suspending failed.
(win32_add_thread): Set Dr6 to DR6_CLEAR_VALUE.
(win32_continue): Set Dr6 to DR6_CLEAR_VALUE. Update usage of the
`suspended' flag. Do ContinueDebugEvent after resuming the
suspended threads, not before. Set threads' contexts before
resuming them, not after.
(win32_resume): Set Dr6 to DR6_CLEAR_VALUE.
Nick Clifton [Wed, 21 Nov 2007 12:06:26 +0000 (12:06 +0000)]
* elf-m10300.c (mn10300_elf_relax_section): Allow for alignment relocs when
computing whether instructions can be relaxed.
* ld-mn10300/i135409-4.s: New test case. Check for relaxation to a 16-bit
jump instruction.
* ld-mn10300/i135409-4.t: Linker script for the new test.
* ld-mn10300/i135409-4.d: Expected disassembly of new test.
* ld-mn10300/mn10300.exp: Run the new test.
Nick Clifton [Wed, 21 Nov 2007 11:58:00 +0000 (11:58 +0000)]
* dwarf.c (display_debug_loc): Issue a warning if there are bytes at the end
of the .debug_loc section which are not referenced by any attribute in the
.debug_info section.
Nick Roberts [Tue, 20 Nov 2007 19:54:39 +0000 (19:54 +0000)]
(c_variable_editable, cplus_variable_editable)
(java_variable_editable, variable_editable): Delete.
(varobj_editable_p): Replace above functions with one language
independent function. Check for an lvalue.
(varobj_get_attributes, varobj_set_value): Use varobj_editable_p.
(struct language_specific): Delete variable_editable field.
Vladimir Prus [Tue, 20 Nov 2007 17:37:35 +0000 (17:37 +0000)]
Remove unused breakpoint fields.
* breakpoint.h (struct breakpoint): Remove
from_tty and flag fields.
* breakpoint.c (break_command_1): Don't set
from_tty and flag field set of breakpoint.
(create_ada_exception_breakpoint): Don't set
the from_tty field.
Nick Clifton [Tue, 20 Nov 2007 15:08:25 +0000 (15:08 +0000)]
* elflink.c (elf_link_output_extsym): Weaken assertion: if --gc-section is set, there may be no TLS segment.
* lib/ld-lib.exp (check_gc_sections_available): New proc, based on the version in gcc/testsuite/lib/target-supports.exp.
* ld-elf/eld.exp: Use check_gc_sections_available.
Bob Wilson [Mon, 19 Nov 2007 19:40:55 +0000 (19:40 +0000)]
* config/xtensa-istack.h (tinsn_struct): Replace linenum field
with loc_directive_seen and debug_line.
* config/tc-xtensa.c: Include xtensa-istack.h after dwarf2dbg.h.
(xg_build_to_insn): Copy the new fields instead of linenum.
(xg_build_token_insn): Likewise. Abort on INSTR_LABEL_DEF and move
common code out of the switch.
(md_assemble): Set new tinsn fields from DWARF information. Call
dwarf2_consume_line_info.
(xg_assemble_vliw_tokens): Update the code to select the "best" line
number to use new information. Call dwarf2_gen_line_info instead
of dwarf2_emit_insn.
Bob Wilson [Mon, 19 Nov 2007 18:15:53 +0000 (18:15 +0000)]
* dwarf2dbg.c (dwarf2_consume_line_info): New.
(dwarf2_emit_insn): Use it here.
(dwarf2_directive_loc): Fix check for consecutive .loc directives
when debug_type is DEBUG_DWARF2.
* dwarf2dbg.h (dwarf2_consume_line_info): New prototype.
* config/tc-ia64.c (ia64_flush_insns): Call dwarf2_consume_line_info.
(md_assemble): Likewise.
testsuite/
* gas/lns/lns.exp: Run lns-common-1 with alternate source for ia64.
* gas/lns/lns-common-1-ia64.s: New file.
Nick Clifton [Mon, 19 Nov 2007 12:01:42 +0000 (12:01 +0000)]
* readelf.c (is_32bit_abs_reloc): Add support for NIOS relocs.
(is_64bit_abs_reloc): Add support for HPPA relocs.
(is_16bit_abs_reloc): Add support for NIOS relocs.
* xtensa-tdep.c (xtensa_regset_from_core_section): Fix printf
argument type.
(xtensa_frame_this_id): Do not cast pointers to "int" for output.
(xtensa_frame_prev_register): Likewise.
(xtensa_push_dummy_call): Likewise.
* configure.tgt (gdb_target_cpu): Remove. Do not set anywhere.
(gdb_target): Likewise.
(gdb_target_obs): Document. Set for every target to contents
of TDEPFILES in former .mt makefile fragment.
* configure.ac (TARGET_OBS): Define.
(target_makefile_frag, gdb_target_cpu): Do not define.
* configure: Regenerate.
* configure.ac (IGNORE_SIM, IGNORE_SIM_OBS): Do not set.
(SIM, SIM_OBS): Set depending on ${ignore_sim} and ${gdb_sim}.
* configure: Regenerate.
* Makefile.in (SIM, SIM_OBS): Substitute from configure.
(@IGNORE_SIM@, @IGNORE_SIM_OBS@): Remove.
Ulrich Weigand [Sat, 17 Nov 2007 00:41:17 +0000 (00:41 +0000)]
* configure.ac (hostfile, targetfile): Remove.
(GDB_XM_FILE, GDB_TM_FILE): Do not define.
(xm_h, tm_h): Likewise.
(DEPRECATED_TM_FILE, XM_FILE): Do not substitute into Makefile.
* configure, config.in: Regenerate.
* Makefile.in (xm_h, tm_h): Remove. Update dependencies.
(TAGS): Do not consider DEPRECATED_TM_FILE or XM_FILE.
(clean, local-maintainer-clean): Do not remove xm.h or tm.h.
* defs.h: Do not include "xm.h" or "tm.h".
* gdbarch.sh (verify_gdbarch): Do not dump GDB_XM_FILE or GDB_TM_FILE.
* gdbarch.c: Regenerate.
Nick Clifton [Fri, 16 Nov 2007 15:36:21 +0000 (15:36 +0000)]
* dwarf2.h: Mention the location of the DWARF3 spec on the web.
(DW_AT_stride_size): Rename to DW_AT_bit_stride.
(DW_AT_stride): Rename to DW_AT_byte_stride.
* dwarf.c (process_extended_line_op): Add cases for HP extensions to the line ops.
Mention if an unknown op code is in the user defined range.
(decode_location_expression): Add cases for HP extensions, the DW_OP_GNU_uninit extension and the DW_OP_call_frame_cfa and DW_OP_bit_piece DWARF3 operators.
(read_and_display_attr): Correct list of attributes which can reference a location list.
(read_and_display_attr_value): Add cases for DWARF3 values and HP extensions.
Correct list of attributes which can reference a location list.
(get_AT_name): Add cases for DWARF3 values and HP and PGI extensions.
Nick Clifton [Fri, 16 Nov 2007 09:48:05 +0000 (09:48 +0000)]
* ld-mn10300/mn10300.exp: Fix the start address of the .bss section for the i1127740.s test.
* elf-m10300.c (mn10300_elf_check_relocs): Fix memory leak and check that bfd_elf_get_elf_syms is only called once.
* m68hc11-tdep.c (m68hc11_frame_unwind_cache): Use get_frame_arch to
get at the current architecture by frame_info.
* gcore.c (derive_stack_segment): Likewise.
Ulrich Weigand [Thu, 15 Nov 2007 23:48:00 +0000 (23:48 +0000)]
bfd/ChangeLog:
* elf64-ppc.c (ppc64_elf_get_synthetic_symtab): Set udata.p of
synthetic symbol to point to the ELF symbol it was derived from.
gdb/ChangeLog:
* elfread.c (ST_REGULAR, ST_DYNAMIC, ST_SYNTHETIC): New defines.
(elf_symtab_read): Rename DYNAMIC argument to TYPE. Do not access
ELF-private symbol data when processing synthetic symbols. Use
udata.p to get at size of ppc64 synthetic 'dot' symbols.
(elf_symfile_read): Pass TYPE argument to elf_symtab_read.
* arm-tdep.c (arm_prologue_this_id): Replace LOWEST_PC by its
expression and use get_frame_arch to replace current_gdbarch by frame's
architecture.
*arm-tdep.h (LOWEST_PC): Remove
Vladimir Prus [Thu, 15 Nov 2007 06:52:53 +0000 (06:52 +0000)]
Apply const qualifier to some users of bp_location.
* breakpoint.h (struct bpstats): Make
the breakpoint_at field point at const bp_location.
* breakpoint.c (bpstat_alloc): Accept const
bp_location.
(breakpoint_here_p, breakpoint_inserted_here_p)
(software_breakpoint_inserted_here_p)
(breakpoint_thread_match, bpstat_stop_status)
(read_memory_nobpt, bpstat_have_active_hw_watchpoints): Use
const bp_location for iteration.
(print_it_typical, print_bp_stop_message): Use
const bp_location variable.
Vladimir Prus [Thu, 15 Nov 2007 06:28:19 +0000 (06:28 +0000)]
Prevent clear_command from directly modifying breakpoint list.
* Makefile.in (breakpoint_h): Update dependency.
* breakpoint.c (clear_command): Do not remove
breakpoints from breakpoint_chain. Collect breakpoints
to delete in a vector.
* breakpoint.h (breakpoint_p): New typedef for pointer to
breakpoint. Register vector of breakpoint_p.
* elfxx-mips.c (mips_got_page_range): New structure.
(mips_got_page_entry): Likewise.
(mips_got_info): Add page_gotno and got_page_entries fields.
(mips_elf_got_per_bfd_arg): Add max_pages field. Delete
primary_count and current_count fields.
(mips_got_page_entry_hash, mips_got_page_entry_eq): New functions.
(mips_elf_pages_for_range, mips_elf_record_got_page_entry): Likewise.
(mips_elf_get_got_for_bfd): New function, split out from
mips_elf_make_got_per_bfd. Initialize the page_gotno and
got_page_entries fields when creating a new GOT structure.
(mips_elf_make_got_pages_per_bfd): New function.
(mips_elf_merge_got_with): New function, split out from
mips_elf_make_got_per_bfd. Merge page entries as well as
non-page entries. Use the minimum of max_pages and the sum
of the page_gotnos to estimate the number of page entries.
(mips_elf_merge_gots): Use the minimum of max_pages and the
bfd's page_gotno to estimate the number of page entries.
Use the above functions.
(mips_elf_multi_got): Add page entries as well as non-page entries
to the individual per-bfd GOTs. Initialize got_per_bfd_arg.max_pages.
Initialize the page_gotno and got_page_entries fields when creating
a new primary GOT. Use the minimum of pages and page_gotno when
adding the number of pages entries to local_gotno.
(mips_elf_create_got_section): Initialize the page_gotno and
got_page_entries fields of the GOT structure.
(mips_elf_rel_relocation_p, mips_elf_read_rel_addend)
(mips_elf_add_lo16_rel_addend, mips_elf_get_section_contents): New
functions, split out from...
(_bfd_mips_elf_relocate_section): ...here.
(_bfd_mips_elf_check_relocs): Record GOT page entries too.
(_bfd_mips_relax_section): Use mips_elf_get_section_contents.
(_bfd_mips_elf_always_size_sections): Use the smaller of the
loadable_size- and page_gotno-derived estimates.