OSDN Git Service
Chao-ying Fu [Wed, 5 Aug 2009 21:17:51 +0000 (21:17 +0000)]
2009-08-05 Chao-ying Fu <fu@mips.com>
* elf32-mips.c (mips_reloc_map): Add BFD_RELOC_MIPS_JALR.
* elfxx-mips.c (JAL_TO_BAL_P): New define to transform JAL to BAL
for CPUs. It is true for RM9000.
(JALR_TO_BAL_P): New define to transform JALR to BAL. It is true
for all CPUs.
(mips_elf_perform_relocation): Use JAL_TO_BAL_P and JALR_TO_BAL_P
to guard the transformation.
Sriraman Tallam [Wed, 5 Aug 2009 20:51:56 +0000 (20:51 +0000)]
*** empty log message ***
Trevor Smigiel [Wed, 5 Aug 2009 20:40:34 +0000 (20:40 +0000)]
bfd/
* elf32-spu.h (spu_elf_params): Add member emit_fixups.
(spu_elf_size_sections): Declare prototype.
* elf32-spu.c (spu_link_hash_table): Add member sfixup.
(FIXUP_RECORD_SIZE, FIXUP_GET, FIXUP_PUT): New macros.
(spu_elf_emit_fixup): New function.
(spu_elf_relocate_section): Emit fixup for each SPU_ADDR32.
(spu_elf_size_sections): New function.
ld/
* emulparams/elf32_spu.sh (OTHER_READONLY_SECTIONS): Add .fixup
section and __fixup_start symbol.
* emultempl/spuelf.em (params): Initialize emit_fixups member.
(spu_before_allocation): Call spu_elf_size_sections.
(OPTION_SPU_EMIT_FIXUPS): Define.
(PARSE_AND_LIST_LONGOPTS): Add --emit-fixups.
(PARSE_AND_LIST_ARGS_CASES): Handle --emit-fixups.
* ld.texinfo (--emit-fixups): Document.
ld/testsuite/
* ld-spu/fixup.d: New.
* ld-spu/fixup.s: New.
Eric B. Weddington [Wed, 5 Aug 2009 12:47:33 +0000 (12:47 +0000)]
/gas:
2009-08-05 Eric B. Weddington <eric.weddington@atmel.com>
* config/tc-avr.c (mcu_types): Add attiny2313a, attiny4313, attiny261a,
attiny861a, atmega644pa, attiny24a, attiny44a.
* doc/c-avr.texi: Likewise.
Nathan Sidwell [Wed, 5 Aug 2009 12:36:14 +0000 (12:36 +0000)]
bfd/
* elf32-arm.c (elf32_arm_stub_type): Add arm_stub_a8_veneer_lwm.
(arm_build_one_stub): Build a8 veneers as a separate pass.
(cortex_a8_erratum_scan): Add prev_num_a8_fixes and stub_changed_p
parameters. Use them to check if we create a different a8 fixup
than the previous pass.
(elf32_arm_size_stubs): Move scope of stub_changed and
prev_num_a8_fixes into main loop.
(elf32_arm_build_stubs): Build a8 veneers in a second pass.
ld/testsuite/
* ld-arm/cortex-a8-far-1.s: New.
* ld-arm/cortex-a8-far-2.s: New.
* ld-arm/cortex-a8-far.d: New.
* ld-arm/arm-elf.exp: Add new test.
Sandra Loosemore [Wed, 5 Aug 2009 00:44:01 +0000 (00:44 +0000)]
2009-08-04 Sandra Loosemore <sandra@codesourcery.com>
gas/
* doc/c-mips.texi (MIPS Opts): List 1004K options for -march.
* config/tc-mips.c (mips_cpu_info_table): Add 1004K cores.
Alan Modra [Wed, 5 Aug 2009 00:00:11 +0000 (00:00 +0000)]
daily update
Nathan Sidwell [Tue, 4 Aug 2009 14:56:10 +0000 (14:56 +0000)]
* config/tc-arm.c (my_get_expression): Detect missing expressions.
testsuite/
* gas/arm/missing.s: New.
* gas/arm/missing.d: New.
* gas/arm/missing.l: New.
Alan Modra [Tue, 4 Aug 2009 08:15:24 +0000 (08:15 +0000)]
PR 10474
* emultempl/ppc32elf.em (ppc_before_allocation): Test rawsize,
not size, after lang_reset_memory_regions.
Alan Modra [Tue, 4 Aug 2009 08:03:35 +0000 (08:03 +0000)]
* elf32-ppc.c (ppc_elf_relax_section): Correct conditions under
which find_plt_ent is called. Delete redundant code.
Alan Modra [Tue, 4 Aug 2009 00:00:05 +0000 (00:00 +0000)]
daily update
H.J. Lu [Mon, 3 Aug 2009 23:56:08 +0000 (23:56 +0000)]
2009-08-03 H.J. Lu <hongjiu.lu@intel.com>
PR binutils/10363
* elf.c (bfd_elf_string_from_elf_section): Return NULL on
invalid string offset.
H.J. Lu [Mon, 3 Aug 2009 15:50:51 +0000 (15:50 +0000)]
2009-08-03 H.J. Lu <hongjiu.lu@intel.com>
PR ld/10433
* elf-ifunc.c (_bfd_elf_allocate_ifunc_dyn_relocs): Set got
to htab->init_got_offset and plt to htab->init_plt_offset
when discarding space for dynamic relocations.
H.J. Lu [Mon, 3 Aug 2009 13:47:35 +0000 (13:47 +0000)]
2009-08-03 H.J. Lu <hongjiu.lu@intel.com>
PR binutils/10364
* objcopy.c (strip_main): Check return from smart_rename.
(copy_main): Likewise.
Alan Modra [Mon, 3 Aug 2009 12:10:46 +0000 (12:10 +0000)]
* elf32-ppc.c (struct plt_entry): Revise comments.
(ppc_elf_check_relocs): Don't create needless plt_entry info
for non-pie executables. Don't test info->pie when info->shared
already covers that case.
(ppc_elf_gc_sweep_hook): Adjust for above change.
(add_stub_sym): Don't test info->pie when info->shared tested.
(allocate_dynrelocs, ppc_elf_size_dynamic_sections): Likewise.
(write_glink_stub, ppc_elf_finish_dynamic_symbol): Likewise.
(ppc_elf_relax_section): Adjust find_plt_ent arguments.
(ppc_elf_relocate_section): Likewise.
Alan Modra [Mon, 3 Aug 2009 10:23:18 +0000 (10:23 +0000)]
* elf32-ppc.c (ppc_elf_check_relocs): Always add a plt ref count
for local ifunc symbols in non-pie executables, regardless of
reloc type. Don't specially create ifunc dyn relocs. Tidy ifunc
code so that it's obvious that we only do anything special for
local ifunc syms.
(ppc_elf_gc_sweep_hook): Adjust to suit check_relocs changes.
(allocate_dynrelocs): Correct comment for syms defined in plt.
Don't specially allocate ifunc dyn relocs.
(ppc_elf_relax_section): Relax branches to ifunc plt entries too.
(ppc_elf_relocate_section): Set "relocation" value for ifunc
syms in non-pie executables. No specially allocated dyn relocs
for ifunc to write. Allow for local sym on R_PPC_RELAX32_PLT.
(ppc_elf_finish_dynamic_symbol): Set value of ifunc symbols in
a non-pie executable.
Alan Modra [Mon, 3 Aug 2009 00:00:05 +0000 (00:00 +0000)]
daily update
H.J. Lu [Sun, 2 Aug 2009 23:55:49 +0000 (23:55 +0000)]
2009-08-02 H.J. Lu <hongjiu.lu@intel.com>
Jakub Jelinek <jakub@redhat.com>
PR ld/6443
* elf32-i386.c (elf_i386_tls_transition): Check executable
instead of shared for TLS when building PIE.
(elf_i386_check_relocs): Likewise.
(elf_i386_allocate_dynrelocs): Likewise.
(elf_i386_relocate_section): Likewise.
* elf64-x86-64.c (elf64_x86_64_tls_transition): Check executable
instead of shared for TLS when building PIE.
(elf64_x86_64_check_relocs): Likewise.
(elf64_x86_64_allocate_dynrelocs): Likewise.
(elf64_x86_64_relocate_section): Likewise.
ld/testsuite/
2009-08-02 H.J. Lu <hongjiu.lu@intel.com>
PR ld/6443
* ld-i386/i386.exp: Run tlspie1.
* ld-x86-64/x86-64.exp: tlspie1.
* ld-i386/tlspie1.d: New.
* ld-i386/tlspie1.s: Likewise.
* ld-x86-64/tlspie1.d: Likewise.
* ld-x86-64/tlspie1.s: Likewise.
Eric B. Weddington [Sun, 2 Aug 2009 14:34:55 +0000 (14:34 +0000)]
/gas:
2009-08-02 Eric B. Weddington <eric.weddington@atmel.com>
* config/tc-avr.c (mcu_types): Add atmega8m1, atmega8c1, atmega16c1.
* doc/c-avr.texi: Likewise.
Alan Modra [Sun, 2 Aug 2009 00:00:04 +0000 (00:00 +0000)]
daily update
Eric B. Weddington [Sat, 1 Aug 2009 16:17:23 +0000 (16:17 +0000)]
/gas:
2009-08-01 Eric B. Weddington <eric.weddington@atmel.com>
* config/tc-avr.c (mcu_types): Add atmega8u2, atmega16u2, atmega32u2.
* doc/c-avr.texi: Likewise.
Alan Modra [Sat, 1 Aug 2009 00:00:05 +0000 (00:00 +0000)]
daily update
Daniel Jacobowitz [Fri, 31 Jul 2009 18:14:07 +0000 (18:14 +0000)]
binutils/testsuite/
* binutils-all/arm/thumb2-cond.s: Use instructions instead of
.short.
gas/
* config/obj-elf.c (obj_elf_ident): Notify section change to the hook.
* config/tc-arm.c (make_mapping_symbol): New function, from
mapping_state. Save mapping symbols in the frag.
(insert_data_mapping_symbol): New.
(mapping_state): Use make_mapping_symbol, improve state transitions.
(mapping_state_2): New. Provide dummy definition.
(opcode_select): Do not call mapping_state.
(s_bss): Call md_elf_section_change_hook instead of mapping_state.
(output_inst): Update use of tc_frag_data.
(new_automatic_it_block): Call mapping_state before emitting the
IT instruction.
(md_assemble): Move mapping_state to just before outputting the
new instruction.
(arm_handle_align): Update use of tc_frag_data.
Call insert_data_mapping_symbol.
(arm_init_frag): Update use of tc_frag_data. Call
mapping_state_2.
(arm_elf_change_section): Always update the mapping symbol FSM state.
(check_mapping_symbols): New function.
(arm_adjust_symtab): Use check_mapping_symbols.
* config/tc-arm.h (struct arm_frag_type): New.
(TC_FRAG_TYPE): Change to struct arm_frag_type.
(TC_FRAG_INIT): Pass max_chars.
(arm_init_frag): Update prototype.
gas/testsuite/
* gas/arm/mapdir.d, gas/arm/mapdir.s: New files.
* gas/arm/mapping.d: Adapted to new symbols generation.
* gas/arm/mapping2.d: New test case.
* gas/arm/mapping2.s: New file.
* gas/arm/mapping3.d: New test case.
* gas/arm/mapping3.s: New file.
* gas/arm/mapping4.d: New test case.
* gas/arm/mapping4.s: New file.
* gas/arm/mapshort-eabi.d: Adapted to new symbols generation.
* gas/elf/section2.e-armeabi: Adapted to new symbols generation.
Anthony Green [Fri, 31 Jul 2009 11:25:14 +0000 (11:25 +0000)]
Add moxie-uclinux support.
Hans-Peter Nilsson [Fri, 31 Jul 2009 04:55:48 +0000 (04:55 +0000)]
* ld-mmix/x.s, ld-mmix/y.s, ld-mmix/zeroeh.ld,
ld-mmix/zeroehelf.d, ld-mmix/zeroehmmo.d: Use .gcc_except_table,
not .eh_frame.
Hans-Peter Nilsson [Fri, 31 Jul 2009 02:25:56 +0000 (02:25 +0000)]
* linker.c (fix_syms): Consider SEC_LOAD when choosing section.
Alan Modra [Fri, 31 Jul 2009 00:00:05 +0000 (00:00 +0000)]
daily update
Ralf Wildenhues [Thu, 30 Jul 2009 22:44:50 +0000 (22:44 +0000)]
intl/
* Makefile.in (aclocal_deps): New variable.
($(srcdir)/aclocal.m4): Use it, for portable makefile syntax.
libdecnumber/
* Makefile.in (aclocal_deps): New variable.
($(srcdir)/aclocal.m4): Use it, for portable makefile syntax.
etc/
* Makefile.in (AUTOCONF, configure_deps): New variables.
($(srcdir)/configure, config.status): New rules.
(Makefile): Depend on config.status.
* configure.in: Accept --enable-maintainer-mode, set and
substitute MAINT accordingly.
gdb/
* Makefile.in (ACLOCAL, ACLOCAL_AMFLAGS, aclocal_m4_deps)
(AUTOCONF, configure_deps, AUTOHEADER): New variables.
($(srcdir)/aclocal.m4, $(srcdir)/configure, $(srcdir)/config.in)
(am--refresh): New rules.
(stamp-h, config.status): List config.in and configure including
$(srcdir)/ prefix.
* aclocal.m4: Regenerate.
* configure: Regenerate.
Ralf Wildenhues [Thu, 30 Jul 2009 19:43:16 +0000 (19:43 +0000)]
config/
* extensions.m4 (AC_USE_SYSTEM_EXTENSIONS): Do not expand
for Autoconf 2.62 or newer.
* tls.m4 (GCC_CHECK_TLS): Fix m4 quotation.
* no-executables.m4 (_AC_COMPILER_EXEEXT): Fix m4 quotation.
* override.m4 (m4_copy_force, m4_rename_force): Provide
macros if not defined.
(AC_PREREQ): Use m4_copy_force.
readline/examples/rlfe/
* configure.in: Correctly quote AC_PROGRAM_SOURCE definition.
H.J. Lu [Thu, 30 Jul 2009 15:55:59 +0000 (15:55 +0000)]
2009-07-30 H.J. Lu <hongjiu.lu@intel.com>
* ld-elf/shared.exp: Comment out dl3b.
Nick Clifton [Thu, 30 Jul 2009 08:54:49 +0000 (08:54 +0000)]
* doc/c-arm.texi (ARM-Instruction-Set): New node. Documents the
different syntaxes support by the ARM port.
(ARM Directives): Add entry for .syntax.
Nick Clifton [Thu, 30 Jul 2009 08:45:41 +0000 (08:45 +0000)]
* doc/c-mips.texi (MIPS insn): Fix typo.
Hans-Peter Nilsson [Thu, 30 Jul 2009 00:13:55 +0000 (00:13 +0000)]
* ld-scripts/empty-address-3a.d, ld-scripts/empty-address-3b.d:
Skip for mmix-knuth-mmixware.
Alan Modra [Thu, 30 Jul 2009 00:00:09 +0000 (00:00 +0000)]
daily update
DJ Delorie [Wed, 29 Jul 2009 20:01:28 +0000 (20:01 +0000)]
merge from gcc
Alan Modra [Wed, 29 Jul 2009 14:59:23 +0000 (14:59 +0000)]
* emulparams/elf32ppc.sh (PLT): Don't include ".iplt".
* emulparams/elf_i386.sh (IREL_IN_PLT): Define.
* emulparams/elf_x86_64.sh (IREL_IN_PLT): Define.
* scripttempl/elf.sc: Create separate .iplt and .rela.iplt sections
when !IREL_IN_PLT.
Alan Modra [Wed, 29 Jul 2009 14:56:38 +0000 (14:56 +0000)]
* elf32-ppc.c (ppc_elf_check_relocs): Always set up sections
used by indirect function support. Count dynamic relocs for
ifunc syms.
(ppc_elf_adjust_dynamic_symbol): Tweak for ifunc.
(allocate_dynrelocs): Allocate all non-dynamic ifunc plt entries
in iplt and their relocs in reliplt. Don't make ifunc syms
dynamic. Allocate got entry relocs for non-dynamic ifunc in
reliplt. Handle other dynamic relocs for ifunc.
(ppc_elf_size_dynamic_sections): Alloc dyn relocs for static
ifunc in reliplt, likewise relocs for got against local ifunc.
Typo fix on reliplt size adjust.
(ppc_elf_relocate_section): Don't use plt scheme of allocating
relocs 1-1 with entries for iplt, instead just add using
reloc_count. Write got relocs and dyn relocs for ifunc to reliplt.
Error on invalid ifunc dyn relocs.
(ppc_elf_finish_dynamic_symbol): Adjust for non-dynamic ifunc plt
in iplt/reliplt.
* elf64-ppc.c (ppc64_elf_howto_raw): Add R_PPC64_JMP_IREL,
R_PPC64_REL16, R_PPC64_REL16_LO, R_PPC64_REL16_HI, R_PPC64_REL16_HA.
(ppc64_elf_reloc_type_lookup): Handle new relocs.
(ppc64_elf_check_relocs): Likewise. Count dyn relocs for ifunc.
(allocate_dynrelocs): As for elf32-ppc.c above.
(ppc64_elf_size_dynamic_sections): Likewise.
(ppc_build_one_stub): Put non-dynamic ifunc plt call stubs in iplt,
and their relocs in reliplt. Use R_PPC64_JMP_IREL.
(ppc_size_one_stub): Similarly.
(ppc64_elf_relocate_section): As for elf32-ppc.c above. Handle new
relocs too.
(ppc64_elf_finish_dynamic_symbol): As for elf32-ppc.c above.
Alan Modra [Wed, 29 Jul 2009 14:55:20 +0000 (14:55 +0000)]
* ppc64.h: Add R_PPC64_JMP_IREL, R_PPC64_REL16, R_PPC64_REL16_LO,
R_PPC64_REL16_HI, R_PPC64_REL16_HA.
Hans-Peter Nilsson [Wed, 29 Jul 2009 06:47:48 +0000 (06:47 +0000)]
* ld-scripts/default-script.s (text): Globalize.
* ld-scripts/default-script1.d, ld-scripts/default-script2.d,
ld-scripts/default-script3.d, ld-scripts/default-script4.d: Adjust
accordingly.
Alan Modra [Wed, 29 Jul 2009 06:22:13 +0000 (06:22 +0000)]
PR ld/10269
* symbols.c (S_FORCE_RELOC): True for BSF_GNU_INDIRECT_FUNCTION.
* config/tc-i386.c: Revert 2009-06-13 change.
* config/tc-i386.h: Likewise.
Alan Modra [Wed, 29 Jul 2009 06:10:18 +0000 (06:10 +0000)]
* binutils-all/testranges.s: Replace .value with .short.
Hans-Peter Nilsson [Wed, 29 Jul 2009 00:25:22 +0000 (00:25 +0000)]
* scripttempl/mmo.sc: For relocateable links, set $OUTPUT_FORMAT to
the new $RELOCATEABLE_OUTPUT_FORMAT, if set.
(OUTPUT_FORMAT): Use the variable $OUTPUT_FORMAT.
(ENTRY): Don't emit for relocateable links.
(/DISCARD/): Don't discard .gnu.warning.* for relocateable links.
* emulparams/mmo.sh (RELOCATEABLE_OUTPUT_FORMAT): Set, to
elf64-mmix.
* emulparams/elf64mmix.sh (OTHER_TEXT_SECTIONS): Empty, don't
provide "Main" or set "_start.", for relocateable links.
Alan Modra [Wed, 29 Jul 2009 00:00:05 +0000 (00:00 +0000)]
daily update
Hans-Peter Nilsson [Tue, 28 Jul 2009 23:45:22 +0000 (23:45 +0000)]
* elf64-mmix.c (mmix_elf_relax_section): Revert 2009-05-27
change. Add note to head comment.
Jan Beulich [Tue, 28 Jul 2009 06:22:01 +0000 (06:22 +0000)]
bfd/
2009-07-28 Jan Beulich <jbeulich@novell.com>
* archive.c (get_extended_arelt_filename): Remove redundant
range check on index.
Jan Beulich [Tue, 28 Jul 2009 06:20:49 +0000 (06:20 +0000)]
gas/
2009-07-28 Jan Beulich <jbeulich@novell.com>
* expr.c (op_rank): Specify size. Remove O_md* initializers.
Alan Modra [Tue, 28 Jul 2009 00:00:04 +0000 (00:00 +0000)]
daily update
Doug Kwan [Mon, 27 Jul 2009 23:04:05 +0000 (23:04 +0000)]
2009-07-27 Doug Kwan <dougkwan@google.com>
* elf32-arm.c (stub_hash_newfunc): Initialize field output_name.
Maxim Kuvyrkov [Mon, 27 Jul 2009 20:07:00 +0000 (20:07 +0000)]
* config/tc-m68k.c (mcf5221x_ctrl): New.
(m68k_cpu): Add line for MCF5221x.
Maxim Kuvyrkov [Mon, 27 Jul 2009 20:05:03 +0000 (20:05 +0000)]
* config/tc-m68k.c (mcf52235_ctrl): Remove non-existent CACR, ACR[01].
(mcf53017_ctrl): Fix RAMBAR.
DJ Delorie [Mon, 27 Jul 2009 19:01:17 +0000 (19:01 +0000)]
merge from gcc
Nick Clifton [Mon, 27 Jul 2009 17:08:03 +0000 (17:08 +0000)]
PR 10413
* objdump.c (dump_section_header): Skip sections that we are
ignoring.
Nick Clifton [Mon, 27 Jul 2009 15:07:38 +0000 (15:07 +0000)]
* (po/fi.po): Updated Finnish translation.
H.J. Lu [Mon, 27 Jul 2009 14:06:34 +0000 (14:06 +0000)]
2009-07-27 H.J. Lu <hongjiu.lu@intel.com>
* archures.c bfd_*_arch): Sorted.
(bfd_archures_list): Likewise.
Jan Beulich [Mon, 27 Jul 2009 10:04:25 +0000 (10:04 +0000)]
gas/
2009-07-27 Jan Beulich <jbeulich@novell.com>
* obj-elf.c (elf_file_symbol): Replace symbol name set up by
symbol_new() with the passed in, unmodified one.
gas/testsuite/
2009-07-27 Jan Beulich <jbeulich@novell.com>
* gas/elf/file.[ds]: New.
* gas/elf/elf.exp: Run new test.
M R Swami Reddy [Mon, 27 Jul 2009 07:05:25 +0000 (07:05 +0000)]
2009-07-27 M R Swami Reddy <MR.Swami.Reddy@nsc.com>
* config/tc-cr16.c (md_apply_fix): Put the addend value alone in to
object file without symbol values.
(tc_gen_reloc): For local symbols resolved or its absolute symbol,
then set the relocation type as NULL.
M R Swami Reddy [Mon, 27 Jul 2009 06:52:33 +0000 (06:52 +0000)]
2009-07-26 M R Swami Reddy <MR.Swami.Reddy@nsc.com>
* elf32-cr16.c (elf_cr16_final_link_relocate): Add code to handle
to R_cr16_NUM32 relocation.
Michael Snyder [Mon, 27 Jul 2009 02:32:49 +0000 (02:32 +0000)]
2009-07-26 Michael Eager <eager@eagercon.com>
* archures.c: Add bfd_mach_ppc_405
* bfd-in2.h: Same.
Alan Modra [Mon, 27 Jul 2009 00:00:05 +0000 (00:00 +0000)]
daily update
Alan Modra [Sun, 26 Jul 2009 00:00:05 +0000 (00:00 +0000)]
daily update
H.J. Lu [Sat, 25 Jul 2009 15:50:20 +0000 (15:50 +0000)]
2009-07-25 H.J. Lu <hongjiu.lu@intel.com>
* cpu-i386.c (bfd_x86_64_arch): Fix comment typos.
* cpu-l1om.c (bfd_l1om_arch): Likewise.
H.J. Lu [Sat, 25 Jul 2009 15:08:26 +0000 (15:08 +0000)]
Add missing files.
H.J. Lu [Sat, 25 Jul 2009 14:58:58 +0000 (14:58 +0000)]
bfd/
2009-07-25 H.J. Lu <hongjiu.lu@intel.com>
* archures.c (bfd_architecture): Add bfd_arch_l1om.
(bfd_l1om_arch): New.
(bfd_archures_list): Add &bfd_l1om_arch.
* bfd-in2.h: Regenerated.
* config.bfd (targ64_selvecs): Add bfd_elf64_l1om_vec if
bfd_elf64_x86_64_vec is supported. Add bfd_elf64_l1om_freebsd_vec
if bfd_elf64_x86_64_freebsd_vec is supported.
(targ_selvecs): Likewise.
* configure.in: Support bfd_elf64_l1om_vec and
bfd_elf64_l1om_freebsd_vec.
* configure: Regenerated.
* cpu-l1om.c: New.
* elf64-x86-64.c (elf64_l1om_elf_object_p): New.
(bfd_elf64_l1om_vec): Likewise.
(bfd_elf64_l1om_freebsd_vec): Likewise.
* Makefile.am (ALL_MACHINES): Add cpu-l1om.lo.
(ALL_MACHINES_CFILES): Add cpu-l1om.c.
* Makefile.in: Regenerated.
* targets.c (bfd_elf64_l1om_vec): New.
(bfd_elf64_l1om_freebsd_vec): Likewise.
(_bfd_target_vector): Add bfd_elf64_l1om_vec and
bfd_elf64_l1om_freebsd_vec.
binutils/
2009-07-25 H.J. Lu <hongjiu.lu@intel.com>
* readelf.c (guess_is_rela): Handle EM_L1OM.
(dump_relocations): Likewise.
(get_machine_name): Likewise.
(get_section_type_name): Likewise.
(get_elf_section_flags): Likewise.
(get_symbol_index_type): Likewise.
(is_32bit_abs_reloc): Likewise.
(is_32bit_pcrel_reloc): Likewise.
(is_64bit_abs_reloc): Likewise.
(is_64bit_pcrel_reloc): Likewise.
(is_none_reloc): Likewise.
gas/
2009-07-25 H.J. Lu <hongjiu.lu@intel.com>
* config/tc-i386.c (cpu_arch): Add l1om.
(check_cpu_arch_compatible): New.
(set_cpu_arch): Use it.
(i386_arch): New.
(i386_mach): Return bfd_mach_l1om for Intel L1OM.
(md_show_usage): Display l1om.
(i386_target_format): Return ELF_TARGET_L1OM_FORMAT if
cpu_arch_isa_flags.bitfield.cpul1om is set.
* config/tc-i386.h (TARGET_ARCH): Use (i386_arch ()).
(i386_arch): New.
(ELF_TARGET_L1OM_FORMAT): Likewise.
* doc/c-i386.texi: Document l1om.
gas/testsuite/
2009-07-25 H.J. Lu <hongjiu.lu@intel.com>
* gas/i386/l1om.d: New.
* gas/i386/l1om-inval.l: Likewise.
* gas/i386/l1om-inval.s: Likewise.
* gas/i386/i386.exp: Run l1om-inval and l1om.
include/elf/
2009-07-25 H.J. Lu <hongjiu.lu@intel.com>
* common.h (EM_L1OM): New.
ld/
2009-07-25 H.J. Lu <hongjiu.lu@intel.com>
* configure.tgt (targ64_extra_emuls): Add elf_l1om if elf_x86_64
is supported. Add elf_l1om_fbsd if elf_x86_64_fbsd is supported.
(targ_extra_emuls): Likewise.
* Makefile.am (ALL_64_EMULATIONS): Add eelf_l1om.o and
eelf_l1om_fbsd.o
(eelf_l1om.c): New.
(eelf_l1om_fbsd.c): Likewise.
* Makefile.in: Regenerated.
* emulparams/elf_l1om.sh: New.
* emulparams/elf_l1om_fbsd.sh: Likewise.
ld/testsuite/
2009-07-25 H.J. Lu <hongjiu.lu@intel.com>
* ld-x86-64/abs-l1om.d: New.
* ld-x86-64/protected2-l1om.d: Likewise.
* ld-x86-64/protected3-l1om.d: Likewise.
* ld-x86-64/x86-64.exp: Run abs-l1om, protected2-l1om and
protected3-l1om.
opcodes/
2009-07-25 H.J. Lu <hongjiu.lu@intel.com>
* configure.in: Handle bfd_l1om_arch.
* disassemble.c (disassembler): Likewise.
* configure: Regenerated.
* i386-dis.c (print_insn): Handle bfd_mach_l1om and
bfd_mach_l1om_intel_syntax. Use 8 bytes per line for Intel L1OM.
* i386-gen.c (cpu_flag_init): Set CPU_UNKNOWN_FLAGS to ~CpuL1OM.
Add CPU_L1OM_FLAGS.
(cpu_flags): Add CpuL1OM.
(set_bitfield): Take an argument to set the value field.
(process_i386_cpu_flag): Support ~CpuXXX and ~(CpuXXX|CpuYYY).
(process_i386_opcode_modifier): Updated.
(process_i386_operand_type): Likewise.
* i386-init.h: Regenerated.
* i386-tbl.h: Likewise.
* i386-opc.h (CpuL1OM): New.
(CpuXsave): Updated.
(i386_cpu_flags): Add cpul1om.
DJ Delorie [Sat, 25 Jul 2009 11:28:20 +0000 (11:28 +0000)]
merge from gcc
DJ Delorie [Sat, 25 Jul 2009 00:01:58 +0000 (00:01 +0000)]
merge from gcc
Alan Modra [Sat, 25 Jul 2009 00:00:09 +0000 (00:00 +0000)]
daily update
Roland McGrath [Fri, 24 Jul 2009 23:51:13 +0000 (23:51 +0000)]
ChangeLog fix
Roland McGrath [Fri, 24 Jul 2009 23:49:51 +0000 (23:49 +0000)]
2009-07-24 Roland McGrath <roland@redhat.com>
* config/obj-elf.c (obj_elf_ident): Set SEC_MERGE | SEC_STRINGS
flags on .comment section.
Chris Demetriou [Fri, 24 Jul 2009 23:13:51 +0000 (23:13 +0000)]
2009-07-24 Chris Demetriou <cgd@google.com>
* layout.cc (is_compressible_debug_section): Fix incorrect
comment about compressed section names.
Trevor Smigiel [Fri, 24 Jul 2009 19:51:27 +0000 (19:51 +0000)]
include/elf/
* spu.h (R_SPU_ADD_PIC): New.
bfd/
* reloc.c (BFD_RELOC_SPU_ADD_PIC): Define.
* bfd-in2.h: Regenerate.
* libbfd.h: Regenerate.
* elf32-spu.c (elf_howto_table): Add entries SPU_ADD_PIC.
(spu_elf_bfd_to_reloc_type): Handle SPU_ADD_PIC.
(spu_elf_relocate_section): Patch instructions marked by SPU_ADD_PIC.
gas/
* config/tc-spu.c (md_apply_fix): Handle SPU_ADD_PIC.
* config/tc-spu.h (tc_fix_adjustable): Don't adjust for SPU_ADD_PIC.
(TC_FORCE_RELOCATION): Emit relocs for SPU_ADD_PIC.
ld/testsuite/
* ld-spu/pic.d: New.
* ld-spu/pic.s: New.
* ld-spu/picdef.s: New.
Jan Beulich [Fri, 24 Jul 2009 15:41:20 +0000 (15:41 +0000)]
gas/
2009-07-24 Jan Beulich <jbeulich@novell.com>
* tc-i386.c (cpu_arch): Add .8087, .287, .387, .no87, .nommx,
.nosse, and .noavx.
(cpu_flags_and_not): New.
(set_cpu_arch): Check whether sub-architecture specified is a
feature disable.
(md_parse_option): Likewise.
(parse_real_register): Don't return floating point register
when x87 functionality is disabled.
(md_show_usage): Add new sub-options.
* doc/c-i386.texi: Update with new command line sub-options.
gas/testsuite/
2009-07-24 Jan Beulich <jbeulich@novell.com>
* gas/i386/8087.[ds]: New.
* gas/i386/287.[ds]: New.
* gas/i386/387.[ds]: New.
* gas/i386/no87.[ls]: New.
* gas/i386/no87-2.[ls]: New.
* gas/i386/i386.exp: Run new tests.
* gas/i386/att-regs.s: Also check FPU register access.
* gas/i386/intel-regs.s: Likewise.
* gas/i386/att-regs.d: Adjust expectations.
* gas/i386/intel-regs.d: Likewise.
opcodes/
2009-07-24 Jan Beulich <jbeulich@novell.com>
* i386-dis.c (fgrps): Correct annotation for feni/fdisi. Add
frstpm.
* i386-gen.c (cpu_flag_init): Add FP enabling flags where needed.
(cpu_flags): Add Cpu8087, Cpu287, Cpu387, Cpu687, and CpuFISTTP.
(set_bitfield): Expand CpuFP to Cpu8087|Cpu287|Cpu387.
* i386-opc.h (Cpu8087, Cpu287, Cpu387, Cpu687, CpuFISTTP):
Define.
(union i386_cpu_flags): Add cpu8087, cpu287, cpu387, cpu687,
and cpufisttp.
* i386-opc.tbl: Qualify floating point instructions by their
respective CpuXXX flag. Fix fucom{,p,pp}, fprem1, fsin, fcos,
and fsincos to be avilable only on 387. Fix fstsw ax to be
available only on 287+. Add f{,n}eni, f{,n}disi, f{,n}setpm,
and frstpm.
* i386-init.h, i386-tbl.h: Regenerate.
Nick Clifton [Fri, 24 Jul 2009 11:45:01 +0000 (11:45 +0000)]
PR 10437
* config/tc-alpha.c: Fix up uses of gas printf like functions so
that the format string is a constant string. Add translation
support to message strings.
* config/tc-arc.c: Likewise.
* config/tc-arm.c: Likewise.
* config/tc-cris.c: Likewise.
* config/tc-fr30.c: Likewise.
* config/tc-frv.c: Likewise.
* config/tc-h8300.c: Likewise.
* config/tc-hppa.c: Likewise.
* config/tc-i370.c: Likewise.
* config/tc-i960.c: Likewise.
* config/tc-ia64.c: Likewise.
* config/tc-m32r.c: Likewise.
* config/tc-mep.c: Likewise.
* config/tc-mips.c: Likewise.
* config/tc-moxie.c: Likewise.
* config/tc-msp430.c: Likewise.
* config/tc-openrisc.c: Likewise.
* config/tc-pdp11.c: Likewise.
* config/tc-pj.c: Likewise.
* config/tc-s390.c: Likewise.
* config/tc-sh.c: Likewise.
* config/tc-sh64.c: Likewise.
* config/tc-sparc.c: Likewise.
* config/tc-spu.c: Likewise.
* config/tc-tic30.c: Likewise.
* config/tc-tic4x.c: Likewise.
* config/tc-tic54x.c: Likewise.
* config/tc-v850.c: Likewise.
* config/tc-xc16x.c: Likewise.
* config/tc-xstormy16.c: Likewise.
* config/tc-z80.c: Likewise.
* config/tc-z8k.c: Likewise.
* config/atof-ieee.c: Add translation support to as_warn
messages.
* config/obj-coff.c: Likewise.
Nick Clifton [Fri, 24 Jul 2009 10:16:01 +0000 (10:16 +0000)]
Commit missing part of previous delta to add GNU_UNIQUE_FUNCTION support.
Alan Modra [Fri, 24 Jul 2009 00:00:08 +0000 (00:00 +0000)]
daily update
H.J. Lu [Thu, 23 Jul 2009 21:22:20 +0000 (21:22 +0000)]
bfd/
2009-07-23 H.J. Lu <hongjiu.lu@intel.com>
PR ld/10434
* elf64-x86-64.c (elf64_x86_64_check_relocs): Check executable
instead of shared for R_X86_64_TPOFF32.
(elf64_x86_64_relocate_section): Likewise.
ld/testsuite/
2009-07-23 H.J. Lu <hongjiu.lu@intel.com>
PR ld/10434
* ld-x86-64/tlsle1.d: New.
* ld-x86-64/tlsle1.s: Likewise.
* ld-x86-64/x86-64.exp: Run tlsle1.
Nick Clifton [Thu, 23 Jul 2009 15:03:39 +0000 (15:03 +0000)]
Reorder variable declarations to avoid problems with MIPS targets.
Nick Clifton [Thu, 23 Jul 2009 13:00:30 +0000 (13:00 +0000)]
* config/obj-elf.c (obj_elf_type): Add code to support a type of
gnu_unique_object.
* doc/as.texinfo: Document new feature of .type directive.
* NEWS: Mention support for gnu_unique_object symbol type.
* common.h (STB_GNU_UNIQUE): Define.
* NEWS: Mention the linker's support for symbols with a binding of
STB_GNU_UNIQUE.
* gas/elf/type.s: Add unique global symbol definition.
* gas/elf/type.e: Add expected readelf output for global unique
symbol.
* elfcpp.h (enum STB): Add STB_GNU_UNIQUE.
* readelf.c (get_symbol_binding): For Linux targeted files return
UNIQUE for symbols with the STB_GNU_UNIQUE binding.
* doc/binutils.texi: Document the meaning of the 'u' symbol
binding in the output of nm and objdump --syms.
* elf-bfd.h (struct elf_link_hash_entry): Add unique_global field.
* elf.c (swap_out_syms): Set binding to STB_GNU_UNIQUE for symbols
with the BSF_GNU_UNIQUE flag bit set.
* elfcode.h (elf_slurp_symbol_table): Set the BSF_GNU_UNIQUE flag
for symbols with STB_GNU_UNIQUE binding.
* elflink.c (_bfd_elf_merge_symbol): Set unique_global for symbols
with the STB_GNU_UNIQUE binding.
(elf_link_add_object_symbols): Set the BSF_GNU_UNIQUE flag for
symbols with STB_GNU_UNIQUE binding. Set STB_GNU_UNIQUE for
symbols with the unique_global field set.
(elf_link_output_extsym): Set unique_global field for symbols with
the STB_GNU_UNIQUE binding.
* syms.c (struct bfd_symbol): Define BSF_GNU_UNIQUE flag bit.
(bfd_print_symbol_vandf): Print a 'u' character for BSF_GNU_UNIQUE
symbols.
(bfd_decode_symclass): Return a 'u' character for BSF_GNU_UNIQUE
symbols.
* bfd-in2.h: Regenerate.
Nick Clifton [Thu, 23 Jul 2009 12:42:07 +0000 (12:42 +0000)]
Oops - forgot to commit this part of a previous delta:
* config/tc-arm.c (arm_frag_align_code): Replace hard coded
constant with MAX_MEM_FOR_RS_ALIGN_CODE.
Nick Clifton [Thu, 23 Jul 2009 10:19:20 +0000 (10:19 +0000)]
PR binutils/10379
* doc/c-mips.texi (MIPS insn): Document the special behaviour of
the .global directive for MIPS ports.
H.J. Lu [Thu, 23 Jul 2009 00:08:22 +0000 (00:08 +0000)]
2009-07-22 H.J. Lu <hongjiu.lu@intel.com>
PR ld/10429
* ldlang.c (insert_os_after): Tie assignments to non-alloc
output sections if there is no-input section.
Alan Modra [Thu, 23 Jul 2009 00:00:05 +0000 (00:00 +0000)]
daily update
H.J. Lu [Wed, 22 Jul 2009 23:55:54 +0000 (23:55 +0000)]
2009-07-22 H.J. Lu <hongjiu.lu@intel.com>
* elflink.c (elf_link_output_extsym): Revert the last change.
H.J. Lu [Wed, 22 Jul 2009 21:30:30 +0000 (21:30 +0000)]
2009-07-22 H.J. Lu <hongjiu.lu@intel.com>
PR ld/10433
* elflink.c (elf_link_output_extsym): Special case ifunc syms
when ref_regular, not def_regular.
Alan Modra [Wed, 22 Jul 2009 00:00:04 +0000 (00:00 +0000)]
daily update
H.J. Lu [Tue, 21 Jul 2009 21:37:26 +0000 (21:37 +0000)]
bfd/
2009-07-21 H.J. Lu <hongjiu.lu@intel.com>
PR ld/10426
* elflink.c (elf_link_add_object_symbols): Turn an IFUNC symbol
from a DSO into a normal FUNC symbol.
(elf_link_output_extsym): Turn an undefined IFUNC symbol into
a normal FUNC symbol.
ld/testsuite/
2009-07-21 H.J. Lu <hongjiu.lu@intel.com>
PR ld/10426
* ld-ifunc/ifunc.exp: Check test-1 and libtest-2.so. Updated.
* ld-ifunc/test-1.c: New.
* ld-ifunc/test-2.c: Likewise.
Doug Evans [Tue, 21 Jul 2009 19:06:39 +0000 (19:06 +0000)]
Add ccoutant to previous dwarf4 entry.
H.J. Lu [Tue, 21 Jul 2009 17:50:21 +0000 (17:50 +0000)]
gas/
2009-07-21 H.J. Lu <hongjiu.lu@intel.com>
PR gas/10420
* config/tc-i386.c (i386_align_code): Tune for 32bit nops in
64bit.
(i386_target_format): Set cpu_arch_isa_flags.bitfield.cpulm
for 64bit.
gas/testsuite/
2009-07-21 H.J. Lu <hongjiu.lu@intel.com>
PR gas/10420
* gas/i386/i386.exp: Run x86-64-nops-1-pentium.
* gas/i386/x86-64-nops-1-pentium.d: New.
Ian Lance Taylor [Tue, 21 Jul 2009 05:22:54 +0000 (05:22 +0000)]
PR 10419
* x86_64.cc (Target_x86_64::do_code_fill): Correct nop sequences.
Alan Modra [Tue, 21 Jul 2009 00:00:08 +0000 (00:00 +0000)]
daily update
Doug Evans [Mon, 20 Jul 2009 20:57:39 +0000 (20:57 +0000)]
Add some dwarf4 values.
* dwarf2.h (enum dwarf_tag): Add DW_TAG_type_unit.
(enum dwarf_form): Add DW_FORM_sec_offset, DW_FORM_exprloc,
DW_FORM_flag_present, DW_FORM_sig8.
(enum dwarf_attribute): Add DW_AT_signature.
H.J. Lu [Mon, 20 Jul 2009 13:40:48 +0000 (13:40 +0000)]
2009-07-20 H.J. Lu <hongjiu.lu@intel.com>
* NEWS: Mention --insn-width.
* objdump.c (insn_width): New.
(usage): Display --insn-width.
(option_values): Add OPTION_INSN_WIDTH.
(long_options): Add --insn-width.
(disassemble_bytes): Handle insn_width.
(main): Handle OPTION_INSN_WIDTH.
* doc/binutils.texi: Document --insn-width.
Nick Clifton [Mon, 20 Jul 2009 12:11:18 +0000 (12:11 +0000)]
PR 10288
* arm-dis.c (arm_opcodes): Catch non-zero bits 8-11 in register
offset or indexed based addressing mode 3.
Alan Modra [Mon, 20 Jul 2009 00:00:07 +0000 (00:00 +0000)]
daily update
Alan Modra [Sun, 19 Jul 2009 00:00:04 +0000 (00:00 +0000)]
daily update
Alan Modra [Sat, 18 Jul 2009 00:00:05 +0000 (00:00 +0000)]
daily update
DJ Delorie [Fri, 17 Jul 2009 20:20:45 +0000 (20:20 +0000)]
merge from gcc
H.J. Lu [Fri, 17 Jul 2009 17:54:51 +0000 (17:54 +0000)]
2009-07-17 H.J. Lu <hongjiu.lu@intel.com>
* config/tc-i386.c (md_assemble): Update operand types.
(update_imm): Updated.
(finalize_imm): Update the first 2 immediate operands only
for instructions with 2 operands or more.
H.J. Lu [Fri, 17 Jul 2009 17:08:34 +0000 (17:08 +0000)]
2009-07-17 H.J. Lu <hongjiu.lu@intel.com>
* config/tc-i386.c (md_assemble): Check implicit registers
only for instructions with 3 operands or less.
Nick Clifton [Fri, 17 Jul 2009 15:22:11 +0000 (15:22 +0000)]
* config/tc-avr.c (md_apply_fix): Cast fixup reloc type to avoid
compile time warning.
Nick Clifton [Fri, 17 Jul 2009 15:19:21 +0000 (15:19 +0000)]
* dwarf.c (display_debug_lines): If do_debug_lines has not been
set then default to displaying raw .debug_line section contents.