OSDN Git Service

pf3gnuchains/pf3gnuchains4x.git
16 years agotoplevel/
David S. Miller [Tue, 15 Apr 2008 05:16:51 +0000 (05:16 +0000)]
toplevel/

* configure.ac: Add sparc*-*-* to gold supported targets.
* configure: Regenerate.

gold/

* sparc.cc: New file.
* Makefile.am (TARGETSOURCES): Add sparc.cc
(ALL_TARGETOBJS): Add sparc.$(OBJEXT)
* configure.tgt: Document targ_extra_size and
targ_extra_big_endian.  Add entries for sparc-* and
sparc64-*.
* configure.ac: Handle targ_extra_size and
targ_extra_big_endian.
* Makefile.in: Rebuild.
* configure: Likewise.
* po/POTFILES.in: Likewise.
* po/gold.pot: Likewise.

16 years ago * readelf.c (get_gnu_elf_note_type): Recognize NT_GNU_GOLD_VERSION.
David S. Miller [Tue, 15 Apr 2008 04:11:45 +0000 (04:11 +0000)]
* readelf.c (get_gnu_elf_note_type): Recognize NT_GNU_GOLD_VERSION.

16 years ago * layout.cc (Layout::Layout): Initialize sections_are_attached_.
Ian Lance Taylor [Tue, 15 Apr 2008 04:06:41 +0000 (04:06 +0000)]
* layout.cc (Layout::Layout): Initialize sections_are_attached_.
(Layout::get_output_section): Ignore SHF_WRITE and SHF_EXECINSTR
in the name/type/flags to section mapping.  Don't call
allocate_output_section.
(Layout::choose_output_section): Change parameter from adjust_name
to is_input_section.  Don't permit input sections after sections
are attached to segments.  Don't call allocate_output_section.
(Layout::layout_eh_frame): Call update_flags_for_input_section,
not write_enable_output_section.
(Layout::make_output_section): Don't push to
unattached_section_list_ nor call attach_to_segment.  Call
attach_section_to_segment if sections are attached.
(Layout::attach_sections_to_segments): New function.
(Layout::attach_section_to_segment): New function.
(Layout::attach_allocated_section_to_segment): Rename from
attach_to_segment.  Remove flags parameter.
(Layout::allocate_output_section): Remove function.
(Layout::write_enable_output_section): Remove function.
* layout.h (class Layout): Update for above changes.  Add new
field sections_are_attached_.
* output.h (Output_section::update_flags_for_input_section): New
function.
* output.cc (Output_section::add_input_section): Call
update_flags_for_input_section.
* gold.cc (queue_middle_tasks): Call attach_sections_to_segments.

16 years agodaily update
Alan Modra [Tue, 15 Apr 2008 00:00:05 +0000 (00:00 +0000)]
daily update

16 years ago * configure.in: Link with the PIC version of libiberty on
Thiemo Seufer [Mon, 14 Apr 2008 19:58:48 +0000 (19:58 +0000)]
* configure.in: Link with the PIC version of libiberty on
Linux/MIPS hosts.
* configure: Regenerate.

16 years agoppc e500mc support
Alan Modra [Mon, 14 Apr 2008 11:01:38 +0000 (11:01 +0000)]
ppc e500mc support

16 years ago * config.sub, config.guess: Update from upstream sources.
Ben Elliston [Mon, 14 Apr 2008 09:28:35 +0000 (09:28 +0000)]
* config.sub, config.guess: Update from upstream sources.

16 years agodaily update
Alan Modra [Mon, 14 Apr 2008 00:00:06 +0000 (00:00 +0000)]
daily update

16 years agodaily update
Alan Modra [Sun, 13 Apr 2008 00:00:05 +0000 (00:00 +0000)]
daily update

16 years ago * Makefile.tpl <gcc>: Error early unless at least GNU make 3.80.
Hans-Peter Nilsson [Sat, 12 Apr 2008 18:53:52 +0000 (18:53 +0000)]
* Makefile.tpl <gcc>: Error early unless at least GNU make 3.80.
* Makefile.in: Regenerate.

16 years ago * i386.cc (Target_i386::got_mod_index_entry): Restore code previously
Cary Coutant [Fri, 11 Apr 2008 23:37:24 +0000 (23:37 +0000)]
* i386.cc (Target_i386::got_mod_index_entry): Restore code previously
thought unnecessary.
* x86_64.cc (Target_x86_64::got_mod_index_entry): Likewise.

16 years ago * output.h (class Output_section_data): Remove inline definition
Ian Lance Taylor [Fri, 11 Apr 2008 22:55:13 +0000 (22:55 +0000)]
* output.h (class Output_section_data): Remove inline definition
of set_addralign.
* output.cc (Output_section_data::set_addralign): New function.

16 years ago2008-04-11 Cary Coutant <ccoutant@google.com>
Cary Coutant [Fri, 11 Apr 2008 21:24:30 +0000 (21:24 +0000)]
2008-04-11  Cary Coutant  <ccoutant@google.com>

Add support for TLS descriptors for i386 and x86_64.
* i386.cc (Target_i386::Relocate::tls_desc_gd_to_ie): New function.
(Target_i386::Relocate::tls_desc_gd_to_le): New function.
(Target_i386::Got_type): Add GOT_TYPE_TLS_NOFFSET and
GOT_TYPE_TLS_DESC.
(Target_i386::got_mod_index_entry): Remove unnecessary code.
(Target_i386::Scan::local): Implement R_386_TLS_GOTDESC and
R_386_TLS_DESC_CALL relocations.  Fix problem with initial-exec
relocations.
(Target_i386::Scan::global): Fix problem with GD-to-IE relaxation.
Implement R_386_TLS_GOTDESC and R_386_TLS_DESC_CALL relocations;
Fix problem with initial-exec relocations.
(Target_i386::Relocate::relocate_tls): Likewise.
(Target_i386::Relocate::tls_gd_to_ie): Fix problem with GD-to-IE
relaxation.
* output.cc (Output_data_dynamic::Dynamic_entry::write): Add
support for section-plus-offset dynamic table entries.
* output.h (Output_data_dynamic::add_section_plus_offset): New function.
(Output_data_dynamic::Dynamic_entry): Add support for
section-plus-offset dynamic table entries.
(Output_data_dynamic::Classification): Likewise.
(Output_data_dynamic::classification_): Renamed offset_.
* x86_64.cc (Target_x86_64::Relocate::tls_desc_gd_to_ie): New function.
(Target_x86_64::Relocate::tls_desc_gd_to_le): New function.
(Target_x86_64::make_plt_section): New function.
(Target_x86_64::reserve_tlsdesc_entries): New function.
(Output_data_plt_x86_64::Output_data_plt_x86_64): Add new parameter.
(Output_data_plt_x86_64::reserve_tlsdesc_entry): New function.
(Output_data_plt_x86_64::has_tlsdesc_entry): New function.
(Output_data_plt_x86_64::get_tlsdesc_got_offset): New function.
(Output_data_plt_x86_64::get_tlsdesc_plt_offset): New function.
(Output_data_plt_x86_64::tlsdesc_plt_entry): New field.
(Output_data_plt_x86_64::set_final_data_size): Move out of line;
add extra PLT entry for TLS descriptors.
(Output_data_plt_x86_64::got_): New field.
(Output_data_plt_x86_64::tlsdesc_got_offset_): New field.
(Output_data_plt_x86_64::Output_data_plt_x86_64): Initialize new
fields.
(Output_data_plt_x86_64::do_write): Write extra PLT entry for TLS
descriptors.
(Target_x86_64::make_plt_entry): Factor out make_plt_section.
(Target_x86_64::got_mod_index_entry): Remove unnecessary code.
(Target_x86_64::Scan::local): Implement R_386_TLS_GOTDESC and
R_386_TLS_DESC_CALL relocations.
(Target_x86_64::Scan::global): Likewise.
(Target_x86_64::do_finalize_sections): Add dynamic table entries
for TLS descriptors.
(Relocate::relocate_tls): Fix problem with GD-to-IE relaxation.
Implement R_386_TLS_GOTDESC and R_386_TLS_DESC_CALL relocations.
(Target_x86_64::Relocate::tls_gd_to_ie): Fix problem with
GD-to-IE relaxation.
* configure.ac: Export new conditional variables TLS_GNU2_DIALECT
and TLS_DESCRIPTORS.
* Makefile.in: Rebuild.
* configure: Rebuild.
* testsuite/Makefile.am (tls_shared_gd_to_ie_test): New target.
(tls_test_shared2.so): New target.
(tls_shared_gd_to_ie_test_SOURCES): New variable.
(tls_shared_gd_to_ie_test_DEPENDENCIES): New variable.
(tls_shared_gd_to_ie_test_LDFLAGS): New variable.
(tls_shared_gd_to_ie_test_LDADD): New variable.
(tls_shared_gnu2_gd_to_ie_test): New target.
(tls_test_gnu2.o, tls_test_file2_gnu2.o, tls_test_gnu2_shared2.so):
New targets.
(tls_shared_gnu2_gd_to_ie_test_SOURCES): New variable.
(ls_shared_gnu2_gd_to_ie_test_DEPENDENCIES): New variable.
(tls_shared_gnu2_gd_to_ie_test_LDFLAGS): New variable.
(tls_shared_gnu2_gd_to_ie_test_LDADD): New variable.
(tls_shared_gnu2_test): New target.
(tls_test_gnu2_shared.so): New target.
(tls_shared_gnu2_test_SOURCES): New variable.
(tls_shared_gnu2_test_DEPENDENCIES): New variable.
(tls_shared_gnu2_test_LDFLAGS): New variable.
(tls_shared_gnu2_test_LDADD): New variable.
* testsuite/Makefile.in: Rebuild.
* testsuite/Makefile.

