Paul N. Hilfinger
40658b9446
Rework symbol searches to move Ada-specific stuff to ada-lang.c.
...
This is a clean-up of some of our symbol-lookup machinery to pull some
kludgy Ada-specific definitions out of psymtab.c. In place of
map_ada_symtabs and ada_lookup_partial_symbol, we have a method
map_matching_symbols, which searches through all symbol tables and
partial symbol tables looking for a symbol that matches according to
a matching function that is passed as a parameter. This requires some
care, because partial symbol tables speed up searches by binary search,
while full symbol tables use hashing. To call map_matching_symbols, therefore,
you may need to supply both a matching function that is compatible with the
dictionary hash function and an ordering relation that is compatible with
strcmp_iw, which is used to order partial symbol tables.
Having added this general routine to psymtab.c, we use it in ada-lang.c
to rework add_non_local_symbols (now renamed add_nonlocal_symbols).
Changelog:
gdb/
* ada-lang.c (full_match): Declare.
(ada_match_name): Rename to match_name (we should avoid prefixing static
symbols with "ada_").
(match_name): New name for ada_match_name.
(struct ada_psym_data): Remove and replace with...
(struct match_data): User data for map_matching_symbols.
(ada_add_psyms): Remove.
(aux_add_nonlocal_symbols): New function, used as callback for
map_matching_symbols.
(compare_names): Ordering function adopted from strcmp_iw for Ada-encoded
symbols.
(ada_add_non_local_symbols): Rename to add_nonlocal_symbols.
(add_nonlocal_symbols): Renamed from ada_add_non_local_symbols.
Rework to use map_matching_symbols instead of map_ada_symtabs.
(ada_lookup_symbol_list): Use add_nonlocal_symbols.
* psymtab.c: Include dependency on dictionary.h.
(match_partial_symbol): New function.
(ada_lookup_partial_symbol): Remove.
(map_block): New function, auxiliary to map_matching_symbols_psymtab.
(map_matching_symbols_psymtab): New function.
(psym_functions): Replace map_ada_symtabs with map_matching_symbols_psymtab.
* symfile.h: Replace map_ada_symtabs definition with map_matching_symbols.
2010-10-07 07:13:51 +00:00
Paul N. Hilfinger
7358912389
Replace wild_match with faster version and modify its interface.
...
This new version of wild_match is comparable in speed to strcmp_iw, and has
the same signature and same return value for equal names.
gdb/ChangeLog:
* ada-lang.c (wild_match): Reimplement.
Change API to eliminate unused length argument, reverse arguments and
make 0 the 'true' return value.
(advance_wild_match): New auxiliary function for wild_match to improve
readability.
(ada_match_name, ada_add_block_symbols): Use new API for wild_match.
* psymtab.c (ada_lookup_partial_symbol, map_ada_symtabs): Use new
API for wild_match.
* symfile.h (map_ada_symtabs): Modify declaration to use new API for
wild_match.
* dwarf2read.c (dw2_map_ada_symtabs): Ditto.
2010-10-04 06:34:40 +00:00
Tom Tromey
72b9f47f1e
* symfile.h (allocate_symtab): Update.
...
* symfile.c (allocate_symtab): Make 'filename' const.
* psymtab.c (add_psymbol_to_bcache): Make 'name' const.
(add_psymbol_to_list): Likewise.
* psympriv.h (struct partial_symtab) <filename, dirname>: Now
const.
(add_psymbol_to_list): Update.
* mdebugread.c (new_symtab): Make 'name' const.
(psymtab_to_symtab_1): Make 'filename' const.
* elfread.c (elfstab_offset_sections): Update.
* dwarf2read.c (dwarf_decode_lines): Make 'comp_dir' const.
(dwarf2_start_subfile): Make 'dirname' and 'comp_dir' const.
(psymtab_include_file_name): Update.
* dbxread.c (find_stab_function_addr): Make 'filename' const.
* buildsym.h (start_subfile): Update.
* buildsym.c (start_subfile): Make arguments const.
2010-10-01 20:26:11 +00:00
Tom Tromey
00b5771c2a
* symfile.h (struct sym_fns) <next>: Remove.
...
(add_symtab_fns): Update.
* symfile.c (sym_fns_ptr): New typedef.
(symtab_fns): Now a VEC.
(add_symtab_fns): Update. Change argument type.
(find_sym_fns): Update. Change return type.
(get_symfile_segment_data): Update.
* objfiles.h (struct objfile) <sf>: Now const.
* somread.c (som_sym_fns): Now const. Update.
* xcoffread.c (xcoff_sym_fns): Now const. Update.
* mipsread.c (ecoff_sym_fns): Now const. Update.
* machoread.c (macho_sym_fns): Now const. Update.
* elfread.c (elf_sym_fns): Now const. Update.
(elf_sym_fns_gdb_index): Likewise.
* dbxread.c (aout_sym_fns): Now const. Update.
* coffread.c (coff_sym_fns): Now const. Update.
2010-09-30 19:14:30 +00:00
Tom Tromey
923c6a3dd1
* psympriv.h (add_psymbol_to_list, init_psymbol_list)
...
(start_psymtab_common, allocate_psymtab, discard_psymtab):
Declare.
* symfile.h (extend_psymbol_list): Remove.
(add_psymbol_to_list, init_psymbol_list, start_psymtab_common)
(allocate_psymtab, discard_psymtab): Move to psympriv.h.
* psymtab.c (extend_psymbol_list): Move earlier. Now static.
2010-09-14 22:50:30 +00:00
Tom Tromey
774b6a14e0
Revert:
...
2010-09-01 Tom Tromey <tromey@redhat.com>
* dwarf2read.c, gdbtypes.c, psymtab.c, symfile.h, symtab.c,
symtab.h: Revert earlier change.
2010-09-08 17:17:42 +00:00
Tom Tromey
faf68db746
* symtab.h (lookup_type_symbol): Declare.
...
* symtab.c (lookup_symbol_in_language_full): Rename from
lookup_symbol_in_language. Add 'for_type' argument.
(lookup_symbol_in_language): New function.
(lookup_type_symbol): Likewise.
(lookup_symbol_aux): Add 'for_type' argument.
(match_symbol_aux): New function.
(lookup_symbol_aux_symtabs): Use expand_one_symtab_matching.
(match_transparent_type): New function.
(basic_lookup_transparent_type): Use expand_one_symtab_matching.
* symfile.h (struct quick_symbol_functions)
<pre_expand_symtabs_matching>: Remove.
<expand_one_symtab_matching>: New field.
* psymtab.c (expand_one_symtab_matching_psymtabs): New function.
(pre_expand_symtabs_matching_psymtabs): Remove.
(psym_functions): Update.
* gdbtypes.c (lookup_typename): Use lookup_type_symbol.
* dwarf2read.c (dw2_lookup_symbol): Update comment.
(dw2_pre_expand_symtabs_matching): Remove.
(dw2_expand_one_symtab_matching): New function.
(dwarf2_gdb_index_functions): Update.
2010-09-01 21:50:26 +00:00
Tom Tromey
dd78685836
* symfile.c (set_initial_language): Update.
...
(deduce_language_from_filename): Argument type now const.
* symtab.h (find_main_filename): Update.
(deduce_language_from_filename): Update.
* symtab.c (find_main_filename): Make result const.
* dwarf2read.c (dw2_find_symbol_file): Change return type.
* psymtab.c (find_symbol_file_from_partial): Change return type.
* symfile.h (struct quick_symbol_functions) <find_symbol_file>:
Make result const.
2010-07-13 20:52:52 +00:00
Tom Tromey
9291a0cd80
gdb
...
* breakpoint.c (save_cmdlist): No longer static.
* gdbcmd.h (save_cmdlist): Declare.
* symfile.c (symbol_file_add_with_addrs_or_offsets): Set
OBJF_READNOW on objfile if readnow_symbol_files.
* elfread.c (elf_symfile_read): Use dwarf2_initialize_objfile.
(elf_sym_fns_gdb_index): New global.
* dwarf2read.c: Include exceptions.h.
(offset_type): New.
(struct mapped_index): New.
(dwarf2_per_cu_data_ptr): New typedef.
(struct dwarf2_per_objfile) <using_index, index_table, gdb_index>:
New fields.
(GDB_INDEX_SECTION): New define.
(struct dwarf2_per_cu_quick_data): New.
(struct dwarf2_per_cu_data) <objfile>: New field.
<psymtab>: Removed.
<v>: New field.
(byte_swap): New function.
(MAYBE_SWAP): New macro.
(INDEX_SUFFIX): New macro.
(dw2_do_instantiate_symtab): New function.
(dw2_instantiate_symtab): Likewise.
(create_cus_from_index): Likewise.
(create_addrmap_from_index): Likewise.
(mapped_index_string_hash): Likewise.
(find_slot_in_mapped_hash): Likewise.
(dwarf2_read_index): Likewise.
(dw2_setup): Likewise.
(dw2_require_line_header): Likewise.
(dw2_require_full_path): Likewise.
(dw2_find_last_source_symtab): Likewise.
(dw2_forget_cached_source_info): Likewise.
(dw2_lookup_symtab): Likewise.
(dw2_lookup_symbol): Likewise.
(dw2_do_expand_symtabs_matching): Likewise.
(dw2_pre_expand_symtabs_matching): Likewise.
(dw2_print_stats): Likewise.
(dw2_dump): Likewise.
(dw2_relocate): Likewise.
(dw2_expand_symtabs_for_function): Likewise.
(dw2_expand_all_symtabs): Likewise.
(dw2_expand_symtabs_with_filename): Likewise.
(dw2_find_symbol_file): Likewise.
(dw2_map_ada_symtabs): Likewise.
(dw2_expand_symtabs_matching): Likewise.
(dw2_find_pc_sect_symtab): Likewise.
(dw2_map_symbol_names): Likewise.
(dw2_map_symbol_filenames): Likewise.
(dw2_has_symbols): Likewise.
(dwarf2_gdb_index_functions): New global.
(dwarf2_initialize_objfile): New function.
(process_psymtab_comp_unit): Update.
(add_partial_subprogram): Likewise.
(dwarf2_psymtab_to_symtab): Likewise.
(psymtab_to_symtab_1): Use dw2_do_instantiate_symtab.
(process_full_comp_unit): Update.
(find_file_and_directory): New function.
(read_file_scope): Use find_file_and_directory.
(dwarf2_per_cu_objfile): Update.
(dwarf2_per_cu_addr_size): Update.
(dwarf2_per_cu_offset_size): Update.
(dwarf2_free_objfile): Free the index, if needed.
(dwarf2_per_objfile_free): Unmap the index, if needed.
(struct strtab_entry): New.
(hash_strtab_entry): New function.
(eq_strtab_entry): Likewise.
(create_strtab): Likewise.
(add_string): Likewise.
(struct symtab_index_entry): New.
(struct mapped_symtab): New.
(hash_symtab_entry): New function.
(eq_symtab_entry): Likewise.
(delete_symtab_entry): Likewise.
(create_index_table): Likewise.
(create_mapped_symtab): Likewise.
(cleanup_mapped_symtab): Likewise.
(find_slot): Likewise.
(hash_expand): Likewise.
(add_index_entry): Likewise.
(add_indices_to_cpool): Likewise.
(write_hash_table): Likewise.
(add_address_entry): Likewise.
(write_psymbols): Likewise.
(write_obstack): Likewise.
(unlink_if_set): Likewise.
(write_psymtabs_to_index): Likewise.
(save_gdb_index_command): Likewise.
(_initialize_dwarf2_read): Install "save gdb-index"
command.
(create_all_comp_units): Initialize 'objfile' field of CU.
(dwarf2_locate_sections): Check for .gdb_index.
* psymtab.h (dwarf2_gdb_index_functions): Declare.
* symfile.h (dwarf2_initialize_objfile): Declare.
gdb/doc
* gdb.texinfo (Index Files): New node.
2010-07-13 20:51:34 +00:00
Tom Tromey
58b6ab1339
* symtab.c (lookup_symbol_aux_symtabs): Call pre-expand hook.
...
(basic_lookup_transparent_type): Likewise.
* symfile.h (struct quick_symbol_functions)
<pre_expand_symtabs_matching>: New field.
* psymtab.c (pre_expand_symtabs_matching_psymtabs): New function.
(psym_functions): Update.
2010-07-13 20:49:26 +00:00
Jan Kratochvil
48cb83fdd0
gdb/
...
* dwarf2read.c (typename_concat): Use (char *) NULL terminated stdarg
list for the obconcat call.
* mdebugread.c (parse_symbol): Likewise.
* stabsread.c (define_symbol, read_member_functions, read_cpp_abbrev):
Likewise.
* symfile.c (obconcat): Replace the s1, s2 and s3 parameters by `...'.
New variable ap. Remove variables len and val.
* symfile.h (obconcat): Likewise for the prototype.
2010-05-08 04:58:45 +00:00
Tom Tromey
ccefe4c44c
gdb
...
* 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.
gdb/doc
* gdbint.texinfo (Symbol Handling): Update.
2010-03-10 18:20:08 +00:00
Jan Kratochvil
672d9c23b3
gdb/
...
* symfile.c (addr_info_make_relative): Extend comment. Move SECT to
a more inner block. Initialize ADDR by LOWER_OFFSET only if it was
found by bfd_get_section_by_name.
* symfile.h (struct section_addr_info) <sectindex>: New comment.
2010-02-19 06:19:45 +00:00
Tristan Gingold
ac8035ab9e
2010-02-03 Tristan Gingold <gingold@adacore.com>
...
* symfile.h (struct sym_fns): Add sym_relocate field.
(default_symfile_relocate): New prototype.
(symfile_relocate_debug_section): First argument is now an objfile.
* symfile.c (default_symfile_relocate): Rename from
symfile_relocate_debug_section, first argument is now an objfile.
(symfile_relocate_debug_section): New function.
* coffread.c (coff_sym_fns): Set sym_relocate field.
* somread.c (som_sym_fns): Ditto.
* mipsread.c (ecoff_sym_fns): Ditto.
* machoread.c (macho_sym_fns): Ditto.
* elfread.c (elf_sym_fns): Ditto.
* dwarf2read.c (dwarf2_read_section): Ditto.
* xcoffread.c (xcoff_sym_fns): Ditto.
* dbxread.c (aout_sym_fns): Ditto.
(dbx_psymtab_to_symtab): Adjust call to symfile_relocate_debug_section.
(elfstab_build_psymtabs): Ditto.
2010-02-03 14:13:16 +00:00
Joel Brobecker
b74845da58
Delete free_named_symtabs and associated cleanup.
...
* symfile.h (free_named_symtabs): Delete declaration.
* symfile.c: Remove some commented out code (clear_symtab_users_once).
(cashier_psymtab): Comment function out.
Delete declaration.
(free_named_symtabs): Delete.
* coffread.c (coff_end_symtab): Remove call to free_named_symtabs.
* dbxread.c (end_psymtab): Likewise.
* dwarf2read.c (process_psymtab_comp_unit): Ditto.
* exec.c (exec_close_1): Ditto.
* xcoffread.c (xcoff_end_psymtab): Likewise.
2010-01-19 09:47:47 +00:00
Jan Kratochvil
567995e103
gdb/
...
Fix displacement of separate debug info files.
* objfiles.c (objfile_relocate): Rename to ...
(objfile_relocate1): ... here and make it static. Extend the comment.
(objfile_relocate): New function.
* solib-spu.c (spu_relocate_main_executable): Explicitly check if
SYMFILE_OBJFILE is NULL. Remove variables objfile and old_chain.
Remove following of SEPARATE_DEBUG_OBJFILE. new_offsets is now
allocated using alloca.
* symfile.c (copy_section_addr_info): Remove.
(build_section_addr_info_from_objfile): Make it global. New variables
addr_bit and mask, use them.
* symfile.h (build_section_addr_info_from_objfile): New prototype.
(copy_section_addr_info): Remove.
2010-01-09 09:11:00 +00:00
Jan Kratochvil
75242ef48d
gdb/
...
Move some symfile code into subroutines.
* symfile.h (relative_addr_info_to_section_offsets)
(addr_info_make_relative): New prototypes.
* symfile.c (default_symfile_offsets): Move a part to ...
(relative_addr_info_to_section_offsets): ... this new function.
(default_symfile_offsets): Call it.
(syms_from_objfile <!mainline && addrs && addrs->other[0].name>): Move
this part to ...
(addr_info_make_relative): ... this new function.
2010-01-08 22:55:15 +00:00
Tristan Gingold
15d123c99f
2010-01-06 Tristan Gingold <gingold@adacore.com>
...
* symtab.c (lookup_global_symbol_from_objfile): Rename objfile
parameter to main_objfile. Iterate on all separate debug objfiles.
* symfile.h (symbol_file_add_separate)
(find_separate_debug_file_by_debuglink): Remove parameter names.
* symfile.c (symbol_file_add_separate): Use add_separate_objfile.
(reread_symbols): Use free_objfile_separate_debug.
* objfiles.h (struct objfile): Add separate_debug_objfile_link.
Adjust comment.
(objfile_separate_debug_iterate, add_separate_debug_objfile)
(free_objfile_separate_debug): New prototypes.
* objfiles.c (objfile_separate_debug_iterate): New function.
(add_separate_debug_objfile, free_objfile_separate_debug): New
functions.
(free_objfile): Use free_objfile_separate_debug. Adjust for
multiple separate debug objfile.
(objfile_has_symbols): Adjust comment. Iterate on all separate
debug objfiles.
* minsyms.c (lookup_minimal_symbol): Adjust for multiple separate
debug objfile.
(lookup_minimal_symbol_text): Ditto.
(lookup_minimal_symbol_by_pc_name): Ditto.
(lookup_minimal_symbol_solib_trampoline): Ditto.
(lookup_minimal_symbol_by_pc_section_1): Iterate on all separate
debug objfiles.
2010-01-06 10:11:04 +00:00
Joel Brobecker
4c38e0a4fc
Update copyright year in most headers.
...
Automatic update by copyright.sh.
2010-01-01 07:32:07 +00:00
Tristan Gingold
874f57650c
2009-12-11 Tristan Gingold <gingold@adacore.com>
...
* symfile.h (find_separate_debug_file_by_buildid): Remove prototype.
(bfd_open_maybe_remote): New prototype.
* symfile.c (bfd_open_maybe_remote): New function.
(separate_debug_file_exists, reread_symbols): Use it.
(struct build_id, build_id_bfd_get, build_id_verify)
(build_id_to_debug_filename)
(find_separate_debug_file_by_buildid): Move these ...
* elfread.c (struct build_id)
(build_id_bfd_get, build_id_verify, build_id_to_debug_filename)
(find_separate_debug_file_by_buildid): ... here.
2009-12-14 12:50:39 +00:00
Tristan Gingold
9cce227f8c
2009-12-02 Tristan Gingold <gingold@adacore.com>
...
* symfile.h (symbol_file_add_separate): New prototype.
(find_separate_debug_file_by_buildid): Ditto.
(find_separate_debug_file_by_debuglink): Ditto.
* symfile.c (reread_separate_symbols): Remove.
(find_separate_debug_file): Split into ...
(find_separate_debug_file_by_buildid): ... this and ...
(find_separate_debug_file_by_debuglink): ... this.
(symbol_file_add_with_addrs_or_offsets): Do not save orig_addrs.
Remove separate debug file handling.
(symbol_file_add_separate): New function.
(reread_symbols): Do not considere separate debug files, but free
them while handling their parent. Reindent.
* coffread.c (coff_symfile_read): Handle separate object file.
* elfread.c (elf_symfile_read): Ditto.
2009-12-09 13:44:53 +00:00
Tristan Gingold
f43525316b
2009-12-07 Tristan Gingold <gingold@adacore.com>
...
* symfile.h (struct sym_fns): Adjust comment on sym_read.
* symfile.c (syms_from_objfile): Pass all symfile flags to sym_read.
* dbxread.c (dbx_symfile_read): Rename mainline to symfile_flags,
adjust header comment.
* elfread.c (elf_symfile_read): Ditto.
* somread.c (som_symfile_read): Ditto.
* xcoffread.c (xcoff_initial_scan): Ditto.
* coffread.c (coff_symfile_read): Rename mainline to symfile_flags.
* machoread.c (macho_symfile_read): Ditto.
* mipsread.c (mipscoff_symfile_read): Ditto.
2009-12-07 09:47:40 +00:00
Tristan Gingold
f29dff0a09
2009-12-02 Tristan Gingold <gingold@adacore.com>
...
* symfile.h (dwarf2_build_psymtabs): Remove mainline parameter in
prototype.
* dwarf2read.c (dwarf2_build_psymtabs): Remove mainline paramter in
definition, simplify code assuming it is always 0.
* coffread.c (coff_symfile_read): Adjust call.
* elfread.c (elf_symfile_read): Ditto.
* machoread.c (macho_symfile_read): Explicitely calls
init_psymbol_list if mainline is set.
2009-12-02 11:44:35 +00:00
Tom Tromey
04a679b8f5
* xcoffread.c (scan_xcoff_symtab): Update.
...
* symfile.h (add_psymbol_to_list): Update prototype.
* symfile.c (add_psymbol_to_bcache): Add copy_name argument.
(add_psymbol_to_list): Likewise.
* stabsread.c (define_symbol): Update.
* mdebugread.c (parse_partial_symbols): Update.
(handle_psymbol_enumerators): Update.
(new_symbol): Update.
* dbxread.c (read_dbx_symtab): Update.
* coffread.c (process_coff_symbol): Update.
* symtab.h (prim_record_minimal_symbol_full): Declare.
(SYMBOL_SET_NAMES): Add copy_name argument.
* symtab.c (struct demangled_name_entry): New struct.
(hash_demangled_name_entry): New function.
(eq_demangled_name_entry): Likewise.
(create_demangled_names_hash): Use new functions.
(symbol_set_names): Use struct demangled_name_entry. Add
copy_name argument.
* minsyms.c (prim_record_minimal_symbol_full): New function.
(prim_record_minimal_symbol_and_info): Use it.
* elfread.c (record_minimal_symbol): Add name_len and copy_name
arguments. Call prim_record_minimal_symbol_full.
(elf_symtab_read): Add copy_names argument.
(elf_symfile_read): Update calls to elf_symtab_read.
* dwarf2read.c (add_partial_symbol): Don't copy symbol names.
(load_partial_dies): Likewise.
(new_symbol): Likewise.
* cp-namespace.c (check_one_possible_namespace_symbol): Don't save
name on the obstack. Update call to SYMBOL_SET_NAMES.
2009-11-16 18:40:23 +00:00
Daniel Jacobowitz
d85a05f07f
* dwarf2read.c (struct dwarf2_cu): Remove ranges_offset and
...
has_ranges_offset.
(struct partial_die_info): Remove language, has_stmt_list, dirname,
and line_offset.
(dwarf2_build_include_psymtabs): Take a die_info. Handle a missing
line table.
(dwarf2_get_pc_bounds): Take PST argument. Pass it
to dwarf2_ranges_read. Update all callers.
(init_cu_die_reader): Move earlier.
(dwarf2_find_base_address): New function.
(process_psymtab_comp_unit): Rewrite to use a full DIE for the
compilation unit. Use dwarf2_get_pc_bounds and
dwarf2_find_base_address.
(load_comp_unit): Rewrite to use a full DIE for the compilation unit.
(process_full_comp_unit): Use dwarf2_find_base_address.
(read_partial_die): Remove support for attributes only used
in the compilation unit DIE.
* symfile.c (allocate_psymtab): Make FILENAME const.
(start_psymtab_common): Likewise.
* symfile.h (allocate_psymtab, start_psymtab_common): Update
prototypes.
2009-11-05 23:18:01 +00:00
Doug Evans
55333a841d
* NEWS: Add note on "info sharedlibrary".
...
Remove note on "set print symbol-loading".
* main.c (captured_main): Pass !batch for from_tty when calling
symbol_file_add_main.
* objfiles.h (objfile_has_partial_symbols): Declare.
(objfile_has_full_symbols): Declare.
* objfiles.c (objfile_has_partial_symbols): New function.
(have_partial_symbols): Use it.
(objfile_has_full_symbols): New function.
(have_full_symbols): Use it.
* solib.c: Include interps.h.
(solib_read_symbols): Back out patch of 2008-07-10.
Add test for info_verbose for symbol loading messages for
consistency with symfile.c.
(info_sharedlibrary_command): Handle optional parameter of regex of
libraries to list. Inform user of libraries without debugging info.
Rewrite to use ui_out routines to format output.
* symfile.c (print_symbol_loading): Delete.
(symbol_file_add_with_addrs_or_offsets): Back out patch of 2008-07-10.
Print "no debugging symbols found" only if from_tty || info_verbose;
and only check file being loaded, not all files.
(reread_symbols): Test file being loaded for whether it has symbols,
not all files.
(__initialize_symfile): Delete `set print symbol-loading'.
* symfile.h (print_symbol_loading): Delete.
* doc/gdb.texinfo (Symbols): Delete `set print symbol-loading'.
(Files): Add note on new optional regex arg to `info sharedlibrary'.
2009-08-27 21:56:38 +00:00
Paul Pluzhnikov
7eedccfa2a
2009-06-16 Paul Pluzhnikov <ppluzhnikov@google.com>
...
* solib.c (symbol_add_stub): New FLAGS parameter.
(solib_read_symbols): FROM_TTY -> FLAGS, call symbol_add_stub
directly.
(solib_add): Defer breakpoint_re_set until after all solibs.
* bsd-uthread.c (bsd_uthread_solib_loaded): Adjust.
* rs6000-nat.c (objfile_symbol_add): Adjust.
* symfile.c (syms_from_objfile): Merge parameters into ADD_FLAGS.
(new_symfile_objfile): Likewise.
(symbol_file_add_with_addrs_or_offsets): Likewise.
(symbol_file_add_from_bfd): Likewise.
(symbol_file_add): Likewise.
* symfile.h (enum symfile_add_flags): New. Adjust prototypes.
* symfile-mem.c (symbol_file_add_from_memory): Adjust.
* windows-nat.c (safe_symbol_file_add_stub): Adjust.
* machoread.c (macho_oso_symfile, macho_symfile_read): Adjust.
2009-06-16 18:49:25 +00:00
Pedro Alves
0542c86dbb
* target.h (struct section_table): Rename to ...
...
(struct target_section): ... this.
* exec.c: Adjust all references.
* exec.h: Adjust all references.
* nto-tdep.c: Adjust all references.
* nto-tdep.h: Adjust all references.
* ppc-linux-tdep.c: Adjust all references.
* rs6000-nat.c: Adjust all references.
* s390-tdep.c: Adjust all references.
* solib-darwin.c: Adjust all references.
* solib-frv.c: Adjust all references.
* solib-irix.c: Adjust all references.
* solib-null.c: Adjust all references.
* solib-osf.c: Adjust all references.
* solib-pa64.c: Adjust all references.
* solib-som.c: Adjust all references.
* solib-sunos.c: Adjust all references.
* solib-svr4.c: Adjust all references.
* solib-target.c: Adjust all references.
* solib.c: Adjust all references.
* solist.h: Adjust all references.
* symfile.c: Adjust all references.
* symfile.h: Adjust all references.
* target.c: Adjust all references.
2009-05-22 23:49:14 +00:00
Joel Brobecker
0fb0cc7590
Updated copyright notices for most files.
2009-01-03 05:58:08 +00:00
Ulrich Weigand
714835d5a6
* breakpoint.h (struct bp_location): Change type of section
...
member to "struct obj_section *".
* tracepoint.h (struct tracepoint): Likewise.
* symtab.h (struct general_symbol_info): Replace bfd_section
member with obj_section.
(struct symtab_and_line): Change type of section member to
"struct obj_section *".
(SYMBOL_BFD_SECTION): Remove macro, replace by ...
(SYMBOL_OBJ_SECTION): ... this.
* minsym.c (prim_record_minimal_symbol_and_info): Record symbol
section as obj_section instead of bfd_section.
* ada-lang.c (ada_decode_symbol): Use gsymbol->obj_section
directly instead of looking of obj_section from bfd_section.
* objfiles.h (find_pc_sect_section): Remove.
* objfiles.c (find_pc_sect_section): Remove.
(find_pc_section): Inline find_pc_sect_section code.
* symfile.h (find_pc_overlay): Return struct obj_section *.
(find_pc_mapped_section): Likewise.
(section_is_overlay, section_is_mapped): Change type of section
argument to struct obj_section *.
(pc_in_mapped_range, pc_in_unmapped_range): Likewise.
(overlay_mapped_address, overlay_unmapped_address): Likewise.
(symbol_overlayed_address): Likewise.
* symtab.h (symbol_overlayed_address): Likewise.
* symfile.c (overlay_is_mapped): Remove.
(section_is_mapped): Inline overlay_is_mapped code. Update.
(overlay_invalidate_all): Update.
(section_is_overlay): Change section argument to type
"struct obj_section *". Use bfd_ methods.
(pc_in_unmapped_range): Likewise. Handle relocated sections.
(pc_in_mapped_range): Likewise. Handle relocated sections.
(sections_overlap): Likewise.
(overlay_unmapped_address): Likewise.
(overlay_mapped_address): Likewise.
(symbol_overlayed_address): Likewise.
(find_pc_overlay): Return struct obj_section *.
(find_pc_mapped_section): Likewise.
(list_overlays_command): Update.
(map_overlay_command, unmap_overlay_command): Update.
(simple_overlay_update): Update.
* block.h (blockvector_for_pc_sect): Change section argument
to type "struct obj_section *".
(block_for_pc_sect): Likewise.
* block.c (blockvector_for_pc_sect): Change section argument
to type "struct obj_section *".
(block_for_pc_sect): Likewise.
* symtab.h (find_pc_sect_function, find_pc_sect_psymtab,
find_pc_sect_symtab, find_pc_sect_psymbol, find_pc_sect_line,
lookup_minimal_symbol_by_pc_section, find_function_start_pc): Likewise.
(matching_bfd_sections): Rename to ...
(matching_obj_sections): ... this. Update argument types.
* blockframe.c (find_pc_sect_function): Likewise.
* breakpoint.c (describe_other_breakpoints): Likewise.
(breakpoint_has_pc, check_duplicates_for): Likewise.
* minsyms.c (lookup_minimal_symbol_by_pc_section_1): Likewise.
(lookup_minimal_symbol_by_pc_section): Likewise.
* symtab.c (find_pc_sect_psymtab_closer): Likewise.
(find_pc_sect_psymtab, find_pc_sect_psymbol, find_pc_sect_symtab,
find_pc_sect_line, find_function_start_pc): Likewise.
(matching_bfd_sections): Rename to ...
(matching_obj_sections): ... this. Update argument types.
* blockframe.c (find_pc_partial_function): Update to section
type changes. No longer call find_pc_sect_section.
(cache_pc_function_section): Change to type "struct obj_section *".
* breakpoint.c (resolve_sal_pc): Update to section type changes.
* exec.c (xfer_memory): Likewise.
* findvar.c (read_var_value): Likewise.
* infcmd.c (jump_command): Likewise.
* linespec.c (minsym_found): Likewise.
* maint.c (maintenance_translate_address): Likewise.
* minsyms.c (lookup_minimal_symbol_by_pc_section_1): Likewise.
(lookup_solib_trampoline_symbol_by_pc): Likewise.
* parse.c (write_exp_msymbol): Likewise.
* printcmd.c (build_address_symbolic): Likewise.
(address_info, sym_info): Likewise.
* symmisc.c (dump_msymbols, print_symbol): Likewise.
* symtab.c (fixup_section): Likewise.
(fixup_symbol_section, fixup_psymbol_section): Likewise.
(find_pc_line, find_function_start_sal): Likewise.
* target.c (memory_xfer_partial): Likewise.
* hppa-hpux-tdep.c (hppa64_hpux_in_solib_call_trampoline): Likewise.
* spu-tdep.c (spu_overlay_update): Likewise.
2008-09-05 11:37:18 +00:00
Doug Evans
bf250677af
Add "set print symbol-loading on|off".
...
* NEWS: Document new option.
* symfile.h (print_symbol_loading): Declare.
* symfile.c (print_symbol_loading): New global.
(symbol_file_add_with_addrs_or_offsets): Only print "Reading symbols
from ..." if print_symbol_loading.
(_initialize_symfile): Add set/show print symbol-loading.
* solib.c (solib_read_symbols): Only print "Loaded symbols for ..."
if print_symbol_loading.
* doc/gdb.texinfo: Document "set print symbol-loading on|off".
2008-07-10 23:08:21 +00:00
Doug Evans
81fe80802c
PR 2384
...
* gdbtypes.c (get_vptr_fieldno): Renamed from fill_in_vptr_fieldno.
Return basetype, fieldno if found. All callers updated.
Don't cache TYPE_VPTR_FIELDNO, TYPE_VPTR_BASETYPE if from different
objfile.
* gdbtypes.h (get_vptr_fieldno): Renamed from fill_in_vptr_fieldno.
* symfile.h (fill_in_vptr_fieldno): Delete.
* gdb.cp/gdb2384.exp: New file.
* gdb.cp/gdb2384.cc: New file.
* gdb.cp/gdb2384-base.h: New file.
* gdb.cp/gdb2384-base.cc: New file.
2008-02-03 22:13:30 +00:00
Joel Brobecker
8b60591b5d
* symfile.c (set_initial_language): Make non-static.
...
* symfile.h (set_initial_language): Add declaration.
* language.c: #include "symfile.h".
(set_language): Call set_initial_language if the frame language
could not be determined.
2008-01-03 04:23:46 +00:00
Daniel Jacobowitz
9b254dd1ce
Updated copyright notices for most files.
2008-01-01 22:53:26 +00:00
Daniel Jacobowitz
fe3e1990b3
* coffread.c (coff_symfile_finish): Call dwarf2_free_objfile.
...
* dwarf2read.c (dwarf2_free_objfile): New.
* elfread.c (elf_symfile_finish): Call dwarf2_free_objfile.
* symfile.h (dwarf2_free_objfile): Declare.
2007-10-22 01:16:34 +00:00
Jim Blandy
28c32713ac
* symfile.h (struct symfile_segment_data): Doc fixes.
...
* symfile.c (symfile_map_offsets_to_segments): Doc fixes.
Assert that we were passed some loaded segment addresses,
and that sections' segment numbers are valid.
Simplify offset calculation.
* remote.c (get_offsets): Clarify selection of relocate-by-segment
strategy, and set num_segments correctly. Delete redundant
assignments to do_sections.
2007-09-24 21:48:29 +00:00
Joel Brobecker
c295b2e505
* symfile.h (struct sym_fns): Add new field sym_read_linetable.
...
* coffread.c, dbxread.c, elfread.c, mipsread.c somread.c:
Adjust the struct sym_fns object accordingly by setting
the new field to NULL.
* xcoffread.c (aix_process_linenos): Make static.
(xcoff_sym_fns): Set new field to aix_process_linenos.
* buildsym.c (end_symtab): Replace call to PROCESS_LINENUMBER_HOOK
by call to new the new sym_fns sym_read_linetable function.
* config/powerpc/aix.mt (DEPRECATED_TM_FILE): Delete.
* config/rs6000/tm-rs6000.h: Delete.
2007-09-21 18:01:26 +00:00
Joel Brobecker
a9762ec78a
Switch the license of all .c files to GPLv3.
...
Switch the license of all .h files to GPLv3.
Switch the license of all .cc files to GPLv3.
2007-08-23 18:08:50 +00:00
Daniel Jacobowitz
31d99776c7
* coffread.c (coff_sym_fns): Add default_symfile_segments.
...
* dbxread.c (start_psymtab): Check HAVE_ELF.
(aout_sym_fns): Likewise.
* elfread.c (elf_symfile_segments): New.
(elf_sym_fns): Add elf_symfile_segments.
* mipsread.c (ecoff_sym_fns): Add default_symfile_segments.
* remote.c (get_offsets): Use symfile_map_offsets_to_segments.
Skip if there is no symfile_objfile. Handle TextSeg and DataSeg.
* somread.c (som_sym_fns): Use default_symfile_segments.
* symfile.c (find_sym_fns): Take a BFD and return the sym_fns.
(init_objfile_sect_indices): Call symfile_find_segment_sections.
(default_symfile_segments): New function.
(syms_from_objfile): Update call to find_sym_fns.
(symfile_get_segment_data, free_symfile_segment_data): New.
(symfile_map_offsets_to_segments): New.
(symfile_find_segment_sections): New.
* symfile.h (struct symfile_segment_data): New.
(struct sym_fns): Add sym_segments.
(default_symfile_segments, symfile_get_segment_data)
(free_symfile_segment_data): New prototypes.
(symfile_map_offsets_to_segments): Likewise.
* xcoffread.c (xcoff_sym_fns): Add default_symfile_segments.
* Makefile.in (COMMON_OBS): Remove elfread.o.
(elf_internal_h): New.
(elfread.o): Update.
* configure.ac: Add elfread.o to COMMON_OBS if bfd/elf.o was
compiled.
* config.in, configure: Regenerated.
* NEWS: Mention qOffsets changes.
* gdb.texinfo (General Query Packets): Document qOffsets changes.
* Makefile.def: Add dependency from configure-gdb to all-bfd.
* Makefile.in: Regenerated.
2007-06-18 15:46:38 +00:00
Ulrich Weigand
1c7724581e
* gdbarch.sh (overlay_update): New gdbarch function.
...
(struct obj_section): Add forward declaration.
* gdbarch.c, gdbarch.h: Regenerate.
* symfile.c (simple_overlay_update): Make global.
(target_overlay_update): Remove variable.
(overlay_is_mapped): Call gdbarch_overlay_update instead of
target_overlay_update.
(overlay_load_command): Likewise.
* symfile.h (struct obj_section): Add forward declaration.
(simple_overlay_update): Add prototype.
* m32r-tdep.c (m32r_gdbarch_init): Install simple_overlay_update.
2007-05-11 19:57:17 +00:00
Daniel Jacobowitz
058b9c07a4
* symfile.c (add_psymbol_with_dem_name_to_list): Remove.
...
* symfile.h (add_psymbol_with_dem_name_to_list): Remove prototype.
2007-04-13 14:03:56 +00:00
Daniel Jacobowitz
7ce5900041
* MAINTAINERS: Remove d10v entry.
...
* Makefile.in (SFILES): Remove dwarfread.c.
(COMMON_OBS): Remove dwarfread.o.
(gdb_sim_d10v_h, abug-rom.o, cpu32bug-rom.o, d10v-tdep.o, dwarfread.o)
(remote-est.o, rom68k-rom.o): Delete.
* NEWS: Mention removal of d10v, target abug, target cpu32bug,
target est, target rom68k, and DWARF 1.
* configure.tgt: Mark d10v as removed.
* dwarf2read.c: Doc update.
* elfread.c (struct elfinfo): Remove dboffset, dbsize, lnoffset,
and lnsize.
(elf_locate_sections): Do not set them.
(elf_symfile_read): Do not call dwarf_build_psymtabs.
* symfile.h (dwarf_build_psymtabs): Delete prototype.
* config/m68k/monitor.mt (TDEPFILES): Prune.
* abug-rom.c, cpu32bug-rom.c, d10v-tdep.c, dwarfread.c,
remote-est.c, rom68k-rom.c, config/d10v/d10v.mt: Delete.
* gdb.texinfo (M68K): Remove obsolete ROM monitors.
* gdbint.texinfo (DWARF 1): Delete section and other dwarfread.c
references.
* gdb.asm/asm-source.exp: Remove d10v case.
* lib/gdb.exp (skip_cplus_tests): Likewise.
* gdb.asm/d10v.inc: Deleted.
2007-03-30 17:21:48 +00:00
Joel Brobecker
16708cba7c
* symfile.h: #include "symtab.h"
2007-03-22 13:35:05 +00:00
Daniel Jacobowitz
6aba47ca06
Copyright updates for 2007.
2007-01-09 17:59:20 +00:00
Eli Zaretskii
197e01b6dc
* breakpoint.c:
...
* arm-tdep.c:
* ia64-tdep.c:
* i386-tdep.c:
* hpread.c:
* hppa-tdep.c:
* hppa-hpux-tdep.c:
* gnu-nat.c:
* gdbtypes.c:
* gdbarch.h:
* gdbarch.c:
* eval.c:
* dwarf2read.c:
* dbxread.c:
* copying:
* symfile.c:
* stabsread.c:
* sh64-tdep.c:
* sh-tdep.c:
* s390-tdep.c:
* rs6000-tdep.c:
* remote.c:
* remote-mips.c:
* mips-tdep.c:
* mdebugread.c:
* linux-nat.c:
* infrun.c:
* xcoffread.c:
* win32-nat.c:
* valops.c:
* utils.c:
* tracepoint.c:
* target.c:
* symtab.c:
* c-exp.y:
* ada-valprint.c:
* ada-typeprint.c:
* ada-lex.l:
* ada-lang.h:
* ada-lang.c:
* ada-exp.y:
* alphafbsd-tdep.c:
* alphabsd-tdep.h:
* alphabsd-tdep.c:
* alphabsd-nat.c:
* alpha-tdep.h:
* alpha-tdep.c:
* alpha-osf1-tdep.c:
* alpha-nat.c:
* alpha-mdebug-tdep.c:
* alpha-linux-tdep.c:
* alpha-linux-nat.c:
* aix-thread.c:
* abug-rom.c:
* arch-utils.c:
* annotate.h:
* annotate.c:
* amd64obsd-tdep.c:
* amd64obsd-nat.c:
* amd64nbsd-tdep.c:
* amd64nbsd-nat.c:
* amd64fbsd-tdep.c:
* amd64fbsd-nat.c:
* amd64bsd-nat.c:
* amd64-tdep.h:
* amd64-tdep.c:
* amd64-sol2-tdep.c:
* amd64-nat.h:
* amd64-nat.c:
* amd64-linux-tdep.c:
* amd64-linux-nat.c:
* alphanbsd-tdep.c:
* block.h:
* block.c:
* bfd-target.h:
* bfd-target.c:
* bcache.h:
* bcache.c:
* ax.h:
* ax-general.c:
* ax-gdb.h:
* ax-gdb.c:
* avr-tdep.c:
* auxv.h:
* auxv.c:
* armnbsd-tdep.c:
* armnbsd-nat.c:
* arm-tdep.h:
* arm-linux-nat.c:
* arch-utils.h:
* charset.c:
* call-cmds.h:
* c-valprint.c:
* c-typeprint.c:
* c-lang.h:
* c-lang.c:
* buildsym.h:
* buildsym.c:
* bsd-uthread.h:
* bsd-uthread.c:
* bsd-kvm.h:
* bsd-kvm.c:
* breakpoint.h:
* core-regset.c:
* core-aout.c:
* completer.h:
* completer.c:
* complaints.h:
* complaints.c:
* command.h:
* coffread.c:
* coff-solib.h:
* coff-solib.c:
* coff-pe-read.h:
* coff-pe-read.c:
* cli-out.h:
* cli-out.c:
* charset.h:
* dink32-rom.c:
* dictionary.h:
* dictionary.c:
* demangle.c:
* defs.h:
* dcache.h:
* dcache.c:
* d10v-tdep.c:
* cpu32bug-rom.c:
* cp-valprint.c:
* cp-support.h:
* cp-support.c:
* cp-namespace.c:
* cp-abi.h:
* cp-abi.c:
* corelow.c:
* corefile.c:
* environ.c:
* elfread.c:
* dwarfread.c:
* dwarf2loc.c:
* dwarf2expr.h:
* dwarf2expr.c:
* dwarf2-frame.h:
* dwarf2-frame.c:
* dve3900-rom.c:
* dummy-frame.h:
* dummy-frame.c:
* dsrec.c:
* doublest.h:
* doublest.c:
* disasm.h:
* disasm.c:
* fork-child.c:
* findvar.c:
* fbsd-nat.h:
* fbsd-nat.c:
* f-valprint.c:
* f-typeprint.c:
* f-lang.h:
* f-lang.c:
* expression.h:
* expprint.c:
* exec.h:
* exec.c:
* exceptions.h:
* exceptions.c:
* event-top.h:
* event-top.c:
* event-loop.h:
* event-loop.c:
* gdb.c:
* gdb-stabs.h:
* gdb-events.h:
* gdb-events.c:
* gcore.c:
* frv-tdep.h:
* frv-tdep.c:
* frv-linux-tdep.c:
* frame.h:
* frame.c:
* frame-unwind.h:
* frame-unwind.c:
* frame-base.h:
* frame-base.c:
* gdb_vfork.h:
* gdb_thread_db.h:
* gdb_string.h:
* gdb_stat.h:
* gdb_regex.h:
* gdb_ptrace.h:
* gdb_proc_service.h:
* gdb_obstack.h:
* gdb_locale.h:
* gdb_dirent.h:
* gdb_curses.h:
* gdb_assert.h:
* gdbarch.sh:
* gdb.h:
* hpux-thread.c:
* hppabsd-nat.c:
* hppa-tdep.h:
* hpacc-abi.c:
* h8300-tdep.c:
* gregset.h:
* go32-nat.c:
* gnu-v3-abi.c:
* gnu-v2-abi.h:
* gnu-v2-abi.c:
* gnu-nat.h:
* glibc-tdep.c:
* gdbtypes.h:
* gdbcore.h:
* gdbcmd.h:
* i386nbsd-tdep.c:
* i386nbsd-nat.c:
* i386gnu-tdep.c:
* i386gnu-nat.c:
* i386fbsd-tdep.c:
* i386fbsd-nat.c:
* i386bsd-tdep.c:
* i386bsd-nat.h:
* i386bsd-nat.c:
* i386-tdep.h:
* i386-sol2-nat.c:
* i386-nto-tdep.c:
* i386-nat.c:
* i386-linux-tdep.h:
* i386-linux-tdep.c:
* i386-linux-nat.c:
* i386-cygwin-tdep.c:
* inf-ttrace.c:
* inf-ptrace.h:
* inf-ptrace.c:
* inf-loop.h:
* inf-loop.c:
* inf-child.h:
* inf-child.c:
* ia64-tdep.h:
* ia64-linux-nat.c:
* i387-tdep.h:
* i387-tdep.c:
* i386v4-nat.c:
* i386v-nat.c:
* i386obsd-tdep.c:
* i386obsd-nat.c:
* kod.c:
* jv-valprint.c:
* jv-typeprint.c:
* jv-lang.h:
* jv-lang.c:
* irix5-nat.c:
* iq2000-tdep.c:
* interps.h:
* interps.c:
* inftarg.c:
* inflow.h:
* inflow.c:
* inferior.h:
* infcmd.c:
* infcall.h:
* infcall.c:
* inf-ttrace.h:
* m32r-tdep.h:
* m32r-tdep.c:
* m32r-rom.c:
* m32r-linux-tdep.c:
* m32r-linux-nat.c:
* m2-valprint.c:
* m2-typeprint.c:
* m2-lang.h:
* m2-lang.c:
* lynx-nat.c:
* linux-thread-db.c:
* linux-nat.h:
* linespec.c:
* libunwind-frame.h:
* libunwind-frame.c:
* language.h:
* language.c:
* macroexp.c:
* macrocmd.c:
* m88kbsd-nat.c:
* m88k-tdep.h:
* m88k-tdep.c:
* m68klinux-tdep.c:
* m68klinux-nat.c:
* m68kbsd-tdep.c:
* m68kbsd-nat.c:
* m68k-tdep.h:
* m68k-tdep.c:
* mips-linux-nat.c:
* mips-irix-tdep.c:
* minsyms.c:
* memattr.h:
* memattr.c:
* mem-break.c:
* mdebugread.h:
* main.h:
* main.c:
* macrotab.h:
* macrotab.c:
* macroscope.h:
* macroscope.c:
* macroexp.h:
* nbsd-tdep.c:
* mt-tdep.c:
* monitor.h:
* monitor.c:
* mn10300-tdep.h:
* mn10300-tdep.c:
* mn10300-linux-tdep.c:
* mipsv4-nat.c:
* mipsread.c:
* mipsnbsd-tdep.h:
* mipsnbsd-tdep.c:
* mipsnbsd-nat.c:
* mips64obsd-tdep.c:
* mips64obsd-nat.c:
* mips-tdep.h:
* mips-mdebug-tdep.c:
* mips-linux-tdep.c:
* osabi.h:
* osabi.c:
* ocd.h:
* ocd.c:
* observer.c:
* objfiles.h:
* objfiles.c:
* objc-lang.h:
* objc-lang.c:
* objc-exp.y:
* nto-tdep.h:
* nto-tdep.c:
* nto-procfs.c:
* nlmread.c:
* nbsd-tdep.h:
* ppcobsd-tdep.c:
* ppcobsd-nat.c:
* ppcnbsd-tdep.h:
* ppcnbsd-tdep.c:
* ppcnbsd-nat.c:
* ppcbug-rom.c:
* ppc-tdep.h:
* ppc-sysv-tdep.c:
* ppc-linux-tdep.c:
* ppc-linux-nat.c:
* ppc-bdm.c:
* parser-defs.h:
* parse.c:
* p-valprint.c:
* p-typeprint.c:
* p-lang.h:
* p-lang.c:
* remote-fileio.h:
* remote-fileio.c:
* remote-est.c:
* remote-e7000.c:
* regset.h:
* regset.c:
* reggroups.h:
* reggroups.c:
* regcache.h:
* regcache.c:
* proc-why.c:
* proc-service.c:
* proc-events.c:
* printcmd.c:
* ppcobsd-tdep.h:
* sentinel-frame.h:
* sentinel-frame.c:
* scm-valprint.c:
* scm-tags.h:
* scm-lang.h:
* scm-lang.c:
* scm-exp.c:
* s390-tdep.h:
* rom68k-rom.c:
* remote.h:
* remote-utils.c:
* remote-st.c:
* remote-sim.c:
* remote-sds.c:
* remote-rdp.c:
* remote-rdi.c:
* remote-hms.c:
* sim-regno.h:
* shnbsd-tdep.h:
* shnbsd-tdep.c:
* shnbsd-nat.c:
* sh-tdep.h:
* serial.h:
* serial.c:
* ser-unix.h:
* ser-unix.c:
* ser-tcp.c:
* ser-pipe.c:
* ser-go32.c:
* ser-e7kpc.c:
* ser-base.h:
* ser-base.c:
* solib.c:
* solib-svr4.h:
* solib-svr4.c:
* solib-sunos.c:
* solib-som.h:
* solib-som.c:
* solib-pa64.h:
* solib-pa64.c:
* solib-osf.c:
* solib-null.c:
* solib-legacy.c:
* solib-irix.c:
* solib-frv.c:
* solib-aix5.c:
* sol-thread.c:
* sparc64-linux-tdep.c:
* sparc64-linux-nat.c:
* sparc-tdep.h:
* sparc-tdep.c:
* sparc-sol2-tdep.c:
* sparc-sol2-nat.c:
* sparc-nat.h:
* sparc-nat.c:
* sparc-linux-tdep.c:
* sparc-linux-nat.c:
* source.h:
* source.c:
* somread.c:
* solist.h:
* solib.h:
* std-regs.c:
* stack.h:
* stack.c:
* stabsread.h:
* sparcobsd-tdep.c:
* sparcnbsd-tdep.c:
* sparcnbsd-nat.c:
* sparc64obsd-tdep.c:
* sparc64nbsd-tdep.c:
* sparc64nbsd-nat.c:
* sparc64fbsd-tdep.c:
* sparc64fbsd-nat.c:
* sparc64-tdep.h:
* sparc64-tdep.c:
* sparc64-sol2-tdep.c:
* sparc64-nat.c:
* ui-file.c:
* typeprint.h:
* typeprint.c:
* tramp-frame.h:
* tramp-frame.c:
* trad-frame.h:
* trad-frame.c:
* tracepoint.h:
* top.c:
* tobs.inc:
* thread.c:
* terminal.h:
* target.h:
* symfile.h:
* stop-gdb.c:
* vaxbsd-nat.c:
* vax-tdep.h:
* vax-tdep.c:
* vax-nat.c:
* varobj.h:
* varobj.c:
* value.h:
* value.c:
* valprint.h:
* valprint.c:
* v850-tdep.c:
* uw-thread.c:
* user-regs.c:
* ui-out.h:
* ui-out.c:
* ui-file.h:
* xcoffsolib.h:
* xcoffsolib.c:
* wrapper.c:
* wince.c:
* wince-stub.h:
* wince-stub.c:
* vaxobsd-tdep.c:
* vaxnbsd-tdep.c:
* gdb_gcore.sh:
* copying.c:
* configure.ac:
* aclocal.m4:
* acinclude.m4:
* reply_mig_hack.awk:
* observer.sh:
* gdb_mbuild.sh:
* arm-linux-tdep.c:
* blockframe.c:
* dbug-rom.c:
* environ.h:
* dwarf2loc.h:
* gdb-events.sh:
* glibc-tdep.h:
* gdb_wait.h:
* gdbthread.h:
* i386-sol2-tdep.c:
* hppabsd-tdep.c:
* hppa-linux-nat.c:
* hppa-hpux-nat.c:
* ia64-linux-tdep.c:
* infptrace.c:
* linespec.h:
* maint.c:
* mips-mdebug-tdep.h:
* remote-m32r-sdi.c:
* s390-nat.c:
* rs6000-nat.c:
* remote-utils.h:
* sh3-rom.c:
* sh-linux-tdep.c:
* top.h:
* symtab.h:
* symmisc.c:
* symfile-mem.c:
* srec.h:
* user-regs.h:
* version.h:
* valarith.c:
* xstormy16-tdep.c:
* wrapper.h:
* Makefile.in:
* f-exp.y:
* cris-tdep.c:
* cp-name-parser.y:
* procfs.c:
* proc-utils.h:
* proc-flags.c:
* proc-api.c:
* p-exp.y:
* m68hc11-tdep.c:
* m2-exp.y:
* kod.h:
* kod-cisco.c:
* jv-exp.y:
* hppa-linux-tdep.c: Add (c) after Copyright. Update the FSF
address.
2005-12-17 22:34:03 +00:00
Jim Blandy
7b90c3f96e
Fix bug reported and analyzed by Olivier Crete:
...
* symfile.c (copy_section_addr_info): New function.
(symbol_file_add_with_addrs_or_offsets): Use it to save the
original set of address arguments, instead of handwritten code
that uses one length to allocate and a different length to
initialize. Use make_cleanup_free_section_addr_info.
* symfile.h (copy_section_addr_info): New declaration.
* utils.c: #include "symfile.h".
(do_free_section_addr_info, make_cleanup_free_section_addr_info):
New functions.
* defs.h (make_cleanup_free_section_addr_info): New declaration.
* Makefile.in (utils.o): Update dependencies.
2004-09-08 21:58:19 +00:00
Andrew Cagney
97c34f656c
2004-05-25 Andrew Cagney <cagney@gnu.org>
...
* symfile.h (symbol_file_add_from_memory): Delete declaration.
* symfile-mem.h: Delete file.
* symfile-mem.c: Do not include "symfile-mem.h".
(symbol_file_add_from_memory): Make static. Use "struct bfd" and
"struct bfd_section". When an error do not bother returning NULL.
(add_symbol_file_from_memory_command): Use "struct bfd" and
"struct bfd_section".
* Makefile.in (symfile_mem_h): Delete.
(symfile-mem.o): Update dependencies.
2004-05-25 21:55:43 +00:00
Jim Blandy
eb4556d736
Move the symbol-file-from-memory functions into their own file.
...
* symfile-mem.c, symfile-mem.h: New files.
* symfile.c (symbol_file_add_from_bfd): New function.
(symbol_file_add): Call symbol_file_add_from_bfd.
(symbol_file_add_from_memory, add_symbol_file_from_memory_command):
Moved to symfile-mem.c.
(_initialize_symfile): Move definition of
add-symbol-file-from-memory command to symfile-mem.c.
* symfile.h (symbol_file_add_from_bfd): New declaration.
* config/i386/linux.mt (TDEPFILES): Add symfile-mem.o.
* config/powerpc/linux.mt (TDEPFILES): Same.
* Makefile.in (SFILES): Add symfile-mem.c.
(symfile_mem_h): New variable.
(HFILES_NO_SRCDIR): Add symfile-mem.h.
(symfile-mem.o): New rule.
2004-05-02 10:14:02 +00:00
Roland McGrath
5417f6dc82
2004-04-08 Roland McGrath <roland@redhat.com>
...
* symfile.c (symbol_file_add_with_addrs_or_offsets): Take ABFD as
argument instead of NAME.
(symbol_file_add, reread_separate_symbols): Call symfile_bfd_open
in call to symbol_file_add_with_addrs_or_offsets.
(build_addr_info): New function, helper for ...
(symbol_file_add_from_memory): New function.
(add_symbol_file_from_memory_command): New function using that.
(_initialize_symfile): Register it for add-symbol-file-from-memory.
(pre_add_symbol_hook): Add const to argument type.
* symfile.h (symbol_file_add_from_memory): Declare it.
2004-04-15 21:39:27 +00:00
Daniel Jacobowitz
c5edf76a75
* dwarf2read.c (dwarf2_objfile_data_key): New.
...
(struct dwarf2_per_objfile, dwarf2_per_objfile): New.
(dwarf_info_size, dwarf_abbrev_size, dwarf_line_size)
(dwarf_pubnames_size, dwarf_aranges_size, dwarf_loc_size)
(dwarf_macinfo_size, dwarf_str_size, dwarf_ranges_size)
(dwarf_frame_size, dwarf_eh_frame_size, dwarf_info_buffer)
(dwarf_abbrev_buffer, dwarf_line_buffer, dwarf_str_buffer)
(dwarf_macinfo_buffer, dwarf_ranges_buffer, dwarf_loc_buffer):
Remove variables.
(struct dwarf2_pinfo): Remove per-objfile members. Update comments.
(DWARF_ABBREV_SIZE, DWARF_LINE_SIZE)
(DWARF_LOC_SIZE, DWARF_MACINFO_SIZE, DWARF_STR_SIZE)
(DWARF_RANGES_SIZE, DWARF_INFO_BUFFER)
(DWARF_ABBREV_BUFFER, DWARF_LINE_BUFFER, DWARF_STR_BUFFER)
(DWARF_MACINFO_BUFFER, DWARF_RANGES_BUFFER, DWARF_LOC_BUFFER):
Remove macros.
(dwarf2_has_info): Take an objfile argument. Allocate per-objfile
data.
(dwarf2_locate_sections, dwarf2_build_psymtabs)
(dwarf2_build_psymtabs_easy, dwarf2_build_psymtabs_hard)
(skip_one_die, dwarf2_get_pc_bounds, dwarf2_read_abbrevs)
(read_partial_die, read_full_die, read_indirect_string)
(dwarf_decode_line_header, dwarf_decode_macros)
(dwarf2_symbol_mark_computed): Remove use of removed macros.
Update uses of removed variables.
(psymtab_to_symtab_1): Restore per-objfile data pointer. Remove use
of removed macros.
(_initialize_dwarf2_read): New function.
* symfile.h (dwarf2_has_info): Update prototype.
* coffread.c (coff_symfile_read): Update call to dwarf2_has_info.
* elfread.c (elf_symfile_read): Likewise.
2004-04-02 19:23:05 +00:00