* elfread.c (elf_symfile_read): Don't call
[deliverable/binutils-gdb.git] / gdb / ChangeLog
index faff01388532eb017d057a8148cf1d7cd0dcadca..ddca300eb0558fd76dc96c10b6a5d21c3e492f8f 100644 (file)
@@ -1,5 +1,451 @@
+2010-03-10  Tom Tromey  <tromey@redhat.com>
+
+       * elfread.c (elf_symfile_read): Don't call
+       dwarf2_build_frame_info.
+       * dwarf2read.c (struct dwarf2_section_info) <readin>: New field.
+       (struct dwarf2_per_objfile) <objfile>: New field.
+       (dwarf2_has_info): Now idempotent.  Set objfile field.
+       (dwarf2_read_section): Check and set readin field.  Call
+       posix_madvise.
+       (dwarf2_build_psymtabs): Don't read all sections.
+       (read_type_comp_unit_head): Read types section.
+       (create_debug_types_hash_table): Likewise.
+       (init_cu_die_reader): Add asserts.
+       (process_type_comp_unit): Add assert.
+       (dwarf2_build_psymtabs_hard): Read info section.
+       (load_partial_comp_unit): Add assert.
+       (create_all_comp_units): Read info section.
+       (load_full_comp_unit): Likewise.
+       (dwarf2_ranges_read): Read ranges section.
+       (dwarf2_record_block_ranges): Add assert.
+       (dwarf2_read_abbrevs): Read abbrev section.
+       (read_indirect_string): Read str section.
+       (dwarf_decode_line_header): Read line section.
+       (read_signatured_type_at_offset): Read types section.
+       (dwarf_decode_macros): Read macinfo section.
+       (dwarf2_symbol_mark_computed): Read loc section.
+       * dwarf2-frame.c (dwarf2_frame_find_fde): Call
+       dwarf2_build_frame_info.
+       (dwarf2_build_frame_info): Unconditionally set
+       dwarf2_frame_objfile_data on the objfile.
+       * configure.ac: Check for posix_madvise.
+       * config.in, configure: Rebuild.
+
+2010-03-10  Tom Tromey  <tromey@redhat.com>
+
+       * xcoffread.c (xcoff_start_psymtab): Update.
+       (xcoff_end_psymtab): Update.
+       * psymtab.c (allocate_psymtab): Remove dead code.
+       * psympriv.h (struct partial_symtab) <read_symtab_private>: Now
+       void*.
+       * mdebugread.c (parse_partial_symbols): Update.
+       (new_psymtab): Likewise.
+       * dwarf2read.c (process_psymtab_comp_unit): Update.
+       (psymtab_to_symtab_1): Update.
+       * dbxread.c (start_psymtab): Update.
+       (end_psymtab): Likewise.
+
+2010-03-10  Tom Tromey  <tromey@redhat.com>
+
+       * xcoffread.c: Include psymtab.h.
+       (xcoff_sym_fns): Update.
+       * symtab.h (struct partial_symbol): Remove.
+       (PSYMBOL_DOMAIN, PSYMBOL_CLASS): Remove.
+       (struct partial_symtab): Remove.
+       (PSYMTAB_TO_SYMTAB): Remove.
+       (lookup_partial_symbol, lookup_partial_symtab, find_pc_psymtab)
+       (find_pc_sect_psymtab): Remove.
+       (find_pc_sect_symtab_via_partial): Declare.
+       (find_pc_psymtab, find_pc_sect_psymbol, psymtab_to_symtab)
+       (find_main_psymtab): Remove.
+       (find_main_filename): Declare.
+       (fixup_psymbol_section): Remove.
+       (fixup_section): Declare.
+       * symtab.c: Include psymtab.h.
+       (lookup_symtab): Use lookup_symtab method.
+       (lookup_partial_symtab): Remove.
+       (find_pc_sect_psymtab_closer): Remove.
+       (find_pc_sect_psymtab): Remove.
+       (find_pc_sect_symtab_via_partial): New function.
+       (find_pc_psymtab, find_pc_sect_psymbol, find_pc_psymbol): Remove.
+       (fixup_section): No longer static.
+       (fixup_psymbol_section): Remove.
+       (lookup_symbol_aux): Use lookup_symbol_aux_quick.
+       (lookup_global_symbol_from_objfile): Likewise.
+       (lookup_symbol_aux_psymtabs): Remove.
+       (lookup_symbol_aux_quick): New function.
+       (lookup_symbol_global): Use lookup_symbol_aux_quick.
+       (lookup_partial_symbol): Remove.
+       (basic_lookup_transparent_type_quick): New function.
+       (basic_lookup_transparent_type): Use it.
+       (find_main_psymtab): Remove.
+       (find_main_filename): New function.
+       (find_pc_sect_symtab): Use find_pc_sect_symtab method.
+       (find_line_symtab): Use expand_symtabs_with_filename method.
+       (output_partial_symbol_filename): New function.
+       (sources_info): Use map_partial_symbol_filenames.
+       (struct search_symbols_data): New type.
+       (search_symbols_file_matches): New function.
+       (search_symbols_name_matches): Likewise.
+       (search_symbols): Use expand_symtabs_matching method.
+       (struct add_name_data): Rename from add_macro_name_data.
+       (add_macro_name): Update.
+       (add_partial_symbol_name): New function.
+       (default_make_symbol_completion_list): Use
+       map_partial_symbol_names.
+       (struct add_partial_symbol_name): New type.
+       (maybe_add_partial_symtab_filename): New function.
+       (make_source_files_completion_list): Use
+       map_partial_symbol_filenames.
+       (expand_line_sal): Use expand_symtabs_with_filename method.
+       * symmisc.c: Include psymtab.h.
+       (print_objfile_statistics): Use print_stats method.
+       (dump_objfile): Use dump method.
+       (dump_psymtab, maintenance_print_psymbols)
+       (maintenance_info_psymtabs, maintenance_check_symtabs)
+       (extend_psymbol_list): Remove.
+       * symfile.h (struct quick_symbol_functions): New struct.
+       (struct sym_fns) <qf>: New field.
+       (sort_pst_symbols): Remove.
+       (increment_reading_symtab): Declare.
+       * symfile.c: Include psymtab.h.
+       (compare_psymbols, sort_pst_symbols): Remove.
+       (psymtab_to_symtab): Remove.
+       (increment_reading_symtab): New function.
+       (symbol_file_add_with_addrs_or_offsets): Use expand_all_symtabs
+       method.
+       (set_initial_language): Use find_main_filename.
+       (allocate_psymtab, discard_psymtab, cashier_psymtab): Remove.
+       (free_named_symtabs): Remove unused code.
+       (start_psymtab_common, add_psymbol_to_bcache)
+       (append_psymbol_to_list, add_psymbol_to_list, init_psymbol_list):
+       Remove.
+       * stack.c: Include psymtab.h, symfile.h.
+       (backtrace_command_1): Use find_pc_sect_symtab_via_partial.
+       * source.h (psymtab_to_fullname): Don't declare.
+       * source.c: Include psymtab.h.
+       (select_source_symtab): Use find_last_source_symtab method.
+       (forget_cached_source_info): Use forget_cached_source_info
+       method.
+       (find_and_open_source): No longer static.
+       (psymtab_to_fullname): Remove.
+       * somread.c: Include psymtab.h.
+       (som_sym_fns): Update.
+       * psympriv.h: New file.
+       * psymtab.h: New file.
+       * psymtab.c: New file.
+       * objfiles.h: (ALL_OBJFILE_PSYMTABS): Remove.
+       (ALL_PSYMTABS, ALL_PSPACE_PSYMTABS): Likewise.
+       * objfiles.c: Include psymtab.h.
+       (objfile_relocate1): Use relocate method.
+       (objfile_has_partial_symbols): Use has_symbols method.
+       * mipsread.c: Include psymtab.h.
+       (ecoff_sym_fns): Update.
+       * mi/mi-cmd-file.c: Include psymtab.h.
+       (print_partial_file_name): New function.
+       (mi_cmd_file_list_exec_source_files): Use
+       map_partial_symbol_filenames.
+       * mdebugread.c: Include psympriv.h.
+       * machoread.c: Include psympriv.h.
+       (macho_sym_fns): Update.
+       * m2-exp.y (yylex): Use lookup_symtab.
+       * elfread.c: Include psympriv.h.
+       (elf_sym_fns): Update.
+       * dwarf2read.c: Include psympriv.h.
+       * dbxread.c: Include psympriv.h.
+       (aout_sym_fns): Update.
+       * cp-support.c: Include psymtab.h.
+       (read_in_psymtabs): Remove.
+       (make_symbol_overload_list_qualified): Use
+       expand_symtabs_for_function method.
+       * coffread.c: Include psympriv.h.
+       (coff_sym_fns): Update.
+       * blockframe.c: Include psymtab.h.
+       (find_pc_partial_function): Use find_pc_sect_symtab method.
+       * ada-lang.h (ada_update_initial_language): Update.
+       * ada-lang.c: Include psymtab.h.
+       (ada_update_initial_language): Remove 'main_pst' argument.
+       (ada_lookup_partial_symbol): Remove.
+       (struct ada_psym_data): New type.
+       (ada_add_psyms): New function.
+       (ada_add_non_local_symbols): Use map_ada_symtabs method.
+       (struct add_partial_datum): New type.
+       (ada_add_partial_symbol_completions): New function.
+       (ada_make_symbol_completion_list): Use map_partial_symbol_names.
+       (ada_exception_support_info_sniffer): Update.
+       * Makefile.in (SFILES): Add psymtab.c.
+       (COMMON_OBS): Add psymtab.o.
+       (HFILES_NO_SRCDIR): Add psymtab.h, psympriv.h.
+
+2010-03-10  Pierre Muller  <muller@ics.u-strasbg.fr>
+
+       * remote-fileio.c (cygwin_conv_path): Define macro for old cygwin API.
+
+2010-03-10  Sami Wagiaalla  <swagiaal@redhat.com>
+
+       PR C++/11236:
+       * cp-namespace.c (cp_add_using): Deleted.
+       (cp_add_using_directive): Use obstack allocations.
+       Merged the function cp_add_using into this one.
+       Added 'struct obstack *' argument.
+       (cp_scan_for_anonymous_namespaces): Updated.
+       * cp-support.h: Updated.
+       * dwarf2read.c (read_import_statement): Updated.
+       (read_namespace): Updated.
+
+2010-03-10  Pierre Muller  <muller@ics.u-strasbg.fr>
+
+       * windows-nat.c (cygwin_conv_path): Remove old macro.
+
+2010-03-10  Pedro Alves  <pedro@codesourcery.com>
+
+       * breakpoint.c (condition_command): Handle watchpoint conditions.
+       (is_hardware_watchpoint): Add comment.
+       (is_watchpoint): New.
+       (update_watchpoint): Don't reparse the watchpoint's condition
+       unless necessary.
+       (WP_IGNORE): New.
+       (watchpoint_check): Use it.
+       (bpstat_check_watchpoint): Handle it.
+       (bpstat_check_breakpoint_conditions): Evaluate watchpoint local
+       conditions in a frame where it makes sense.
+       (watch_command_1): Store the innermost block of the condition
+       expression.
+       (delete_breakpoint): Delete the watchpoint condition expression.
+       * breakpoint.h (struct bp_location) <cond>: Update comment.
+       (struct breakpoint): New field `cond_exp_valid_block'.
+
+2010-03-09  Joel Brobecker  <brobecker@adacore.com>
+
+       Adjust handling of Ada DIEs after dwarf2_physname patch.
+       * dwarf2read.c (dwarf2_compute_name): Add handling of Ada DIEs.
+
+2010-03-09  Christopher Faylor  <me+cygwin@cgf.cx>
+           Pierre Muller  <muller@ics.u-strasbg.fr>
+
+       * windows-nat.c (cygwin_conv_path): Redefine to properly convert
+       from/to posix/win32.
+       (windows_make_so): Use non-Cygwin 1.7 specific function.
+       (windows_create_inferior): Make sure that cygallargs points to
+       original args in non Cygwin 1.7. case.
+
+2010-03-09  Michael Snyder  <msnyder@vmware.com>
+
+       * i386-tdep.c (i386_record_lea_modrm_addr): Use extract_signed_int
+       after target_read_memory to get host byte order.
+       (i386_process_record): Ditto.
+
+2010-03-09  Keith Seitz  <keiths@redhat.com>
+
+       Based on work from Daniel Jacobowitz  <dan@codesourcery.com>
+       * c-typeprint.c (cp_type_print_method_args): For non-static methods,
+       print out const or volatile qualifiers, too.
+       (c_type_print_args): Add parameters show_artificial and language.
+       Skip artificial parameters when requested.
+       Use the appropriate language printer.
+       (c_type_print_varspec): Tell c_type_print_args to skip artificial
+       parameters and pass language_c.
+       * dwarf2read.c (die_list): New file global.
+       (struct partial_die_info): Update comments for name field.
+       (pdi_needs_namespace): Renamed to ...
+       (die_needs_namespace): ... this. Rewrite.
+       (dwarf2_linkage_name): Remove.
+       (add_partial_symbol): Do not predicate the call to
+       partial_die_full_name based on pdi_needs_namespace.
+       Remove call to cp_check_possible_namespace_symbols and associated
+       outdated comments.
+       (guess_structure_name): Do not inspect child subprogram DIEs.
+       (dwarf2_fullname): Update comments.
+       Use die_needs_namespace to assist in computing the name.
+       (read_func_scope): Use dwarf2_name to get the DIE's name.
+       Use dwarf2_physname to get the "linkage name" of the DIE.
+       (dwarf2_add_member_field): Use dwarf2_physname instead of
+       dwarf2_linkage_name.
+       (read_structure_type): For structs and classes, set TYPE_NAME, too.
+       (determine_class): Remove.
+       (read_partial_die): Ignore DW_AT_MIPS_linkage_name for all languages
+       except Ada.
+       (new_symbol): Unconditionally call dwarf2_name.
+       Compute the "linkage name" using dwarf2_physname.
+       Use dwarf2_name instead of dwarf2_full_name for enumerator DIEs.
+       When determining to scan for anonymous C++ namespaces, ignore
+       the linkage name.
+       (dwarf2_physname): New function.
+       (dwarf2_full_name): Move content to new function and call
+       that.
+       (dwarf2_compute_name): "New" function.
+       (_initialize_dwarf2_read): Initialize die_list.
+       * gnu-v3-eabi.c (gnu_v3_find_method_in): Remove unused variable
+       physname.
+       (gnu_v3_print_method_ptr): Use the physname for virtual methods
+       without a demangled name.
+       Print out type information for non-virtual methods.
+        * linespec.c (decode_line_1): Force ANY string using "::" (or
+       "." for java) to use decode_compound, and clean up any stray quoting.
+        If we found a file symtab, re-evaluate whether the remainder is_quoted.
+        (decode_compound): Stop consuming at an open parenthesis.
+        Keep template parameters.
+        Keep any overload information.
+        Keep keywords like "const".
+        Remove paren_pointer.
+        Move is_quoted check from set_flags to here.
+        Remove #if 0 code from 2000. Ten years is long enough.
+        (find_method): Before comparing symbol names, canonicalize the string
+        from the user.
+        If a specific overload is requested, find it. Otherwise throw an error.
+       (find_method_overload_end): New function.
+       (set_flags): Remove.
+        (decode_compound): Assume that parentheses are matched.
+        It's a lot easier.
+       * symtab.c (symbol_find_demangled_name): Add DMGL_VERBOSE flag
+       to cplus_demangle.
+       * linespec.c (decode_line_1): Keep important keywords like
+       "const" and "volatile".
+       * symtab.h (SYMBOL_CPLUS_DEMANGLED_NAME): Remove.
+       * typeprint.h (c_type_print_args): Add declaration.
+       * ui-file.c (do_ui_file_obsavestring): New function.
+       (ui_file_obsavestring): New function.
+       * ui-file.h (ui_file_obsavestring): Add declaration.
+       * valops.c (find_overload_match): Resolve the object to
+       a non-pointer type.
+       If the object is a data member, search the object for the member
+       and return with staticp set.
+       Use SYMBOL_NATURAL_NAME instead of SYMBOL_CPLUS_DEMANGLED_NAME.
+       Do not attempt to extract a function name from non-function types.
+       If the extracted function name and the original name are the same,
+       we don't have a C++ method.
+
+       From Jan Kratochvil  <jan.kratochvil@redhat.com>:    
+       * dwarf2read.c (new_symbol <DW_TAG_enumerator>): Call dwarf2_full_name.
+
+       * ada-lang.c (ada_lookup_symbol): Remove linkage_name parameters
+       and arguments from symbol lookups.
+       * ax-gdb.c (gen_expr): Likewise.
+       * cp-namespace.c (cp_lookup_symbol_nonlocal, lookup_namespace_scope,
+       cp_lookup_symbol_namespace, lookup_symbol_file, lookup_nested_type,
+       lookup_possible_namespace_symbol): Likewise.
+       * cp-support.c (read_in_psymtabs): Likewise.
+       * cp-support.h (cp_lookup_symbol_nonlocal): Likewise.
+       * language.h (la_lookup_symbol_nonlocal): Likewise.
+       * scm-valprint.c (scm_inferior_print): Likewise.
+       * solib-darwin.c (darwin_relocate_section_addresses): Likewise.
+       * solib-svr.c (elf_lookup_lib): Likewise.
+       * solib.c (show_auto_solib_add): Likewise.
+       * solist.h (lookup_lib_global, solib_global_lookup): Likewise.
+       * symmisc.c (maintenance_check_symtabs): Likewise.
+       * symtab.c (lookup_symbol_in_language, lookup_symbol_aux,
+       lookup_symbol_aux_local, lookup_symbol_aux_block,
+       lookup_symbol_from_objfile, lookup_symbol_aux_symtabs,
+       lookup_symbol_aux_psymtabs,basic_lookup_symbol_nonlocal,
+       lookup_symbol_static, lookup_symbol_global, symbol_matches_domain,
+       basic_lookup_transparent_type, find_main_psymtab,
+       lookup_block_symbol): Likewise.
+       * symtab.h (basic_lookp_symbol_nonlocal, lookup_symbol_static,
+       lookup_symbol_global, lookup_symbol_aux_block,
+       lookup_symbol_partial_symbol, lookup_block_symbol,
+       lookup_global_symbol, value_maybe_namespace_elt): Likewise.
+
+2010-03-09  Pierre Muller  <muller@ics.u-strasbg.fr>
+
+       * python/python-internal.h: Include symtab.h.
+
+2010-03-09  Joel Brobecker  <brobecker@adacore.com>
+           Pierre Muller  <muller@ics.u-strasbg.fr>
+
+       * p-lang.c (is_pascal_string_type): Remove unneeded parentheses.
+       * p-valprint.c (pascal_val_print): Remove undeed block and fix
+       indentation.
+
+2010-03-08  Tom Tromey  <tromey@redhat.com>
+
+       * breakpoint.c (breakpoint_1): Add "QUIT".
+
+2010-03-08  Daniel Jacobowitz  <dan@codesourcery.com>
+           Pedro Alves  <pedro@codesourcery.com>
+
+       * solib.c (solib_find): Replace extension if
+       solib_symbols_extension is set in the target gdbarch.
+       * arm-symbian-tdep.c (arm_symbian_init_abi): Set
+       solib_symbols_extension to "sym".
+       * gdbarch.sh (solib_symbols_extension): New variable.
+       (pstring): New function.
+       * gdbarch.h, gdbarch.c: Regenerate.
+
+2010-03-08  Tom Tromey  <tromey@redhat.com>
+
+       PR cli/9591:
+       * NEWS: Update.
+       * utils.c: Include main.h.
+       (fputs_maybe_filtered): Don't paginate if `batch_flag'.
+       (defaulted_query): Use default answer if `batch_flag'.
+       * main.h (batch_flag): Declare.
+       * main.c (batch_flag): New global.
+       (captured_main): Remove 'batch'.  Update.
+
+2010-03-08  Kevin Buettner  <kevinb@redhat.com>
+
+       From Richard Sandiford, Martin M. Hunt, Corinna Vinschen,
+       and Kevin Buettner:
+
+       * remote-mips.c (rockhopper_ops): New target_ops struct.
+       (MON_ROCKHOPPER): New mips_monitor_type.
+       (read_hex_value): New function.
+       (mips_request): Send 8-byte values with a 'T' packet.  Read the
+       packet argument as a string and use read_hex_value to parse it.  
+       (mips_exit_debug): Wait for response when using MON_ROCKHOPPER.
+       (rockhopper_open): New function.
+       (mips_wait): Read the PC, FP and SP fields as strings.  Use
+       read_hex_value to parse them and mips_set_register to commit them.
+       (mips_set_register): New function.
+       (mips_fetch_registers): Do not cast register value to "unsigned"
+       when reading a MON_ROCKHOPPER 't' packet.  Use mips_set_register.
+       (mips_store_registers): Use a 'T' packet to set registers when
+       using MON_ROCKHOPPER.
+       (pmon_end_download): Don't run initEther if using MON_ROCKHOPPER
+       and expect the total to be printed before the entry address.
+       (_initialize_remote_mips): Initialize and add rockhopper_ops.
+
+2010-03-08  Kevin Buettner  <kevinb@redhat.com>
+
+       * remote-mips.c (mips_fetch_word): Add new parameter, `valp'.
+       Change return value to int.  Store value fetched in location
+       addressed by `val'.  Use function's return value as success
+       or failure indicator.  Adjust all callers.
+
+2010-03-08  Pierre Muller  <muller@ics.u-strasbg.fr>
+
+       * p-lang.c (is_pascal_string_type): Check that TYPE arg is non NULL.
+
+2010-03-08  Jan Kratochvil  <jan.kratochvil@redhat.com>
+           Hui Zhu  <teawater@gmail.com>
+
+       * record.c (record_open_1): Check tmp_to_stopped_by_watchpoint and
+       tmp_to_stopped_data_address.
+       (record_open): Reset tmp_to_stopped_by_watchpoint and
+       tmp_to_stopped_data_address.
+       * target.c (init_dummy_target): Add to_stopped_by_watchpoint and
+       to_stopped_data_address.
+
+2010-03-08  Hui Zhu  <teawater@gmail.com>
+
+       * i386-tdep.c (i386_process_record): Initialize regnum.
+
+2010-03-08  Jan Kratochvil  <jan.kratochvil@redhat.com>
+
+       * symfile.c (addr_info_make_relative): New variable sect_name, use it.
+       Do not warn on ".gnu.liblist" and ".gnu.conflict".
+
+2010-03-08  Joel Brobecker  <brobecker@adacore.com>
+
+       Memory error when reading wrong core file.
+       * solib-svr4.c (solib_svr4_r_map): catch and print all exception
+       errors while reading the inferior memory, and return zero if
+       an exception was raised.
+
 2010-03-07  Michael Snyder  <msnyder@vmware.com>
 
+       * record.c (record_restore): Rename tmpu8 to rectype.
+
        * i386-tdep.c (i386_record_lea_modrm_addr): Rename local variables
        tmpu8, tmpi16, tmpi32, tmpulongest to addr8, addr16, addr32, addr64.
 
This page took 0.028876 seconds and 4 git commands to generate.