16 years ago * testsuite/Makefile.am (justsyms_2r.o): Add dependency on
Ian Lance Taylor [Fri, 11 Apr 2008 20:44:52 +0000 (20:44 +0000)]
* testsuite/Makefile.am (justsyms_2r.o): Add dependency on
justsyms.t.
* testsuite/Makefile.in: Rebuild.

* testsuite/script_test_2a.cc (script_test_string_a): Make 8 bytes
long.
* testsuite/script_test_2.cc (main): Adjust test.

16 years ago * options.h (General_options): Add entries for '-Y' and
Ian Lance Taylor [Fri, 11 Apr 2008 20:28:34 +0000 (20:28 +0000)]
* options.h (General_options): Add entries for '-Y' and
'-relax'.
* options.cc (General_options:finalize): If -Y was used, add those
entries to the library path instead of the default "/lib" and
"/usr/lib".

16 years ago * sparc.h: New file
David S. Miller [Fri, 11 Apr 2008 19:13:08 +0000 (19:13 +0000)]
* sparc.h: New file
* elfcpp.h (SHN_BEFORE, SHN_AFTER): New enum constants.
(SHT_SPARC_GOTDATA, SHF_ORDERED, SHF_EXCLUDE,
STT_SPARC_REGISTER, DT_SPARC_REGISTER): Likewise.

16 years ago * testsuite/justsyms.t: Start at 0x100.
David S. Miller [Fri, 11 Apr 2008 18:49:40 +0000 (18:49 +0000)]
* testsuite/justsyms.t: Start at 0x100.
* testsuite/justsyms_1.cc: Adjust justsyms_string assertion.
* script_test_2b.cc (script_test_string_b): Make 8 bytes long.
* script_test_2.cc: Adjust string and section length checks.

16 years ago2008-04-11 H.J. Lu <hongjiu.lu@intel.com>
H.J. Lu [Fri, 11 Apr 2008 17:51:15 +0000 (17:51 +0000)]
2008-04-11  H.J. Lu  <hongjiu.lu@intel.com>

* gas/lns/lns-big-delta.d: Updated.
* gas/lns/lns-common-1.d: Likewise.
* gas/lns/lns-common-1-alt.d: Likewise.
* gas/lns/lns-duplicate.d: Likewise.

16 years ago * listing.c (print_timestamp): Use localtime rather than
Nick Clifton [Fri, 11 Apr 2008 09:06:02 +0000 (09:06 +0000)]
    * listing.c (print_timestamp): Use localtime rather than
        localtime_r since not all build environments provide the latter.

16 years ago * dwarf.c (display_debug_lines): Rename to
Nick Clifton [Fri, 11 Apr 2008 09:04:17 +0000 (09:04 +0000)]
    * dwarf.c (display_debug_lines): Rename to
        display_debug_lines_raw.
        (display_debug_lines_decoded): New function.  Displays the
        interpreted contents of a .debug_line section.
        (display_debug_lines): New function: Selects either a raw dump or
        a decoded dump (or both) as requested by the user.
        * dwarf.h (do_debug_lines_decoded): New extern.
        * readelf.c: Add support for -wL or --debug-dump=decodedline
        option to display the decoded contents of a .debug_line section.
        * doc/binutils.texi: Document the new option.
        * NEWS: Mention the new feature.

16 years agodaily update
Alan Modra [Fri, 11 Apr 2008 00:00:05 +0000 (00:00 +0000)]
daily update

16 years agogas/
H.J. Lu [Thu, 10 Apr 2008 17:53:40 +0000 (17:53 +0000)]
gas/

2008-04-10  H.J. Lu  <hongjiu.lu@intel.com>

* NEWS: Mention -msse-check=[none|error|warning].

* config/tc-i386.c (sse_check): New.
(OPTION_MSSE_CHECK): Likewise.
(md_assemble): Check SSE instructions if needed.
(md_longopts): Add -msse-check.
(md_parse_option): Handle OPTION_MSSE_CHECK.
(md_show_usage): Show -msse-check=[none|error|warning].

* doc/c-i386.texi: Document -msse-check=[none|error|warning].

gas/testsuite/

2008-04-10  H.J. Lu  <hongjiu.lu@intel.com>

* gas/i386/i386.exp: Run sse-check, sse-check-warn,
sse-check-error, x86-64-sse-check, x86-64-sse-check-warn and
x86-64-sse-check-error.

* gas/i386/sse-check.d: New.
* gas/i386/sse-check.s: Likewise.
* gas/i386/sse-check-error.l: Likewise.
* gas/i386/sse-check-error.s: Likewise.
* gas/i386/sse-check-warn.d: Likewise.
* gas/i386/sse-check-warn.e: Likewise.
* gas/i386/x86-64-sse-check.d: Likewise.
* gas/i386/x86-64-sse-check-error.l: Likewise.
* gas/i386/x86-64-sse-check-error.s: Likewise.
* gas/i386/x86-64-sse-check-warn.d: Likewise.

16 years ago2008-04-10 Andreas Krebbel <krebbel1@de.ibm.com>
Andreas Krebbel [Thu, 10 Apr 2008 13:36:43 +0000 (13:36 +0000)]
2008-04-10  Andreas Krebbel  <krebbel1@de.ibm.com>

* s390-dis.c (init_disasm): Evaluate disassembler_options.
(print_s390_disassembler_options): New function.
* disassemble.c (disassembler_usage): Invoke
print_s390_disassembler_options.

2008-04-10  Andreas Krebbel  <krebbel1@de.ibm.com>

* dis-asm.h (print_s390_disassembler_options):
Prototype added.

16 years ago2008-04-10 Andreas Krebbel <krebbel1@de.ibm.com>
Andreas Krebbel [Thu, 10 Apr 2008 13:05:07 +0000 (13:05 +0000)]
2008-04-10  Andreas Krebbel  <krebbel1@de.ibm.com>

* s390-mkopc.c (insertExpandedMnemonic): Expand string sizes
of local variables used for mnemonic parsing: prefix, suffix and
number.

16 years ago * listing.c: Add -ag listing flag to show general information in
Nick Clifton [Thu, 10 Apr 2008 12:45:18 +0000 (12:45 +0000)]
    * listing.c: Add -ag listing flag to show general information in
        listings such as gas version, passed options, and time stamp.
        (listing_general_info): New function.
        (print_options): New function.
        (print_single_option): New function.
        (print_timestamp): New function.
        (MAX_DATELEN): Define.
        (listing_print): Add call to listing_general_info.
        * listing.h (LISTING_GENERAL): Define.
        (listing_print): Add new parameter.
        * as.c (show_usage): Print new switch.
        (parse_args): Parse new switch.
        (main): Pass command line on to listing_print.
        * NEWS: Mention this new feature.
        * doc/as.texinfo: Document the new sub-option.

        * gas/all/gas.exp: Check the performance of the -ag command line
        switch.

16 years ago2008-04-10 Andreas Krebbel <krebbel1@de.ibm.com>
Andreas Krebbel [Thu, 10 Apr 2008 08:59:46 +0000 (08:59 +0000)]
2008-04-10  Andreas Krebbel  <krebbel1@de.ibm.com>

