OSDN Git Service
H.J. Lu [Tue, 15 May 2007 13:55:54 +0000 (13:55 +0000)]
2007-05-15 H.J. Lu <hongjiu.lu@intel.com>
Alan Modra <amodra@bigpond.net.au>
PR ld/4504
* elf-bfd.h (_bfd_elf_adjust_dynamic_copy): New.
* elflink.c (_bfd_elf_adjust_dynamic_copy): New.
* elf-m10300.c (_bfd_mn10300_elf_adjust_dynamic_symbol): Call
_bfd_elf_adjust_dynamic_copy to adjust for the copy in dynamic
bss section.
* elf32-arm.c (elf32_arm_adjust_dynamic_symbol): Likewise.
* elf32-cris.c (elf_cris_adjust_dynamic_symbol): Likewise.
* elf32-hppa.c (elf32_hppa_adjust_dynamic_symbol): Likewise.
* elf32-i370.c (i370_elf_adjust_dynamic_symbol): Likewise.
* elf32-i386.c (elf_i386_adjust_dynamic_symbol): Likewise.
* elf32-m32r.c (m32r_elf_adjust_dynamic_symbol): Likewise.
* elf32-m68k.c (elf_m68k_adjust_dynamic_symbol): Likewise.
* elf32-ppc.c (ppc_elf_adjust_dynamic_symbol): Likewise.
* elf32-s390.c (elf_s390_adjust_dynamic_symbol): Likewise.
* elf32-sh.c (sh_elf_adjust_dynamic_symbol): Likewise.
* elf32-vax.c (elf_vax_adjust_dynamic_symbol): Likewise.
* elf64-ppc.c (ppc64_elf_adjust_dynamic_symbol): Likewise.
* elf64-s390.c (elf_s390_adjust_dynamic_symbol): Likewise.
* elf64-sh64.c (sh64_elf64_adjust_dynamic_symbol): Likewise.
* elf64-x86-64.c (elf64_x86_64_adjust_dynamic_symbol): Likewise.
* elfxx-mips.c (_bfd_mips_vxworks_adjust_dynamic_symbol): Likewise.
* elfxx-sparc.c (_bfd_sparc_elf_adjust_dynamic_symbol): Likewise.
Richard Sandiford [Tue, 15 May 2007 12:22:34 +0000 (12:22 +0000)]
ld/testsuite/
* ld-arm/vxworks1.ld: Swap .bss and .data.
* ld-arm/vxworks1-lib.rd: Update accordingly.
* ld-arm/vxworks1-lib.td: New test.
* ld-arm/arm-elf.exp: Run it.
* ld-i386/vxworks1.ld: Swap .bss and .data.
* ld-i386/vxworks1-lib.rd: Update accordingly.
* ld-i386/vxworks1-lib.td: New test.
* ld-i386/i386.exp: Run it.
* ld-mips-elf/vxworks1.ld: Swap .bss and .data.
* ld-mips-elf/vxworks1-lib.rd: Update accordingly.
* ld-mips-elf/vxworks1.rd: Likewise.
* ld-powerpc/vxworks1.ld: Swap .bss and .data.
* ld-powerpc/vxworks1-lib.rd: Update accordingly.
* ld-powerpc/vxworks1-lib.td: New test.
* ld-powerpc/powerpc.exp: Run it.
* ld-sh/vxworks1.ld: Swap .bss and .data.
* ld-sh/vxworks1-lib.rd: Update accordingly.
* ld-sh/vxworks1-lib.td: New test.
* ld-sh/sh-vxworks.exp: Run it.
* ld-sparc/vxworks1.ld: Swap .bss and .data.
* ld-sparc/vxworks1-lib.rd: Update accordingly.
* ld-sparc/vxworks1-lib.td: New test.
* ld-sparc/sparc.exp: Run it.
Richard Sandiford [Tue, 15 May 2007 12:18:53 +0000 (12:18 +0000)]
bfd/
* elfxx-mips.c (mips_elf_create_local_got_entry): Remove
input_section argument. Create .rela.dyn relocations against
symbol 0 rather than the section symbol.
(mips_elf_local_got_index): Remove input_section argument.
Update call to mips_elf_create_local_got_entry.
(mips_elf_got_page, mips_elf_got16_entry): Likewise.
(mips_elf_calculate_relocation): Update calls to
mips_elf_local_got_index, mips_elf_got16_entry and mips_elf_got_page.
ld/testsuite/
* ld-mips-elf/vxworks1-lib.rd: Expect the GOT relocation to be
against symbol 0.
Mark Shinwell [Tue, 15 May 2007 10:06:03 +0000 (10:06 +0000)]
gas/
* app.c (do_scrub_chars): Don't damage \@ pseudo-variables.
gas/testsuite/
* gas/arm/backslash-at.d: New.
* gas/arm/backslash-at.s: New.
Mark Shinwell [Tue, 15 May 2007 09:54:09 +0000 (09:54 +0000)]
bfd/
* elf32-arm.c (elf32_arm_final_link_relocate): Correctly
handle the Thumb-2 JUMP19 relocation.
ld/testsuite/
* ld-arm/arm-elf.exp: Add jump19 testcase.
* ld-arm/jump19.d: New.
* ld-arm/jump19.s: New.
Nick Clifton [Tue, 15 May 2007 09:21:24 +0000 (09:21 +0000)]
PR gas/3041
* config/tc-m68k.c (relaxable_symbol): Make sure that the correct addend is stored for relocs against weak symbols.
(md_apply_fix): So not loose track of addend for relocs against weak symbols.
* testsuite/gas/m68k/p3041.s: New test case.
* testsuite/gas/m68k/p3041.d: New expected disassembly.
* testsuite/gas/m68k/all.exp: Run new test for m68k-*-netbsd toolchains.
Only run arch-cpu-1 test for ELF based toolchains.
Tidy ups for m68k-netbsd gas toolchain:
* testsuite/gas/m68k/cpu32.d: Allow for extra text after expected disassembly.
* testsuite/gas/m68k/mcf-trap.d: Allow for alternative trap mnemonics.
* testsuite/gas/m68k/br-isab.d: Fix name of test.
* testsuite/gas/m68k/br-isac.d: Fix name of test.
Alan Modra [Tue, 15 May 2007 08:39:58 +0000 (08:39 +0000)]
PR 4479
* elf.c (elf_fake_sections): Don't allow backend to change
SHT_NOBITS if called for strip/objcopy --only-keep-debug.
* elfxx-mips.c (_bfd_mips_elf_fake_sections): Remove similar
fix from here.
Alan Modra [Tue, 15 May 2007 04:23:50 +0000 (04:23 +0000)]
* binutils-all/objcopy.exp: Only run needed-by-reloc test for ELF.
H.J. Lu [Tue, 15 May 2007 01:05:59 +0000 (01:05 +0000)]
gas/testsuite/
2007-05-14 H.J. Lu <hongjiu.lu@intel.com>
PR binutils/4502
* gas/i386/amd.d: Replace "pfmulhrw" with "pmulhrw".
opcodes/
2007-05-14 H.J. Lu <hongjiu.lu@intel.com>
PR binutils/4502
* i386-dis.c (Suffix3DNow): Replace "pfmulhrw" with "pmulhrw".
Alan Modra [Tue, 15 May 2007 00:00:05 +0000 (00:00 +0000)]
daily update
H.J. Lu [Mon, 14 May 2007 23:16:45 +0000 (23:16 +0000)]
2007-05-14 H.J. Lu <hongjiu.lu@intel.com>
* hist.c (scale_and_align_entries): Avoid C99 feature.
Thiemo Seufer [Mon, 14 May 2007 12:28:46 +0000 (12:28 +0000)]
* config/tc-mips.c (md_parse_option): Fix parsing of -O option.
Richard Sandiford [Mon, 14 May 2007 12:07:11 +0000 (12:07 +0000)]
ld/testsuite/
* ld-sh/vxworks1.dd: Remove hexadecimal prefixes from constant pool
contents. Consistently use "!" as the comment character.
Consistently use _PROCEDURE_LINKAGE_TABLE_ in the first PLT entry.
* ld-sh/vxworks1-le.dd: Likewise.
* ld-sh/vxworks1-lib.dd: Likewise.
* ld-sh/vxworks1-lib-le.dd: Likewise.
* ld-sh/vxworks3.dd: Likewise.
* ld-sh/vxworks3-le.dd: Likewise.
Mei Ligang [Mon, 14 May 2007 10:06:32 +0000 (10:06 +0000)]
2007-05-14 Mei Ligang <ligang@sunnorth.com.cn>
* config/tc-score.c (data_op2, validate_immediate): Fix bug for addri, addri.c, subi, and
subi.c when immediate number is hex.
(score_insns): Remove subis and subis.c.
(do_sub_rdi16): Delete.
Andreas Schwab [Mon, 14 May 2007 08:53:23 +0000 (08:53 +0000)]
* emultempl/ppc64elf.em (gld${EMULATION_NAME}_new_vers_pattern):
Handle null pattern.
testsuite/:
* ld-elf/dl2a.list: New file.
* ld-elf/shared.exp: Add test using --dynamic-list=dl2a.list.
Alan Modra [Mon, 14 May 2007 04:15:53 +0000 (04:15 +0000)]
* elf.c (bfd_elf_string_from_elf_section): Return NULL on
invalid shstrndx.
(bfd_elf_get_str_section): Likewise.
Alan Modra [Mon, 14 May 2007 00:00:05 +0000 (00:00 +0000)]
daily update
Alan Modra [Sun, 13 May 2007 00:00:06 +0000 (00:00 +0000)]
daily update
Alan Modra [Sat, 12 May 2007 14:27:34 +0000 (14:27 +0000)]
PR 4497
* elf-eh-frame.c (struct cie): Add "local_personality". Make
"personality" a union.
(cie_eq): Compare local_personality too. Adjust personality
comparison.
(_bfd_elf_discard_section_eh_frame): Check binding on personality
reloc sym to allow for bad symtab. Use stashed local syms rather
than reading personality local sym. Handle discarded sections.
Alan Modra [Sat, 12 May 2007 06:45:33 +0000 (06:45 +0000)]
include/elf/
* spu.h (R_SPU_ADDR16X): Define.
(R_SPU_PPU32, R_SPU_PPU64): Renumber.
bfd/
* elf32-spu.c (elf_howto_table): Add howto for R_SPU_ADDR16X.
Alan Modra [Sat, 12 May 2007 00:00:05 +0000 (00:00 +0000)]
daily update
Alan Modra [Fri, 11 May 2007 14:09:50 +0000 (14:09 +0000)]
PR 4479
* objcopy.c (copy_object): Don't copy ELF program headers for
--only-keep-debug.
Alan Modra [Fri, 11 May 2007 07:16:28 +0000 (07:16 +0000)]
* binutils-all/needed-by-reloc.s: Use .long rather than .4byte.
Alan Modra [Fri, 11 May 2007 06:39:05 +0000 (06:39 +0000)]
bfd/
* elf32-ppc.h (ppc_elf_select_plt_layout): Update prototype.
(enum ppc_elf_plt_type): Move from..
* elf32-ppc.c: ..here.
(struct ppc_elf_obj_tdata): Add makes_plt_call and has_rel16.
(struct ppc_elf_link_hash_table): Reorder. Add old_bfd. Delete
can_use_new_plt. Make is_vxworks a bitfield.
(ppc_elf_link_hash_table_create): Don't clear is_vxworks (again).
(ppc_elf_check_relocs): Update setting of reloc flags. Set old_bfd.
(ppc_elf_select_plt_layout): Modify parameters. Use bfd reloc
flags to better detect object files needing old bss-style plt.
Allow secure plt to be used without rel16 relocs being detected.
Warn if secure plt request cannot be allowed.
ld/
* emultempl/ppc32elf.em (plt_style): New variable.
(old_plt): Delete.
(ppc_after_open): Adjust ppc_elf_select_plt_layout call.
(PARSE_AND_LIST_PROLOGUE): Define OPTION_NEW_PLT, renumber
OPTION_OLD_PLT, OPTION_OLD_GOT and OPTION_STUBSYMS.
(PARSE_AND_LIST_LONGOPTS, PARSE_AND_LIST_OPTIONS): Add secure-plt.
(PARSE_AND_LIST_ARGS_CASES): Handle OPTION_NEW_PLT.
* ld.texinfo (--secure-plt): Document.
Alan Modra [Fri, 11 May 2007 03:10:11 +0000 (03:10 +0000)]
include/elf/
* spu.h (R_SPU_PPU32, R_SPU_PPU64): Define.
bfd/
* reloc.c (BFD_RELOC_SPU_PPU32, BFD_RELOC_SPU_PPU64): Define.
* elf-bfd.h (struct elf_backend_data): Change return type of
elf_backend_relocate_section to int.
* elf32-spu.c (elf_howto_table): Add howtos for R_SPU_PPU32 and
R_SPU_PPU64.
(spu_elf_bfd_to_reloc_type): Convert new relocs.
(spu_elf_count_relocs): New function.
(elf_backend_count_relocs): Define.
(spu_elf_relocate_section): Arrange to emit R_SPU_PPU32 and
R_SPU_PPU64 relocs.
* elflink.c (elf_link_input_bfd): Emit relocs if relocate_section
returns 2.
* bfd-in2.h: Regenerate.
* libbfd.h: Regenerate.
gas/
* config/tc-spu.c (md_pseudo_table): Add int, long, quad. Call
spu_cons for word.
(md_assemble): Tidy use of insn.flag.
(get_imm): Likewise. Handle uppercase input too.
(spu_cons): New function.
* config/tc-spu.h (tc_fix_adjustable): Don't adjust SPU_PPU relocs.
(TC_FORCE_RELOCATION): Don't resolve them either.
binutils/
* embedspu.sh (find_prog): Prefer prog in same dir as embedspu
over one found on the users path.
(main): Generate .reloc for each R_SPU_PPU* reloc.
Alan Modra [Fri, 11 May 2007 00:00:06 +0000 (00:00 +0000)]
daily update
H.J. Lu [Thu, 10 May 2007 18:21:13 +0000 (18:21 +0000)]
2007-05-10 H.J. Lu <hongjiu.lu@intel.com>
* i386-opc.h (ShortForm): Redefined.
(Jump): Likewise.
(JumpDword): Likewise.
(JumpByte): Likewise.
(JumpInterSegment): Likewise.
(FloatMF): Likewise.
(FloatR): Likewise.
(FloatD): Likewise.
(Size16): Likewise.
(Size32): Likewise.
(Size64): Likewise.
(IgnoreSize): Likewise.
(DefaultSize): Likewise.
(No_bSuf): Likewise.
(No_wSuf): Likewise.
(No_lSuf): Likewise.
(No_sSuf): Likewise.
(No_qSuf): Likewise.
(No_xSuf): Likewise.
(FWait): Likewise.
(IsString): Likewise.
(regKludge): Likewise.
(IsPrefix): Likewise.
(ImmExt): Likewise.
(NoRex64): Likewise.
(Rex64): Likewise.
(Ugh): Likewise.
Richard Sandiford [Thu, 10 May 2007 17:00:03 +0000 (17:00 +0000)]
bfd/
* elf32-arm.c (elf32_arm_check_relocs): Don't create PLT entries
for R_ARM_ABS12 relocs.
(elf32_arm_finish_dynamic_symbol): Fix the loop that creates
non-shared VxWorks PLT entries.
ld/testsuite/
* ld-arm/vxworks1-lib.dd: Expect "push" instead of stmdb and
"pop" instead of ldmia. Don't require specific symbolic addresses
for in-text addresses. Expect data to be rendered as .words rather
than disassembled.
* ld-arm/vxworks1.dd: Likewise.
Alan Modra [Thu, 10 May 2007 15:08:02 +0000 (15:08 +0000)]
PR 4454
* elf-eh-frame.c (struct cie): Make "personality" a bfd_vma.
(_bfd_elf_discard_section_eh_frame): Handle local syms on
personality relocation.
Richard Sandiford [Thu, 10 May 2007 14:46:48 +0000 (14:46 +0000)]
bfd/
* elf.c (assign_file_positions_for_load_sections): Use p_memsz
rather than p_filesz to calculate the LMA of the end of a segment.
ld/testsuite/
* ld-elf/multibss1.d, ld-elf/multibss1.s: New test.
Jakub Jelinek [Thu, 10 May 2007 11:45:07 +0000 (11:45 +0000)]
* elf64-ppc.c (ppc64_elf_adjust_dynamic_symbol): Don't do copyreloc
processing if symbol is defined in the executable.
Alexandre Oliva [Thu, 10 May 2007 05:18:42 +0000 (05:18 +0000)]
* elf32-frv.c (_frvfdpic_check_discarded_relocs): New.
(frvfdpic_elf_discard_info): New.
(elf_backend_discard_info): Define for FDPIC.
Alan Modra [Thu, 10 May 2007 00:00:06 +0000 (00:00 +0000)]
daily update
Mark Shinwell [Wed, 9 May 2007 13:02:10 +0000 (13:02 +0000)]
bfd/
* elf32-arm.c (bfd_elf32_arm_vfp11_erratum_scan): Don't
attempt to scan if the bfd doesn't correspond to an ELF image.
(bfd_elf32_arm_vfp11_fix_veneer_locations): Likewise.
Alan Modra [Wed, 9 May 2007 00:00:06 +0000 (00:00 +0000)]
daily update
Mark Shinwell [Tue, 8 May 2007 06:48:06 +0000 (06:48 +0000)]
binutils/testsuite/
* binutils-all/strip-3.d: Strip .ARM.attributes and .reginfo
sections.
Alexandre Oliva [Tue, 8 May 2007 06:09:30 +0000 (06:09 +0000)]
* elf32-frv.c (elf32_frv_relocate_section): Discard dynamic relocs
for which _bfd_elf_section_offset returns -1.
Alan Modra [Tue, 8 May 2007 02:29:27 +0000 (02:29 +0000)]
* elf32-spu.c (spu_elf_size_stubs): Use "void *" for psyms.
(mark_functions_via_relocs): Likewise.
DJ Delorie [Tue, 8 May 2007 01:29:33 +0000 (01:29 +0000)]
merge from gcc
Alan Modra [Tue, 8 May 2007 00:00:06 +0000 (00:00 +0000)]
daily update
H.J. Lu [Mon, 7 May 2007 19:01:00 +0000 (19:01 +0000)]
2007-05-07 H.J. Lu <hongjiu.lu@intel.com>
* i386-dis.c (threebyte_0x38_uses_DATA_prefix): Correct entries
for some SSE4 instructions.
(threebyte_0x3a_uses_DATA_prefix): Likewise.
Alan Modra [Mon, 7 May 2007 15:04:53 +0000 (15:04 +0000)]
* ld.h (args_type, ld_config_type): Reorder fields.
* ldmain.c (main): Don't initialise a bunch of vars we know are
zero already.
Alan Modra [Mon, 7 May 2007 14:47:28 +0000 (14:47 +0000)]
* elflink.c (bfd_elf_final_link): Correct reloc handling for
elf_backend_count_relocs.
(bfd_elf_discard_info): Print an error if we can't read syms.
Alan Modra [Mon, 7 May 2007 14:37:27 +0000 (14:37 +0000)]
* elf32-spu.c (spu_elf_reloc_type_lookup): Return NULL on
invalid reloc code.
(spu_elf_gc_mark_hook, spu_elf_section_processing): Delete functions.
(elf_backend_gc_mark_hook, elf_backend_section_processing): Don't
define.
Alan Modra [Mon, 7 May 2007 01:05:46 +0000 (01:05 +0000)]
* elf.c (assign_file_positions_for_load_sections): Don't check
core segment.
Alan Modra [Mon, 7 May 2007 00:00:05 +0000 (00:00 +0000)]
daily update
Geoffrey Keating [Sun, 6 May 2007 00:25:11 +0000 (00:25 +0000)]
* cp-demangle.c (d_name): Detect local-source-name.
(d_prefix): Likewise.
(d_unqualified_name): Implement local-source-name.
Alan Modra [Sun, 6 May 2007 00:00:06 +0000 (00:00 +0000)]
daily update
Mark Shinwell [Sat, 5 May 2007 16:23:57 +0000 (16:23 +0000)]
gas/
* config/tc-arm.c (md_apply_fix): Generate more accurate
diagnostic when 8-bit immediate range is exceeded for
BFD_RELOC_ARM_OFFSET_IMM8.
Denis Chertykov [Sat, 5 May 2007 06:51:24 +0000 (06:51 +0000)]
* multempl/avrelf.em (PARSE_AND_LIST_ARGS_CASES): Add new value for
"--pmem-wrap-around".
(PARSE_AND_LIST_OPTIONS): Describe new value for "--pmem-wrap-around".
Alan Modra [Sat, 5 May 2007 00:00:06 +0000 (00:00 +0000)]
daily update
H.J. Lu [Fri, 4 May 2007 21:53:02 +0000 (21:53 +0000)]
2007-05-04 H.J. Lu <hongjiu.lu@intel.com>
* elflink.c (elf_link_sort_relocs): Return if both .rela.dyn
and .rel.dyn aren't present.
Kazu Hirata [Fri, 4 May 2007 15:45:21 +0000 (15:45 +0000)]
* gas/m68k/all.exp: Skip fmoveml on fido.
Nick Clifton [Fri, 4 May 2007 14:17:07 +0000 (14:17 +0000)]
* elflink.c (elf_link_sort_relocs): If both .rela.dyn and .rel.dyn sections
are present examine the indirect sections in an attempt to compute the
correct relocation size. If there is any ambiguity, produce an error and
refuse to sort.
H.J. Lu [Fri, 4 May 2007 00:44:36 +0000 (00:44 +0000)]
2007-05-03 H.J. Lu <hongjiu.lu@intel.com>
PR gas/4460
* gas/i386/gotpc.s: Add a new test.
* gas/i386/reloc64.s: Likewise.
* gas/i386/gotpc.d: Updated.
* gas/i386/reloc64.d: Likewise.
Alan Modra [Fri, 4 May 2007 00:02:47 +0000 (00:02 +0000)]
PR gas/4460
* config/tc-i386.c (lex_got): Don't replace the reloc token with
a space if we already have a space.
Alan Modra [Fri, 4 May 2007 00:00:06 +0000 (00:00 +0000)]
daily update
Joel Brobecker [Thu, 3 May 2007 23:40:11 +0000 (23:40 +0000)]
* filename_cmp.c: Replace include of ctype.h by include of
safe-ctype.h.
(filename_cmp): Use TOLOWER instead of tolower for conversions
that are locale-independent.
* Makefile.in (filename_cmp.o): Add dependency on safe-ctype.h.
H.J. Lu [Thu, 3 May 2007 21:07:16 +0000 (21:07 +0000)]
gas/
2007-05-03 H.J. Lu <hongjiu.lu@intel.com>
* config/tc-i386.c (match_template): Don't explicitly check
suffix for crc32 in Intel mode.
(process_suffix): Issue an error for crc32 if the operand size
is ambiguous.
gas/testsuite/
2007-05-03 H.J. Lu <hongjiu.lu@intel.com>
* gas/i386/crc32-intel.d: Updated.
* gas/i386/crc32.d: Likewise.
* gas/i386/sse4_2.d: Likewise.
* gas/i386/x86-64-crc32-intel.d: Likewise.
* gas/i386/x86-64-crc32.d: Likewise.
* gas/i386/x86-64-sse4_2.d: Likewise.
* gas/i386/crc32.s: Remove crc32 instructions with ambiguous
operand size and suffix in crc32 instructions in Intel mode.
* gas/i386/x86-64-crc32.s: Likewise.
* gas/i386/sse4_2.s: Remove crc32 instructions with ambiguous
operand size.
* gas/i386/x86-64-sse4_2.s: Likewise.
* gas/i386/i386.exp: Run inval-crc32 and x86-64-inval-crc32.
* gas/i386/inval-crc32.l: New.
* gas/i386/inval-crc32.s: Likewise.
* gas/i386/x86-64-inval-crc32.l: Likewise.
* gas/i386/x86-64-inval-crc32.s: Likewise.
opcodes/
2007-05-03 H.J. Lu <hongjiu.lu@intel.com>
* i386-dis.c (CRC32_Fixup): Don't print suffix in Intel mode.
* i386-opc.c (i386_optab): Remove IgnoreSize and correct operand
type for crc32.
Bob Wilson [Thu, 3 May 2007 19:31:03 +0000 (19:31 +0000)]
* scripttempl/elfxtensa.sc: Merge changes from elf.sc.
Sandra Loosemore [Thu, 3 May 2007 19:27:14 +0000 (19:27 +0000)]
2007-05-03 Sandra Loosemore <sandra@codesourcery.com>
bfd/
* elf32-arm.c (allocate_dynrelocs): Fix typo in comment.
Nick Clifton [Thu, 3 May 2007 15:55:38 +0000 (15:55 +0000)]
PR gas/3041
* gas/config/tc-m68k.c (relaxable_symbol): Do not relax weak symbols.
(tc_gen_reloc): Adjust the addend of relocs against weak symbols.
(md_apply_fix): Put zero values into the frags referencing weak symbols.
* bfd/aoutx.h (swap_std_reloc_out): Treat relocs against weak symbols in the same way as relocs against external symbols.
Alan Modra [Thu, 3 May 2007 09:24:16 +0000 (09:24 +0000)]
* ld.texinfo (--no-warn-search-mismatch): Document.
* ldfile.c (ldfile_try_open_bfd): Don't warn about skipping
incompatible libraries if --no-warn-search-mismatch.
* ld.h (args_type): Add warn_search_mismatch.
* ldmain.c (main): Init it.
* lexsup.c (enum option_values): Add OPTION_NO_WARN_SEARCH_MISMATCH.
(ld_options): Add entry for --no-warn-search-mismatch.
(parse_args): Handle OPTION_NO_WARN_SEARCH_MISMATCH.
Alan Modra [Thu, 3 May 2007 07:06:13 +0000 (07:06 +0000)]
* scripttempl/elf.sc: Add .debug_pubtypes and .debug_ranges.
Alan Modra [Thu, 3 May 2007 00:00:06 +0000 (00:00 +0000)]
daily update
Alan Modra [Wed, 2 May 2007 13:44:37 +0000 (13:44 +0000)]
include/elf/
* internal.h (ELF_IS_SECTION_IN_SEGMENT): Check both file offset
and vma for appropriate sections.
bfd/
* elf.c (assign_file_positions_for_load_sections): Set sh_offset
here. Set sh_type to SHT_NOBITS if we won't be allocating
file space. Don't bump p_memsz for non-alloc sections. Adjust
section-in-segment check.
(assign_file_positions_for_non_load_sections): Don't set sh_offset
here for sections that have already been handled above.
Alan Modra [Wed, 2 May 2007 11:24:17 +0000 (11:24 +0000)]
gas/
PR 4448
* config/tc-ppc.c (ppc_insert_operand): Don't increase min for
PPC_OPERAND_PLUS1.
include/opcode/
* ppc.h (PPC_OPERAND_PLUS1): Update comment.
Alan Modra [Wed, 2 May 2007 10:38:00 +0000 (10:38 +0000)]
* binutils-all/objcopy.exp (copy_setup): Don't perror, use send_log.
(copy_executable): Return early if test2 is blank.
Return unsupported rather than unresolved if we can't run
executables. Do test1 if we can compile.
Alan Modra [Wed, 2 May 2007 01:22:40 +0000 (01:22 +0000)]
commit the Robert's removal of "warning:"
Alan Modra [Wed, 2 May 2007 00:00:38 +0000 (00:00 +0000)]
daily update
Alan Modra [Tue, 1 May 2007 13:35:34 +0000 (13:35 +0000)]
* ldlang.c (lang_check): Error on architecture mismatch.
H.J. Lu [Tue, 1 May 2007 12:59:24 +0000 (12:59 +0000)]
gas/config/
2007-05-01 H.J. Lu <hongjiu.lu@intel.com>
* config/tc-i386.c (match_template): Check suffix for crc32 in
Intel mdoe.
(process_suffix): Default the suffix of 8bit crc32 to
BYTE_MNEM_SUFFIX.
(check_byte_reg): Skip check for 8bit crc32.
gas/testsuite/
2007-05-01 H.J. Lu <hongjiu.lu@intel.com>
* gas/i386/crc32-intel.d: New file.
* gas/i386/crc32.d:Likewise.
* gas/i386/crc32.s:Likewise.
* gas/i386/x86-64-crc32-intel.d:Likewise.
* gas/i386/x86-64-crc32.d:Likewise.
* gas/i386/x86-64-crc32.s:Likewise.
* gas/i386/i386.exp: Run crc32, crc32-intel, x86-64-crc32
and x86-64-crc32-intel.
opcodes/
2007-05-01 H.J. Lu <hongjiu.lu@intel.com>
* i386-dis.c (CRC32_Fixup): Properly handle Intel mode and
check data size prefix in 16bit mode.
* i386-opc.c (i386_optab): Default crc32 to non-8bit and
support Intel mode.
Alan Modra [Tue, 1 May 2007 00:00:05 +0000 (00:00 +0000)]
daily update
Alan Modra [Mon, 30 Apr 2007 14:06:40 +0000 (14:06 +0000)]
bfd/
* elf32-spu.c (struct spu_link_hash_table): Add stack_analysis
and emit_stack_syms bitfields.
(get_sym_h): Read all symbols if stack analysis will be done.
(spu_elf_create_sections): Add stack_analysis and emit_stack_syms
params, and stash in hash table.
(is_hint): Split off from..
(is_branch): ..here. Adjust callers.
(spu_elf_size_stubs): Add stack_analysis param. Arrange to read
and keep all syms.
(write_one_stub): Fix mem leak.
(find_function_stack_adjust): New function.
(sort_syms_syms, sort_syms_psecs): New vars.
(sort_syms): New function.
(struct call_info, struct function_info): New.
(struct spu_elf_stack_info): New.
(alloc_stack_info, maybe_insert_function, func_name): New functions.
(is_nop, insns_at_end, check_function_ranges): Likewise.
(find_function, insert_callee, mark_functions_via_relocs): Likewise.
(pasted_function, interesting_section, discover_functions): Likewise.
(mark_non_root, call_graph_traverse, build_call_tree): Likewise.
(sum_stack, spu_elf_stack_analysis, spu_elf_final_link): Likewise.
(bfd_elf32_bfd_final_link): Define.
* elf32-spu.h (struct _spu_elf_section_data): Add stack_info field.
(spu_elf_create_sections, spu_elf_size_stubs): Update prototypes.
include/
* bfdlink.h (struct bfd_link_info): Add "info" and "minfo".
ld/
* ldmain.c (link_callbacks): Init info and minfo fields.
* ldmisc.c (minfo): Do nothing if no map file.
* emultempl/spuelf.em (stack_analysis, emit_stack_syms): New vars.
(spu_after_open): Adjust spu_elf_create_sections call.
(spu_before_allocation): Likewise for spu_elf_size_stubs.
(OPTION_SPU_STACK_ANALYSIS, OPTION_SPU_STACK_SYMS): Define.
(PARSE_AND_LIST_LONGOPTS): Add new entries.
(PARSE_AND_LIST_OPTIONS, PARSE_AND_LIST_ARGS_CASES): Likewise.
* gen-doc.texi: Add @set for SPU and other missing targets.
* ld.texinfo: Update man page selection to match gen-doc.texi.
Document SPU features.
H.J. Lu [Mon, 30 Apr 2007 13:42:40 +0000 (13:42 +0000)]
2007-04-30 H.J. Lu <hongjiu.lu@intel.com>
* config/tc-i386.c (md_assemble): Use register_prefix in
error/warning message.
(check_byte_reg): Likewise.
(check_long_reg): Likewise.
(check_qword_reg): Likewise.
(check_word_reg): Likewise.
(process_operands): Likewise.
Mark Salter [Mon, 30 Apr 2007 13:21:52 +0000 (13:21 +0000)]
Support new FR-V SPRs
Alan Modra [Mon, 30 Apr 2007 00:27:57 +0000 (00:27 +0000)]
opcodes/
PR 4436
* ppc-opc.c (powerpc_operands): Correct bitm for second entry of MBE.
gas/
PR 4436
* config/tc-ppc.c (ppc_insert_operand): Disable range check if
min > max.
Alan Modra [Mon, 30 Apr 2007 00:00:07 +0000 (00:00 +0000)]
daily update
Alan Modra [Sun, 29 Apr 2007 00:00:08 +0000 (00:00 +0000)]
daily update
Thiemo Seufer [Sat, 28 Apr 2007 22:31:45 +0000 (22:31 +0000)]
* elfxx-mips.c (mips_elf_create_dynamic_relocation): Don't access
memory which we might not own.
Thiemo Seufer [Sat, 28 Apr 2007 22:12:58 +0000 (22:12 +0000)]
* config/tc-mips.c: Fix comment.
Alan Modra [Sat, 28 Apr 2007 06:04:28 +0000 (06:04 +0000)]
* ldcref.c (struct cref_hash_entry): Make "demangled" const.
(cref_fill_array): Adjust for changed demangler.
* ldlang.c (lang_one_common): Likewise.
Alan Modra [Sat, 28 Apr 2007 06:03:36 +0000 (06:03 +0000)]
* prdbg.c (tg_variable): Adjust for changed demangler.
(tg_start_function): Likewise.
Alan Modra [Sat, 28 Apr 2007 00:00:06 +0000 (00:00 +0000)]
daily update
Bob Wilson [Fri, 27 Apr 2007 20:10:47 +0000 (20:10 +0000)]
* elf32-xtensa.c (elf_xtensa_make_sym_local): Restore deleted function.
(elf_xtensa_hide_symbol, elf_backend_hide_symbol): Likewise.
(elf_xtensa_allocate_dynrelocs): Use elf_xtensa_make_sym_local.
Bob Wilson [Fri, 27 Apr 2007 19:57:40 +0000 (19:57 +0000)]
* elf32-xtensa.c (xtensa_read_table_entries): Step through table
contents and relocs in parallel.
H.J. Lu [Fri, 27 Apr 2007 19:47:30 +0000 (19:47 +0000)]
2007-04-27 H.J. Lu <hongjiu.lu@intel.com>
* i386-dis.c (modrm): Put reg before rm.
Bob Wilson [Fri, 27 Apr 2007 18:28:22 +0000 (18:28 +0000)]
* elf32-xtensa.c (relax_property_section): Remove extra irel increment.
Nathan Sidwell [Fri, 27 Apr 2007 16:24:18 +0000 (16:24 +0000)]
* ld-m68k/plt1-isac.d: New.
* ld-m68k/m68k.exp: Add it.
H.J. Lu [Fri, 27 Apr 2007 04:22:02 +0000 (04:22 +0000)]
gas/testsuite/
2007-04-26 H.J. Lu <hongjiu.lu@intel.com>
PR binutils/4430
* gas/i386/amd.d: Updated.
* gas/i386/immed32.d: Likewise.
* gas/i386/intel.d: Likewise.
* gas/i386/intel16.d: Likewise.
* gas/i386/intelok.d: Likewise.
* gas/i386/jump16.d: Likewise.
* gas/i386/naked.d: Likewise.
* gas/i386/opcode-suffix.d: Likewise.
* gas/i386/opcode.d: Likewise.
* gas/i386/prescott.d: Likewise.
* gas/i386/ssemmx2.d: Likewise.
* gas/i386/tlsd.d: Likewise.
* gas/i386/tlspic.d: Likewise.
* gas/i386/x86-64-addr32.d: Likewise.
* gas/i386/x86-64-prescott.d: Likewise.
* gas/i386/x86-64-rip.d: Likewise.
* gas/i386/x86_64.d: Likewise.
ld/testsuite/
2007-04-26 H.J. Lu <hongjiu.lu@intel.com>
PR binutils/4430
* ld-i386/tlsbin.dd: Updated.
* ld-i386/tlsbindesc.dd: Likewise
* ld-i386/tlsdesc.dd: Likewise
* ld-i386/tlsgdesc.dd: Likewise
* ld-i386/tlsnopic.dd: Likewise
* ld-i386/tlspic.dd: Likewise
* ld-x86-64/tlsbin.dd: Likewise
* ld-x86-64/tlsbindesc.dd: Likewise
* ld-x86-64/tlsdesc.dd: Likewise
* ld-x86-64/tlsgdesc.dd: Likewise
* ld-x86-64/tlspic.dd: Likewise
opcodes/
2007-04-26 H.J. Lu <hongjiu.lu@intel.com>
PR binutils/4430
* i386-dis.c (print_displacement): New.
(OP_E): Call print_displacement instead of print_operand_value
to output displacement when either base or index exist. Print
the explicit zero displacement in 16bit mode.
Alan Modra [Fri, 27 Apr 2007 03:37:43 +0000 (03:37 +0000)]
Write Mimi's name in ASCII.
Alan Modra [Fri, 27 Apr 2007 00:09:31 +0000 (00:09 +0000)]
* emulparams/elf32_sparc.sh: Update comments.
* emulparams/elf32bmip.sh: Likewise.
* emulparams/elf32ppc.sh: Likewise.
* emulparams/vxworks.sh: Likewise.
Alan Modra [Fri, 27 Apr 2007 00:00:08 +0000 (00:00 +0000)]
daily update
H.J. Lu [Thu, 26 Apr 2007 18:15:47 +0000 (18:15 +0000)]
gas/testsuite/
2007-04-26 H.J. Lu <hongjiu.lu@intel.com>
PR binutils/4429
* gas/i386/i386.exp: Run "x86-64-addr32-intel" and
"x86-64-rip-intel".
* gas/i386/intelok.d: Updated.
* gas/i386/x86-64-addr32-intel.d: New file.
* gas/i386/x86-64-rip-intel.d: Likewise.
opcodes/
2007-04-26 H.J. Lu <hongjiu.lu@intel.com>
PR binutils/4429
* i386-dis.c (print_insn): Also swap the order of op_riprel
when swapping op_index. Break when the RIP relative address
is printed.
(OP_E): Properly handle RIP relative addressing and print the
explicit zero displacement for Intel mode.
Denis Chertykov [Thu, 26 Apr 2007 17:18:23 +0000 (17:18 +0000)]
* config/tc-avr.c (mcu_types): Add support for atmega8hva and
atmega16hva devices. Move at90usb82 device to 'avr5' architecture.
* doc/c-avr.texi: Document new devices.
Alan Modra [Thu, 26 Apr 2007 14:58:51 +0000 (14:58 +0000)]
bfd/
* sysdep.h: Include config.h first.
Many files: Include sysdep.h before bfd.h.
* Makefile.am: Run "make dep-am".
* Makefile.in: Regenerate.
binutils/
* bucumm.h: Split off host dependencies to..
* sysdep.h: ..here.
Many files: Include sysdep.h. Remove duplicate headers and reorder.
* Makefile.am: Run "make dep-am".
* Makefile.in: Regenerate.
ld/
Many files: Include sysdep.h first. Remove duplicate headers.
* Makefile.am: Run "make dep-am".
* Makefile.in: Regenerate.
opcodes/
* Makefile.am: Run "make dep-am".
* Makefile.in: Regenerate.
* ns32k-dis.c: Include sysdep.h first.
Alan Modra [Thu, 26 Apr 2007 14:47:00 +0000 (14:47 +0000)]
bfd/
Many files: Include sysdep.h before bfd.h.
* Makefile.am: Run "make dep-am".
* Makefile.in: Regenerate.
binutils/
* bucumm.h: Split off host dependencies to..
* sysdep.h: ..here.
Many files: Include sysdep.h. Remove duplicate headers and reorder.
* Makefile.am: Run "make dep-am".
* Makefile.in: Regenerate.
ld/
Many files: Include sysdep.h first. Remove duplicate headers.
* Makefile.am: Run "make dep-am".
* Makefile.in: Regenerate.
opcodes/
* Makefile.am: Run "make dep-am".
* Makefile.in: Regenerate.
* ns32k-dis.c: Include sysdep.h first.
Jan Beulich [Thu, 26 Apr 2007 06:59:55 +0000 (06:59 +0000)]
Revert the value change of DT_ENCODING from 2003-01-17. Luckily (and
surprisingly) the value isn't really being used anywhere, henc no other
changes are needed.
include/elf/
2007-04-26 Jan Beulich <jbeulich@novell.com>
* common.h (DT_ENCODING): Correct value (back to spec mandated
value).
DJ Delorie [Thu, 26 Apr 2007 03:13:46 +0000 (03:13 +0000)]
merge from gcc
Alan Modra [Thu, 26 Apr 2007 00:00:08 +0000 (00:00 +0000)]
daily update