H.J. Lu [Wed, 21 May 2008 21:40:57 +0000 (21:40 +0000)]
gas/testsuite/
2008-05-21 H.J. Lu <hongjiu.lu@intel.com>
* gas/i386/sse-noavx.s: Add tests for movdq2q and movq2dq.
* gas/i386/x86-64-sse-noavx.s: Likewise.
* gas/i386/sse-noavx.d: Updated.
* gas/i386/x86-64-sse-noavx.d: Likewise.
opcodes/
2008-05-21 H.J. Lu <hongjiu.lu@intel.com>
* i386-opc.tbl: Add NoAVX to movdq2q and movq2dq.
* i386-tbl.h: Regenerated.
Ian Lance Taylor [Wed, 21 May 2008 21:37:44 +0000 (21:37 +0000)]
* mapfile.cc: New file.
* mapfile.h: New file.
* options.h (class General_options): Add -M/--print-map and -Map.
* options.cc (General_options::finalize): Make -M equivalent to
-Map -.
* main.cc: Include <cstdio> and "mapfile.h".
(main): Open mapfile if requested.
* gold.cc (class Middle_runner): Add mapfile_ field. Update
constructor. Change caller.
(queue_initial_tasks): Add mapfile parameter. Change caller.
(queue_middle_tasks): Likewise.
* gold.h (queue_initial_tasks, queue_middle_tasks): Update
declarations.
* archive.cc: Include "mapfile.h".
(Archive::add_symbols): Add mapfile parameter. Change all
callers. Pass mapfile, symbol, and reason to include_member.
(Archive::include_all_members): Add mapfile parameter. Change all
callers.
(Archive::include_member): Add mapfile, sym, and why parameters.
Change all callers. Report inclusion to map file.
* archive.h: Include "fileread.h".
(class Archive): Update declarations.
(Archive::file): New const method.
(class Add_archive_symbols): Add mapfile_ field. Update
constructor. Change all callers.
* readsyms.h (class Read_symbols): Likewise.
(class Finish_group): Likewise.
(class Read_script): Likewise.
* common.cc: Include "mapfile.h".
(Symbol_table::allocate_commons): Add mapfile parameter. Change
all callers.
(Symbol_table::do_allocate_commons): Likewise.
(Symbol_table::do_allocate_commons_list): Likewise. Report common
symbol allocation to mapfile.
* common.h (class Allocate_commons_task): Add mapfile_ field.
Update constructor. Change all callers.
* symtab.h (class Symbol_table): Update declarations.
* layout.cc: Include "mapfile.h".
(Layout_task_runner::run): Print information to mapfile.
(Layout::create_gold_note): Change Output_data_fixed_space to
Output_data_zero_fill.
(Layout::create_build_id): Likewise.
(Layout::print_to_mapfile): New function.
* layout.h (class Layout_task_runner): Add mapfile_ field. Update
constructor. Change caller.
(class Layout): Declare print_to_mapfile.
* output.cc (Output_section::Input_section::print_to_mapfile): New
function.
(Output_section::add_input_section): If producing a map, always
add to input_sections_ list.
(Output_section::do_print_to_mapfile): New function.
(Output_segment::print_sections_to_mapfile): New function.
(Output_segment::print_section_list_to_mapfile): New function.
* output.h: Include "mapfile.h".
(Output_data::print_to_mapfile): New function.
(Output_data::do_print_to_mapfile): New virtual function.
(Output_segment_headers::do_print_to_mapfile): New function.
(Output_file_header::do_print_to_mapfile): New function.
(Output_data_const::do_print_to_mapfile): New function.
(class Output_data_const_buffer): Add map_name_ field. Update
constructor. Change all callers. Add do_print_to_mapfile
function.
(class Output_data_fixed_space): Likewise.
(class Output_data_space): Likewise.
(class Output_data_zero_fill): New class.
(Output_data_strtab::do_print_to_mapfile): New function.
(Output_data_reloc_base::do_print_to_mapfile): New function.
(Output_relocatable_relocs::do_print_to_mapfile): New function.
(Output_data_group::do_print_to_mapfile): New function.
(Output_data_got::do_print_to_mapfile): New function.
(Output_data_dynamic::do_print_to_mapfile): New function.
(Output_symtab_xindex::do_print_to_mapfile): New function.
(class Output_section): Declare do_print_to_mapflie. Declare
print_to_mapfile in Input_section.
(class Output_segment): Declare new functions.
* object.h (Sized_relobj::symbol_count): New function.
* script-sections.cc
(Output_section_element_dot_assignment::set_section_addresses):
Change Output_data_fixed_space to Output_data_zero_fill.
(Output_data_expression::do_print_to_mapfile): New function.
* script.cc (read_input_script): Add mapfile parameter. Change
all callers.
* script.h (read_input_script): Update declaration.
* ehframe.h (Eh_frame_hdr::do_print_to_mapfile): New function.
(Eh_frame::do_print_to_mapfile): New function.
* merge.h (Output_merge_data::do_print_to_mapfile): New function.
(Output_merge_string::do_print_to_mapfile): New function.
* i386.cc (Output_data_plt_i386::do_print_to_mapfile): New
function.
* sparc.cc (Output_data_plt_sparc::do_print_to_mapfile): New
function.
* x86_64.cc (Output_data_plt_x86_64::do_print_to_mapfile): New
function.
* Makefile.am (CCFILES): Add mapfile.cc.
(HFILES): Add mapfile.h.
* Makefile.in: Rebuild.
Maxim Grigoriev [Wed, 21 May 2008 18:37:30 +0000 (18:37 +0000)]
2008-05-21 Markus Deuling <deuling@de.ibm.com>
Maxim Grigoriev <maxim2405@gmail.com>
* xtensa-tdep.c (xtensa_read_register): Remove.
(xtensa_frame_cache): Get rid of xtensa_read_register. Pass extra
argument litbase to call0_frame_cache().
(call0_track_op, call0_analyze_prologue)
(call0_frame_cache): Use extra argument litbase.
Joel Brobecker [Wed, 21 May 2008 17:58:21 +0000 (17:58 +0000)]
Fix the date of the entry that I just added.
Joel Brobecker [Wed, 21 May 2008 17:57:21 +0000 (17:57 +0000)]
* gdb.texinfo (Continuing and Stepping): Document the new "fin"
abbreviation for "finish".
Joel Brobecker [Wed, 21 May 2008 17:55:22 +0000 (17:55 +0000)]
* gdb.base/finish.exp: Test that "fin" works as an abbreviation
of the "finish" command.
Joel Brobecker [Wed, 21 May 2008 17:54:24 +0000 (17:54 +0000)]
* infcmd.c (_initialize_infcmd): Add new "fin" alias for "finish".
Ulrich Weigand [Wed, 21 May 2008 15:08:39 +0000 (15:08 +0000)]
* frame.h (SIZEOF_FRAME_SAVED_REGS): Remove.
Nick Clifton [Wed, 21 May 2008 14:50:07 +0000 (14:50 +0000)]
* reloc-macros.h: Add a comment about the use of the
END_RELOC_NUMBERS symbol as a sentinel value.
* arm.h (END_RELOC_NUMBERS): Provide a maximum value.
Ulrich Weigand [Wed, 21 May 2008 14:47:26 +0000 (14:47 +0000)]
* alpha-mdebug-tdep.c: Include "trad-frame.h".
(struct alpha_mdebug_unwind_cache): Change type of SAVED_REGS to
struct trad_frame_saved_reg *.
(alpha_mdebug_frame_unwind_cache): Allocate SAVED_REGS using
trad_frame_alloc_saved_regs. Update accesses. Record previous
value of SP as being vfp.
(alpha_mdebug_frame_prev_register): Use trad_frame_get_prev_register.
* Makefile.in (alpha-mdebug-tdep.o): Update dependencies.
Nick Clifton [Wed, 21 May 2008 12:16:22 +0000 (12:16 +0000)]
PR ld/6519
* ld.texinfo (Orphan Sections): Mention that the linker will
provide start and stop symbols for orphaned sections if their
names are valid C identifiers.
* NEWS: Add an addendum to the description of the linker feature
for providing orphan section start and end symbols.
Nick Clifton [Wed, 21 May 2008 12:01:37 +0000 (12:01 +0000)]
Multi-GOT support for m68k.
bfd/
* elf32-m68k.c (struct elf_m68k_link_hash_entry: got_entry_key,
glist): New fields.
(struct elf_m68k_got_entry_key, struct elf_m68k_got_entry,
struct elf_m68k_got, struct elf_m68k_bfd2got_entry,
struct elf_m68k_multi_got): New data structures.
(struct elf_m68k_link_hash_table: local_gp_p, use_neg_got_offsets_p,
allow_multigot_p, multi_got_): New fields.
(elf_m68k_multi_got): New macro.
(elf_m68k_link_hash_newfunc): Initialize new fields of
struct elf_m68k_link_hash_entry.
(elf_m68k_link_hash_table_create): Initialize new fields of
struct elf_m68k_link_hash_table.
(elf_m68k_link_hash_table_free): New static function implementing hook.
(elf_m68k_init_got, elf_m68k_clear_got, elf_m68k_create_empty_got): New
static functions for struct elf_m68k_got.
(elf_m68k_init_got_entry_key, elf_m68k_got_entry_hash,
elf_m68k_got_entry_eq): New static functions for
struct elf_m68k_got_entry.
(ELF_M68K_REL_8O_MAX_N_ENTRIES_IN_GOT,
ELF_M68K_REL_8O_16O_MAX_N_ENTRIES_IN_GOT): New macros.
(enum elf_m68k_get_entry_howto): New enum.
(elf_m68k_get_got_entry, elf_m68k_update_got_entry_type,
elf_m68k_remove_got_entry_type): New static functions for
struct elf_m68k_got_entry.
(elf_m68k_add_entry_to_got): New static function.
(elf_m68k_bfd2got_entry_hash, elf_m68k_bfd2got_entry_eq,
elf_m68k_bfd2got_entry_del, elf_m68k_get_bfd2got_entry): New static
functions for struct elf_m68k_bfd2got_entry.
(struct elf_m68k_can_merge_gots_arg, elf_m68k_can_merge_gots_1,
elf_m68k_can_merge_gots): New traversal.
(struct elf_m68k_merge_gots_arg, elf_m68k_merge_gots_1,
elf_m68k_merge_gots): Ditto.
(struct elf_m68k_finalize_got_offsets_arg,
elf_m68k_finalize_got_offsets_1, elf_m68k_finalize_got_offsets): Ditto.
(struct elf_m68k_partition_multi_got_arg,
elf_m68k_partition_multi_got_1, elf_m68k_init_symndx2h_1,
elf_m68k_partition_multi_got): Ditto.
(elf_m68k_find_got_entry_ptr, elf_m68k_remove_got_entry): New static
functions.
(elf_m68k_copy_indirect_symbol): New static function implementing
a hook.
(elf_m68k_check_relocs): Update to add entries to multi-GOT.
(elf_m68k_gc_sweep_hook): Update to remove entries from multi-GOT.
(elf_m68k_always_size_sections): Assign BFDs to GOTs.
(elf_m68k_relocate_section): Update to properly handle GOT relocations.
(elf_m68k_finish_dynamic_symbol): Update to traverse all GOT entries
of a global symbol.
(bfd_elf_m68k_set_target_options): New function.
(bfd_elf32_bfd_link_hash_table_free): Define hook.
(bfd_elf32_bfd_final_link): Change expansion to bfd_elf_final_link
to skip generic calculation of GOT offsets.
(elf_backend_copy_indirect_symbol): Define hook.
* bfd-in.h (bfd_elf_m68k_set_target_options): Declare function.
* bfd-in2.h: Regenerate.
ld/
* configure.in (--enable-got): New option. Handle it.
* configure: Regenerate.
* config.in: Regenerate.
* emultempl/m68kelf.em: (got_handling_target_default): New shell
variable.
(GOT_HANDLING_TARGET_DEFAULT): New macro.
(GOT_HANDLING_DEFAULT): New macro. Initialize it from configure
option if one was given.
(got_handling): New static variable.
(elf_m68k_create_output_section_statements): New static function
implementing hook.
(PARSE_AND_LIST_PROLOGUE): Define shell variable.
(OPTION_GOT): New macro.
(PARSE_AND_LIST_LONGOPTS): Define shell variable. Specify
--got option.
(got): New linker option.
(PARSE_AND_LIST_OPTIONS): Define shell variable. Print help string
for --got option.
(PARSE_AND_LIST_ARGS_CASES): Define shell variable. Handle --got
option.
* ld.texinfo: Document --got=<type> option.
* gen-doc.texi: Add M68K.
* NEWS: Mention the new feature.
ld/testsuite/
* ld-m68k/got-12.s: New file.
* ld-m68k/got-13.s: New file.
* ld-m68k/got-14.s: New file.
* ld-m68k/got-15.s: New file.
* ld-m68k/got-34.s: New file.
* ld-m68k/got-35.s: New file.
* ld-m68k/got-single-12-ok.d: New dump test.
* ld-m68k/got-single-13-er.d: New dump test.
* ld-m68k/got-negative-14-ok.d: New dump test.
* ld-m68k/got-negative-15-er.d: New dump test.
* ld-m68k/got-negative-12-13-14-34-ok.d: New dump test.
* ld-m68k/got-negative-12-13-14-35-er.d: New dump test.
* ld-m68k/got-multigot-14-ok.d: New dump test.
* ld-m68k/got-multigot-15-er.d: New dump test.
* ld-m68k/got-multigot-12-13-14-34-35-ok.d: New dump test.
* ld-m68k/xgot-15.s: New source.
* ld-m68k/got-xgot-15-ok.d: New test.
* ld-m68k/got-xgot-12-13-14-15-34-35-ok.d: New test.
* ld-m68k/m68k.exp: Run new tests.
Nick Clifton [Wed, 21 May 2008 11:46:42 +0000 (11:46 +0000)]
PR 868
* dwarf2.c (_bfd_dwarf2_cleanup_debug_info): Free memory allocated
for filenames in function tables and variable tables.
Nick Clifton [Wed, 21 May 2008 10:59:12 +0000 (10:59 +0000)]
PR ld/6430
* ld.texinfo (--sort-common): Correct documentation to indicate
that sorting is performed by alignment, not size, biggest
alignment first.
Nick Clifton [Wed, 21 May 2008 08:20:17 +0000 (08:20 +0000)]
* config/tc-arm.c (arm_cpus): Add Faraday ARMv4 and ARMv5TE
compatible cores: fa526, fa626, fa626te, fa726te.
* doc/c-arm.texi (ARM Opts): Add -mcpu={fa526, fa626, fa626te,
fa726te} options.
Nick Clifton [Wed, 21 May 2008 08:09:38 +0000 (08:09 +0000)]
* ld.texinfo (ARM): Document --stub-group-size=N option.
Move description of --pic-veneer option into the ARM section.
* NEWS: Mention the support for long function calls.
Nick Clifton [Wed, 21 May 2008 07:50:55 +0000 (07:50 +0000)]
* cr16-dis.c (build_mask): Adjust the mask for 32-bit bcond.
Markus Deuling [Wed, 21 May 2008 04:19:44 +0000 (04:19 +0000)]
* score-tdep.c (score_print_insn): Get the current endianess from
disassemble_info instead of gdbarch_byte_order.
Nick Roberts [Wed, 21 May 2008 01:59:49 +0000 (01:59 +0000)]
Add @r{, annotation} marker to new-thread function index entry.
Alan Modra [Wed, 21 May 2008 00:00:05 +0000 (00:00 +0000)]
daily update
gdbadmin [Wed, 21 May 2008 00:00:02 +0000 (00:00 +0000)]
*** empty log message ***
Pedro Alves [Tue, 20 May 2008 22:21:19 +0000 (22:21 +0000)]
* frame.c (get_prev_frame_1): Build frame id before setting
this_frame->prev_p, not after.
Nick Roberts [Tue, 20 May 2008 21:11:04 +0000 (21:11 +0000)]
Test for new annotation.
Nick Roberts [Tue, 20 May 2008 21:10:31 +0000 (21:10 +0000)]
*** empty log message ***
Nick Roberts [Tue, 20 May 2008 21:09:37 +0000 (21:09 +0000)]
(Multi-threaded Apps): New node for new annotation.
Nick Roberts [Tue, 20 May 2008 21:06:56 +0000 (21:06 +0000)]
(thread.o): Add dependency on annotate.h.
Nick Roberts [Tue, 20 May 2008 21:05:07 +0000 (21:05 +0000)]
(add_thread_with_info): Use it.
Nick Roberts [Tue, 20 May 2008 21:04:13 +0000 (21:04 +0000)]
(annotate_new_thread): New extern.
Nick Roberts [Tue, 20 May 2008 21:03:34 +0000 (21:03 +0000)]
(annotate_new_thread): New function for new-thread
annotation.
Nick Roberts [Tue, 20 May 2008 21:02:27 +0000 (21:02 +0000)]
*** empty log message ***
Joel Brobecker [Tue, 20 May 2008 18:36:36 +0000 (18:36 +0000)]
* win32-nat.c (win32_wait): Block the control-c event while
waiting for a debug event.
Ian Lance Taylor [Tue, 20 May 2008 04:00:47 +0000 (04:00 +0000)]
* options.h (class General_options): Add -z relro.
* layout.cc (Layout::Layout): Initialize relro_segment_.
(Layout::add_output_section_data): Return the output section.
(Layout::make_output_section): Rcognize relro sections and mark
them appropriately.
(Layout::attach_allocated_section_to_segment): Put relro sections
in a PT_GNU_RELRO segment.
(Layout::create_initial_dynamic_sections): Mark the .dynamic
section as relro.
(Layout::segment_precedes): Sort PT_GNU_RELRO segments after
PT_TLS segments.
(Layout::linkonce_mapping): Map d.rel.ro.local to
.data.rel.ro.local.
(Layout::output_section_name): Us .data.rel.ro.local for any
section which begins with that.
* layout.h (class Layout): Update add_output_section_data
declaration. Add relro_segment_ field.
* output.cc (Output_section::Output_section): Initialize is_relro_
and is_relro_local_ fields.
(Output_segment::add_output_section): Group relro sections.
(Output_segment::is_first_section_relro): New function.
(Output_segment::maximum_alignment): If there is a relro section,
align the segment to the common page size.
(Output_segment::set_section_addresses): Track whether we are
looking at relro sections. If the last section is a relro
section, align to the common page size.
(Output_segment::set_section_list_addresses): Add in_relro
parameter. Change all callers. Align to the page size when
moving from relro to non-relro section.
(Output_segment::set_offset): Align memsz of a PT_GNU_RELRO
segment.
* output.h (class Output_section): Add is_relro_ and
is_relro_local_ fields.
(Output_section::is_relro): New function.
(Output_section::set_is_relro): New function.
(Output_section::is_relro_local): New function.
(Output_section::set_is_relro_local): New function.
(class Output_segment): Update declarations.
* i386.cc (Target_i386::got_section): Mark .got section as relro.
* sparc.cc (Target_sparc::got_section): Likewise.
* x86_64.cc (Target_x86_64::got_section): Likewise.
* testsuite/relro_test_main.cc: New file.
* testsuite/relro_test.cc: New file.
* testsuite/Makefile.am (check_PROGRAMS): Add relro_test.
(relro_test_SOURCES, relro_test_DEPENDENCIES): New variables.
(relro_test_LDFLAGS, relro_test_LDADD): New variables.
(relro_test.so, relro_test_pic.o): New targets.
* testsuite/Makefile.in: Rebuild.
Alan Modra [Tue, 20 May 2008 00:00:06 +0000 (00:00 +0000)]
daily update
gdbadmin [Tue, 20 May 2008 00:00:03 +0000 (00:00 +0000)]
*** empty log message ***
Pedro Alves [Mon, 19 May 2008 18:37:07 +0000 (18:37 +0000)]
* symtab.h (lookup_symbol_in_language): Update comment.
* symtab.c (lookup_symbol_aux_block): Update comment.
* ada-lang.c (ada_lookup_symbol_list): Update comment.
Ulrich Weigand [Mon, 19 May 2008 15:50:10 +0000 (15:50 +0000)]
* symtab.h (lookup_symbol_in_language): Remove SYMTAB parameter.
(lookup_symbol): Likewise.
* symtab.c (lookup_symbol_in_language): Remove SYMTAB parameter.
(lookup_symbol): Likewise.
(search_symbols): Update.
* linespec.c (find_methods, collect_methods): Update.
(add_matching_methods, add_constructors): Update.
(decode_compound, decode_dollar, decode_variable): Update.
(lookup_prefix_sym): Update.
(symbol_found): Remove SYM_SYMTAB parameter.
Use SYMBOL_SYMTAB (sym) instead.
* gdbtypes.c (lookup_typename): Update.
(lookup_struct, lookup_union, lookup_enum): Update.
(lookup_template_type): Update.
(check_typedef): Update.
* language.c (lang_bool_type): Update.
* mdebugread.c (parse_procedure): Update.
* mi/mi-cmd-stack.c (list_args_or_locals): Update.
* parse.c (write_dollar_variable): Update.
* printcmd.c (address_info): Update.
* source.c (select_source_symtab): Update.
* stack.c (print_frame_args, print_frame_arg_vars): Update.
* valops.c (find_function_in_inferior): Update.
(value_struct_elt_for_reference): Update.
* value.c (value_static_field, value_fn_field): Update.
* alpha-mdebug-tdep.c (find_proc_desc): Update.
* arm-tdep.c (arm_skip_prologue): Update.
* mt-tdep.c (mt_skip_prologue): Update.
* xstormy16-tdep.c (xstormy16_skip_prologue): Update.
* ada-lang.h (struct ada_symbol_info): Remove SYMTAB member.
* ada-lang.c (ada_add_block_symbols): Remove SYMTAB parameter.
(add_defn_to_vec): Likewise.
(ada_add_block_symbols): Likewise.
(lookup_cached_symbol, cache_symbol): Likewise.
(standard_lookup): Update.
(ada_lookup_symbol_list): Update.
* c-valprint.c (c_val_print): Update.
* cp-support.c (cp_lookup_rtti_type): Update.
* jv-lang.c (java_lookup_class, get_java_object_type): Update.
* objc-lang.c (lookup_struct_typedef, find_imps): Update.
* p-valprint.c (pascal_val_print): Update.
* scm-lang.c (scm_lookup_name): Update.
* c-exp.y: Update.
* f-exp.y: Update.
* jv-exp.y: Update.
* m2-exp.y: Update.
* objc-exp.y: Update.
* p-exp.y: Update.
Ulrich Weigand [Mon, 19 May 2008 15:49:14 +0000 (15:49 +0000)]
* language.h (struct language_defn): Remove SYMTAB parameter from
la_lookup_symbol_nonlocal callback function pointer.
* ada-lang.h (ada_lookup_encoded_symbol): Remove SYMTAB parameter.
(ada_lookup_encoded_symbol): Likewise.
* ada-lang.c (ada_lookup_encoded_symbol): Remove SYMTAB parameter.
Always call fixup_symbol_section.
(ada_lookup_symbol): Remove SYMTAB parameter.
(ada_lookup_symbol_nonlocal): Likewise.
* ada-exp.y (write_object_renaming): Update.
(find_primitive_type): Likewise.
* cp-support.h (cp_lookup_symbol_nonlocal): Remove SYMTAB parameter.
(cp_lookup_symbol_namespace): Likewise.
* cp-namespace.c (lookup_namespace_scope): Remove SYMTAB parameter.
(lookup_symbol_file): Likewise.
(lookup_possible_namespace_symbol): Likewise.
(cp_lookup_symbol_nonlocal): Likewise.
(cp_lookup_symbol_namespace): Likewise.
(cp_lookup_nested_type): Update.
* scm-valprint.c (scm_inferior_print): Update.
* valops.c (value_maybe_namespace_elt): Update.
* solist.h (struct target_so_ops): Remove SYMTAB parameter from
lookup_lib_global_symbol callback function pointer.
(solib_global_lookup): Remove SYMTAB parameter.
* solib.c (solib_global_lookup): Remove SYMTAB parameter.
* solib-svr4.c (elf_lookup_lib_symbol): Likewise.
* symtab.h (basic_lookup_symbol_nonlocal): Remove SYMTAB parameter.
(lookup_symbol_static): Likewise.
(lookup_symbol_global): Likewise.
(lookup_symbol_aux_block): Likewise.
(lookup_global_symbol_from_objfile): Likewise.
* symtab.c (lookup_symbol_aux): Remove SYMTAB parameter.
(lookup_symbol_aux_local): Likewise.
(lookup_symbol_aux_block): Likewise.
(lookup_symbol_aux_symtabs): Likewise.
(lookup_symbol_aux_psymtabs): Likewise.
(lookup_global_symbol_from_objfile): Likewise.
(basic_lookup_symbol_nonlocal): Likewise.
(lookup_symbol_static): Likewise.
(lookup_symbol_global): Likewise.
(lookup_symbol_in_language): Do not pass SYMTAB to lookup_symbol_aux.
Alan Modra [Mon, 19 May 2008 06:06:03 +0000 (06:06 +0000)]
PR 2995, PR 6473
* elf.c (_bfd_elf_make_section_from_shdr): Leave lma equal to
vma when all p_paddr fields are zero and there is more than
one PT_LOAD header.
gdbadmin [Mon, 19 May 2008 00:00:33 +0000 (00:00 +0000)]
*** empty log message ***
Alan Modra [Mon, 19 May 2008 00:00:05 +0000 (00:00 +0000)]
daily update
Alan Modra [Sun, 18 May 2008 00:00:06 +0000 (00:00 +0000)]
daily update
gdbadmin [Sun, 18 May 2008 00:00:03 +0000 (00:00 +0000)]
*** empty log message ***
Pedro Alves [Sat, 17 May 2008 11:28:30 +0000 (11:28 +0000)]
* remote.c (init_extended_remote_ops): Fix typo.
gdbadmin [Sat, 17 May 2008 00:00:33 +0000 (00:00 +0000)]
*** empty log message ***
Alan Modra [Sat, 17 May 2008 00:00:05 +0000 (00:00 +0000)]
daily update
Ian Lance Taylor [Fri, 16 May 2008 22:29:04 +0000 (22:29 +0000)]
* output.cc (Output_segment::add_output_section): Remove front
parameter.
* output.h (class Output_segment): Remove
add_initial_output_section and overloaded add_output_section.
Update declaration of remaining add_output_section.
* layout.cc (Layout::create_interp): Call add_output_section
rather than add_initial_output_section.
(Layout::finish_dynamic_section): Likewise.
Ian Lance Taylor [Fri, 16 May 2008 20:44:22 +0000 (20:44 +0000)]
* i386.cc (Target_i386::Relocate::relocate_tls): Set dynamic type
for TLS_GOTDESC and TLS_DESC_CALL. Only optimize TLS_LDO_32 if we
know the dynamic type.
* x86_64.cc (Target_x86_64::Relocate): Add saw_tls_block_reloc_
field. Initialize it in constructor.
(Target_x86_64::Relocate::relocate_tls): Record that we saw a TLS
block reloc for TLSGD, GOTPC32_TLSDESC, TLSDESC_CALL, and TLSLD.
Only optimize DTPOFF32 and DTPOFF64 if we have seen a TLS block
reloc.
Pedro Alves [Fri, 16 May 2008 15:54:08 +0000 (15:54 +0000)]
* NEWS: Mention new DICOS x86 target configuration.
Ian Lance Taylor [Fri, 16 May 2008 15:27:49 +0000 (15:27 +0000)]
* output.cc (Output_reloc::get_address): Change return type to
Elf_Addr.
* output.h (class Output_reloc): Update get_address declaration.
* x86_64.cc (Output_data_plt_x86_64::do_write): Use 64-bit types
for section addresses.
Ulrich Weigand [Fri, 16 May 2008 12:58:49 +0000 (12:58 +0000)]
gdb/
2008-05-15 Pedro Alves <pedro@codesourcery.com>
Ulrich Weigand <uweigand@de.ibm.com>
* minsyms.c (lookup_minimal_symbol_by_pc_name): New function.
* symtab.h (lookup_minimal_symbol_by_pc_name): Add prototype.
* symtab.c (fixup_section): Remove prototype. Add ADDR parameter;
use it instead of ginfo->value.address. Look up minimal symbol by
address and name. Assume OBJFILE is non-NULL.
(fixup_symbol_section): Ensure we always have an objfile to look
into. Extract and pass to fixup_section the symbol's address that
will match the minimal symbol's address.
(fixup_psymbol_section): Likewise.
(find_pc_sect_psymtab): Fall back to non-addrmap case when debugging
overlays and the addrmap returned the wrong section.
* dwarf2read.c (var_decode_location): Set SYMBOL_CLASS before
calling fixup_symbol_section.
gdb/testsuite/
2008-05-15 Pedro Alves <pedro@codesourcery.com>
* gdb.base/fixsection.exp: New file.
* gdb.base/fixsection0.c: New file.
* gdb.base/fixsection1.c: New file.
Ulrich Weigand [Fri, 16 May 2008 12:51:21 +0000 (12:51 +0000)]
* minsyms.c: Include "target.h".
(find_solib_trampoline_target): Handle minimal symbols pointing
to function descriptors as well.
* Makefile.in (minsyms.o): Update dependencies.
* ppc-linux-tdep.c (ppc64_standard_linkage): Rename to ...
(ppc64_standard_linkage1): ... this. Fix optional instructions.
(PPC64_STANDARD_LINKAGE_LEN): Rename to ...
(PPC64_STANDARD_LINKAGE1_LEN): ... this.
(ppc64_standard_linkage2, ppc64_standard_linkage3): New.
(PPC64_STANDARD_LINKAGE2_LEN, PPC64_STANDARD_LINKAGE3_LEN): New.
(ppc64_standard_linkage_target): Rename to ...
(ppc64_standard_linkage1_target): ... this.
(ppc64_standard_linkage2_target, ppc64_standard_linkage3_target): New.
(ppc64_skip_trampoline_code): Support three variants of standard
linkage stubs. Call find_solib_trampoline_target to handle
glink stubs.
Ulrich Weigand [Fri, 16 May 2008 12:49:47 +0000 (12:49 +0000)]
* ppc-linux-tdep.c (ppc_linux_init_abi): Do not install
ppc64_sysv_abi_adjust_breakpoint_address.
* ppc-sysv-tdep.c (ppc64_sysv_abi_adjust_breakpoint_address): Remove.
* ppc-tdep.h (ppc64_sysv_abi_adjust_breakpoint_address): Remove.
Ulrich Weigand [Fri, 16 May 2008 12:48:59 +0000 (12:48 +0000)]
* ppc-linux-tdep.c (ppc_linux_skip_trampoline_code): Remove.
(ppc_linux_init_abi): Install find_solib_trampoline_target instead
of ppc_linux_skip_trampoline_code.
Ulrich Weigand [Fri, 16 May 2008 12:48:08 +0000 (12:48 +0000)]
* gdb.base/annota1.exp: Accept printf@... in place of printf.
* gdb.base/annota3.exp: Likewise.
Daniel Jacobowitz [Fri, 16 May 2008 12:34:38 +0000 (12:34 +0000)]
* src-release (DEVO_SUPPORT): Add ChangeLog, MAINTAINERS,
README-maintainer-mode, lt~obsolete.m4, ltgcc.m4, depcomp,
mkdep, and compile. Update comments.
(ETC_SUPPORT): Add ChangeLog and update comments.
Daniel Jacobowitz [Fri, 16 May 2008 00:27:24 +0000 (00:27 +0000)]
* gdbarch.sh: Delete dwarf_reg_to_regnum.
* gdbarch.c, gdbarch.h: Regenerated.
* amd64-tdep.c, arm-tdep.c, h8300-tdep.c, hppa-linux-tdep.c,
hppa-tdep.c, i386-tdep.c, m32c-tdep.c, m68k-tdep.c, mips-tdep.c,
s390-tdep.c, xtensa-tdep.c: Do not set dwarf_reg_to_regnum.
* gdbint.texinfo (Target Conditionals): Delete entry for
gdbarch_dwarf_reg_to_regnum.
Alan Modra [Fri, 16 May 2008 00:00:05 +0000 (00:00 +0000)]
daily update
gdbadmin [Fri, 16 May 2008 00:00:03 +0000 (00:00 +0000)]
*** empty log message ***
Pedro Alves [Thu, 15 May 2008 20:11:48 +0000 (20:11 +0000)]
* linux-nat.c (trap_ptid): Delete.
(linux_nat_detach, linux_nat_wait, linux_nat_mourn_inferior):
Adjust.
* linux-thread-db.c (thread_db_wait): Adjust.
Joel Brobecker [Thu, 15 May 2008 19:24:46 +0000 (19:24 +0000)]
* linespec.c (decode_line_1): Fix a couple of comments.
Nick Clifton [Thu, 15 May 2008 17:00:15 +0000 (17:00 +0000)]
bfd/
* elf32-arm.c (THM2_MAX_FWD_BRANCH_OFFSET): Define.
(THM2_MAX_BWD_BRANCH_OFFSET): Define.
(ARM_MAX_FWD_BRANCH_OFFSET): Define.
(ARM_MAX_BWD_BRANCH_OFFSET): Define.
(THM_MAX_FWD_BRANCH_OFFSET): Define.
(THM_MAX_BWD_BRANCH_OFFSET): Define.
(arm_long_branch_stub): Define.
(arm_pic_long_branch_stub): Define.
(arm_thumb_v4t_long_branch_stub): Define.
(arm_thumb_thumb_long_branch_stub): Define.
(arm_thumb_arm_v4t_long_branch_stub): Define.
(STUB_SUFFIX): Define.
(elf32_arm_stub_type): Define.
(elf32_arm_stub_hash_entry): Define.
(elf32_arm_link_hash_entry): Add stub_cache field.
(arm_stub_hash_lookup): Define.
(elf32_arm_link_hash_table): Add stub_hash_table, stub_bfd,
add_stub_section, layout_sections_again, stub_group, bfd_count,
top_index, input_list fields.
(elf32_arm_link_hash_newfunc): Init new field.
(stub_hash_newfunc): New function.
(elf32_arm_link_hash_table_create): Init stub_hash_table.
(elf32_arm_hash_table_free): New function.
(arm_type_of_stub): New function.
(elf32_arm_stub_name): New function.
(elf32_arm_get_stub_entry): New function.
(elf32_arm_stub_add_mapping_symbol): New function.
(elf32_arm_add_stub): New function.
(arm_build_one_stub): New function.
(arm_size_one_stub): New function.
(elf32_arm_setup_section_lists): New function.
(elf32_arm_next_input_section): New function.
(group_sections): New function.
(elf32_arm_size_stubs): New function.
(elf32_arm_build_stubs): New function.
(bfd_elf32_arm_add_glue_sections_to_bfd): Skip stub sections.
(bfd_elf32_arm_process_before_allocation): No longer handle
R_ARM_CALL and R_ARM_THM_CALL.
(using_thumb_only): New function.
(elf32_arm_final_link_relocate): Redirect calls to stub if range
exceeds encoding capabilities.
(bfd_elf32_bfd_link_hash_table_free): Define.
* bfd-in.h (R_ARM_max): Fix value to 130.
(elf32_arm_setup_section_lists): Protype.
(elf32_arm_next_input_section): Protype.
(elf32_arm_size_stubs): Protype.
(elf32_arm_build_stubs): Protype.
ld/
* emultempl/armelf.em (build_section_lists): New function.
(stub_file): Define.
(need_laying_out): Define.
(group_size): Define.
(hook_stub_info): Define.
(hook_in_stub): New function.
(elf32_arm_add_stub_section): New function.
(gldarm_layout_sections_again): New function.
(gld${EMULATION_NAME}_finish): Replace arm_elf_finish(). Generate
stubs for long calls if needed.
(arm_elf_create_output_section_statements): create stub_file bfd.
(arm_for_each_input_file_wrapper): New function.
(arm_lang_for_each_input_file): New function.
(lang_for_each_input_file): Define.
(PARSE_AND_LIST_PROLOGUE): Add option token OPTION_STUBGROUP_SIZE.
(PARSE_AND_LIST_LONGOPTS): Add option stub-group-size.
(PARSE_AND_LIST_OPTIONS): Add option stub-group-size.
(PARSE_AND_LIST_ARGS_CASES): Add OPTION_STUBGROUP_SIZE case.
(LDEMUL_FINISH): Update to gld${EMULATION_NAME}_finish.
* ld/lang.c (print_input_statement): Skip if bfd has
BFD_LINKER_CREATED.
ld/testsuite
* ld-arm/arm-elf.exp (armelftests): Add farcall-arm-arm,
farcall-arm-arm-pic-veneer, farcall-arm-arm-be8 farcall-arm-thumb,
farcall-arm-thumb-blx, farcall-arm-thumb-pic-veneer,
farcall-arm-thumb-blx-pic-veneer, farcall-thumb-thumb,
farcall-thumb-thumb-pic-veneer, farcall-thumb-thumb-blx,
farcall-thumb-thumb-m, farcall-thumb-thumb-m-pic-veneer,
farcall-thumb-thumb-blx-pic-veneer, farcall-thumb-arm,
farcall-thumb-arm-pic-veneer, farcall-thumb-arm-blx,
farcall-thumb-arm-blx-pic-veneer.
Change thumb2-bl-as-thumb1-bad, thumb2-bl-bad.
* ld-arm/thumb2-bl-as-thumb1-bad.d: Reflects farcall stub
generation.
* ld-arm/thumb2-bl-bad.d: Likewise.
* ld-arm/thumb2-bl-as-thumb1-bad.s: Update comments.
* ld-arm/thumb2-bl-bad.s: Likewise.
Alan Modra [Thu, 15 May 2008 13:23:34 +0000 (13:23 +0000)]
* dbxread.c: Formatting.
(INTERNALIZE_SYMBOL): Init n_other.
(set_namestring): Take pointer to nlist arg rather than struct
copy. Update all callers.
Andreas Schwab [Thu, 15 May 2008 09:38:40 +0000 (09:38 +0000)]
(dwarf2loc.o): Remove $(addrmap_h).
(dwarf2read.o): Add $(addrmap_h).
gdbadmin [Thu, 15 May 2008 00:00:33 +0000 (00:00 +0000)]
*** empty log message ***
Alan Modra [Thu, 15 May 2008 00:00:05 +0000 (00:00 +0000)]
daily update
Ulrich Weigand [Wed, 14 May 2008 18:28:59 +0000 (18:28 +0000)]
* ppc-linux-tdep.c (ppc_linux_convert_from_func_ptr_addr): Rename ...
(ppc64_linux_convert_from_func_ptr_addr): ... to this. No longer try
to handle ppc32 PLT entries.
(ppc_linux_init_abi): Install ppc64_linux_convert_from_func_ptr_addr
only on ppc64.
Daniel Jacobowitz [Wed, 14 May 2008 18:14:34 +0000 (18:14 +0000)]
* elfread.c (elf_symtab_read): Create trampolines for @plt symbols.
* minsyms.c (lookup_minimal_symbol_by_pc_section_1): Renamed from
lookup_minimal_symbol_by_pc_section. Prefer trampolines if requested.
(lookup_minimal_symbol_by_pc_section): Use
lookup_minimal_symbol_by_pc_section_1.
(lookup_solib_trampoline_symbol_by_pc): Likewise.
Ulrich Weigand [Wed, 14 May 2008 16:00:38 +0000 (16:00 +0000)]
* elf32-ppc.c (ppc_elf_get_synthetic_symtab): Fix memset calls.
* elf64-ppc.c (ppc64_elf_get_synthetic_symtab): Likewise.
Alan Modra [Wed, 14 May 2008 06:45:42 +0000 (06:45 +0000)]
update dependencies
Joel Brobecker [Wed, 14 May 2008 04:23:03 +0000 (04:23 +0000)]
* findcmd.c: Add #include "gdb_stdint.h".
* Makefile.in (findcmd.o): Update dependencies.
Alan Modra [Wed, 14 May 2008 02:21:19 +0000 (02:21 +0000)]
* elf32-ppc.c (section_covers_vma): New function.
(ppc_elf_get_synthetic_symtab): New function.
(bfd_elf32_get_synthetic_symtab): Define.
* elf64-ppc.c (section_covers_vma): New function.
(ppc64_elf_get_synthetic_symtab): Generate sym@plt on glink branch
table entries, and __glink_PLTresolve on resolver stub.
(ppc64_elf_build_stubs): Rename __glink sym to __glink_PLTresolve.
gdbadmin [Wed, 14 May 2008 00:00:33 +0000 (00:00 +0000)]
*** empty log message ***
Alan Modra [Wed, 14 May 2008 00:00:05 +0000 (00:00 +0000)]
daily update
Nathan Froyd [Tue, 13 May 2008 21:17:18 +0000 (21:17 +0000)]
* gdb.base/watch_thread_num.exp: Don't run tests that require
watchpoints if the target doesn't support them.
gdbadmin [Tue, 13 May 2008 00:00:33 +0000 (00:00 +0000)]
*** empty log message ***
Alan Modra [Tue, 13 May 2008 00:00:05 +0000 (00:00 +0000)]
daily update
Doug Evans [Mon, 12 May 2008 17:25:28 +0000 (17:25 +0000)]
* lib/gdbserver-support.exp (find_gdbserver): Use $GDBSERVER if set.
Paolo Bonzini [Mon, 12 May 2008 16:25:40 +0000 (16:25 +0000)]
2008-05-12 Samuel Tardieu <sam@rfc1149.net>
Paolo Bonzini <bonzini@gnu.org>
PR ada/36001
* acx.m4: Add optional parameter to ACX_PROG_GNAT.
Alan Modra [Mon, 12 May 2008 12:47:47 +0000 (12:47 +0000)]
PR 6443
* elf32-ppc.c (MUST_BE_DYN_RELOC): Delete.
(must_be_dyn_reloc): New function.
(ppc_elf_check_relocs): Don't set DF_STATIC_TLS for tprel relocs
in pies.
(ppc_elf_tls_optimize): Optimise pies.
(ppc_elf_relocate_section): Use a section symbol rather than no
symbol if possible for LD->IE TLS sequence, but don't error if
we must use no symbol.
* elf64-ppc.c (MUST_BE_DYN_RELOC): As for elf32-ppc.c.
(must_be_dyn_reloc): Likewise.
(ppc64_elf_check_relocs): Likewise.
(ppc64_elf_tls_optimize): Likewise.
(ppc64_elf_relocate_section): Likewise.
Alan Modra [Mon, 12 May 2008 12:23:13 +0000 (12:23 +0000)]
* embedspu.sh: Test for presence of ._ea by looking at section
table rather than looking at relocs. Correct toe_addr substitution.
Alan Modra [Mon, 12 May 2008 12:22:53 +0000 (12:22 +0000)]
* elf32-spu.c (spu_elf_relocate_section): Rename is_ea to is_ea_sym.
Ian Lance Taylor [Mon, 12 May 2008 04:12:15 +0000 (04:12 +0000)]
* src-release (BINUTILS_SUPPORT_DIRS): Add elfcpp and gold.
gdbadmin [Mon, 12 May 2008 00:00:33 +0000 (00:00 +0000)]
*** empty log message ***
Alan Modra [Mon, 12 May 2008 00:00:06 +0000 (00:00 +0000)]
daily update
David S. Miller [Sun, 11 May 2008 22:43:53 +0000 (22:43 +0000)]
* sparc-linux-tdep.c (sparc32_linux_init_abi): Remove
long double size override, Linux does use 128-bit now.
David S. Miller [Sun, 11 May 2008 22:10:30 +0000 (22:10 +0000)]
* sparc-linux-tdep.c (PSR_SYSCALL): Define.
(sparc_linux_write_pc): New function.
(sparc32_linux_init_abi): Register it.
* sparc64-linux-tdep.c (TSTATE_SYSCALL): Define.
(sparc64_linux_write_pc): New function.
(sparc64_linux_init_abi): Register it.
David S. Miller [Sun, 11 May 2008 20:03:26 +0000 (20:03 +0000)]
* sparc-linux-tdep.c, sparc64-linux-tdep.c: Use
dwarf2_append_unwinders(), not dwarf2_frame_sniffer.
Ulrich Weigand [Sun, 11 May 2008 15:29:47 +0000 (15:29 +0000)]
* rs6000-tdep.c (rs6000_gdbarch_init): Set up info.target_desc
and info.tdep_info before calling gdbarch_init_osabi.
gdbadmin [Sun, 11 May 2008 00:00:34 +0000 (00:00 +0000)]
*** empty log message ***
Alan Modra [Sun, 11 May 2008 00:00:06 +0000 (00:00 +0000)]
daily update
Alan Modra [Sat, 10 May 2008 01:58:17 +0000 (01:58 +0000)]
* elfcore.h (elf_core_file_p): Warn about core truncation.
Alan Modra [Sat, 10 May 2008 00:00:06 +0000 (00:00 +0000)]
daily update
gdbadmin [Sat, 10 May 2008 00:00:04 +0000 (00:00 +0000)]
*** empty log message ***
Joel Brobecker [Fri, 9 May 2008 23:51:40 +0000 (23:51 +0000)]
* gdb.ada/assign_1.exp: New testcase.
Joel Brobecker [Fri, 9 May 2008 23:50:41 +0000 (23:50 +0000)]
* ada-lang.c (ada_evaluate_subexp) [BINOP_ASSIGN]: Do not force
the type of the right hand side of the assignment to the type
of the left hand side if the left hand side is a convenience
variable.
Catherine Moore [Fri, 9 May 2008 19:28:47 +0000 (19:28 +0000)]
gas/
* config/tc-mips.c (mips_frob_file): Don't match MIPS16 relocs
with non-MIPS16 relocs.
gas/testsuite/
* gas/mips/mips16-hilo-match.s: New test.
* gas/mips/mip16-hilo-match.d: New test output.Index: config/tc-mips.c
Ulrich Weigand [Fri, 9 May 2008 19:17:46 +0000 (19:17 +0000)]
* NEWS: Mention gdbserver bi-arch capability.
Doug Evans [Fri, 9 May 2008 18:51:07 +0000 (18:51 +0000)]
update for capitalization changes
Chao-ying Fu [Fri, 9 May 2008 18:18:22 +0000 (18:18 +0000)]
* config/tc-mips.c (md_begin): Use strncmp to compare TARGET_OS, in
case that some characters append at the end of the name.
(mips_ip): Likewise.
(s_change_sec): Likewise.
(md_section_align): Likewise.
Doug Evans [Fri, 9 May 2008 18:08:56 +0000 (18:08 +0000)]
remove cruft from previous checkin