OSDN Git Service
Alan Modra [Fri, 13 Jun 2008 00:00:05 +0000 (00:00 +0000)]
daily update
Nick Clifton [Thu, 12 Jun 2008 21:44:54 +0000 (21:44 +0000)]
* mips.h: Document new field descriptors +Q.
(OP_SH_SEQI, OP_MASK_SEQI): New bit mask and shift count for SEQI.
opcodes/
* mips-dis.c (print_insn_args): Handle field descriptor +Q.
* mips-opc.c (mips_builtin_opcodes): Add Octeon instructions seq,
seqi, sne and snei.
gas/
* config/tc-mips.c (validate_mips_insn): Handle field descriptor +Q.
(mips_ip): Likewise.
(macro_build): Likewise.
(CPU_HAS_SEQ): New macro.
(macro2) <M_SEQ_I, M_SNE_I>: Use it. Emit seq/sne and seqi/snei.
gas/testsuite/
* gas/mips/octeon.s, gas/mips/octeon.d: Add tests for seq* and sne*.
* gas/mips/octeon-ill.s, gas/mips/octeon-ill.s: Add tests for seqi
and snei.
DJ Delorie [Thu, 12 Jun 2008 19:49:48 +0000 (19:49 +0000)]
* common.h (EM_M32C_NEW): Rename to EM_M32C.
(EM_M32C): Rename to EM_M32C_OLD.
* elf32-m32c.c (ELF_MACHINE_ALT1): Define as EM_M32C_OLD.
* readelf.c (guess_is_rela): Add EM_M32C_OLD.
(dump_relocations): Likewise.
(process_section_headers): Likewise.
(is_32bit_abs_reloc): Likewise.
(is_16bit_abs_reloc): Likewise.
David Edelsohn [Thu, 12 Jun 2008 17:07:34 +0000 (17:07 +0000)]
2008-06-12 David S. Miller <davem@davemloft.net>
David Edelsohn <edelsohn@gnu.org>
* configure.ac: Add powerpc*-*-* to gold supported targets.
* configure: Regenerate.
David Edelsohn [Thu, 12 Jun 2008 17:02:17 +0000 (17:02 +0000)]
2008-06-12 David Edelsohn <edelsohn@gnu.org>
David S. Miller <davem@davemloft.net>
* powerpc.cc: New file.
* Makefile.am (TARGETSOURCES): Add powerpc.cc
(ALL_TARGETOBJS): Add powerpc.$(OBJEXT)
* configure.tgt: Add entries for powerpc-* and powerpc64-*.
* Makefile.in: Rebuild.
David Edelsohn [Thu, 12 Jun 2008 16:58:40 +0000 (16:58 +0000)]
2008-06-12 David S. Miller <davem@davemloft.net>
* powerpc.h: New file.
* elfcpp.h (SHT_ORDERED): New enum constant.
(DT_PPC_GOT, DT_PPC64_GLINK, DT_PPC64_OPD, DT_PPC64_OPDSZ): Same.
Nick Clifton [Thu, 12 Jun 2008 16:14:52 +0000 (16:14 +0000)]
include/opcode/
* mips.h: Document new field descriptors +x, +X, +p, +P, +s, +S.
Update comment before MIPS16 field descriptors to mention MIPS16.
(OP_SH_BBITIND, OP_MASK_BBITIND): New bit mask and shift count for
BBIT.
(OP_SH_CINSPOS, OP_MASK_CINSPOS, OP_SH_CINSLM1, OP_MASK_CINSLM1):
New bit masks and shift counts for cins and exts.
gas/
* config/tc-mips.c (validate_mips_insn): Handle field descriptors
+x, +X, +p, +P, +s, +S.
(mips_ip): Likewise.
opcodes/
* mips-dis.c (print_insn_args): Handle field descriptors +x, +p,
+s, +S.
* mips-opc.c (mips_builtin_opcodes): Add Octeon instructions
baddu, bbit*, cins*, dmul, pop, dpop, exts*, mtm*, mtp*, syncs,
syncw, syncws, vm3mulu, vm0 and vmulu.
gas/testsuite/
* gas/mips/octeon.s, gas/mips/octeon.d: Add tests for baddu,
bbit*, cins*, dmul, pop, dpop, exts*, mtm*, mtp*, syncs, syncw,
syncws, vm3mulu, vm0 and vmulu.
* gas/mips/octeon-ill.s, gas/mips/octeon-ill.s: New test.
* gas/mips/mips.exp: Run it. Run octeon test with
run_dump_test_arches.
Joseph Myers [Thu, 12 Jun 2008 12:44:01 +0000 (12:44 +0000)]
* common.h: Update e_machine table.
Nick Clifton [Thu, 12 Jun 2008 11:57:40 +0000 (11:57 +0000)]
PR binutils/6483
* objdump.c (dump_bfd): If the -g option found no STABS or IEEE
debug information to display, try dumping DWARF information
instead.
* rddbg.c (read_debugging_info): Add a parameter to suppress the
display of a warning message when no debug information is found.
* budbg.h (read_debugging_info): Update prototype.
* objcopy.c (copy_object): Continue to allow read_debugging_info
to produce warning messages.
* doc/binutils.texi (--debugging): Document new behaviour of the
-g/--debugging option.
Nick Clifton [Thu, 12 Jun 2008 11:27:38 +0000 (11:27 +0000)]
* ldlang.c (print_output_section_statement): If the output section
statement has an update_dot_tree expression, apply it to
print_dot.
(print_input_section): Do not update print_dot if it would move
print_dot backwards.
(lang_do_assignments_1): If the output section statement has an
update_dot_tree expression apply it to dot.
* ld-scripts/overlay-size.t (end_of_bss_overlays): Define.
(end_of_text_overlays): Define.
(end_of_data_overlays): Define.
* ld-scripts/overlay-size-map.d: Add expected values for
end_of_bss_overlays, end_of_text_overlays and
end_of_data_overlays.
Alan Modra [Thu, 12 Jun 2008 00:00:05 +0000 (00:00 +0000)]
daily update
Alan Modra [Wed, 11 Jun 2008 00:00:06 +0000 (00:00 +0000)]
daily update
Ben Elliston [Tue, 10 Jun 2008 08:16:54 +0000 (08:16 +0000)]
* MAINTAINERS: Remove myself as m68k maintainer.
Alan Modra [Tue, 10 Jun 2008 00:00:05 +0000 (00:00 +0000)]
daily update
Kaz Kojima [Mon, 9 Jun 2008 22:22:05 +0000 (22:22 +0000)]
* ld-sh/arch/arch_expected.txt: Regenerate.
Kaz Kojima [Mon, 9 Jun 2008 22:20:46 +0000 (22:20 +0000)]
* sh.h (EF_SH_BFD_TABLE): Set bfd_mach_sh for EF_SH_UNKNOWN.
Ian Lance Taylor [Mon, 9 Jun 2008 19:12:34 +0000 (19:12 +0000)]
* testsuite/relro_test.cc: Include <cstdio>, <cstdlib>, and
<exception>.
(throwing, orig_terminate): New static variables.
(terminate_handler): New static function.
(t2): Set terminate handler.
Eric B. Weddington [Mon, 9 Jun 2008 16:07:02 +0000 (16:07 +0000)]
/gas:
2008-06-09 Eric B. Weddington <eric.weddington@atmel.com>
* config/tc-avr.c (mcu_types): Remove support for ATmega32HVB device.
* doc/c-avr.texi: Likewise.
Paul Brook [Mon, 9 Jun 2008 15:19:52 +0000 (15:19 +0000)]
2008-06-09 Paul Brook <paul@codesourcery.com>
bfd/
* elf32-arm.c (elf32_arm_merge_private_bfd_data): Allow BE8 shared
libraries.
Daniel Jacobowitz [Mon, 9 Jun 2008 14:55:04 +0000 (14:55 +0000)]
* ld-arm/mixed-lib.d: Loosen pattern.
Daniel Jacobowitz [Mon, 9 Jun 2008 14:53:13 +0000 (14:53 +0000)]
2008-06-03 Christophe Lyon <christophe.lyon@st.com>
bfd/
* elf32-arm.c (arm_stub_is_thumb): Define.
(elf32_arm_final_link_relocate): Handle near mode switching stubs.
ld/testsuite/
* ld-arm/farcall-thumb-thumb-m.d: Fix branch type.
* ld-arm/farcall-thumb-arm.d: Likewise.
Joseph Myers [Mon, 9 Jun 2008 14:07:18 +0000 (14:07 +0000)]
* common.h: Change registry@caldera.com to registry@sco.com.
Alan Modra [Mon, 9 Jun 2008 00:00:05 +0000 (00:00 +0000)]
daily update
Joseph Myers [Sun, 8 Jun 2008 16:19:22 +0000 (16:19 +0000)]
* Makefile.def (flags_to_pass): Add LDFLAGS_FOR_BUILD.
* Makefile.tpl (EXTRA_BUILD_FLAGS): Define.
(all prefix="build-"): Pass them to build-system sub-makes.
* Makefile.in: Regenerate.
config:
* config/mh-mingw (LDFLAGS): Define.
Alan Modra [Sun, 8 Jun 2008 00:00:06 +0000 (00:00 +0000)]
daily update
Alan Modra [Sat, 7 Jun 2008 12:02:47 +0000 (12:02 +0000)]
* elf32-spu.c (spu_elf_auto_overlay): Add valid area below sp
to stack calculation.
Alan Modra [Sat, 7 Jun 2008 11:35:46 +0000 (11:35 +0000)]
* NEWS: Mention archive:path patterns.
* ld.texinfo: Likewise.
* ldlang.c: Formatting throughout.
(archive_path): Only assume "[A-Za-z]:" is a dos drive.
(input_statement_is_archive_path): New function, extracted from..
(walk_wild): ..here.
(walk_wild_consider_section): Match archive:path here too.
(init_map_userdata, sort_def_symbol): Convert to ISO C.
* ldmain.c (main): Set link_info.path_separator.
* emultempl/spuelf.em (choose_target): Don't set it here.
Alan Modra [Sat, 7 Jun 2008 00:00:05 +0000 (00:00 +0000)]
daily update
Paul Brook [Fri, 6 Jun 2008 23:20:48 +0000 (23:20 +0000)]
2008-06-06 Paul Brook <paul@codesourcery.com>
bfd/
* elf32-arm.c (elf32_arm_merge_private_bfd_data): Reject BE8 input.
Alan Modra [Fri, 6 Jun 2008 06:02:00 +0000 (06:02 +0000)]
include/
* bfdlink.h (struct bfd_link_info): Add "path_separator".
bfd/
* elf32-spu.c (spu_elf_auto_overlay): Relax requirement that
file names be unique. Specify archive:path in overlay script.
ld/
* ldlang.c (name_match): New function.
(unique_section_p, walk_wild_consider_section): Use it here.
(walk_wild_section_general): And here.
(archive_path): New function.
(walk_wild): Match archive:path filespecs.
(open_input_bfds): Don't load archive:path files.
* emultempl/spuelf.em (choose_target): Set path_separator.
* emulparams/elf32_spu.sh: Add ._ea.* sections to ._ea output.
Danny Smith [Fri, 6 Jun 2008 02:32:32 +0000 (02:32 +0000)]
PR driver/35916
* mh-mingw (CFLAGS): Add -D__USE_MINGW_ACCESS.
Alan Modra [Fri, 6 Jun 2008 00:00:04 +0000 (00:00 +0000)]
daily update
Ian Lance Taylor [Thu, 5 Jun 2008 17:29:44 +0000 (17:29 +0000)]
PR 6584
* binary.cc (Binary_to_elf::sized_convert): Fix .data
alignment.
Alan Modra [Thu, 5 Jun 2008 00:30:09 +0000 (00:30 +0000)]
PR ld/6590
* elf64-ppc.c (ppc_build_one_stub): Correct reloc offsets.
Alan Modra [Thu, 5 Jun 2008 00:00:06 +0000 (00:00 +0000)]
daily update
Nick Clifton [Wed, 4 Jun 2008 16:10:21 +0000 (16:10 +0000)]
* app.c (do_scrub_chars): Do not UNGET an EOF value.
Alan Modra [Wed, 4 Jun 2008 14:24:05 +0000 (14:24 +0000)]
* elf.c (ignore_section_sym): Don't test section sym value here.
(elf_map_symbols): Instead check zero value here as was done prior
to 2006-05-26 change.
Nick Clifton [Wed, 4 Jun 2008 10:28:35 +0000 (10:28 +0000)]
* po/nl.po: New file: Dutch translation
* configure.in (ALL_LINGUAS): Add nl.
* configure: Regenerate.
Nick Clifton [Wed, 4 Jun 2008 10:07:22 +0000 (10:07 +0000)]
* ld.texinfo (Orphan Sections): Fix texi typo.
Nick Clifton [Wed, 4 Jun 2008 09:59:08 +0000 (09:59 +0000)]
PR ld/6019
* elf32-avr.c (elf32_avr_relax_section): Handle the case where
there are no local symbols.
Nick Clifton [Wed, 4 Jun 2008 09:45:05 +0000 (09:45 +0000)]
* lexsup.c (option_values): Add OPTION_NO_WARN_FATAL.
(ld_options): Add entry for --no-fatal-warnings.
(parse_args): Handle OPTION_NO_WARN_FATAL.
* ld.texinfo (Options): Document new command line switch.
Alan Modra [Wed, 4 Jun 2008 07:08:01 +0000 (07:08 +0000)]
* emultempl/spuelf.em (spu_elf_relink): Correct --no-auto-overlay arg.
Alan Modra [Wed, 4 Jun 2008 07:07:19 +0000 (07:07 +0000)]
* elf32-spu.c (get_sym_h): Don't attempt to read global syms.
(process_stubs): Likewise.
(discover_functions): Don't used cached symbols.
(maybe_insert_function): Correct condition under which function
array is realloc'd.
(mark_functions_via_relocs): Delete unused variable.
Alan Modra [Wed, 4 Jun 2008 00:00:05 +0000 (00:00 +0000)]
daily update
H.J. Lu [Tue, 3 Jun 2008 17:31:52 +0000 (17:31 +0000)]
gas/
2008-06-03 H.J. Lu <hongjiu.lu@intel.com>
* config/tc-i386.c (set_sse_check): New.
(md_pseudo_table): Add "sse_check".
gas/testsuite/
2008-06-03 H.J. Lu <hongjiu.lu@intel.com>
* gas/i386/i386.exp: Run sse-check-none and
x86-64-sse-check-none.
* gas/i386/sse-check-none.d: New.
* gas/i386/sse-check-none.s: Likewise.
* gas/i386/x86-64-sse-check-none.d: Likewise.
Paul Brook [Tue, 3 Jun 2008 14:29:07 +0000 (14:29 +0000)]
2008-06-03 Paul Brook <paul@codesourcery.com>
gas/
* config/tc-arm.c (do_t_rbit): Populate both rm fields.
gas/testsuite/
* gas/arm/thumb32.d: Update expected output.
Alan Modra [Tue, 3 Jun 2008 00:00:05 +0000 (00:00 +0000)]
daily update
Nick Clifton [Mon, 2 Jun 2008 06:49:58 +0000 (06:49 +0000)]
* ldlang.c (closest_target_match): Skip generic big and little
endian ELF targets.
(The patch itself was actually checked in by mistake with a previous delta)
Alan Modra [Mon, 2 Jun 2008 00:00:05 +0000 (00:00 +0000)]
daily update
Alan Modra [Sun, 1 Jun 2008 00:00:05 +0000 (00:00 +0000)]
daily update
Nick Clifton [Sat, 31 May 2008 16:35:56 +0000 (16:35 +0000)]
PR ld/6430
* testsuite/ld-elfcomm/elfcomm.exp (test_sort_common): Test the
ascending/descending argument to the --sort-common command line
option.
* testsuite/ld-elfcomm/sort-common.s: New file.
* ld.h (enum sort_order): New.
* ldlang.c (lang_check: Fix comment.
(lang_common): Sort commons in ascending or descending order.
(lang_one_common): Likewise.
* lexsup.c (ld_options): Have --sort-common take an option
argument.
(parse_args): Handle argument to --sort-common.
* ld.texinfo (--sort-common): Document new optional argument.
* NEWS: Mention new feature.
Nick Clifton [Sat, 31 May 2008 16:04:57 +0000 (16:04 +0000)]
Ooops, omitted from previous delta
Alan Modra [Sat, 31 May 2008 00:00:05 +0000 (00:00 +0000)]
daily update
Cary Coutant [Fri, 30 May 2008 21:24:43 +0000 (21:24 +0000)]
* archive.cc (Archive::include_all_members) Correct to step
over symbol table and extended name table in thin archives.
H.J. Lu [Fri, 30 May 2008 19:49:18 +0000 (19:49 +0000)]
gas/testsuite/
2008-05-30 H.J. Lu <hongjiu.lu@intel.com>
* gas/i386/x86-64-avx.s: Add tests for vmovd on 64bit operands.
* gas/i386/x86-64-sse2avx.s: Add tests for movd on 64bit
operands.
* gas/testsuite/gas/i386/x86-64-avx.d: Updated.
* gas/testsuite/gas/i386/x86-64-avx-intel.d: Likewise.
* gas/testsuite/gas/i386/x86-64-sse2avx.d: Likewise.
opcodes/
2008-05-30 H.J. Lu <hongjiu.lu@intel.com>
* i386-opc.tbl: Add vmovd with 64bit operand.
* i386-tbl.h: Regenerated.
Nick Clifton [Fri, 30 May 2008 16:13:53 +0000 (16:13 +0000)]
PR ld/6511
* elf64-hppa.c (allocate_global_data_opd): Default to using the
dynamic symbol table for local function names in shared libraries.
Nick Clifton [Fri, 30 May 2008 14:20:27 +0000 (14:20 +0000)]
PR 5523
* config/tc-avr.c (avr_ldi_expression): Do not warn about unknown
relocs here.
Alan Modra [Fri, 30 May 2008 00:00:04 +0000 (00:00 +0000)]
daily update
Ian Lance Taylor [Thu, 29 May 2008 23:51:30 +0000 (23:51 +0000)]
PR 6407
* target-reloc.h (relocate_for_relocatable): Fix new_offset
calculation.
Adam Nemet [Thu, 29 May 2008 16:03:41 +0000 (16:03 +0000)]
* config/tc-mips.c (mips_cpu_info_table): Move records for
ST Loongson-2E/2F processors to a better place.
Jan Kratochvil [Thu, 29 May 2008 07:07:21 +0000 (07:07 +0000)]
bfd/
* elf.c (assign_file_positions_for_load_sections): Adjust pre-section
gaps based on VMA and P_VADDR instead of LMA and P_PADDR addresses.
binutils/testsuite/
* binutils-all/objcopy.exp: Call KEEP_DEBUG_SYMBOLS_AND_TEST_COPY.
(keep_debug_symbols_and_test_copy): New function.
(test5, test6): New variables.
Alan Modra [Thu, 29 May 2008 00:00:05 +0000 (00:00 +0000)]
daily update
Ian Lance Taylor [Wed, 28 May 2008 20:48:16 +0000 (20:48 +0000)]
elfcpp/:
* dwarf.h (enum DW_FORM): Define.
gold/:
* reduced_debug_output.cc: New file.
* reduced_debug_output.h: New file.
* options.h (class General_optoins): Add --strip-debug-non-line.
* options.cc (General_options::finalize): Add strip_debug_non_line
to the strip heirarchy.
* layout.h (class Layout): Add debug_abbrev_ and debug_info_
fields.
* layout.cc: Include "reduced_debug_output.h".
(Layout::Layout): Initialize new fields.
(line_only_debug_sections): New static array.
(is_lines_only_debug_sections): New static inline function.
(Layout::include_section): Handle --strip-debug-non-line.
(Layout::make_output_section): If --strip-debug-non-line, build
new output sections for .debug_abbrev and .debug_info.
* dwarf_reader.cc (read_unsigned_LEB_128): Move to namespace
gold. Warn about possible overflow.
(read_signed_LEB_128): Likewise.
* dwarf_reader.h: (read_unsigned_LEB_128): Declare.
(read_signed_LEB_128): Declare.
* Makefile.am (CCFILES): Add reduced_debug_output.cc.
(HFILES): Add reduced_debug_output.h.
* Makefile.in: Rebuild.
Nick Clifton [Wed, 28 May 2008 15:38:36 +0000 (15:38 +0000)]
ld/testsuite/
* ld-arm/arm-elf.exp: Skip farcalls tests for non-ARM-EABI
targets.
* ld-arm/thumb2-bl-as-thumb1-bad-noeabi.d: New file.
* ld-arm/thumb2-bl-bad-noeabi.d: Likewise.
ld/
* ld.texinfo: State that farcalls stubs are supported for ARM-EABI
only.
Alan Modra [Wed, 28 May 2008 08:15:27 +0000 (08:15 +0000)]
* elf32-spu.c (spu_elf_object_p): New function.
(elf_backend_object_p): Define.
(build_stub): Correct second word of 8 byte overlay stubs.
(spu_elf_relocate_section): Formatting.
Alan Modra [Wed, 28 May 2008 00:00:05 +0000 (00:00 +0000)]
daily update
Martin Schwidefsky [Tue, 27 May 2008 12:52:44 +0000 (12:52 +0000)]
2008-05-27 Martin Schwidefsky <schwidefsky@de.ibm.com>
* s390-opc.c (INSTR_RRF_R0RR): Fix RRF_R0RR operand format.
2008-05-27 Martin Schwidefsky <schwidefsky@de.ibm.com>
* gas/s390/zarch-z990.d (idte): Fix operand format.
Kai Tietz [Tue, 27 May 2008 08:34:26 +0000 (08:34 +0000)]
2008-05-27 Kai Tietz <kai.tietz@onevision.com>
* pe-dll.c (fill_edata): Make sure we calculate vma's in
type bfd_vma.
(generate_reloc): Likewise.
(pe_implied_import_dll): Likewise.
Alan Modra [Tue, 27 May 2008 00:00:05 +0000 (00:00 +0000)]
daily update
Alan Modra [Mon, 26 May 2008 00:00:05 +0000 (00:00 +0000)]
daily update
Alan Modra [Sun, 25 May 2008 00:00:06 +0000 (00:00 +0000)]
daily update
Carlos Eduardo Seo [Sat, 24 May 2008 16:14:59 +0000 (16:14 +0000)]
* elf.c (elfcore_write_register_note): New function.
* elf-bfd.h (elfcore_write_register_note): New prototype.
Alan Modra [Sat, 24 May 2008 00:00:05 +0000 (00:00 +0000)]
daily update
Nick Clifton [Fri, 23 May 2008 14:16:16 +0000 (14:16 +0000)]
Add more farcall tests
H.J. Lu [Fri, 23 May 2008 13:55:36 +0000 (13:55 +0000)]
2008-05-23 H.J. Lu <hongjiu.lu@intel.com>
PR gas/6518
* config/tc-i386.c (match_template): Report ambiguous operand
size, not invalid suffix when there is no match in Intel
syntax.
Nick Clifton [Fri, 23 May 2008 13:53:27 +0000 (13:53 +0000)]
bfd/
* elf32-arm.c (arm_type_of_stub): Ignore STT_SECTION symbols.
(elf32_arm_stub_add_mapping_symbol): Remove.
(elf32_arm_add_stub): Don't generate mapping symbols. Change
prototype.
(elf32_arm_size_stubs): Use new elf32_arm_add_stub
prototype. Don't generate thumb to arm glue for calls.
(arm_map_one_stub): Define.
(elf32_arm_output_arch_local_syms): Generate mapping symbols for
long calls stubs.
ld/testsuite/
* ld-arm/farcall-arm-arm.s: Force function type on 'bar'.
* ld-arm/farcall-thumb-arm.s: Likewise.
* ld-arm/farcall-thumb-arm-blx.d: Fix encoding.
* ld-arm/farcall-thumb-arm.d: Likewise.
* ld-arm/farcall-thumb-arm-blx-pic-veneer.d: Likewise.
* ld-arm/arm-elf.exp (armelftests): Add farcall-mix, farcall-mix2,
farcall-group-default, farcall-group-size2, farcall-section Ignore
gas warnings in farcall-thumb-arm, farcall-thumb-arm-blx,
farcall-thumb-arm-blx-pic-veneer.
H.J. Lu [Fri, 23 May 2008 00:18:52 +0000 (00:18 +0000)]
gas/testsuite/
2008-05-22 H.J. Lu <hongjiu.lu@intel.com>
* gas/i386/sse-noavx.s: Add tests for cvtpd2pi, cvtpi2pd and
cvttpd2pi.
* 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-22 H.J. Lu <hongjiu.lu@intel.com>
* i386-opc.tbl: Add NoAVX to cvtpd2pi, cvtpi2pd and cvttpd2pi.
* i386-tbl.h: Regenerated.
Alan Modra [Fri, 23 May 2008 00:00:05 +0000 (00:00 +0000)]
daily update
H.J. Lu [Thu, 22 May 2008 20:52:54 +0000 (20:52 +0000)]
gas/testsuite/
2008-05-22 H.J. Lu <hongjiu.lu@intel.com>
PR gas/6517
* gas/i386/avx.s: Add tests for unspecified memory operand
size in Intel syntax.
* gas/i386/x86-64-avx.s: Likewise.
* gas/i386/simd.s: Add tests for cvtsi2ss and cvtsi2sd with
unspecified memory operand size in Intel syntax.
* gas/i386/avx.d: Updated.
* gas/i386/avx-intel.d: Likewise.
* gas/i386/simd.d: Likewise.
* gas/i386/simd-intel.d: Likewise.
* gas/i386/simd-suffix.d: Likewise.
* gas/i386/x86-64-avx.d: Likewise.
* gas/i386/x86-64-avx-intel.d: Likewise.
opcodes/
2008-05-22 H.J. Lu <hongjiu.lu@intel.com>
PR gas/6517
* i386-opc.tbl: Break cvtsi2ss/cvtsi2sd/vcvtsi2sd/vcvtsi2ss
into 32bit and 64bit. Remove Reg64|Qword and add
IgnoreSize|No_qSuf on 32bit version.
* i386-tbl.h: Regenerated.
Paul Brook [Thu, 22 May 2008 17:03:55 +0000 (17:03 +0000)]
2008-05-22 Paul Brook <paul@codesourcery.com>
gas/
* config/tc-arm.c (parse_cond): Covert to lowercase before matching.
Alan Modra [Thu, 22 May 2008 00:00:05 +0000 (00:00 +0000)]
daily update
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.
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.
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.
Alan Modra [Wed, 21 May 2008 00:00:05 +0000 (00:00 +0000)]
daily update
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
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.
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
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.