* remote-mips.c (mips_load_srec): Use make_cleanup_bfd_close.
[deliverable/binutils-gdb.git] / gdb / ChangeLog
index c866c5b942b73e3c0cc5f327ba2fbd9bcd81712c..29ccc0c95c871cb6553f206c64a6b25abc00260f 100644 (file)
@@ -1,3 +1,391 @@
+2012-07-18  Tom Tromey  <tromey@redhat.com>
+
+       * remote-mips.c (mips_load_srec): Use make_cleanup_bfd_close.
+       (pmon_load_fast): Likewise.
+       * m32r-rom.c (m32r_load): Use make_cleanup_bfd_close.
+       (m32r_upload_command): Likewise.
+       * dsrec.c (load_srec): Use make_cleanup_bfd_close.
+       * solib-darwin.c (darwin_solib_get_all_image_info_addr_at_init):
+       Use make_cleanup_bfd_close.
+
+2012-07-18  Tom Tromey  <tromey@redhat.com>
+
+       * symfile.c (symfile_bfd_open): Don't copy name.  Call
+       gdb_bfd_stash_filename.
+       (load_command): Open the new BFD before freeing the old.
+       (bfd_open_maybe_remote): Call gdb_bfd_stash_filename.
+       * symfile-mem.c (symbol_file_add_from_memory): Don't copy name.
+       Call gdb_bfd_stash_filename.
+       * spu-linux-nat.c (spu_bfd_open): Don't copy name.
+       * solib-spu.c (spu_bfd_fopen): Don't copy name.  Call
+       gdb_bfd_stash_filename.
+       * solib-darwin.c (darwin_solib_get_all_image_info_addr_at_init):
+       Free found_pathname.
+       * rs6000-nat.c (add_vmap): Don't copy filename.  Call
+       gdb_bfd_stash_filename.
+       * remote.c (remote_bfd_open): Call gdb_bfd_stash_filename.
+       * machoread.c (macho_add_oso_symfile): Call
+       gdb_bfd_stash_filename.
+       (macho_symfile_read_all_oso): Arrange to free archive_name.  Call
+       gdb_bfd_stash_filename.
+       (macho_check_dsym): Don't copy filename.  Call
+       gdb_bfd_stash_filename.
+       * jit.c (bfd_open_from_target_memory): Don't copy the filename.
+       * gdb_bfd.c (gdb_bfd_stash_filename): New function.
+       * gdb_bfd.h (gdb_bfd_stash_filename): Declare.
+       * gcore.c (create_gcore_bfd): Call gdb_bfd_stash_filename.
+       * exec.c (exec_close): Don't free the BFD's filename.
+       (exec_file_attach): Don't copy the filename.  Call
+       gdb_bfd_stash_filename.
+       * corelow.c (core_close): Don't free the BFD's filename.
+       (core_open): Call gdb_bfd_stash_filename.
+       * corefile.c (reopen_exec_file): Remove #if 0 code.
+       * solib.c (solib_bfd_fopen): Call gdb_bfd_stash_filename.  Free
+       pathname.
+       * dwarf2read.c (try_open_dwo_file): Call gdb_bfd_stash_filename.
+
+2012-07-18  Tom Tromey  <tromey@redhat.com>
+
+       * dwarf2read.c (try_open_dwo_file): Use gdb_bfd_ref and
+       gdb_bfd_unref.
+       (free_dwo_file): Use gdb_bfd_unref.
+       * cli/cli-dump.c: Include gdb_bfd.h.
+       (bfd_openw_with_cleanup): Use gdb_bfd_ref.
+       (bfd_openr_with_cleanup): Likewise.
+       * windows-nat.c (windows_make_so): Use gdb_bfd_ref,
+       gdb_bfd_unref.
+       * utils.c: Include gdb_bfd.h.
+       (do_bfd_close_cleanup): Use gdb_bfd_unref.
+       * symfile.c: Include gdb_bfd.h.
+       (separate_debug_file_exists): Use gdb_bfd_unref.
+       (bfd_open_maybe_remote): Use gdb_bfd_ref.
+       (symfile_bfd_open): Use gdb_bfd_ref, gdb_bfd_unref.
+       (generic_load): Use gdb_bfd_ref.
+       (reread_symbols): Use gdb_bfd_unref.
+       * symfile-mem.c: Include gdb_bfd.h.
+       (symbol_file_add_from_memory): Use make_cleanup_bfd_close.
+       * spu-linux-nat.c (spu_bfd_open): Use gdb_bfd_ref, gdb_bfd_unref.
+       * solib.c: Include gdb_bfd.h.
+       (solib_bfd_fopen): Use gdb_bfd_ref.
+       (solib_bfd_open): Use gdb_bfd_unref.
+       (free_so_symbols): Use gdb_bfd_unref.
+       (reload_shared_libraries_1): Use gdb_bfd_unref.
+       * solib-spu.c: Include gdb_bfd.h.
+       (spu_bfd_fopen): Use gdb_bfd_ref, gdb_bfd_unref.
+       * solib-pa64.c (pa64_solib_create_inferior_hook): Use gdb_bfd_ref,
+       gdb_bfd_unref.
+       * solib-frv.c: Include gdb_bfd.h.
+       (enable_break2): Use gdb_bfd_unref.
+       * solib-dsbt.c: Include gdb_bfd.h.
+       (enable_break2): Use gdb_bfd_unref.
+       * solib-darwin.c: Include gdb_bfd.h.
+       (darwin_solib_get_all_image_info_addr_at_init): Use gdb_bfd_ref,
+       gdb_bfd_unref.
+       (darwin_bfd_open): Use gdb_bfd_unref.
+       * rs6000-nat.c (add_vmap): Use gdb_bfd_ref, gdb_bfd_unref.
+       * remote-mips.c: Include gdb_bfd.h.
+       (mips_load_srec): Use gdb_bfd_ref.
+       (pmon_load_fast): Use gdb_bfd_ref.
+       * remote-m32r-sdi.c: Include gdb_bfd.h.
+       (m32r_load): Use gdb_bfd_ref.
+       * record.c: Include gdb_bfd.h.
+       (record_save_cleanups): Use gdb_bfd_unref.
+       (cmd_record_save): Use gdb_bfd_unref.
+       * procfs.c (insert_dbx_link_bpt_in_file): Use gdb_bfd_ref,
+       gdb_bfd_unref.
+       * objfiles.h (gdb_bfd_close_or_warn): Remove.
+       (gdb_bfd_ref, gdb_bfd_unref): Move to gdb_bfd.h.
+       * objfiles.c: Include gdb_bfd.h.
+       (free_objfile): Use gdb_bfd_unref.
+       (gdb_bfd_close_or_warn, gdb_bfd_ref, gdb_bfd_unref): Move to
+       gdb_bfd.c.
+       * machoread.c (macho_add_oso_symfile): Use gdb_bfd_unref.
+       (macho_symfile_read_all_oso): Use gdb_bfd_ref, gdb_bfd_unref.
+       (macho_check_dsym): Likewise.
+       * m32r-rom.c: Include gdb_bfd.h.
+       (m32r_load): Use gdb_bfd_ref.
+       (m32r_upload_command): Use gdb_bfd_ref.
+       * jit.c: Include gdb_bfd.h.
+       (jit_bfd_try_read_symtab): Use gdb_bfd_ref, gdb_bfd_unref.
+       * gdb_bfd.h: New file.
+       * gdb_bfd.c: New file.
+       * gcore.c: Include gdb_bfd.h.
+       (create_gcore_bfd): Use gdb_bfd_ref.
+       (do_bfd_delete_cleanup): Use gdb_bfd_unref.
+       (gcore_command): Use gdb_bfd_unref.
+       * exec.c: Include gdb_bfd.h.
+       (exec_close): Use gdb_bfd_unref.
+       (exec_close_1): Use gdb_bfd_unref.
+       (exec_file_attach): Use gdb_bfd_ref.
+       * elfread.c: Include gdb_bfd.h.
+       (build_id_verify): Use gdb_bfd_unref.
+       * dsrec.c: Include gdb_bfd.h.
+       (load_srec): Use gdb_bfd_ref.
+       * corelow.c: Include gdb_bfd.h.
+       (core_close): Use gdb_bfd_unref.
+       (core_open): Use gdb_bfd_ref.
+       * bfd-target.c: Include gdb_bfd.h.
+       (target_bfd_xclose): Use gdb_bfd_unref.
+       (target_bfd_reopen): Use gdb_bfd_ref.
+       * Makefile.in (SFILES): Add gdb_bfd.c.
+       (HFILES_NO_SRCDIR): Add gdb_bfd.h.
+       (COMMON_OBS): Add gdb_bfd.o.
+
+2012-07-18  Keith Seitz  <keiths@redhat.com>
+
+       * breakpoint.c (find_condition_and_thread): Initialize
+       TASK and REST.
+       (create_breakpiont): find_condition_and_thread will now
+       initialize COND_STRING, THREAD, and REST (and TASK).
+       (addr_string_to_sals): Likewise.
+
+2012-07-18  Pedro Alves  <palves@redhat.com>
+
+       * infrun.c (handle_inferior_event) <TARGET_WAITKIND_NO_HISTORY>:
+       Pull the single step breakpoints out of the target.
+
+2012-07-18  Sergio Durigan Junior  <sergiodj@redhat.com>
+
+       * probe.c (probe_safe_evaluate_at_pc): Rename variable `n_probes'.
+       * stap-probe.c (compile_probe_arg): Likewise.
+
+2012-07-18  Sergio Durigan Junior  <sergiodj@redhat.com>
+
+       * elfread.c (elf_get_probe_argument_count): Remove `objfile' argument.
+       (elf_compile_to_ax): Likewise.
+       * infrun.c (insert_exception_resume_from_probe): Likewise.
+       (check_exception_resume): Remove `objfile' variable.
+       * probe.c (find_probe_by_pc): Remove `objfile' argument.
+       (struct probe_and_objfile, probe_and_objfile_s): Delete.
+       (collect_probes): Adjust return value to `VEC (probe_p) *'.
+       (compare_entries): Rename to...
+       (compare_probes): ...this.  Adjust function to work with
+       `struct probe *'.  Rename variables `ea' and `eb' to `pa' and `pb'
+       respectively.
+       (gen_ui_out_table_header_info): Adjust `probes' argument to be
+       `VEC (probe_p) *'.
+       (print_ui_out_info): Adjust argument to be `struct probe *'.
+       (info_probes_for_ops): Adjust internal computations to use
+       `VEC (probe_p) *'.
+       (probe_safe_evaluate_at_pc): Refactor to not pass `objfile' anymore.
+       * probe.h (struct probe_ops) <get_probe_argument_count, compile_to_ax,
+       gen_info_probes_table_values>: Remove `objfile' argument.
+       (struct probe) <objfile>: New field.
+       (find_probe_by_pc): Remove `objfile' argument.
+       * stap-probe.c (stap_parse_probe_arguments): Likewise.
+       (stap_get_probe_argument_count): Likewise.
+       (stap_get_arg): Likewise.
+       (stap_evaluate_probe_argument): Likewise.
+       (stap_compile_to_ax): Likewise.
+       (compile_probe_arg): Refactor not to pass `objfile' anymore.
+       (handle_stap_probe): Fill `objfile' field from `struct probe'.
+       (stap_gen_info_probes_table_header): Remove `objfile' argument.
+       * symfile.h (struct sym_probe_fns) <sym_evaluate_probe_argument,
+       sym_compile_to_ax>: Likewise.
+
+2012-07-18  Terry Guo  <terry.guo@arm.com>
+
+       PR 14329
+       * defs.h (GDB_MI_MSG_WIDTH): New.
+       * ser_base (ser_base_read_error_fd): New function.
+       (do_ser_base_readchar): Poll error file descriptor as well as
+       standard output.
+       (generic_readchar): Refactor error handling. 
+
+2012-07-18  Joel Brobecker  <brobecker@adacore.com>
+
+       * NEWS: Create a new section for the next release branch.
+       Rename the section of the current branch, now that it has
+       been cut.
+
+2012-07-18  Joel Brobecker  <brobecker@adacore.com>
+
+       GDB 7.5 branch created (branch timestamp: 2012-07-18 03:22 UTC)
+       * version.in: Bump version to 7.5.50.20120718-cvs.
+
+2012-07-17  Keith Seitz  <keiths@redhat.com>
+
+       * linespec.c (linespec_parse_line_offset): Make parameter
+       const.
+
+2012-07-16  Jan Kratochvil  <jan.kratochvil@redhat.com>
+
+       PR 11914
+       * f-valprint.c (info_common_command): New variable frame_id.
+       Reinitialize FI form FRAME_ID after each print_variable_and_value.
+       * printcmd.c (print_variable_and_value): Extend function comment.
+       Add comment for invalidated FRAME.
+       * stack.c (backtrace_command_1): New variable frame_id.  Reinitialize
+       FI form FRAME_ID after each print_frame_local_vars.
+       (struct print_variable_and_value_data): Change frame to frame_id.
+       (do_print_variable_and_value): New variable frame, initialize it from
+       p->frame_id.  Add comment for invalidated FRAME.
+       (print_frame_local_vars, print_frame_arg_vars): New function comment.
+       Update CB_DATA.FRAME to CB_DATA.FRAME_ID initialization.  Add comment
+       for invalidated FRAME.
+
+2012-07-16  Marc Khouzam  <marc.khouzam@ericsson.com>
+           Pedro Alves  <palves@redhat.com>
+
+       * linux-nat.c (linux_nat_detach): Don't unregister from the event
+       loop.
+
+2012-07-16  Tom Tromey  <tromey@redhat.com>
+
+       * jv-typeprint.c (c_type_print_varspec_suffix): Don't declare.
+
+2012-07-15  Doug Evans  <dje@google.com>
+
+       * dwarf2read.c (stmt_list_hash): New struct.
+       (type_unit_group): Embed "per_cu" member, remove pointer.
+       New union member "t", move member "tus" into it, all uses updated.
+       New member "hash", replaces member "line_offset, all uses updated.
+       (quick_file_names): Replace member "offset" with "hash", all uses
+       updated.
+       (hash_stmt_list_entry, eq_stmt_list_entry): New functions.
+       (hash_file_name_entry, eq_file_name_entry): Call them.
+       (hash_type_unit_group, eq_type_unit_group): Ditto.
+       (dw2_get_cu, dw2_get_primary_cu): Replace assert with a better one.
+       (dw2_get_file_names_reader): Fix file name table calculation for TUs.
+       (dw2_get_file_names): Update.
+       (create_type_unit_group): Replace "per_cu" arg with "cu".
+       All callers updated.  Fix "quick" (.gdb_index) handling.
+       (get_type_unit_group): Replace "per_cu" arg with "cu".
+       All callers updated.
+       (build_type_unit_groups): Don't reset tu_stats.
+
+       * symtab.c (filename_seen_cache): Delete members "tab_alloc_size",
+       "tab_cur_size".  Change member "tab" to be a htab_t.
+       (create_filename_seen_cache): Update.
+       (clear_filename_seen_cache, delete_filename_seen_cache): Update.
+       (filename_seen): Update.
+
+2012-07-13  Doug Evans  <dje@google.com>
+
+       * symtab.c (filename_seen): Update comment.
+
+2012-07-13  Jan Kratochvil  <jan.kratochvil@redhat.com>
+           Doug Evans  <dje@google.com>
+
+       * buildsym.c (end_symtab_1): Split it to ...
+       (end_symtab_get_static_block): ... this ...
+       (end_symtab_from_static_block): ... and this function.
+       (end_symtab, end_expandable_symtab): Call them.
+       * buildsym.h (end_symtab_get_static_block)
+       (end_symtab_from_static_block): New declarations.
+       * dwarf2read.c (process_full_comp_unit): New variable static_block.
+       Set its valid CU ranges.
+
+2012-07-13  Jan Kratochvil  <jan.kratochvil@redhat.com>
+
+       * dwarf2loc.c (disassemble_dwarf_expression): Handle
+       DW_OP_GNU_parameter_ref.
+
+2012-07-13  Jan Kratochvil  <jan.kratochvil@redhat.com>
+
+       * dwarf2read.c (read_call_site_scope): Do not gdb_assert for invalid
+       read-in CALL_SITE_PARAMETER_PARAM_OFFSET.
+
+2012-07-13  Doug Evans  <dje@google.com>
+
+       * symtab.c (output_source_filename): Delete unnecessary forward decl.
+       (filename_seen_cache): New struct.
+       (INITIAL_FILENAME_SEEN_CACHE_SIZE): New macro.
+       (create_filename_seen_cache): New function.
+       (clear_filename_seen_cache, delete_filename_seen_cache): New functions.
+       (filename_seen): Delete arg "first".  New arg "cache".  All callers
+       updated.
+       (output_source_filename_data): New struct.
+       (output_source_filename): Delete arg "first".  New arg "data".
+       All callers updated.
+       (sources_info): Delete local "first".  New locals "data", "cleanups".
+       Rewrite to use filename_seen_cache.
+       (add_partial_filename_data): Delete member "first".  New member
+       "filename_seen_cache".  All uses updated.
+       (make_source_files_completion_list): Rewrite to use
+       filename_seen_cache.
+
+2012-07-12  Doug Evans  <dje@google.com>
+
+       * psymtab.c (map_symbol_filenames_psymtab): Skip shared psymtabs.
+
+2012-07-10  Doug Evans  <dje@google.com>
+
+       PR gdb/13498
+       * dwarf2read.c (dwarf2_per_objfile): New members n_type_unit_groups,
+       all_type_unit_groups, type_unit_groups, tu_stats.
+       (dwarf2_per_cu_data): Move "imported_symtabs" into new union "s".
+       All uses updated.  Add type_unit_group to union "s".
+       (type_unit_group): New struct.
+       (IS_TYPE_UNIT_GROUP): New macro.
+       (abbrev_table): Delete unused member "section".
+       (dw2_do_instantiate_symtab): Early exit if type_unit_group.
+       (dw2_get_cu): Assert not used with type_unit_group.
+       (dw2_get_primary_cu): New function.
+       (dw2_build_type_unit_groups_reader): New function.
+       (dw2_build_type_unit_groups): New function.
+       (dw2_get_file_names): Assert not called on type units.
+       (dw2_map_symtabs_matching_filename): Call dw2_build_type_unit_groups.
+       Redo loop to iterate over type unit groups instead of type units.
+       (dw2_expand_symtabs_matching, dw2_map_symbol_filenames): Ditto.
+       (read_abbrev_offset): New function.
+       (init_cutu_and_read_dies): New arg "abbrev_table".  All callers
+       updated.
+       (create_partial_symtab): New function.
+       (process_psymtab_comp_unit_reader): Assert not used with type units.
+       Call create_partial_symtab.
+       (process_psymtab_type_unit): Delete.
+       (hash_type_unit_group, eq_type_unit_group): New functions.
+       (allocate_type_unit_groups_table): New function.
+       (NO_STMT_LIST_TYPE_UNIT_PSYMTAB): New macro.
+       (NO_STMT_LIST_TYPE_UNIT_PSYMTAB_SIZE): New macro.
+       (create_type_unit_group, get_type_unit_group): New functions.
+       (tu_abbrev_offset): New struct.
+       (sort_tu_by_abbrev_offset): New function.
+       (add_type_unit_group_to_table): New function.
+       (build_type_unit_groups): New function.
+       (build_type_psymtabs_reader): New function.
+       (build_type_psymtab_dependencies): New function.
+       (build_type_psymtabs): Rewrite.
+       (scan_partial_symbols): Flag an error if a DW_TAG_imported_unit
+       is seen in a type unit.
+       (process_queue): Move symtab expansion debugging printfs here.
+       Call process_full_type_unit for type units.
+       (compute_symtab_includes): Assert not called for type units.
+       (process_cu_includes): Don't call compute_symtab_includes for
+       type units.
+       (process_full_type_unit): New function.
+       (process_imported_unit_die): Flag an error if called for type units.
+       (handle_DW_AT_stmt_list): Delete arg "want_line_info".  All callers
+       updated.  Assert not called for type units.
+       (read_file_scope): Call dwarf2_start_symtab.
+       (setup_type_unit_groups): New function.
+       (read_type_unit_scope): Rewrite.
+       (abbrev_table_read_table): Initialize abbrev_table->offset.
+       (abbrev_table_free_cleanup): New function.
+       (dwarf2_start_symtab): New function.
+       (load_full_type_unit): Assert not called for type unit groups.
+       * buildsym.c (finish_block_internal): New arg "expandable".
+       All callers updated.
+       (start_symtab): Move most contents to ...
+       (restart_symtab): ... here.  New function.
+       (reset_symtab_globals): New function.
+       (end_symtab_1): Renamed from end_symtab.  New arg "expandable".
+       Call reset_symtab_globals.
+       (end_symtab, end_expandable_symtab): New functions.
+       (set_missing_symtab, augment_type_symtab): New functions.
+       * buildsym.h (end_expandable_symtab): Declare.
+       (augment_type_symtab, restart_symtab): Declare.
+       * psympriv.h (struct partial_symtab): New member "anonymous".
+       * psymtab.c (partial_map_symtabs_matching_filename): Ignore
+       anonymous psymtabs.
+       (read_psymtabs_with_filename): Ditto.
+       (map_symbol_filenames_psymtab, psymtab_to_fullname): Ditto.
+       (expand_symtabs_matching_via_partial): Ditto.
+       (dump_psymtab): Update.
+       * dictionary.c (dict_add_pending): New function.
+       * dictionary.h (dict_add_pending): Declare.
+
 2012-07-09  Doug Evans  <dje@google.com>
 
        * buildsym.c (start_subfile): Remove unnecessary check for
This page took 0.034494 seconds and 4 git commands to generate.