* s390-mkopc.c (s390_cond_ext_format): Add back the mnemonic
extensions for conditional jumps (o, p, m, nz, z, nm, np, no).
(s390_crb_extensions): New extensions table.
(insertExpandedMnemonic): Handle '$' tag.
* s390-opc.txt: Remove conditional jump variants which can now
be expanded automatically.
Replace '*' tag with '$' in the compare and branch instructions.

2008-04-10  Andreas Krebbel  <krebbel1@de.ibm.com>

* gas/s390/zarch-z10.d: Map the compare and branch variants
with odd condition code mask to version with an even mask.

16 years ago PR gold/5996
Ian Lance Taylor [Thu, 10 Apr 2008 01:02:46 +0000 (01:02 +0000)]
PR gold/5996
* script-sections.cc (Sections_element::allocate_to_segment): Add
orphan parameter.
(Output_section_definition::allocate_to_segment): Likewise.
(Orphan_output_section::allocate_to_segment): Likewise.
(Script_sections::attach_sections_using_phdrs_clause): Don't
propagate non-PT_LOAD segments to orphan sections.
* testsuite/Makefile.am (script_test_3.stdout): Generate using
readelf rather than objdump.
* testsuite/script_test_3.sh: Adjust accordingly.  Test that
.interp section and PT_INTERP segment are the same size.
* testsuite/Makefile.in: Rebuild.

16 years agoFix typo in comment in last commit.
Ian Lance Taylor [Thu, 10 Apr 2008 00:58:58 +0000 (00:58 +0000)]
Fix typo in comment in last commit.

16 years agodaily update
Alan Modra [Thu, 10 Apr 2008 00:00:05 +0000 (00:00 +0000)]
daily update

16 years ago * symtab.cc (Symbol_table::add_from_dynobj): Only look for weak
Ian Lance Taylor [Wed, 9 Apr 2008 22:45:08 +0000 (22:45 +0000)]
* symtab.cc (Symbol_table::add_from_dynobj): Only look for weak
aliases for symbols defined in the same object.
* testsuite/Makefile.am (check_PROGRAMS): Add weak_alias_test.
(weak_alias_test_SOURCES): New variable.
(weak_alias_test_DEPENDENCIES): New variable.
(weak_alias_test_LDFLAGS): New variable.
(weak_alias_test_LDADD): New variable.
(weak_alias_test_1_pic.o, weak_alias_test_1.so): New targets.
(weak_alias_test_2_pic.o, weak_alias_test_2.so): New targets.
(weak_alias_test_3.o): New target.
(weak_alias_test_4_pic.o, weak_alias_test_4.so): New targets.
* testsuite/weak_alias_test_main.cc: New file.
* testsuite/weak_alias_test_1.cc: New file.
* testsuite/weak_alias_test_2.cc: New file.
* testsuite/weak_alias_test_3.cc: New file.

16 years ago * options.h (class General_options): Add --noinhibit-exec option.
Ian Lance Taylor [Wed, 9 Apr 2008 01:19:09 +0000 (01:19 +0000)]
* options.h (class General_options): Add --noinhibit-exec option.
* main.cc (main): Check --noinhibit-exec.

16 years ago * options.h (class General_options): Define --wrap as a special
Ian Lance Taylor [Wed, 9 Apr 2008 00:48:13 +0000 (00:48 +0000)]
* options.h (class General_options): Define --wrap as a special
option.  Add wrap_symbols_ field.
(General_options::any_wrap_symbols): New function.
(General_options::is_wrap_symbol): New function.
* options.cc (General_options::parse_wrap): New function.
(General_options::General_options): Initialize wrap_symbols_.
* symtab.cc (Symbol_table::wrap_symbol): New function.
(Symbol_table::add_from_object): Handle --wrap.
* symtab.h (class Symbol_table): Declare wrap_symbol.
* target.h (Target::wrap_char): New function.
(Target::Target_info): Add wrap_char field.
* i386.cc (Target_i386::i386_info): Initialize wrap_char.
* x86_64.cc (Target_x86_64::x86_64_info): Likewise.
* testsuite/testfile.cc (Target_test::test_target_info):
Likewise.

16 years ago * errors.cc (Errors::undefined_symbol): Mention symbol version if
Ian Lance Taylor [Wed, 9 Apr 2008 00:33:48 +0000 (00:33 +0000)]
* errors.cc (Errors::undefined_symbol): Mention symbol version if
there is one.

16 years ago * layout.h (class Layout): Add added_eh_frame_data_ field.
Ian Lance Taylor [Wed, 9 Apr 2008 00:26:48 +0000 (00:26 +0000)]
* layout.h (class Layout): Add added_eh_frame_data_ field.
* layout.cc (Layout::Layout): Initialize new field.
(Layout::layout_eh_frame): Don't add eh_frame_data_ to .eh_frame
output section until we find a section we merged successfully.
* object.cc (Sized_relobj::check_eh_frame_flags): Don't require
that the size be non-zero.

16 years agodaily update
Alan Modra [Wed, 9 Apr 2008 00:00:05 +0000 (00:00 +0000)]
daily update

16 years ago * merge.cc (Object_merge_map::get_output_offset): Remove inline
Ian Lance Taylor [Tue, 8 Apr 2008 18:46:43 +0000 (18:46 +0000)]
* merge.cc (Object_merge_map::get_output_offset): Remove inline
qualifier.

16 years ago * configure.ac: Export new conditional variable HAVE_ZLIB.
Ian Lance Taylor [Tue, 8 Apr 2008 14:33:35 +0000 (14:33 +0000)]
* configure.ac: Export new conditional variable HAVE_ZLIB.
* testsuite/Makefile.am (flagstest_o_specialfile): Condition
on HAVE_ZLIB.
(flagstest_o_specialfile_and_compress_debug_sections): Likewise.
* configure, Makefile.in, testsuite/Makefile.in: Rebuild.

16 years ago * version.cc (version_string): Set to "1.5".
Ian Lance Taylor [Tue, 8 Apr 2008 14:29:55 +0000 (14:29 +0000)]
* version.cc (version_string): Set to "1.5".

16 years agosim-cr16.h: New file. Added for cr16 target.
M R Swami Reddy [Tue, 8 Apr 2008 08:33:51 +0000 (08:33 +0000)]
sim-cr16.h: New file. Added for cr16 target.

16 years ago * po/POTFILES.in: Regenerate.
Alan Modra [Tue, 8 Apr 2008 06:12:32 +0000 (06:12 +0000)]
* po/POTFILES.in: Regenerate.

16 years ago * dwarf.c: Remove trailing whitespace throughout file.
Alan Modra [Tue, 8 Apr 2008 05:53:28 +0000 (05:53 +0000)]
* dwarf.c: Remove trailing whitespace throughout file.

16 years ago * elf32-spu.c (spu_elf_build_stubs): Correct error message.
Alan Modra [Tue, 8 Apr 2008 05:48:28 +0000 (05:48 +0000)]
* elf32-spu.c (spu_elf_build_stubs): Correct error message.
(mark_functions_via_relocs): Remove premature init of symtab_hdr.
(collect_overlays): Commment typo fix.

16 years ago * elflink.c (bfd_elf_size_dynamic_sections): Ignore GNU-stack note
Alan Modra [Tue, 8 Apr 2008 05:41:19 +0000 (05:41 +0000)]
* elflink.c (bfd_elf_size_dynamic_sections): Ignore GNU-stack note
in EXEC_P bfds.

16 years ago * x86_64.cc (Target_x86_64::Scan): Change from struct to class.
Ian Lance Taylor [Tue, 8 Apr 2008 04:09:59 +0000 (04:09 +0000)]
* x86_64.cc (Target_x86_64::Scan): Change from struct to class.
Add issued_non_pic_error_ field.  Declare check_non_pic.
(Target_x86_64::Scan::check_non_pic): New function.
(Target_x86_64::Scan::local): Call check_non_pic as appropriate.
(Target_x86_64::Scan::global): Likewise.

