Tom Tromey [Thu, 19 Jul 2012 15:34:38 +0000 (15:34 +0000)]
* c-exp.y (enum token_flags): New.
(struct token) <cxx_only>: Remove.
<flags>: New field.
(tokentab3, tokentab2, ident_tokens): Update.
(lex_one_token): Update. Handle FLAG_SHADOW.
Tom Tromey [Thu, 19 Jul 2012 15:33:25 +0000 (15:33 +0000)]
* ax-gdb.c (gen_expr): Handle UNOP_CAST_TYPE, UNOP_MEMVAL_TYPE.
* breakpoint.c (watchpoint_exp_is_const): Handle UNOP_CAST_TYPE,
UNOP_REINTERPRET_CAST, UNOP_DYNAMIC_CAST.
* c-exp.y (exp): Emit UNOP_MEMVAL_TYPE, UNOP_CAST_TYPE. Update
for changes to UNOP_REINTERPRET_CAST, UNOP_DYNAMIC_CAST. Use
type_exp production where appropriate.
* eval.c (evaluate_subexp_standard) <UNOP_CAST_TYPE>: New case.
<UNOP_DYNAMIC_CAST, UNOP_REINTERPRET_CAST>: Update.
<UNOP_MEMVAL_TYPE>: New case.
(evaluate_subexp_for_address) <UNOP_MEMVAL_TYPE>: New case.
(evaluate_subexp_for_sizeof) <UNOP_MEMVAL_TYPE>: New case.
* expprint.c (print_subexp_standard) <UNOP_CAST_TYPE>: New case.
<UNOP_MEMVAL_TYPE>: New case.
(dump_subexp_body_standard) <UNOP_DYNAMIC_CAST,
UNOP_REINTERPRET_CAST>: Update.
<UNOP_CAST_TYPE, UNOP_MEMVAL_TYPE>: New cases.
* parse.c (operator_length_standard) <UNOP_DYNAMIC_CAST,
UNOP_REINTERPRET_CAST>: Update.
<UNOP_CAST_TYPE, UNOP_MEMVAL_TYPE>: New cases.
* stack.c (return_command): Also check for UNOP_CAST_TYPE.
* std-operator.def (UNOP_CAST_TYPE, UNOP_MEMVAL_TYPE): New
constants.
Pedro Alves [Thu, 19 Jul 2012 14:33:19 +0000 (14:33 +0000)]
2012-07-19 Pedro Alves <palves@redhat.com>
* gdb.base/sigall.exp (signals): New list.
<top level>: Loop over signals in the $signals list instead of
calling a test function once per signal.
* gdb.reverse/sigall-precsave.exp (signals): New list.
<top level>: Loop over signals in the $signals list instead of
calling a test function once per signal.
* gdb.reverse/sigall-reverse.exp (signals): New list.
<top level>: Loop over signals in the $signals list instead of
calling a test function once per signal.
H.J. Lu [Thu, 19 Jul 2012 13:41:03 +0000 (13:41 +0000)]
Use vex_len_table in xop_table
PR binutils/14355
* i386-dis.c (VEX_LEN_0FXOP_08_CC): New.
(VEX_LEN_0FXOP_08_CD): Likewise.
(VEX_LEN_0FXOP_08_CE): Likewise.
(VEX_LEN_0FXOP_08_CF): Likewise.
(VEX_LEN_0FXOP_08_EC): Likewise.
(VEX_LEN_0FXOP_08_ED): Likewise.
(VEX_LEN_0FXOP_08_EE): Likewise.
(VEX_LEN_0FXOP_08_EF): Likewise.
(xop_table): Fix entries for vpcomb, vpcomw, vpcomd, vpcomq,
vpcomub, vpcomuw, vpcomud, vpcomuq.
(vex_len_table): Add entries for VEX_LEN_0FXOP_08_CC,
VEX_LEN_0FXOP_08_CD, VEX_LEN_0FXOP_08_CE, VEX_LEN_0FXOP_08_CF,
VEX_LEN_0FXOP_08_EC, VEX_LEN_0FXOP_08_ED, VEX_LEN_0FXOP_08_EE,
VEX_LEN_0FXOP_08_EF.
Yao Qi [Thu, 19 Jul 2012 12:48:17 +0000 (12:48 +0000)]
* cli/cli-setshow.c (do_setshow_command): Handle case 'var_filename'
and case 'var_optional_filename' together.
* infcmd.c (_initialize_infcmd): Call add_setshow_string_noescape_cmd
instead of add_setshow_optional_filename_cmd for setshow command
'args'. Set completer for 'set args'.
gdb/testsuite:
* gdb.base/setshow.exp: Test 'set args ~'.
Cary Coutant [Thu, 19 Jul 2012 00:19:35 +0000 (00:19 +0000)]
2012-07-18 Cary Coutant <ccoutant@google.com>
PR gold/14344
* configure.ac: Add check for -gpubnames support.
* configure: Regenerate.
* testsuite/Makefile.am (gdb_index_test_1): Add check for -gpubnames
support; force -gno-pubnames.
(gdb_index_test_2, gdb_index_test_3): Add check for -gpubnames
support.
(gdb_index_test_4): New test.
* testsuite/Makefile.in: Regenerate.
* testsuite/gdb_index_test_1.sh: Refactor code into common file.
* testsuite/gdb_index_test_2.sh: Likewise.
* testsuite/gdb_index_test_3.sh: Don't look for space after colon.
* testsuite/gdb_index_test_4.sh: New script.
* testsuite/gdb_index_test_comm.sh: New script with common code;
don't look for space after colon.
Alan Modra [Thu, 19 Jul 2012 00:00:06 +0000 (00:00 +0000)]
daily update
gdbadmin [Thu, 19 Jul 2012 00:00:03 +0000 (00:00 +0000)]
*** empty log message ***
Doug Evans [Wed, 18 Jul 2012 23:37:58 +0000 (23:37 +0000)]
* common/gdb_vecs.h: Moved here from ./gdb_vecs.h.
* common/gdb_vecs.c: New file, contents from utils.c.
* common/host-defs.h: New file, contents from defs.h.
* utils.h: New file, contents from defs.h.
* defs.h: Move all declarations of objects defined in utils.c
to utils.h (except QUIT() and related).
#include "utils.h", "host-defs.h".
* probe.h (probe_p): Move here from gdb_vecs.h.
* symfile.c: #include "probe.h" instead of "gdb_vecs.h".
* utils.c (free_char_ptr_vec): Moved to common/gdb_vecs.c.
(dirnames_to_char_ptr_vec_append, dirnames_to_char_ptr_vec): Ditto.
* Makefile.in (SFILES): Add common/gdb_vecs.c.
(HFILES_NO_SRCDIR): Add common/gdb_vecs.h, common/host-defs.h, utils.h.
(COMMON_OBS): Add gdb_vecs.o.
(gdb_vecs.o): New rule.
Keith Seitz [Wed, 18 Jul 2012 20:38:18 +0000 (20:38 +0000)]
* linespec.c (add_sal_to_sals): Add LITERAL_CANONICAL
parameter. If non-zero, use SYMNAME as the canonical name
for the SaL.
Update all callers.
(convert_linespec_to_sals): Use add_sal_to_sals for
expressions, too.
(decode_line_full): No need to "fill in missing canonical names"
anymore. Simply make cleanups for the allocated names.
Keith Seitz [Wed, 18 Jul 2012 20:30:01 +0000 (20:30 +0000)]
* linespec.c (struct linespec): Constify expression,
source_filename, function_name, and label_name.
(symbol_not_found_error): Make all parameters const.
(linespec_parser_delete): No need to check for NULL
when using xfree. Cast const char * to char * for xfree.
Keith Seitz [Wed, 18 Jul 2012 20:20:51 +0000 (20:20 +0000)]
* breakpoint.c (invalid_thread_id_error): New function.
(find_condition_and_thread): Use invalid_thread_id_error.
(watch_command_1): Likewise.
DJ Delorie [Wed, 18 Jul 2012 20:09:08 +0000 (20:09 +0000)]
merge from gcc
Tom Tromey [Wed, 18 Jul 2012 20:04:44 +0000 (20:04 +0000)]
* cc-with-index.sh, cc-with-dwz.sh: Remove.
* contrib/cc-with-tweaks.sh: New file.
Tom Tromey [Wed, 18 Jul 2012 20:01:27 +0000 (20:01 +0000)]
* dwarf2read.c (struct dwz_file) <gdb_index>: New field.
(locate_dwz_sections): Recognize .gdb_index.
(create_cus_from_index_list): New function.
(create_cus_from_index): Use it. Handle .dwz data.
(read_index_from_section): New function, extracted from
dwarf2_read_index.
(dwarf2_read_index): Use it. Read .gdb_index from dwz file,
if needed.
Tom Tromey [Wed, 18 Jul 2012 19:59:35 +0000 (19:59 +0000)]
* dwarf2read.c (struct dwarf2_per_objfile) <dwz_file>: New field.
(struct dwarf2_per_cu_data) <length>: No longer bitfield.
<is_dwz>: New field.
(struct dwz_file): New.
(struct partial_die_info) <is_dwz, spec_is_dwz>: New fields.
(locate_dwz_sections, dwarf2_get_dwz_file)
(get_abbrev_section_for_cu): New functions.
(error_check_comp_unit_head, read_and_check_comp_unit_head)
(read_and_check_type_unit_head): Add abbrev_section argument.
(create_debug_types_hash_table): Update.
(init_cutu_and_read_dies): Use proper abbrev section.
(init_cutu_and_read_dies_no_follow): Likewise.
(set_partial_user): Do nothing if PST==NULL.
(read_comp_units_from_section): New function.
(create_all_comp_units): Use it.
(scan_partial_symbols, partial_die_parent_scope): Update.
(skip_one_die): Handle DW_FORM_GNU_ref_alt, DW_FORM_GNU_strp_alt.
(process_imported_unit_die, read_partial_die): Handle .dwz files.
(find_partial_die): Add offset_in_dwz argument. Update.
(guess_partial_die_structure_name, fixup_partial_die): Update.
(read_attribute_value): Handle DW_FORM_GNU_ref_alt,
DW_FORM_GNU_strp_alt.
(read_indirect_string_from_dwz): New function.
(dwarf2_const_value_attr): Handle DW_FORM_GNU_strp_alt.
(dump_die_shallow): Handle DW_FORM_GNU_ref_alt, DW_FORM_GNU_strp_alt.
(is_ref_attr): Handle DW_FORM_GNU_ref_alt.
(follow_die_offset): Add offset_in_dwz argument.
(follow_die_ref, dwarf2_fetch_die_location_block): Update.
(skip_form_bytes): Handle DW_FORM_GNU_strp_alt.
(dwarf_decode_macro_bytes): Add section_is_dwz argument.
Handle new macro forms.
(dwarf_decode_macros): Update.
(dwarf2_find_containing_comp_unit): Add offset_in_dwz argument.
(dwarf2_per_objfile_free): Unref dwz_bfd, if it exists
(lookup_die_type): Handle DW_FORM_GNU_ref_alt.
(create_debug_types_hash_table): Use correct abbrev section.
(get_debug_line_section): New function.
(dwarf_decode_line_header, dwarf_decode_lines_1): Use it.
(process_full_comp_unit): Pass 'required' argument to
end_symtab_get_static_block.
* buildsym.h (end_symtab_get_static_block): Update.
* buildsym.c (end_symtab_get_static_block): Add 'required'
argument.
(end_symtab, end_expandable_symtab): Update.
Tom Tromey [Wed, 18 Jul 2012 19:57:21 +0000 (19:57 +0000)]
* dwarf2read.c: Don't include zlib.h or sys/mman.h.
(pagesize): Remove.
(struct dwarf2_section_info) <map_addr, map_len>: Remove.
(zlib_decompress_section): Remove.
(dwarf2_read_section): Use gdb_bfd_map_section.
(munmap_section_buffer): Remove.
(free_dwo_file, dwarf2_per_objfile_free): Don't use
munmap_section_buffer.
* gdb_bfd.c: Include zlib.h, sys/mman.h.
(struct gdb_bfd_section_data): New.
(free_one_bfd_section): New function.
(gdb_bfd_close_or_warn): Use free_one_bfd_section.
(get_section_descriptor, zlib_decompress_section)
(gdb_bfd_map_section): New functions.
* gdb_bfd.h (gdb_bfd_map_section): Declare.
Tom Tromey [Wed, 18 Jul 2012 19:53:05 +0000 (19:53 +0000)]
* dwarf2read.c (try_open_dwo_file): use gdb_bfd_open.
Tom Tromey [Wed, 18 Jul 2012 19:49:33 +0000 (19:49 +0000)]
* gdb_bfd.c (struct gdb_bfd_data): New.
(gdb_bfd_cache): New global.
(struct gdb_bfd_cache_search): New.
(hash_bfd, eq_bfd, gdb_bfd_open): New functions.
(gdb_bfd_ref, gdb_bfd_unref): Use gdb_bfd_data.
* gdb_bfd.h (gdb_bfd_open): Declare.
Tom Tromey [Wed, 18 Jul 2012 19:42:26 +0000 (19:42 +0000)]
* utils.c (make_cleanup_bfd_unref): Rename from
make_cleanup_bfd_close.
* defs.h (make_cleanup_bfd_unref): Rename from
make_cleanup_bfd_close.
* cli/cli-dump.c (bfd_openr_with_cleanup): Update.
(bfd_openw_with_cleanup): Update.
* corelow.c (core_open): Update.
* dsrec.c (load_srec): Update.
* m32r-rom.c (m32r_load, m32r_upload_command): Update.
* remote-m32r-sdi.c (m32r_load): Update.
* remote-mips.c (mips_load_srec): Update.
(pmon_load_fast): Update.
* solib-darwin.c (darwin_solib_get_all_image_info_addr_at_init):
Update.
(darwin_bfd_open): Update.
* solib.c (solib_bfd_fopen): Update.
* symfile-mem.c (symbol_file_add_from_memory): Update.
* symfile.c (symbol_file_add_with_addrs_or_offsets): Update.
(symfile_bfd_open): Update.
(generic_load): Update.
Tom Tromey [Wed, 18 Jul 2012 19:38:39 +0000 (19:38 +0000)]
* 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.
Tom Tromey [Wed, 18 Jul 2012 19:34:57 +0000 (19:34 +0000)]
* 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.
Tom Tromey [Wed, 18 Jul 2012 19:33:34 +0000 (19:33 +0000)]
* 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.
Keith Seitz [Wed, 18 Jul 2012 19:30:20 +0000 (19:30 +0000)]
* 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.
Pedro Alves [Wed, 18 Jul 2012 18:04:39 +0000 (18:04 +0000)]
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.
H.J. Lu [Wed, 18 Jul 2012 17:09:31 +0000 (17:09 +0000)]
Regenerate bfd-in2.h
* bfd-in2.h: Regenerated.
H.J. Lu [Wed, 18 Jul 2012 17:08:18 +0000 (17:08 +0000)]
Fix a typo in section.c comments
PR binutils/14335
* section.c: Fix a typo in comments.
Sergio Durigan Junior [Wed, 18 Jul 2012 16:20:43 +0000 (16:20 +0000)]
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.
Sergio Durigan Junior [Wed, 18 Jul 2012 16:12:17 +0000 (16:12 +0000)]
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.
xuepeng guo [Wed, 18 Jul 2012 04:36:24 +0000 (04:36 +0000)]
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.
Joel Brobecker [Wed, 18 Jul 2012 04:02:10 +0000 (04:02 +0000)]
Update the NEWS file following the creation of the GDB 7.5 branch.
gdb/ChangeLog:
* NEWS: Create a new section for the next release branch.
Rename the section of the current branch, now that it has
been cut.
gdbadmin [Wed, 18 Jul 2012 03:39:03 +0000 (03:39 +0000)]
Record GDB 7.5 branch creation. Bump version number
Keith Seitz [Wed, 18 Jul 2012 03:35:29 +0000 (03:35 +0000)]
* linespec.c (linespec_parse_line_offset): Make parameter
const.
gdbadmin [Wed, 18 Jul 2012 00:00:32 +0000 (00:00 +0000)]
*** empty log message ***
Alan Modra [Wed, 18 Jul 2012 00:00:05 +0000 (00:00 +0000)]
daily update
Nick Clifton [Tue, 17 Jul 2012 16:29:36 +0000 (16:29 +0000)]
* elfcomm.c (setup_archive): Extract index table and symbol table
scanning code into...
(process_archive_index_and_symbols): ... this function and add
support for 64-bit index tables.
* elfcomm.h (struct archive_info): Change type of index_num and
index_array to elf_vma.
Add 'uses_64bit_indicies' field.
* readelf.c (process_archive): Fix support for 64-bit indicies.
Alan Modra [Tue, 17 Jul 2012 00:00:04 +0000 (00:00 +0000)]
daily update
gdbadmin [Tue, 17 Jul 2012 00:00:02 +0000 (00:00 +0000)]
*** empty log message ***
Jan Kratochvil [Mon, 16 Jul 2012 19:17:54 +0000 (19:17 +0000)]
gdb/testsuite/
* gdb.base/store.exp (check_set): Import gdb_prompt.
(continue to wack_${t}): Make it to conditional gdb_test_multiple.
(${prefix}; next ${t}): Hide its name, handle it conditionally now.
Jan Kratochvil [Mon, 16 Jul 2012 19:15:39 +0000 (19:15 +0000)]
gdb/
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.
gdb/testsuite/
PR 11914
* gdb.python/py-prettyprint.c (eval_func, eval_sub): New.
(main): Call eval_sub.
* gdb.python/py-prettyprint.exp:
(python execfile ('py-prettyprint.py')): Move it earlier.
New breakpoint for eval-break.
(continue to breakpoint: eval-break, info locals): New test.
(python execfile ('py-prettyprint.py')): Move it from here.
* gdb.python/py-prettyprint.py (class pp_eval_type): New.
(register_pretty_printers): Register pp_eval_type.
Marc Khouzam [Mon, 16 Jul 2012 19:07:16 +0000 (19:07 +0000)]
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.
Sriraman Tallam [Mon, 16 Jul 2012 19:00:18 +0000 (19:00 +0000)]
2012-07-16 Sriraman Tallam <tmsriram@google.com>
* gold.cc (queue_middle_tasks): Update function order only after
deferred objects due to plugins are processed.
Tom Tromey [Mon, 16 Jul 2012 17:51:48 +0000 (17:51 +0000)]
* jv-typeprint.c (c_type_print_varspec_suffix): Don't declare.
H.J. Lu [Mon, 16 Jul 2012 12:58:29 +0000 (12:58 +0000)]
Implement RDRSEED, ADX and PRFCHW instructions
gas/
* config/tc-i386.c: Add ADX, RDSEED and PRFCHW asm directives.
* doc/c-i386.texi: Document the new directives.
gas/testsuite/
* gas/i386/i386.exp: Run adx, rdseed and prefetchw tests.
* gas/i386/x86-64-arch-2.s: Use prefetchw as 3dnow and Prfchw tests.
* gas/i386/arch-10.s: Likewise.
* gas/i386/arch-10-1.l: Changed correspondingly.
* gas/i386/arch-10-2.l: Likewise.
* gas/i386/arch-10-3.l: Likewise.
* gas/i386/arch-10-4.l: Likewise.
* gas/i386/arch-10.d: Likewise.
* gas/i386/arch-10-lzcnt.d: Likewise.
* gas/i386/x86-64-arch-2.d: Likewise.
* gas/i386/x86-64-arch-2-lzcnt.d: Likewise.
* gas/i386/ilp32/x86-64-arch-2.d: Likewise.
* gas/i386/arch-10-prefetchw.d: New file.
* gas/i386/x86-64-arch-2-prefetchw.d: Likewise.
* gas/i386/rdseed.s: Likewise.
* gas/i386/rdseed.d: Likewise.
* gas/i386/rdseed-intel.d: Likewise.
* gas/i386/adx.s: Likewise.
* gas/i386/adx.d: Likewise.
* gas/i386/adx-intel.d: Likewise.
* gas/i386/x86-64-rdseed.s: Likewise.
* gas/i386/x86-64-rdseed.d: Likewise.
* gas/i386/x86-64-rdseed-intel.d: Likewise.
* gas/i386/x86-64-adx.s: Likewise.
* gas/i386/x86-64-adx.d: Likewise.
* gas/i386/x86-64-adx-intel.d: Likewise.
opcodes/
* i386-dis.c (PREFIX_0F38F6): New.
(prefix_table): Add adcx, adox instructions.
(three_byte_table): Use PREFIX_0F38F6.
(mod_table): Add rdseed instruction.
* i386-gen.c (cpu_flag_init): Add CpuADX, CpuRDSEED, CpuPRFCHW.
(cpu_flags): Likewise.
* i386-opc.h: Add CpuADX, CpuRDSEED, CpuPRFCHW.
(i386_cpu_flags): Add fields cpurdseed, cpuadx, cpuprfchw.
* i386-opc.tbl: Add instrcutions adcx, adox, rdseed. Extend
prefetchw.
* i386-tbl.h: Regenerate.
* i386-init.h: Likewise.
Doug Evans [Mon, 16 Jul 2012 03:22:40 +0000 (03:22 +0000)]
* 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.
Doug Evans [Mon, 16 Jul 2012 03:07:01 +0000 (03:07 +0000)]
* 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.
gdbadmin [Mon, 16 Jul 2012 00:00:32 +0000 (00:00 +0000)]
*** empty log message ***
Alan Modra [Mon, 16 Jul 2012 00:00:05 +0000 (00:00 +0000)]
daily update
Jan Kratochvil [Sun, 15 Jul 2012 08:34:55 +0000 (08:34 +0000)]
gdb/testsuite/
Fix a testcase regression by me.
* gdb.dwarf2/fission-reread.S: Fix two DW_FORM_data8 to be
DW_FORM_data4.
gdbadmin [Sun, 15 Jul 2012 00:00:33 +0000 (00:00 +0000)]
*** empty log message ***
Alan Modra [Sun, 15 Jul 2012 00:00:04 +0000 (00:00 +0000)]
daily update
gdbadmin [Sat, 14 Jul 2012 00:00:32 +0000 (00:00 +0000)]
*** empty log message ***
Alan Modra [Sat, 14 Jul 2012 00:00:04 +0000 (00:00 +0000)]
daily update
Doug Evans [Fri, 13 Jul 2012 23:39:46 +0000 (23:39 +0000)]
include/
* filenames.h: #include "hashtab.h".
(filename_hash, filename_eq): Declare.
libiberty/
* filename_cmp.c (filename_hash, filename_eq): New functions.
Doug Evans [Fri, 13 Jul 2012 21:50:27 +0000 (21:50 +0000)]
* symtab.c (filename_seen): Update comment.
Hans-Peter Nilsson [Fri, 13 Jul 2012 21:43:16 +0000 (21:43 +0000)]
* ld-elf/foo0.s: Use ARM-compatible .section syntax.
* ld-elf/foo1.s: Likewise.
* ld-elf/foo2.s: Likewise.
* ld-elf/foo3.s: Likewise.
* ld-elf/foon.s: Likewise.
Jan Kratochvil [Fri, 13 Jul 2012 20:26:11 +0000 (20:26 +0000)]
gdb/
* 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.
gdb/testsuite/
* gdb.dwarf2/dw2-minsym-in-cu.S: New file.
* gdb.dwarf2/dw2-minsym-in-cu.exp: New file.
Jan Kratochvil [Fri, 13 Jul 2012 20:15:50 +0000 (20:15 +0000)]
gdb/
* dwarf2loc.c (disassemble_dwarf_expression): Handle
DW_OP_GNU_parameter_ref.
Jan Kratochvil [Fri, 13 Jul 2012 20:15:03 +0000 (20:15 +0000)]
gdb/
* dwarf2read.c (read_call_site_scope): Do not gdb_assert for invalid
read-in CALL_SITE_PARAMETER_PARAM_OFFSET.
Doug Evans [Fri, 13 Jul 2012 18:41:21 +0000 (18:41 +0000)]
* 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.
Andreas Krebbel [Fri, 13 Jul 2012 15:47:27 +0000 (15:47 +0000)]
2012-07-13 Andreas Krebbel <Andreas.Krebbel@de.ibm.com>
* elf64-s390.c: Include elf-s390-common.c.
(R_390_IRELATIVE): New reloc.
(elf_s390_reloc_type_lookup): Support R_390_IRELATIVE.
(RELA_ENTRY_SIZE): New macro.
(elf_s390_link_hash_entry): New fields ifunc_resolver_address and
*ifunc_resolver_section.
(struct plt_entry): New struct.
(struct elf_s390_obj_tdata): New field local_plt.
(elf_s390_local_plt): New macro.
(struct elf_s390_link_hash_table): New field irelifunc.
(ELF64): New macro.
(link_hash_newfunc): Initialize new fields.
(elf_s390_check_relocs): Handle IFUNC symbols.
(elf_s390_adjust_dynamic_symbol): Don't do anything for IFUNC
symbols.
(allocate_dynrelocs): Call s390_elf_allocate_ifunc_dyn_relocs for
IFUNC symbols.
(elf_s390_size_dynamic_sections): Handle IFUNC symbols.
(elf_s390_relocate_section): Likewise.
(elf_s390_finish_dynamic_symbol): Likewise.
(elf_s390_finish_dynamic_sections): Handle local IFUNC symbols.
(elf_s390_finish_ifunc_symbol): New function.
(elf_s390_gc_sweep_hook): Handle local plt entries.
(elf_backend_add_symbol_hook): Define.
* elf32-s390.c: See elf64-s390.c changes.
* elf-s390-common.c: New file.
* bfd-in2.h (BFD_RELOC_390_IRELATIVE): New enum field.
* libbfd.h (BFD_RELOC_390_IRELATIVE): New entry for
BFD_RELOC_390_IRELATIVE.
* reloc.c (BFD_RELOC_390_IRELATIVE): Document new relocation.
2012-07-13 Andreas Krebbel <Andreas.Krebbel@de.ibm.com>
* elf/s390.h (START_RELOC_NUMBERS): Define R_390_IRELATIVE reloc.
2012-07-13 Andreas Krebbel <Andreas.Krebbel@de.ibm.com>
* emulparams/elf_s390.sh (IREL_IN_PLT): Define.
* emulparams/elf64_s390.sh (IREL_IN_PLT): Define.
Nick Clifton [Fri, 13 Jul 2012 14:22:50 +0000 (14:22 +0000)]
* aix386-core.c: Remove use of PTR and PARAMS macros.
* archive.c: Likewise.
* cache.c: Likewise.
* cisco-core.c: Likewise.
* coff-alpha.c: Likewise.
* coff-apollo.c: Likewise.
* coff-aux.c: Likewise.
* coff-h8300.c: Likewise.
* coff-h8500.c: Likewise.
* coff-i386.c: Likewise.
* coff-i960.c: Likewise.
* coff-ia64.c: Likewise.
* coff-m68k.c: Likewise.
* coff-m88k.c: Likewise.
* coff-mcore.c: Likewise.
* coff-mips.c: Likewise.
* coff-or32.c: Likewise.
* coff-ppc.c: Likewise.
* coff-rs6000.c: Likewise.
* coff-sh.c: Likewise.
* coff-sparc.c: Likewise.
* coff-stgo32.c: Likewise.
* coff-tic30.c: Likewise.
* coff-tic4x.c: Likewise.
* coff-tic54x.c: Likewise.
* coff-tic80.c: Likewise.
* coff-w65.c: Likewise.
* cofflink.c: Likewise.
* cpu-arc.c: Likewise.
* cpu-cris.c: Likewise.
* cpu-h8500.c: Likewise.
* cpu-i960.c: Likewise.
* cpu-msp430.c: Likewise.
* cpu-ns32k.c: Likewise.
* cpu-powerpc.c: Likewise.
* cpu-rs6000.c: Likewise.
* cpu-tic4x.c: Likewise.
* cpu-w65.c: Likewise.
* ecoff.c: Likewise.
* ecofflink.c: Likewise.
* elf-m10200.c: Likewise.
* elf32-bfin.c: Likewise.
* elf32-cris.c: Likewise.
* elf32-crx.c: Likewise.
* elf32-fr30.c: Likewise.
* elf32-frv.c: Likewise.
* elf32-h8300.c: Likewise.
* elf32-i960.c: Likewise.
* elf32-m32c.c: Likewise.
* elf32-m68hc11.c: Likewise.
* elf32-m68hc12.c: Likewise.
* elf32-m68hc1x.c: Likewise.
* elf32-m68k.c: Likewise.
* elf32-mcore.c: Likewise.
* elf32-rl78.c: Likewise.
* elf32-rx.c: Likewise.
* elf32-s390.c: Likewise.
* elf32-vax.c: Likewise.
* elf64-alpha.c: Likewise.
* elf64-mmix.c: Likewise.
* elf64-s390.c: Likewise.
* elf64-sparc.c: Likewise.
* elfnn-ia64.c: Likewise.
* elfxx-mips.c: Likewise.
* elfxx-sparc.c: Likewise.
* hash.c: Likewise.
* hp300hpux.c: Likewise.
* hppabsd-core.c: Likewise.
* hpux-core.c: Likewise.
* i386dynix.c: Likewise.
* i386linux.c: Likewise.
* i386lynx.c: Likewise.
* i386mach3.c: Likewise.
* i386msdos.c: Likewise.
* i386os9k.c: Likewise.
* irix-core.c: Likewise.
* lynx-core.c: Likewise.
* m68klinux.c: Likewise.
* mach-o.h: Likewise.
* mipsbsd.c: Likewise.
* netbsd-core.c: Likewise.
* nlm32-i386.c: Likewise.
* osf-core.c: Likewise.
* pc532-mach.c: Likewise.
* pef.c: Likewise.
* ppcboot.c: Likewise.
* ptrace-core.c: Likewise.
* reloc16.c: Likewise.
* sco5-core.c: Likewise.
* som.h: Likewise.
* sparclinux.c: Likewise.
* sparclynx.c: Likewise.
* ticoff.h: Likewise.
* trad-core.c: Likewise.
* vms-lib.c: Likewise.
* xsym.h: Likewise.
Nick Clifton [Fri, 13 Jul 2012 13:20:27 +0000 (13:20 +0000)]
PR ld/14357
* ldmain.c (trace_file_tries): Rename to 'verbose'.
* ldfile.c: Likewise.
* ldlang.c: Likewise.
* ldmain.h: Likewise.
* lexsup.c: Likewise.
* emultempl/elf32.em: Likewise.
* emultemp/spuelf.em: Likewise.
* pe-dll.c (pe_dll_generate_implib): Only print creation message
in verbose mode.
Jan Kratochvil [Fri, 13 Jul 2012 08:14:37 +0000 (08:14 +0000)]
gdb/testsuite/
Fix gdbserver run regression.
* gdb.trace/disconnected-tracing.exp (executabel): Fix typo.
Alan Modra [Fri, 13 Jul 2012 00:00:04 +0000 (00:00 +0000)]
daily update
gdbadmin [Fri, 13 Jul 2012 00:00:03 +0000 (00:00 +0000)]
*** empty log message ***
Doug Evans [Thu, 12 Jul 2012 21:16:09 +0000 (21:16 +0000)]
* psymtab.c (map_symbol_filenames_psymtab): Skip shared psymtabs.
Tom Tromey [Thu, 12 Jul 2012 16:39:42 +0000 (16:39 +0000)]
* lib/gdb.exp (standard_testfile): Don't declare objdir.
(clean_restart): Likewise.
(core_find): Use standard_output_file.
Tom Tromey [Thu, 12 Jul 2012 15:15:07 +0000 (15:15 +0000)]
* gdb.dwarf2/dup-psym.exp: Use prepare_for_testing_full.
* gdb.dwarf2/dw2-anonymous-func.exp: Use
prepare_for_testing_full.
* gdb.dwarf2/dw2-basic.exp: Use prepare_for_testing_full.
* gdb.dwarf2/dw2-compressed.exp: Use prepare_for_testing_full.
* gdb.dwarf2/dw2-const.exp: Use prepare_for_testing_full.
* gdb.dwarf2/dw2-cu-size.exp: Use prepare_for_testing_full.
* gdb.dwarf2/dw2-intercu.exp: Use prepare_for_testing_full.
* gdb.dwarf2/dw2-intermix.exp: Use prepare_for_testing_full.
* gdb.dwarf2/dw2-linkage-name-trust.exp: Use
prepare_for_testing_full.
* gdb.dwarf2/dw2-producer.exp: Use prepare_for_testing_full.
* gdb.dwarf2/dw2-ref-missing-frame.exp: Use
prepare_for_testing_full.
* gdb.dwarf2/dw2-restore.exp: Use prepare_for_testing_full.
* gdb.dwarf2/dw2-strp.exp: Use prepare_for_testing_full.
* gdb.dwarf2/mac-fileno.exp: Use prepare_for_testing_full.
Tom Tromey [Thu, 12 Jul 2012 15:09:41 +0000 (15:09 +0000)]
* lib/gdb.exp (build_executable_from_specs): New proc, from
build_executable.
(build_executable): Use it.
(prepare_for_testing_full): New proc.
Eli Zaretskii [Thu, 12 Jul 2012 07:56:50 +0000 (07:56 +0000)]
Separate the indices in gdbint.texinfo into 2 nodes, to avoid file-name clashes.
* gdbint.texinfo: Remove @syncodeindex directives that put all the
indices into a single node "Index". Instead, join function and
variable indices into a single index, separate from the concept
index. Requested in
http://sourceware.org/ml/gdb-patches/2012-07/msg00146.html.
(Top): Update the top-level menu: instead of one "Index" there are
now separate entries "Concept Index" and "Function and Variable
Index".
(Concept Index, Function and Variable Index): New nodes.
(Index): Node deleted.
Alan Modra [Thu, 12 Jul 2012 00:00:04 +0000 (00:00 +0000)]
daily update
gdbadmin [Thu, 12 Jul 2012 00:00:03 +0000 (00:00 +0000)]
*** empty log message ***
Tom Tromey [Wed, 11 Jul 2012 15:21:36 +0000 (15:21 +0000)]
* gdb.reverse/break-precsave.exp: Use standard_output_file.
* gdb.reverse/consecutive-precsave.exp: Use standard_output_file.
* gdb.reverse/finish-precsave.exp: Use standard_output_file.
* gdb.reverse/i386-precsave.exp: Use standard_output_file.
* gdb.reverse/machinestate-precsave.exp: Use standard_output_file.
* gdb.reverse/sigall-precsave.exp: Use standard_output_file.
* gdb.reverse/solib-precsave.exp: Use standard_output_file.
* gdb.reverse/step-precsave.exp: Use standard_output_file.
* gdb.reverse/until-precsave.exp: Use standard_output_file.
* gdb.reverse/watch-precsave.exp: Use standard_output_file.
Ian Lance Taylor [Wed, 11 Jul 2012 14:18:40 +0000 (14:18 +0000)]
* arm.cc (Arm_relocate_functions::abs16): Remove unused typedef.
(Arm_exidx_cantunwind::do_fixed_endian_write): Likewise.
(Target_arm::scan_reloc_for_stub): Likewise.
* common.cc (Symbol_table::do_allocate_commons_list): Likewise.
* dwarf_reader.cc (Dwarf_die::skip_attributes): Likewise.
* ehframe.cc (Eh_frame::do_add_ehframe_input_section): Likewise.
* incremental.cc (Sized_incr_dynobj::do_add_symbols): Likewise.
* powerpc.cc (Target_powerpc::relocate_tls): Likewise.
gdbadmin [Wed, 11 Jul 2012 00:00:33 +0000 (00:00 +0000)]
*** empty log message ***
Alan Modra [Wed, 11 Jul 2012 00:00:05 +0000 (00:00 +0000)]
daily update
Doug Evans [Tue, 10 Jul 2012 20:28:32 +0000 (20:28 +0000)]
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.
Doug Evans [Tue, 10 Jul 2012 20:20:15 +0000 (20:20 +0000)]
* 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.
Doug Evans [Tue, 10 Jul 2012 20:17:30 +0000 (20:17 +0000)]
* 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.
Doug Evans [Tue, 10 Jul 2012 20:12:49 +0000 (20:12 +0000)]
* dictionary.c (dict_add_pending): New function.
* dictionary.h (dict_add_pending): Declare.
Tom Tromey [Tue, 10 Jul 2012 15:32:52 +0000 (15:32 +0000)]
* gdb.mi/dw2-ref-missing-frame.exp: Use standard_testfile,
standard_output_file.
* gdb.mi/gdb2549.exp: Use standard_testfile.
* gdb.mi/gdb669.exp: Use standard_testfile.
* gdb.mi/gdb701.exp: Use standard_testfile.
* gdb.mi/gdb792.exp: Use standard_testfile.
* gdb.mi/mi-async.exp: Use standard_testfile.
* gdb.mi/mi-basics.exp: Use standard_testfile.
* gdb.mi/mi-break.exp: Use standard_testfile.
* gdb.mi/mi-cli.exp: Use standard_testfile.
* gdb.mi/mi-console.exp: Use standard_testfile.
* gdb.mi/mi-disassemble.exp: Use standard_testfile.
* gdb.mi/mi-eval.exp: Use standard_testfile.
* gdb.mi/mi-file-transfer.exp: Use standard_testfile.
* gdb.mi/mi-file.exp: Use standard_testfile.
* gdb.mi/mi-inheritance-syntax-error.exp: Use standard_testfile.
* gdb.mi/mi-logging.exp: Use standard_testfile.
* gdb.mi/mi-nonstop-exit.exp: Use standard_testfile.
* gdb.mi/mi-nonstop.exp: Use standard_testfile.
* gdb.mi/mi-ns-stale-regcache.exp: Use standard_testfile.
* gdb.mi/mi-nsintrall.exp: Use standard_testfile.
* gdb.mi/mi-nsmoribund.exp: Use standard_testfile.
* gdb.mi/mi-nsthrexec.exp: Use standard_testfile.
* gdb.mi/mi-pending.exp: Use standard_testfile,
standard_output_file.
* gdb.mi/mi-pthreads.exp: Use standard_testfile.
* gdb.mi/mi-read-memory.exp: Use standard_testfile.
* gdb.mi/mi-regs.exp: Use standard_testfile.
* gdb.mi/mi-return.exp: Use standard_testfile.
* gdb.mi/mi-reverse.exp: Use standard_testfile.
* gdb.mi/mi-simplerun.exp: Use standard_testfile.
* gdb.mi/mi-solib.exp: Use standard_testfile,
standard_output_file.
* gdb.mi/mi-stack.exp: Use standard_testfile.
* gdb.mi/mi-stepi.exp: Use standard_testfile.
* gdb.mi/mi-stepn.exp: Use standard_testfile.
* gdb.mi/mi-syn-frame.exp: Use standard_testfile.
* gdb.mi/mi-until.exp: Use standard_testfile.
* gdb.mi/mi-var-block.exp: Use standard_testfile.
* gdb.mi/mi-var-child-f.exp: Use standard_testfile.
* gdb.mi/mi-var-child.exp: Use standard_testfile.
* gdb.mi/mi-var-cmd.exp: Use standard_testfile.
* gdb.mi/mi-var-cp.exp: Use standard_testfile.
* gdb.mi/mi-var-display.exp: Use standard_testfile.
* gdb.mi/mi-var-invalidate.exp: Use standard_testfile,
standard_output_file.
* gdb.mi/mi-var-rtti.exp: Use standard_testfile.
* gdb.mi/mi-watch-nonstop.exp: Use standard_testfile.
* gdb.mi/mi-watch.exp: Use standard_testfile.
* gdb.mi/mi2-amd64-entry-value.exp: Use standard_testfile.
* gdb.mi/mi2-basics.exp: Use standard_testfile.
* gdb.mi/mi2-break.exp: Use standard_testfile.
* gdb.mi/mi2-cli.exp: Use standard_testfile.
* gdb.mi/mi2-console.exp: Use standard_testfile.
* gdb.mi/mi2-disassemble.exp: Use standard_testfile.
* gdb.mi/mi2-eval.exp: Use standard_testfile.
* gdb.mi/mi2-file.exp: Use standard_testfile.
* gdb.mi/mi2-pthreads.exp: Use standard_testfile.
* gdb.mi/mi2-read-memory.exp: Use standard_testfile.
* gdb.mi/mi2-regs.exp: Use standard_testfile.
* gdb.mi/mi2-return.exp: Use standard_testfile.
* gdb.mi/mi2-simplerun.exp: Use standard_testfile.
* gdb.mi/mi2-stack.exp: Use standard_testfile.
* gdb.mi/mi2-stepi.exp: Use standard_testfile.
* gdb.mi/mi2-syn-frame.exp: Use standard_testfile.
* gdb.mi/mi2-until.exp: Use standard_testfile.
* gdb.mi/mi2-var-block.exp: Use standard_testfile.
* gdb.mi/mi2-var-child.exp: Use standard_testfile.
* gdb.mi/mi2-var-cmd.exp: Use standard_testfile.
* gdb.mi/mi2-var-display.exp: Use standard_testfile.
* gdb.mi/mi2-watch.exp: Use standard_testfile.
Tom Tromey [Tue, 10 Jul 2012 15:18:18 +0000 (15:18 +0000)]
* gdb.cp/abstract-origin.exp: Use standard_testfile.
* gdb.cp/ambiguous.exp: Use standard_testfile,
prepare_for_testing.
* gdb.cp/annota2.exp: Use standard_testfile, prepare_for_testing.
* gdb.cp/annota3.exp: Use standard_testfile, prepare_for_testing.
* gdb.cp/anon-ns.exp: Use standard_testfile.
* gdb.cp/anon-struct.exp: Use standard_testfile.
* gdb.cp/anon-union.exp: Use standard_testfile,
prepare_for_testing.
* gdb.cp/arg-reference.exp: Use standard_testfile,
prepare_for_testing.
* gdb.cp/bool.exp: Use standard_testfile, prepare_for_testing.
* gdb.cp/breakpoint.exp: Use standard_testfile,
prepare_for_testing.
* gdb.cp/bs15503.exp: Use standard_testfile, prepare_for_testing.
* gdb.cp/call-c.exp: Use standard_testfile, clean_restart,
standard_output_file.
* gdb.cp/casts.exp: Use standard_testfile, prepare_for_testing.
* gdb.cp/class2.exp: Use standard_testfile, prepare_for_testing.
* gdb.cp/classes.exp: Use standard_testfile, prepare_for_testing.
(test_static_members): Update.
* gdb.cp/cmpd-minsyms.exp: Use standard_testfile.
* gdb.cp/converts.exp: Use standard_testfile.
* gdb.cp/cp-relocate.exp: Use standard_testfile.
* gdb.cp/cpcompletion.exp: Use standard_testfile,
prepare_for_testing.
* gdb.cp/cpexprs.exp: Use standard_testfile, prepare_for_testing.
* gdb.cp/cplabel.exp: Use standard_testfile.
* gdb.cp/cplusfuncs.exp: Use standard_testfile,
prepare_for_testing.
* gdb.cp/ctti.exp: Use standard_testfile, prepare_for_testing.
* gdb.cp/derivation.exp: Use standard_testfile,
prepare_for_testing.
* gdb.cp/destrprint.exp: Use standard_testfile.
* gdb.cp/dispcxx.exp: Use standard_testfile.
* gdb.cp/exception.exp: Use standard_testfile,
prepare_for_testing.
* gdb.cp/expand-psymtabs-cxx.exp: Use standard_testfile.
* gdb.cp/extern-c.exp: Use standard_testfile,
prepare_for_testing.
* gdb.cp/formatted-ref.exp: Use standard_testfile,
prepare_for_testing.
* gdb.cp/fpointer.exp: Use standard_testfile.
* gdb.cp/gdb1355.exp: Use standard_testfile, prepare_for_testing.
* gdb.cp/gdb2384.exp: Use standard_testfile, clean_restart,
standard_output_file.
* gdb.cp/gdb2495.exp: Use standard_testfile, prepare_for_testing.
* gdb.cp/hang.exp: Use standard_testfile, prepare_for_testing.
* gdb.cp/infcall-dlopen.exp: Use standard_testfile,
standard_output_file.
* gdb.cp/inherit.exp: Use standard_testfile, prepare_for_testing.
(do_tests): Update.
* gdb.cp/koenig.exp: Use standard_testfile.
* gdb.cp/local.exp: Use standard_testfile, prepare_for_testing.
* gdb.cp/m-data.exp: Use standard_testfile, prepare_for_testing.
* gdb.cp/m-static.exp: Use standard_testfile,
prepare_for_testing.
* gdb.cp/mb-ctor.exp: Use standard_testfile, prepare_for_testing.
* gdb.cp/mb-inline.exp: Use standard_testfile,
prepare_for_testing.
* gdb.cp/mb-templates.exp: Use standard_testfile,
prepare_for_testing.
* gdb.cp/member-ptr.exp: Use standard_testfile,
prepare_for_testing.
* gdb.cp/meth-typedefs.exp: Use standard_testfile.
* gdb.cp/method.exp: Use standard_testfile, prepare_for_testing.
* gdb.cp/method2.exp: Use standard_testfile.
* gdb.cp/minsym-fallback.exp: Use standard_testfile,
standard_output_file.
* gdb.cp/misc.exp: Use standard_testfile, prepare_for_testing.
(do_tests): Update.
* gdb.cp/namespace-enum.exp: Use standard_testfile,
prepare_for_testing.
* gdb.cp/namespace-nested-import.exp: Use standard_testfile,
prepare_for_testing.
* gdb.cp/namespace.exp: Use standard_testfile,
prepare_for_testing.
* gdb.cp/nextoverthrow.exp: Use standard_testfile.
* gdb.cp/no-dmgl-verbose.exp: Use standard_testfile.
* gdb.cp/nsdecl.exp: Use standard_testfile, prepare_for_testing.
* gdb.cp/nsimport.exp: Use standard_testfile,
prepare_for_testing.
* gdb.cp/nsnested.exp: Use standard_testfile.
* gdb.cp/nsnoimports.exp: Use standard_testfile.
* gdb.cp/nsrecurs.exp: Use standard_testfile,
prepare_for_testing.
* gdb.cp/nsstress.exp: Use standard_testfile,
prepare_for_testing.
* gdb.cp/nsusing.exp: Use standard_testfile, prepare_for_testing.
* gdb.cp/operator.exp: Use standard_testfile.
* gdb.cp/oranking.exp: Use standard_testfile.
* gdb.cp/overload-const.exp: Use standard_testfile.
* gdb.cp/overload.exp: Use standard_testfile,
prepare_for_testing.
* gdb.cp/ovldbreak.exp: Use standard_testfile.
* gdb.cp/ovsrch.exp: Use standard_testfile.
* gdb.cp/paren-type.exp: Use standard_testfile.
* gdb.cp/pass-by-ref.exp: Use standard_testfile,
prepare_for_testing.
* gdb.cp/pr-1023.exp: Use standard_testfile, prepare_for_testing.
* gdb.cp/pr-1210.exp: Use standard_testfile, prepare_for_testing.
* gdb.cp/pr-574.exp: Use standard_testfile, prepare_for_testing.
* gdb.cp/pr10687.exp: Use standard_testfile, clean_restart.
* gdb.cp/pr10728.exp: Use standard_testfile,
standard_output_file.
* gdb.cp/pr12028.exp: Use standard_testfile.
* gdb.cp/pr9067.exp: Use standard_testfile, prepare_for_testing.
* gdb.cp/pr9167.exp: Use standard_testfile.
* gdb.cp/pr9631.exp: Use standard_testfile, prepare_for_testing.
* gdb.cp/printmethod.exp: Use standard_testfile,
prepare_for_testing.
* gdb.cp/psmang.exp: Use standard_testfile, clean_restart.
* gdb.cp/psymtab-parameter.exp: Use standard_testfile.
* gdb.cp/ptype-cv-cp.exp: Use standard_testfile.
* gdb.cp/re-set-overloaded.exp: Use standard_testfile,
standard_output_file.
* gdb.cp/readnow-language.exp: Use standard_testfile.
* gdb.cp/ref-params.exp: Use standard_testfile, build_executable.
(gdb_start_again): Use clean_restart.
* gdb.cp/ref-types.exp: Use standard_testfile,
prepare_for_testing.
* gdb.cp/rtti.exp: Use standard_testfile, prepare_for_testing.
* gdb.cp/shadow.exp: Use standard_testfile, prepare_for_testing.
* gdb.cp/smartp.exp: Use standard_testfile.
* gdb.cp/static-method.exp: Use standard_testfile.
* gdb.cp/static-print-quit.exp: Use standard_testfile.
* gdb.cp/temargs.exp: Use standard_testfile.
* gdb.cp/templates.exp: Use standard_testfile,
prepare_for_testing.
(do_tests): Update.
* gdb.cp/try_catch.exp: Use standard_testfile,
prepare_for_testing.
* gdb.cp/typedef-operator.exp: Use standard_testfile.
* gdb.cp/userdef.exp: Use standard_testfile, prepare_for_testing.
* gdb.cp/virtbase.exp: Use standard_testfile,
prepare_for_testing.
* gdb.cp/virtfunc.exp: Use standard_testfile,
prepare_for_testing.
(do_tests): Update.
* gdb.cp/virtfunc2.exp: Use standard_testfile,
prepare_for_testing.
Ian Lance Taylor [Tue, 10 Jul 2012 14:54:29 +0000 (14:54 +0000)]
PR gold/14309
* configure.ac: Test whether std::tr1::hash<off_t> works.
* gold.h: Add a specialization for std::tr1::hash<off_t> if
needed.
* output.h (class Output_fill): Add virtual destructor.
* configure, config.in: Rebuild.
Tom Tromey [Tue, 10 Jul 2012 14:41:16 +0000 (14:41 +0000)]
* lib/gdb.exp (standard_testfile): Unset output variables from
earlier invocations.
H.J. Lu [Tue, 10 Jul 2012 06:50:57 +0000 (06:50 +0000)]
Add SORT_NONE and don't sort sort .init/.fini sections
ld/
PR ld/14156
* NEWS: Mention SORT_NONE.
* ld.h (sort_type): Add by_none.
* ld.texinfo: Document SORT_NONE.
* ldgram.y: Handle SORT_NONE.
* ldlang.c (update_wild_statements): Handle by_none. Don't
sort .init/.fini sections.
* ldlex.l: Add SORT_NONE.
ld/testsuite/
PR ld/14156
* ld-elf/fini0.s: New file.
* ld-elf/fini1.s: Likewise.
* ld-elf/fini2.s: Likewise.
* ld-elf/fini3.s: Likewise.
* ld-elf/finin.s: Likewise.
* ld-elf/foo0.s: Likewise.
* ld-elf/foo1.s: Likewise.
* ld-elf/foo2.s: Likewise.
* ld-elf/foo3.s: Likewise.
* ld-elf/foon.s: Likewise.
* ld-elf/init0.s: Likewise.
* ld-elf/init1.s: Likewise.
* ld-elf/init2.s: Likewise.
* ld-elf/init3.s: Likewise.
* ld-elf/initn.s: Likewise.
* ld-elf/pr14156a.d: Likewise.
* ld-elf/pr14156b.d: Likewise.
* ld-elf/pr14156c.d: Likewise.
* ld-elf/pr14156c.t: Likewise.
H.J. Lu [Tue, 10 Jul 2012 04:51:53 +0000 (04:51 +0000)]
Add testcases for PR ld/14323
PR ld/14323
* ld-elf/pr14323-1.c: New.
* ld-elf/pr14323-2.c: Likewise.
* ld-elf/shared.exp (build_tests): Add libpr14323-2.so.
(run_tests): Add pr14323.
Doug Evans [Tue, 10 Jul 2012 03:49:25 +0000 (03:49 +0000)]
* buildsym.c (start_subfile): Remove unnecessary check for
name == NULL.
Doug Evans [Tue, 10 Jul 2012 01:10:25 +0000 (01:10 +0000)]
* psymtab.c (allocate_psymtab): Use host_address_to_string.
Doug Evans [Tue, 10 Jul 2012 01:05:06 +0000 (01:05 +0000)]
* dwarf2read.c (load_full_type_unit): Simplify.
gdbadmin [Tue, 10 Jul 2012 00:00:33 +0000 (00:00 +0000)]
*** empty log message ***
Alan Modra [Tue, 10 Jul 2012 00:00:03 +0000 (00:00 +0000)]
daily update
Doug Evans [Mon, 9 Jul 2012 20:27:53 +0000 (20:27 +0000)]
* dwarf2read.c (dwarf2_per_objfile): Change type of all_type_units
to struct signatured_type **. All uses updated.
Yao Qi [Mon, 9 Jul 2012 18:28:17 +0000 (18:28 +0000)]
gdb/testsuite:
* gdb.mi/gdb2549.exp: Remove -DFAKEARGV from compilation flags.
* gdb.mi/mi-async.exp, gdb.mi/mi-basics.exp: Likewise.
* gdb.mi/mi-break.exp, gdb.mi/mi-cli.exp: Likewise.
* gdb.mi/mi-console.exp, gdb.mi/mi-disassemble.exp: Likewise.
* gdb.mi/mi-eval.exp, gdb.mi/mi-file.exp: Likewise.
* gdb.mi/mi-read-memory.exp, gdb.mi/mi-regs.exp: Likewise.
* gdb.mi/mi-return.exp, gdb.mi/mi-reverse.exp: Likewise.
* gdb.mi/mi-simplerun.exp, gdb.mi/mi-stack.exp: Likewise.
* gdb.mi/mi-stepi.exp, gdb.mi/mi-syn-frame.exp: Likewise.
* gdb.mi/mi-until.exp, gdb.mi/mi-var-block.exp: Likewise.
* gdb.mi/mi-var-child.exp, gdb.mi/mi-var-cmd.exp: Likewise.
* gdb.mi/mi-var-display.exp: Likewise.
* gdb.mi/mi-var-invalidate.exp: Likewise.
* gdb.mi/mi-watch.exp, gdb.mi/mi2-basics.exp: Likewise.
* gdb.mi/mi2-break.exp, gdb.mi/mi2-cli.exp: Likewise.
* gdb.mi/mi2-console.exp: Likewise.
* gdb.mi/mi2-disassemble.exp: Likewise.
* gdb.mi/mi2-eval.exp, gdb.mi/mi2-file.exp: Likewise.
* gdb.mi/mi2-read-memory.exp: Likewise.
* gdb.mi/mi2-regs.exp, gdb.mi/mi2-return.exp: Likewise.
* gdb.mi/mi2-simplerun.exp: Likewise.
* gdb.mi/mi2-stack.exp, gdb.mi/mi2-stepi.exp: Likewise.
* gdb.mi/mi2-syn-frame.exp: Likewise.
* gdb.mi/mi2-until.exp, gdb.mi/mi2-var-block.exp: Likewise.
* gdb.mi/mi2-var-child.exp, gdb.mi/mi2-var-cmd.exp: Likewise.
* gdb.mi/mi2-var-display.exp, gdb.mi/mi2-watch.exp: Likewise.
Doug Evans [Mon, 9 Jul 2012 18:21:31 +0000 (18:21 +0000)]
* dwarf2read.c (dwarf2_attr_no_follow): Delete unused arg "cu".
All callers updated.
Tom Tromey [Mon, 9 Jul 2012 14:20:52 +0000 (14:20 +0000)]
* c-exp.y (check_parameter_typelist): New function.
(parameter_typelist): Call it.
* eval.c (make_params): Handle '(void)' case.
* gdbtypes.c (lookup_function_type_with_arguments): Handle
'(void)' case.
testsuite
* gdb.base/whatis.exp: Add error checks for improper 'void' uses.
* gdb.base/callfuncs.exp: Add cast-based test.
* gdb.base/callfuncs.c (voidfunc): New function.
Alan Modra [Mon, 9 Jul 2012 08:17:34 +0000 (08:17 +0000)]
PR ld/14323
* elflink.c (elf_sort_symbol): Sort by size too.
(elf_link_add_object_symbols <weakdefs>): Simplify binary search.
Do not depend on ordering of symbol aliases. Match largest size.
Alan Modra [Mon, 9 Jul 2012 00:00:04 +0000 (00:00 +0000)]
daily update
gdbadmin [Mon, 9 Jul 2012 00:00:02 +0000 (00:00 +0000)]
*** empty log message ***
Doug Evans [Sun, 8 Jul 2012 22:34:59 +0000 (22:34 +0000)]
* gdb.dwarf2/dw4-sig-type-unused.S: Fix typo.