Joel Brobecker [Sun, 13 Sep 2009 16:28:29 +0000 (16:28 +0000)]
gdb/
* frame.c (get_frame_id): Default to outer_frame_id if the this_id
method does not supply an ID. Assert that the result is not
null_frame_id.
(outer_frame_id): New.
(frame_id_p): Accept outer_frame_id.
(frame_id_eq): Allow outer_frame_id to be equal to itself.
(frame_find_by_id): Revert previous local workarounds.
(get_prev_frame_1): Adjust end-of-stack check to test outer_frame_id.
* frame.h (null_frame_id, frame_id_p): Update comments.
(outer_frame_id): Declare.
* infrun.c (handle_inferior_event): Do not treat all steps from the
outermost frame as subroutine calls.
* libunwind-frame.c (libunwind_frame_this_id): Do not clear THIS_ID.
* hppa-tdep.c (hppa_stub_frame_this_id): Likewise.
* ia64-tdep.c (ia64_frame_this_id): Likewise.
(ia64_libunwind_frame_this_id, ia64_libunwind_sigtramp_frame_this_id):
Use outer_frame_id instead of null_frame_id.
* amd64obsd-tdep.c (amd64obsd_trapframe_cache): Use outer_frame_id.
* i386obsd-tdep.c (i386obsd_trapframe_cache): Likewise.
* inline-frame.c (inline_frame_this_id): Refuse outer_frame_id.
* thread.c (restore_selected_frame): Update comment and remove
frame_id_p check.
gdb/doc/
* gdbint.texinfo (Unwinding the Frame ID): Reference outer_frame_id.
* objfiles.c (struct objfile_data): Delete member cleanup and replace
with save, free.
(register_objfile_data_with_cleanup): Delete arg cleanup and replace
with save, free. All callers updated.
(clear_objfile_data): Replace cleanup loop with separate save and
free loops.
* objfiles.h (register_objfile_data_with_cleanup): Update.
* arm-tdep.c (arm_objfile_data_free): Renamed from
arm_objfile_data_cleanup, all callers updated.
* dwarf2read.c (dwarf2_per_objfile_free): Renamed from
dwarf2_per_objfile_cleanup, all callers updated.
* python/py-objfile.c (py_free_objfile): Renamed from clean_up_objfile,
all callers updated.
* python/py-type.c (save_objfile_types): Renamed from
clean_up_objfile_types, all callers updated.
Nick Clifton [Fri, 11 Sep 2009 15:27:38 +0000 (15:27 +0000)]
* po/bfd.pot: Updated by the Translation project.
* po/binutils.pot: Updated by the Translation project.
* po/gold.pot: Updated by the Translation project.
* po/gold.pot: Updated by the Translation project.
* po/gprof.pot: Updated by the Translation project.
* po/sv.po: Updated Swedish translation.
* po/ld.pot: Updated by the Translation project.
* po/fi.po: Updated Finnish translation.
* po/ld.pot: Updated by the Translation project.
* po/fi.po: Updated Finnish translation.
Updated sources to compile cleanly with -Wc++-compat:
* basic_blocks.c: Add casts.
* cg_dfn.c: Add cast.
* corefile.c: Add casts.
* gmon_io.c: Add casts.
* hist.c: Add cast.
* source.c: Add cast.
* sym_ids.c (struct match): Moved to top level.
Updated soruces in ld/* to compile cleanly with -Wc++-compat:
* ld.h (enum endian_enum,enum symbolic_enum,enum dynamic_list_enum): Move to top level.
* ldcref.c: Add casts.
* ldctor.c: Add casts.
* ldexp.c
* ldexp.h (enum node_tree_enum,enum phase_enum): Move to top level.
* ldlang.c: Add casts. (lang_insert_orphan): Use enum name instead of integer.
* ldlang.h (enum statement_enum): Move to top level.
* ldmain.c: Add casts.
* ldwrite.c: Add casts.
* lexsup.c: Add casts. (enum control_enum): Move to top level.
* mri.c: Add casts. (mri_draw_tree): Use enum name instead of integer.
Updated sources to compile cleanly with -Wc++-compat:
* basic_blocks.c: Add casts.
* cg_dfn.c: Add cast.
* corefile.c: Add casts.
* gmon_io.c: Add casts.
* hist.c: Add cast.
* source.c: Add cast.
* sym_ids.c (struct match): Moved to top level.
* as.c (main): Call dwarf2_init.
* config/obj-elf.c (struct group_list): New field.
(build_group_lists): Use hash lookup.
(free_section_idx): New function.
(elf_frob_file): Adjust.
* dwarf2dbg.c (all_segs_hash, last_seg_ptr): New variables.
(get_line_subseg): Adjust.
(dwarf2_init): New function.
* dwarf2dbg.h (dwarf2_init): New declaration.
Nick Clifton [Fri, 11 Sep 2009 11:16:19 +0000 (11:16 +0000)]
* obcopy.c (copy_object): New parameter `input_arch', architecture
of input file, if not specified in input file itself; all callers
updated; `binary_architecture' hack removed.
(copy_archive, copy_file): New parameter `input_arch', for
`copy_object' usage.
(copy_main): Accept `-B' (`--binary-architecture') option also
for any arch-less input ifile format, not only `binary'; remove
bfd_external_binary_architecture hack; instead, add `input_arch'
to calls to `copy_file'.
* windres.c, windmc.c : Obsolete and useless external references
to `bfd_external_binary_architecture' or `bfd_external_machine'
removed.
* binary.c (binary_object_p): Remove bfd_external_binary_architecture
hack. objcopy `-B' (`--binary-architecture') option is now handled
in a generic way.
PR gas/10623
* config/tc-mmix.c (md_assemble) <case mmix_operands_xyz_opt>:
Allow register operands for SWYM as for TRIP and TRAP. Correct
operand handling and error checking. Never emit
BFD_RELOC_MMIX_REG_OR_BYTE for operands to these insns.
Michael Snyder [Thu, 10 Sep 2009 21:02:46 +0000 (21:02 +0000)]
2009-09-10 Michael Snyder <msnyder@vmware.com>
* remote.c (PACKET_bc, PACKET_bs): New enums.
(remote_protocol_features): Add ReverseStep, ReverseContinue.
(remote_resume): Check for reverse capability.
(_initialize_remote): Add packet config for "bs" and "bc" packets.
* NEWS (new options): Mention set/show for "bs" and "bc" packets.
Joel Brobecker [Thu, 10 Sep 2009 18:56:45 +0000 (18:56 +0000)]
* top.c (interactive_mode): New static variable.
(show_interactive_mode): New function.
(input_from_terminal_p): If interactive_mode is not auto, then
use that rather than checking the stdin settings.
(init_main): Add "set/show interactive-mode" command.
* NEWS: Add entry for new "set/show interactive-mode" command.
Alan Modra [Thu, 10 Sep 2009 14:31:23 +0000 (14:31 +0000)]
gas/
* config/tc-d10v.c: Include dwarf2dbg.h.
(write_long, write_1_short, write_2_short): Call dwarf2_emit_insn.
(d10v_frob_label): New function.
* config/tc-d10v.h (d10v_frob_label): Declare.
(tc_frob_label): Define as d10v_frob_label.
gas/testsuite/
* gas/lns/lns-common-1.s: Use two nops between each .loc.
* gas/lns/lns.exp: Don't exclude d10v.
bfd/
* elf32-arm.c (elf32_arm_final_link_relocate): Set sym_flags
for the mode of target PLT entries.
(allocate_dynrelocs): Only adjust symbol type if setting its
value.
Joel Brobecker [Wed, 9 Sep 2009 17:59:18 +0000 (17:59 +0000)]
Fix a build failure on AIX.
* rs6000-nat.c (vmap_exec): Rewrite using target_get_section_table
instead of relying on the to_sections/to_section_end target_ops
field, since the latter have been removed in a previous patch.
Joel Brobecker [Wed, 9 Sep 2009 17:39:21 +0000 (17:39 +0000)]
Avoid quadratic behavior when computing the value of a register.
* frame.c (frame_stash): New static constant.
(frame_stash_add, frame_stash_find, frame_stash_invalidate):
New functions.
(get_frame_id): Minor reformatting. Add the frame to the frame stash.
(frame_find_by_id): Search the frame stash first before walking all
frames starting from te current_frame.
(reinit_frame_stash): Add call to frame_stash_invalidate ();
Nick Clifton [Wed, 9 Sep 2009 15:03:54 +0000 (15:03 +0000)]
PR 10478:
* elf.c (bfd_section_from_shdr): Do not reject sparc binaries with
section headers containing sh_link values of SHN_BEFORE or
SHN_AFTER.
* elfcode.h (elf_object_p): Likewise.
readelf.c (get_elf_section_flags): Add support for SHF_EXCLUDE and
SHF_ORDERED.
(process_section_headers): Warn about out of range sh_link
values. When displaying detailed section header information
annote the SHN_BEFORE and SHN_AFTER values.
Michael Snyder [Tue, 8 Sep 2009 22:50:59 +0000 (22:50 +0000)]
2009-09-08 Michael Snyder <msnyder@vmware.com>
* amd64-linux-tdep.h (enum amd64_syscall): New enum consts,
to replace literal consts used in amd64-linux-tdep.c
* linux-record.h (enum gdb_syscall): New enum consts, to replace
literal consts used in amd64-linux-tdep.c and linux-record.c.
* amd64-linux-tdep.c (amd64_canonicalize_syscall): New function,
translate from native amd64 Linux syscall id to internal gdb id.
(amd64_linux_syscall_record): Switch statement abstracted out
and replaced with a call to amd64_canonicalize_syscall.
* linux-record.c (record_linux_system_call): Replace literal
consts with enum consts.
* i386-linux-tdep.c (i386_canonicalize_syscall): New function,
trivially translate from native i386 Linux syscalls to gdb syscalls.
(i386_linux_intx80_sysenter_record):
Fix parallel check//% rule in gdb for non-VPATH build.
gdb/:
* gdb/Makefile.in (check//%): Parse 'config.status --version'
output to recreate the configuration from the testsuite directory,
rather than running 'config.status --recheck' from a different
build directory. Let configure do the recursion rather than
doing it manually.
/:
* configure.ac: Do not use $extrasub for replacing @if/@endif
parts in Makefile; instead, use additional arguments to
AC_CONFIG_COMMANDS to do the replacement manually, with several
sed invocations, to avoid HP-UX sed command limits.
* configure: Regenerate.
Jan Kratochvil [Tue, 8 Sep 2009 17:52:27 +0000 (17:52 +0000)]
gdb/
* ia64-tdep.c (ia64_memory_insert_breakpoint)
(ia64_memory_remove_breakpoint): Return immediately if any of memory
reads fail. Do not combine the VAL values.
Jan Kratochvil [Tue, 8 Sep 2009 17:39:22 +0000 (17:39 +0000)]
gdb/
Fix ia64 shadowing of breakpoints in multiple slots of a single bundle.
* ia64-tdep.c (ia64_memory_insert_breakpoint): New call
of make_show_memory_breakpoints_cleanup with parameter 0. Move the
reading of SHADOW_CONTENTS to this memory state point of code. Update
comment for the memory re-read.
gdb/testsuite/
* gdb.base/breakpoint-shadow.exp (Second breakpoint placed): Initialize
$bpt2address.
(Second breakpoint address is valid on ia64)
(Third breakpoint on ia64 in the Second breakpoint's bundle): New.
Andreas Schwab [Tue, 8 Sep 2009 09:47:52 +0000 (09:47 +0000)]
* z8kgen.c (struct op): Replace unused flavor with id.
(opt): Remove extra xorb entry.
(func): Use id field as fallback.
(sub): Return new string, caller changed.
(internal): Allocate end marker. Assign unique id before sorting.
(gas): Likewise. Fix loop end condition.
* z8k-opc.h: Regenerate.
* Makefile.am (TARG_ENV_CFILES): New variable. Set to te-vms.c
(POTFILES): Add $(TARG_ENV_CFILES) in definition.
(EXTRA_as_new_SOURCES): Ditto.
* Makefile: Regenerate.
* acinclude.m4 (BFD_HAVE_TIME_TYPE_MEMBER,
BFD_HAVE_SYS_STAT_TYPE_MEMBER): New macro created from bfd/bfd.m4.
* configure.in: Add Tests for tm_gmtoff, st_mtim.tv_sec and
st_mtim.tv_nsec (from bfd/configure.in). Check for time.h and
sys/stat.h headers.
Add te-vms.o in extra_objects if te_file is vms.
* configure: Regenerate.
* config.in: Regenerate.
* config/te-vms.c: New file, from bfd/vmsutil.c
(vms_dwarf2_file_time_name, vms_dwarf2_file_size_name)
(vms_dwarf2_file_name): New functions.
(vms_file_stats_name): Make it static, add a dirname parameter to
locally create the full pathname.
* config/te-vms.h: Add a copyright header.
Declare the above functions.
(DWARF2_FILE_TIME_NAME, DWARF2_FILE_SIZE_NAME, DWARF2_FILE_NAME): Use
the above functions in the definition.
* makefile.vms (OBJS): Add te-vms.obj.
(te-vms.obj): Create a specific target.
* configure.com: Create targ-env.h using a per target value.
Compile te-vms.c for ia64.