16 years agobfd/
Alan Modra [Tue, 8 Apr 2008 03:26:54 +0000 (03:26 +0000)]
bfd/
* elf32-spu.c: Include libiberty.h.
(struct spu_link_hash_table): Add local_stire, overlay_fixed, reserved,
non_ovly_stub, spu_elf_load_ovl_mgr, spu_elf_open_overlay_script,
spu_elf_relink, auto_overlay fields.
(AUTO_OVERLAY, AUTO_RELINK, OVERLAY_RODATA): Define.
(needs_ovl_stub): Flip test so that call to non-function warning
is emitted during relocate_section rather than earlier.
(spu_elf_check_vma): Stash --auto-overlay parameters, and clear
auto_overlay if no section exceeds local store.
(struct call_info): Add count, max_depth, is_pasted fields.
(struct function_info): Add rodata, last_caller, call_count,
depth, new visit flags.
(insert_callee): Increment call count.
(copy_callee): New function.
(mark_functions_via_relocs): Investigate all reloc types to count
possible function pointer stubs for --auto-overlay.  Track
last_caller and increment function call_count.
(pasted_function): Insert a "call" into call info for pasted section.
(remove_cycles): Track max depth of calls.  Don't emit call graph
pruning warning for --auto-overlay.
(build_call_tree): Don't transfer_calls for --auto-overlay.
Adjust remove_cycles call.
(sort_calls, sort_lib, sort_bfds): New functions.
(struct _mos_param, struct _uos_param, struct _cl_param): New.
(mark_overlay_section, unmark_overlay_section): New functions.
(collect_lib_sectios, auto_ovl_lib_functions): New functions.
(collect_overlays, find_pasted_call): New functions.
(sum_stack): Deal with is_pasted "calls".  Exit before printing
when --auto-overlay.
(spu_elf_auto_overlay): New function.
(spu_elf_final_link): Call spu_elf_auto_overlay.
* elf32-spu.h (spu_elf_check_vma): Update prototype.
ld/
* emultempl/spuelf.em (auto_overlay, auto_overlay_file,
auto_overlay_fixed, auto_overlay_reserved, my_argc, my_argv): New vars.
(spu_before_allocation): Warn on --auto-overlay and existing overlays.
(struct tflist, clean_tmp): Move.
(new_tmp_file): New function, extracted from..
(embedded_spu_file): ..here.
(spu_elf_open_overlay_script, spu_elf_relink): New function.
(gld${EMULATION_NAME}_finish): Pass a bunch of --auto-overlay params.
Warn on --auto-overlay and zero local store.
(gld${EMULATION_NAME}_choose_target): New function to stash argv.
(OPTION_SPU_AUTO_OVERLAY, OPTION_SPU_AUTO_RELINK,
OPTION_SPU_OVERLAY_RODATA, OPTION_SPU_FIXED_SPACE,
OPTION_SPU_RESERVED_SPACE, OPTION_SPU_NO_AUTO_OVERLAY): Define.
(PARSE_AND_LIST_LONGOPTS): Add entries for new options.
(PARSE_AND_LIST_OPTIONS): Likewise.
(PARSE_AND_LIST_ARGS_CASES): Likewise.
(LDEMUL_CHOOSE_TARGET): Define.

16 years agodaily update
Alan Modra [Tue, 8 Apr 2008 00:00:05 +0000 (00:00 +0000)]
daily update

16 years ago * dwarf2dbg.c (dwarf2_emit_insn): Simplify test before dwarf2_where
Alan Modra [Mon, 7 Apr 2008 23:56:18 +0000 (23:56 +0000)]
* dwarf2dbg.c (dwarf2_emit_insn): Simplify test before dwarf2_where
call.  Delete out of date comment.
(dwarf2_consume_line_info): Always clear dwarf2_loc_directive_seen.
(dwarf2_emit_label): Don't emit unless there has been a previous
.file or we are outputting assembler generated debug.
dwarf2_consume_line_info after emitting line info, not before.
(out_debug_info): Simplify files_in_use test.

16 years ago * ld-spu/ovl2.s: Extend to test jump table references and
Alan Modra [Mon, 7 Apr 2008 23:37:25 +0000 (23:37 +0000)]
* ld-spu/ovl2.s: Extend to test jump table references and
absolute _SPUEAR_ syms.
* ld-spu/ovl2.d: Update.

16 years ago * output.cc (Output_reloc<SHT_REL>::local_section_offset): Add
Ian Lance Taylor [Mon, 7 Apr 2008 22:46:17 +0000 (22:46 +0000)]
* output.cc (Output_reloc<SHT_REL>::local_section_offset): Add
addend parameter.  Change caller.  Handle merge sections.
(Output_reloc<SHT_REL>::symbol_value): Change parameter type from
Address to Addend.  Don't add in the result of
local_section_offset, pass down the addend and use the returned
value.
* output.h (class Output_reloc<SHT_REL>): Add Addend typedef.
Update declarations of local_section_offset and symbol_value.
* testsuite/two_file_test_1.cc (t18): New function.
* testsuite/two_file_test_2.cc (f18): New function.
* testsuite/two_file_test_main.cc (main): Call t18.
* testsuite/two_file_test.h (t18, f18): Declare.

16 years ago * configure.ac: Don't test for objdump, c++filt, or readelf.
Ian Lance Taylor [Mon, 7 Apr 2008 22:16:03 +0000 (22:16 +0000)]
* configure.ac: Don't test for objdump, c++filt, or readelf.
* testsuite/Makefile.am: Remove READELF and OBJDUMP_AND_CPPFILT
conditionals.
(TEST_READELF): New variable.
(TEST_OBJDUMP, TEST_CXXFILT, TEST_STRIP): New variables.
(check_PROGRAMS): Add two_file_strip_test.
(two_file_strip_test): New target.
(check_PROGRAMS): Add two_file_same_shared_strip_test.
(two_file_same_shared_strip_test_SOURCES): New variable.
(two_file_same_shared_strip_test_DEPENDENCIES): New variable.
(two_file_same_shared_strip_test_LDFLAGS): New variable.
(two_file_same_shared_strip_test_LDADD): New variable.
(two_file_shared_strip.so): New target.
(ver_test_2.syms, ver_test_4.syms): Use TEST_READELF.
(ver_test_5.syms, ver_test_7.syms): Likewise.
(ver_matching_test.stdout): Use TEST_OBJDUMP and TEST_CXXFILT.
(strip_test_3.stdout): Use TEST_OBJDUMP.
* configure, Makefile.in, testsuite/Makefile.in: Rebuild.

16 years ago * Makefile.def: check-gold depends upon all-binutils.
Ian Lance Taylor [Mon, 7 Apr 2008 21:58:34 +0000 (21:58 +0000)]
* Makefile.def: check-gold depends upon all-binutils.
* Makefile.in: Regenerate.

16 years ago2008-04-07 H.J. Lu <hongjiu.lu@intel.com>
H.J. Lu [Mon, 7 Apr 2008 21:29:50 +0000 (21:29 +0000)]
2008-04-07  H.J. Lu  <hongjiu.lu@intel.com>

* i386-dis.c (PREFIX_VEX_38XX): Add a tab.
(PREFIX_VEX_3AXX): Likewis.

16 years ago2008-04-07 H.J. Lu <hongjiu.lu@intel.com>
H.J. Lu [Mon, 7 Apr 2008 17:35:12 +0000 (17:35 +0000)]
2008-04-07  H.J. Lu  <hongjiu.lu@intel.com>

* i386-opc.tbl: Remove 4 extra blank lines.

16 years agoAdd the missing ymm test in the last checkin.
H.J. Lu [Mon, 7 Apr 2008 14:38:25 +0000 (14:38 +0000)]
Add the missing ymm test in the last checkin.

16 years ago * elf32-spu.c (allocate_spuear_stubs): Ensure _SPUEAR_ symbol
Alan Modra [Mon, 7 Apr 2008 13:07:23 +0000 (13:07 +0000)]
* elf32-spu.c (allocate_spuear_stubs): Ensure _SPUEAR_ symbol
is defined in overlay section before creating a stub.
(build_spuear_stubs): Likewise.
(spu_elf_size_stubs, spu_elf_build_stubs): Adjust calls.

16 years agogas/
H.J. Lu [Mon, 7 Apr 2008 13:07:16 +0000 (13:07 +0000)]
gas/

2008-04-07  H.J. Lu  <hongjiu.lu@intel.com>

* config/tc-i386.c (parse_real_register): Return AVX register
only if AVX is enabled.

gas/testsuite/

2008-04-07  H.J. Lu  <hongjiu.lu@intel.com>

* gas/i386/att-regs.s: Add AVX register test.
* gas/i386/intel-regs.s: Likewise.

* gas/i386/att-regs.d: Updated.
* gas/i386/intel-regs.d: Likewise.

16 years agocorrectly regenerate configure
Nick Clifton [Mon, 7 Apr 2008 08:08:35 +0000 (08:08 +0000)]
correctly regenerate configure

