OSDN Git Service
Cary Coutant [Fri, 30 Jan 2009 00:21:46 +0000 (00:21 +0000)]
* i386.cc (Target_i386::Relocate::relocate): Recognize non-PIC calls
to __tls_get_addr.
* x86_64.cc (Target_x86_64::Relocate::relocate): Likewise.
* ChangeLog: Fixed typo in previous ChangeLog entry (version 1.9).
Alan Modra [Fri, 30 Jan 2009 00:00:31 +0000 (00:00 +0000)]
daily update
Joseph Myers [Thu, 29 Jan 2009 16:36:45 +0000 (16:36 +0000)]
2009-01-29 Andrew Jenner <andrew@codesourcery.com>
* emultempl/armelf.em: Correct formatting of help text for
--no-enum-size-warning option.
Joseph Myers [Thu, 29 Jan 2009 16:35:03 +0000 (16:35 +0000)]
2009-01-29 Daniel Jacobowitz <dan@codesourcery.com>
Mark Shinwell <shinwell@codesourcery.com>
Catherine Moore <clm@codesourcery.com>
* elf-attrs.c, elflink.c, elfxx-mips.c: Correct typos in comments.
Alan Modra [Thu, 29 Jan 2009 13:03:21 +0000 (13:03 +0000)]
PR 9798
* bucomm.c (bfd_nonfatal_message): Use bfd_get_archive_filename.
(bfd_get_archive_filename): Constify param.
* bucomm.h (bfd_get_archive_filename): Update prototype.
* objcopy.c (RETURN_NONFATAL): Delete.
(copy_unknown_object): Don't call bfd_get_archive_filename for
bfd_nonfatal_message filename, instead just pass bfd.
(copy_object): Likewise.
(copy_archive, copy_file): Likewise. Expand RETURN_NONFATAL. On
bfd_close errors, do not pass the bfd to bfd_nonfatal_message.
(setup_bfd_headers): Fix error message.
Joseph Myers [Thu, 29 Jan 2009 11:56:19 +0000 (11:56 +0000)]
gas:
2009-01-29 Mark Mitchell <mark@codesourcery.com>
* config/tc-arm.c (BAD_SP): Define.
(s_arm_unwind_fnstart): Use REG_SP.
(s_arm_unwind_setfp): Likewise.
(reject_bad_reg): New macro.
(do_co_reg): Check for bad registers.
(do_co_reg2c): Likewise.
(do_srs): Use REG_SP.
(do_t_add_sub): Check for bad registers.
(do_t_adr): Likewise.
(do_t_arit3): Likewise.
(do_t_arit3c): Likewise.
(do_t_bfc): Likewise.
(do_t_bfi): Likewise.
(do_t_bfx): Likewise.
(do_t_blx): Likewise.
(do_t_bx): Likewise.
(do_t_bxj): Likewise.
(do_t_clz): Likewise.
(do_t_div): Likewise.
(do_t_mla): Likewise.
(do_t_mlal): Likewise.
(do_t_mov_cmp): Likewise.
(do_t_mov16): Likewise.
(do_t_mvn_tst): Likewise.
(do_t_mrs): Likewise.
(do_t_msr): Likewise.
(do_t_mul): Likewise.
(do_t_mull): Likewise.
(do_t_orn): Likewise.
(do_t_pkhbt): Likewise.
(do_t_pld): Likewise.
(do_t_rbit): Likewise.
(do_t_rev): Likewise.
(do_t_rrx): Likewise.
(do_t_rsb): Likewise.
(do_t_shift): Likewise.
(do_t_simd): Likewise.
(do_t_ssat): Likewise.
(do_t_ssat16): Likewise.
(do_t_sxtah): Likewise.
(do_t_sxth): Likewise.
(do_t_tb): Likewise.
(do_t_usat): Likewise.
(do_t_usat16): Likewise.
(nysn_insert_sp): Use REG_SP.
gas/testsuite:
2009-01-29 Mark Mitchell <mark@codesourcery.com>
* gas/arm/copro.s: Avoid using r15 where not permitted.
* gas/arm/copro.d: Adjust accordingly.
* gas/arm/thumb2_bad_reg.s: New.
* gas/arm/thumb2_bad_reg.l: Likewise.
* gas/arm/thumb2_bad_reg.d: Likewise.
Joseph Myers [Thu, 29 Jan 2009 11:52:26 +0000 (11:52 +0000)]
gas:
2009-01-29 Mark Mitchell <mark@codesourcery.com>
* config/tc-arm.c (do_t_orn): New function.
(do_t_rrx): Likewise.
(insns): Add orn and rrx.
gas/testsuite:
2009-01-29 Mark Mitchell <mark@codesourcery.com>
* gas/arm/thumb32.s: Add tests for orn and rrx.
* gas/arm/thumb32.d: Adjust accordingly.
* gas/arm/thumb32.l: Likewise.
* gas/arm/thumb2_invert.s: Add tests for orn and orr.
* gas/arm/thumb2_invert.d: Adjust accordingly.
* gas/arm/tcompat.s: Add tests for rrx.
* gas/arm/tcompat.d: Adjust accordingly.
Joseph Myers [Thu, 29 Jan 2009 11:50:46 +0000 (11:50 +0000)]
gas:
2009-01-29 Mark Mitchell <mark@codesourcery.com>
* config/tc-arm.c (insns): Add qasx, qsax, shasx, shsax, ssax,
uasx, uhasx, uhsx, uqasx, uqsax, usax.
gas/testsuite:
2009-01-29 Mark Mitchell <mark@codesourcery.com>
* gas/arm/thumb32.s (qadd): Add tests for them.
* gas/arm/thumb32.d: Adjust accordingly.
Joseph Myers [Thu, 29 Jan 2009 11:48:34 +0000 (11:48 +0000)]
gas:
2009-01-29 Mark Mitchell <mark@codesourcery.com>
* config/tc-arm.c (insns): Correct encoding of qadd, qdadd, qsub,
qdsub in Thumb-2 mode.
gas/testsuite:
2009-01-29 Mark Mitchell <mark@codesourcery.com>
* gas/arm/thumb32.s (qadd): Add qadd, qdadd, qsub, and qdsub.
* gas/arm/thumb32.d: Likewise.
opcodes:
2009-01-29 Mark Mitchell <mark@codesourcery.com>
* arm-dis.c (thumb32_opcodes): Correct decoding for qadd, qdadd,
qsub, and qdsub.
Joseph Myers [Thu, 29 Jan 2009 11:46:02 +0000 (11:46 +0000)]
gas:
2009-01-29 Paul Brook <paul@codesourcery.com>
Mark Mitchell <mark@codesourcery.com>
* config/tc-arm.c (do_t_mul): In Thumb-2 mode, use 16-bit encoding
of MUL when possible.
gas/testsuite:
2009-01-29 Paul Brook <paul@codesourcery.com>
Mark Mitchell <mark@codesourcery.com>
* gas/arm/thumb2_mul.s: New file.
* gas/arm/thumb2_mul.d: Likewise.
* gas/arm/thumb2_mul-bad.s: Likewise.
* gas/arm/thumb2_mul-bad.d: Likewise.
* gas/arm/thumb2_mul-bad.l: Likewise.
* gas/arm/t16-bad.s: Add tests for"mul" with high registers.
* gas/arm/t16-bad.l: Update accordingly.
Nick Clifton [Thu, 29 Jan 2009 09:03:13 +0000 (09:03 +0000)]
* config/tc-mep.h (DIFF_EXPR_OK): Do not define.
* gas/all/gas.exp: Expect forward test to fail for MeP.
Expect relax test to fail for MeP.
* gas/mep/relocs.d: Update expected disassembly.
* lib/ld-lib.exp (check_gc_sections_available): Add MeP to list of
targets which do not support garbage collection.
* ld-srec/srec.exp (run_srec_test): Expect tests to fail for MeP.
* ld-elf/group8a.d: Likewise.
* ld-elf/group8b.d: Likewise.
* ld-elf/group9a.d: Likewise.
* ld-elf/group9b.d: Likewise.
* binutils-all/objdump.W: Do not assume that high and low PC
addresses will have been computed.
Nathan Sidwell [Thu, 29 Jan 2009 07:08:12 +0000 (07:08 +0000)]
* doc/c-arm.texi (ARM Directives): Alphabetize. Document .2byte,
.4byte, .8byte, .bss, .even, .extend, .ldouble, .packed, .secrel32
directives.
Doug Evans [Thu, 29 Jan 2009 00:37:12 +0000 (00:37 +0000)]
fix typo in previous entry
Doug Evans [Thu, 29 Jan 2009 00:29:53 +0000 (00:29 +0000)]
* opcode/i386.h: Add multiple inclusion protection.
(EAX_REG_NUM,ECX_REG_NUM,EDX_REGNUM,EBX_REG_NUM,ESI_REG_NUM)
(EDI_REG_NUM): New macros.
(MODRM_MOD_FIELD,MODRM_REG_FIELD,MODRM_RM_FIELD): New macros.
(SIB_SCALE_FIELD,SIB_INDEX_FIELD,SIB_BASE_FIELD): New macros.
(REG_PREFIX_P): New macro.
* amd64-tdep.h (amd64_displaced_step_copy_insn): Declare.
(amd64_displaced_step_fixup): Declare.
* amd64-tdep.c: #include opcode/i386.h, dis-asm.h.
(amd64_arch_regmap): Move out of amd64_analyze_stack_align
and make static global.
(amd64_arch_regmap_len): New static global.
(amd64_arch_reg_to_regnum): New function.
(struct amd64_insn): New struct.
(struct displaced_step_closure): New struct.
(onebyte_has_modrm,twobyte_has_modrm): New static globals.
(rex_prefix_p,skip_prefixes)
(amd64_insn_length_fprintf,amd64_insn_length_init_dis)
(amd64_insn_length,amd64_get_unused_input_int_reg)
(amd64_get_insn_details,fixup_riprel,fixup_displaced_copy)
(amd64_displaced_step_copy_insn)
(amd64_absolute_jmp_p,amd64_absolute_call_p,amd64_ret_p)
(amd64_call_p,amd64_breakpoint_p,amd64_syscall_p)
(amd64_displaced_step_fixup): New functions.
* amd64-linux-tdep.c: #include arch-utils.h.
(amd64_linux_init_abi): Install displaced stepping support.
* gdb.arch/amd64-disp-step.S: New file.
* gdb.arch/amd64-disp-step.exp: New file.
* gdb.arch/i386-disp-step.S: New file.
* gdb.arch/i386-disp-step.exp: New file.
Alan Modra [Thu, 29 Jan 2009 00:00:09 +0000 (00:00 +0000)]
daily update
Ian Lance Taylor [Wed, 28 Jan 2009 20:18:11 +0000 (20:18 +0000)]
* version.cc (version_string): Bump to 1.8.
Ian Lance Taylor [Wed, 28 Jan 2009 20:09:18 +0000 (20:09 +0000)]
* gold.h: Include <cstring> and <stdint.h>.
* version.cc: Include <cstdio>.
* object.cc (Sized_relobj::do_layout): Initialize gc_sd to avoid a
warning.
* reduced_debug_output.cc (insert_into_vector): Rename from
Insert_into_vector; change all callers. Use Swap_unaligned to
avoid aliasing issue; remove union since it is unnecessary.
Catherine Moore [Wed, 28 Jan 2009 16:35:13 +0000 (16:35 +0000)]
* elf32-arm.c (elf32_arm_check_relocs): Set SEC_ALLOC and
SEC_LOAD for dynamic relocation sections.
Nick Clifton [Wed, 28 Jan 2009 08:45:47 +0000 (08:45 +0000)]
* mips-opc.c (suxc1): Add the flag of FP_D.
Sriraman Tallam [Wed, 28 Jan 2009 02:27:07 +0000 (02:27 +0000)]
Wrong date and missing space in last checkin.
Sriraman Tallam [Wed, 28 Jan 2009 02:25:33 +0000 (02:25 +0000)]
2009-01-20 Sriraman Tallam <tmsriram@google.com>
* Makefile.am (CCFILES): Add gc.cc.
(HFILES): Add gc.h.
* Makefile.in: Regenerate.
* gold.cc (Gc_runner): New class.
(queue_initial_tasks): Call garbage collection related tasks
when corresponding options are invoked.
(queue_middle_gc_tasks): New function.
(queue_middle_tasks): Reorder tasks to allow relocs to be read and
processed early before laying out sections during garbage collection.
* gold.h (queue_middle_gc_tasks): New function.
(is_prefix_of): Move from "layout.cc".
* i386.cc (Target_i386::gc_process_relocs): New function.
* layout.cc (is_prefix_of): Remove. Move to "gold.h"
* main.cc (main): Create object of class "Garbage_collection".
* object.cc (Relobj::copy_symbols_data): New function.
(Relobj::is_section_name_included): New function.
(Sized_relobj::do_layout): Allow this function to be called twice
during garbage collection and defer layout of section during the
first call.
* object.h (Relobj::get_symbols_data): New function.
(Relobj::is_section_name_included): New function.
(Relobj::copy_symbols_data): New function.
(Relobj::set_symbols_data): New function.
(Relobj::get_relocs_data): New function.
(Relobj::set_relocs_data): New function.
(Relobj::is_output_section_offset_invalid): New pure virtual function.
(Relobj::gc_process_relocs): New function.
(Relobj::do_gc_process_relocs): New pure virtual function.
(Relobj::sd_): New data member.
(Sized_relobj::is_output_section_offset_invalid): New function.
(Sized_relobj::do_gc_process_relocs): New function.
* options.h (General_options::gc_sections): Modify to not be a no-op.
(General_options::print_gc_sections): New option.
* plugin.cc (Plugin_finish::run): Remove function call to
Plugin_manager::layout_deferred_objects. Move it to "gold.cc".
* powerpc.cc (Target_powerpc::gc_process_relocs): New function.
* reloc.cc (Read_relocs::run): Add task to process relocs and
determine unreferenced sections when doing garbage collection.
(Gc_process_relocs): New class.
(Sized_relobj::do_gc_process_relocs): New function.
(Sized_relobj::do_scan_relocs): Don't try to scan the relocs for
sections that are garbage collected.
* reloc.h (Gc_process_relocs): New class.
* sparc.cc (Target_sparc::gc_process_relocs): New function.
* symtab.cc (Symbol::should_add_dynsym_entry): Do not add entries for
symbols whose corresponding sections are garbage collected.
(Symbol_table::Symbol_table): Add new parameter for the garbage
collection object.
(Symbol_table::gc_mark_undef_symbols): New function.
(Symbol_table::gc_mark_symbol_for_shlib): New function.
(Symbol_table::gc_mark_dyn_syms): New function.
(Symbol_table::resolve): Do not treat symbols seen in dynamic objects
as garbage.
(Symbol_table::add_from_object): Likewise.
(Symbol_table::add_from_relobj): When building shared objects, do not
treat externally visible symbols as garbage.
(Symbol_table::sized_finalize_symbol): Do not check dynamic symbol
table information for static and relocatable links.
* symtab.h (Symbol_table::set_gc): New function.
(Symbol_table::gc): New function.
(Symbol_table::gc_mark_undef_symbols): New function.
(Symbol_table::gc_mark_symbol_for_shlib): New function.
(Symbol_table::gc_mark_dyn_syms): New function.
(Symbol_table::gc_): New data member.
* target.h (Sized_target::gc_process_relocs): New pure virtual
function.
* x86_64.cc (Target_x86_64::gc_process_relocs): New function.
* testsuite/testfile.cc (Target_test::gc_process_relocs): New function.
Alan Modra [Wed, 28 Jan 2009 00:00:04 +0000 (00:00 +0000)]
daily update
Hans-Peter Nilsson [Tue, 27 Jan 2009 22:31:19 +0000 (22:31 +0000)]
* ld-cris/tls-tbss64.s, ld-cris/tls-e-80.d: New test.
Hans-Peter Nilsson [Tue, 27 Jan 2009 22:28:22 +0000 (22:28 +0000)]
* elf32-cris.c (cris_elf_relocate_section): Use elf_hash_table
(info)->tls_size, not elf_hash_table (info)->tls_sec->size for
the size of local TLS data.
Andreas Schwab [Tue, 27 Jan 2009 16:37:10 +0000 (16:37 +0000)]
* mach-o.c (bfd_mach_o_archive_p): Restrict the number of
architectures in the archive.
Nick Clifton [Tue, 27 Jan 2009 15:41:56 +0000 (15:41 +0000)]
PR 9774
* objdump.c (disassemble_section): When the target uses signed
addresses make sure that we compute signed values.
Nick Clifton [Tue, 27 Jan 2009 15:37:18 +0000 (15:37 +0000)]
* MAINTAINERS: Remove Thiemo Seufer's name from the list of MIPS
maintainers.
Nick Clifton [Tue, 27 Jan 2009 15:20:11 +0000 (15:20 +0000)]
* gas/arm/attr-cpu-directive.d: Only run test for EABI targets.
* gas/arm/attr-default.d : Likewise.
* gas/arm/attr-march-all.d: Likewise.
* gas/arm/attr-march-armv1.d: Likewise.
* gas/arm/attr-march-armv2.d: Likewise.
* gas/arm/attr-march-armv2a.d: Likewise.
* gas/arm/attr-march-armv2s.d: Likewise.
* gas/arm/attr-march-armv3.d: Likewise.
* gas/arm/attr-march-armv3m.d: Likewise.
* gas/arm/attr-march-armv4.d: Likewise.
* gas/arm/attr-march-armv4t.d: Likewise.
* gas/arm/attr-march-armv4txm.d: Likewise.
* gas/arm/attr-march-armv4xm.d: Likewise.
* gas/arm/attr-march-armv5.d: Likewise.
* gas/arm/attr-march-armv5t.d: Likewise.
* gas/arm/attr-march-armv5te.d: Likewise.
* gas/arm/attr-march-armv5tej.d: Likewise.
* gas/arm/attr-march-armv5texp.d: Likewise.
* gas/arm/attr-march-armv5txm.d: Likewise.
* gas/arm/attr-march-armv6-m.d: Likewise.
* gas/arm/attr-march-armv6.d: Likewise.
* gas/arm/attr-march-armv6j.d: Likewise.
* gas/arm/attr-march-armv6k.d: Likewise.
* gas/arm/attr-march-armv6kt2.d: Likewise.
* gas/arm/attr-march-armv6t2.d: Likewise.
* gas/arm/attr-march-armv6z.d: Likewise.
* gas/arm/attr-march-armv6zk.d: Likewise.
* gas/arm/attr-march-armv6zkt2.d: Likewise.
* gas/arm/attr-march-armv6zt2.d: Likewise.
* gas/arm/attr-march-armv7-a.d: Likewise.
* gas/arm/attr-march-armv7-m.d: Likewise.
* gas/arm/attr-march-armv7-r.d: Likewise.
* gas/arm/attr-march-iwmmxt.d: Likewise.
* gas/arm/attr-march-iwmmxt2.d: Likewise.
* gas/arm/attr-march-xscale.d: Likewise.
* gas/arm/attr-mcpu.d: Likewise.
* gas/arm/attr-mfpu-arm1020e.d: Likewise.
* gas/arm/attr-mfpu-arm1020t.d: Likewise.
* gas/arm/attr-mfpu-arm1136jf-s.d: Likewise.
* gas/arm/attr-mfpu-arm1136jfs.d: Likewise.
* gas/arm/attr-mfpu-arm7500fe.d: Likewise.
* gas/arm/attr-mfpu-fpa.d: Likewise.
* gas/arm/attr-mfpu-fpa10.d: Likewise.
* gas/arm/attr-mfpu-fpa11.d: Likewise.
* gas/arm/attr-mfpu-fpe.d: Likewise.
* gas/arm/attr-mfpu-fpe2.d: Likewise.
* gas/arm/attr-mfpu-fpe3.d: Likewise.
* gas/arm/attr-mfpu-maverick.d: Likewise.
* gas/arm/attr-mfpu-neon-fp16.d: Likewise.
* gas/arm/attr-mfpu-neon.d: Likewise.
* gas/arm/attr-mfpu-softfpa.d: Likewise.
* gas/arm/attr-mfpu-softvfp+vfp.d: Likewise.
* gas/arm/attr-mfpu-softvfp.d: Likewise.
* gas/arm/attr-mfpu-vfp.d: Likewise.
* gas/arm/attr-mfpu-vfp10-r0.d: Likewise.
* gas/arm/attr-mfpu-vfp10.d: Likewise.
* gas/arm/attr-mfpu-vfp3.d: Likewise.
* gas/arm/attr-mfpu-vfp9.d: Likewise.
* gas/arm/attr-mfpu-vfpv2.d: Likewise.
* gas/arm/attr-mfpu-vfpv3-d16.d: Likewise.
* gas/arm/attr-mfpu-vfpv3.d: Likewise.
* gas/arm/attr-mfpu-vfpxd.d: Likewise.
* gas/arm/attr-order.d: Likewise.
* gas/arm/attr-override-cpu-directive.d: Likewise.
* gas/arm/attr-override-mcpu.d: Likewise.
Nick Clifton [Tue, 27 Jan 2009 13:48:14 +0000 (13:48 +0000)]
* config/tc-mips.c (append_insn): Cope with a complex reloc
sequence containing an unsupported reloc type.
(enum options): Replace computed #define's constants for option
numbers with this enum.
(struct md_longopts): Use the enum. Allow OPTION_32 in a non-ELF
environment.
(md_parse_option): Allow -32 in a non-ELF environment.
* gas/lib/gas-defs.exp: Update description of run_dump_test proc.
* gas/mips/dli.d: Pass -64 to gas.
* gas/mips/mips64-mips3d-incl.d: Likewise.
* gas/mips/octeon.d: Likewise.
* gas/mips/sb1-ext-mdmx.d: Likewise.
* gas/mips/sb1-ext-ps.d: Likewise.
* gas/mips/e32el-rel2.s: Pass -march=mips3 to gas.
Update expected relocs.
* gas/mips/ld-ilocks-addr32.d: Do not run for tx39 targets.
* gas/mips/mips.exp: Remove 'ilocks' variable.
Add ecoff targets to 'addr32' variable.
Set 'no_mips16' for ecoff targets.
Do not run div-ilocks or mul-ilocks test variants.
* gas/mips/mips16-intermix.d: Use nm instead of objdump so that
the symbol table output is sorted. Update expecetd output.
Hans-Peter Nilsson [Tue, 27 Jan 2009 07:06:36 +0000 (07:06 +0000)]
* elf32-cris.c (cris_elf_relocate_section) <case R_CRIS_16_DTPREL>
<R_CRIS_32_DTPREL>: Correct relocation value.
Hans-Peter Nilsson [Tue, 27 Jan 2009 07:05:47 +0000 (07:05 +0000)]
* ld-cris/tls-e-20.d, ld-cris/tls-e-20a.d, ld-cris/tls-e-22.d,
ld-cris/tls-ldgde-14.d, ld-cris/tls-ldgde-15.d,
ld-cris/tls-ldgdex-14.d, ld-cris/tls-ldgdex-15.d: Adjust for
change in relocation values.
Hans-Peter Nilsson [Tue, 27 Jan 2009 06:08:52 +0000 (06:08 +0000)]
* ld-cris/weakhiddso.d, ld-cris/weakhid.s: New test.
Hans-Peter Nilsson [Tue, 27 Jan 2009 06:07:54 +0000 (06:07 +0000)]
* elf32-cris.c (cris_elf_relocate_section) <case R_CRIS_8>
<R_CRIS_16, R_CRIS_32>: Don't call BFD_ASSERT for weak undefined
symbols with non-default visibility.
Alan Modra [Tue, 27 Jan 2009 00:00:05 +0000 (00:00 +0000)]
daily update
Nick Clifton [Mon, 26 Jan 2009 15:52:55 +0000 (15:52 +0000)]
PR 9766
* dlltool.c (xlate): When strip text after the @ sign, look for
the last one not the first one.
Nathan Sidwell [Mon, 26 Jan 2009 15:27:04 +0000 (15:27 +0000)]
* ld-powerpc/powerpc.exp: Add vxworks relax testcase.
* ld-powerpc/vxworks-relax.s, ld-powerpc/vxworks-relax.rd: New.
* ld-powerpc/vxworks1.ld: Add .pad and .far input sections.
* ld-powerpc/vxworks1.rd: Correct regexp for undefined symbols.
Nathan Sidwell [Mon, 26 Jan 2009 15:23:39 +0000 (15:23 +0000)]
* lexsup.c (parse_args): Set check_section_addresses to 1 or 0.
* ld.h (args_type): Make check_section_addresses a char.
ldlang.c (lang_process): Don't consider relocatable flag when
checking for overlap.
* ldmain.c (main): Default check_section_addresses to -1. Check it
for relocatable links.
* ld.texinfo (--check-sections): Update documentation.
Andrew Stubbs [Mon, 26 Jan 2009 14:36:43 +0000 (14:36 +0000)]
2009-01-26 Andrew Stubbs <ams@codesourcery.com>
gas/
* config/tc-arm.c (attributes_set_explicitly): New array.
(s_arm_eabi_attribute): Check return value from s_vendor_attribute.
(cpu_arch): Add ARM_ARCH_V5T.
(aeabi_set_attribute_int): New function.
(aeabi_set_attribute_string): New function.
(aeabi_set_public_attributes): Set attributes according to the user's
intentions, rather than the actual state of the binary.
Use aeabi_set_attribute_int and aeabi_set_attribute_string instead of
bfd_elf_add_proc_attr_int and bfd_elf_add_proc_attr_string.
Support WMMXv2. Use attribute names instead of numbers.
* read.c (s_vendor_attribute): Change return type to int.
Return the tag number that was set.
* read.h (s_vendor_attribute): Change return type to int.
gas/testsuite/
* gas/arm/attr-cpu-directive.d: New file.
* gas/arm/attr-cpu-directive.s: New file.
* gas/arm/attr-default.d: New file.
* gas/arm/attr-march-all.d: New file.
* gas/arm/attr-march-armv1.d: New file.
* gas/arm/attr-march-armv2.d: New file.
* gas/arm/attr-march-armv2a.d: New file.
* gas/arm/attr-march-armv2s.d: New file.
* gas/arm/attr-march-armv3.d: New file.
* gas/arm/attr-march-armv3m.d: New file.
* gas/arm/attr-march-armv4.d: New file.
* gas/arm/attr-march-armv4t.d: New file.
* gas/arm/attr-march-armv4txm.d: New file.
* gas/arm/attr-march-armv4xm.d: New file.
* gas/arm/attr-march-armv5.d: New file.
* gas/arm/attr-march-armv5t.d: New file.
* gas/arm/attr-march-armv5te.d: New file.
* gas/arm/attr-march-armv5tej.d: New file.
* gas/arm/attr-march-armv5texp.d: New file.
* gas/arm/attr-march-armv5txm.d: New file.
* gas/arm/attr-march-armv6-m.d: New file.
* gas/arm/attr-march-armv6.d: New file.
* gas/arm/attr-march-armv6j.d: New file.
* gas/arm/attr-march-armv6k.d: New file.
* gas/arm/attr-march-armv6kt2.d: New file.
* gas/arm/attr-march-armv6t2.d: New file.
* gas/arm/attr-march-armv6z.d: New file.
* gas/arm/attr-march-armv6zk.d: New file.
* gas/arm/attr-march-armv6zkt2.d: New file.
* gas/arm/attr-march-armv6zt2.d: New file.
* gas/arm/attr-march-armv7-a.d: New file.
* gas/arm/attr-march-armv7-m.d: New file.
* gas/arm/attr-march-armv7-r.d: New file.
* gas/arm/attr-march-armv7.d: New file.
* gas/arm/attr-march-armv7a.d: New file.
* gas/arm/attr-march-armv7m.d: New file.
* gas/arm/attr-march-armv7r.d: New file.
* gas/arm/attr-march-iwmmxt.d: New file.
* gas/arm/attr-march-iwmmxt2.d: New file.
* gas/arm/attr-march-xscale.d: New file.
* gas/arm/attr-mcpu.d: New file.
* gas/arm/attr-mfpu-arm1020e.d: New file.
* gas/arm/attr-mfpu-arm1020t.d: New file.
* gas/arm/attr-mfpu-arm1136jf-s.d: New file.
* gas/arm/attr-mfpu-arm1136jfs.d: New file.
* gas/arm/attr-mfpu-arm7500fe.d: New file.
* gas/arm/attr-mfpu-fpa.d: New file.
* gas/arm/attr-mfpu-fpa10.d: New file.
* gas/arm/attr-mfpu-fpa11.d: New file.
* gas/arm/attr-mfpu-fpe.d: New file.
* gas/arm/attr-mfpu-fpe2.d: New file.
* gas/arm/attr-mfpu-fpe3.d: New file.
* gas/arm/attr-mfpu-maverick.d: New file.
* gas/arm/attr-mfpu-neon-fp16.d: New file.
* gas/arm/attr-mfpu-neon.d: New file.
* gas/arm/attr-mfpu-softfpa.d: New file.
* gas/arm/attr-mfpu-softvfp+vfp.d: New file.
* gas/arm/attr-mfpu-softvfp.d: New file.
* gas/arm/attr-mfpu-vfp.d: New file.
* gas/arm/attr-mfpu-vfp10-r0.d: New file.
* gas/arm/attr-mfpu-vfp10.d: New file.
* gas/arm/attr-mfpu-vfp3.d: New file.
* gas/arm/attr-mfpu-vfp9.d: New file.
* gas/arm/attr-mfpu-vfpv2.d: New file.
* gas/arm/attr-mfpu-vfpv3-d16.d: New file.
* gas/arm/attr-mfpu-vfpv3.d: New file.
* gas/arm/attr-mfpu-vfpxd.d: New file.
* gas/arm/attr-order.d: Update Tag_ARM_ISA_use and Tag_THUMB_ISA_use.
* gas/arm/attr-override-cpu-directive.d: New file.
* gas/arm/attr-override-cpu-directive.s: New file.
* gas/arm/attr-override-mcpu.d: New file.
* gas/arm/attr-override-mcpu.s: New file.
* gas/arm/blank.s: New file.
* gas/arm/eabi_attr_1.d: Update Tag_ARM_ISA_use and Tag_THUMB_ISA_use.
ld/testsuite/
* ld-arm/attr-merge-3.attr: Update following gas change.
* ld-arm/attr-merge-2.attr: Update Tag_ARM_ISA_use and
Tag_THUMB_ISA_use following gas changes.
* ld-arm/attr-merge-4.attr: Likewise.
* ld-arm/attr-merge-5.attr: Likewise.
* ld-arm/attr-merge-arch-1.attr: Likewise.
* ld-arm/attr-merge-arch-2.attr: Likewise.
* ld-arm/attr-merge-unknown-2.d: Likewise.
* ld-arm/attr-merge-unknown-2r.d: Likewise.
* ld-arm/attr-merge-unknown-3.d: Likewise.
* ld-arm/attr-merge-wchar-00-nowarn.d: Likewise.
* ld-arm/attr-merge-wchar-00.d: Likewise.
* ld-arm/attr-merge-wchar-02-nowarn.d: Likewise.
* ld-arm/attr-merge-wchar-02.d: Likewise.
* ld-arm/attr-merge-wchar-04-nowarn.d: Likewise.
* ld-arm/attr-merge-wchar-04.d: Likewise.
* ld-arm/attr-merge-wchar-20-nowarn.d: Likewise.
* ld-arm/attr-merge-wchar-20.d: Likewise.
* ld-arm/attr-merge-wchar-22-nowarn.d: Likewise.
* ld-arm/attr-merge-wchar-22.d: Likewise.
* ld-arm/attr-merge-wchar-24-nowarn.d: Likewise.
* ld-arm/attr-merge-wchar-40-nowarn.d: Likewise.
* ld-arm/attr-merge-wchar-40.d: Likewise.
* ld-arm/attr-merge-wchar-42-nowarn.d: Likewise.
* ld-arm/attr-merge-wchar-44-nowarn.d: Likewise.
* ld-arm/attr-merge-wchar-44.d: Likewise.
* ld-arm/attr-merge.attr: Likewise.
Eric B. Weddington [Mon, 26 Jan 2009 13:38:52 +0000 (13:38 +0000)]
/gas:
2009-01-26 Eric B. Weddington <eric.weddington@atmel.com>
PR 9789
* config/tc-avr.c (mcu_types): Fix typo in atmega128rfa1 name.
* doc/c-avr.texi: Likewise.
Kai Tietz [Mon, 26 Jan 2009 10:29:11 +0000 (10:29 +0000)]
2009-01-26 Kai Tietz <kai.tietz@onevision.com>
* pe-dll.c (tmp_seq2): New static variable.
(make_singleton_name_imp): New.
(make_import_fixup_entry): Use for v2 the _imp_<name> symbol and
avoid duplicate import table generation for same symbol.
(pe_create_runtime_relocator_reference): Make reference for
64-bit 8 bytes.
Nick Clifton [Mon, 26 Jan 2009 09:27:30 +0000 (09:27 +0000)]
* gas/arm/attr-order.d: Do not run this test for non-ELF based ARM
targets.
Alan Modra [Mon, 26 Jan 2009 00:00:05 +0000 (00:00 +0000)]
daily update
Dave Anglin [Sun, 25 Jan 2009 23:05:20 +0000 (23:05 +0000)]
* elf-hppa.h (elf_hppa_final_link_relocate): Add check to ensure that
branch targets can be reached for R_PARISC_PCREL22F, R_PARISC_PCREL17F
and R_PARISC_PCREL12F relocations.
Alan Modra [Sun, 25 Jan 2009 00:00:09 +0000 (00:00 +0000)]
daily update
Andreas Schwab [Sat, 24 Jan 2009 09:57:31 +0000 (09:57 +0000)]
* gas/lns/lns.exp: Don't run lns-duplicate for d10v target.
Alan Modra [Sat, 24 Jan 2009 03:10:43 +0000 (03:10 +0000)]
PR 6022
* elflink.c (find_version_for_sym): New function split out from,
but without export_dynamic test, ..
(_bfd_elf_link_assign_sym_version): ..here.
(_bfd_elf_export_symbol): Use it.
Alan Modra [Sat, 24 Jan 2009 00:00:06 +0000 (00:00 +0000)]
daily update
Nathan Sidwell [Fri, 23 Jan 2009 17:46:21 +0000 (17:46 +0000)]
* doc/c-arm.texi (): Document -mwarn-deprecated.
* config/tc-arm.c (WARN_DEPRECATED): Remove. Replace with ...
(warn_on_deprecated): ... this.
(opcode_lookup, md_assemble): Check it before warning.
(arm_opts): Add m[no-]warn-deprecated.
(md_parse_option): Replace WARN_DEPRECATED with
warn_on_deprecated.
Christopher Faylor [Fri, 23 Jan 2009 17:05:16 +0000 (17:05 +0000)]
* options.h (General_options::gc_sections): Define as a no-op for now.
(General_options::no_keep_memory): Ditto.
(General_options::Bshareable): Define.
* options.cc (General_options::finalize): Honor -Bshareable.
Andreas Schwab [Fri, 23 Jan 2009 14:56:38 +0000 (14:56 +0000)]
* config/tc-mips.c (macro) [M_DINS, M_SEQ_I, M_SNE_I]: Cast
arguments to macro_build to match format.
Andreas Schwab [Fri, 23 Jan 2009 14:45:48 +0000 (14:45 +0000)]
* config/obj-elf.h (LOCAL_LABEL_PREFIX): Conditionally define.
* config/tc-s390.h (LOCAL_LABEL_PREFIX): Don't define.
testsuite/:
* gas/mips/mips16-e.d: Adjust for change in LOCAL_LABEL_PREFIX.
* gas/mips/mipsel16-e.d: Likewise.
* gas/mips/tmips16-e.d: Likewise.
* gas/mips/tmipsel16-e.d: Likewise.
Alan Modra [Fri, 23 Jan 2009 12:15:27 +0000 (12:15 +0000)]
* elf-bfd.h (struct elf_assign_sym_version_info): Delete.
(struct elf_info_failed, struct elf_find_verdep_info): Move to..
* elflink.c: ..here, somewhat modified.
* elf-bfd.h (_bfd_elf_add_default_symbol, _bfd_elf_export_symbol,
_bfd_elf_link_find_version_dependencies,
_bfd_elf_link_assign_sym_version, _bfd_elf_link_size_reloc_section,
_bfd_elf_fix_symbol_flags, _bfd_elf_adjust_dynamic_symbol,
_bfd_elf_link_sec_merge_syms, bfd_elf_link_mark_dynamic_symbol): Don't
declare..
* elflink.c: ..and make static here.
(_bfd_elf_link_find_version_dependencies): Adjust for removal
of output_bfd from struct elf_find_verdep_info.
(_bfd_elf_link_assign_sym_version): Similarly adjust to use
struct elf_info_failed.
(bfd_elf_size_dynamic_sections): Adjust.
Alan Modra [Fri, 23 Jan 2009 00:00:09 +0000 (00:00 +0000)]
daily update
Alan Modra [Thu, 22 Jan 2009 08:54:20 +0000 (08:54 +0000)]
PR 6832
* dwarf2.c (find_line): Don't update stash->sec_info_ptr until
after comp_unit_find_line call.
Jeff Johnston [Thu, 22 Jan 2009 00:08:29 +0000 (00:08 +0000)]
2009-01-21 Jeff Johnston <jjohnstn@redhat.com>
* COPYING.NEWLIB: Add ARM license.
Alan Modra [Thu, 22 Jan 2009 00:00:05 +0000 (00:00 +0000)]
daily update
Nick Clifton [Wed, 21 Jan 2009 11:58:05 +0000 (11:58 +0000)]
PR 9769
* vmsutil.c (vms_file_stats_name): Remove use of unsupported
tm_gmtoff field in struct tm.
Alan Modra [Wed, 21 Jan 2009 02:28:22 +0000 (02:28 +0000)]
* ld-spu/icache1.d: Add --non-ia-text to ld options.
Alan Modra [Wed, 21 Jan 2009 02:27:13 +0000 (02:27 +0000)]
bfd/
* elf32-spu.h (struct spu_elf_params): Add non_ia_text.
* elf32-spu.c (mark_overlay_section): Only include .text.ia.*
sections in soft-icache lines unless non_ia_text. Don't add
rodata if doing so would exceed line size.
ld/
* emultempl/spuelf.em (params): Init new field.
(OPTION_SPU_NON_IA_TEXT): Define.
(PARSE_AND_LIST_LONGOPTS, PARSE_AND_LIST_OPTIONS): Add --non-ia-text.
(PARSE_AND_LIST_ARGS_CASES): Handle OPTION_SPU_NON_IA_TEXT.
Alan Modra [Wed, 21 Jan 2009 00:00:10 +0000 (00:00 +0000)]
daily update
Andreas Schwab [Tue, 20 Jan 2009 16:12:00 +0000 (16:12 +0000)]
* powerpc.cc (Powerpc_relocate_functions::rel16_ha): Don't try to
read the value in the contents, since we don't use it. Use the
template endianness when writing.
(Relocate::relocate): Use it for R_PPC_REL16_HA.
Alan Modra [Tue, 20 Jan 2009 07:22:30 +0000 (07:22 +0000)]
Regenerate for copyright date update.
Alan Modra [Tue, 20 Jan 2009 00:00:04 +0000 (00:00 +0000)]
daily update
Andreas Schwab [Mon, 19 Jan 2009 19:55:26 +0000 (19:55 +0000)]
* configure.tgt (powerpc64-*): Fix targ_obj.
Hans-Peter Nilsson [Mon, 19 Jan 2009 17:33:26 +0000 (17:33 +0000)]
* ld-cris/expdref3.s, ld-cris/expdref4.s, ld-cris/weakref3.d,
ld-cris/weakref4.d: New tests.
* ld-cris/libdso-15b.d: Adjust for recent weakref fix.
Hans-Peter Nilsson [Mon, 19 Jan 2009 17:32:59 +0000 (17:32 +0000)]
* elf32-cris.c (elf_cris_copy_indirect_symbol): For other symbol
types than bfd_link_hash_indirect, before early return, call
_bfd_elf_link_hash_copy_indirect.
H.J. Lu [Mon, 19 Jan 2009 15:52:19 +0000 (15:52 +0000)]
2009-01-19 H.J. Lu <hongjiu.lu@intel.com>
* ld-elf/group9.s: Replace .byte with .long.
Nick Clifton [Mon, 19 Jan 2009 15:49:08 +0000 (15:49 +0000)]
* lib/gas-defs.exp (run_list_test): Fix typo in comment.
Nick Clifton [Mon, 19 Jan 2009 15:46:31 +0000 (15:46 +0000)]
* gas/arm/attr-syntax.d: Do not run for non-ELF based ARM targets.
* config/tc-arm.h (CONVERT_SYMBOLIC_ATTRIBUTE): Only define for
ELF format ARM targets.
* config/tc-arm.c (arm_convert_symbolic_attribute): Likewise.
Nick Clifton [Mon, 19 Jan 2009 15:40:56 +0000 (15:40 +0000)]
* configure.tgt: Restore alpha sorting to object format switch
statement.
Andrew Stubbs [Mon, 19 Jan 2009 12:20:15 +0000 (12:20 +0000)]
2009-01-19 Andrew Stubbs <ams@codesourcery.com>
ld/testsuite/
* ld-arm/arm-elf.exp (armeabitests): Add EABI attribute merging 3,
EABI attribute merging 4, and EABI attribute merging 5,
EABI attribute arch merging 1, EABI attribute arch merging 1 reversed,
EABI attribute arch merging 2, EABI attribute arch merging 2 reversed.
Add attr-merge-unknown-1, attr-merge-unknown-2, attr-merge-unknown-2r,
and attr-merge-unknown-3 dump tests.
* ld-arm/arch-v6.s: New file.
* ld-arm/arch-v6k.s: New file.
* ld-arm/arch-v6t2.s: New file.
* ld-arm/attr-merge-3.attr: New file.
* ld-arm/attr-merge-3a.s: New file.
* ld-arm/attr-merge-3b.s: New file.
* ld-arm/attr-merge-4.attr: New file.
* ld-arm/attr-merge-4a.s: New file.
* ld-arm/attr-merge-4b.s: New file.
* ld-arm/attr-merge-5.attr: New file.
* ld-arm/attr-merge-5.s: New file.
* ld-arm/attr-merge-arch-1.attr: New file.
* ld-arm/attr-merge-arch-2.attr: New file.
* ld-arm/attr-merge-unknown-1.d: New file.
* ld-arm/attr-merge-unknown-1.s: New file.
* ld-arm/attr-merge-unknown-2.d: New file.
* ld-arm/attr-merge-unknown-2.s: New file.
* ld-arm/attr-merge-unknown-2r.d: New file.
* ld-arm/attr-merge-unknown-3.d: New file.
* ld-arm/blank.s: New file.
Andrew Stubbs [Mon, 19 Jan 2009 12:14:05 +0000 (12:14 +0000)]
2009-01-19 Andrew Stubbs <ams@codesourcery.com>
bfd/
* elf-attrs.c (vendor_set_obj_attr_contents): Support tag ordering.
* elf-bfd.h (elf_backend_data): Add obj_attrs_order.
* elf32-arm.c (elf32_arm_obj_attrs_order): New function.
(elf_backend_obj_attrs_order): New define.
* elfxx-target.h (elf_backend_obj_attrs_order): New define.
(elfNN_bed): Add elf_backend_obj_attrs_order.
gas/testsuite/
* gas/arm/attr-order.d: New file.
* gas/arm/attr-order.s: New file.
Andrew Stubbs [Mon, 19 Jan 2009 11:55:35 +0000 (11:55 +0000)]
2009-01-19 Andrew Stubbs <ams@codesourcery.com>
bfd/
* elf-attrs.c (is_default_attr): Substitute magic numbers with macros.
(obj_attr_size): Likewise.
(write_obj_attribute): Likewise.
(_bfd_elf_copy_obj_attributes): Likewise.
(_bfd_elf_parse_attributes): Likewise.
* elf-bfd.h (ATTR_TYPE_FLAG_INT_VAL): New define.
(ATTR_TYPE_FLAG_STR_VAL, ATTR_TYPE_FLAG_NO_DEFAULT): New defines.
(ATTR_TYPE_HAS_INT_VAL, ATTR_TYPE_HAS_STR_VAL): New defines.
(ATTR_TYPE_HAS_NO_DEFAULT): New define.
* elf32-arm.c (elf32_arm_obj_attrs_arg_type): Replace magic numbers
with macros.
Andrew Stubbs [Mon, 19 Jan 2009 11:50:31 +0000 (11:50 +0000)]
2009-01-19 Andrew Stubbs <ams@codesourcery.com>
bfd/
* elf-attrs.c (is_default_attr): Support defaultless attributes.
(bfd_elf_add_obj_attr_int): Get type from _bfd_elf_obj_attrs_arg_type.
(bfd_elf_add_obj_attr_string): Likewise.
(bfd_elf_add_obj_attr_int_string): Likewise.
(_bfd_elf_parse_attributes): Allow for unknown flag bits in type.
* elf-bfd.h (struct obj_attribute): Document new flag bit.
* elf32-arm.c (elf32_arm_obj_attrs_arg_type): Specify that
Tag_nodefaults has no default value.
(elf32_arm_merge_eabi_attributes): Modify the Tag_nodefaults
comment to reflect the new state.
gas/
* read.c (s_vendor_attribute): Allow for unknown flag bits in type.
Alan Modra [Mon, 19 Jan 2009 06:11:22 +0000 (06:11 +0000)]
PR 9695
* pdp11.c (N_BADMAG): True for anything but OMAGIC, NMAGIC, ZMAGIC.
(some_aout_object_p): Delete dead code handling QMAGIC and BMAGIC.
(adjust_z_magix): Delete dead code handling QMAGIC.
Alan Modra [Mon, 19 Jan 2009 00:00:05 +0000 (00:00 +0000)]
daily update
Dave Korn [Sun, 18 Jan 2009 23:12:15 +0000 (23:12 +0000)]
* configure.ac (funcs, vars, checkfuncs): Don't munge on Cygwin,
as it no longer shares libiberty object files.
* configure: Regenerated.
Alan Modra [Sun, 18 Jan 2009 00:00:04 +0000 (00:00 +0000)]
daily update
Alan Modra [Sat, 17 Jan 2009 00:00:04 +0000 (00:00 +0000)]
daily update
Kai Tietz [Fri, 16 Jan 2009 15:09:20 +0000 (15:09 +0000)]
2009-01-16 Kai Tietz <kai.tietz@onevision.com>
* coffcode.h (styp_to_sec_flags): Correct interpretation of
IMAGE_SCN_MEM_DISCARDABLE.
H.J. Lu [Fri, 16 Jan 2009 14:14:07 +0000 (14:14 +0000)]
ld/
2009-01-16 H.J. Lu <hongjiu.lu@intel.com>
* lexsup.c (option_values): Add OPTION_TTEXT_SEGMENT.
(ld_options): Add -Ttext-segment.
(parse_args): Handle OPTION_TTEXT_SEGMENT.
* ld.texinfo: Document -Ttext-segment.
* NEWS: Mention -Ttext-segment.
* scripttempl/elf.sc (TEXT_START_ADDR): Use SEGMENT_START.
(SHLIB_TEXT_START_ADDR): Likewise.
ld/testsuite/
2009-01-16 H.J. Lu <hongjiu.lu@intel.com>
* ld-elf/textaddr1.d: New.
* ld-elf/textaddr2.d: Likewise.
Joseph Myers [Fri, 16 Jan 2009 11:38:14 +0000 (11:38 +0000)]
2009-01-16 Mark Shinwell <shinwell@codesourcery.com>
* config/te-armeabi.h (EABI_DEFAULT): Use EF_ARM_EABI_VER5.
* config/te-armlinuxeabi.h (EABI_DEFAULT): Likewise.
Andrew Stubbs [Fri, 16 Jan 2009 10:26:49 +0000 (10:26 +0000)]
2009-01-16 Andrew Stubbs <ams@codesourcery.com>
Daniel Jacobowitz <dan@codesourcery.com>
gas/
* config/tc-arm.c (arm_copy_symbol_attributes): New function.
* config/tc-arm.h (arm_copy_symbol_attributes): New prototype.
(CONVERT_SYMBOLIC_ATTRIBUTE): New define.
* read.c (s_vendor_attribute): Add support for symbolic tag names.
Improve string parser.
* doc/c-arm.texi (ARM Machine Directives): Document
.eabi_attribute symbolic tag names.
gas/testsuite/
* gas/arm/attr-syntax.d: New file.
* gas/arm/attr-syntax.s: New file.
Alan Modra [Fri, 16 Jan 2009 08:07:43 +0000 (08:07 +0000)]
formatting
Alan Modra [Fri, 16 Jan 2009 08:06:15 +0000 (08:06 +0000)]
* Makefile.def (configure-opcodes): Depend on configure-libiberty.
* Makefile.def (all-opcodes): Depend on all-libiberty.
* Makefile.in: Regenerate.
Alan Modra [Fri, 16 Jan 2009 08:02:29 +0000 (08:02 +0000)]
bfd/
* Makefile.am (libbfd_la_LIBADD, libbfd_la_LDFLAGS): Substitute
SHARED_LIBADD and SHARED_LDFLAGS rather than WIN32LIBADD, WIN32LDFLAGS.
* configure.in (commonbfdlib): Delete.
(SHARED_LDFLAGS): Rename from WIN32LDFLAGS/
(SHARED_LIBADD): Rename from WIN32LIBADD. Add pic libiberty if such
is available, not just for linux.
* po/SRC-POTFILES.in: Regenerate.
* Makefile.in: Regenerate.
* configure: Regenerate.
opcodes/
* configure.in (commonbfdlib): Delete.
(SHARED_LIBADD): Add pic libiberty if such is available.
* configure: Regenerate.
* po/POTFILES.in: Regenerate.
binutils/
* configure.in (commonbfdlib): Delete.
* configure: Regenerate.
gas/
* configure.in (commonbfdlib): Delete.
* configure: Regenerate.
* po/POTFILES.in: Regenerate.
Alan Modra [Fri, 16 Jan 2009 00:00:04 +0000 (00:00 +0000)]
daily update
Ian Lance Taylor [Thu, 15 Jan 2009 18:10:54 +0000 (18:10 +0000)]
* object.cc (Sized_relobj::write_local_symbols): Don't write out
local symbols when stripping all symbols.
Andrew Stubbs [Thu, 15 Jan 2009 18:00:49 +0000 (18:00 +0000)]
2009-01-15 Andrew Stubbs <ams@codesourcery.com>
Julian Brown <julian@codesourcery.com>
bfd/
* elf-bfd.h (NUM_KNOWN_OBJ_ATTRIBUTES): Set to 71 to include all known
ARM attributes in ABI 2.07.
* elf32-arm.c (get_secondary_compatible_arch): New function.
(set_secondary_compatible_arch): New function.
(tag_cpu_arch_combine): New function.
(elf32_arm_copy_one_eabi_other_attribute): Delete function.
(elf32_arm_copy_eabi_other_attribute_list): Delete function.
(elf32_arm_merge_eabi_attributes): Rename order_312 to order_021 to
make it fit with order_01243.
Add support for Tag_also_compatible_with,
Tag_CPU_unaligned_access, Tag_T2EE_use, Tag_Virtualization_use,
Tag_MPextension_use, Tag_nodefaults and Tag_conformance.
Improve/tidy up support for Tag_CPU_raw_name, Tag_CPU_name,
Tag_CPU_arch, Tag_ABI_HardFP_use, Tag_VFP_HP_extension,
Tag_ABI_FP_denormal, Tag_ABI_PCS_GOT_use, Tag_ABI_align8_needed,
Tag_VFP_arch and Tag_ABI_FP_16bit_format.
Rework the way unknown attributes are handled.
Defer errors until all attributes have been processed.
gas/
* config/tc-arm.c (cpu_arch): Change ARM_ARCH_V6M to 11.
include/elf/
* arm.h (TAG_CPU_ARCH_V6_M, TAG_CPU_ARCH_V6S_M): New defines.
(MAX_TAG_CPU_ARCH, TAG_CPU_ARCH_V4T_PLUS_V6_M): New defines.
(Tag_NEON_arch): Rename to Tag_Advanced_SIMD_arch to match ARM ABI
version 2.07.
(Tag_undefined39, Tag_nodefaults): New enum values.
(Tag_also_compatible_with, Tag_T2EE_use): Likewise.
(Tag_conformance, Tag_Virtualization_use): Likewise.
(Tag_undefined69, Tag_MPextension_use): Likewise.
Nick Clifton [Thu, 15 Jan 2009 13:30:00 +0000 (13:30 +0000)]
oops - forgot to commit with the previous delta
Andrew Stubbs [Thu, 15 Jan 2009 13:03:05 +0000 (13:03 +0000)]
2009-01-15 Andrew Stubbs <ams@codesourcery.com>
bfd/
* elf-attrs.c (bfd_elf_add_obj_attr_compat): Rename to
bfd_elf_add_obj_attr_int_string.
Read Tag_compatibility from its new location in the attribute array,
rather than the attribute list.
(_bfd_elf_copy_obj_attributes): bfd_elf_add_obj_attr_compat ->
bfd_elf_add_obj_attr_int_string.
(_bfd_elf_parse_attributes): Likewise.
(_bfd_elf_merge_object_attributes): There's now only one
Tag_compatibility, and it's in the array, not the list.
* elf-bfd.h (NUM_KNOWN_OBJ_ATTRIBUTES): Set to 33 to include
Tag_compatibility.
(bfd_elf_add_obj_attr_compat): Rename to
bfd_elf_add_obj_attr_int_string.
(bfd_elf_add_proc_attr_compat): Rename to
bfd_elf_add_proc_attr_int_string.
* elf32-arm.c (elf32_arm_merge_eabi_attributes): Explicitly don't handle
Tag_compatibility.
gas/
* read.c (s_vendor_attribute): bfd_elf_add_obj_attr_compat ->
bfd_elf_add_obj_attr_int_string.
Nick Clifton [Thu, 15 Jan 2009 12:55:46 +0000 (12:55 +0000)]
* configure.ac (ia64*-*-*vms*): Add case with no gdb or ld support.
* configure: Regenerate.
Nick Clifton [Thu, 15 Jan 2009 12:42:52 +0000 (12:42 +0000)]
* include/elf/ia64.h (SHT_IA_64_VMS_DISPLAY_NAME_INFO,
EF_IA_64_ARCHVER_1): New macros. Minor reformatting.
* bfd/Makefile.am (BFD32_BACKENDS): Add new object vmsutil.lo
(BFD32_BACKENDS_CFILES): Add new file vmsutil.c
(vmsutil.lo): Add dependency rule
* bfd/Makefile.in: Regenerate
* bfd/config.bfd (ia64*-*-*vms*): Add case.
* bfd/configure.in (bfd_elf64_ia64_vms_vec): Add case.
* bfd/configure: Regenerate
* bfd/vmsutil.[ch]: New files
* bfd/elf-bfd.h (struct bfd_elf_special_section): Change type of
attr to bfd_vma.
* bfd/elfxx-ia64.c (elfNN_vms_post_process_headers,
elfNN_vms_section_processing, elfNN_vms_final_write_processing,
elfNN_vms_close_and_cleanup, elfNN_vms_section_from_shdr,
elfNN_vms_object_p): New functions
* bfd/targets.c (bfd_elf64_ia64_vms_vec): New target.
* gas/configure.tgt(ia64-*-*vms*): New target.
* gas/dwarf2dbg.h (dwarf2_loc_mark_labels): Make extern.
* gas/tc.h (md_number_to_chars): Declare iff undefined.
* gas/config/obj-elf.c (obj_elf_change_section): Change type of
arg attr to bfd_vma.
(obj_elf_parse_section_letters): Return a bfd_vma. Change type of
variables attr, md_attr to bfd_vma.
(obj_elf_section_word): Likewise.
(obj_elf_section): Change type of variable attr to bfd_vma
* gas/config/obj-elf.h (obj_elf_change_section): Change type of
arg attr to bfd_vma
* gas/config/tc-ia64.c (bfdver.h,time.h): Include.
(ia64_elf_section_letter): Now returns a bfd_vma.
Handle VMS specific attributes.
(ia64_elf_section_flags): Arg attr now a bfd_vma.
(ia64_init): Don't turn on dependency checking for VMS.
(ia64_target_format): Check for VMS flag bit.
(do_alias): Hande decc$ functions.
(get_vms_time): New function.
(ia64_vms_note): New function.
* gas/config/tc-ia64.h (ia64_elf_section_letter): Now returns a bfd_vma.
(ia64_elf_section_flags): Arg attr now a bfd_vma.
(tc_init_after_args): Define for VMS.
* gas/config/tc-alpha.c (alpha_elf_section_letter): Return a bfd_vma.
(alpha_elf_section_flags): Change type of arg attr to bfd_vma.
* gas/config/tc-alpha.h: Likewise.
* gas/config/tc-i386.c (x86_64_section_letter): Return a bfd_vma.
(x86_64_section_word): Return a bfd_vma.
* gas/config/tc-i386.h: Likewise.
* gas/config/tc-ip2k.c (ip2k_elf_section_flags): Change type of arg
attr to bfd_vma.
* gas/config/tc-ip2k.h: Likewise.
* gas/config/tc-mep.c (mep_elf_section_letter): Return a bfd_vma.
(mep_elf_section_flags): Change type of arg attr to bfd_vma.
* gas/config/tc-mep.h: Likewise.
* gas/config/tc-ppc.c (ppc_section_letter): Return a bfd_vma.
(ppc_section_word): Return a bfd_vma.
(ppc_section_flags): Change type of arg attr to bfd_vma.
* gas/config/tc-ppc.h: Likewise.
* gas/config/te-vms.h (DWARF2_DIR_SHOULD_END_WITH_SEPARATOR,
DWAR2_FILE_TIME_NAME, DWARF2_FILE_SIZE_NAME, DWARF2_FILEN_NAME):
New file with new macros
* gas/dwarf2dbg.c (get_filenum, out_file_list): Default and call new
macros.
Nick Clifton [Thu, 15 Jan 2009 12:33:46 +0000 (12:33 +0000)]
PR 9722
* config/tc-arm.c (do_t_nop): Check for availability of Thumb2
instructions before generating a Thumb2 nop.
* gas/testsuite/gas/arm/archv6m.d: Update expected NOP opcode.
* gas/testsuite/gas/arm/pr9722.s: New test.
* gas/testsuite/gas/arm/pr9722.d: Expected disassembly.
Peter Bergner [Thu, 15 Jan 2009 04:27:28 +0000 (04:27 +0000)]
opcodes/
* ppc-dis.c (print_insn_powerpc): Skip insn if it is deprecated.
* ppc-opc.c (powerpc_opcodes) <mtfsf, mtfsf.>: Deprecate the two
operand form and enable the four operand form for POWER6 and later.
<mtfsfi, mtfsfi.>: Deprecate the two operand form and enable the
three operand form for POWER6 and later.
gas/testsuite/
* gas/ppc/power6.s ("mtfsf", "mtfsf.", "mtfsfi", "mtfsfi."): Add tests.
* gas/ppc/power6.d: Likewise.
Cary Coutant [Thu, 15 Jan 2009 02:18:11 +0000 (02:18 +0000)]
* output.cc (Output_reloc): Add explicit instantiations.
Cary Coutant [Thu, 15 Jan 2009 01:29:25 +0000 (01:29 +0000)]
* archive.cc (Archive::get_elf_object_for_member): Remove call
to File_read::claim_for_plugin.
* descriptors.cc (Descriptors::open): Remove reference to
is_claimed.
(Descriptors::claim_for_plugin): Remove.
* descriptors.h (Descriptors::claim_for_plugin): Remove.
(Descriptors::is_claimed): Remove.
(claim_descriptor_for_plugin): Remove.
* fileread.cc (File_read::claim_for_plugin): Remove.
* fileread.h (File_read::claim_for_plugin): Remove.
(File_read::descriptor): Reopen descriptor if necessary.
* plugin.cc (Plugin::load): Add two new APIs to transfer vector.
(Plugin_manager::all_symbols_read): Add task parameter. Change
all callers.
(Plugin_manager::get_input_file): New function.
(Plugin_manager::release_input_file): New function.
(Pluginobj::Pluginobj): Add filesize parameter and initialize
corresponding data member.
(Sized_pluginobj::Sized_pluginobj): Add filesize parameter
and pass to base constructor. Change all callers.
(get_input_file, release_input_file): New functions.
(make_sized_plugin_object): Add filesize parameter. Change all callers.
* plugin.h (Plugin_manager::Plugin_manager): Initialize task_ member.
(Plugin_manager::all_symbols_read): Add task parameter.
(Plugin_manager::get_input_file): New function.
(Plugin_manager::release_input_file): New function.
(Plugin_manager::task_): New data member.
(Pluginobj::Pluginobj): Add filesize parameter.
(Pluginobj::filename): New function.
(Pluginobj::descriptor): New function.
(Pluginobj::filesize): New function.
(Pluginobj::filesize_): New data member.
(Sized_pluginobj::Sized_pluginobj): Add filesize parameter.
* readsyms.cc (Read_symbols::do_read_symbols): Remove call to
File_read::claim_for_plugin; use Object::unlock to unlock the file.
* testsuite/Makefile.am (plugin_test_4): New test case for plugins
with archive libraries.
* testsuite/Makefile.in: Regenerate.
* testsuite/plugin_test.c (struct sym_info): New type.
(get_input_file, release_input_file): New static variables.
(onload): Capture new transfer vector entries.
(claim_file_hook): Stop reading at end of file according to filesize.
Factor out parsing of readelf output into separate function.
(all_symbols_read_hook): Exercise get_input_file and release_input_file
APIs and get the source file name from the symbol table. Convert
source file name to corresponding object file name. Print info
message when adding new input files.
(parse_readelf_line): New function.
* testsuite/plugin_test_1.sh: Add checks for new info messages.
* testsuite/plugin_test_2.sh: Likewise.
* testsuite/plugin_test_3.sh: Likewise.
* testsuite/plugin_test_4.sh: New test case.
Cary Coutant [Thu, 15 Jan 2009 01:28:14 +0000 (01:28 +0000)]
* plugin-api.h (LDPS_BAD_HANDLE): New constant.
(ld_plugin_get_input_file): New typedef.
(ld_plugin_release_input_file): New typedef.
(LDPT_GET_INPUT_FILE, LDPT_RELEASE_INPUT_FILE): New constants.
(struct ld_plugin_tv): Add two new fields.
Alan Modra [Thu, 15 Jan 2009 00:00:05 +0000 (00:00 +0000)]
daily update
H.J. Lu [Wed, 14 Jan 2009 21:52:49 +0000 (21:52 +0000)]
bfd/
2009-01-14 H.J. Lu <hongjiu.lu@intel.com>
PR ld/9727
* elflink.c (elf_gc_sweep): Exclude the group section if the
first member of the section group is excluded.
ld/testsuite/
2009-01-14 H.J. Lu <hongjiu.lu@intel.com>
PR ld/9727
* ld-elf/group8.s: New.
* ld-elf/group8a.d: Likewise.
* ld-elf/group8b.d: Likewise.
* ld-elf/group9.s: Likewise.
* ld-elf/group9a.d: Likewise.
* ld-elf/group9b.d: Likewise.