16 years agooops - omitted from previous delta
Nick Clifton [Mon, 7 Apr 2008 08:02:21 +0000 (08:02 +0000)]
oops - omitted from previous delta

16 years ago PR gas/6043
Kaz Kojima [Mon, 7 Apr 2008 02:55:08 +0000 (02:55 +0000)]
PR gas/6043
* config/tc-sh64.c (shmedia_md_pcrel_from_section): Use
md_pcrel_from_section for BFD_RELOC_64 and BFD_RELOC_64_PCREL.

* gas/sh/sh64/eh-1.d: New.
* gas/sh/sh64/eh-1.d: Likewise.

16 years agodaily update
Alan Modra [Mon, 7 Apr 2008 00:00:05 +0000 (00:00 +0000)]
daily update

16 years agodaily update
Alan Modra [Sun, 6 Apr 2008 00:00:07 +0000 (00:00 +0000)]
daily update

16 years ago2008-04-04 Adrian Bunk <bunk@stusta.de>
Bob Wilson [Fri, 4 Apr 2008 23:25:49 +0000 (23:25 +0000)]
2008-04-04  Adrian Bunk  <bunk@stusta.de>
    Bob Wilson  <bob.wilson@acm.org>

* config/tc-xtensa.c (xg_apply_fix_value): Check return code from
call to decode_reloc.

16 years agodaily update
Alan Modra [Fri, 4 Apr 2008 23:00:06 +0000 (23:00 +0000)]
daily update

16 years ago2008-04-04 Cary Coutant <ccoutant@google.com>
Cary Coutant [Fri, 4 Apr 2008 17:24:47 +0000 (17:24 +0000)]
2008-04-04  Cary Coutant  <ccoutant@google.com>

* symtab.h (Symbol::is_weak_undefined): New function.
(Symbol::is_strong_undefined): New function.
(Symbol::is_absolute): New function.
(Symbol::needs_plt_entry): Exclude weak undefined symbols.
(Symbol::needs_dynamic_reloc): Exclude weak undefined and
absolute symbols.
* testsuite/Makefile.am (check_PROGRAMS): Add weak_undef_test.
(weak_undef_test): New target.
* testsuite/Makefile.in: Rebuild.
* testsuite/weak_undef_file1.cc: New file.
* testsuite/weak_undef_file2.cc: New file.
* testsuite/weak_undef_test.cc: New file.

16 years agogas/
H.J. Lu [Fri, 4 Apr 2008 16:34:23 +0000 (16:34 +0000)]
gas/

2008-04-04  H.J. Lu  <hongjiu.lu@intel.com>

* NEWS: Mention XSAVE.  Change CLMUL to PCLMUL.

* config/tc-i386.c (cpu_arch): Add .pclmul.
(md_show_usage): Replace clmul with pclmul.
* doc/c-i386.texi: Likewise.

gas/testsuite/

2008-04-04  H.J. Lu  <hongjiu.lu@intel.com>

* gas/i386/arch-10-1.l: Replace CLMUL with PCLMUL.
* 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.s: Likewise.
* gas/i386/clmul-intel.d: Likewise.
* gas/i386/clmul.d: Likewise.
* gas/i386/clmul.s: Likewise.
* gas/i386/x86-64-arch-2.s: Likewise.
* gas/i386/x86-64-clmul-intel.d: Likewise.
* gas/i386/x86-64-clmul.d: Likewise.
* gas/i386/x86-64-clmul.s: Likewise.

* gas/i386/arch-10.d: Replace clmul with pclmul.
* gas/i386/x86-64-arch-2.d: Likewise.

opcodes/

2008-04-04  H.J. Lu  <hongjiu.lu@intel.com>

* i386-gen.c (cpu_flag_init): Replace CPU_CLMUL_FLAGS/CpuCLMUL
with CPU_PCLMUL_FLAGS/CpuPCLMUL.
(cpu_flags): Replace CpuCLMUL with CpuPCLMUL.
* i386-opc.tbl: Likewise.

* i386-opc.h (CpuCLMUL): Renamed to ...
(CpuPCLMUL): This.
(CpuFMA): Updated.
(i386_cpu_flags): Replace cpuclmul with cpupclmul.

* i386-init.h: Regenerated.

16 years ago PR binutils/4334
Nick Clifton [Fri, 4 Apr 2008 11:45:58 +0000 (11:45 +0000)]
    PR binutils/4334
        * acx.m4 (ACX_CHECK_CYGWIN_CAT_WORKS): New macro to check that
        cygwin builds are not running in textmode.

        * configure.ac: Run ACX_CHECK_CYGWIN_CAT_WORKS for cygwin hosted
        builds.
        * configure: Regenerate.

16 years agoPR other/35151
Nick Clifton [Fri, 4 Apr 2008 11:16:33 +0000 (11:16 +0000)]
PR other/35151
        * configure.ac: Combine rules for mingw32 and mingw64.
        * configure: Regenerate.

16 years agoPR other/35151
Nick Clifton [Fri, 4 Apr 2008 11:15:58 +0000 (11:15 +0000)]
PR other/35151
       * configure.ac: Combine rules for mingw32 and mingw64.
       * configure: Regenerate.

16 years ago* po/sk.po: Updated Slovak translation.
Nick Clifton [Fri, 4 Apr 2008 07:02:29 +0000 (07:02 +0000)]
* po/sk.po: Updated Slovak translation.

16 years ago * elfcpp_swap.h (Swap_unaligned<64, true>::writeval): Correct
Ian Lance Taylor [Thu, 3 Apr 2008 23:33:20 +0000 (23:33 +0000)]
* elfcpp_swap.h (Swap_unaligned<64, true>::writeval): Correct
byte order.

16 years agodaily update
Alan Modra [Thu, 3 Apr 2008 23:00:05 +0000 (23:00 +0000)]
daily update

16 years agoKai Tietz <kai.tietz@onevision.com>
Kai Tietz [Thu, 3 Apr 2008 14:44:55 +0000 (14:44 +0000)]
Kai Tietz  <kai.tietz@onevision.com>

PR ld/6026
* pe-dll.c (make_head): Fix iat and thunk addend offset.

16 years ago * compressed_output.h (class Output_compressed_section): Use
Ian Lance Taylor [Thu, 3 Apr 2008 14:18:37 +0000 (14:18 +0000)]
* compressed_output.h (class Output_compressed_section): Use
unsigned buffer.
* compressed_output.cc (zlib_compress): Use unsigned buffers,
add zlib header.
(zlib_compressed_suffix): Removed.
(Output_compressed_section::set_final_data_size): Use unsigned
buffers.
* testsuite/Makefile.am (flagstest_compress_debug_sections):
Fix linker invocation.
(flagstest_o_specialfile_and_compress_debug_sections):
Likewise.
* testsuite/Makefile.in: Regenerated.

16 years agobinutils/
H.J. Lu [Thu, 3 Apr 2008 14:03:21 +0000 (14:03 +0000)]
binutils/

2008-04-03  H.J. Lu  <hongjiu.lu@intel.com>

* dwarf.c (dwarf_regnames_i386): Add AVX registers.
(dwarf_regnames_x86_64): Likewise.

gas/

2008-04-03  H.J. Lu  <hongjiu.lu@intel.com>

* NEWS: Mention AES, CLMUL, AVX/FMA and -msse2avx.

* doc/c-i386.texi: Add avx, aes, clmul and fma to -march=.
Document -msse2avx, .avx, .aes, .clmul and .fma.

* config/tc-i386.c (YMMWORD_MNEM_SUFFIX): New.
(vex_prefix): Likewise.
(sse2avx): Likewise.
(CPU_FLAGS_ARCH_MATCH): Likewise.
(CPU_FLAGS_64BIT_MATCH): Likewise.
(CPU_FLAGS_32BIT_MATCH): Likewise.
(CPU_FLAGS_PERFECT_MATCH): Likewise.
(regymm): Likewise.
(vex_imm4): Likewise.
(fits_in_imm4): Likewise.
(build_vex_prefix): Likewise.
(VEX_check_operands): Likewise.
(bad_implicit_operand): Likewise.
(OPTION_MSSE2AVX): Likewise.
(T_YMMWORD): Likewise.
(_i386_insn): Add vex.
(cpu_arch): Add .avx, .aes, .clmul and .fma.
(cpu_flags_match): Changed to take a pointer to const template.
Enable encoding SSE instructions with VEX prefix for -msse2avx.
(match_mem_size): Also check ymmword.
(operand_type_match): Clear ymmword.
(md_begin): Allow '_' in mnemonic.
(type_names): Add OPERAND_TYPE_VEX_IMM4.
(process_immext): Update assert.
(md_assemble): Don't call process_immext if sse2avx and immext
are true.  Call build_vex_prefix if vex is true.
(parse_insn): Updated for cpu_flags_match.
(swap_operands): Handle 5 operands.
(match_template): Handle 5 operands. Updated for cpu_flags_match.
Check regymm.  Call VEX_check_operands. Handle YMMWORD_MNEM_SUFFIX.
(process_suffix): Handle YMMWORD_MNEM_SUFFIX.
(check_byte_reg): Check regymm.
(process_operands): Duplicate the destination register for
-msse2avx if needed.
(build_modrm_byte): Updated for instructions with VEX encoding.
(output_insn): Output VEX prefix if needed.
(md_longopts): Add msse2avx.
(md_parse_option): Handle OPTION_MSSE2AVX.
(md_show_usage): Add avx, aes, clmul, fma and -msse2avx.
(intel_e09): Support YMMWORD.
(intel_e11): Likewise.
(intel_get_token): Likewise.

gas/testsuite/

2008-04-03  H.J. Lu  <hongjiu.lu@intel.com>

* gas/i386/i386.exp: Run aes, aes-intel, x86-64-aes,
x86-64-aes-intel, avx, avx-intel, inval-avx, x86-64-avx,
x86-64-avx-intel and x86-64-inval-avx.

* gas/cfi/cfi-i386.s: Add tests for AVX register maps.
* gas/cfi/cfi-x86_64.s: Likewise.

* gas/i386/aes.d: New.
* gas/i386/aes.s: Likewise.
* gas/i386/aes-intel.d: Likewise.
* gas/i386/avx.d: Likewise.
* gas/i386/avx.s: Likewise.
* gas/i386/avx-intel.d: Likewise.
* gas/i386/clmul.d: Likewise.
* gas/i386/clmul-intel.d: Likewise.
* gas/i386/clmul.s: Likewise.
* gas/i386/i386.exp: Likewise.
* gas/i386/inval-avx.l: Likewise.
* gas/i386/inval-avx.s: Likewise.
* gas/i386/sse2avx.d: Likewise.
* gas/i386/sse2avx.s: Likewise.
* gas/i386/x86-64-aes.d: Likewise.
* gas/i386/x86-64-aes.s: Likewise.
* gas/i386/x86-64-aes-intel.d: Likewise.
* gas/i386/x86-64-avx.d: Likewise.
* gas/i386/x86-64-avx.s: Likewise.
* gas/i386/x86-64-avx-intel.d: Likewise.
* gas/i386/x86-64-clmul.d: Likewise.
* gas/i386/x86-64-clmul-intel.d: Likewise.
* gas/i386/x86-64-clmul.s: Likewise.
* gas/i386/x86-64-inval-avx.l: Likewise.
* gas/i386/x86-64-inval-avx.s: Likewise.
* gas/i386/x86-64-sse2avx.d: Likewise.
* gas/i386/x86-64-sse2avx.s: Likewise.

* gas/i386/arch-10.s: Add tests for AVX, AES, CLMUL and FMA.
* gas/i386/x86-64-arch-2.s: Likewise.

* gas/i386/rexw.s: Add AVX tests.

* gas/i386/x86-64-opcode-inval.s: Remove lds/les test.

* gas/cfi/cfi-i386.d: Updated.
* gas/cfi/cfi-x86_64.d: Likewise.
* gas/i386/arch-10.d:  Likewise.
* gas/i386/arch-10-1.l: Likewise.
* gas/i386/arch-10-2.l: Likewise.
* gas/i386/arch-10-3.l: Likewise.
* gas/i386/arch-10-4.l: Likewise.
* gas/i386/rexw.d: Likewise.
* gas/i386/x86-64-arch-2.d: Likewise.
* gas/i386/x86-64-opcode-inval.d: Likewise.
* gas/i386/x86-64-opcode-inval-intel.d: Likewise.

include/opcode/

2008-04-03  H.J. Lu  <hongjiu.lu@intel.com>

* i386.h (MAX_OPERANDS): Set to 5.
(MAX_MNEM_SIZE): Changed to 20.

opcodes/

2008-04-03  H.J. Lu  <hongjiu.lu@intel.com>

* i386-dis.c (OP_E_register): New.
(OP_E_memory): Likewise.
(OP_VEX): Likewise.
(OP_EX_Vex): Likewise.
(OP_EX_VexW): Likewise.
(OP_XMM_Vex): Likewise.
(OP_XMM_VexW): Likewise.
(OP_REG_VexI4): Likewise.
(PCLMUL_Fixup): Likewise.
(VEXI4_Fixup): Likewise.
(VZERO_Fixup): Likewise.
(VCMP_Fixup): Likewise.
(VPERMIL2_Fixup): Likewise.
(rex_original): Likewise.
(rex_ignored): Likewise.
(Mxmm): Likewise.
(XMM): Likewise.
(EXxmm): Likewise.
(EXxmmq): Likewise.
(EXymmq): Likewise.
(Vex): Likewise.
(Vex128): Likewise.
(Vex256): Likewise.
(VexI4): Likewise.
(EXdVex): Likewise.
(EXqVex): Likewise.
(EXVexW): Likewise.
(EXdVexW): Likewise.
(EXqVexW): Likewise.
(XMVex): Likewise.
(XMVexW): Likewise.
(XMVexI4): Likewise.
(PCLMUL): Likewise.
(VZERO): Likewise.
(VCMP): Likewise.
(VPERMIL2): Likewise.
(xmm_mode): Likewise.
(xmmq_mode): Likewise.
(ymmq_mode): Likewise.
(vex_mode): Likewise.
(vex128_mode): Likewise.
(vex256_mode): Likewise.
(USE_VEX_C4_TABLE): Likewise.
(USE_VEX_C5_TABLE): Likewise.
(USE_VEX_LEN_TABLE): Likewise.
(VEX_C4_TABLE): Likewise.
(VEX_C5_TABLE): Likewise.
(VEX_LEN_TABLE): Likewise.
(REG_VEX_XX): Likewise.
(MOD_VEX_XXX): Likewise.
(PREFIX_0F38DB..PREFIX_0F38DF): Likewise.
(PREFIX_0F3A44): Likewise.
(PREFIX_0F3ADF): Likewise.
(PREFIX_VEX_XXX): Likewise.
(VEX_OF): Likewise.
(VEX_OF38): Likewise.
(VEX_OF3A): Likewise.
(VEX_LEN_XXX): Likewise.
(vex): Likewise.
(need_vex): Likewise.
(need_vex_reg): Likewise.
(vex_i4_done): Likewise.
(vex_table): Likewise.
(vex_len_table): Likewise.
(OP_REG_VexI4): Likewise.
(vex_cmp_op): Likewise.
(pclmul_op): Likewise.
(vpermil2_op): Likewise.
(m_mode): Updated.
(es_reg): Likewise.
(PREFIX_0F38F0): Likewise.
(PREFIX_0F3A60): Likewise.
(reg_table): Add REG_VEX_71...REG_VEX_73 and REG_VEX_AE.
(prefix_table): Add PREFIX_0F38DB..PREFIX_0F38DF, PREFIX_0F3ADF
and PREFIX_VEX_XXX entries.
(x86_64_table): Use VEX_C4_TABLE and VEX_C5_TABLE.
(three_byte_table): Use PREFIX_0F38DB..PREFIX_0F38DF and
PREFIX_0F3ADF.
(mod_table): Use VEX_C4_TABLE, VEX_C5_TABLE and VEX_LEN_TABLE.
Add MOD_VEX_XXX entries.
(ckprefix): Initialize rex_original and rex_ignored.  Store the
REX byte in rex_original.
(get_valid_dis386): Handle the implicit prefix in VEX prefix
bytes and USE_VEX_LEN_TABLE/USE_VEX_C4_TABLE/USE_VEX_C5_TABLE.
(print_insn): Set need_vex/need_vex_reg/vex_i4_done to 0 before
calling get_valid_dis386.  Use rex_original and rex_ignored when
printing out REX.
(putop): Handle "XY".
(intel_operand_size): Handle VEX, xmm_mode, xmmq_mode and
ymmq_mode.
(OP_E_extended): Updated to use OP_E_register and
OP_E_memory.
(OP_XMM): Handle VEX.
(OP_EX): Likewise.
(XMM_Fixup): Likewise.
(CMP_Fixup): Use ARRAY_SIZE.

* i386-gen.c (cpu_flag_init): Add CpuAES, CPU_CLMUL_FLAGS,
CPU_FMA_FLAGS and CPU_AVX_FLAGS.
(operand_type_init): Add OPERAND_TYPE_REGYMM and
OPERAND_TYPE_VEX_IMM4.
(cpu_flags): Add CpuAVX, CpuAES, CpuCLMUL and CpuFMA.
(opcode_modifiers): Add Implicit1stXmm0, Vex, Vex256, VexNDD,
VexNDS, VexW0, VexW1, Vex0F, Vex0F38, Vex0F3A, Vex3Sources,
VexImmExt and SSE2AVX.
(operand_types): Add RegYMM, Ymmword and Vex_Imm4.

* i386-opc.h (CpuAVX): New.
(CpuAES): Likewise.
(CpuCLMUL): Likewise.
(CpuFMA): Likewise.
(Vex): Likewise.
(Vex256): Likewise.
(VexNDS): Likewise.
(VexNDD): Likewise.
(VexW0): Likewise.
(VexW1): Likewise.
(Vex0F): Likewise.
(Vex0F38): Likewise.
(Vex0F3A): Likewise.
(Vex3Sources): Likewise.
(VexImmExt): Likewise.
(SSE2AVX): Likewise.
(RegYMM): Likewise.
(Ymmword): Likewise.
(Vex_Imm4): Likewise.
(Implicit1stXmm0): Likewise.
(CpuXsave): Updated.
(CpuLM): Likewise.
(ByteOkIntel): Likewise.
(OldGcc): Likewise.
(Control): Likewise.
(Unspecified): Likewise.
(OTMax): Likewise.
(i386_cpu_flags): Add cpuavx, cpuaes, cpuclmul and cpufma.
(i386_opcode_modifier): Add implicit1stxmm0, vex, vex256,
vexnds, vexndd, vexw0, vexw1, vex0f, vex0f38, vex0f3a,
vex3sources, veximmext and sse2avx.
(i386_operand_type): Add regymm, ymmword and vex_imm4.

* i386-opc.tbl: Add AES, CLMUL, AVX and FMA new instructions.

* i386-reg.tbl: Add AVX registers, ymm0..ymm15.

* i386-init.h: Regenerated.
* i386-tbl.h: Likewise.

16 years ago * dwarf_reader.cc (Sized_dwarf_line_info::read_header_prolog,
David S. Miller [Thu, 3 Apr 2008 04:18:53 +0000 (04:18 +0000)]
*  dwarf_reader.cc (Sized_dwarf_line_info::read_header_prolog,
Sized_dwarf_line_info::process_one_opcode): Use Swap_unaligned.

16 years ago * TODO: New file.
Ian Lance Taylor [Thu, 3 Apr 2008 00:33:37 +0000 (00:33 +0000)]
* TODO: New file.

16 years agodaily update
Alan Modra [Wed, 2 Apr 2008 23:00:06 +0000 (23:00 +0000)]
daily update

16 years ago * fileread.cc (File_read::find_view): Add byteshift and vshifted
Ian Lance Taylor [Wed, 2 Apr 2008 20:58:21 +0000 (20:58 +0000)]
* fileread.cc (File_read::find_view): Add byteshift and vshifted
parameters.  Update for new key type to views_.  Change all
callers.
(File_read::read): Adjust for byteshift in returned view.
(File_read::add_view): New function, broken out of
find_and_make_view.
(File_read::make_view): New function, broken out of
find_and_make_view.
(File_read::find_or_make_view): Add offset and aligned
parameters.  Rewrite accordingly.  Change all callers.
(File_read::get_view): Add offset and aligned parameters.  Adjust
for byteshift in return value.
(File_read::get_lasting_view): Likewise.
* fileread.h (class File_read): Update declarations.
(class File_read::View): Add byteshift_ field.  Add byteshift to
constructor.  Add byteshift method.
* archive.h (Archive::clear_uncached_views): New function.
(Archive::get_view): Add aligned parameter.  Change all callers.
* object.h (Object::get_view): Add aligned parameter.  Change all
callers.
(Object::get_lasting_view): Likewise.

* fileread.cc (File_read::release): Don't call clear_views if
there are multiple objects.
* fileread.h (File_read::clear_uncached_views): New function.
* archive.cc (Add_archive_symbols::run): Call clear_uncached_views
on the archive.

16 years ago * elf32-spu.c (insert_callee): Reorder call list so most recent
Alan Modra [Tue, 1 Apr 2008 23:52:00 +0000 (23:52 +0000)]
* elf32-spu.c (insert_callee): Reorder call list so most recent
call is always first.
(interesting_section): Move.
(mark_functions_via_relocs): Fold interesting_section and
reloc_count tests in callers to here.  Simplify output section
owner test.
(discover_functions): Set "gaps" when no symbols and some
"interesting_section".  Run pasted_function loop for no symbol
bfds.
(for_each_node, transfer_calls): New functions.
(mark_non_root): Adjust to suit for_each_node.
(call_graph_traverse): Likewise.  Fix memory leak.  Rename to..
(remove_cycles): ..this.
(build_call_tree): Use for_each_node and transfer_calls.
(struct _sum_stack_param): New.
(sum_stack): Adjust to suit for_each_node.  Return error on
malloc failure.  Move code to print root node cumulative stack from..
(spu_elf_stack_analysis): ..here.  Use for_each_node.

16 years agodaily update
Alan Modra [Tue, 1 Apr 2008 23:00:07 +0000 (23:00 +0000)]
daily update

16 years ago2008-03-31 Cary Coutant <ccoutant@google.com>
Cary Coutant [Tue, 1 Apr 2008 20:57:36 +0000 (20:57 +0000)]
2008-03-31  Cary Coutant  <ccoutant@google.com>

Add thin archive support.
* archive.cc (Archive::armagt): New const.
(Archive::setup): Remove task parameter and calls to unlock.
(Archive::unlock_nested_archives): New function.
(Archive::read_header): Add nested_off parameter. Change
all callers.
(Archive::interpret_header): Likewise.
(Archive::include_all_members): Change to handle thin
archives.
(Archive::include_member): Likewise.
* archive.h (Archive::Archive): Add new parameters and
initializers.
(Archive::armagt): New const.
(Archive::setup): Remove task parameter.
(Archive::unlock_nested_archives): New function.
(Archive::read_header): Add nested_off parameter.
(Archive::interpret_header): Likewise.
(Archive::Nested_archive_table): New typedef.
(Archive::is_thin_archive_): New field.
(Archive::nested_archives_): New field.
(Archive::options_): New field.
(Archive::dirpath_): New field.
(Archive::task_): New field.
* readsyms.cc (Read_symbols::do_read_symbols): Add check
for thin archives.  Pass additional parameters to
Archive::Archive.  Unlock the archive file after calling
Archive::setup.

16 years ago PR 6006
Alan Modra [Mon, 31 Mar 2008 23:44:47 +0000 (23:44 +0000)]
PR 6006
* archive.c (_bfd_slurp_extended_name_table): Change
ARFMAG[0] to ARFMAG[1].
(_bfd_construct_extended_name_table): Likewise.

16 years agodaily update
Alan Modra [Mon, 31 Mar 2008 23:00:05 +0000 (23:00 +0000)]
daily update

16 years agomerge from gcc
DJ Delorie [Mon, 31 Mar 2008 18:11:50 +0000 (18:11 +0000)]
merge from gcc

16 years ago * elfxx-mips.c (mips_elf_record_got_page_entry): Update comment.
Daniel Jacobowitz [Mon, 31 Mar 2008 14:02:26 +0000 (14:02 +0000)]
* elfxx-mips.c (mips_elf_record_got_page_entry): Update comment.
(_bfd_mips_elf_check_relocs): Update comments.  Always call
mips_elf_record_got_page_entry for R_MIPS_GOT_PAGE.

16 years agoUpdated French translations.
Nick Clifton [Mon, 31 Mar 2008 10:19:38 +0000 (10:19 +0000)]
Updated French translations.

16 years agodaily update
Alan Modra [Sun, 30 Mar 2008 23:00:05 +0000 (23:00 +0000)]
daily update

16 years agodaily update
Alan Modra [Sat, 29 Mar 2008 23:00:05 +0000 (23:00 +0000)]
daily update

16 years ago * symtab.cc (Symbol_table::do_define_as_constant): Don't force a
Ian Lance Taylor [Sat, 29 Mar 2008 08:39:26 +0000 (08:39 +0000)]
* symtab.cc (Symbol_table::do_define_as_constant): Don't force a
version symbol to be local.
* testsuite/ver_test_4.sh: New file.
* testsuite/Makefile.am (check_SCRIPTS): Add ver_test_4.sh.
(check_DATA): Add ver_test_4.syms.
(ver_test_4.syms): New target.
* testsuite/Makefile.in: Rebuild.

16 years ago * output.cc
Ian Lance Taylor [Sat, 29 Mar 2008 08:09:55 +0000 (08:09 +0000)]
* output.cc
(Output_section::Input_section_sort_entry::has_priority): New
function.
(Output_section::Input_section_sort_entry::match_file_name): New
function.
(Output_section::Input_section_sort_entry::match_section_name):
Remove.
(Output_section::Input_section_sort_entry::match_section_name_prefix):
Remove.
(Output_section::Input_section_sort_entry::match_section_file):
Remove.
(Output_section::Input_section_sort_compare::operator()): Rewrite
using new Input_section_sort_entry functions.  Sort crtbegin and
crtend first.  Sort sections with no priority before sections with
a priority.
* testsuite/initpri1.c (d3): Check j != 4.
(cd5): New constructor/destructor function.
(main): Check j != 2.

16 years ago * symtab.cc (Symbol_table::add_from_object): If we don't use the
Ian Lance Taylor [Sat, 29 Mar 2008 07:19:02 +0000 (07:19 +0000)]
* symtab.cc (Symbol_table::add_from_object): If we don't use the
new symbol when resolving, don't call set_is_default.
* testsuite/ver_test_7.cc: New file.
* testsuite/ver_test_7.sh: New file.
* testsuite/Makefile.am (ver_test_7.so): New target.
(ver_test_7.o): New target.
(check_SCRIPTS): Add ver_test_7.sh.
(check_DATA): Add ver_test_7.syms.
(ver_test_7.syms): New target.

16 years agodaily update
Alan Modra [Fri, 28 Mar 2008 23:00:20 +0000 (23:00 +0000)]
daily update

16 years ago * layout.cc (Layout::layout): If we see an input section with a
Ian Lance Taylor [Fri, 28 Mar 2008 22:42:34 +0000 (22:42 +0000)]
* layout.cc (Layout::layout): If we see an input section with a
name that needs sorting, set the must_sort flag for the output
section.
(Layout::make_output_section): If the name of the output section
indicates that it might require sorting, set the may_sort flag.
* output.h (Output_section::may_sort_attached_input_sections): New
function.
(Output_section::set_may_sort_attached_input_sections): New
function.
(Output_section::must_sort_attached_input_sections): New
function.
(Output_section::set_must_sort_attached_input_sections): New
function.
(class Output_section): Declare Input_section_sort_entry.  Define
Input_section_sort_compare.  Declare
sort_attached_input_sections.  Add new fields:
may_sort_attached_input_sections_,
must_sort_attached_input_sections_,
attached_input_sections_are_sorted_.
* output.cc (Output_section::Output_section): Initialize new
fields.
(Output_section::add_input_section): Add an entry to
input_sections_ if may_sort or must_sort are true.
(Output_section::set_final_data_size): Call
sort_attached_input_sections if necessary.
(Output_section::Input_section_sort_entry): Define new class.
(Output_section::Input_section_sort_compare::operator()): New
function.
(Output_section::sort_attached_input_sections): New function.
* configure.ac: Check whether the compiler supports constructor
priorities.  Define a CONSTRUCTOR_PRIORITY automake conditional.
* testsuite/initpri1.c: New file.
* testsuite/Makefile.am (check_PROGRAMS): Add initpri1 if
CONSTRUCTOR_PRIORITY.
(initpri1_SOURCES, initpri1_DEPENDENCIES): New variables.
(initpri1_LDFLAGS): New variable.
* configure, Makefile.in, testsuite/Makefile.in: Rebuild.

16 years ago/gas:
Eric B. Weddington [Fri, 28 Mar 2008 21:51:38 +0000 (21:51 +0000)]
/gas:
2008-03-28  Eric B. Weddington  <eric.weddington@atmel.com>

* config/tc-avr.c (mcu_types): Add attiny167.
* doc/c-avr.texi: Likewise.

/include:
2008-03-28  Eric B. Weddington  <eric.weddington@atmel.com>

* opcode/avr.h (AVR_ISA_TINY3): Define new opcode set for attiny167.

16 years ago/gas:
Eric B. Weddington [Fri, 28 Mar 2008 21:04:22 +0000 (21:04 +0000)]
/gas:
2008-03-28  Eric B. Weddington  <eric.weddington@atmel.com>

* config/tc-avr.c (mcu_types): Add atmega32u4.
* doc/c-avr.texi: Likewise.

16 years ago/gas:
Eric B. Weddington [Fri, 28 Mar 2008 19:24:52 +0000 (19:24 +0000)]
/gas:
2008-03-28  Eric B. Weddington  <eric.weddington@atmel.com>

* config/tc-avr.c (mcu_types): Add atmega32c1.
* doc/c-avr.texi: Likewise.

16 years ago2008-03-28 Paul Brook <paul@codesourcery.com>
Paul Brook [Fri, 28 Mar 2008 18:13:52 +0000 (18:13 +0000)]
2008-03-28  Paul Brook  <paul@codesourcery.com>

gas/
* config/tc-arm.c (parse_neon_mov): Parse register before immediate
to avoid spurious symbols.

16 years ago * config/tc-m68k.c (md_convert_frag_1): Replace as_fatal with
Nathan Sidwell [Fri, 28 Mar 2008 09:51:13 +0000 (09:51 +0000)]
* config/tc-m68k.c (md_convert_frag_1): Replace as_fatal with
as_bad_where.

16 years agoAdd support for thin archives.
Nick Clifton [Fri, 28 Mar 2008 06:49:44 +0000 (06:49 +0000)]
Add support for thin archives.
    * bfd/archive.c (_bfd_find_nested_archive): New function.
    (get_extended_arelt_filename): Add origin parameter.
    (_bfd_generic_read_ar_hdr_mag): Deal with extended name
    combined with a file offset.
    (append_relative_path): New function.
    (_bfd_get_elt_at_filepos): Deal with external members and
    nested archives.
    (bfd_generic_openr_next_archived_file): Thin archives.
    (bfd_generic_archive_p): Recognize new magic string.
    (adjust_relative_path): New function.
    (_bfd_construct_extended_name_table): Construct extended
    names for thin archive members.
    (_bfd_write_archive_contents): Emit new magic string, skip
    copying files for thin archives.
    * bfd/bfd-in.h (bfd_is_thin_archive): New macro.
    * bfd/bfd.c (struct bfd): New fields for thin archives.
    * bfd/libbfd-in.h (struct areltdata): New field for thin archives.
    * bfd/opncls.c (bfd_close): Delete BFDs for nested archives.
    * binutils/ar.c (make_thin_archive): New global flag.
    (map_over_members): Deal with full pathnames in thin archives.
    (usage, main): Add 'T' option for building thin archives.
    (replace_members): Pass thin archive flag to ar_emul_append.
    * binutils/arsup.c (ar_open): Initialize new flag.
    * binutils/binemul.c (ar_emul_append): Add new parameter for
    flattening nested archives.
    (do_ar_emul_default_append): New function.
    (ar_emul_default_append): Factored out recursive code.
    * binutils/binemul.h (ar_emul_default_append): Add new parameter.
    (struct bin_emulation_xfer_struct): New parameter for ar_append.
    * binutils/dlltool.c (gen_lib_file): Initialize thin archive flag.
    * binutils/emul_aix.c (ar_emul_aix_internal): Add new flatten
    parameter, currently unimplemented.
    All callers changed.
    * binutils/objcopy.c (copy_archive): Preserve thin archive flag.
    * binutils/doc/binutils.texi: Update ar documentation.
    * binutils/testsuite/binutils-all/ar.exp: Add thin archive tests.
    * include/aout/ar.h (ARMAGT): New magic string for thin archives.

16 years ago * ld-elfcomm/elfcomm.exp: Run $READELF not readelf.
Joseph Myers [Fri, 28 Mar 2008 01:12:56 +0000 (01:12 +0000)]
* ld-elfcomm/elfcomm.exp: Run $READELF not readelf.