OpenCores
URL https://opencores.org/ocsvn/open8_urisc/open8_urisc/trunk

Subversion Repositories open8_urisc

Compare Revisions

  • This comparison shows the changes necessary to convert path
    /open8_urisc/trunk/gnu/binutils/ld
    from Rev 163 to Rev 166
    Reverse comparison

Rev 163 → Rev 166

/Makefile.in
556,6 → 556,7
eelf32rl78.c \
eelf32rx.c \
eelf32tilegx.c \
eelf32tilegx_be.c \
eelf32tilepro.c \
eelf32vax.c \
eelf32xc16x.c \
786,7 → 787,9
eelf64ltsmip_fbsd.c \
eelf64mmix.c \
eelf64ppc.c \
eelf64ppc_fbsd.c \
eelf64tilegx.c \
eelf64tilegx_be.c \
eelf_l1om.c \
eelf_l1om_fbsd.c \
eelf_k1om.c \
1159,6 → 1162,7
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/eelf32rl78.Po@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/eelf32rx.Po@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/eelf32tilegx.Po@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/eelf32tilegx_be.Po@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/eelf32tilepro.Po@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/eelf32vax.Po@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/eelf32xc16x.Po@am__quote@
1185,7 → 1189,9
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/eelf64ltsmip_fbsd.Po@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/eelf64mmix.Po@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/eelf64ppc.Po@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/eelf64ppc_fbsd.Po@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/eelf64tilegx.Po@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/eelf64tilegx_be.Po@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/eelf_i386.Po@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/eelf_i386_be.Po@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/eelf_i386_chaos.Po@am__quote@
2608,6 → 2614,10
$(srcdir)/emultempl/elf32.em $(srcdir)/emultempl/needrelax.em \
$(srcdir)/scripttempl/elf.sc ${GEN_DEPENDS}
${GENSCRIPTS} elf32tilegx "$(tdir_tilegx)"
eelf32tilegx_be.c: $(srcdir)/emulparams/elf32tilegx_be.sh \
$(srcdir)/emultempl/elf32.em $(srcdir)/emultempl/needrelax.em \
$(srcdir)/scripttempl/elf.sc ${GEN_DEPENDS}
${GENSCRIPTS} elf32tilegx_be "$(tdir_tilegx_be)"
eelf32tilepro.c: $(srcdir)/emulparams/elf32tilepro.sh \
$(srcdir)/emultempl/elf32.em $(srcdir)/emultempl/needrelax.em \
$(srcdir)/scripttempl/elf.sc ${GEN_DEPENDS}
3441,10 → 3451,18
ldemul-list.h \
$(ELF_DEPS) $(srcdir)/scripttempl/elf.sc ${GEN_DEPENDS}
${GENSCRIPTS} elf64ppc "$(tdir_elf64ppc)"
eelf64ppc_fbsd.c: $(srcdir)/emulparams/elf64ppc_fbsd.sh \
$(srcdir)/emultempl/ppc64elf.em ldemul-list.h \
$(ELF_DEPS) $(srcdir)/scripttempl/elf.sc ${GEN_DEPENDS}
${GENSCRIPTS} elf64ppc_fbsd "$(tdir_elf64ppc_fbsd)"
eelf64tilegx.c: $(srcdir)/emulparams/elf64tilegx.sh \
$(srcdir)/emultempl/elf32.em $(srcdir)/emultempl/needrelax.em \
$(srcdir)/scripttempl/elf.sc ${GEN_DEPENDS}
${GENSCRIPTS} elf64tilegx "$(tdir_tilegx)"
eelf64tilegx_be.c: $(srcdir)/emulparams/elf64tilegx_be.sh \
$(srcdir)/emultempl/elf32.em $(srcdir)/emultempl/needrelax.em \
$(srcdir)/scripttempl/elf.sc ${GEN_DEPENDS}
${GENSCRIPTS} elf64tilegx_be "$(tdir_tilegx_be)"
eelf_l1om.c: $(srcdir)/emulparams/elf_l1om.sh \
$(ELF_DEPS) $(srcdir)/scripttempl/elf.sc ${GEN_DEPENDS}
${GENSCRIPTS} elf_l1om "$(tdir_elf_l1om)"
/ldwrite.c
183,6 → 183,7
default:
abort ();
}
link_order->u.data.size = link_order->size;
}
break;
 
/lexsup.c
1,6 → 1,6
/* Parse options for the GNU linker.
Copyright 1991, 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2000,
2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2011
2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2011, 2012
Free Software Foundation, Inc.
 
This file is part of the GNU Binutils.
62,9 → 62,6
static void set_segment_start (const char *, char *);
static void help (void);
 
/* Non-zero if we are processing a --defsym from the command line. */
int parsing_defsym = 0;
 
/* Codes used for the long options with no short synonyms. 150 isn't
special; it's just an arbitrary non-ASCII char value. */
enum option_values
729,6 → 726,7
{
int longind;
int optc;
static unsigned int defsym_count;
 
/* Using last_optind lets us avoid calling ldemul_parse_args
multiple times on a single option, which would lead to
823,11 → 821,9
break;
case OPTION_DEFSYM:
lex_string = optarg;
lex_redirect (optarg);
lex_redirect (optarg, "--defsym", ++defsym_count);
parser_input = input_defsym;
parsing_defsym = 1;
yyparse ();
parsing_defsym = 0;
lex_string = NULL;
break;
case OPTION_DEMANGLE:
/emultempl/spuelf.em
384,9 → 384,13
return script;
}
 
#include <errno.h>
 
static void
spu_elf_relink (void)
{
const char *pex_return;
int status;
char **argv = xmalloc ((my_argc + 4) * sizeof (*argv));
 
memcpy (argv, my_argv, my_argc * sizeof (*argv));
397,9 → 401,16
argv[my_argc++] = "-T";
argv[my_argc++] = auto_overlay_file;
argv[my_argc] = 0;
execvp (argv[0], (char *const *) argv);
perror (argv[0]);
_exit (127);
 
pex_return = pex_one (PEX_SEARCH | PEX_LAST, (const char *) argv[0],
(char * const *) argv, (const char *) argv[0],
NULL, NULL, & status, & errno);
if (pex_return != NULL)
{
perror (pex_return);
_exit (127);
}
exit (status);
}
 
/* Final emulation specific call. */
/emultempl/ppc64elf.em
1,5 → 1,5
# This shell script emits a C file. -*- C -*-
# Copyright 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010, 2011
# Copyright 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010, 2011, 2012
# Free Software Foundation, Inc.
#
# This file is part of the GNU Binutils.
62,8 → 62,14
static int no_toc_sort = 0;
 
/* Set if PLT call stubs should load r11. */
static int plt_static_chain = 0;
static int plt_static_chain = ${DEFAULT_PLT_STATIC_CHAIN-0};
 
/* Set if PLT call stubs need to be thread safe on power7+. */
static int plt_thread_safe = -1;
 
/* Set if individual PLT call stubs should be aligned. */
static int plt_stub_align = 0;
 
/* Whether to emit symbols for stubs. */
static int emit_stub_syms = -1;
 
379,7 → 385,8
stub_sec = bfd_make_section_anyway_with_flags (stub_file->the_bfd,
stub_sec_name, flags);
if (stub_sec == NULL
|| !bfd_set_section_alignment (stub_file->the_bfd, stub_sec, 5))
|| !bfd_set_section_alignment (stub_file->the_bfd, stub_sec,
plt_stub_align > 5 ? plt_stub_align : 5))
goto err_ret;
 
output_section = input_section->output_section;
504,7 → 511,9
einfo ("%P: .init/.fini fragments use differing TOC pointers\n");
 
/* Call into the BFD backend to do the real work. */
if (!ppc64_elf_size_stubs (&link_info, group_size, plt_static_chain))
if (!ppc64_elf_size_stubs (&link_info, group_size,
plt_static_chain, plt_thread_safe,
plt_stub_align))
einfo ("%X%P: can not size stub section: %E\n");
}
}
649,7 → 658,11
#define OPTION_STUBGROUP_SIZE 321
#define OPTION_PLT_STATIC_CHAIN (OPTION_STUBGROUP_SIZE + 1)
#define OPTION_NO_PLT_STATIC_CHAIN (OPTION_PLT_STATIC_CHAIN + 1)
#define OPTION_STUBSYMS (OPTION_NO_PLT_STATIC_CHAIN + 1)
#define OPTION_PLT_THREAD_SAFE (OPTION_NO_PLT_STATIC_CHAIN + 1)
#define OPTION_NO_PLT_THREAD_SAFE (OPTION_PLT_THREAD_SAFE + 1)
#define OPTION_PLT_ALIGN (OPTION_NO_PLT_THREAD_SAFE + 1)
#define OPTION_NO_PLT_ALIGN (OPTION_PLT_ALIGN + 1)
#define OPTION_STUBSYMS (OPTION_NO_PLT_ALIGN + 1)
#define OPTION_NO_STUBSYMS (OPTION_STUBSYMS + 1)
#define OPTION_DOTSYMS (OPTION_NO_STUBSYMS + 1)
#define OPTION_NO_DOTSYMS (OPTION_DOTSYMS + 1)
666,6 → 679,10
{ "stub-group-size", required_argument, NULL, OPTION_STUBGROUP_SIZE },
{ "plt-static-chain", no_argument, NULL, OPTION_PLT_STATIC_CHAIN },
{ "no-plt-static-chain", no_argument, NULL, OPTION_NO_PLT_STATIC_CHAIN },
{ "plt-thread-safe", no_argument, NULL, OPTION_PLT_THREAD_SAFE },
{ "no-plt-thread-safe", no_argument, NULL, OPTION_NO_PLT_THREAD_SAFE },
{ "plt-align", optional_argument, NULL, OPTION_PLT_ALIGN },
{ "no-plt-align", no_argument, NULL, OPTION_NO_PLT_ALIGN },
{ "emit-stub-syms", no_argument, NULL, OPTION_STUBSYMS },
{ "no-emit-stub-syms", no_argument, NULL, OPTION_NO_STUBSYMS },
{ "dotsyms", no_argument, NULL, OPTION_DOTSYMS },
691,12 → 708,24
choose suitable defaults.\n"
));
fprintf (file, _("\
--plt-static-chain PLT call stubs should load r11.\n"
--plt-static-chain PLT call stubs should load r11.${DEFAULT_PLT_STATIC_CHAIN- (default)}\n"
));
fprintf (file, _("\
--no-plt-static-chain PLT call stubs should not load r11. (default)\n"
--no-plt-static-chain PLT call stubs should not load r11.${DEFAULT_PLT_STATIC_CHAIN+ (default)}\n"
));
fprintf (file, _("\
--plt-thread-safe PLT call stubs with load-load barrier.\n"
));
fprintf (file, _("\
--no-plt-thread-safe PLT call stubs without barrier.\n"
));
fprintf (file, _("\
--plt-align [=<align>] Align PLT call stubs to fit cache lines.\n"
));
fprintf (file, _("\
--no-plt-align Dont'\''t align individual PLT call stubs.\n"
));
fprintf (file, _("\
--emit-stub-syms Label linker stubs with a symbol.\n"
));
fprintf (file, _("\
753,6 → 782,31
plt_static_chain = 0;
break;
 
case OPTION_PLT_THREAD_SAFE:
plt_thread_safe = 1;
break;
 
case OPTION_NO_PLT_THREAD_SAFE:
plt_thread_safe = 0;
break;
 
case OPTION_PLT_ALIGN:
if (optarg != NULL)
{
char *end;
unsigned long val = strtoul (optarg, &end, 0);
if (*end || val > 8)
einfo (_("%P%F: invalid --plt-align `%s'\''\n"), optarg);
plt_stub_align = val;
}
else
plt_stub_align = 5;
break;
 
case OPTION_NO_PLT_ALIGN:
plt_stub_align = 0;
break;
 
case OPTION_STUBSYMS:
emit_stub_syms = 1;
break;
/emultempl/armelf.em
1,6 → 1,6
# This shell script emits a C file. -*- C -*-
# Copyright 1991, 1993, 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003,
# 2004, 2005, 2006, 2007, 2008, 2009
# 2004, 2005, 2006, 2007, 2008, 2009, 2010, 2011
# Free Software Foundation, Inc.
#
# This file is part of the GNU Binutils.
571,18 → 571,18
fprintf (file, _(" --vfp11-denorm-fix Specify how to fix VFP11 denorm erratum\n"));
fprintf (file, _(" --no-enum-size-warning Don'\''t warn about objects with incompatible\n"
" enum sizes\n"));
fprintf (file, _(" --no-wchar-size-warning Don'\''t warn about objects with incompatible"
fprintf (file, _(" --no-wchar-size-warning Don'\''t warn about objects with incompatible\n"
" wchar_t sizes\n"));
fprintf (file, _(" --pic-veneer Always generate PIC interworking veneers\n"));
fprintf (file, _("\
--stub-group-size=N Maximum size of a group of input sections that can be\n\
handled by one stub section. A negative value\n\
locates all stubs after their branches (with a\n\
group size of -N), while a positive value allows\n\
two groups of input sections, one before, and one\n\
after each stub section. Values of +/-1 indicate\n\
the linker should choose suitable defaults.\n"
));
--stub-group-size=N Maximum size of a group of input sections that\n\
can be handled by one stub section. A negative\n\
value locates all stubs after their branches\n\
(with a group size of -N), while a positive\n\
value allows two groups of input sections, one\n\
before, and one after each stub section.\n\
Values of +/-1 indicate the linker should\n\
choose suitable defaults.\n"));
fprintf (file, _(" --[no-]fix-cortex-a8 Disable/enable Cortex-A8 Thumb-2 branch erratum fix\n"));
fprintf (file, _(" --no-merge-exidx-entries Disable merging exidx entries\n"));
fprintf (file, _(" --[no-]fix-arm1176 Disable/enable ARM1176 BLX immediate erratum fix\n"));
/ld.h
1,6 → 1,6
/* ld.h -- general linker header file
Copyright 1991, 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2000,
2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010, 2011
2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010, 2011, 2012
Free Software Foundation, Inc.
 
This file is part of the GNU Binutils.
326,9 → 326,6
extern FILE * saved_script_handle;
extern bfd_boolean force_make_executable;
 
/* Non-zero if we are processing a --defsym from the command line. */
extern int parsing_defsym;
 
extern int yyparse (void);
extern void add_cref (const char *, bfd *, asection *, bfd_vma);
extern bfd_boolean handle_asneeded_cref (bfd *, enum notice_asneeded_action);
/configure.in
140,7 → 140,7
 
LT_INIT
 
ALL_LINGUAS="fr sv tr es da vi zh_CN zh_TW ga fi id bg"
ALL_LINGUAS="fr sv tr es da vi zh_CN zh_TW ga fi id bg it"
ZW_GNU_GETTEXT_SISTER_DIR
AM_PO_SUBDIRS
 
217,7 → 217,7
 
# Link in zlib if we can. This is needed only for the bootstrap tests
# right now, since those tests use libbfd, which depends on zlib.
AC_SEARCH_LIBS(zlibVersion, z, [AC_CHECK_HEADERS(zlib.h)])
AM_ZLIB
 
# When converting linker scripts into strings for use in emulation
# files, use astring.sed if the compiler supports ANSI string
/ChangeLog
1,1026 → 1,160
2011-11-03 Tristan Gingold <gingold@adacore.com>
2012-02-25 Walter Lee <walt@tilera.com>
 
* scripttempl/aix.sc: Consider header size for .text and .data
alignment.
 
2011-11-02 Tristan Gingold <gingold@adacore.com>
 
* emultempl/aix.em (read_file_list): New function.
(_handle_option): Handle '-f'.
* NEWS: Mention this feature.
 
2011-11-02 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
 
* configure.tgt (x86_64-*-solaris2*): Use $targ_extra_emuls for
targ_extra_libpath.
 
2011-11-01 DJ Delorie <dj@redhat.com>
 
* Makefile.am (ALL_EMULATION_SOURCES): Add eelf32rl78.c.
(+eelf32rl78.c): New rule.
* Makefile.am (ALL_EMULATION_SOURCES): Add eelf32tilegx_be.c.
(ALL_64_EMULATION_SOURCES): Add eelf64tilegx_be.c.
(eelf32tilegx_be.c): Add rule to build this file.
(eelf64tilegx_be.c): Ditto.
* Makefile.in: Regenerate.
* configure.tgt: Add rl78-*-* case.
* emulparams/elf32rl78.sh: New file.
* NEWS: Mention addition of Renesas RL78 support.
* configure.tgt (tilegx-*-*): Support big endian.
(tilegxbe-*-*): New.
* emulparams/elf32tilegx.sh (OUTPUT_FORMAT): Rename.
(BIG_OUTPUT_FORMAT): Define.
(LITTLE_OUTPUT_FORMAT): Define.
* emulparams/elf32tilegx_be.sh: New.
* emulparams/elf64tilegx.sh (OUTPUT_FORMAT): Rename.
(BIG_OUTPUT_FORMAT): Define.
(LITTLE_OUTPUT_FORMAT): Define.
* emulparams/elf64tilegx_be.sh: New.
 
2011-10-28 Walter Lee <walt@tilera.com>
2012-02-24 Kai Tietz <ktietz@redhat.com>
 
* NEWS: Fix TILEPro capitalization.
PR binutils/13710
* deffilep.y (keyword_as_name): Disable LIBRARY
keyword.
 
2011-10-25 Joern Rennecke <joern.rennecke@embecosm.com>
2012-02-22 Alan Modra <amodra@gmail.com>
 
* NEWS: Mention addition of Adapteva Epiphany support.
* Makefile.am (ALL_EMULATION_SOURCES): Add eelf32epiphany.c .
(eelf32epiphany.c): New rule.
* configure.tgt: Handle epiphany-*-elf.
* emulparams/elf32epiphany.sh: New file.
* Makefile.in: Regenerate.
* po/ld.pot: Regenerate.
PR ld/13683
* ldlang.c (lang_process): Rerun lang_do_assignments before
starting garbage collection.
* ldexp.c (fold_name): Generate a reloc for defined symbols
found without an associated output section during the mark phase.
(exp_fold_tree_1): Continue processing an expression, even if we
are unable to fold it, if we are in the first two evaluation
phases.
* ldexp.h (enum lang_phase_type): Add descriptions of the phases.
 
2011-10-24 Nick Clifton <nickc@redhat.com>
2012-02-19 Kai Tietz <ktietz@redhat.com>
 
* po/ja.po: Updated Japanese translation.
* deffilep.y (cmp_import_elem): Sort first by module name.
* pe-dll.c (process_def_file_and_drectve): Free strings
from removed export-element.
(add_bfd_to_link): Optimize loop on import-elements and lower
allocated memory.
(pe_implied_import_dll): Pass NULL instead of 0 for pointer
argument.
 
2011-10-20 Alan Modra <amodra@gmail.com>
2012-02-18 Hans-Peter Nilsson <hp@axis.com>
 
PR ld/13287
* plugin.c (plugin_should_reload): New function.
* plugin.h (plugin_should_reload): Declare.
* ldlang.c (open_input_bfds): Use above function.
* ldmisc.c (vfinfo <%S>): Use same type and avoid cast for
temporary variable node used for NULL argument.
 
2011-10-19 Alan Modra <amodra@gmail.com>
2012-02-18 Alan Modra <amodra@gmail.com>
 
PR ld/13254
* emultempl/elf32.em (gld${EMULATION_NAME}_handle_option): Add
-z text, -z notext, -z textoff options for all targets having
shared lib support.
PR ld/13343
* ld.h (parsing_defsym): Delete.
* ldexp.c (exp_intop, exp_bigintop, exp_relop): Set type.filename.
(fold_binary, fold_name, exp_fold_tree_1, exp_get_vma, exp_get_fill,
exp_get_abs_int): Add tree arg for %S in error messages. Don't
fudge lineno.
(exp_binop, exp_unop, exp_nameop, exp_assop, exp_assert): Copy
type.filename from sub-tree.
(exp_trinop): Likewise, and use "cond" rather than "lhs".
* ldexp.h (node_type): Add filename field to struct.
* ldfile.c (ldfile_input_filename): Delete. Remove all refs.
* ldfile.h (ldfile_input_filename): Delete.
* ldgram.y (phdr_type, phdr_qualifiers, yyerror): Add NULL arg for
%S in error messages.
* ldemul.c (syslib_default, hll_default): Likewise.
* ldlang.c (lang_memory_region_lookup, lang_memory_region_alias,
lang_get_regions, lang_new_phdr): Likewise.
(lang_size_sections_1): Pass addr_tree for %S.
* ldlex.h (lex_redirect): Update prototype.
(ldlex_filename): Declare.
* ldlex.l (<EOF>): Don't set ldfile_input_filename.
(lex_redirect): Add fake_filename and count params. Push
fake_filename to file_name_stack and init lineno from count.
(ldlex_filename): New function.
(lex_warn_invalid): Use above.
* ldmain.c (main): Update lex_redirect call.
* ldmisc.c (vfinfo <%S>): Take file name and line number from
etree_type arg, or use current if arg is NULL.
* lexsup.c (parsing_defsym): Delete.
(parse_args <OPTION_DEFSYM>): Update lex_redirect call.
 
2011-10-15 Alan Modra <amodra@gmail.com>
2012-02-13 Kai Tietz <ktietz@redhat.com>
 
* emultempl/ppc64elf.em (gld${EMULATION_NAME}_finish): Remove toc check.
* deffilep.y (find_export_in_list): Set is_indent for
first or last element, if identical.
(find_import_in_list): Likewise.
 
2011-10-13 Dave Korn <dave.korn.cygwin@gmail.com>
2012-02-11 Kai Tietz <ktietz@redhat.com>
 
* pe-dll.c (generate_reloc): Don't emit a base reloc for an
underlying BFD reloc that will be discarded in eh_frame data.
* deffilep.y (%union): New type id_const.
(opt_name2): New rule.
(keyword_as_name): New rule.
(dot_name): Replaced by opt_name2 rule.
(opt_name): Adjust rule.
(opt_equal_name): Likewise.
 
2011-10-10 Nick Clifton <nickc@redhat.com>
2012-02-11 Pascal Obry <pascal@obry.net>
 
* po/bg.po: Updated Bulgarian translation.
* po/es.po: Updated Spanish translation.
* po/fi.po: Updated Finnish translation.
* po/fr.po: Updated French translation.
* pe-dll.c (auto_export): Use bsearch to speed up scan of exports
table.
(process_def_file_and_drectve): Maintain sorting of exports table
after stripping leading @ signs.
 
2011-10-10 Alan Modra <amodra@gmail.com>
2012-02-09 Alan Modra <amodra@gmail.com>
 
* ldmain.c (main): Move code twiddling various config and link_info
bits to..
* lexsup.c (parse_args): ..here. Move plugin_load_plugins call
into main.
* plugin.c (set_tv_header): Test link_info.executable, not
link_info.shared.
(is_visible_from_outside): Likewise. Delete redundant
is_ir_dummy_bfd check and "section" parameter.
* ldgram.y (input_section_spec_no_keep): Don't ignore sect_flags.
 
2011-10-10 Alan Modra <amodra@gmail.com>
2012-01-31 H.J. Lu <hongjiu.lu@intel.com>
 
* emultempl/ppc64elf.em (ppc_add_stub_section): Align to 32 bytes.
 
2011-10-09 Alan Modra <amodra@gmail.com>
 
* emultempl/ppc64elf.em (ppc_create_output_section_statements): Add
missing colon to error message.
(ppc_before_allocation): Likewise.
 
2011-10-06 Alan Modra <amodra@gmail.com>
 
PR ld/13229
* plugin.c (tv_header_tags): Add LDPT_GET_SYMBOLS_V2.
(set_tv_header): Handle it. Adjust LDPT_GET_SYMBOLS. Return void.
(get_symbols): Add def_ironly_exp param. Return that value for
syms exported from shared libs.
(get_symbols_v1, get_symbols_v2): New wrapper functions.
* testplug.c: Update for above changes.
 
2011-09-27 Kai Tietz <ktietz@redhat.com>
 
* scripttempl/pe.sc (.text): Add support for
.gnu.linkonce.t.* section.
(.debug_info): Only use .gnu.linkonce.wi.* for
relocating.
* scripttempl/pep.sc: Likewise.
 
2011-09-22 Tristan Gingold <gingold@adacore.com>
 
* NEWS: Add marker for 2.22.
 
2011-09-20 Alan Modra <amodra@gmail.com>
 
PR ld/13201
* ldlang.h (lang_input_statement_type): Add "reload" bitfield.
Clarify comments.
* ldlang.c (new_afile): Init new field.
(load_symbols): Don't call ldlang_add_file when reloading.
(open_input_bfds): Reload as-needed libs during plugin rescan.
 
2011-09-15 H.J. Lu <hongjiu.lu@intel.com>
 
PR ld/12975
* ldlang.c (lang_elf_version_info): Removed.
(lang_register_vers_node): Replace lang_elf_version_info with
link_info.version_info.
(lang_add_vers_depend): Likewise.
* pe-dll.c (process_def_file_and_drectve): Likewise.
* emultempl/solaris2.em (elf_solaris2_before_allocation): Likewise.
 
* ldlang.h (lang_elf_version_info): Removed.
 
* plugin.c (is_visible_from_outside): Check if symbol is hidden
by version script.
 
* emultempl/elf32.em (gld${EMULATION_NAME}_before_allocation):
Remove lang_elf_version_info.
 
2011-09-15 Dmitry Gorbachev <d.g.gorbachev@gmail.com>
 
PR ld/13183
* ldmain.c (add_archive_element): Support thin archive member
for LTO.
 
2011-08-26 Nick Clifton <nickc@redhat.com>
 
* po/es.po: Updated Spanish translation.
 
2011-08-26 Nick Clifton <nickc@redhat.com>
 
* NEWS: Mention that --no-copy-dt-needed-entries is now the
default.
 
2011-08-22 Michael Matz <matz@suse.de>
 
* ldmain.c (add_DT_NEEDED_for_dynamic): Default to FALSE.
* ld.texinfo (--copy-dt-needed-entries): Mention new default.
 
2011-08-17 Alan Modra <amodra@gmail.com>
 
PR ld/12762
* ldlang.c (section_already_linked): Revert 2011-07-09 changes.
* plugin.c: Likewise.
(asymbol_from_plugin_symbol): Create linkonce section for syms
with comdat_key.
 
2011-08-09 Matthew Gretton-Dann <matthew.gretton-dann@arm.com>
 
* emultempl/armelf.em (fix_arm1176): New variable.
(arm_elf_create_output_section_statements): Pass
fix_arm1176 option to bfd backend.
(OPTION_FIX_ARM1176): New define.
(OPTION_NO_FIX_ARM1176): Likewise.
(PARSE_AND_LIST_LONGOPTS): Add new command line options.
(PARSE_AND_LIST_OPTIONS): Likewise.
(PARSE_AND_LIST_ARGS_CASES): Likewise.
* ld.texinfo: Document new command line options.
 
2011-08-09 Alan Modra <amodra@gmail.com>
 
PR ld/13066
* plugin.c (add_symbols): Revert 2011-08-05.
 
2011-08-06 Kai Tietz <ktietz@redhat.com>
 
* scripttempl/pep.sc: Add .debug_macro section.
* scripttempl/pe.sc: Likewise.
 
2011-08-05 Alan Modra <amodra@gmail.com>
 
PR ld/12762
* plugin.c (add_symbols): Exclude comdat_key symbols from symbol
table if already seen.
 
2011-08-04 H.J. Lu <hongjiu.lu@intel.com>
 
* ldmain.c (main): Replace remove_output with ld_cleanup in
comments.
 
2011-07-26 Alan Modra <amodra@gmail.com>
 
* emulparams/elf32ppc.sh: Source plt_unwind.sh.
* emulparams/elf64ppc.sh: Likewise.
* emultempl/ppc32elf.em (OPTION_NO_TLS_OPT): Adjust.
(PARSE_AND_LIST_PROLOGUE, PARSE_AND_LIST_LONGOPTS,
PARSE_AND_LIST_OPTIONS, PARSE_AND_LIST_ARGS_CASES): Append to
existing values.
* emultempl/ppc64elf.em (OPTION_STUBGROUP_SIZE): Adjust.
(PARSE_AND_LIST_PROLOGUE, PARSE_AND_LIST_LONGOPTS,
PARSE_AND_LIST_OPTIONS, PARSE_AND_LIST_ARGS_CASES): Append to
existing values.
 
2011-07-22 H.J. Lu <hongjiu.lu@intel.com>
 
* Makefile.am (ALL_64_EMULATIONS): Add eelf_k1om.o and
eelf_k1om_fbsd.o
(eelf_k1om.c): New.
(eelf_k1om_fbsd.c): Likewise.
* Makefile.in: Regenerated.
 
* configure.tgt (targ64_extra_emuls): Add elf_k1om if elf_x86_64
is supported. Add elf_k1om_fbsd if elf_x86_64_fbsd is supported.
(targ_extra_emuls): Likewise.
 
* emulparams/elf_k1om.sh: New.
* emulparams/elf_k1om_fbsd.sh: Likewise.
 
2011-07-16 Roland McGrath <roland@hack.frob.com>
 
* ld.h (args_type): New field print_output_format.
* lexsup.c (enum option_values, ld_options, parse_args):
Handle --print-output-format.
* ldmain.c (main): Implement --print-output-format.
* ld.texinfo (Options): Document it.
 
* ldlang.c (lang_get_output_target): Don't return current_target
when it's NULL.
 
2011-07-15 Alan Modra <amodra@gmail.com>
 
* Makefile.am (e*.c): Sort.
* Makefile.in: Regenerate.
 
2011-07-14 Alan Modra <amodra@gmail.com>
 
* emultempl/elf32.em (gld${EMULATION_NAME}_handle_option,
gld${EMULATION_NAME}_list_options): Don't condition -z relro
and -z norelro on COMMONPAGESIZE being defined.
 
2011-07-14 Alan Modra <amodra@gmail.com>
 
* emultempl/ppc64elf.em (plt_static_chain): New var.
(gld${EMULATION_NAME}_after_allocation): Pass to ppc64_elf_size_stubs.
(PARSE_AND_LIST_PROLOGUE, PARSE_AND_LIST_LONGOPTS,
PARSE_AND_LIST_OPTIONS, PARSE_AND_LIST_ARGS_CASES): Handle
--plt-static-chain and --no-plt-static-chain.
 
2011-07-14 Alan Modra <amodra@gmail.com>
 
* emultempl/elf32.em (gld${EMULATION_NAME}_add_options,
gld${EMULATION_NAME}_handle_option, gld${EMULATION_NAME}_list_options):
Provide --build-id, -z defs, -z muldefs, -z max-page-size,
-z common-page-size, -z execstack, -z noexecstack for all targets.
Add help for --exclude-libs.
(OPTION_LD_GENERATED_UNWIND_INFO,
OPTION_NO_LD_GENERATED_UNWIND_INFO): Move this..
(gld${EMULATION_NAME}_handle_option): ..and code handling
--ld-generated-unwind-info and --no-ld-generated-unwind-info..
* emulparams/plt_unwind.sh: ..to here. New file. Add help.
* emulparams/elf32_x86_64.sh: Include plt_unwind.sh.
PR ld/13616
* emulparams/elf32_x86_64.sh: Remove NOP.
* emulparams/elf_i386.sh: Likewise.
* emulparams/elf_i386_chaos.sh: Likewise.
* emulparams/elf_i386_be.sh: Likewise.
* emulparams/elf_i386_ldso.sh: Likewise.
* emulparams/elf_i386_vxworks.sh: Likewise.
* emulparams/elf_k1om.sh: Likewise.
* emulparams/elf_l1om.sh: Likewise.
* emulparams/elf_x86_64.sh: Likewise.
 
2011-07-11 Catherine Moore <clm@codesourcery.com>
* ldlang.c (zero_fill): Initialized to 0.
 
* ld.h (section_flag_list): Add field to struct wildcard_spec.
* ld.texinfo (INPUT_SECTION_FLAGS): Document.
* ldgram.y (flag_info_list, flag_info): Add to union.
(INPUT_SECTION_FLAGS): New token.
(wildcard_spec): Initialize section_flag_list to NULL for
each alternative.
(sect_flag_list, sect_flags): New rules.
(input_section_spec_no_keep): Add alternatives to recognize
sect_flags.
* ldlang.c (walk_wild_consider_section): Initialize
section_flag_info field of the section struct.
(lang_add_section): Check input section flags.
(lang_add_wild): Initialize section_flag_list field of
the statement struct.
* ldlang.h (lang_input_statement_struct): Add section_flag_list field.
(lang_wild_statement_struct): Likewise.
* ldlex.l (INPUT_SECTION_FLAGS): New token.
* mri.c (mri_draw_tree): Initialize section_flag_list to NULL.
* NEWS: Announce INPUT_SECTION_FLAGS enhancement.
* ldwrite.c (build_link_order): Set data size to linker odrder
size when they are the same.
 
2011-07-09 H.J. Lu <hongjiu.lu@intel.com>
* scripttempl/elf.sc: Don't specify fill if NOP is undefined.
 
PR ld/12942
* ldlang.c (section_already_linked): Pass "struct already_linked *"
to bfd_section_already_linked.
(lang_process): Set link_info.loading_lto_outputs before
loading LTO outputs.
* plugin.c: Include "libbfd.h".
(add_symbols): Call bfd_section_already_linked with comdat_key.
2012-01-17 Alan Modra <amodra@gmail.com>
 
2011-06-20 H.J. Lu <hongjiu.lu@intel.com>
* ldver.c (ldversion): Update copyright message year.
 
* configure.tgt: Revert x32 change.
2012-01-15 Alan Modra <amodra@gmail.com>
 
2011-06-20 Jakub Jelinek <jakub@redhat.com>
PR ld/12758
* ldlang.c (lang_process): Don't reopen all files, just those
newly added by plugin.
 
PR ld/12570
* emultempl/elf32.em (OPTION_LD_GENERATED_UNWIND_INFO,
OPTION_NO_LD_GENERATED_UNWIND_INFO): Define.
(gld${EMULATION_NAME}_handle_option): Handle
--ld-generated-unwind-info and --no-ld-generated-unwind-info.
* ld.texinfo (--ld-generated-unwind-info,
--no-ld-generated-unwind-info): Document.
2012-01-11 Alan Modra <amodra@gmail.com>
 
2011-06-19 H.J. Lu <hongjiu.lu@intel.com>
* emultempl/ppc64elf.em (PARSE_AND_LIST_PROLOGUE,
PARSE_AND_LIST_LONGOPTS, PARSE_AND_LIST_OPTIONS,
PARSE_AND_LIST_ARGS_CASES): Handle --{no-,}plt-thread-safe and
--{no-,}plt-align.
(plt_thread_safe, plt_stub_align): New vars.
(gld${EMULATION_NAME}_after_allocation): Pass them to
ppc64_elf_size_stubs. Align stub sections according to plt_stub_align.
* ld.texinfo: Document new command line options, and an old
undocumented option.
 
* configure.tgt: Support x32.
2012-01-09 Roland McGrath <mcgrathr@google.com>
 
2011-06-15 Nick Clifton <nickc@redhat.com>
* configure.in: Use AM_ZLIB.
* configure: Regenerated.
 
* NEWS: Mention addition of TILEPRO and TIKE-Gx support.
 
2011-06-13 Walter Lee <walt@tilera.com>
 
* Makefile.am (ALL_EMULATION_SOURCES): Add eelf32tilegx.c and
eelf32tilepro.c.
(ALL_64_EMULATION_SOURCES): Add eelf64tilegx.c.
(eelf32tilegx.c): New target.
(eelf32tilepro.c): Likewise.
(eelf64tilegx.c): Likewise.
* Makefile.in: Regenerate.
* configure.tgt: Handle tilegx-*-* and tilepro-*-*.
* emulparams/elf32tilegx.sh: New file.
* emulparams/elf64tilegx.sh: New file.
* emulparams/elf32tilepro.sh: New file.
 
2011-06-13 Alan Modra <amodra@gmail.com>
 
* ldlang.c (sort_def_symbol, lang_one_common): Don't handle
warning symbols here.
* emultempl/pe.em (pr_sym): Remove redundant test.
* emultempl/pep.em (pr_sym): Likewise.
 
2011-06-09 Nick Clifton <nickc@redhat.com>
 
PR ld/12845
* emultempl/mipself.em (mips_add_stub_section): Do not add stubs
for sections that have been removed by garbage collection.
 
2011-06-08 Alan Modra <amodra@gmail.com>
 
* ldlang.c (lang_one_common): Handle warning symbols.
 
2011-06-07 Nick Clifton <nickc@redhat.com>
 
* configure.tgt: Accept any V850 architecture.
 
2011-06-03 Nick Clifton <nickc@redhat.com>
 
* Makefile.am (ALL_EMULATION_SOURCES): Add eelf32am33lin.c
Add rule to build eelf32am33lin.c
* Makefile.in: Regenerate.
 
2011-06-02 Nick Clifton <nickc@redhat.com>
 
* lexsup.c: Fix spelling mistake in comment.
* scripttempl/epocpe.sc: Likewise.
* scripttempl/i386beos.sc: Likewise.
* scripttempl/mcorepe.sc: Likewise.
* scripttempl/pe.sc: Likewise.
* scripttempl/pep.sc: Likewise.
* po/ld.pot: Regenerate.
 
2011-05-27 Nick Clifton <nickc@redhat.com>
 
* scripttempl/v850.sc (_heap_start): Provide.
 
2011-05-23 Alan Modra <amodra@gmail.com>
 
* ldmisc.c (vfinfo): Add %H.
* ldmain.c (reloc_overflow): Use %H rather than %C.
(reloc_dangerous, unattached_reloc): Likewise.
 
2011-05-23 Alan Modra <amodra@gmail.com>
 
PR 12763
* ldlang.c (lang_output_section_find_by_flags): Match orphan .sdata2
like sections to existing .sdata2, and similarly for orphan TLS
sections.
* emultempl/elf32.em (place_orphan): Exclude .tbss from orphan_bss.
 
2011-05-17 Tomohiro Kashiwada <kikairoya@gmail.com>
 
PR ld/12759
* emultempl/rxelf.em (ignore_lma): New variable.
(rx_elf_create_output_section_statements): Pass the setiing of
ignore_lma to bfd_elf32_rx_set_target_flags.
(OPTION_IGNORE_LMA): Define.
(OPTION_NO_IGNORE_LMA): Define.
(PARSE_AND_LIST_LONGOPTS): Add ignore lma.
(PARSE_AND_LIST_OPTIONS): Add ignore lma.
(PARSE_AND_LIST_ARGS_CASES): Add ignore lma.
 
2011-05-17 Alan Modra <amodra@gmail.com>
 
PR ld/12760
* ldmain.c (notice): Add "flags" and "string" param.
* plugin.c (plugin_notice): Likewise. Handle indirect, warning
and constructor syms.
 
2010-05-16 Daniel Jacobowitz <dan@codesourcery.com>
 
* ldlang.c (print_assignment): Use the symbol's section if we
use its value.
* ldexp.c (exp_fold_tree_1): Skip self-assignment. Expand
comment on copying symbol type.
 
2011-05-16 H.J. Lu <hongjiu.lu@intel.com>
 
PR ld/12760
* plugin.c (plugin_notice): Set u.undef.abfd for symbols made
undefweak.
 
2011-05-16 Alan Modra <amodra@gmail.com>
 
* ldlang.c (lang_leave_output_section_statement): Don't copy
previous lma_region if given address.
 
2011-05-13 Bernd Schmidt <bernds@codesourcery.com>
 
(eelf32_tic6x_linux_be.c, eelf32_tic6x_linux_le.c,
eelf32_tic6x_elf_be.c, eelf32_tic6x_elf_le.c): New rules.
* Makefile.am (ALL_EMULATIONS): Add these files.
(eelf32_tic6x_be.c, eelf32_tic6x_le.c): Depend on tic6xdsbt.em.
* Makefile.in: Regenerated.
* emultempl/tic6xdsbt.em (is_tic6x_target): Allow more tic6x target
vectors.
* emulparams/elf32_tic6x_elf_be.sh: New file.
* emulparams/elf32_tic6x_elf_le.sh: New file.
* emulparams/elf32_tic6x_linux_be.sh: New file.
* emulparams/elf32_tic6x_linux_le.sh: New file.
* configure.tgt (tic6x-*-elf, tic6x-*-uclinux): New.
(tic6x-*-*): Replaced by these.
 
2011-05-13 Jan Beulich <jbeulich@novell.com>
 
* configure.tgt: Add targets x86_64-*-pe and x86_64-*-pep.
 
2011-05-09 Paul Brook <paul@codesourcery.com>
 
* emultempl/tic6xdsbt.em (merge_exidx_entries): New.
(compare_output_sec_vma): New function.
(gld${EMULATION_NAME}_after_allocation): New function.
(OPTION_NO_MERGE_EXIDX_ENTRIES): Define.
(PARSE_AND_LIST_OPTIONS): Add --no-merge-exidx-entries.
(PARSE_AND_LIST_ARGS_CASES): Add OPTION_NO_MERGE_EXIDX_ENTRIES.
(LDEMUL_AFTER_ALLOCATION): Set.
* ld.texinfo: Document c6x --no-merge-exidx-entries.
 
2011-05-07 Dave Korn <dave.korn.cygwin@gmail.com>
 
PR ld/12365
* scripttempl/pe.sc (__rt_psrelocs_start): New symbol definition.
(__rt_psrelocs_end): Likewise.
(__rt_psrelocs_size): Likewise difference between the above.
(__RUNTIME_PSEUDO_RELOC_LIST_END__): Move outside .rdata section
immediately after end of pseudo-reloc data.
(___RUNTIME_PSEUDO_RELOC_LIST_END___): Likewise.
(__RUNTIME_PSEUDO_RELOC_LIST__): Move outside .rdata section and
calculate backward from list end.
(___RUNTIME_PSEUDO_RELOC_LIST___): Likewise.
* scripttempl/pep.sc: Likewise.
 
2011-05-06 Tristan Gingold <gingold@adacore.com>
 
* scripttempl/alphavms.sc (CODE): Add *$CODE*.
 
2011-05-04 Tristan Gingold <gingold@adacore.com>
 
* emultempl/generic.em (ld_${EMULATION_NAME}_emulation): Add
LDEMUL_ADD_OPTIONS and LDEMUL_HANDLE_OPTION.
* emultempl/vms.em (OPTION_IDENTIFICATION): New macro.
(gld${EMULATION_NAME}_add_options): New function.
(gld${EMULATION_NAME}_list_options): Ditto.
(gld${EMULATION_NAME}_handle_option): Ditto.
(LDEMUL_ADD_OPTIONS, LDEMUL_HANDLE_OPTION)
(LDEMUL_LIST_OPTIONS): Define.
 
2011-05-04 Alan Modra <amodra@gmail.com>
 
PR ld/12726
* ldexp.h (lang_phase_type): Add lang_assigning_phase_enum.
* ldexp.c (exp_fold_tree_1): Correct assign to dot comment. Don't
assign to dot when lang_assigning_phase_enum.
* ldlang.h (lang_do_assignments): Update prototype.
* ldlang.c (lang_do_assignments): Add phase parameter. Update all
callers.
* pe-dll.c (pe_dll_fill_sections, pe_exe_fill_sections): Update
lang_do_assignments calls.
 
2011-04-28 Daniel C. Klauer <daniel.c.klauer@web.de>
 
PR ld/12614
* emultempl/pe.em (_after_open): Correctly check whether symbol is
in undef list.
 
2011-04-26 Kai Tietz <ktietz@redhat.com>
 
* scripttempl/pe.sc: Handle .eh_frame($|.)* sections.
* scripttempl/pep.sc: Likewise.
 
2011-04-24 Alan Modra <amodra@gmail.com>
 
PR ld/12365
PR ld/12696
* ldmain.c (notice): Delete "name" param, add "h".
* plugin.c (plugin_notice): Likewise. Set non_ir_ref. Handle
redefinitions of IR symbols in real BFDs.
(plugin_multiple_definition, plugin_multiple_common): Delete.
(non_ironly_hash, init_non_ironly_hash): Delete.
(is_visible_from_outside): Traverse entry_symbol chain.
(get_symbols): Use non_ir_ref flag rather than hash lookup.
 
2011-04-21 Tristan Gingold <gingold@adacore.com>
 
* scripttempl/alphavms.sc: Add dwarf2 embedding marks.
 
2011-04-20 Tristan Gingold <gingold@adacore.com>
 
* emultempl/aix.em (_add_options): Ignore -bbigtoc switch.
 
2011-04-20 Alan Modra <amodra@gmail.com>
 
* ld.h (ld_config_type <hash_table_size>): Make it an unsigned long.
 
2011-04-20 Alan Modra <amodra@gmail.com>
 
PR ld/12365
* ldfile.c (ldfile_try_open_bfd): Move code creating and switching
to plugin IR BFD..
* ldmain.c (add_archive_element): ..and similar code here..
* plugin.c (plugin_maybe_claim): ..to here. New function.
(plugin_call_claim_file): Make static.
(asymbol_from_plugin_symbol): Set ELF st_shndx for common syms.
(plugin_multiple_common): New function.
(plugin_call_all_symbols_read): Hook in plugin_multiple_common.
* plugin.h (plugin_call_claim_file): Don't declare.
(plugin_maybe_claim): Declare.
 
2011-04-20 Alan Modra <amodra@gmail.com>
 
PR ld/12365
* ldmain.c (multiple_definition): Take a bfd_link_hash_entry
pointer arg rather than "name", "obfd", "osec", "oval". Add code
removed from linker.c. Hack around xcofflink.c oddity in
passing NULL nbfd.
(multiple_common): Similarly.
* plugin.c (orig_allow_multiple_defs): Delete.
(plugin_call_all_symbols_read): Don't twiddle allow_multiple_definition.
(plugin_multiple_definition): Update.
 
2011-04-18 Kai Tietz <ktietz@redhat.com>
 
* deffilep.y (def_aligncomm): Avoid duplets.
 
* deffilep.y (def_pool_str): New type.
(pool_strs): Local static.
(def_pool_alloc): Local function.
(def_pool_strdup): Likewise.
(def_pool_free): Likewise.
(opt_name): Replace xmalloc/xstrdup by
def_pool_alloc/def_pool_strdup.
(dot_name): Likewise.
(anylang_id): Likewise.
(def_lex): Likewise.
(def_file_parse): Call def_pool_free on
exit and cleanup directives elements.
(def_file_add_directive): Call def_pool_free.
 
2011-04-18 Paul Brook <paul@codesourcery.com>
 
* emulparams/elf32_tic6x_le.sh: Define OTHER_READONLY_SECTIONS
for unwinding tables.
 
2011-04-18 Alan Modra <amodra@gmail.com>
 
PR ld/12365
PR ld/12672
* ldfile.c (ldfile_try_open_bfd): Don't attempt any plugin action
when no_more_claiming.
* ldmain.c (add_archive_element): Likewise.
(multiple_definition): Remove plugin_multiple_definition call.
(notice): Remove plugin_notice call.
* ldlang.c (lang_list_insert_after, void lang_list_remove_tail): Move.
Delete prototype.
(plugin_insert): New static var.
(open_input_bfds): Only rescan libs after plugin insert point.
(lang_gc_sections): Omit plugin claimed files.
(lang_process): Set plugin_insert. Only rescan when plugin adds
objects.
* plugin.h (no_more_claiming): Declare.
(plugin_notice, plugin_multiple_definition): Don't declare.
* plugin.c: Formatting.
(orig_notice_all, orig_allow_multiple_defs, orig_callbacks,
plugin_callbacks): New static vars.
(no_more_claiming): Make global.
(plugin_cached_allow_multiple_defs): Delete.
(plugin_get_ir_dummy_bfd): Set SEC_EXCLUDE on dummy .text section,
use newer bfd_make_section variant. Make COMMON section too.
Error handling. Correct setting of gp size.
(asymbol_from_plugin_symbol): Properly cast last arg of concat.
(message): Likewise for ACONCAT.
(asymbol_from_plugin_symbol): Use our COMMON section.
(get_symbols): When report_plugin_symbols, show visibility too.
(init_non_ironly_hash): Move. Don't test non_ironly_hash.
(plugin_load_plugins): Save state of linker callbacks, set up to
call plugin_notice instead. Call init_non_ironly_hash here.
(plugin_call_all_symbols_read): Set plugin_multiple_definition in
plugin callbacks.
(plugin_notice): Rewrite.
(plugin_multiple_definition): Make static, call original callback.
 
2011-04-15 Alan Modra <amodra@gmail.com>
 
PR ld/12672
* ldlang.c (enum open_bfd_mode): New.
(open_input_bfds): Replace "force" param with "mode". Reload
archives for rescan. Update all callers.
(lang_process): Make another open_input_bfds pass for plugins.
 
2011-04-13 Kai Tietz <ktietz@redhat.com>
 
PR binutils/12658
* deffile.h (def_file_add_export): Add is_dup argument.
(def_file_add_import): Likewise.
* deffilep.y (are_names_equal): New helper.
(cmp_export_elem): New helper.
(find_export_in_list): Add search routine for exports.
(def_file_add_export): Check for duplicates.
(cmp_import_elem): New helper.
(find_import_in_list): Add search routine for imports.
(def_file_add_import): Check for duplicates.
(def_exports): Handle duplicates.
(def_imports): Likewise.
* pe-dll.c (process_def_file_and_drectve): Likewise.
(pe_implied_import_dll): Likewise.
 
2011-04-11 Chris Quenelle <chris.quenelle@oracle.com>
 
* scripttempl/elf.sc (.exception_ranges): Add new section.
 
2011-04-08 Hector Oron <hector.oron@gmail.com>
 
PR ld/12643
* configure.tgt: Add support for arm-*-gnueabihf targets.
 
2011-04-07 Eric B. Weddington <eric.weddington@atmel.com>
 
* Makefile.in: Regenerate. Remove stray eavrtiny10 rules.
 
2011-04-07 Joseph Myers <joseph@codesourcery.com>
 
* configure.tgt: Remove stray ;;.
 
2011-04-06 Joseph Myers <joseph@codesourcery.com>
 
* configure.tgt (thumb-*-linux-* | thumb-*-uclinux*,
strongarm-*-coff, strongarm-*-elf, strongarm-*-kaos*,
thumb-*-coff, thumb-*-elf, thumb-epoc-pe, thumb-*-pe,
xscale-*-coff, xscale-*-elf): Remove targets.
 
2011-03-31 H.J. Lu <hongjiu.lu@intel.com>
 
* configure.tgt: Add elf_l1om to targ_extra_libpath for
x86_64-*-linux-*.
 
* emulparams/elf_l1om.sh: Remove duplicates.
 
2011-03-31 Bernd Schmidt <bernds@codesourcery.com>
 
* emulparams/elf32_tic6x_le.sh (BIG_OUTPUT_FORMAT, EXTRA_EM_FILE,
GENERATE_SHLIB_SCRIPT): New defines.
(TEXT_START_ADDR): Define differently depending on target.
(.got): Redefine to include "*(.dsbt)".
(SDATA_START_SYMBOLS): Remove, replace with
(OTHER_GOT_SYMBOLS): New.
(OTHER_BSS_SECTIONS): Define only for ELF targets.
* emultempl/tic6xdsbt.em: New file.
* gen-doc.texi: Set C6X.
* ld.texinfo: Likewise.
(Options specific to C6X uClinux targets): New section.
 
2011-03-29 Alan Modra <amodra@gmail.com>
 
PR ld/12613
* ldlex.l (lex_warn_invalid): Don't assume char is unsigned.
 
2011-03-26 John Marino <binutils@marino.st>
 
* configure.host: Update *-*-dragonfly* host entry.
* configure.tgt: Update *-*-dragonfly* target entry.
* ldlex.l: Prevent redefinition of YY_NO_UNPUT.
 
2011-03-28 Joseph Myers <joseph@codesourcery.com>
 
* configure.in: Check for windows.h, not Windows.h.
* configure: Regenerate.
* plugin.c: Include windows.h, not Windows.h.
 
2011-03-25 Eric B. Weddington <eric.weddington@atmel.com>
 
* Makefile.in: Regenerate.
 
2011-03-23 Joseph Myers <joseph@codesourcery.com>
 
* lexsup.c (parse_args): Only set report_plugin_symbols if plugins
are enabled. Mark level as possibly unused.
 
2011-03-22 Eric B. Weddington <eric.weddington@atmel.com>
 
* Makefile.am (ALL_EMULATION_SOURCES): Add AVR XMEGA architectures.
(eavrxmega?.c): Likewise.
* configure.tgt (targ_extra_emuls): Likewise.
* emulparams/avrxmega1.sh: New file.
* emulparams/avrxmega2.sh: Likewise.
* emulparams/avrxmega3.sh: Likewise.
* emulparams/avrxmega4.sh: Likewise.
* emulparams/avrxmega5.sh: Likewise.
* emulparams/avrxmega6.sh: Likewise.
* emulparams/avrxmega7.sh: Likewise.
* emultempl/avrelf.em (avr_elf_${EMULATION_NAME}_before_allocation):
Add avrxmega6, avrxmega7 to list of architectures for no stubs.
 
2011-03-21 Eric B. Weddington <eric.weddington@atmel.com>
 
* scripttempl/avr.sc: Add fuse, lock, and signature memory regions.
 
2011-03-14 Richard Sandiford <richard.sandiford@linaro.org>
 
* emultempl/armelf.em (gld${EMULATION_NAME}_finish): Check
eh->target_internal.
 
2011-03-14 Richard Sandiford <richard.sandiford@linaro.org>
 
* emultempl/armelf.em (arm_elf_before_allocation): Check dynobj
instead of dynamic_sections_created.
 
2011-03-10 Dave Korn <dave.korn.cygwin@gmail.com>
 
* plugin.c (get_symbols): Use wrapped lookup for undefined symbols.
 
2011-03-10 Dave Korn <dave.korn.cygwin@gmail.com>
 
* ldlang.c (lang_check): Don't run checks on dummy IR BFDs.
 
2011-03-10 Dave Korn <dave.korn.cygwin@gmail.com>
 
* ldlang.h (lang_input_statement_type): Add new 'claim_archive' flag,
wrapping both it and 'claim' flag in #ifdef ENABLE_PLUGINS.
* ldmain.c (add_archive_element): Set it if the member is claimed.
* ldlang.c (new_afile): Initialise claim_archive and claimed members.
(find_replacements_insert_point): New helper function.
(lang_process): After adding and opening replacement files passed
from plugin, splice them into correct place in statement list and
file chains to preserve critical link order.
(lang_list_insert_after): New helper function.
(lang_list_remove_tail): Likewise.
 
2011-03-10 Dave Korn <dave.korn.cygwin@gmail.com>
 
* plugin.c (IRONLY_SUFFIX): Revise to nicely human-readable form.
(IRONLY_SUFFIX_LEN): Delete.
(plugin_get_ir_dummy_bfd): Don't append IRONLY_SUFFIX.
(is_ir_dummy_bfd): Don't look for suffix; check claimed flag of
enclosing lang input statement instead.
 
2011-03-10 Dave Korn <dave.korn.cygwin@gmail.com>
 
* emultempl/pe.em (gld_${EMULATION_NAME}_place_orphan): Preserve
alignment of input sections when creating orphan output sections
during relocatable link.
* emultempl/pep.em (gld_${EMULATION_NAME}_place_orphan): Likewise.
 
2011-03-04 H.J. Lu <hongjiu.lu@intel.com>
 
* ld.texinfo: Document --verbose[=NUMBER].
 
* lexsup.c (ld_options): Update --verbose.
(parse_args): Set report_plugin_symbols.
 
* plugin.c (report_plugin_symbols): New.
(get_symbols): Report plugin symbols if report_plugin_symbols
is TRUE.
 
* plugin.h (report_plugin_symbols): New.
 
2011-03-01 H.J. Lu <hongjiu.lu@intel.com>
 
PR ld/12529
* testplug.c: Don't include "filenames.h".
(onclaim_file): Don't use filename_cmp.
 
2011-02-28 Kai Tietz <kai.tietz@onevision.com>
 
* emultempl/beos.em (sort_by_file_name): Use filename_(n)cmp.
* emultempl/elf32.em (gld${EMULATION_NAME}_vercheck):
Likewise.
(gld${EMULATION_NAME}_stat_needed): Likewise.
(gld${EMULATION_NAME}_check_needed): Likewise.
* emultempl/pe.em (gld_${EMULATION_NAME}_after_open): Likewise.
(gld_${EMULATION_NAME}_unrecognized_file): Likewise.
* emultempl/pep.em (gld_${EMULATION_NAME}_after_open): Likewise.
(gld_${EMULATION_NAME}_unrecognized_file): Likewise.
* ldfile.c (ldfile_open_file): Likewise.
* ldlang.c (wild_sort): Likewise.
(lookup_name): Likewise.
(check_excluded_libs): Likewise.
* ldmisc.c (vfinfo): Likewise.
* pe-dll.c (libnamencmp): Likewise.
(auto_export): Likewise.
(pe_dll_generate_implib): Likewise.
* testplug.c (onclaim_file): Likewise.
 
2011-02-24 H.J. Lu <hongjiu.lu@intel.com>
 
PR ld/12507
* plugin.c (get_symbols): Don't check entry symbol here.
(init_non_ironly_hash): Add entry_symbol chain into
non_ironly_hash.
 
2011-02-24 H.J. Lu <hongjiu.lu@intel.com>
 
PR ld/12507
* plugin.c (get_symbols): Don't mark entry symbol IR only.
 
2011-02-18 John David Anglin <dave.anglin@nrc-cnnrc.gc.ca>
 
PR ld/12376
emulparams/hppalinux.sh (DATA_ADDR): Define.
(SHLIB_DATA_ADDR): Likewise.
 
2011-02-16 H.J. Lu <hongjiu.lu@intel.com>
 
* emulparams/elf32_x86_64.sh (LIBPATH_SUFFIX): Changed to
x32 for x32.
 
2011-02-15 Kai Tietz <kai.tietz@onevision.com>
 
* pe-dll.c (process_def_file_and_drectve): Don't strip
leading underscore from symbol by calling bfd_find_version_for_sym.
 
2011-02-14 Mike Frysinger <vapier@gentoo.org>
 
* ldlang.c (lang_vers_match): Declare a new c_sym, assign it to
the bfd_demangle of sym, change users of sym to c_sym when not
already demangling, and free when done. Change callers of
cplus_demangle to bfd_demangle.
 
2011-02-14 Alan Modra <amodra@gmail.com>
 
* plugin.c (plugin_get_ir_dummy_bfd): Set SEC_EXCLUDE on dummy
.text section, use newer bfd_make_section variant. Error handling.
Correct setting of gp size.
(asymbol_from_plugin_symbol): Properly cast last arg of concat.
(message): Likewise for ACONCAT.
(get_symbols): Formatting.
 
2011-02-14 Alan Modra <amodra@gmail.com>
 
* ldmain.c (remove_output): Rename to..
(ld_cleanup): ..this. Call bfd_cache_close_all and plugin_call_cleanup.
(main): Adjust.
* plugin.c (plugin_call_cleanup): Make global.
(plugin_load_plugins): Don't register plugin_call_cleanup with xatexit.
* plugin.h (plugin_call_cleanup): Declare.
 
2011-02-13 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
 
* configure: Regenerate.
 
2011-02-10 Alan Modra <amodra@gmail.com>
 
* scripttempl/armbpabi.sc: Revert 2010-11-02 H.J. Lu.
* scripttempl/avr.sc: Likewise.
* scripttempl/elf32cr16.sc: Likewise.
* scripttempl/elf32crx.sc: Likewise.
* scripttempl/elf32msp430.sc: Likewise.
* scripttempl/elf32msp430_3.sc: Likewise.
* scripttempl/elf32sh-symbian.sc: Likewise.
* scripttempl/elf64hppa.sc: Likewise.
* scripttempl/elf_chaos.sc: Likewise.
* scripttempl/elfd10v.sc: Likewise.
* scripttempl/elfd30v.sc: Likewise.
* scripttempl/elfi370.sc: Likewise.
* scripttempl/elfm68hc11.sc: Likewise.
* scripttempl/elfm68hc12.sc: Likewise.
* scripttempl/elfxtensa.sc: Likewise.
* scripttempl/ip2k.sc: Likewise.
* scripttempl/iq2000.sc: Likewise.
* scripttempl/mep.sc: Likewise.
* scripttempl/mmo.sc: Likewise.
* scripttempl/v850.sc: Likewise.
* scripttempl/xstormy16.sc: Likewise.
* scripttempl/elf.sc: Revert 2010-10-29 H.J. Lu.
 
2011-01-22 H.J. Lu <hongjiu.lu@intel.com>
 
* Makefile.am (CXX): Removed.
 
* configure.in: Add AC_PROG_CXX.
 
* Makefile.in: Regenerated.
* configure: Likewise.
 
2011-01-22 Richard Sandiford <rdsandiford@googlemail.com>
 
* plugin.c (plugin_get_ir_dummy_bfd): Copy across the bfd's
private data and GP size.
 
2011-01-21 Alan Modra <amodra@gmail.com>
 
* ldexp.c (fold_binary): Set result section for arithmetic and
logical operations to NULL when both operands are in same section.
* ld.texinfo (Expression Section): Describe this.
 
2011-01-14 Alan Modra <amodra@gmail.com>
 
* emultempl/elf32.em (gld${EMULATION_NAME}_place_orphan): Don't
attempt to put non-alloc orphans before debug sections, just place
them after .comment.
 
2011-01-14 J. Park <grassman@gmail.com>
 
PR ld/12339
* ldlang.c (sort_def_symbol): Handle bfd_link_hash_warning symbols.
 
2011-01-14 Alan Modra <amodra@gmail.com>
 
* Makefile.am: Sort emulation rules.
(eelf32am33lin.c): Delete.
(ALL_EMULATION_SOURCES): Sort, add missing entries.
(ALL_64_EMULATION_SOURCES): Likewise.
* Makefile.in: Regenerate.
 
2011-01-13 Alan Modra <amodra@gmail.com>
 
PR ld/12356
* ld.texinfo (Miscellaneous Commands): Describe LD_FEATURE.
(Expression Section): Update.
* ld.h (ld_config_type): Add sane_expr.
* ldgram.y (ifile_p1): Add LD_FEATURE.
* ldlex.l (LD_FEATYRE): New.
* ldemul.c (after_parse_default): Delete code handling ld_compatibility.
* ldexp.h (struct ldexp_control): Delete uses_defined.
* ldexp.c: Remove all uses of uses_defined.
(fold_name): Test config.sane_expr rather than ld_compatibility.
(exp_fold_tree_1): Likewise. Adjust handling of assignments
during first phase.
* ldlang.h (ld_compatibility): Delete.
(lang_ld_feature): Declare.
* ldlang.c (ld_compatibility): Delete.
(open_input_bfds): Only handle assignments for --defsym.
(lang_ld_feature): New function.
 
PR ld/12356
* ldexp.h (exp_assop): Delete.
(exp_assign, exp_defsym): Declare.
* ldexp.c (exp_assop): Make static, handle all assignment variations.
(exp_assign, exp_defsym): New functions.
(exp_provide): Use exp_assop.
* ldgram.y (defsym_expr): Use exp_defsym.
* ldctor.c, * ldgram.y, * ldlang.c, * mri.c, * emultempl/beos.em,
* emultempl/pe.em, * emultempl/pep.em, * emultempl/spuelf.em,
* emultempl/xtensaelf.em: Update exp_assop -> exp_assign.
 
2011-01-12 Alan Modra <amodra@gmail.com>
 
PR ld/12380
* ldexp.h (enum phase_enum): Comment. Add exp_dataseg_done.
* ldexp.c (fold_unary <DATA_SEGMENT_END>): Rearrange code. Test
for exp_dataseg_done rather than expld.phase == lang_final_phase_enum
to detect when we've finished sizing sections.
(fold_binary <DATA_SEGMENT_ALIGN>): Likewise.
(fold_binary <DATA_SEGMENT_RELRO_END>): Likewise. Also test
that we are not inside an output section statement.
* ldlang.c (lang_size_sections): Set exp_dataseg_done on exit if
not exp_dataseg_relro_adjust or exp_dataseg_adjust. Don't set
lang_final_phase_enum here.
(lang_process): Set lang_final_phase_enum here.
 
2011-01-10 Nick Clifton <nickc@redhat.com>
 
* po/da.po: Updated Danish translation.
 
2011-01-10 H.J. Lu <hongjiu.lu@intel.com>
 
* ldlang.c (startup_file): Removed.
(lang_startup): Updated.
 
2011-01-05 H.J. Lu <hongjiu.lu@intel.com>
 
PR ld/12364
* plugin.c (get_symbols): Check if owner_sec->owner is NULL
before accessing its flags field.
 
2011-01-01 H.J. Lu <hongjiu.lu@intel.com>
 
* ldver.c (ldversion): Update copyright to 2011.
 
For older changes see ChangeLog-2010
For older changes see ChangeLog-2011
Local Variables:
mode: change-log
/testsuite/ld-shared/shared.exp
181,7 → 181,9
pass "$testname"
}
 
if [istarget mips*-*-*] {
# Old version of GCC for MIPS default to enabling -fpic
# and get confused if it is used on the command line.
if { [istarget mips*-*-*] && ! [at_least_gcc_version 4 3] } then {
set picflag ""
} else {
# Unfortunately, the gcc argument is -fpic and the cc argument is
/testsuite/ld-i386/tlsnopic.dd
156,6 → 156,5
10ec: 8b 5d fc[ ]+mov -0x4\(%ebp\),%ebx
10ef: c9[ ]+leave *
10f0: c3[ ]+ret *
10f1: 90[ ]+nop *
10f2: 90[ ]+nop *
10f3: 90[ ]+nop *
10f1: 66 90[ ]+xchg %ax,%ax
10f3: 90[ ]+nop
/testsuite/ld-i386/tlsbindesc.dd
223,8 → 223,7
[0-9a-f]+: 8b 5d fc[ ]+mov -0x4\(%ebp\),%ebx
[0-9a-f]+: c9[ ]+leave *
[0-9a-f]+: c3[ ]+ret *
[0-9a-f]+: 90[ ]+nop *
[0-9a-f]+: 90[ ]+nop *
[0-9a-f]+: 66 90[ ]+xchg %ax,%ax
 
[0-9a-f]+ <_start>:
[0-9a-f]+: 55[ ]+push %ebp
/testsuite/ld-i386/tlspic.dd
406,6 → 406,5
[0-9a-f]+: 8b 5d fc[ ]+mov -0x4\(%ebp\),%ebx
[0-9a-f]+: c9[ ]+leave *
[0-9a-f]+: c3[ ]+ret *
[0-9a-f]+: 90[ ]+nop *
[0-9a-f]+: 90[ ]+nop *
[0-9a-f]+: 90[ ]+nop *
[0-9a-f]+: 66 90[ ]+xchg %ax,%ax
[0-9a-f]+: 90[ ]+nop
/testsuite/ChangeLog
1,1211 → 1,108
2011-11-09 Matthew Gretton-Dann <matthew.gretton-dann@arm.com>
2012-03-01 Hans-Peter Nilsson <hp@axis.com>
 
* ld-arm/jump-reloc-veneers.s: Update for changes to assembler output.
PR ld/13789
* ld-elf/zerosize1.d: Allow xyzzy to be either OBJECT or NOTYPE.
 
2011-11-08 Alan Modra <amodra@gmail.com>
2012-02-25 Walter Lee <walt@tilera.com>
 
* ld-powerpc/powerpc.exp: Expect ld warnings for tocopt test.
* ld-powerpc/tocopt.out: New file.
* ld-tilegx/reloc-be.d: New.
* ld-tilegx/reloc-le.d: New.
* ld-tilegx/reloc.d: Delete.
* ld-tilegx/tilegx.exp: Test big and little endian.
 
2011-10-25 Joern Rennecke <joern.rennecke@embecosm.com>
2012-02-22 Nick Clifton <nickc@redhat.com>
 
* ld-srec/srec.exp: xfail epiphany.
* lib/ld-lib.exp (check_shared_lib_support): Add Epiphany to list
of targets not supporting shared libraries.
PR ld/13683
* ld-gc/pr13683.c: New test source file.
* ld-gc/pr13683.d: New test control and output file.
* ld-gc/gc.exp: Run the pr13683 test.
 
2011-10-21 H.J. Lu <hongjiu.lu@intel.com>
* ld-cris/tls-gc-68: Update expected symbol table dump.
* ld-cris/tls-gc-69: Likewise.
* ld-cris/tls-gc-70: Likewise.
* ld-cris/tls-gc-71: Likewise.
* ld-cris/tls-gc-75: Likewise.
* ld-cris/tls-gc-76.d: Likewise.
* ld-cris/tls-gc-79.d: Likewise.
 
PR ld/13302
* ld-i386/i386.exp: Run pr13302.
2012-02-20 Thomas Schwinge <thomas@schwinge.name>
 
* ld-i386/pr13302.d: New.
* ld-i386/pr13302.s: Likewise.
* ld-elf/comm-data.exp: Run for *-*-gnu*.
 
* ld-x86-64/pr13082-5b.d: Updated.
* ld-x86-64/pr13082-6a.d: Likewise.
* ld-x86-64/pr13082-6b.d: Likewise.
2012-02-14 Alan Modra <amodra@gmail.com>
 
2011-10-21 H.J. Lu <hongjiu.lu@intel.com>
* ld-elf/linkoncerdiff.d: Don't run for hppa64-hpux.
* ld-elf/pr11304a.s: Always have whitespace before directives.
* ld-elf/pr11304b.s: Likewise.
* ld-selective/selective.exp: Test m68hc1* variant of m6811, m6812.
* lib/ld-lib.exp: Likewise, and vice versa.
 
PR ld/13302
* ld-ifunc/ifunc-16-i386.d: New.
* ld-ifunc/ifunc-16-x86-64.d: Likewise.
* ld-ifunc/ifunc-16-x86.s: Likewise.
2012-02-13 Richard Henderson <rth@redhat.com>
 
2011-10-20 Alan Modra <amodra@gmail.com>
PR ld/13621
* ld-elf/warn2.d: Expect ABS section for Foo.
* ld-elf/zerosize1.d, ld-elf/zerosize1.s: New test.
 
* ld-selective/selective.exp: Use check_gc_sections_available.
Remove redundant xfails.
* ld-selective/sel-dump.exp: Likewise.
2012-02-13 Alan Modra <amodra@gmail.com>
 
2011-10-19 Alan Modra <amodra@gmail.com>
* ld-m68hc11/m68hc11.exp: Run for m68hc11-*-* and m68hc12-*-*.
* ld-m68hc11/adj-brset.d: Remove redundant #target line. Add
-m m68hc11elf to ld invocation.
* ld-m68hc11/adj-jump.d: Likewise.
* ld-m68hc11/bug-1403.d: Likewise.
* ld-m68hc11/bug-1417.d: Likewise.
* ld-m68hc11/bug-3331.d: Likewise.
* ld-m68hc11/relax-direct.d: Likewise.
* ld-m68hc11/relax-group.d: Likewise.
* ld-m68hc11/far-hc11.d: Remove redundant #target line. Adjust for
changed addresses.
* ld-m68hc11/far-hc12.d: Remove redundant #target line.
* ld-m68hc11/link-hcs12.d: Likewise, and adjust for header changes.
 
* ld-elf/elf.exp: Move test for shared lib support..
* lib/ld-lib.exp (check_shared_lib_support): ..to here. Add m68hc1*,
and s/ms1/mt/.
(check_gc_sections_available): Match hppa*64 not hppa64. Comment.
* ld-gc/libpersonality.s: New.
* ld-gc/personality.s, * ld-gc/personality.d: New.
* ld-gc/gc.exp: Run personality test.
2012-02-09 H.J. Lu <hongjiu.lu@intel.com>
 
2011-10-18 David S. Miller <davem@davemloft.net>
PR ld/13675
* ld-i386/tlsnopic.dd: Update no-op padding.
* ld-i386/tlspic.dd: Likewise.
 
* ld-sparc/tlssunbin32.dd: Update for TLS call relaxation fix
for PR 13301.
* ld-sparc/tlssunbin64.dd: Likewise.
* ld-sparc/tlssunpic32.dd: Likewise.
* ld-sparc/tlssunpic64.dd: Likewise.
2012-01-31 H.J. Lu <hongjiu.lu@intel.com>
 
2011-10-18 Jie Zhang <jie@codesourcery.com>
Julian Brown <julian@codesourcery.com>
 
* ld-arm/cortex-a8-fix-b-plt.d: Adjust.
* ld-arm/cortex-a8-fix-bcc-plt.d: Adjust.
* ld-arm/cortex-a8-fix-bl-plt.d: Adjust.
* ld-arm/cortex-a8-fix-bl-rel-plt.d: Adjust.
* ld-arm/cortex-a8-fix-blx-plt.d: Adjust.
* ld-arm/ifunc-1.dd: Adjust.
* ld-arm/ifunc-2.dd: Adjust.
* ld-arm/ifunc-3.dd: Adjust.
* ld-arm/ifunc-4.dd: Adjust.
* ld-arm/ifunc-5.dd: Adjust.
* ld-arm/ifunc-6.dd: Adjust.
* ld-arm/ifunc-7.dd: Adjust.
* ld-arm/ifunc-8.dd: Adjust.
* ld-arm/ifunc-9.dd: Adjust.
* ld-arm/ifunc-10.dd: Adjust.
* ld-arm/ifunc-14.dd: Adjust.
* ld-arm/ifunc-15.dd: Adjust.
* ld-arm/ifunc-16.dd: Adjust.
 
2011-10-14 Hans-Peter Nilsson <hp@axis.com>
 
* ld-cris/pic-gc-72.d: Adjust for dropping unused undefined
dynamic symbol "dsofn".
 
2011-10-10 Alan Modra <amodra@gmail.com>
 
* ld-powerpc/relbrlt.d: Update for stub alignment change.
* ld-powerpc/tlsexe.g: Likewise.
* ld-powerpc/tlsexe.r: Likewise.
* ld-powerpc/tlsexetoc.g: Likewise.
* ld-powerpc/tlsexetoc.r: Likewise.
* ld-powerpc/tlsso.g: Likewise.
* ld-powerpc/tlsso.r: Likewise.
 
2011-10-08 H.J. Lu <hongjiu.lu@intel.com>
 
PR ld/13250
* ld-elf/shared.exp (build_tests): Add tests for PR ld/13250.
(run_tests): Likewise.
 
* ld-elf/pr13250-1.c: New.
* ld-elf/pr13250-2.c: Likewise.
* ld-elf/pr13250-3.c: Likewise.
 
2011-10-07 H.J. Lu <hongjiu.lu@intel.com>
 
* ld-elf/elf.exp: Run --gc-sections tests only if --gc-sections
is available.
 
2011-10-06 Alan Modra <amodra@gmail.com>
 
* ld-plugin/plugin-1.d, * ld-plugin/plugin-2.d, * ld-plugin/plugin-3.d,
* ld-plugin/plugin-4.d, * ld-plugin/plugin-5.d, * ld-plugin/plugin-6.d,
* ld-plugin/plugin-7.d, * ld-plugin/plugin-8.d, * ld-plugin/plugin-9.d,
* ld-plugin/plugin-10.d, * ld-plugin/plugin-11.d: Update.
 
2011-10-05 Nick Clifton <nickc@redhat.com>
 
* ld-scripts/phdrs.exp: Expect to fail for the RX.
 
2011-09-30 Alan Modra <amodra@gmail.com>
 
* ld-powerpc/tocopt.d: Update.
* ld-powerpc/tocopt5.d, * ld-powerpc/tocopt5.s: New test.
* ld-powerpc/powerpc.exp: Run new test.
 
2011-09-29 H.J. Lu <hongjiu.lu@intel.com>
 
PR ld/13195
* ld-elf/elf.exp: Add a C link testcase for PR ld/13195.
 
* ld-elf/pr13195.c: New.
* ld-elf/pr13195.d: Likewise.
* ld-elf/pr13195.s: Likewise.
* ld-elf/pr13195.t: Likewise.
 
2011-09-16 H.J. Lu <hongjiu.lu@intel.com>
 
* ld-elf/pr12975.d: Only run for *-*-linux* and *-*-gnu*
targets.
* ld-elf/pr13177.d: Likewise.
 
* ld-elf/pr13177.s: Avoid relocations in text sections.
 
2011-09-15 H.J. Lu <hongjiu.lu@intel.com>
 
PR ld/13177
* ld-elf/pr13177.d: New.
* ld-elf/pr13177.s: Likewise.
 
2011-09-15 H.J. Lu <hongjiu.lu@intel.com>
 
PR ld/12975
* ld-elf/pr12975.d: New.
* ld-elf/pr12975.s: Likewise.
* ld-elf/pr12975.t: Likewise.
 
2011-09-12 H.J. Lu <hongjiu.lu@intel.com>
 
PR ld/13178
* ld-ifunc/ifunc-13-i386.d: Updated.
* ld-ifunc/ifunc-13-x86-64.d: Likewise.
* ld-ifunc/ifunc-3a-x86.d: Likewise.
* ld-x86-64/pr13082-5a.d: Likewise.
 
* ld-ifunc/ifunc-15-i386.d: New.
* ld-ifunc/ifunc-15-i386.s: Likewise.
* ld-ifunc/ifunc-15-x86-64.d: Likewise.
* ld-ifunc/ifunc-15-x86-64.s: Likewise.
 
2011-09-01 Christophe Lyon <christophe.lyon@st.com>
 
* ld-arm/arm-elf.exp: Add new rodata-merge-map test.
* ld-arm/rodata-merge-map.ld: New file.
* ld-arm/rodata-merge-map.sym: Likewise.
* ld-arm/rodata-merge-map1.s Likewise.
* ld-arm/rodata-merge-map2.s: Likewise.
* ld-arm/rodata-merge-map3.s: Likewise.
 
2011-08-22 Alan Modra <amodra@gmail.com>
 
* ld-powerpc/tocopt4a.s, * ld-powerpc/tocopt4b.s,
* ld-powerpc/tocopt4.d: New test.
* ld-powerpc/powerpc.exp: Run it.
 
2011-08-12 H.J. Lu <hongjiu.lu@intel.com>
 
PR ld/13082
* ld-x86-64/pr13082-1.s: New.
* ld-x86-64/pr13082-1a.d: Likewise.
* ld-x86-64/pr13082-1b.d: Likewise.
* ld-x86-64/pr13082-2.s: Likewise.
* ld-x86-64/pr13082-2a.d: Likewise.
* ld-x86-64/pr13082-2b.d: Likewise.
* ld-x86-64/pr13082-3.s: Likewise.
* ld-x86-64/pr13082-3a.d: Likewise.
* ld-x86-64/pr13082-3b.d: Likewise.
* ld-x86-64/pr13082-4.s: Likewise.
* ld-x86-64/pr13082-4a.d: Likewise.
* ld-x86-64/pr13082-4b.d: Likewise.
* ld-x86-64/pr13082-5.s: Likewise.
* ld-x86-64/pr13082-5a.d: Likewise.
* ld-x86-64/pr13082-5b.d: Likewise.
* ld-x86-64/pr13082-6.s: Likewise.
* ld-x86-64/pr13082-6a.d: Likewise.
* ld-x86-64/pr13082-6b.d: Likewise.
 
* ld-x86-64/x86-64.exp: Run pr13082-[1-6][ab].
 
2011-08-09 Matthew Gretton-Dann <matthew.gretton-dann@arm.com>
 
* ld-arm/arm-elf.exp (armelftests): Update for new command-line
options.
(armeabitests): Update for new command-line options, and add
new test cases.
* ld-arm/fix-arm1176.s: Add test case.
* ld-arm/fix-arm1176-off.d: Likewise.
* ld-arm/fix-arm1176-on.d: Likewise.
 
2011-08-05 Alan Modra <amodra@gmail.com>
 
* ld-powerpc/tlsexe.r: Update for stripped .branch_lt.
* ld-powerpc/tlsexetoc.r: Likewise.
* ld-powerpc/tlsso.r: Likewise.
* ld-powerpc/tlstocso.r: Likewise.
 
2011-08-01 H.J. Lu <hongjiu.lu@intel.com>
 
PR ld/13048
* ld-x86-64/ilp32-6.d: New.
* ld-x86-64/ilp32-6.s: Likewise.
* ld-x86-64/ilp32-7.d: Likewise.
* ld-x86-64/ilp32-7.s: Likewise.
* ld-x86-64/ilp32-8.d: Likewise.
* ld-x86-64/ilp32-8.s: Likewise.
* ld-x86-64/ilp32-9.d: Likewise.
* ld-x86-64/ilp32-9.s: Likewise.
 
* ld-x86-64/x86-64.exp: Run ilp32-6, ilp32-7, ilp32-8 and ilp32-9.
 
2011-07-27 Roland McGrath <mcgrathr@google.com>
 
* ld-i386/vxworks1-lib.rd: Swap order of sections expected in output.
 
2011-07-26 Alan Modra <amodra@gmail.com>
 
* ld-powerpc/powerpc.exp: Use --no-ld-generated-unwind-info
with some tests.
* ld-powerpc/relbrlt.d: Likewise.
 
2011-07-25 Hans-Peter Nilsson <hp@bitrange.com>
 
PR ld/12815
* ld-mmix/pr12815-1.d, ld-mmix/pr12815-1.s, ld-mmix/pr12815-1.ld,
ld-mmix/pr12815-2.d, ld-mmix/pr12815-2.s: New tests.
 
2011-07-24 Catherine Moore <clm@codesourcery.com>
Chao-ying Fu <fu@mips.com>
Maciej W. Rozycki <macro@codesourcery.com>
 
* lib/ld-lib.exp (run_dump_test): Support distinct assembler
flags for the same source named multiple times.
* ld-mips-elf/jalx-1.s: New test source.
* ld-mips-elf/jalx-1.d: New test output.
* ld-mips-elf/jalx-1.ld: New test linker script.
* ld-mips-elf/jalx-2-main.s: New test source.
* ld-mips-elf/jalx-2-ex.s: Likewise.
* ld-mips-elf/jalx-2-printf.s: Likewise.
* ld-mips-elf/jalx-2.dd: New test output.
* ld-mips-elf/jalx-2.ld: New test linker script.
* ld-mips-elf/mips16-and-micromips.d: New test.
* ld-mips-elf/mips-elf.exp: Run the new tests
 
2011-07-22 H.J. Lu <hongjiu.lu@intel.com>
 
* ld-x86-64/abs-k1om.d: New.
* ld-x86-64/protected2-k1om.d: Likewise.
* ld-x86-64/protected3-k1om.d: Likewise.
 
* ld-x86-64/x86-64.exp: Run abs-k1om, protected2-k1om and
protected3-k1om.
 
2011-07-14 H.J. Lu <hongjiu.lu@intel.com>
 
* ld-elf/binutils.exp (binutils_test): Also check ignored
"-z relro".
 
2011-07-14 Alan Modra <amodra@gmail.com>
 
* ld-scripts/section-flags.exp: Pass --local-store 0:0 for
spu. Rewrite using foreach.
 
2011-07-14 Alan Modra <amodra@gmail.com>
 
* ld-powerpc/tlsexe.d, * ld-powerpc/tlsexe.g. *ld-powerpc/tlsexe.r,
* ld-powerpc/tlsexetoc.d, * ld-powerpc/tlsexetoc.g,
* ld-powerpc/tlsexetoc.r, * ld-powerpc/tlsso.d,
* ld-powerpc/tlstocso.d: Update for plt stub change.
 
2011-07-11 Catherine Moore <clm@cm00re.com>
 
* ld-scripts/section-flags-1.s: New.
* ld-scripts/section-flags-1.t: New.
* ld-scripts/section-flags-2.s: New.
* ld-scripts/section-flags-2.t: New.
* ld-scripts/section-flags.exp: New.
 
2011-07-11 Alan Modra <amodra@gmail.com>
 
* ld-powerpc/tocopt2.s, * ld-powerpc/tocopt2.out,
* ld-powerpc/tocopt2.d: New test.
* ld-powerpc/tocopt3.s, * ld-powerpc/tocopt3.d: New test.
* ld-powerpc/powerpc.exp (ppc64elftests) Run them.
 
2011-07-03 Samuel Thibault <samuel.thibault@gnu.org>
Thomas Schwinge <thomas@schwinge.name>
 
PR binutils/12913
* ld-ifunc/ifunc.exp: Update for changed output.
* ld-unique/unique.exp: Likewise.
 
2011-06-27 Nick Clifton <nickc@redhat.com>
 
* ld-elf/elf.exp: Exlcude all v850 targets from note-3 test.
 
2011-06-27 Alan Modra <amodra@gmail.com>
 
* ld-elf/elf.exp: Exclude more targets from note-3 test.
 
2011-06-24 H.J. Lu <hongjiu.lu@intel.com>
 
PR ld/12921
* ld-i386/i386.exp: Run pr12921.
* ld-x86-64/x86-64.exp: Likewise.
 
* ld-i386/pr12921.d: New.
* ld-i386/pr12921.s: Likewise.
* ld-x86-64/pr12921.d: Likewise.
* ld-x86-64/pr12921.s: Likewise.
 
2011-06-22 Thomas Schwinge <thomas@schwinge.name>
 
* ld-elf/elf.exp: Execute array_tests_pie tests on *-*-gnu*, too.
 
2011-06-20 H.J. Lu <hongjiu.lu@intel.com>
 
* ld-ifunc/ifunc-1-local-x86.d: Adjusted.
* ld-ifunc/ifunc-1-x86.d: Likewise.
* ld-ifunc/ifunc-3a-x86.d: Likewise.
 
2011-06-20 H.J. Lu <hongjiu.lu@intel.com>
 
* ld-elf/eh1.d: Revert x32 change.
* ld-elf/eh2.d: Likewise.
* ld-elf/eh3.d: Likewise.
* ld-elf/eh4.d: Likewise.
 
2011-06-20 Jakub Jelinek <jakub@redhat.com>
 
PR ld/12570
* ld-x86-64/x86-64.exp: Link some testcases with
--no-ld-generated-unwind-info.
* ld-x86-64/tlsbin.rd: Add --no-ld-generated-unwind-info to ld
comment.
* ld-x86-64/tlsdesc.dd: Likewise.
* ld-x86-64/tlspic.dd: Likewise.
* ld-x86-64/tlsdesc.sd: Likewise.
* ld-x86-64/tlspic.rd: Likewise.
* ld-x86-64/tlsbindesc.rd: Likewise.
* ld-x86-64/tlsbindesc.sd: Likewise.
* ld-x86-64/tlsbin.td: Likewise.
* ld-x86-64/tlsdesc.pd: Likewise.
* ld-x86-64/tlsdesc.td: Likewise.
* ld-x86-64/tlsbindesc.dd: Likewise.
PR ld/13616
* ld-i386/tlsbindesc.dd: Update no-op padding.
* ld-i386/tlsnopic.dd: Likewise.
* ld-i386/tlspic.dd: Likewise.
* ld-x86-64/tlsbin.dd: Likewise.
* ld-x86-64/tlsgdesc.rd: Likewise.
* ld-x86-64/tlspic.sd: Likewise.
* ld-x86-64/tlsbindesc.td: Likewise.
* ld-x86-64/tlspic.td: Likewise.
* ld-x86-64/tlsbin.sd: Likewise.
* ld-x86-64/ilp32-4.d: Likewise.
* ld-x86-64/tlsgdesc.dd: Add --no-ld-generated-unwind-info to ld
comment. Adjust.
* ld-x86-64/tlsdesc.rd: Likewise.
* ld-x86-64/tlsgd6.dd: Adjust.
* ld-x86-64/tlsgd5.dd: Likewise.
* ld-i386/i386.exp: Link some testcases with
--no-ld-generated-unwind-info.
* ld-i386/tlsbin.rd: Add --no-ld-generated-unwind-info to ld
comment..
* ld-i386/tlsdesc.dd: Likewise.
* ld-i386/tlspic.dd: Likewise.
* ld-i386/tlsdesc.sd: Likewise.
* ld-i386/tlsgdesc.dd: Likewise.
* ld-i386/tlsnopic.sd: Likewise.
* ld-i386/tlspic.rd: Likewise.
* ld-i386/tlsdesc.rd: Likewise.
* ld-i386/tlsbindesc.rd: Likewise.
* ld-i386/tlsbindesc.sd: Likewise.
* ld-i386/tlsbin.td: Likewise.
* ld-i386/tlsdesc.td: Likewise.
* ld-i386/tlsnopic.dd: Likewise.
* ld-i386/tlsbindesc.dd: Likewise.
* ld-i386/tlsbin.dd: Likewise.
* ld-i386/tlsgdesc.rd: Likewise.
* ld-i386/tlspic.sd: Likewise.
* ld-i386/tlsnopic.rd: Likewise.
* ld-i386/tlsbindesc.td: Likewise.
* ld-i386/tlspic.td: Likewise.
* ld-i386/tlsbin.sd: Likewise.
 
2011-06-19 H.J. Lu <hongjiu.lu@intel.com>
 
* ld-elf/eh1.d: Skip x32.
* ld-elf/eh2.d: Likewise.
* ld-elf/eh3.d: Likewise.
* ld-elf/eh4.d: Likewise.
 
* ld-elfvsb/elfvsb.exp: Only xfail 64bit x86_64-*-linux*.
* ld-shared/shared.exp: Likewise.
 
* ld-ifunc/ifunc-1-local-x86.d: Support x32.
* ld-ifunc/ifunc-1-x86.d: Likewise.
* ld-ifunc/ifunc-3a-x86.d: Likewise.
* ld-x86-64/pcrel16.d: Likewise.
 
* ld-x86-64/x86-64.exp (x86_64tests): Add missing -melf_x86_64.
 
2011-06-16 Alan Modra <amodra@gmail.com>
 
* ld-elfvers/vers2.ver: Don't assume any particular index for
version reference.
* ld-elfvers/vers3.ver: Likewise.
* ld-elfvers/vers19.ver: Likewise.
* ld-elfvers/vers22.ver: Likewise.
* ld-elfvers/vers27d4.ver: Likewise.
* ld-elfvers/vers28c.ver: Likewise.
 
2011-06-14 Alan Modra <amodra@gmail.com>
 
* ld-elf/elf.exp: Don't attempt to build symbol3.a for hppa64-hpux.
* ld-elf/warn3.d: Correct target selection and comment.
 
* ld-elf/pr12851.d: Correct target selection and comment.
 
2011-06-13 Walter Lee <walt@tilera.com>
 
* ld-elf/eh5.d: Don't run on tile*.
* ld-srec/srec.exp: xfail on tile*.
* ld-tilegx/external.s: New file.
* ld-tilegx/reloc.d: New file.
* ld-tilegx/reloc.s: New file.
* ld-tilegx/tilegx.exp: New file.
* ld-tilepro/external.s: New file.
* ld-tilepro/reloc.d: New file.
* ld-tilepro/reloc.s: New file.
* ld-tilepro/tilepro.exp: New file.
 
2011-06-10 Nick Clifton <nickc@redhat.com>
 
* ld-elf/elf.exp: Add test for linking a shared library with a
broken linker script that marks dynamic sections as being notes.
* ld-elf/note-3.s: New test source file.
* ld-elf/note-3.t: New test linker script.
* ld-elf/note-3.l: Expected output from the linker.
* lib/ld-lib.exp (run_ld_link_tests): Improve description.
 
2011-06-08 H.J. Lu <hongjiu.lu@intel.com>
 
* ld-x86-64/x86-64.exp: Build x32 DSO from x86-64 object file
only for native.
 
2011-06-08 H.J. Lu <hongjiu.lu@intel.com>
 
* ld-x86-64/simple.c: New.
* ld-x86-64/x86-64-x32.rd: Likewise.
 
* ld-x86-64/x86-64.exp: Check building x32 DSO from x86-64
object file.
 
2011-06-08 H.J. Lu <hongjiu.lu@intel.com>
 
PR ld/12851
* ld-elf/pr12851.d: New.
* ld-elf/pr12851.s: Likewise.
 
2011-06-07 H.J. Lu <hongjiu.lu@intel.com>
 
* ld-elf/elf.exp: Build symbol3.a and symbol3w.a.
 
* ld-elf/symbol3.s: New.
* ld-elf/symbol3w.s: Likewise.
* ld-elf/warn3.d: Likewise.
 
2011-06-02 Nathan Sidwell <nathan@codesourcery.com>
 
Adjust tests for zero offset formatting.
* ld-arm/cortex-a8-fix-bcc-plt.d: Adjust.
* ld-arm/farcall-arm-arm-pic-veneer.d: Adjust.
* ld-arm/farcall-arm-thumb.d: Adjust.
* ld-arm/farcall-group-size2.d: Adjust.
* ld-arm/farcall-group.d: Adjust.
* ld-arm/farcall-mix.d: Adjust.
* ld-arm/farcall-mix2.d: Adjust.
* ld-arm/farcall-mixed-lib-v4t.d: Adjust.
* ld-arm/farcall-mixed-lib.d: Adjust.
* ld-arm/farcall-thumb-arm-blx-pic-veneer.d: Adjust.
* ld-arm/farcall-thumb-arm-pic-veneer.d: Adjust.
* ld-arm/farcall-thumb-thumb.d: Adjust.
* ld-arm/ifunc-10.dd: Adjust.
* ld-arm/ifunc-3.dd: Adjust.
* ld-arm/ifunc-4.dd: Adjust.
* ld-arm/ifunc-5.dd: Adjust.
* ld-arm/ifunc-6.dd: Adjust.
* ld-arm/ifunc-7.dd: Adjust.
* ld-arm/ifunc-8.dd: Adjust.
* ld-arm/jump-reloc-veneers-long.d: Adjust.
* ld-arm/tls-longplt-lib.d: Adjust.
* ld-arm/tls-thumb1.d: Adjust.
 
2011-05-31 Paul Brook <paul@codesourcery.com>
 
* ld-arm/cortex-a8-far.d: Adjust expected output.
* ld-arm/arm-call1.s: Give function symbol correct type.
* ld-arm/arm-call2.s: Ditto.
* ld-arm/farcall-group4.s: Ditto.
* ld-arm/arm-elf.exp (cortex-a8-far): Define far symbols with correct
type via assembly file.
* ld-arm/cortex-a8-far-3.s: New file.
* ld-arm/abs-call-1.s: Add Thumb tests
 
2011-05-31 Paul Brook <paul@codesourcery.com>
Nathan Sidwell <nathan@codesourcery.com>
 
* ld-arm/abs-call-1.d: New.
* ld-arm/abs-call-1.s: New.
* ld-arm/arm-elf.exp: Add it.
 
2011-05-31 Paul Brook <paul@codesourcery.com>
 
* ld-arm/tls-longplt.d: Update expected output.
* ld-arm/tls-thumb1.d: Ditto.
 
2011-05-26 H.J. Lu <hongjiu.lu@intel.com>
 
PR ld/12809
* ld-x86-64/tlsbin.s: Add a test for LE with large model.
 
* ld-x86-64/tlsbin.dd: Updated.
* ld-x86-64/tlsbin.rd: Likewise.
* ld-x86-64/tlsbin.sd: Likewise.
* ld-x86-64/tlsbin.td: Likewise.
* ld-x86-64/tlsbindesc.dd: Likewise.
* ld-x86-64/tlsbindesc.rd: Likewise.
* ld-x86-64/tlsbindesc.sd: Likewise.
* ld-x86-64/tlsbindesc.td: Likewise.
* ld-x86-64/tlspic.dd: Likewise.
 
2011-05-24 Hans-Peter Nilsson <hp@axis.com>
2012-01-17 Alan Modra <amodra@gmail.com>
 
* ld-cris/tls-e-tpoffcomm1.d: Adjust for second PR12763 change,
setting TLS file offset.
* config/default.exp: Provide tmpdir/ld/collect-ld.
 
2011-05-23 Nick Clifton <nickc@redhat.com>
2012-01-10 H.J. Lu <hongjiu.lu@intel.com>
 
* ld-elf/shared.exp: Revert previous delta. Do not build
libraries in a non-native environment.
PR ld/13581
* ld-x86-64/ilp32-4.s: New.
* ld-x86-64/ilp32-10.d: Likewise.
* ld-x86-64/ilp32-10.s: Likewise.
 
2011-05-23 Alan Modra <amodra@gmail.com>
 
PR 12763
* ld-elf/binutils.exp: Don't run tdata3 for hppa64.
 
2011-05-21 Hans-Peter Nilsson <hp@axis.com>
 
* ld-cris/tls-e-tpoffcomm1.d: Adjust for PR12763 change removing
empty program header.
 
2011-05-21 Alan Modra <amodra@gmail.com>
 
PR 12763
* ld-elf/tdata3.s: New test.
* ld-elf/tbss3.s: New test.
* ld-elf/binutils.exp: Consolidate tbss and tdata tests.
 
2011-05-20 Bernd Schmidt <bernds@codesourcery.com>
 
* ld-tic6x/pcr-reloc.d: New test.
* ld-tic6x/pcr-reloc.s: New test.
 
2011-05-18 Nick Clifton <nickc@redhat.com>
 
PR ld/12761
* lib/ld-lib.exp (run_cc_link_tests): Add an optional 8th
parameter - an expected warning message from the linker.
* ld-elf/shared.exp (build_tests): Expect a warning message when
building the libbarw.so library.
 
* ld-elf/shared.exp: Run library building tests even when not
building a native toolchain.
 
2011-05-16 H.J. Lu <hongjiu.lu@intel.com>
 
* ld-scripts/phdrs.exp: Replace --private with
--private-headers for objdump.
* ld-scripts/phdrs2.exp: Likewise.
 
2011-05-15 Richard Sandiford <rdsandiford@googlemail.com>
 
* lib/ld-lib.exp (run_ld_link_tests): Simplify pass/fail logic.
Fail if the link command fails and if no test rules are defined.
* ld-mips-elf/reloc-6a.s, ld-mips-elf/reloc-6b.s: New tests.
* ld-mips-elf/mips-elf.exp: Run them.
 
2011-05-13 Bernd Schmidt <bernds@codesourcery.com>
 
* ld-tic6x/dsbt.ld (OUTPUT_FORMAT): Add.
* ld-tic6x/tic6x.exp: Add OSABI tests.
 
2011-05-13 Alan Modra <amodra@gmail.com>
 
* ld-elf/flags1.d: Don't xfail tic6x.
* ld-scripts/weak.exp: Correct comments. Don't xfail sh-pe. Remove
redundant xfail.
* ld-selective/sel-dump.exp: Don't xfail alpha.
* ld-selective/selective.exp: Run for alpha.
* ld-undefined/weak-undef.exp: Don't xfail hppa64.
 
2011-05-12 Bernd Schmidt <bernds@codesourcery.com>
 
* config/default.exp (ld_assemble): Pass flags parameter to
default_ld_assemble.
(ld_assemble_flags): New function.
* ld-elf/frame.exp: Pass -mpic and -mpid flags to the assembler on
tic6x.
* ld-elf/exclude.exp: Likewise.
* lib/ld-lib.exp (default_ld_assemble): Take extra argument in_flags
and pass it to the assembler.
 
2011-05-11 Richard Sandiford <rdsandiford@googlemail.com>
 
* ld-mips-elf/mips-elf.exp: Add missing $has_newabi tests.
 
2011-05-09 H.J. Lu <hongjiu.lu@intel.com>
 
* ld-elf/elf.exp (array_tests): Remove "pr12730".
(array_tests_pie): Remove "PIE pr12730".
(array_tests_static): Remove "static pr12730".
 
* ld-elf/pr12730.cc: Removed.
* ld-elf/pr12730.out: Likewise.
 
2011-05-09 Paul Brook <paul@codesourcery.com>
 
* ld-tic6x/discard-unwind.ld: New.
* ld-tic6x/unwind.ld: New.
* ld-tic6x/unwind-1.d: New test.
* ld-tic6x/unwind-1.s: New test.
* ld-tic6x/unwind-2.d: New test.
* ld-tic6x/unwind-2.s: New test.
* ld-tic6x/unwind-3.d: New test.
* ld-tic6x/unwind-3.s: New test.
* ld-tic6x/unwind-4.d: New test.
* ld-tic6x/unwind-4.s: New test.
* ld-tic6x/unwind-5.d: New test.
* ld-tic6x/unwind-5.s: New test.
* ld-tic6x/unwind-6.d: New test.
 
2011-05-07 Dave Korn <dave.korn.cygwin@gmail.com>
 
PR ld/12365
* ld-plugin/plugin-7.d: Allow underscore in error message.
* ld-plugin/plugin-8.d: Likewise.
 
2011-05-07 H.J. Lu <hongjiu.lu@intel.com>
 
PR ld/12730
* ld-elf/elf.exp (array_tests): Add "pr12730".
(array_tests_pie): New.
(array_tests_static): Add -static for "static init array mixed".
Add "static pr12730". Run array_tests_pie for Linux.
 
* ld-elf/init-mixed.c (ctor1007): Renamed to ...
(ctor1007a): This.
(ctor1007b): New.
(ctors1007): Remove ctor1007. Add ctor1007b and ctor1007a.
(dtor1007): Renamed to ...
(dtor1007a): This.
(dtor1007b): New.
(dtors1007): Remove dtor1007. Add dtor1007b and dtor1007a.
(ctor65535): Renamed to ...
(ctor65535a): This.
(ctor65535b): New.
(ctors65535): Remove ctor65535. Add ctor65535b and ctor65535a.
(dtor65535): Renamed to ...
(dtor65535a): This.
(dtor65535b): New.
(dtors65535): Remove dtor65535. Add dtor65535b and dtor65535a.
 
* ld-elf/pr12730.cc: New.
* ld-elf/pr12730.out: Likewise.
 
2011-05-06 Richard Sandiford <richard.sandiford@linaro.org>
 
* ld-arm/cortex-a8-fix-b-plt.s, ld-arm/cortex-a8-fix-b-plt.d,
ld-arm/cortex-a8-fix-bcc-plt.s, ld-arm/cortex-a8-fix-bcc-plt.d,
ld-arm/cortex-a8-fix-bl-plt.s, ld-arm/cortex-a8-fix-bl-plt.d,
ld-arm/cortex-a8-fix-blx-plt.s, ld-arm/cortex-a8-fix-blx-plt.d,
ld-arm/cortex-a8-fix-plt.ld: New tests.
* ld-arm/arm-elf.exp: Run them.
 
2011-05-05 Bernd Schmidt <bernds@codesourcery.com>
 
* ld-tic6x/shared-nopic.d: New test.
* ld-tic6x/shared-nopid.d: New test.
* ld-tic6x/attr-pid-21.d: Don't expect a warning; check readelf
output instead.
* ld-tic6x/attr-pid-12.d: Likewise.
* ld-tic6x/attr-pic-01.d: Likewise.
* ld-tic6x/attr-pic-10.d: Likewise.
* ld-tic6x/attr-pid-01.d: Likewise.
* ld-tic6x/attr-pid-10.d: Likewise.
* ld-tic6x/attr-pid-02.d: Likewise.
* ld-tic6x/attr-pid-20.d: Likewise.
* ld-tic6x/got-reloc-inrange.d: Pass -mpic and -mpid options to gas.
 
2011-05-03 Paul Brook <paul@codesourcery.com>
 
* ld-tic6x/ehtype-reloc-1-rel.d: New test.
* ld-tic6x/ehtype-reloc-1.d: New test.
* ld-tic6x/ehtype-reloc-1.s: New test.
 
2011-05-01 H.J. Lu <hongjiu.lu@intel.com>
 
PR ld/12718
* ld-i386/i386.exp: Run pr12718.
* ld-x86-64/x86-64.exp: Likewise.
 
* ld-i386/pr12718.d: New.
* ld-i386/pr12718.s: Likewise.
* ld-x86-64/pr12718.d: Likewise.
* ld-x86-64/pr12718.s: Likewise.
 
2011-04-26 Kai Tietz <ktietz@redhat.com>
 
* ld-pe/pe.exp: Add cfi/cfi32 tests.
* ld-pe/cfi.d: New.
* ld-pe/cfi32.d: New.
* ld-pe/cfia.s: New.
* ld-pe/cfib.s: New.
 
2011-04-21 H.J. Lu <hongjiu.lu@intel.com>
 
PR ld/12694
* ld-ifunc/ifunc-14-i386.d: New.
* ld-ifunc/ifunc-14-x86-64.d: Likewise.
* ld-ifunc/ifunc-14a.s: Likewise.
* ld-ifunc/ifunc-14b.s: Likewise.
 
2011-04-19 H.J. Lu <hongjiu.lu@intel.com>
 
* ld-plugin/plugin-ignore.d: Removed.
 
2011-04-18 H.J. Lu <hongjiu.lu@intel.com>
 
* ld-plugin/plugin-7.d: Update expected LTO linker errors for
GCC 4.6.
* ld-plugin/plugin-8.d: Likewise.
 
2011-04-18 Alan Modra <amodra@gmail.com>
 
* ld-plugin/plugin-7.d: Adjust for plugin changes.
* ld-plugin/plugin-8.d: Likewise.
* ld-plugin/plugin.exp: Pass --verbose=2 for visibility test, and
compare ld output to..
* ld-plugin/plugin-12.d: New.
 
2011-04-15 Maxim Kuvyrkov <maxim@codesourcery.com>
 
* ld-m68k/tls-gd-ie-1.d: Stabilize test.
* ld-m68k/tls-gd-3.[sd]: New test.
 
2011-04-12 Richard Henderson <rth@redhat.com>
 
* ld-alpha/emptygot.s, ld-alpha/emptygot.nm: New test.
* ld-alpha/alpha.exp: Run it.
 
2011-04-11 Mark Wielaard <mjw@redhat.com>
 
PR 10549
* ld-unique: New directory.
* ld-unique/unique.exp: New file: Run the UNIQUE tests.
* ld-unique/unique.s: New test file.
* ld-unique/unique_empty.s: Likewise.
* ld-unique/unique_shared.s: Likewise.
 
2011-04-11 Alan Modra <amodra@gmail.com>
 
* ld-elf/eh-frame-hdr.d: xfail avr.
 
2011-04-08 H.J. Lu <hongjiu.lu@intel.com>
 
PR ld/12654
* ld-i386/i386.exp: Run tlspie2.
 
* ld-i386/tlspie2.d: New.
* ld-i386/tlspie2.s: Likewise.
 
2011-04-06 Joseph Myers <joseph@codesourcery.com>
 
* ld-selective/selective.exp (xscale-*-*): Don't handle.
* ld-srec/srec.exp (strongarm*-*-*, xscale*-*-*, thumb-*-*): Don't
handle.
(*arm*-*-*): Change to arm*-*-*.
(strongarm*-*-coff, xscale*-*-coff, thumb-*-coff*, thumb-*-pe*,
thumb-*-elf*, strongarm*-*-*, thumb-*-*): Remove xfails.
* ld-undefined/undefined.exp (thumb*-*-pe*, thumb*-*-pe*): Remove
commented-out xfails.
(thumb-elf): Remove reference in comment.
* lib/ld-lib.exp (strongarm*-*-*, xscale*-*-*, thumb-*-*): Don't
handle.
 
2011-04-04 H.J. Lu <hongjiu.lu@intel.com>
 
PR ld/12627
* ld-i386/i386.exp: Run pr12627.
 
* ld-i386/pr12627.d: New.
* ld-i386/pr12627.s: Likewise.
* ld-i386/pr12627.t: Likewise.
 
2011-03-31 Bernd Schmidt <bernds@codesourcery.com>
 
* ld-scripts/crossref.exp: Add CFLAGS for tic6x*-*-*.
* ld-elf/sec-to-seg.exp: Remove tic6x from list of targets defining
pagesize to 1.
* ld-tic6x/tic6x.exp: Add support for DSBT shared library/executable
linking tests.
* ld-tic6x/dsbt.ld: New linker script.
* ld-tic6x/dsbt-be.ld: New linker script.
* ld-tic6x/dsbt-overflow.ld: New linker script.
* ld-tic6x/dsbt-inrange.ld: New linker script.
* ld-tic6x/shlib-1.s: New test.
* ld-tic6x/shlib-2.s: New test.
* ld-tic6x/shlib-app-1r.s: New test.
* ld-tic6x/shlib-app-1.s: New test.
* ld-tic6x/shlib-1.sd: New test.
* ld-tic6x/shlib-1.dd: New test.
* ld-tic6x/shlib-app-1.rd: New test.
* ld-tic6x/shlib-app-1rb.rd: New test.
* ld-tic6x/shlib-app-1.sd: New test.
* ld-tic6x/static-app-1rb.od: New test.
* ld-tic6x/shlib-app-1.dd: New test.
* ld-tic6x/shlib-app-1rb.sd: New test.
* ld-tic6x/static-app-1b.od: New test.
* ld-tic6x/static-app-1r.od: New test.
* ld-tic6x/shlib-1rb.rd: New test.
* ld-tic6x/shlib-app-1rb.dd: New test.
* ld-tic6x/shlib-1rb.sd: New test.
* ld-tic6x/shlib-1rb.dd: New test.
* ld-tic6x/shlib-app-1b.od: New test.
* ld-tic6x/tic6x.exp: New test.
* ld-tic6x/static-app-1rb.rd: New test.
* ld-tic6x/shlib-app-1r.od: New test.
* ld-tic6x/static-app-1.od: New test.
* ld-tic6x/static-app-1b.rd: New test.
* ld-tic6x/static-app-1r.rd: New test.
* ld-tic6x/static-app-1rb.sd: New test.
* ld-tic6x/static-app-1b.sd: New test.
* ld-tic6x/static-app-1rb.dd: New test.
* ld-tic6x/static-app-1r.sd: New test.
* ld-tic6x/static-app-1b.dd: New test.
* ld-tic6x/shlib-1b.rd: New test.
* ld-tic6x/static-app-1r.dd: New test.
* ld-tic6x/shlib-app-1b.rd: New test.
* ld-tic6x/shlib-1r.rd: New test.
* ld-tic6x/shlib-app-1r.rd: New test.
* ld-tic6x/shlib-1b.sd: New test.
* ld-tic6x/static-app-1.rd: New test.
* ld-tic6x/shlib-app-1b.sd: New test.
* ld-tic6x/shlib-1r.sd: New test.
* ld-tic6x/shlib-1b.dd: New test.
* ld-tic6x/shlib-app-1r.sd: New test.
* ld-tic6x/shlib-app-1b.dd: New test.
* ld-tic6x/shlib-1r.dd: New test.
* ld-tic6x/static-app-1.sd: New test.
* ld-tic6x/shlib-app-1r.dd: New test.
* ld-tic6x/static-app-1.dd: New test.
* ld-tic6x/shlib-noindex.rd: New test.
* ld-tic6x/shlib-noindex.dd: New test.
* ld-tic6x/shlib-noindex.sd: New test.
* ld-tic6x/got-reloc-local-1.s: New test.
* ld-tic6x/got-reloc-local-2.s: New test.
* ld-tic6x/got-reloc-local-r.d: New test.
* ld-tic6x/got-reloc-global.s: New test.
* ld-tic6x/got-reloc-global-addend-1.d: New test.
* ld-tic6x/got-reloc-global-addend-1.s: New test.
* ld-tic6x/got-reloc-global-addend-2.d: New test.
* ld-tic6x/got-reloc-inrange.d: New test.
* ld-tic6x/got-reloc-overflow.d: New test.
* ld-tic6x/got-reloc-global-addend-2.s: New test.
* ld-tic6x/dsbt-index-error.d: New test.
* ld-tic6x/dsbt-index.d: New test.
* ld-tic6x/dsbt-index.s: New test.
* ld-tic6x/shlib-app-1.od: New test.
* ld-tic6x/shlib-app-1rb.od: New test.
* ld-tic6x/shlib-1.rd: New test.
* ld-tic6x/weak.d: New test.
* ld-tic6x/weak-be.d: New test.
* ld-tic6x/weak.s: New test.
* ld-tic6x/weak-data.d: New test.
* ld-tic6x/common.d: New test.
* ld-tic6x/common.ld: New test.
* ld-tic6x/common.s: New test.
 
2011-03-30 Richard Henderson <rth@redhat.com>
 
* ld-elf/elf.exp: Force 32-bit start address for alpha.
* ld-elf/group8a.d: Don't disable for alpha.
* ld-elf/group8b.d: Likewise.
* ld-gc/start.s: Use .dc.a instead of .long.
 
2011-03-24 Alan Modra <amodra@gmail.com>
 
* ld-powerpc/tlsmark.s: Delete non-optimizable section.
* ld-powerpc/tlsmark32.s: Likewise.
* ld-powerpc/tlsmark.d: Adjust to suit.
* ld-powerpc/tlsmark32.d: Likewise.
* ld-powerpc/tlsopt1.d, * ld-powerpc/tlsopt1.s: New.
* ld-powerpc/tlsopt2.d, * ld-powerpc/tlsopt2.s: New.
* ld-powerpc/tlsopt3.d, * ld-powerpc/tlsopt3.s: New.
* ld-powerpc/tlsopt4.d, * ld-powerpc/tlsopt4.s: New.
* ld-powerpc/tlsopt1_32.d, * ld-powerpc/tlsopt1_32.s: New.
* ld-powerpc/tlsopt2_32.d, * ld-powerpc/tlsopt2_32.s: New.
* ld-powerpc/tlsopt3_32.d, * ld-powerpc/tlsopt3_32.s: New.
* ld-powerpc/tlsopt4_32.d, * ld-powerpc/tlsopt4_32.s: New.
* ld-powerpc/powerpc.exp: Run new tests.
 
2011-03-15 Mike Frysinger <vapier@gentoo.org>
 
* ld-elfvers/vers.exp (vers19): Add -Wl,-rpath-link,. to linker flags.
 
2011-03-14 Richard Sandiford <richard.sandiford@linaro.org>
 
* ld-arm/ifunc-1.s, ld-arm/ifunc-1.dd, ld-arm/ifunc-1.gd,
ld-arm/ifunc-1.rd, ld-arm/ifunc-2.s, ld-arm/ifunc-2.dd,
ld-arm/ifunc-2.gd, ld-arm/ifunc-2.rd, ld-arm/ifunc-3.s,
ld-arm/ifunc-3.dd, ld-arm/ifunc-3.gd, ld-arm/ifunc-3.rd,
ld-arm/ifunc-4.s, ld-arm/ifunc-4.dd, ld-arm/ifunc-4.gd,
ld-arm/ifunc-4.rd, ld-arm/ifunc-5.s, ld-arm/ifunc-5.dd,
ld-arm/ifunc-5.gd, ld-arm/ifunc-5.rd, ld-arm/ifunc-6.s,
ld-arm/ifunc-6.dd, ld-arm/ifunc-6.gd, ld-arm/ifunc-6.rd,
ld-arm/ifunc-7.s, ld-arm/ifunc-7.dd, ld-arm/ifunc-7.gd,
ld-arm/ifunc-7.rd, ld-arm/ifunc-8.s, ld-arm/ifunc-8.dd,
ld-arm/ifunc-8.gd, ld-arm/ifunc-8.rd, ld-arm/ifunc-9.s,
ld-arm/ifunc-9.dd, ld-arm/ifunc-9.gd, ld-arm/ifunc-9.rd,
ld-arm/ifunc-10.s, ld-arm/ifunc-10.dd, ld-arm/ifunc-10.gd,
ld-arm/ifunc-10.rd, ld-arm/ifunc-11.s, ld-arm/ifunc-11.dd,
ld-arm/ifunc-11.gd, ld-arm/ifunc-11.rd, ld-arm/ifunc-12.s,
ld-arm/ifunc-12.dd, ld-arm/ifunc-12.gd, ld-arm/ifunc-12.rd,
ld-arm/ifunc-13.s, ld-arm/ifunc-13.dd, ld-arm/ifunc-13.gd,
ld-arm/ifunc-13.rd, ld-arm/ifunc-14.s, ld-arm/ifunc-14.dd,
ld-arm/ifunc-14.gd, ld-arm/ifunc-14.rd, ld-arm/ifunc-15.s,
ld-arm/ifunc-15.dd, ld-arm/ifunc-15.gd, ld-arm/ifunc-15.rd,
ld-arm/ifunc-16.s, ld-arm/ifunc-16.dd, ld-arm/ifunc-16.gd,
ld-arm/ifunc-16.rd, ld-arm/ifunc-dynamic.ld,
ld-arm/ifunc-static.ld: New tests.
* ld-arm/farcall-group.d, ld-arm/farcall-group-size2.d,
ld-arm/farcall-mixed-lib-v4t.d, ld-arm/farcall-mixed-lib.d: Update
for new stub hashes.
* ld-arm/arm-elf.exp: Run them.
 
2011-03-14 Richard Sandiford <richard.sandiford@linaro.org>
 
* ld-arm/arm-lib-plt-2a.s, ld-arm/arm-lib-plt-2b.s,
ld-arm/arm-lib-plt-2.dd, ld-arm/arm-lib-plt-2.rd: New tests.
* ld-arm/arm-elf.exp: Run them.
 
2011-03-14 Richard Sandiford <richard.sandiford@linaro.org>
 
* ld-arm/exec-got-1a.s, ld-arm/exec-got-1b.s, ld-arm/exec-got-1.d,
ld-arm/unresolved-1.s, ld-arm/unresolved-1.d,
ld-arm/unresolved-1-dyn.d: New tests.
* ld-arm/arm-elf.exp: Run them.
 
2011-03-12 H.J. Lu <hongjiu.lu@intel.com>
 
* ld-x86-64/tlsgd4.dd: New.
* ld-x86-64/tlsgd4.s: Likewise.
* ld-x86-64/tlsgd5.dd: Likewise.
* ld-x86-64/tlsgd5a.s: Likewise.
* ld-x86-64/tlsgd5b.s: Likewise.
* ld-x86-64/tlsgd6.dd: Likewise.
* ld-x86-64/tlsgd6a.s: Likewise.
* ld-x86-64/tlsgd6b.s: Likewise.
* ld-x86-64/tlsld2.dd: Likewise.
* ld-x86-64/tlsld2.s: Likewise.
 
* ld-x86-64/x86-64.exp (x86_64tests): Add tlsgd4, libtlsgd5.so,
tlsgd5, libtlsgd6.so, tlsgd6 and tlsld2.
 
2011-03-03 H.J. Lu <hongjiu.lu@intel.com>
 
* ld-x86-64/tlsie4.dd: New.
* ld-x86-64/tlsie4.s: Likewise.
 
* ld-x86-64/x86-64.exp (x86_64tests): Add tlsie4.
 
2011-02-25 H.J. Lu <hongjiu.lu@intel.com>
 
PR ld/12516
* ld-elf/dynamic1.d: New.
* ld-elf/dynamic1.ld: Likewise.
* ld-elf/dynamic1.s: Likewise.
 
2011-02-25 Alan Modra <amodra@gmail.com>
 
* ld-mn10300/i135409-3.s: Correct .size label reference.
* ld-sh/sh64/stolib.s: Likewise.
 
2011-02-23 H.J. Lu <hongjiu.lu@intel.com>
 
* ld-elf/new.cc: Don't include <exception_defines.h>.
 
2011-02-10 Alan Modra <amodra@gmail.com>
 
* ld-scripts/defined.exp: Don't run defined5 for AOUT.
* ld-scripts/defined5.s: Use .text for "defined" section.
* ld-scripts/defined5.t: Adjust.
 
* ld-gc/start.d: Exclude frv-*-linux*.
* ld-misc/defsym1.d: Likewise.
 
2011-02-09 Alan Modra <amodra@gmail.com>
 
* ld-elfvsb/elfvsb.exp: Don't run any non-PIC tests on powerpc*-linux.
* ld-gc/gc.exp: Ensure powerpc64 test continues to fail.
* ld-srec/srec.exp: Don't edit toc on powerpc64.
 
2011-01-23 Alan Modra <amodra@gmail.com>
 
* ld-scripts/sane1.d, * ld-scripts/sane1.t: New test.
* ld-scripts/expr.exp: Run it.
 
2011-01-18 H.J. Lu <hongjiu.lu@intel.com>
 
* ld-x86-64/ilp32-4.d: Updated.
 
2011-01-17 Richard Sandiford <richard.sandiford@linaro.org>
 
* ld-arm/arm-rel32.s, ld-arm/arm-rel32.d: New testcase.
* ld-arm/arm-elf.exp: Run it.
 
2011-01-17 Richard Sandiford <richard.sandiford@linaro.org>
 
* ld-arm/gc-thumb-lib.s, ld-arm/gc-thumb.s,
ld-arm/gc-thumb.d: New test.
* ld-arm/arm-elf.exp: Run it.
 
2011-01-14 H.J. Lu <hongjiu.lu@intel.com>
 
* ld-x86-64/ia32-2.d: Replace --n32 with --x32.
* ld-x86-64/ilp32-1.d: Likewise.
* ld-x86-64/ilp32-2.d: Likewise.
* ld-x86-64/ilp32-3.d: Likewise.
* ld-x86-64/ilp32-4.d: Likewise.
* ld-x86-64/ilp32-4.d: Adjusted.
* ld-x86-64/ilp32-5.d: Likewise.
* ld-x86-64/lp64-3.d: Likewise.
* ld-x86-64/x86-64.exp: Likewise.
 
2011-01-14 H.J. Lu <hongjiu.lu@intel.com>
 
* ld-x86-64/ilp32-5.d: New.
* ld-x86-64/ilp32-5.s: Likewise.
 
* ld-x86-64/x86-64.exp: Run ilp32-5.
* ld-x86-64/x86-64.exp: Run ilp32-10.
 
2011-01-13 H.J. Lu <hongjiu.lu@intel.com>
2012-01-05 Nick Clifton <nickc@redhat.com>
 
* ld-x86-64/ilp32-4.d: New.
* ld-x86-64/x86-64.exp: Add test of linking mixed 32-bit and
64-bit objects when the 32-bit object (loaded first) contains 32+
local symbols, all referenced by relocs and the 64-bit object
contains a reloc that uses a symbol in the 32-bit object.
* 32bit.s: New source file.
* 64bit.s: New source file.
* incompatible.l: New expected linker output file.
 
* ld-x86-64/x86-64.exp: Run ilp32-4.
 
2011-01-13 H.J. Lu <hongjiu.lu@intel.com>
 
PR ld/12356
* ld-scripts/defined.exp: Run defined5.
 
* ld-scripts/defined5.d: New.
* ld-scripts/defined5.s: Likewise.
* ld-scripts/defined5.t: Likewise.
 
2011-01-13 H.J. Lu <hongjiu.lu@intel.com>
 
* ld-scripts/defined4.d: Xfail rs6000-*-aix*. Skip mips*-*-*
and mmix-*-*.
 
* ld-scripts/expr2.d: Xfail rs6000-*-aix* and arm-*-*aout.
 
2011-01-10 H.J. Lu <hongjiu.lu@intel.com>
 
* ld-scripts/assert.exp: Run assert2.
 
* ld-scripts/assert2.d: New.
* ld-scripts/assert2.t: Likewise.
 
2011-01-10 Nathan Sidwell <nathan@codesourcery.com>
Glauber de Oliveira Costa <glommer@gmail.com>
 
* ld-arm/arm-elf.exp: Added tests for new TLS handling
relocations.
* ld-arm/tls-descrelax-be32.d: New.
* ld-arm/tls-descrelax-be32.s: New.
* ld-arm/tls-descrelax-be8.d: New.
* ld-arm/tls-descrelax-be8.s: New.
* ld-arm/tls-descrelax-v7.d: New.
* ld-arm/tls-descrelax-v7.s: New.
* ld-arm/tls-descrelax.d: New.
* ld-arm/tls-descrelax.s: New.
* ld-arm/tls-descseq.d: New.
* ld-arm/tls-descseq.r: New.
* ld-arm/tls-descseq.s: New.
* ld-arm/tls-gdesc-got.d: New.
* ld-arm/tls-gdesc-got.s: New.
* ld-arm/tls-gdesc-nlazy.g: New.
* ld-arm/tls-gdesc-nlazy.s: New.
* ld-arm/tls-gdesc.d: New.
* ld-arm/tls-gdesc.r: New.
* ld-arm/tls-gdesc.s: New.
* ld-arm/tls-gdierelax.d: New.
* ld-arm/tls-gdierelax.s: New.
* ld-arm/tls-gdierelax2.d: New.
* ld-arm/tls-gdierelax2.s: New.
* ld-arm/tls-gdlerelax.d: New.
* ld-arm/tls-gdlerelax.s: New.
* ld-arm/tls-lib-loc.d: New.
* ld-arm/tls-lib-loc.r: New.
* ld-arm/tls-lib-loc.s: New.
* ld-arm/tls-longplt-lib.d: New.
* ld-arm/tls-longplt-lib.s: New.
* ld-arm/tls-longplt.d: New.
* ld-arm/tls-longplt.s: New.
* ld-arm/tls-mixed.r: New.
* ld-arm/tls-mixed.s: New.
* ld-arm/tls-thumb1.d: New.
* ld-arm/tls-thumb1.s: New.
* ld-arm/arm-elf.exp: New.
 
2011-01-08 Nick Clifton <nickc@redhat.com>
 
* ld-misc/defsym1.d: Add a -e linker command line option.
* ld-misc/dummy.s: Remove text.
 
2011-01-08 Nick Clifton <nickc@redhat.com>
 
PR ld/12358
PR ld/12359
* ld-elf/textaddr2.d: Fix regexp to work with hppa64 targets.
* ld-elf/textaddr6.d: Fix regexp to work with hppa64 targets.
 
2011-01-06 H.J. Lu <hongjiu.lu@intel.com>
 
PR ld/12366
PR ld/12371
* ld-ifunc/ifunc-10-i386.s: Add more tests.
* ld-ifunc/ifunc-10-x86-64.s: Likewise.
* ld-ifunc/ifunc-11-i386.s: Likewise.
* ld-ifunc/ifunc-11-x86-64.s: Likewise.
 
* ld-ifunc/ifunc-12-i386.d: New.
* ld-ifunc/ifunc-12-i386.s: Likewise.
* ld-ifunc/ifunc-12-x86-64.d: Likewise.
* ld-ifunc/ifunc-12-x86-64.s: Likewise.
* ld-ifunc/ifunc-13-i386.d: Likewise.
* ld-ifunc/ifunc-13-x86-64.d: Likewise.
* ld-ifunc/ifunc-13a-i386.s: Likewise.
* ld-ifunc/ifunc-13a-x86-64.s: Likewise.
* ld-ifunc/ifunc-13b-i386.s: Likewise.
* ld-ifunc/ifunc-13b-x86-64.s: Likewise.
 
2011-01-03 H.J. Lu <hongjiu.lu@intel.com>
 
* ld-x86-64/dummy.s: New.
* ld-x86-64/foo.s: Likewise.
* ld-x86-64/ia32-1.d: Likewise.
* ld-x86-64/ia32-2.d: Likewise.
* ld-x86-64/ia32-3.d: Likewise.
* ld-x86-64/ilp32-1.d: Likewise.
* ld-x86-64/ilp32-2.d: Likewise.
* ld-x86-64/ilp32-3.d: Likewise.
* ld-x86-64/lp64-1.d: Likewise.
* ld-x86-64/lp64-2.d: Likewise.
* ld-x86-64/lp64-3.d: Likewise.
* ld-x86-64/start.s: Likewise.
 
* ld-x86-64/x86-64.exp: Run ilp32-1, ilp32-2, ilp32-3, ia32-1,
ia32-2, ia32-3, lp64-1, lp64-2 and lp64-3.
 
2011-01-02 H.J. Lu <hongjiu.lu@intel.com>
 
PR ld/12001
* ld-misc/defsym.exp: New.
* ld-misc/defsym1.d: Likewise.
* ld-misc/dummy.s: Likewise.
* ld-misc/foo.s: Likewise.
* ld-misc/start.s: Likewise.
 
For older changes see ChangeLog-2010
For older changes see ChangeLog-2011
Local Variables:
mode: change-log
/testsuite/config/default.exp
67,6 → 67,7
if {![file isdirectory tmpdir/ld]} then {
catch "exec mkdir tmpdir/ld" status
catch "exec ln -s ../../ld-new tmpdir/ld/ld" status
catch "exec ln -s ld tmpdir/ld/collect-ld" status
}
set gcc_ld_flag "-B[pwd]/tmpdir/ld/"
 
/testsuite/ld-m68hc11/m68hc11.exp
1,5 → 1,5
# Expect script for run_dump_test based ld-m68hc11 tests.
# Copyright 2002, 2005, 2007 Free Software Foundation, Inc.
# Copyright 2002, 2005, 2007, 2012 Free Software Foundation, Inc.
#
# This file is part of the GNU Binutils.
#
22,7 → 22,8
 
# Test 68HC11 relaxing. This tests the assembler as well as the linker.
 
if { ![istarget m6811-*-*] && ![istarget m6812-*-*] } {
if { ![istarget m6811-*-*] && ![istarget m6812-*-*]
&& ![istarget m68hc11-*-*] && ![istarget m68hc12-*-*] } {
return
}
 
/testsuite/ld-m68hc11/bug-1403.d
1,8 → 1,7
#source: bug-1403.s
#as: -m68hc11
#ld: --relax
#ld: -m m68hc11elf --relax
#objdump: -d --prefix-addresses -r
#target: m6811-*-* m6812-*-*
 
.*: +file format elf32-m68hc11
 
/testsuite/ld-m68hc11/far-hc11.d
2,7 → 2,6
#as: -m68hc11
#ld: -m m68hc11elf
#objdump: -d --prefix-addresses -r
#target: m6811-*-* m6812-*-*
 
.*: file format elf32-m68hc11
 
9,24 → 8,24
Disassembly of section .text:
0+8000 <tramp._far_foo> pshb
0+8001 <tramp._far_foo\+0x1> ldab \#0
0+8003 <tramp._far_foo\+0x3> ldy \#0+6c <_far_foo>
0+8003 <tramp._far_foo\+0x3> ldy \#0+8072 <_far_foo>
0+8007 <tramp._far_foo\+0x7> jmp 0+8056 <__far_trampoline>
0+800a <tramp._far_bar> pshb
0+800b <tramp._far_bar\+0x1> ldab \#0
0+800d <tramp._far_bar\+0x3> ldy \#0+64 <stack>
0+800d <tramp._far_bar\+0x3> ldy \#0+806a .*
0+8011 <tramp._far_bar\+0x7> jmp 0+8056 <__far_trampoline>
0+8014 <_start> lds \#0+64 <stack>
0+8017 <_start\+0x3> ldx \#0+abcd <__data_image\+0x2b63>
0+8017 <_start\+0x3> ldx \#0+abcd .*
0+801a <_start\+0x6> pshx
0+801b <_start\+0x7> ldd \#0+1234 <__data_section_start\+0x134>
0+801e <_start\+0xa> ldx \#0+5678 <__data_section_start\+0x4578>
0+801b <_start\+0x7> ldd \#0+1234 .*
0+801e <_start\+0xa> ldx \#0+5678 .*
0+8021 <_start\+0xd> jsr 0+800a <tramp._far_bar>
0+8024 <_start\+0x10> cpx \#0+1234 <__data_section_start\+0x134>
0+8024 <_start\+0x10> cpx \#0+1234 .*
0+8027 <_start\+0x13> bne 0+804e <fail>
0+8029 <_start\+0x15> cpd \#0+5678 <__data_section_start\+0x4578>
0+8029 <_start\+0x15> cpd \#0+5678 .*
0+802d <_start\+0x19> bne 0+804e <fail>
0+802f <_start\+0x1b> pulx
0+8030 <_start\+0x1c> cpx \#0+abcd <__data_image\+0x2b63>
0+8030 <_start\+0x1c> cpx \#0+abcd .*
0+8033 <_start\+0x1f> bne 0+804e <fail>
0+8035 <_start\+0x21> ldd \#0+8000 <tramp._far_foo>
0+8038 <_start\+0x24> xgdx
35,7 → 34,7
0+803e <_start\+0x2a> xgdy
0+8040 <_start\+0x2c> jsr 0,y
0+8043 <_start\+0x2f> ldaa \#0
0+8045 <_start\+0x31> ldy \#0+73 <_far_no_tramp>
0+8045 <_start\+0x31> ldy \#0+8079 <_far_no_tramp>
0+8049 <_start\+0x35> bsr 0+8066 <__call_a16>
0+804b <_start\+0x37> clra
0+804c <_start\+0x38> clrb
59,15 → 58,15
0+8066 <__call_a16> psha
0+8067 <__call_a16\+0x1> jmp 0,y
Disassembly of section .bank1:
0+64 <_far_bar> jsr 0+6b <local_bank1>
0+67 <_far_bar\+0x3> xgdx
0+68 <_far_bar\+0x4> jmp 0+8054 <__return>
0+6b <local_bank1> rts
0+806a <_far_bar> jsr 0+8071 <local_bank1>
0+806d <_far_bar\+0x3> xgdx
0+806e <_far_bar\+0x4> jmp 0+8054 <__return>
0+8071 <local_bank1> rts
Disassembly of section .bank2:
0+6c <_far_foo> jsr 0+72 <local_bank2>
0+6f <_far_foo\+0x3> jmp 0+8054 <__return>
0+72 <local_bank2> rts
0+8072 <_far_foo> jsr 0+8078 <local_bank2>
0+8075 <_far_foo\+0x3> jmp 0+8054 <__return>
0+8078 <local_bank2> rts
Disassembly of section .bank3:
0+73 <_far_no_tramp> jsr 0+79 <local_bank3>
0+76 <_far_no_tramp\+0x3> jmp 0+8054 <__return>
0+79 <local_bank3> rts
0+8079 <_far_no_tramp> jsr 0+807f <local_bank3>
0+807c <_far_no_tramp\+0x3> jmp 0+8054 <__return>
0+807f <local_bank3> rts
/testsuite/ld-m68hc11/far-hc12.d
2,7 → 2,6
#as: -m68hc12
#ld: -m m68hc12elf --script $srcdir/$subdir/far-hc12.ld
#objdump: -d --prefix-addresses -r
#target: m6811-*-* m6812-*-*
 
.*: file format elf32\-m68hc12
 
/testsuite/ld-m68hc11/bug-3331.d
1,8 → 1,7
#source: bug-3331.s
#as: -m68hc11
#ld: --relax
#ld: -m m68hc11elf --relax
#objdump: -d --prefix-addresses -r
#target: m6811-*-* m6812-*-*
 
.*: +file format elf32-m68hc11
 
/testsuite/ld-m68hc11/relax-group.d
1,8 → 1,7
#source: relax-group.s
#as: -m68hc11
#ld: --relax
#ld: -m m68hc11elf --relax
#objdump: -d --prefix-addresses -r
#target: m6811-*-* m6812-*-*
 
.*: +file format elf32-m68hc11
 
/testsuite/ld-m68hc11/adj-jump.d
1,8 → 1,7
#source: adj-jump.s
#as: -m68hc11
#ld: --relax
#ld: -m m68hc11elf --relax
#objdump: -d --prefix-addresses -r
#target: m6811-*-* m6812-*-*
 
.*: +file format elf32\-m68hc11
 
/testsuite/ld-m68hc11/bug-1417.d
1,8 → 1,7
#source: bug-1417.s
#as: -m68hc11
#ld: --relax
#ld: -m m68hc11elf --relax
#objdump: -d --prefix-addresses -r
#target: m6811-*-* m6812-*-*
 
.*: +file format elf32-m68hc11
 
/testsuite/ld-m68hc11/link-hcs12.d
3,17 → 3,12
#as: -mshort
#ld: -m m68hc12elf
#objdump: -p -d --prefix-addresses -r
#target: m6811-*-* m6812-*-*
 
.*: file format elf32\-m68hc12
 
Program Header:
LOAD off 0x0+ vaddr 0x0+1000 paddr 0x0+1000 align 2\*\*12
filesz 0x0+100 memsz 0x0+100 flags rw-
LOAD off 0x0+1000 vaddr 0x0+8000 paddr 0x0+8000 align 2\*\*12
filesz 0x0+6 memsz 0x0+6 flags r-x
LOAD off 0x0+1100 vaddr 0x0+1100 paddr 0x0+8006 align 2\*\*12
filesz 0x0+ memsz 0x0+ flags rw-
private flags = 22:\[abi=16\-bit int, 64\-bit double, cpu=HCS12\] \[memory=flat\]
 
Disassembly of section .text:
/testsuite/ld-m68hc11/adj-brset.d
1,8 → 1,7
#source: adj-brset.s
#as: -m68hc11
#ld: --relax
#ld: -m m68hc11elf --relax
#objdump: -d --prefix-addresses -r
#target: m6811-*-* m6812-*-*
 
.*: +file format elf32\-m68hc11
 
/testsuite/ld-m68hc11/relax-direct.d
1,8 → 1,7
#source: relax-direct.s
#as: -m68hc11
#ld: --relax
#ld: -m m68hc11elf --relax
#objdump: -d --prefix-addresses -r
#target: m6811-*-* m6812-*-*
 
.*: +file format elf32-m68hc11
 
/testsuite/ld-elfvers/vers.exp
72,7 → 72,9
set shared "--shared --no-undefined-version"
set script --version-script
 
if [istarget mips*-*-*] {
# Old version of GCC for MIPS default to enabling -fpic
# and get confused if it is used on the command line.
if { [istarget mips*-*-*] && ! [at_least_gcc_version 4 3] } then {
set picflag ""
} else {
# Unfortunately, the gcc argument is -fpic and the cc argument is
768,8 → 770,9
pass $test
}
 
if [istarget x86_64-*-linux*] {
# x86_64 doesn't like non-pic shared libraries
if { [istarget x86_64-*-linux*] \
|| ( [istarget mips*-*-linux*] && [at_least_gcc_version 4 3] ) } {
# x86_64 and newer MIPS toolchains do not like non-pic shared libraries
set pic "yes"
} else {
set pic "no"
/testsuite/ld-elf/pr11304b.s
1,4 → 1,4
.section .zzz,"ax",%progbits
.long 0
.text
.long 0
.section .zzz,"ax",%progbits
.long 0
.text
.long 0
/testsuite/ld-elf/comm-data1.s
0,0 → 1,6
.section .rodata,"a",%progbits
.balign 8
.globl foo
.type foo,%object
foo:
.skip 4, 0
/testsuite/ld-elf/comm-data2.xd
0,0 → 1,2
Hex dump of section '\.debug_foo':
+0x0+ +00000000 00000000 00000000 00000000 +\.\.\.\.\.\.\.\.\.\.\.\.\.\.\.\.
/testsuite/ld-elf/zerosize1.d
0,0 → 1,10
#source: start.s
#source: zerosize1.s
#ld:
#readelf: -s
 
# Check that xyzzy is not placed in the .text section.
 
#...
+[0-9]+: +[0-9a-f]+ +0 +(OBJECT|NOTYPE) +GLOBAL +DEFAULT +ABS xyzzy
#pass
/testsuite/ld-elf/zerosize1.s
0,0 → 1,3
.section "zerosize","aw"
.globl xyzzy
xyzzy:
/testsuite/ld-elf/comm-data2.s
0,0 → 1,14
.text
.globl _start
.globl __start
_start:
__start:
.comm foo, 4, 4
.section .debug_foo,"",%progbits
.balign 16
.ifdef ELF64
.8byte foo
.else
.4byte foo
.endif
.balign 16
/testsuite/ld-elf/comm-data.exp
0,0 → 1,77
# Expect script for common symbol override.
#
# Copyright 2011, 2012 Free Software Foundation, Inc.
#
# This file is part of the GNU Binutils.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
# the Free Software Foundation; either version 3 of the License, or
# (at your option) any later version.
#
# This program is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU General Public License for more details.
#
# You should have received a copy of the GNU General Public License
# along with this program; if not, write to the Free Software
# Foundation, Inc., 51 Franklin Street - Fifth Floor, Boston,
# MA 02110-1301, USA.
#
 
#
# Written by Maciej W. Rozycki <macro@codesourcery.com>
#
 
# Exclude non-ELF targets.
if ![is_elf_format] {
return
}
 
# Exclude some more targets; feel free to include your favorite one
# if you like.
if { ![istarget *-*-linux*]
&& ![istarget *-*-gnu*] } {
return
}
 
set testname "Common symbol override test"
 
# Define a global symbol.
run_ld_link_tests [list \
[list \
"$testname (auxiliary shared object build)" \
"-shared" \
"" \
{ comm-data1.s } \
{ \
{ readelf -s comm-data1.sd } \
} \
"libcomm-data.so" \
] \
]
 
# Set the pointer size according to the ELF flavor.
set AFLAGS ""
if [is_elf64 "tmpdir/libcomm-data.so"] {
append AFLAGS " --defsym ELF64=1"
}
 
# Verify that a common symbol has been converted to an undefined
# reference to the global symbol of the same name defined above
# and that the debug reference has been dropped.
run_ld_link_tests [list \
[list \
"$testname" \
"-Ltmpdir -lcomm-data" \
"$AFLAGS" \
{ comm-data2.s } \
{ \
{ readelf -s comm-data2.sd } \
{ readelf -r comm-data2.rd } \
{ readelf "-x .debug_foo" comm-data2.xd } \
} \
"comm-data" \
] \
]
/testsuite/ld-elf/warn2.d
13,5 → 13,5
# construct and that the symbol still appears as expected.
 
#...
+[0-9]+: +[0-9a-f]+ +20 +OBJECT +GLOBAL +DEFAULT +[1-9] Foo
+[0-9]+: +[0-9a-f]+ +20 +OBJECT +GLOBAL +DEFAULT +ABS Foo
#pass
/testsuite/ld-elf/comm-data1.sd
0,0 → 1,10
Symbol table '\.dynsym' contains [0-9]+ entries:
+Num: +Value +Size +Type +Bind +Vis +Ndx +Name
#...
+[0-9]+: +[0-9a-f]+ +0 +OBJECT +GLOBAL +DEFAULT +[0-9]+ +foo
#...
Symbol table '\.symtab' contains [0-9]+ entries:
+Num: +Value +Size +Type +Bind +Vis +Ndx +Name
#...
+[0-9]+: +[0-9a-f]+ +0 +OBJECT +GLOBAL +DEFAULT +[0-9]+ +foo
#pass
/testsuite/ld-elf/comm-data2.rd
0,0 → 1,10
There are no relocations in this file\.
/testsuite/ld-elf/comm-data2.sd
0,0 → 1,10
Symbol table '\.dynsym' contains [0-9]+ entries:
+Num: +Value +Size +Type +Bind +Vis +Ndx +Name
#...
+[0-9]+: +0+ +0 +OBJECT +GLOBAL +DEFAULT +UND +foo
#...
Symbol table '\.symtab' contains [0-9]+ entries:
+Num: +Value +Size +Type +Bind +Vis +Ndx +Name
#...
+[0-9]+: +0+ +0 +OBJECT +GLOBAL +DEFAULT +UND +foo
#pass
/testsuite/ld-elf/linkoncerdiff.d
2,5 → 2,6
#source: linkoncerdiff2.s
#ld: -r
#readelf: -r
#notarget: hppa64*-*-hpux*
There are no relocations in this file.
#pass
/testsuite/ld-elf/pr11304a.s
1,4 → 1,4
.section .zzz,"ax",%progbits
.long 0
.text
.long 0
.section .zzz,"ax",%progbits
.long 0
.text
.long 0
/testsuite/lib/ld-lib.exp
27,6 → 27,31
 
load_common_lib binutils-common.exp
 
# Returns 1 if the gcc for the target is at least version MAJOR.MINOR
# Returns 0 otherwise.
#
proc at_least_gcc_version { major minor } {
if {![info exists CC]} {
set CC [find_gcc]
}
if { $CC == "" } {
return 0
}
set state [remote_exec host $CC --version]
set tmp "[lindex $state 1]\n"
# Look for (eg) 4.6.1 in the version output.
regexp " .* (\[1-9\])\\.(\[0-9\])\\.\[0-9\]* .*" "$tmp" fred maj min
verbose "gcc version: $tmp"
verbose "major gcc version is $maj, want at least $major"
if { $maj == $major } then {
verbose "minor gcc version is $min, want at least $minor"
return [expr $min >= $minor ]
} else {
return [expr $maj > $major ]
}
}
 
# Extract and print the version number of ld.
#
proc default_ld_version { ld } {
390,7 → 415,7
}
 
# m6811/m6812 code has references to soft registers.
if {[istarget m6811-*-*] || [istarget m6812-*-*]} {
if {[istarget m6811-*-*] || [istarget m6812-*-*] || [istarget m68hc1*-*-*]} {
append flags " --defsym _.frame=0 --defsym _.d1=0 --defsym _.d2=0"
append flags " --defsym _.d3=0 --defsym _.d4=0"
append flags " --defsym _.tmp=0 --defsym _.xy=0 --defsym _.z=0"
964,11 → 989,12
 
# Assemble each file in the test.
foreach src_file $src_files {
set objfile "tmpdir/[file rootname $src_file].o"
set fileroot "[file rootname [file tail $src_file]]"
set objfile "tmpdir/$fileroot.o"
lappend objfiles $objfile
 
if { [file extension $src_file] == ".c" } {
set as_file "tmpdir/[file rootname $src_file].s"
set as_file "tmpdir/$fileroot.s"
if ![ld_compile "$CC -S $CFLAGS $cflags" $srcdir/$subdir/$src_file $as_file] {
set is_unresolved 1
break
1162,7 → 1188,8
 
# Assemble each file in the test.
foreach src_file $src_files {
set objfile "tmpdir/[file rootname $src_file].o"
set fileroot "[file rootname [file tail $src_file]]"
set objfile "tmpdir/$fileroot.o"
lappend objfiles $objfile
 
# We ignore warnings since some compilers may generate
1284,7 → 1311,8
 
# Compile each file in the test.
foreach src_file $src_files {
set objfile "tmpdir/[file rootname $src_file].o"
set fileroot "[file rootname [file tail $src_file]]"
set objfile "tmpdir/$fileroot.o"
lappend objfiles $objfile
 
# We ignore warnings since some compilers may generate
1474,6 → 1502,8
&& ![istarget lm32-*-*]
&& ![istarget m32c-*-*]
&& ![istarget m32r-*-*]
&& ![istarget m6811-*-*]
&& ![istarget m6812-*-*]
&& ![istarget m68hc1*-*-*]
&& ![istarget mcore*-*-*]
&& ![istarget mep-*-*]
/testsuite/ld-mips-elf/multi-got-1.d
18,7 → 18,7
0x00000013 \(RELENT\) 8 \(bytes\)
0x70000001 \(MIPS_RLD_VERSION\) 1
0x70000005 \(MIPS_FLAGS\) NOTPOT
0x70000006 \(MIPS_BASE_ADDRESS\) 0
0x70000006 \(MIPS_BASE_ADDRESS\) 0x0
0x7000000a \(MIPS_LOCAL_GOTNO\) 2
0x70000011 \(MIPS_SYMTABNO\) [0-9]+
0x70000012 \(MIPS_UNREFEXTNO\) [0-9]+
/testsuite/ld-mips-elf/comm-data.exp
0,0 → 1,86
# Expect script for common symbol override, MIPS variation.
#
# Copyright 2011 Free Software Foundation, Inc.
#
# This file is part of the GNU Binutils.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
# the Free Software Foundation; either version 3 of the License, or
# (at your option) any later version.
#
# This program is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU General Public License for more details.
#
# You should have received a copy of the GNU General Public License
# along with this program; if not, write to the Free Software
# Foundation, Inc., 51 Franklin Street - Fifth Floor, Boston,
# MA 02110-1301, USA.
#
 
#
# Written by Maciej W. Rozycki <macro@codesourcery.com>
#
 
# Exclude non-Linux targets; feel free to include your favorite one
# if you like.
if ![istarget mips*-*-linux*] {
return
}
 
proc mips_comm_data_test { abi flag emul reloc } {
 
set testname "MIPS $abi/$reloc common symbol override test"
 
# There's no "-z copyreloc" option, deal with it.
set ZFLAG [string map [list copyreloc "" nocopyreloc "-z $reloc"] $reloc]
set AFLAGS "$flag -EB"
set LDFLAGS "-m$emul"
 
# Define a global symbol.
run_ld_link_tests [list \
[list \
"$testname (auxiliary shared object build)" \
"$LDFLAGS -shared" \
"$AFLAGS -call_shared" \
{ ../ld-elf/comm-data1.s } \
{ \
{ readelf -s ../ld-elf/comm-data1.sd } \
} \
"libmips-$abi-$reloc-comm-data.so" \
] \
]
 
# Set the pointer size according to the ABI.
if { $abi == "n64" } {
append AFLAGS " --defsym ELF64=1"
}
 
# Verify that a common symbol has been converted to an undefined
# reference to the global symbol of the same name defined above
# and that the debug reference has been dropped.
run_ld_link_tests [list \
[list \
"$testname" \
"$LDFLAGS $ZFLAG -Ltmpdir -lmips-$abi-$reloc-comm-data" \
"$AFLAGS -call_nonpic" \
{ ../ld-elf/comm-data2.s } \
{ \
{ readelf -s ../ld-elf/comm-data2.sd } \
{ readelf -r ../ld-elf/comm-data2.rd } \
{ readelf "-x .debug_foo" ../ld-elf/comm-data2.xd } \
} \
"mips-$abi-$reloc-comm-data" \
] \
]
}
 
set abis { o32 -32 elf32btsmip n32 -n32 elf32btsmipn32 n64 -64 elf64btsmip }
set relocs { copyreloc nocopyreloc }
foreach { abi flag emul } $abis {
foreach reloc $relocs {
mips_comm_data_test $abi $flag $emul $reloc
}
}
/testsuite/ld-mips-elf/tls-multi-got-1.r
12,7 → 12,7
0x00000013 \(RELENT\) 8 \(bytes\)
0x70000001 \(MIPS_RLD_VERSION\) 1
0x70000005 \(MIPS_FLAGS\) NOTPOT
0x70000006 \(MIPS_BASE_ADDRESS\) 0
0x70000006 \(MIPS_BASE_ADDRESS\) 0x0
0x7000000a \(MIPS_LOCAL_GOTNO\) 2
0x70000011 \(MIPS_SYMTABNO\) 20013
0x70000012 \(MIPS_UNREFEXTNO\) 10
/testsuite/ld-mips-elf/textrel-1.d
17,7 → 17,7
0x00000013 \(RELENT\) 8 \(bytes\)
0x70000001 \(MIPS_RLD_VERSION\) 1
0x70000005 \(MIPS_FLAGS\) NOTPOT
0x70000006 \(MIPS_BASE_ADDRESS\) 0
0x70000006 \(MIPS_BASE_ADDRESS\) 0x0
0x7000000a \(MIPS_LOCAL_GOTNO\) [0-9]*
0x70000011 \(MIPS_SYMTABNO\) [0-9]*
0x70000012 \(MIPS_UNREFEXTNO\) [0-9]*
/testsuite/ld-mips-elf/pic-and-nonpic-6-n64.dd
19,7 → 19,7
.*: ddd91000 ld t9,4096\(t2\)
.*: 25ce1000 addiu t2,t2,4096
.*: 030ec023 subu t8,t8,t2
.*: 03e07821 move t3,ra
.*: 03e0782d move t3,ra
.*: 0018c0c2 srl t8,t8,0x3
.*: 0320f809 jalr t9
.*: 2718fffe addiu t8,t8,-2
/testsuite/ld-selective/selective.exp
141,7 → 141,7
}
 
# m6811/m6812 code has references to soft registers.
if {[istarget m6811-*-*] || [istarget m6812-*-*]} {
if {[istarget m6811-*-*] || [istarget m6812-*-*] || [istarget m68hc1*-*-*]} {
set objfile "$objfile --defsym _.frame=0 --defsym _.d1=0"
set objfile "$objfile --defsym _.d2=0"
}
/testsuite/ld-gc/gc.exp
120,3 → 120,8
run_dump_test "pr11218"
}
}
 
if { [is_remote host] || [which $CC] != 0 } {
ld_compile "$CC $CFLAGS $cflags" $srcdir/$subdir/pr13683.c tmpdir/pr13683.o
run_dump_test "pr13683"
}
/testsuite/ld-gc/pr13683.c
0,0 → 1,28
void foo(void);
 
int main(void)
{
foo ();
 
for (;;)
;
}
 
int a;
 
void foo1(void)
{
a = 1;
}
 
void foo2(void)
{
a = 2;
}
 
void foo3(void)
{
a = 3;
}
 
 
/testsuite/ld-gc/pr13683.d
0,0 → 1,12
#name: --gc-sections with --defsym
#source: dummy.s
#ld: --gc-sections -e main --defsym foo=foo2 tmpdir/pr13683.o
#nm: --format=bsd
#xfail: sh64*-*-* iq2000-*-* lm32-*-* epiphany-*-* mips64vr-*-* frv-*-* m32c-*-* rl78-*-* rx-*-* sh-*-*
 
# Note - look for both "foo" and "foo2" being defined, non-zero function symbols
 
#...
0+[1-9a-f]+[0-9a-f]*[ ]T[ ]_*foo
0+[1-9a-f]+[0-9a-f]*[ ]T[ ]_*foo2
#...
/testsuite/ld-tilegx/reloc-le.d
0,0 → 1,70
 
.*: file format .*tilegx.*
 
Contents of section .text:
100b0 .*
100c0 .*
100d0 .*
100e0 .*
100f0 .*
10100 .*
10110 .*
10120 .*
10130 .*
10140 .*
10150 .*
10160 .*
10170 .*
10180 .*
10190 .*
101a0 .*
101b0 .*
101c0 .*
Contents of section .data:
201e0 b8010100 c0010100 7a82644b 11773200 .*
201f0 00002e00 2c7a8234 12785634 127856bc .*
20200 9a341278 56bc9af0 de000000 00000000 .*
20210 00000000 00000000 00000000 00000000 .*
 
Disassembly of section .text:
 
00000000000100b0 <_start>:
100b0: [0-9a-f]* { add r2, zero, zero }
100b8: [0-9a-f]* { j 101b8 <external1> }
100c0: [0-9a-f]* { add r3, r2, r2 }
100c8: [0-9a-f]* { beqzt zero, 101c0 <external2> }
100d0: [0-9a-f]* { movei r2, 17 ; movei r3, 119 }
100d8: [0-9a-f]* { movei r2, 17 ; movei r3, 119 ; ld zero, zero }
100e0: [0-9a-f]* { mtspr 17, zero }
100e8: [0-9a-f]* { mfspr zero, 17 }
100f0: [0-9a-f]* { moveli r2, -32134 ; moveli r3, 19300 }
100f8: [0-9a-f]* { moveli r2, 4660 ; moveli r3, -30293 }
10100: [0-9a-f]* { shl16insli r2, r2, 22136 ; shl16insli r3, r3, -12816 }
10108: [0-9a-f]* { moveli r2, 4660 ; moveli r3, 30292 }
10110: [0-9a-f]* { shl16insli r2, r2, 22136 ; shl16insli r3, r3, 12816 }
10118: [0-9a-f]* { shl16insli r2, r2, -25924 ; shl16insli r3, r3, -292 }
10120: [0-9a-f]* { moveli r2, 4660 ; moveli r3, -292 }
10128: [0-9a-f]* { shl16insli r2, r2, 22136 ; shl16insli r3, r3, -17768 }
10130: [0-9a-f]* { shl16insli r2, r2, -25924 ; shl16insli r3, r3, 30292 }
10138: [0-9a-f]* { shl16insli r2, r2, -8464 ; shl16insli r3, r3, 12816 }
10140: [0-9a-f]* { ld_add r0, r0, 17 }
10148: [0-9a-f]* { st_add r0, r0, 17 }
10150: [0-9a-f]* { mm r2, r3, 19, 31 }
10158: [0-9a-f]* { shli r2, r3, 19 ; shli r4, r5, 31 }
10160: [0-9a-f]* { shli r2, r3, 19 ; shli r4, r5, 31 ; ld zero, zero }
10168: [0-9a-f]* { moveli r0, 80 ; moveli r1, 80 }
10170: [0-9a-f]* { moveli r0, 1 ; moveli r1, 1 }
10178: [0-9a-f]* { moveli r0, 168 ; moveli r1, 168 }
10180: [0-9a-f]* { moveli r0, 4096 ; moveli r1, 4096 }
10188: [0-9a-f]* { moveli r0, 1 ; moveli r1, 1 }
10190: [0-9a-f]* { moveli r0, 144 ; moveli r1, 144 }
10198: [0-9a-f]* { moveli r0, 4096 ; moveli r1, 4096 }
101a0: [0-9a-f]* { moveli r0, 0 ; moveli r1, 0 }
101a8: [0-9a-f]* { moveli r0, 1 ; moveli r1, 1 }
101b0: [0-9a-f]* { moveli r0, 112 ; moveli r1, 112 }
 
00000000000101b8 <external1>:
101b8: [0-9a-f]* { j 101b8 <external1> }
 
00000000000101c0 <external2>:
101c0: [0-9a-f]* { j 101b8 <external1> }
/testsuite/ld-tilegx/tilegx.exp
24,14 → 24,21
 
# Set up a list as described in ld-lib.exp
 
set tilepro_tests {
{ "tilegx relocation resolution linker test"
""
""
set tilegx_tests {
{ "tilegx little-endian relocation resolution linker test"
"-EL"
"-EL"
{ "reloc.s" "external.s" }
{ {objdump -ds reloc.d} }
{ {objdump -ds reloc-le.d} }
"reloc"
}
{ "tilegx big-endian relocation resolution linker test"
"-EB"
"-EB"
{ "reloc.s" "external.s" }
{ {objdump -ds reloc-be.d} }
"reloc"
}
}
 
run_ld_link_tests $tilepro_tests
run_ld_link_tests $tilegx_tests
/testsuite/ld-tilegx/reloc-be.d
0,0 → 1,70
 
.*: file format .*tilegx.*
 
Contents of section .text:
100b0 .*
100c0 .*
100d0 .*
100e0 .*
100f0 .*
10100 .*
10110 .*
10120 .*
10130 .*
10140 .*
10150 .*
10160 .*
10170 .*
10180 .*
10190 .*
101a0 .*
101b0 .*
101c0 .*
Contents of section .data:
201e0 000101b8 000101c0 827a4b64 11770000 .*
201f0 0032002e 2c827a12 34567812 3456789a .*
20200 bc123456 789abcde f0000000 00000000 .*
20210 00000000 00000000 00000000 00000000 .*
 
Disassembly of section .text:
 
00000000000100b0 <_start>:
100b0: [0-9a-f]* { add r2, zero, zero }
100b8: [0-9a-f]* { j 101b8 <external1> }
100c0: [0-9a-f]* { add r3, r2, r2 }
100c8: [0-9a-f]* { beqzt zero, 101c0 <external2> }
100d0: [0-9a-f]* { movei r2, 17 ; movei r3, 119 }
100d8: [0-9a-f]* { movei r2, 17 ; movei r3, 119 ; ld zero, zero }
100e0: [0-9a-f]* { mtspr 17, zero }
100e8: [0-9a-f]* { mfspr zero, 17 }
100f0: [0-9a-f]* { moveli r2, -32134 ; moveli r3, 19300 }
100f8: [0-9a-f]* { moveli r2, 4660 ; moveli r3, -30293 }
10100: [0-9a-f]* { shl16insli r2, r2, 22136 ; shl16insli r3, r3, -12816 }
10108: [0-9a-f]* { moveli r2, 4660 ; moveli r3, 30292 }
10110: [0-9a-f]* { shl16insli r2, r2, 22136 ; shl16insli r3, r3, 12816 }
10118: [0-9a-f]* { shl16insli r2, r2, -25924 ; shl16insli r3, r3, -292 }
10120: [0-9a-f]* { moveli r2, 4660 ; moveli r3, -292 }
10128: [0-9a-f]* { shl16insli r2, r2, 22136 ; shl16insli r3, r3, -17768 }
10130: [0-9a-f]* { shl16insli r2, r2, -25924 ; shl16insli r3, r3, 30292 }
10138: [0-9a-f]* { shl16insli r2, r2, -8464 ; shl16insli r3, r3, 12816 }
10140: [0-9a-f]* { ld_add r0, r0, 17 }
10148: [0-9a-f]* { st_add r0, r0, 17 }
10150: [0-9a-f]* { mm r2, r3, 19, 31 }
10158: [0-9a-f]* { shli r2, r3, 19 ; shli r4, r5, 31 }
10160: [0-9a-f]* { shli r2, r3, 19 ; shli r4, r5, 31 ; ld zero, zero }
10168: [0-9a-f]* { moveli r0, 80 ; moveli r1, 80 }
10170: [0-9a-f]* { moveli r0, 1 ; moveli r1, 1 }
10178: [0-9a-f]* { moveli r0, 168 ; moveli r1, 168 }
10180: [0-9a-f]* { moveli r0, 4096 ; moveli r1, 4096 }
10188: [0-9a-f]* { moveli r0, 1 ; moveli r1, 1 }
10190: [0-9a-f]* { moveli r0, 144 ; moveli r1, 144 }
10198: [0-9a-f]* { moveli r0, 4096 ; moveli r1, 4096 }
101a0: [0-9a-f]* { moveli r0, 0 ; moveli r1, 0 }
101a8: [0-9a-f]* { moveli r0, 1 ; moveli r1, 1 }
101b0: [0-9a-f]* { moveli r0, 112 ; moveli r1, 112 }
 
00000000000101b8 <external1>:
101b8: [0-9a-f]* { j 101b8 <external1> }
 
00000000000101c0 <external2>:
101c0: [0-9a-f]* { j 101b8 <external1> }
/testsuite/ld-cris/tls-js1.d
28,5 → 28,5
0000235c 0000030b R_CRIS_JUMP_SLOT 00000296 dsofn4 \+ 0
00002360 00000c0b R_CRIS_JUMP_SLOT 000002ae dsofn \+ 0
 
There are no unwind sections in this file.
The decoding of unwind sections for machine type Axis Communications 32-bit embedded processor is not currently supported.
#pass
/testsuite/ld-cris/weakref3.d
22,7 → 22,7
Offset +Info +Type +Sym.Value +Sym. Name \+ Addend
00082320 +0000030b R_CRIS_JUMP_SLOT +00080238 +expfn2 \+ 0
 
There are no unwind sections in this file.
The decoding of unwind sections for machine type Axis Communications 32-bit embedded processor is not currently supported.
 
Symbol table '.dynsym' contains . entries:
#...
/testsuite/ld-cris/tls-local-63.d
12,7 → 12,7
Offset Info Type Sym.Value Sym. Name \+ Addend
00002210 0000001c R_CRIS_32_TPREL[ ]+00+
 
There are no unwind sections in this file.
The decoding of unwind sections for machine type Axis Communications 32-bit embedded processor is not currently supported.
 
Symbol table '.dynsym' contains 7 entries:
Num: Value Size Type Bind Vis Ndx Name
/testsuite/ld-cris/tls-gc-69.d
22,11 → 22,11
SYMBOL TABLE:
0+80074 l d .text 0+ .text
0+82078 l d .got 0+ .got
0+82084 l \*ABS\* 0+ __bss_start
0+82084 l \*ABS\* 0+ _edata
0+82078 l O .got 0+ _GLOBAL_OFFSET_TABLE_
0+820a0 l \*ABS\* 0+ _end
0+80074 g .text 0+ _start
0+82084 g \*ABS\* 0+ __bss_start
0+82084 g \*ABS\* 0+ _edata
0+820a0 g \*ABS\* 0+ _end
 
Contents of section .text:
80074 41b20+ .*
/testsuite/ld-cris/tls-und-50.d
13,7 → 13,7
Offset +Info +Type +Sym.Value +Sym. Name \+ Addend
000021ec +0000021c R_CRIS_32_TPREL +0+ +x \+ 0
 
There are no unwind sections in this file.
The decoding of unwind sections for machine type Axis Communications 32-bit embedded processor is not currently supported.
 
Symbol table '.dynsym' contains . entries:
+Num: +Value +Size +Type +Bind +Vis +Ndx +Name
/testsuite/ld-cris/tls-gc-70.d
22,11 → 22,11
SYMBOL TABLE:
0+80074 l d .text 0+ .text
0+82078 l d .got 0+ .got
0+82084 l \*ABS\* 0+ __bss_start
0+82084 l \*ABS\* 0+ _edata
0+82078 l O .got 0+ _GLOBAL_OFFSET_TABLE_
0+820a0 l \*ABS\* 0+ _end
0+80074 g .text 0+ _start
0+82084 g \*ABS\* 0+ __bss_start
0+82084 g \*ABS\* 0+ _edata
0+820a0 g \*ABS\* 0+ _end
 
Contents of section .text:
80074 41b20+ .*
/testsuite/ld-cris/weakref4.d
19,7 → 19,7
#...
000822a8 +00000109 R_CRIS_COPY +000822a8 +__expobj2 \+ 0
 
There are no unwind sections in this file.
The decoding of unwind sections for machine type Axis Communications 32-bit embedded processor is not currently supported.
 
Symbol table '.dynsym' contains . entries:
#...
/testsuite/ld-cris/tls-und-42.d
13,7 → 13,7
Offset +Info +Type +Sym.Value +Sym. Name \+ Addend
000021f4 +0000021c R_CRIS_32_TPREL +0+ +x \+ 0
 
There are no unwind sections in this file.
The decoding of unwind sections for machine type Axis Communications 32-bit embedded processor is not currently supported.
 
Symbol table '.dynsym' contains . entries:
+Num: +Value +Size +Type +Bind +Vis +Ndx +Name
/testsuite/ld-cris/tls-und-46.d
13,7 → 13,7
Offset +Info +Type +Sym.Value +Sym. Name \+ Addend
000021e8 +00000217 R_CRIS_DTP +00000000 +x \+ 0
 
There are no unwind sections in this file.
The decoding of unwind sections for machine type Axis Communications 32-bit embedded processor is not currently supported.
 
Symbol table '.dynsym' contains . entries:
+Num: +Value +Size +Type +Bind +Vis +Ndx +Name
/testsuite/ld-cris/tls-local-64.d
14,7 → 14,7
Offset Info Type Sym.Value Sym. Name \+ Addend
00002290 0000001c R_CRIS_32_TPREL[ ]+0+80
 
There are no unwind sections in this file.
The decoding of unwind sections for machine type Axis Communications 32-bit embedded processor is not currently supported.
 
Symbol table '.dynsym' contains 7 entries:
Num: Value Size Type Bind Vis Ndx Name
/testsuite/ld-cris/tls-gc-71.d
17,11 → 17,11
DYNAMIC SYMBOL TABLE:
0+18e l d .text 0+ .text
0+2194 l d .tdata 0+ .tdata
0+2280 l D \*ABS\* 0+ __bss_start
0+2280 l D \*ABS\* 0+ _edata
0+2280 l D \*ABS\* 0+ _end
0+18e g DF .text 0+2 _init
0+2280 g D \*ABS\* 0+ __bss_start
0+ g D .tdata 0+80 tls128
0+2280 g D \*ABS\* 0+ _edata
0+2280 g D \*ABS\* 0+ _end
 
DYNAMIC RELOCATION RECORDS \(none\)
#...
/testsuite/ld-cris/tls-und-38.d
13,7 → 13,7
Offset +Info +Type +Sym.Value +Sym. Name \+ Addend
000021ec +00000217 R_CRIS_DTP +00000000 +x \+ 0
 
There are no unwind sections in this file.
The decoding of unwind sections for machine type Axis Communications 32-bit embedded processor is not currently supported.
 
Symbol table '.dynsym' contains . entries:
+Num: +Value +Size +Type +Bind +Vis +Ndx +Name
/testsuite/ld-cris/tls-gc-75.d
24,11 → 24,11
SYMBOL TABLE:
0+80074 l d .text 0+ .text
0+82078 l d .got 0+ .got
0+82084 l \*ABS\* 0+ __bss_start
0+82084 l \*ABS\* 0+ _edata
0+82078 l O .got 0+ _GLOBAL_OFFSET_TABLE_
0+820a0 l \*ABS\* 0+ _end
0+80074 g .text 0+ _start
0+82084 g \*ABS\* 0+ __bss_start
0+82084 g \*ABS\* 0+ _edata
0+820a0 g \*ABS\* 0+ _end
 
Contents of section .text:
80074 41b20+ .*
/testsuite/ld-cris/tls-gc-79.d
22,11 → 22,11
SYMBOL TABLE:
0+80074 l d .text 0+ .text
0+82078 l d .got 0+ .got
0+82084 l \*ABS\* 0+ __bss_start
0+82084 l \*ABS\* 0+ _edata
0+82078 l O .got 0+ _GLOBAL_OFFSET_TABLE_
0+820a0 l \*ABS\* 0+ _end
0+80074 g .text 0+ _start
0+82084 g \*ABS\* 0+ __bss_start
0+82084 g \*ABS\* 0+ _edata
0+820a0 g \*ABS\* 0+ _end
 
Contents of section .text:
80074 41b20+ .*
/testsuite/ld-cris/tls-gc-76.d
23,11 → 23,11
0+82080 l d .got 0+ .got
0+82090 l d .data 0+ .data
0+82090 l O .data 0+4 gc76var
0+82094 l \*ABS\* 0+ __bss_start
0+82094 l \*ABS\* 0+ _edata
0+82080 l O .got 0+ _GLOBAL_OFFSET_TABLE_
0+820a0 l \*ABS\* 0+ _end
0+80074 g .text 0+ _start
0+82094 g \*ABS\* 0+ __bss_start
0+82094 g \*ABS\* 0+ _edata
0+820a0 g \*ABS\* 0+ _end
0+80078 g F .text 0+6 gc76fn
 
Contents of section .text:
/testsuite/ld-cris/tls-gc-68.d
21,11 → 21,11
SYMBOL TABLE:
0+80074 l d .text 0+ .text
0+82078 l d .got 0+ .got
0+82084 l \*ABS\* 0+ __bss_start
0+82084 l \*ABS\* 0+ _edata
0+82078 l O .got 0+ _GLOBAL_OFFSET_TABLE_
0+820a0 l \*ABS\* 0+ _end
0+80074 g .text 0+ _start
0+82084 g \*ABS\* 0+ __bss_start
0+82084 g \*ABS\* 0+ _edata
0+820a0 g \*ABS\* 0+ _end
 
Contents of section .text:
80074 41b20+ .*
/testsuite/ChangeLog-2011
0,0 → 1,1276
2011-12-15 David Daney <david.daney@cavium.com>
Nick Clifton <nickc@redhat.com>
 
* ld-elfvers/vers.exp (picflag): Set to -fpic for mips*-*-* when
using GCC-4.3 or later.
(pic): Set to "yes" for mips*-*-linux*.
* ld-elfvsb/elfvsb.exp: Don't test non-PIC shared libraried on
mips*-*-linux*.
(picflag): Set to -fpic for mips*-*-* when using GCC-4.3 or later.
* ld-elfweak/elfweak.exp (picflag): Set to -fpic for mips*-*-*
when using GCC-4.3 or later.
* ld-shared/shared.exp (picflag): Same.
* lib/ld-lib.exp (at_least_gcc_version): New proc.
 
2011-12-10 David Daney <david.daney@cavium.com>
 
* ld-mips-elf/pic-and-nonpic-6-n64.dd: Use correct encoding for
64-bit MOVE instruction.
 
2011-12-09 David Daney <david.daney@cavium.com>
 
* ld-mips-elf/tls-multi-got-1.r: Add "0x" to match value for
MIPS_BASE_ADDRESS.
* ld-mips-elf/textrel-1.d: Same.
* ld-mips-elf/multi-got-1.d: Same.
 
2011-12-05 Nick Clifton <nickc@redhat.com>
 
* ld-cris/weakref4.d: Updated pattern match for the message from
readelf stating that there are no decoded unwind sections.
* tls-js1.d: Likewise.
* tls-local-63.d: Likewise.
* tls-local-64.d: Likewise.
* tls-und-38.d: Likewise.
* tls-und-42.d: Likewise.
* tls-und-46.d: Likewise.
* tls-und-50.d: Likewise.
* weakref3.d: Likewise.
* weakref4.d: Likewise.
 
2011-12-03 David Daney <david.daney@cavium.com>
 
* ld-bootstrap/bootstrap.exp: Use consistent flags for final link
in ia64 and mips cases.
 
2011-11-29 Maciej W. Rozycki <macro@codesourcery.com>
 
PR ld/10144
* lib/ld-lib.exp (run_ld_link_tests): Handle sources from other
directories.
(run_ld_link_exec_tests): Likewise.
(run_cc_link_tests): Likewise.
* ld-elf/comm-data1.sd: New test.
* ld-elf/comm-data1.s: Source for the new test.
* ld-elf/comm-data2.sd: New test.
* ld-elf/comm-data2.rd: Likewise.
* ld-elf/comm-data2.xd: Likewise.
* ld-elf/comm-data2.s: Source for the new tests.
* ld-elf/comm-data.exp: New file.
* ld-mips-elf/comm-data.exp: Likewise.
 
2011-11-09 Matthew Gretton-Dann <matthew.gretton-dann@arm.com>
 
* ld-arm/jump-reloc-veneers.s: Update for changes to assembler output.
 
2011-11-08 Alan Modra <amodra@gmail.com>
 
* ld-powerpc/powerpc.exp: Expect ld warnings for tocopt test.
* ld-powerpc/tocopt.out: New file.
 
2011-10-25 Joern Rennecke <joern.rennecke@embecosm.com>
 
* ld-srec/srec.exp: xfail epiphany.
* lib/ld-lib.exp (check_shared_lib_support): Add Epiphany to list
of targets not supporting shared libraries.
 
2011-10-21 H.J. Lu <hongjiu.lu@intel.com>
 
PR ld/13302
* ld-i386/i386.exp: Run pr13302.
 
* ld-i386/pr13302.d: New.
* ld-i386/pr13302.s: Likewise.
 
* ld-x86-64/pr13082-5b.d: Updated.
* ld-x86-64/pr13082-6a.d: Likewise.
* ld-x86-64/pr13082-6b.d: Likewise.
 
2011-10-21 H.J. Lu <hongjiu.lu@intel.com>
 
PR ld/13302
* ld-ifunc/ifunc-16-i386.d: New.
* ld-ifunc/ifunc-16-x86-64.d: Likewise.
* ld-ifunc/ifunc-16-x86.s: Likewise.
 
2011-10-20 Alan Modra <amodra@gmail.com>
 
* ld-selective/selective.exp: Use check_gc_sections_available.
Remove redundant xfails.
* ld-selective/sel-dump.exp: Likewise.
 
2011-10-19 Alan Modra <amodra@gmail.com>
 
* ld-elf/elf.exp: Move test for shared lib support..
* lib/ld-lib.exp (check_shared_lib_support): ..to here. Add m68hc1*,
and s/ms1/mt/.
(check_gc_sections_available): Match hppa*64 not hppa64. Comment.
* ld-gc/libpersonality.s: New.
* ld-gc/personality.s, * ld-gc/personality.d: New.
* ld-gc/gc.exp: Run personality test.
 
2011-10-18 David S. Miller <davem@davemloft.net>
 
* ld-sparc/tlssunbin32.dd: Update for TLS call relaxation fix
for PR 13301.
* ld-sparc/tlssunbin64.dd: Likewise.
* ld-sparc/tlssunpic32.dd: Likewise.
* ld-sparc/tlssunpic64.dd: Likewise.
 
2011-10-18 Jie Zhang <jie@codesourcery.com>
Julian Brown <julian@codesourcery.com>
 
* ld-arm/cortex-a8-fix-b-plt.d: Adjust.
* ld-arm/cortex-a8-fix-bcc-plt.d: Adjust.
* ld-arm/cortex-a8-fix-bl-plt.d: Adjust.
* ld-arm/cortex-a8-fix-bl-rel-plt.d: Adjust.
* ld-arm/cortex-a8-fix-blx-plt.d: Adjust.
* ld-arm/ifunc-1.dd: Adjust.
* ld-arm/ifunc-2.dd: Adjust.
* ld-arm/ifunc-3.dd: Adjust.
* ld-arm/ifunc-4.dd: Adjust.
* ld-arm/ifunc-5.dd: Adjust.
* ld-arm/ifunc-6.dd: Adjust.
* ld-arm/ifunc-7.dd: Adjust.
* ld-arm/ifunc-8.dd: Adjust.
* ld-arm/ifunc-9.dd: Adjust.
* ld-arm/ifunc-10.dd: Adjust.
* ld-arm/ifunc-14.dd: Adjust.
* ld-arm/ifunc-15.dd: Adjust.
* ld-arm/ifunc-16.dd: Adjust.
 
2011-10-14 Hans-Peter Nilsson <hp@axis.com>
 
* ld-cris/pic-gc-72.d: Adjust for dropping unused undefined
dynamic symbol "dsofn".
 
2011-10-10 Alan Modra <amodra@gmail.com>
 
* ld-powerpc/relbrlt.d: Update for stub alignment change.
* ld-powerpc/tlsexe.g: Likewise.
* ld-powerpc/tlsexe.r: Likewise.
* ld-powerpc/tlsexetoc.g: Likewise.
* ld-powerpc/tlsexetoc.r: Likewise.
* ld-powerpc/tlsso.g: Likewise.
* ld-powerpc/tlsso.r: Likewise.
 
2011-10-08 H.J. Lu <hongjiu.lu@intel.com>
 
PR ld/13250
* ld-elf/shared.exp (build_tests): Add tests for PR ld/13250.
(run_tests): Likewise.
 
* ld-elf/pr13250-1.c: New.
* ld-elf/pr13250-2.c: Likewise.
* ld-elf/pr13250-3.c: Likewise.
 
2011-10-07 H.J. Lu <hongjiu.lu@intel.com>
 
* ld-elf/elf.exp: Run --gc-sections tests only if --gc-sections
is available.
 
2011-10-06 Alan Modra <amodra@gmail.com>
 
* ld-plugin/plugin-1.d, * ld-plugin/plugin-2.d, * ld-plugin/plugin-3.d,
* ld-plugin/plugin-4.d, * ld-plugin/plugin-5.d, * ld-plugin/plugin-6.d,
* ld-plugin/plugin-7.d, * ld-plugin/plugin-8.d, * ld-plugin/plugin-9.d,
* ld-plugin/plugin-10.d, * ld-plugin/plugin-11.d: Update.
 
2011-10-05 Nick Clifton <nickc@redhat.com>
 
* ld-scripts/phdrs.exp: Expect to fail for the RX.
 
2011-09-30 Alan Modra <amodra@gmail.com>
 
* ld-powerpc/tocopt.d: Update.
* ld-powerpc/tocopt5.d, * ld-powerpc/tocopt5.s: New test.
* ld-powerpc/powerpc.exp: Run new test.
 
2011-09-29 H.J. Lu <hongjiu.lu@intel.com>
 
PR ld/13195
* ld-elf/elf.exp: Add a C link testcase for PR ld/13195.
 
* ld-elf/pr13195.c: New.
* ld-elf/pr13195.d: Likewise.
* ld-elf/pr13195.s: Likewise.
* ld-elf/pr13195.t: Likewise.
 
2011-09-16 H.J. Lu <hongjiu.lu@intel.com>
 
* ld-elf/pr12975.d: Only run for *-*-linux* and *-*-gnu*
targets.
* ld-elf/pr13177.d: Likewise.
 
* ld-elf/pr13177.s: Avoid relocations in text sections.
 
2011-09-15 H.J. Lu <hongjiu.lu@intel.com>
 
PR ld/13177
* ld-elf/pr13177.d: New.
* ld-elf/pr13177.s: Likewise.
 
2011-09-15 H.J. Lu <hongjiu.lu@intel.com>
 
PR ld/12975
* ld-elf/pr12975.d: New.
* ld-elf/pr12975.s: Likewise.
* ld-elf/pr12975.t: Likewise.
 
2011-09-12 H.J. Lu <hongjiu.lu@intel.com>
 
PR ld/13178
* ld-ifunc/ifunc-13-i386.d: Updated.
* ld-ifunc/ifunc-13-x86-64.d: Likewise.
* ld-ifunc/ifunc-3a-x86.d: Likewise.
* ld-x86-64/pr13082-5a.d: Likewise.
 
* ld-ifunc/ifunc-15-i386.d: New.
* ld-ifunc/ifunc-15-i386.s: Likewise.
* ld-ifunc/ifunc-15-x86-64.d: Likewise.
* ld-ifunc/ifunc-15-x86-64.s: Likewise.
 
2011-09-01 Christophe Lyon <christophe.lyon@st.com>
 
* ld-arm/arm-elf.exp: Add new rodata-merge-map test.
* ld-arm/rodata-merge-map.ld: New file.
* ld-arm/rodata-merge-map.sym: Likewise.
* ld-arm/rodata-merge-map1.s Likewise.
* ld-arm/rodata-merge-map2.s: Likewise.
* ld-arm/rodata-merge-map3.s: Likewise.
 
2011-08-22 Alan Modra <amodra@gmail.com>
 
* ld-powerpc/tocopt4a.s, * ld-powerpc/tocopt4b.s,
* ld-powerpc/tocopt4.d: New test.
* ld-powerpc/powerpc.exp: Run it.
 
2011-08-12 H.J. Lu <hongjiu.lu@intel.com>
 
PR ld/13082
* ld-x86-64/pr13082-1.s: New.
* ld-x86-64/pr13082-1a.d: Likewise.
* ld-x86-64/pr13082-1b.d: Likewise.
* ld-x86-64/pr13082-2.s: Likewise.
* ld-x86-64/pr13082-2a.d: Likewise.
* ld-x86-64/pr13082-2b.d: Likewise.
* ld-x86-64/pr13082-3.s: Likewise.
* ld-x86-64/pr13082-3a.d: Likewise.
* ld-x86-64/pr13082-3b.d: Likewise.
* ld-x86-64/pr13082-4.s: Likewise.
* ld-x86-64/pr13082-4a.d: Likewise.
* ld-x86-64/pr13082-4b.d: Likewise.
* ld-x86-64/pr13082-5.s: Likewise.
* ld-x86-64/pr13082-5a.d: Likewise.
* ld-x86-64/pr13082-5b.d: Likewise.
* ld-x86-64/pr13082-6.s: Likewise.
* ld-x86-64/pr13082-6a.d: Likewise.
* ld-x86-64/pr13082-6b.d: Likewise.
 
* ld-x86-64/x86-64.exp: Run pr13082-[1-6][ab].
 
2011-08-09 Matthew Gretton-Dann <matthew.gretton-dann@arm.com>
 
* ld-arm/arm-elf.exp (armelftests): Update for new command-line
options.
(armeabitests): Update for new command-line options, and add
new test cases.
* ld-arm/fix-arm1176.s: Add test case.
* ld-arm/fix-arm1176-off.d: Likewise.
* ld-arm/fix-arm1176-on.d: Likewise.
 
2011-08-05 Alan Modra <amodra@gmail.com>
 
* ld-powerpc/tlsexe.r: Update for stripped .branch_lt.
* ld-powerpc/tlsexetoc.r: Likewise.
* ld-powerpc/tlsso.r: Likewise.
* ld-powerpc/tlstocso.r: Likewise.
 
2011-08-01 H.J. Lu <hongjiu.lu@intel.com>
 
PR ld/13048
* ld-x86-64/ilp32-6.d: New.
* ld-x86-64/ilp32-6.s: Likewise.
* ld-x86-64/ilp32-7.d: Likewise.
* ld-x86-64/ilp32-7.s: Likewise.
* ld-x86-64/ilp32-8.d: Likewise.
* ld-x86-64/ilp32-8.s: Likewise.
* ld-x86-64/ilp32-9.d: Likewise.
* ld-x86-64/ilp32-9.s: Likewise.
 
* ld-x86-64/x86-64.exp: Run ilp32-6, ilp32-7, ilp32-8 and ilp32-9.
 
2011-07-27 Roland McGrath <mcgrathr@google.com>
 
* ld-i386/vxworks1-lib.rd: Swap order of sections expected in output.
 
2011-07-26 Alan Modra <amodra@gmail.com>
 
* ld-powerpc/powerpc.exp: Use --no-ld-generated-unwind-info
with some tests.
* ld-powerpc/relbrlt.d: Likewise.
 
2011-07-25 Hans-Peter Nilsson <hp@bitrange.com>
 
PR ld/12815
* ld-mmix/pr12815-1.d, ld-mmix/pr12815-1.s, ld-mmix/pr12815-1.ld,
ld-mmix/pr12815-2.d, ld-mmix/pr12815-2.s: New tests.
 
2011-07-24 Catherine Moore <clm@codesourcery.com>
Chao-ying Fu <fu@mips.com>
Maciej W. Rozycki <macro@codesourcery.com>
 
* lib/ld-lib.exp (run_dump_test): Support distinct assembler
flags for the same source named multiple times.
* ld-mips-elf/jalx-1.s: New test source.
* ld-mips-elf/jalx-1.d: New test output.
* ld-mips-elf/jalx-1.ld: New test linker script.
* ld-mips-elf/jalx-2-main.s: New test source.
* ld-mips-elf/jalx-2-ex.s: Likewise.
* ld-mips-elf/jalx-2-printf.s: Likewise.
* ld-mips-elf/jalx-2.dd: New test output.
* ld-mips-elf/jalx-2.ld: New test linker script.
* ld-mips-elf/mips16-and-micromips.d: New test.
* ld-mips-elf/mips-elf.exp: Run the new tests
 
2011-07-22 H.J. Lu <hongjiu.lu@intel.com>
 
* ld-x86-64/abs-k1om.d: New.
* ld-x86-64/protected2-k1om.d: Likewise.
* ld-x86-64/protected3-k1om.d: Likewise.
 
* ld-x86-64/x86-64.exp: Run abs-k1om, protected2-k1om and
protected3-k1om.
 
2011-07-14 H.J. Lu <hongjiu.lu@intel.com>
 
* ld-elf/binutils.exp (binutils_test): Also check ignored
"-z relro".
 
2011-07-14 Alan Modra <amodra@gmail.com>
 
* ld-scripts/section-flags.exp: Pass --local-store 0:0 for
spu. Rewrite using foreach.
 
2011-07-14 Alan Modra <amodra@gmail.com>
 
* ld-powerpc/tlsexe.d, * ld-powerpc/tlsexe.g. *ld-powerpc/tlsexe.r,
* ld-powerpc/tlsexetoc.d, * ld-powerpc/tlsexetoc.g,
* ld-powerpc/tlsexetoc.r, * ld-powerpc/tlsso.d,
* ld-powerpc/tlstocso.d: Update for plt stub change.
 
2011-07-11 Catherine Moore <clm@cm00re.com>
 
* ld-scripts/section-flags-1.s: New.
* ld-scripts/section-flags-1.t: New.
* ld-scripts/section-flags-2.s: New.
* ld-scripts/section-flags-2.t: New.
* ld-scripts/section-flags.exp: New.
 
2011-07-11 Alan Modra <amodra@gmail.com>
 
* ld-powerpc/tocopt2.s, * ld-powerpc/tocopt2.out,
* ld-powerpc/tocopt2.d: New test.
* ld-powerpc/tocopt3.s, * ld-powerpc/tocopt3.d: New test.
* ld-powerpc/powerpc.exp (ppc64elftests) Run them.
 
2011-07-03 Samuel Thibault <samuel.thibault@gnu.org>
Thomas Schwinge <thomas@schwinge.name>
 
PR binutils/12913
* ld-ifunc/ifunc.exp: Update for changed output.
* ld-unique/unique.exp: Likewise.
 
2011-06-27 Nick Clifton <nickc@redhat.com>
 
* ld-elf/elf.exp: Exlcude all v850 targets from note-3 test.
 
2011-06-27 Alan Modra <amodra@gmail.com>
 
* ld-elf/elf.exp: Exclude more targets from note-3 test.
 
2011-06-24 H.J. Lu <hongjiu.lu@intel.com>
 
PR ld/12921
* ld-i386/i386.exp: Run pr12921.
* ld-x86-64/x86-64.exp: Likewise.
 
* ld-i386/pr12921.d: New.
* ld-i386/pr12921.s: Likewise.
* ld-x86-64/pr12921.d: Likewise.
* ld-x86-64/pr12921.s: Likewise.
 
2011-06-22 Thomas Schwinge <thomas@schwinge.name>
 
* ld-elf/elf.exp: Execute array_tests_pie tests on *-*-gnu*, too.
 
2011-06-20 H.J. Lu <hongjiu.lu@intel.com>
 
* ld-ifunc/ifunc-1-local-x86.d: Adjusted.
* ld-ifunc/ifunc-1-x86.d: Likewise.
* ld-ifunc/ifunc-3a-x86.d: Likewise.
 
2011-06-20 H.J. Lu <hongjiu.lu@intel.com>
 
* ld-elf/eh1.d: Revert x32 change.
* ld-elf/eh2.d: Likewise.
* ld-elf/eh3.d: Likewise.
* ld-elf/eh4.d: Likewise.
 
2011-06-20 Jakub Jelinek <jakub@redhat.com>
 
PR ld/12570
* ld-x86-64/x86-64.exp: Link some testcases with
--no-ld-generated-unwind-info.
* ld-x86-64/tlsbin.rd: Add --no-ld-generated-unwind-info to ld
comment.
* ld-x86-64/tlsdesc.dd: Likewise.
* ld-x86-64/tlspic.dd: Likewise.
* ld-x86-64/tlsdesc.sd: Likewise.
* ld-x86-64/tlspic.rd: Likewise.
* ld-x86-64/tlsbindesc.rd: Likewise.
* ld-x86-64/tlsbindesc.sd: Likewise.
* ld-x86-64/tlsbin.td: Likewise.
* ld-x86-64/tlsdesc.pd: Likewise.
* ld-x86-64/tlsdesc.td: Likewise.
* ld-x86-64/tlsbindesc.dd: Likewise.
* ld-x86-64/tlsbin.dd: Likewise.
* ld-x86-64/tlsgdesc.rd: Likewise.
* ld-x86-64/tlspic.sd: Likewise.
* ld-x86-64/tlsbindesc.td: Likewise.
* ld-x86-64/tlspic.td: Likewise.
* ld-x86-64/tlsbin.sd: Likewise.
* ld-x86-64/ilp32-4.d: Likewise.
* ld-x86-64/tlsgdesc.dd: Add --no-ld-generated-unwind-info to ld
comment. Adjust.
* ld-x86-64/tlsdesc.rd: Likewise.
* ld-x86-64/tlsgd6.dd: Adjust.
* ld-x86-64/tlsgd5.dd: Likewise.
* ld-i386/i386.exp: Link some testcases with
--no-ld-generated-unwind-info.
* ld-i386/tlsbin.rd: Add --no-ld-generated-unwind-info to ld
comment..
* ld-i386/tlsdesc.dd: Likewise.
* ld-i386/tlspic.dd: Likewise.
* ld-i386/tlsdesc.sd: Likewise.
* ld-i386/tlsgdesc.dd: Likewise.
* ld-i386/tlsnopic.sd: Likewise.
* ld-i386/tlspic.rd: Likewise.
* ld-i386/tlsdesc.rd: Likewise.
* ld-i386/tlsbindesc.rd: Likewise.
* ld-i386/tlsbindesc.sd: Likewise.
* ld-i386/tlsbin.td: Likewise.
* ld-i386/tlsdesc.td: Likewise.
* ld-i386/tlsnopic.dd: Likewise.
* ld-i386/tlsbindesc.dd: Likewise.
* ld-i386/tlsbin.dd: Likewise.
* ld-i386/tlsgdesc.rd: Likewise.
* ld-i386/tlspic.sd: Likewise.
* ld-i386/tlsnopic.rd: Likewise.
* ld-i386/tlsbindesc.td: Likewise.
* ld-i386/tlspic.td: Likewise.
* ld-i386/tlsbin.sd: Likewise.
 
2011-06-19 H.J. Lu <hongjiu.lu@intel.com>
 
* ld-elf/eh1.d: Skip x32.
* ld-elf/eh2.d: Likewise.
* ld-elf/eh3.d: Likewise.
* ld-elf/eh4.d: Likewise.
 
* ld-elfvsb/elfvsb.exp: Only xfail 64bit x86_64-*-linux*.
* ld-shared/shared.exp: Likewise.
 
* ld-ifunc/ifunc-1-local-x86.d: Support x32.
* ld-ifunc/ifunc-1-x86.d: Likewise.
* ld-ifunc/ifunc-3a-x86.d: Likewise.
* ld-x86-64/pcrel16.d: Likewise.
 
* ld-x86-64/x86-64.exp (x86_64tests): Add missing -melf_x86_64.
 
2011-06-16 Alan Modra <amodra@gmail.com>
 
* ld-elfvers/vers2.ver: Don't assume any particular index for
version reference.
* ld-elfvers/vers3.ver: Likewise.
* ld-elfvers/vers19.ver: Likewise.
* ld-elfvers/vers22.ver: Likewise.
* ld-elfvers/vers27d4.ver: Likewise.
* ld-elfvers/vers28c.ver: Likewise.
 
2011-06-14 Alan Modra <amodra@gmail.com>
 
* ld-elf/elf.exp: Don't attempt to build symbol3.a for hppa64-hpux.
* ld-elf/warn3.d: Correct target selection and comment.
 
* ld-elf/pr12851.d: Correct target selection and comment.
 
2011-06-13 Walter Lee <walt@tilera.com>
 
* ld-elf/eh5.d: Don't run on tile*.
* ld-srec/srec.exp: xfail on tile*.
* ld-tilegx/external.s: New file.
* ld-tilegx/reloc.d: New file.
* ld-tilegx/reloc.s: New file.
* ld-tilegx/tilegx.exp: New file.
* ld-tilepro/external.s: New file.
* ld-tilepro/reloc.d: New file.
* ld-tilepro/reloc.s: New file.
* ld-tilepro/tilepro.exp: New file.
 
2011-06-10 Nick Clifton <nickc@redhat.com>
 
* ld-elf/elf.exp: Add test for linking a shared library with a
broken linker script that marks dynamic sections as being notes.
* ld-elf/note-3.s: New test source file.
* ld-elf/note-3.t: New test linker script.
* ld-elf/note-3.l: Expected output from the linker.
* lib/ld-lib.exp (run_ld_link_tests): Improve description.
 
2011-06-08 H.J. Lu <hongjiu.lu@intel.com>
 
* ld-x86-64/x86-64.exp: Build x32 DSO from x86-64 object file
only for native.
 
2011-06-08 H.J. Lu <hongjiu.lu@intel.com>
 
* ld-x86-64/simple.c: New.
* ld-x86-64/x86-64-x32.rd: Likewise.
 
* ld-x86-64/x86-64.exp: Check building x32 DSO from x86-64
object file.
 
2011-06-08 H.J. Lu <hongjiu.lu@intel.com>
 
PR ld/12851
* ld-elf/pr12851.d: New.
* ld-elf/pr12851.s: Likewise.
 
2011-06-07 H.J. Lu <hongjiu.lu@intel.com>
 
* ld-elf/elf.exp: Build symbol3.a and symbol3w.a.
 
* ld-elf/symbol3.s: New.
* ld-elf/symbol3w.s: Likewise.
* ld-elf/warn3.d: Likewise.
 
2011-06-02 Nathan Sidwell <nathan@codesourcery.com>
 
Adjust tests for zero offset formatting.
* ld-arm/cortex-a8-fix-bcc-plt.d: Adjust.
* ld-arm/farcall-arm-arm-pic-veneer.d: Adjust.
* ld-arm/farcall-arm-thumb.d: Adjust.
* ld-arm/farcall-group-size2.d: Adjust.
* ld-arm/farcall-group.d: Adjust.
* ld-arm/farcall-mix.d: Adjust.
* ld-arm/farcall-mix2.d: Adjust.
* ld-arm/farcall-mixed-lib-v4t.d: Adjust.
* ld-arm/farcall-mixed-lib.d: Adjust.
* ld-arm/farcall-thumb-arm-blx-pic-veneer.d: Adjust.
* ld-arm/farcall-thumb-arm-pic-veneer.d: Adjust.
* ld-arm/farcall-thumb-thumb.d: Adjust.
* ld-arm/ifunc-10.dd: Adjust.
* ld-arm/ifunc-3.dd: Adjust.
* ld-arm/ifunc-4.dd: Adjust.
* ld-arm/ifunc-5.dd: Adjust.
* ld-arm/ifunc-6.dd: Adjust.
* ld-arm/ifunc-7.dd: Adjust.
* ld-arm/ifunc-8.dd: Adjust.
* ld-arm/jump-reloc-veneers-long.d: Adjust.
* ld-arm/tls-longplt-lib.d: Adjust.
* ld-arm/tls-thumb1.d: Adjust.
 
2011-05-31 Paul Brook <paul@codesourcery.com>
 
* ld-arm/cortex-a8-far.d: Adjust expected output.
* ld-arm/arm-call1.s: Give function symbol correct type.
* ld-arm/arm-call2.s: Ditto.
* ld-arm/farcall-group4.s: Ditto.
* ld-arm/arm-elf.exp (cortex-a8-far): Define far symbols with correct
type via assembly file.
* ld-arm/cortex-a8-far-3.s: New file.
* ld-arm/abs-call-1.s: Add Thumb tests
 
2011-05-31 Paul Brook <paul@codesourcery.com>
Nathan Sidwell <nathan@codesourcery.com>
 
* ld-arm/abs-call-1.d: New.
* ld-arm/abs-call-1.s: New.
* ld-arm/arm-elf.exp: Add it.
 
2011-05-31 Paul Brook <paul@codesourcery.com>
 
* ld-arm/tls-longplt.d: Update expected output.
* ld-arm/tls-thumb1.d: Ditto.
 
2011-05-26 H.J. Lu <hongjiu.lu@intel.com>
 
PR ld/12809
* ld-x86-64/tlsbin.s: Add a test for LE with large model.
 
* ld-x86-64/tlsbin.dd: Updated.
* ld-x86-64/tlsbin.rd: Likewise.
* ld-x86-64/tlsbin.sd: Likewise.
* ld-x86-64/tlsbin.td: Likewise.
* ld-x86-64/tlsbindesc.dd: Likewise.
* ld-x86-64/tlsbindesc.rd: Likewise.
* ld-x86-64/tlsbindesc.sd: Likewise.
* ld-x86-64/tlsbindesc.td: Likewise.
 
2011-05-24 Hans-Peter Nilsson <hp@axis.com>
 
* ld-cris/tls-e-tpoffcomm1.d: Adjust for second PR12763 change,
setting TLS file offset.
 
2011-05-23 Nick Clifton <nickc@redhat.com>
 
* ld-elf/shared.exp: Revert previous delta. Do not build
libraries in a non-native environment.
 
2011-05-23 Alan Modra <amodra@gmail.com>
 
PR 12763
* ld-elf/binutils.exp: Don't run tdata3 for hppa64.
 
2011-05-21 Hans-Peter Nilsson <hp@axis.com>
 
* ld-cris/tls-e-tpoffcomm1.d: Adjust for PR12763 change removing
empty program header.
 
2011-05-21 Alan Modra <amodra@gmail.com>
 
PR 12763
* ld-elf/tdata3.s: New test.
* ld-elf/tbss3.s: New test.
* ld-elf/binutils.exp: Consolidate tbss and tdata tests.
 
2011-05-20 Bernd Schmidt <bernds@codesourcery.com>
 
* ld-tic6x/pcr-reloc.d: New test.
* ld-tic6x/pcr-reloc.s: New test.
 
2011-05-18 Nick Clifton <nickc@redhat.com>
 
PR ld/12761
* lib/ld-lib.exp (run_cc_link_tests): Add an optional 8th
parameter - an expected warning message from the linker.
* ld-elf/shared.exp (build_tests): Expect a warning message when
building the libbarw.so library.
 
* ld-elf/shared.exp: Run library building tests even when not
building a native toolchain.
 
2011-05-16 H.J. Lu <hongjiu.lu@intel.com>
 
* ld-scripts/phdrs.exp: Replace --private with
--private-headers for objdump.
* ld-scripts/phdrs2.exp: Likewise.
 
2011-05-15 Richard Sandiford <rdsandiford@googlemail.com>
 
* lib/ld-lib.exp (run_ld_link_tests): Simplify pass/fail logic.
Fail if the link command fails and if no test rules are defined.
* ld-mips-elf/reloc-6a.s, ld-mips-elf/reloc-6b.s: New tests.
* ld-mips-elf/mips-elf.exp: Run them.
 
2011-05-13 Bernd Schmidt <bernds@codesourcery.com>
 
* ld-tic6x/dsbt.ld (OUTPUT_FORMAT): Add.
* ld-tic6x/tic6x.exp: Add OSABI tests.
 
2011-05-13 Alan Modra <amodra@gmail.com>
 
* ld-elf/flags1.d: Don't xfail tic6x.
* ld-scripts/weak.exp: Correct comments. Don't xfail sh-pe. Remove
redundant xfail.
* ld-selective/sel-dump.exp: Don't xfail alpha.
* ld-selective/selective.exp: Run for alpha.
* ld-undefined/weak-undef.exp: Don't xfail hppa64.
 
2011-05-12 Bernd Schmidt <bernds@codesourcery.com>
 
* config/default.exp (ld_assemble): Pass flags parameter to
default_ld_assemble.
(ld_assemble_flags): New function.
* ld-elf/frame.exp: Pass -mpic and -mpid flags to the assembler on
tic6x.
* ld-elf/exclude.exp: Likewise.
* lib/ld-lib.exp (default_ld_assemble): Take extra argument in_flags
and pass it to the assembler.
 
2011-05-11 Richard Sandiford <rdsandiford@googlemail.com>
 
* ld-mips-elf/mips-elf.exp: Add missing $has_newabi tests.
 
2011-05-09 H.J. Lu <hongjiu.lu@intel.com>
 
* ld-elf/elf.exp (array_tests): Remove "pr12730".
(array_tests_pie): Remove "PIE pr12730".
(array_tests_static): Remove "static pr12730".
 
* ld-elf/pr12730.cc: Removed.
* ld-elf/pr12730.out: Likewise.
 
2011-05-09 Paul Brook <paul@codesourcery.com>
 
* ld-tic6x/discard-unwind.ld: New.
* ld-tic6x/unwind.ld: New.
* ld-tic6x/unwind-1.d: New test.
* ld-tic6x/unwind-1.s: New test.
* ld-tic6x/unwind-2.d: New test.
* ld-tic6x/unwind-2.s: New test.
* ld-tic6x/unwind-3.d: New test.
* ld-tic6x/unwind-3.s: New test.
* ld-tic6x/unwind-4.d: New test.
* ld-tic6x/unwind-4.s: New test.
* ld-tic6x/unwind-5.d: New test.
* ld-tic6x/unwind-5.s: New test.
* ld-tic6x/unwind-6.d: New test.
 
2011-05-07 Dave Korn <dave.korn.cygwin@gmail.com>
 
PR ld/12365
* ld-plugin/plugin-7.d: Allow underscore in error message.
* ld-plugin/plugin-8.d: Likewise.
 
2011-05-07 H.J. Lu <hongjiu.lu@intel.com>
 
PR ld/12730
* ld-elf/elf.exp (array_tests): Add "pr12730".
(array_tests_pie): New.
(array_tests_static): Add -static for "static init array mixed".
Add "static pr12730". Run array_tests_pie for Linux.
 
* ld-elf/init-mixed.c (ctor1007): Renamed to ...
(ctor1007a): This.
(ctor1007b): New.
(ctors1007): Remove ctor1007. Add ctor1007b and ctor1007a.
(dtor1007): Renamed to ...
(dtor1007a): This.
(dtor1007b): New.
(dtors1007): Remove dtor1007. Add dtor1007b and dtor1007a.
(ctor65535): Renamed to ...
(ctor65535a): This.
(ctor65535b): New.
(ctors65535): Remove ctor65535. Add ctor65535b and ctor65535a.
(dtor65535): Renamed to ...
(dtor65535a): This.
(dtor65535b): New.
(dtors65535): Remove dtor65535. Add dtor65535b and dtor65535a.
 
* ld-elf/pr12730.cc: New.
* ld-elf/pr12730.out: Likewise.
 
2011-05-06 Richard Sandiford <richard.sandiford@linaro.org>
 
* ld-arm/cortex-a8-fix-b-plt.s, ld-arm/cortex-a8-fix-b-plt.d,
ld-arm/cortex-a8-fix-bcc-plt.s, ld-arm/cortex-a8-fix-bcc-plt.d,
ld-arm/cortex-a8-fix-bl-plt.s, ld-arm/cortex-a8-fix-bl-plt.d,
ld-arm/cortex-a8-fix-blx-plt.s, ld-arm/cortex-a8-fix-blx-plt.d,
ld-arm/cortex-a8-fix-plt.ld: New tests.
* ld-arm/arm-elf.exp: Run them.
 
2011-05-05 Bernd Schmidt <bernds@codesourcery.com>
 
* ld-tic6x/shared-nopic.d: New test.
* ld-tic6x/shared-nopid.d: New test.
* ld-tic6x/attr-pid-21.d: Don't expect a warning; check readelf
output instead.
* ld-tic6x/attr-pid-12.d: Likewise.
* ld-tic6x/attr-pic-01.d: Likewise.
* ld-tic6x/attr-pic-10.d: Likewise.
* ld-tic6x/attr-pid-01.d: Likewise.
* ld-tic6x/attr-pid-10.d: Likewise.
* ld-tic6x/attr-pid-02.d: Likewise.
* ld-tic6x/attr-pid-20.d: Likewise.
* ld-tic6x/got-reloc-inrange.d: Pass -mpic and -mpid options to gas.
 
2011-05-03 Paul Brook <paul@codesourcery.com>
 
* ld-tic6x/ehtype-reloc-1-rel.d: New test.
* ld-tic6x/ehtype-reloc-1.d: New test.
* ld-tic6x/ehtype-reloc-1.s: New test.
 
2011-05-01 H.J. Lu <hongjiu.lu@intel.com>
 
PR ld/12718
* ld-i386/i386.exp: Run pr12718.
* ld-x86-64/x86-64.exp: Likewise.
 
* ld-i386/pr12718.d: New.
* ld-i386/pr12718.s: Likewise.
* ld-x86-64/pr12718.d: Likewise.
* ld-x86-64/pr12718.s: Likewise.
 
2011-04-26 Kai Tietz <ktietz@redhat.com>
 
* ld-pe/pe.exp: Add cfi/cfi32 tests.
* ld-pe/cfi.d: New.
* ld-pe/cfi32.d: New.
* ld-pe/cfia.s: New.
* ld-pe/cfib.s: New.
 
2011-04-21 H.J. Lu <hongjiu.lu@intel.com>
 
PR ld/12694
* ld-ifunc/ifunc-14-i386.d: New.
* ld-ifunc/ifunc-14-x86-64.d: Likewise.
* ld-ifunc/ifunc-14a.s: Likewise.
* ld-ifunc/ifunc-14b.s: Likewise.
 
2011-04-19 H.J. Lu <hongjiu.lu@intel.com>
 
* ld-plugin/plugin-ignore.d: Removed.
 
2011-04-18 H.J. Lu <hongjiu.lu@intel.com>
 
* ld-plugin/plugin-7.d: Update expected LTO linker errors for
GCC 4.6.
* ld-plugin/plugin-8.d: Likewise.
 
2011-04-18 Alan Modra <amodra@gmail.com>
 
* ld-plugin/plugin-7.d: Adjust for plugin changes.
* ld-plugin/plugin-8.d: Likewise.
* ld-plugin/plugin.exp: Pass --verbose=2 for visibility test, and
compare ld output to..
* ld-plugin/plugin-12.d: New.
 
2011-04-15 Maxim Kuvyrkov <maxim@codesourcery.com>
 
* ld-m68k/tls-gd-ie-1.d: Stabilize test.
* ld-m68k/tls-gd-3.[sd]: New test.
 
2011-04-12 Richard Henderson <rth@redhat.com>
 
* ld-alpha/emptygot.s, ld-alpha/emptygot.nm: New test.
* ld-alpha/alpha.exp: Run it.
 
2011-04-11 Mark Wielaard <mjw@redhat.com>
 
PR 10549
* ld-unique: New directory.
* ld-unique/unique.exp: New file: Run the UNIQUE tests.
* ld-unique/unique.s: New test file.
* ld-unique/unique_empty.s: Likewise.
* ld-unique/unique_shared.s: Likewise.
 
2011-04-11 Alan Modra <amodra@gmail.com>
 
* ld-elf/eh-frame-hdr.d: xfail avr.
 
2011-04-08 H.J. Lu <hongjiu.lu@intel.com>
 
PR ld/12654
* ld-i386/i386.exp: Run tlspie2.
 
* ld-i386/tlspie2.d: New.
* ld-i386/tlspie2.s: Likewise.
 
2011-04-06 Joseph Myers <joseph@codesourcery.com>
 
* ld-selective/selective.exp (xscale-*-*): Don't handle.
* ld-srec/srec.exp (strongarm*-*-*, xscale*-*-*, thumb-*-*): Don't
handle.
(*arm*-*-*): Change to arm*-*-*.
(strongarm*-*-coff, xscale*-*-coff, thumb-*-coff*, thumb-*-pe*,
thumb-*-elf*, strongarm*-*-*, thumb-*-*): Remove xfails.
* ld-undefined/undefined.exp (thumb*-*-pe*, thumb*-*-pe*): Remove
commented-out xfails.
(thumb-elf): Remove reference in comment.
* lib/ld-lib.exp (strongarm*-*-*, xscale*-*-*, thumb-*-*): Don't
handle.
 
2011-04-04 H.J. Lu <hongjiu.lu@intel.com>
 
PR ld/12627
* ld-i386/i386.exp: Run pr12627.
 
* ld-i386/pr12627.d: New.
* ld-i386/pr12627.s: Likewise.
* ld-i386/pr12627.t: Likewise.
 
2011-03-31 Bernd Schmidt <bernds@codesourcery.com>
 
* ld-scripts/crossref.exp: Add CFLAGS for tic6x*-*-*.
* ld-elf/sec-to-seg.exp: Remove tic6x from list of targets defining
pagesize to 1.
* ld-tic6x/tic6x.exp: Add support for DSBT shared library/executable
linking tests.
* ld-tic6x/dsbt.ld: New linker script.
* ld-tic6x/dsbt-be.ld: New linker script.
* ld-tic6x/dsbt-overflow.ld: New linker script.
* ld-tic6x/dsbt-inrange.ld: New linker script.
* ld-tic6x/shlib-1.s: New test.
* ld-tic6x/shlib-2.s: New test.
* ld-tic6x/shlib-app-1r.s: New test.
* ld-tic6x/shlib-app-1.s: New test.
* ld-tic6x/shlib-1.sd: New test.
* ld-tic6x/shlib-1.dd: New test.
* ld-tic6x/shlib-app-1.rd: New test.
* ld-tic6x/shlib-app-1rb.rd: New test.
* ld-tic6x/shlib-app-1.sd: New test.
* ld-tic6x/static-app-1rb.od: New test.
* ld-tic6x/shlib-app-1.dd: New test.
* ld-tic6x/shlib-app-1rb.sd: New test.
* ld-tic6x/static-app-1b.od: New test.
* ld-tic6x/static-app-1r.od: New test.
* ld-tic6x/shlib-1rb.rd: New test.
* ld-tic6x/shlib-app-1rb.dd: New test.
* ld-tic6x/shlib-1rb.sd: New test.
* ld-tic6x/shlib-1rb.dd: New test.
* ld-tic6x/shlib-app-1b.od: New test.
* ld-tic6x/tic6x.exp: New test.
* ld-tic6x/static-app-1rb.rd: New test.
* ld-tic6x/shlib-app-1r.od: New test.
* ld-tic6x/static-app-1.od: New test.
* ld-tic6x/static-app-1b.rd: New test.
* ld-tic6x/static-app-1r.rd: New test.
* ld-tic6x/static-app-1rb.sd: New test.
* ld-tic6x/static-app-1b.sd: New test.
* ld-tic6x/static-app-1rb.dd: New test.
* ld-tic6x/static-app-1r.sd: New test.
* ld-tic6x/static-app-1b.dd: New test.
* ld-tic6x/shlib-1b.rd: New test.
* ld-tic6x/static-app-1r.dd: New test.
* ld-tic6x/shlib-app-1b.rd: New test.
* ld-tic6x/shlib-1r.rd: New test.
* ld-tic6x/shlib-app-1r.rd: New test.
* ld-tic6x/shlib-1b.sd: New test.
* ld-tic6x/static-app-1.rd: New test.
* ld-tic6x/shlib-app-1b.sd: New test.
* ld-tic6x/shlib-1r.sd: New test.
* ld-tic6x/shlib-1b.dd: New test.
* ld-tic6x/shlib-app-1r.sd: New test.
* ld-tic6x/shlib-app-1b.dd: New test.
* ld-tic6x/shlib-1r.dd: New test.
* ld-tic6x/static-app-1.sd: New test.
* ld-tic6x/shlib-app-1r.dd: New test.
* ld-tic6x/static-app-1.dd: New test.
* ld-tic6x/shlib-noindex.rd: New test.
* ld-tic6x/shlib-noindex.dd: New test.
* ld-tic6x/shlib-noindex.sd: New test.
* ld-tic6x/got-reloc-local-1.s: New test.
* ld-tic6x/got-reloc-local-2.s: New test.
* ld-tic6x/got-reloc-local-r.d: New test.
* ld-tic6x/got-reloc-global.s: New test.
* ld-tic6x/got-reloc-global-addend-1.d: New test.
* ld-tic6x/got-reloc-global-addend-1.s: New test.
* ld-tic6x/got-reloc-global-addend-2.d: New test.
* ld-tic6x/got-reloc-inrange.d: New test.
* ld-tic6x/got-reloc-overflow.d: New test.
* ld-tic6x/got-reloc-global-addend-2.s: New test.
* ld-tic6x/dsbt-index-error.d: New test.
* ld-tic6x/dsbt-index.d: New test.
* ld-tic6x/dsbt-index.s: New test.
* ld-tic6x/shlib-app-1.od: New test.
* ld-tic6x/shlib-app-1rb.od: New test.
* ld-tic6x/shlib-1.rd: New test.
* ld-tic6x/weak.d: New test.
* ld-tic6x/weak-be.d: New test.
* ld-tic6x/weak.s: New test.
* ld-tic6x/weak-data.d: New test.
* ld-tic6x/common.d: New test.
* ld-tic6x/common.ld: New test.
* ld-tic6x/common.s: New test.
 
2011-03-30 Richard Henderson <rth@redhat.com>
 
* ld-elf/elf.exp: Force 32-bit start address for alpha.
* ld-elf/group8a.d: Don't disable for alpha.
* ld-elf/group8b.d: Likewise.
* ld-gc/start.s: Use .dc.a instead of .long.
 
2011-03-24 Alan Modra <amodra@gmail.com>
 
* ld-powerpc/tlsmark.s: Delete non-optimizable section.
* ld-powerpc/tlsmark32.s: Likewise.
* ld-powerpc/tlsmark.d: Adjust to suit.
* ld-powerpc/tlsmark32.d: Likewise.
* ld-powerpc/tlsopt1.d, * ld-powerpc/tlsopt1.s: New.
* ld-powerpc/tlsopt2.d, * ld-powerpc/tlsopt2.s: New.
* ld-powerpc/tlsopt3.d, * ld-powerpc/tlsopt3.s: New.
* ld-powerpc/tlsopt4.d, * ld-powerpc/tlsopt4.s: New.
* ld-powerpc/tlsopt1_32.d, * ld-powerpc/tlsopt1_32.s: New.
* ld-powerpc/tlsopt2_32.d, * ld-powerpc/tlsopt2_32.s: New.
* ld-powerpc/tlsopt3_32.d, * ld-powerpc/tlsopt3_32.s: New.
* ld-powerpc/tlsopt4_32.d, * ld-powerpc/tlsopt4_32.s: New.
* ld-powerpc/powerpc.exp: Run new tests.
 
2011-03-15 Mike Frysinger <vapier@gentoo.org>
 
* ld-elfvers/vers.exp (vers19): Add -Wl,-rpath-link,. to linker flags.
 
2011-03-14 Richard Sandiford <richard.sandiford@linaro.org>
 
* ld-arm/ifunc-1.s, ld-arm/ifunc-1.dd, ld-arm/ifunc-1.gd,
ld-arm/ifunc-1.rd, ld-arm/ifunc-2.s, ld-arm/ifunc-2.dd,
ld-arm/ifunc-2.gd, ld-arm/ifunc-2.rd, ld-arm/ifunc-3.s,
ld-arm/ifunc-3.dd, ld-arm/ifunc-3.gd, ld-arm/ifunc-3.rd,
ld-arm/ifunc-4.s, ld-arm/ifunc-4.dd, ld-arm/ifunc-4.gd,
ld-arm/ifunc-4.rd, ld-arm/ifunc-5.s, ld-arm/ifunc-5.dd,
ld-arm/ifunc-5.gd, ld-arm/ifunc-5.rd, ld-arm/ifunc-6.s,
ld-arm/ifunc-6.dd, ld-arm/ifunc-6.gd, ld-arm/ifunc-6.rd,
ld-arm/ifunc-7.s, ld-arm/ifunc-7.dd, ld-arm/ifunc-7.gd,
ld-arm/ifunc-7.rd, ld-arm/ifunc-8.s, ld-arm/ifunc-8.dd,
ld-arm/ifunc-8.gd, ld-arm/ifunc-8.rd, ld-arm/ifunc-9.s,
ld-arm/ifunc-9.dd, ld-arm/ifunc-9.gd, ld-arm/ifunc-9.rd,
ld-arm/ifunc-10.s, ld-arm/ifunc-10.dd, ld-arm/ifunc-10.gd,
ld-arm/ifunc-10.rd, ld-arm/ifunc-11.s, ld-arm/ifunc-11.dd,
ld-arm/ifunc-11.gd, ld-arm/ifunc-11.rd, ld-arm/ifunc-12.s,
ld-arm/ifunc-12.dd, ld-arm/ifunc-12.gd, ld-arm/ifunc-12.rd,
ld-arm/ifunc-13.s, ld-arm/ifunc-13.dd, ld-arm/ifunc-13.gd,
ld-arm/ifunc-13.rd, ld-arm/ifunc-14.s, ld-arm/ifunc-14.dd,
ld-arm/ifunc-14.gd, ld-arm/ifunc-14.rd, ld-arm/ifunc-15.s,
ld-arm/ifunc-15.dd, ld-arm/ifunc-15.gd, ld-arm/ifunc-15.rd,
ld-arm/ifunc-16.s, ld-arm/ifunc-16.dd, ld-arm/ifunc-16.gd,
ld-arm/ifunc-16.rd, ld-arm/ifunc-dynamic.ld,
ld-arm/ifunc-static.ld: New tests.
* ld-arm/farcall-group.d, ld-arm/farcall-group-size2.d,
ld-arm/farcall-mixed-lib-v4t.d, ld-arm/farcall-mixed-lib.d: Update
for new stub hashes.
* ld-arm/arm-elf.exp: Run them.
 
2011-03-14 Richard Sandiford <richard.sandiford@linaro.org>
 
* ld-arm/arm-lib-plt-2a.s, ld-arm/arm-lib-plt-2b.s,
ld-arm/arm-lib-plt-2.dd, ld-arm/arm-lib-plt-2.rd: New tests.
* ld-arm/arm-elf.exp: Run them.
 
2011-03-14 Richard Sandiford <richard.sandiford@linaro.org>
 
* ld-arm/exec-got-1a.s, ld-arm/exec-got-1b.s, ld-arm/exec-got-1.d,
ld-arm/unresolved-1.s, ld-arm/unresolved-1.d,
ld-arm/unresolved-1-dyn.d: New tests.
* ld-arm/arm-elf.exp: Run them.
 
2011-03-12 H.J. Lu <hongjiu.lu@intel.com>
 
* ld-x86-64/tlsgd4.dd: New.
* ld-x86-64/tlsgd4.s: Likewise.
* ld-x86-64/tlsgd5.dd: Likewise.
* ld-x86-64/tlsgd5a.s: Likewise.
* ld-x86-64/tlsgd5b.s: Likewise.
* ld-x86-64/tlsgd6.dd: Likewise.
* ld-x86-64/tlsgd6a.s: Likewise.
* ld-x86-64/tlsgd6b.s: Likewise.
* ld-x86-64/tlsld2.dd: Likewise.
* ld-x86-64/tlsld2.s: Likewise.
 
* ld-x86-64/x86-64.exp (x86_64tests): Add tlsgd4, libtlsgd5.so,
tlsgd5, libtlsgd6.so, tlsgd6 and tlsld2.
 
2011-03-03 H.J. Lu <hongjiu.lu@intel.com>
 
* ld-x86-64/tlsie4.dd: New.
* ld-x86-64/tlsie4.s: Likewise.
 
* ld-x86-64/x86-64.exp (x86_64tests): Add tlsie4.
 
2011-02-25 H.J. Lu <hongjiu.lu@intel.com>
 
PR ld/12516
* ld-elf/dynamic1.d: New.
* ld-elf/dynamic1.ld: Likewise.
* ld-elf/dynamic1.s: Likewise.
 
2011-02-25 Alan Modra <amodra@gmail.com>
 
* ld-mn10300/i135409-3.s: Correct .size label reference.
* ld-sh/sh64/stolib.s: Likewise.
 
2011-02-23 H.J. Lu <hongjiu.lu@intel.com>
 
* ld-elf/new.cc: Don't include <exception_defines.h>.
 
2011-02-10 Alan Modra <amodra@gmail.com>
 
* ld-scripts/defined.exp: Don't run defined5 for AOUT.
* ld-scripts/defined5.s: Use .text for "defined" section.
* ld-scripts/defined5.t: Adjust.
 
* ld-gc/start.d: Exclude frv-*-linux*.
* ld-misc/defsym1.d: Likewise.
 
2011-02-09 Alan Modra <amodra@gmail.com>
 
* ld-elfvsb/elfvsb.exp: Don't run any non-PIC tests on powerpc*-linux.
* ld-gc/gc.exp: Ensure powerpc64 test continues to fail.
* ld-srec/srec.exp: Don't edit toc on powerpc64.
 
2011-01-23 Alan Modra <amodra@gmail.com>
 
* ld-scripts/sane1.d, * ld-scripts/sane1.t: New test.
* ld-scripts/expr.exp: Run it.
 
2011-01-18 H.J. Lu <hongjiu.lu@intel.com>
 
* ld-x86-64/ilp32-4.d: Updated.
 
2011-01-17 Richard Sandiford <richard.sandiford@linaro.org>
 
* ld-arm/arm-rel32.s, ld-arm/arm-rel32.d: New testcase.
* ld-arm/arm-elf.exp: Run it.
 
2011-01-17 Richard Sandiford <richard.sandiford@linaro.org>
 
* ld-arm/gc-thumb-lib.s, ld-arm/gc-thumb.s,
ld-arm/gc-thumb.d: New test.
* ld-arm/arm-elf.exp: Run it.
 
2011-01-14 H.J. Lu <hongjiu.lu@intel.com>
 
* ld-x86-64/ia32-2.d: Replace --n32 with --x32.
* ld-x86-64/ilp32-1.d: Likewise.
* ld-x86-64/ilp32-2.d: Likewise.
* ld-x86-64/ilp32-3.d: Likewise.
* ld-x86-64/ilp32-4.d: Likewise.
* ld-x86-64/ilp32-5.d: Likewise.
* ld-x86-64/lp64-3.d: Likewise.
* ld-x86-64/x86-64.exp: Likewise.
 
2011-01-14 H.J. Lu <hongjiu.lu@intel.com>
 
* ld-x86-64/ilp32-5.d: New.
* ld-x86-64/ilp32-5.s: Likewise.
 
* ld-x86-64/x86-64.exp: Run ilp32-5.
 
2011-01-13 H.J. Lu <hongjiu.lu@intel.com>
 
* ld-x86-64/ilp32-4.d: New.
 
* ld-x86-64/x86-64.exp: Run ilp32-4.
 
2011-01-13 H.J. Lu <hongjiu.lu@intel.com>
 
PR ld/12356
* ld-scripts/defined.exp: Run defined5.
 
* ld-scripts/defined5.d: New.
* ld-scripts/defined5.s: Likewise.
* ld-scripts/defined5.t: Likewise.
 
2011-01-13 H.J. Lu <hongjiu.lu@intel.com>
 
* ld-scripts/defined4.d: Xfail rs6000-*-aix*. Skip mips*-*-*
and mmix-*-*.
 
* ld-scripts/expr2.d: Xfail rs6000-*-aix* and arm-*-*aout.
 
2011-01-10 H.J. Lu <hongjiu.lu@intel.com>
 
* ld-scripts/assert.exp: Run assert2.
 
* ld-scripts/assert2.d: New.
* ld-scripts/assert2.t: Likewise.
 
2011-01-10 Nathan Sidwell <nathan@codesourcery.com>
Glauber de Oliveira Costa <glommer@gmail.com>
 
* ld-arm/arm-elf.exp: Added tests for new TLS handling
relocations.
* ld-arm/tls-descrelax-be32.d: New.
* ld-arm/tls-descrelax-be32.s: New.
* ld-arm/tls-descrelax-be8.d: New.
* ld-arm/tls-descrelax-be8.s: New.
* ld-arm/tls-descrelax-v7.d: New.
* ld-arm/tls-descrelax-v7.s: New.
* ld-arm/tls-descrelax.d: New.
* ld-arm/tls-descrelax.s: New.
* ld-arm/tls-descseq.d: New.
* ld-arm/tls-descseq.r: New.
* ld-arm/tls-descseq.s: New.
* ld-arm/tls-gdesc-got.d: New.
* ld-arm/tls-gdesc-got.s: New.
* ld-arm/tls-gdesc-nlazy.g: New.
* ld-arm/tls-gdesc-nlazy.s: New.
* ld-arm/tls-gdesc.d: New.
* ld-arm/tls-gdesc.r: New.
* ld-arm/tls-gdesc.s: New.
* ld-arm/tls-gdierelax.d: New.
* ld-arm/tls-gdierelax.s: New.
* ld-arm/tls-gdierelax2.d: New.
* ld-arm/tls-gdierelax2.s: New.
* ld-arm/tls-gdlerelax.d: New.
* ld-arm/tls-gdlerelax.s: New.
* ld-arm/tls-lib-loc.d: New.
* ld-arm/tls-lib-loc.r: New.
* ld-arm/tls-lib-loc.s: New.
* ld-arm/tls-longplt-lib.d: New.
* ld-arm/tls-longplt-lib.s: New.
* ld-arm/tls-longplt.d: New.
* ld-arm/tls-longplt.s: New.
* ld-arm/tls-mixed.r: New.
* ld-arm/tls-mixed.s: New.
* ld-arm/tls-thumb1.d: New.
* ld-arm/tls-thumb1.s: New.
* ld-arm/arm-elf.exp: New.
 
2011-01-08 Nick Clifton <nickc@redhat.com>
 
* ld-misc/defsym1.d: Add a -e linker command line option.
* ld-misc/dummy.s: Remove text.
 
2011-01-08 Nick Clifton <nickc@redhat.com>
 
PR ld/12358
PR ld/12359
* ld-elf/textaddr2.d: Fix regexp to work with hppa64 targets.
* ld-elf/textaddr6.d: Fix regexp to work with hppa64 targets.
 
2011-01-06 H.J. Lu <hongjiu.lu@intel.com>
 
PR ld/12366
PR ld/12371
* ld-ifunc/ifunc-10-i386.s: Add more tests.
* ld-ifunc/ifunc-10-x86-64.s: Likewise.
* ld-ifunc/ifunc-11-i386.s: Likewise.
* ld-ifunc/ifunc-11-x86-64.s: Likewise.
 
* ld-ifunc/ifunc-12-i386.d: New.
* ld-ifunc/ifunc-12-i386.s: Likewise.
* ld-ifunc/ifunc-12-x86-64.d: Likewise.
* ld-ifunc/ifunc-12-x86-64.s: Likewise.
* ld-ifunc/ifunc-13-i386.d: Likewise.
* ld-ifunc/ifunc-13-x86-64.d: Likewise.
* ld-ifunc/ifunc-13a-i386.s: Likewise.
* ld-ifunc/ifunc-13a-x86-64.s: Likewise.
* ld-ifunc/ifunc-13b-i386.s: Likewise.
* ld-ifunc/ifunc-13b-x86-64.s: Likewise.
 
2011-01-03 H.J. Lu <hongjiu.lu@intel.com>
 
* ld-x86-64/dummy.s: New.
* ld-x86-64/foo.s: Likewise.
* ld-x86-64/ia32-1.d: Likewise.
* ld-x86-64/ia32-2.d: Likewise.
* ld-x86-64/ia32-3.d: Likewise.
* ld-x86-64/ilp32-1.d: Likewise.
* ld-x86-64/ilp32-2.d: Likewise.
* ld-x86-64/ilp32-3.d: Likewise.
* ld-x86-64/lp64-1.d: Likewise.
* ld-x86-64/lp64-2.d: Likewise.
* ld-x86-64/lp64-3.d: Likewise.
* ld-x86-64/start.s: Likewise.
 
* ld-x86-64/x86-64.exp: Run ilp32-1, ilp32-2, ilp32-3, ia32-1,
ia32-2, ia32-3, lp64-1, lp64-2 and lp64-3.
 
2011-01-02 H.J. Lu <hongjiu.lu@intel.com>
 
PR ld/12001
* ld-misc/defsym.exp: New.
* ld-misc/defsym1.d: Likewise.
* ld-misc/dummy.s: Likewise.
* ld-misc/foo.s: Likewise.
* ld-misc/start.s: Likewise.
 
For older changes see ChangeLog-2010
Local Variables:
mode: change-log
left-margin: 8
fill-column: 74
version-control: never
End:
/testsuite/ld-x86-64/ilp32-10.d
0,0 → 1,3
#as: --x32
#ld: -shared -melf32_x86_64
#error: .*relocation R_X86_64_PC32 against undefined symbol `bar' can not be used when making a shared object; recompile with -fPIC
/testsuite/ld-x86-64/ilp32-10.s
0,0 → 1,3
.globl foo
foo:
mov bar(%rip), %rax
/testsuite/ld-x86-64/x86-64.exp
111,6 → 111,10
{"TLS X32 LD->LE transition" "-melf32_x86_64"
"--x32" {tlsld2.s}
{{objdump -dwr tlsld2.dd}} "tlsld2"}
{"build 32-bit object with 33 locals" "-e 0" "--32" {32bit.s} {{ ld incompatible.l }} "dummy" }
{"build 64-bit object" "-e 0 --defsym foo=1" "--64" {64bit.s} {} "dummy" }
{"link mixed objects" "-e 0 tmpdir/32bit.o tmpdir/64bit.o" "" {} { { ld incompatible.l } } "mixed"}
}
 
run_ld_link_tests $x86_64tests
207,6 → 211,7
run_dump_test "ilp32-7"
run_dump_test "ilp32-8"
run_dump_test "ilp32-9"
run_dump_test "ilp32-10"
run_dump_test "ia32-1"
run_dump_test "ia32-2"
run_dump_test "ia32-3"
/testsuite/ld-x86-64/tlsbin.dd
174,9 → 174,7
401136: 90[ ]+nop *
401137: c9[ ]+leaveq *
401138: c3[ ]+retq *
401139: 90[ ]+nop *
40113a: 90[ ]+nop *
40113b: 90[ ]+nop *
401139: 0f 1f 00[ ]+nopl \(%rax\)
 
0+40113c <_start>:
40113c: 55[ ]+push %rbp
/testsuite/ld-x86-64/64bit.s
0,0 → 1,4
.text
bar:
call foo
 
/testsuite/ld-x86-64/ilp32-4.d
1,36 → 1,30
#source: start.s
#as: --x32
#ld: -m elf32_x86_64 -shared --no-ld-generated-unwind-info
#readelf: -d -S --wide
 
There are 10 section headers, starting at offset 0x22c:
There are 9 section headers, starting at offset 0x1d8:
 
Section Headers:
\[Nr\] Name Type Addr Off Size ES Flg Lk Inf Al
\[ 0\] NULL 00000000 000000 000000 00 0 0 0
\[ 1\] .hash HASH 00000094 000094 000030 04 A 2 0 4
\[ 2\] .dynsym DYNSYM 000000c4 0000c4 000070 10 A 3 2 4
\[ 3\] .dynstr STRTAB 00000134 000134 00001d 00 A 0 0 1
\[ 4\] .rela.dyn RELA 00000154 000154 00000c 0c A 2 0 4
\[ 5\] .text PROGBITS 00000160 000160 000005 00 AX 0 0 4
\[ 6\] .dynamic DYNAMIC 00200168 000168 000078 08 WA 3 0 4
\[ 7\] .shstrtab STRTAB 00000000 0001e0 00004a 00 0 0 1
\[ 8\] .symtab SYMTAB 00000000 0003bc 0000e0 10 9 9 4
\[ 9\] .strtab STRTAB 00000000 00049c 000043 00 0 0 1
\[ 1\] .hash HASH 00000094 000094 00002c 04 A 2 0 4
\[ 2\] .dynsym DYNSYM 000000c0 0000c0 000060 10 A 3 2 4
\[ 3\] .dynstr STRTAB 00000120 000120 000019 00 A 0 0 1
\[ 4\] .text PROGBITS 0000013c 00013c 000001 00 AX 0 0 4
\[ 5\] .dynamic DYNAMIC 00200140 000140 000058 08 WA 3 0 4
\[ 6\] .shstrtab STRTAB 00000000 000198 000040 00 0 0 1
\[ 7\] .symtab SYMTAB 00000000 000340 0000c0 10 8 8 4
\[ 8\] .strtab STRTAB 00000000 000400 00003f 00 0 0 1
Key to Flags:
W \(write\), A \(alloc\), X \(execute\), M \(merge\), S \(strings\), l \(large\)
I \(info\), L \(link order\), G \(group\), T \(TLS\), E \(exclude\), x \(unknown\)
O \(extra OS processing required\) o \(OS specific\), p \(processor specific\)
 
Dynamic section at offset 0x168 contains 10 entries:
Dynamic section at offset 0x140 contains 6 entries:
Tag Type Name/Value
0x00000004 \(HASH\) 0x94
0x00000005 \(STRTAB\) 0x134
0x00000006 \(SYMTAB\) 0xc4
0x0000000a \(STRSZ\) 29 \(bytes\)
0x00000005 \(STRTAB\) 0x120
0x00000006 \(SYMTAB\) 0xc0
0x0000000a \(STRSZ\) 25 \(bytes\)
0x0000000b \(SYMENT\) 16 \(bytes\)
0x00000007 \(RELA\) 0x154
0x00000008 \(RELASZ\) 12 \(bytes\)
0x00000009 \(RELAENT\) 12 \(bytes\)
0x00000016 \(TEXTREL\) 0x0
0x00000000 \(NULL\) 0x0
/testsuite/ld-x86-64/tlsbindesc.dd
165,9 → 165,7
[0-9a-f]+: 90[ ]+nop *
[0-9a-f]+: c9[ ]+leaveq *
[0-9a-f]+: c3[ ]+retq *
[0-9a-f]+: 90[ ]+nop *
[0-9a-f]+: 90[ ]+nop *
[0-9a-f]+: 90[ ]+nop *
[0-9a-f]+: 0f 1f 00[ ]+nopl \(%rax\)
 
[0-9a-f]+ <_start>:
[0-9a-f]+: 55[ ]+push %rbp
/testsuite/ld-x86-64/ilp32-4.s
0,0 → 1,3
.globl _start
_start:
ret
/testsuite/ld-x86-64/incompatible.l
0,0 → 1,3
.*incompatible.*
/testsuite/ld-x86-64/ilp32-5.d
4,5 → 4,5
 
#...
[0-9a-f]+ +[0-9a-f]+ +R_X86_64_RELATIVE +[0-9a-f]+
[0-9a-f]+ +[0-9a-f]+ +R_X86_64_PC32 +[0-9a-f]+ +foo - 4
[0-9a-f]+ +[0-9a-f]+ +R_X86_64_GLOB_DAT +[0-9a-f]+ +foo \+ 0
[0-9a-f]+ +[0-9a-f]+ +R_X86_64_32 +[0-9a-f]+ +foo \+ 0
/testsuite/ld-x86-64/tlspic.dd
226,5 → 226,4
+11a7: 90[ ]+nop *
+11a8: c9[ ]+leaveq *
+11a9: c3[ ]+retq *
+11aa: 90[ ]+nop *
+11ab: 90[ ]+nop *
+11aa: 66 90[ ]+xchg %ax,%ax
/testsuite/ld-x86-64/32bit.s
0,0 → 1,78
 
.section .rodata.str1.1,"aMS",@progbits,1
 
.LC0: .word 1
.LC1: .word 2
.LC2: .word 3
.LC3: .word 4
.LC4: .word 5
.LC5: .word 6
.LC6: .word 7
.LC7: .word 8
.LC8: .word 9
.LC9: .word 10
.LC10: .word 11
.LC11: .word 12
.LC12: .word 13
.LC13: .word 14
.LC14: .word 15
.LC15: .word 16
.LC16: .word 17
.LC17: .word 18
.LC18: .word 19
.LC19: .word 20
.LC20: .word 21
.LC21: .word 22
.LC22: .word 23
.LC23: .word 24
.LC24: .word 25
.LC25: .word 26
.LC26: .word 27
.LC27: .word 28
.LC28: .word 29
.LC29: .word 30
.LC30: .word 31
.LC31: .word 32
.LC32: .word 33
.LC33: .word 34
 
.text
.p2align 4,,15
.globl foo
.type foo, @function
foo:
 
leal .LC0@GOTOFF(%ecx), %eax
leal .LC1@GOTOFF(%ecx), %eax
leal .LC2@GOTOFF(%ecx), %eax
leal .LC3@GOTOFF(%ecx), %eax
leal .LC4@GOTOFF(%ecx), %eax
leal .LC5@GOTOFF(%ecx), %eax
leal .LC6@GOTOFF(%ecx), %eax
leal .LC7@GOTOFF(%ecx), %eax
leal .LC8@GOTOFF(%ecx), %eax
leal .LC9@GOTOFF(%ecx), %eax
leal .LC10@GOTOFF(%ecx), %eax
leal .LC11@GOTOFF(%ecx), %eax
leal .LC12@GOTOFF(%ecx), %eax
leal .LC13@GOTOFF(%ecx), %eax
leal .LC14@GOTOFF(%ecx), %eax
leal .LC15@GOTOFF(%ecx), %eax
leal .LC16@GOTOFF(%ecx), %eax
leal .LC17@GOTOFF(%ecx), %eax
leal .LC18@GOTOFF(%ecx), %eax
leal .LC19@GOTOFF(%ecx), %eax
leal .LC20@GOTOFF(%ecx), %eax
leal .LC21@GOTOFF(%ecx), %eax
leal .LC22@GOTOFF(%ecx), %eax
leal .LC23@GOTOFF(%ecx), %eax
leal .LC24@GOTOFF(%ecx), %eax
leal .LC25@GOTOFF(%ecx), %eax
leal .LC26@GOTOFF(%ecx), %eax
leal .LC27@GOTOFF(%ecx), %eax
leal .LC28@GOTOFF(%ecx), %eax
leal .LC29@GOTOFF(%ecx), %eax
leal .LC30@GOTOFF(%ecx), %eax
leal .LC31@GOTOFF(%ecx), %eax
leal .LC32@GOTOFF(%ecx), %eax
leal .LC33@GOTOFF(%ecx), %eax
/testsuite/ld-x86-64/ilp32-5.s
1,6 → 1,6
.globl bar
bar:
mov foo(%rip), %rax
mov foo@GOTPCREL(%rip), %rax
 
.data
xxx:
/testsuite/ld-bootstrap/bootstrap.exp
155,7 → 155,7
# On ia64, tmpdir/ld2 != tmpdir/ld3 is normal since they are
# generated by different linkers, tmpdir/ld1 and tmpdir/ld2.
# So we rebuild tmpdir/ld2 with tmpdir/ld3.
if ![ld_link tmpdir/ld3 tmpdir/ld2 "$flags $OFILES $BFDLIB $LIBIBERTY"] {
if ![ld_link tmpdir/ld3 tmpdir/ld2 "$flags $OFILES $BFDLIB $LIBIBERTY $extralibs"] {
fail $testname
continue
}
165,7 → 165,7
# On Linux/mips, tmpdir/ld2 != tmpdir/ld3 is normal since
# they are generated by different linkers, tmpdir/ld1 and
# tmpdir/ld2. So we rebuild tmpdir/ld2 with tmpdir/ld3.
if ![ld_link tmpdir/ld3 tmpdir/ld2 "$flags $OFILES $BFDLIB $LIBIBERTY"] {
if ![ld_link tmpdir/ld3 tmpdir/ld2 "$flags $OFILES $BFDLIB $LIBIBERTY $extralibs"] {
fail $testname
continue
}
/testsuite/ld-elfweak/elfweak.exp
370,7 → 370,9
pass $test
}
 
if [istarget mips*-*-*] {
# Old version of GCC for MIPS default to enabling -fpic
# and get confused if it is used on the command line.
if { [istarget mips*-*-*] && ! [at_least_gcc_version 4 3] } then {
set picflag ""
} else {
# Unfortunately, the gcc argument is -fpic and the cc argument is
/testsuite/ld-elfvsb/elfvsb.exp
249,7 → 249,8
set VSBCFLAG ""
}}}}}}}}}
 
if { [istarget powerpc*-*-linux*] } {
if { [istarget powerpc*-*-linux*] \
|| ( [istarget mips*-*-linux*] && [at_least_gcc_version 4 3] )} {
# Testing non-PIC libraries is a waste of effort on any target.
# If you don't pass -fpic or -fPIC to gcc, gcc will assume quite
# reasonably that you are not compiling for a shared library.
453,7 → 454,9
}}
}
 
if [istarget mips*-*-*] {
# Old version of GCC for MIPS default to enabling -fpic
# and get confused if it is used on the command line.
if { [istarget mips*-*-*] && ! [at_least_gcc_version 4 3] } then {
set picflag ""
} else {
# Unfortunately, the gcc argument is -fpic and the cc argument is
/ldfile.c
1,6 → 1,6
/* Linker file opening and searching.
Copyright 1991, 1992, 1993, 1994, 1995, 1998, 1999, 2000, 2001, 2002,
2003, 2004, 2005, 2007, 2008, 2009, 2010, 2011
2003, 2004, 2005, 2007, 2008, 2009, 2010, 2011, 2012
Free Software Foundation, Inc.
 
This file is part of the GNU Binutils.
40,7 → 40,6
#include "plugin.h"
#endif /* ENABLE_PLUGINS */
 
const char * ldfile_input_filename;
bfd_boolean ldfile_assumed_script = FALSE;
const char * ldfile_output_machine_name = "";
unsigned long ldfile_output_machine;
638,7 → 637,6
 
lex_push_file (ldlex_input_stack, name);
 
ldfile_input_filename = name;
lineno = 1;
 
saved_script_handle = ldlex_input_stack;
/configure
787,6 → 787,7
enable_libtool_lock
enable_nls
enable_initfini_array
with_zlib
'
ac_precious_vars='build_alias
host_alias
1450,6 → 1451,7
--with-pic try to use only PIC/non-PIC objects [default=use
both]
--with-gnu-ld assume the C compiler uses GNU ld [default=no]
--with-zlib include zlib support (auto/yes/no) default=auto
 
Some influential environment variables:
CC C compiler command
12138,7 → 12140,7
lt_dlunknown=0; lt_dlno_uscore=1; lt_dlneed_uscore=2
lt_status=$lt_dlunknown
cat > conftest.$ac_ext <<_LT_EOF
#line 12141 "configure"
#line 12143 "configure"
#include "confdefs.h"
 
#if HAVE_DLFCN_H
12244,7 → 12246,7
lt_dlunknown=0; lt_dlno_uscore=1; lt_dlneed_uscore=2
lt_status=$lt_dlunknown
cat > conftest.$ac_ext <<_LT_EOF
#line 12247 "configure"
#line 12249 "configure"
#include "confdefs.h"
 
#if HAVE_DLFCN_H
15497,7 → 15499,7
 
 
 
ALL_LINGUAS="fr sv tr es da vi zh_CN zh_TW ga fi id bg"
ALL_LINGUAS="fr sv tr es da vi zh_CN zh_TW ga fi id bg it"
# If we haven't got the data from the intl directory,
# assume NLS is disabled.
USE_NLS=no
16617,7 → 16619,19
 
# Link in zlib if we can. This is needed only for the bootstrap tests
# right now, since those tests use libbfd, which depends on zlib.
{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for library containing zlibVersion" >&5
 
# See if the user specified whether he wants zlib support or not.
 
# Check whether --with-zlib was given.
if test "${with_zlib+set}" = set; then :
withval=$with_zlib;
else
with_zlib=auto
fi
 
 
if test "$with_zlib" != "no"; then
{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for library containing zlibVersion" >&5
$as_echo_n "checking for library containing zlibVersion... " >&6; }
if test "${ac_cv_search_zlibVersion+set}" = set; then :
$as_echo_n "(cached) " >&6
16684,7 → 16698,12
 
fi
 
if test "$with_zlib" = "yes" -a "$ac_cv_header_zlib_h" != "yes"; then
as_fn_error "zlib (libz) library was explicitly requested but not found" "$LINENO" 5
fi
fi
 
 
# When converting linker scripts into strings for use in emulation
# files, use astring.sed if the compiler supports ANSI string
# concatenation, or ostring.sed otherwise. This is to support the
/ldlang.c
1,6 → 1,6
/* Linker command language support.
Copyright 1991, 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2000,
2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010, 2011
2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010, 2011, 2012
Free Software Foundation, Inc.
 
This file is part of the GNU Binutils.
1312,12 → 1312,13
{
if (create)
einfo (_("%P:%S: warning: redeclaration of memory region `%s'\n"),
name);
NULL, name);
return r;
}
 
if (!create && strcmp (name, DEFAULT_MEMORY_REGION))
einfo (_("%P:%S: warning: memory region `%s' not declared\n"), name);
einfo (_("%P:%S: warning: memory region `%s' not declared\n"),
NULL, name);
 
new_region = (lang_memory_region_type *)
stat_alloc (sizeof (lang_memory_region_type));
1351,7 → 1352,7
the default memory region. */
if (strcmp (region_name, DEFAULT_MEMORY_REGION) == 0
|| strcmp (alias, DEFAULT_MEMORY_REGION) == 0)
einfo (_("%F%P:%S: error: alias for default memory region\n"));
einfo (_("%F%P:%S: error: alias for default memory region\n"), NULL);
 
/* Look for the target region and check if the alias is not already
in use. */
1364,7 → 1365,7
if (strcmp (n->name, alias) == 0)
einfo (_("%F%P:%S: error: redefinition of memory region "
"alias `%s'\n"),
alias);
NULL, alias);
}
 
/* Check if the target region exists. */
1371,8 → 1372,7
if (region == NULL)
einfo (_("%F%P:%S: error: memory region `%s' "
"for alias `%s' does not exist\n"),
region_name,
alias);
NULL, region_name, alias);
 
/* Add alias to region name list. */
n = (lang_memory_region_name *) stat_alloc (sizeof (lang_memory_region_name));
4596,11 → 4596,11
static void
insert_pad (lang_statement_union_type **ptr,
fill_type *fill,
unsigned int alignment_needed,
bfd_size_type alignment_needed,
asection *output_section,
bfd_vma dot)
{
static fill_type zero_fill = { 1, { 0 } };
static fill_type zero_fill;
lang_statement_union_type *pad = NULL;
 
if (ptr != &statement_list.head)
4651,7 → 4651,7
if (!((lang_input_statement_type *) i->owner->usrdata)->just_syms_flag
&& (i->flags & SEC_EXCLUDE) == 0)
{
unsigned int alignment_needed;
bfd_size_type alignment_needed;
asection *o;
 
/* Align this section first to the input sections requirement,
4891,7 → 4891,7
else if (expld.phase != lang_mark_phase_enum)
einfo (_("%F%S: non constant or forward reference"
" address expression for section %s\n"),
os->name);
os->addr_tree, os->name);
}
 
if (os->bfd_section == NULL)
6590,7 → 6590,7
plugin_error_plugin ());
/* Open any newly added files, updating the file chains. */
link_info.loading_lto_outputs = TRUE;
open_input_bfds (added.head, OPEN_BFD_NORMAL);
open_input_bfds (*added.tail, OPEN_BFD_NORMAL);
/* Restore the global list pointer now they have all been added. */
lang_list_remove_tail (stat_ptr, &added);
/* And detach the fresh ends of the file lists. */
6650,6 → 6650,11
files. */
ldctor_build_sets ();
 
/* PR 13683: We must rerun the assignments prior to running garbage
collection in order to make sure that all symbol aliases are resolved. */
lang_do_assignments (lang_mark_phase_enum);
expld.phase = lang_first_phase_enum;
 
/* Remove unreferenced sections if asked to. */
lang_gc_sections ();
 
6948,7 → 6953,8
*region = lang_memory_region_lookup (memspec, FALSE);
 
if (have_lma && lma_memspec != 0)
einfo (_("%X%P:%S: section has both a load address and a load region\n"));
einfo (_("%X%P:%S: section has both a load address and a load region\n"),
NULL);
}
 
void
7135,7 → 7141,8
&& (*pp)->type == 1
&& !((*pp)->filehdr || (*pp)->phdrs))
{
einfo (_("%X%P:%S: PHDRS and FILEHDR are not supported when prior PT_LOAD headers lack them\n"));
einfo (_("%X%P:%S: PHDRS and FILEHDR are not supported"
" when prior PT_LOAD headers lack them\n"), NULL);
hdrs = FALSE;
}
 
/ldfile.h
1,6 → 1,6
/* ldfile.h -
Copyright 1991, 1992, 1993, 1994, 1995, 2000, 2002, 2003, 2004, 2005, 2007
Free Software Foundation, Inc.
Copyright 1991, 1992, 1993, 1994, 1995, 2000, 2002, 2003, 2004, 2005,
2007, 2012 Free Software Foundation, Inc.
 
This file is part of the GNU Binutils.
 
22,7 → 22,6
#ifndef LDFILE_H
#define LDFILE_H
 
extern const char *ldfile_input_filename;
extern bfd_boolean ldfile_assumed_script;
extern unsigned long ldfile_output_machine;
extern enum bfd_architecture ldfile_output_architecture;
/ldmain.c
1,6 → 1,6
/* Main program of GNU linker.
Copyright 1991, 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001,
2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010, 2011
2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010, 2011, 2012
Free Software Foundation, Inc.
Written by Steve Chamberlain steve@cygnus.com
 
327,7 → 327,7
else
{
lex_string = s;
lex_redirect (s);
lex_redirect (s, _("built in linker script"), 1);
}
parser_input = input_script;
yyparse ();
/ldlang.h
358,7 → 358,7
{
lang_statement_header_type header;
bfd_vma output_offset;
size_t size;
bfd_size_type size;
asection *output_section;
fill_type *fill;
} lang_padding_statement_type;
/ldmisc.c
1,6 → 1,6
/* ldmisc.c
Copyright 1991, 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2000,
2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2010, 2011
2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2010, 2011, 2012
Free Software Foundation, Inc.
Written by Steve Chamberlain of Cygnus Support.
 
51,7 → 51,7
%I filename from a lang_input_statement_type
%P print program name
%R info about a relent
%S print script file and linenumber
%S print script file and linenumber from etree_type.
%T symbol name
%V hex bfd_vma
%W hex bfd_vma with 0x with no leading zeros taking up 8 spaces
240,12 → 240,19
 
case 'S':
/* Print script file and linenumber. */
if (parsing_defsym)
fprintf (fp, "--defsym %s", lex_string);
else if (ldfile_input_filename != NULL)
fprintf (fp, "%s:%u", ldfile_input_filename, lineno);
else
fprintf (fp, _("built in linker script:%u"), lineno);
{
etree_type node;
etree_type *tp = va_arg (arg, etree_type *);
 
if (tp == NULL)
{
tp = &node;
tp->type.filename = ldlex_filename ();
tp->type.lineno = lineno;
}
if (tp->type.filename != NULL)
fprintf (fp, "%s:%u", tp->type.filename, tp->type.lineno);
}
break;
 
case 'R':
/ldver.c
1,6 → 1,6
/* ldver.c -- Print linker version.
Copyright 1991, 1992, 1993, 1994, 1995, 1996, 1997, 2000, 2001, 2002,
2003, 2005, 2007, 2008, 2009, 2010, 2011
2003, 2005, 2007, 2008, 2009, 2010, 2011, 2012
Free Software Foundation, Inc.
 
This file is part of the GNU Binutils.
40,7 → 40,7
 
if (noisy & 2)
{
printf (_("Copyright 2011 Free Software Foundation, Inc.\n"));
printf (_("Copyright 2012 Free Software Foundation, Inc.\n"));
printf (_("\
This program is free software; you may redistribute it under the terms of\n\
the GNU General Public License version 3 or (at your option) a later version.\n\
/ldlex.h
1,6 → 1,6
/* ldlex.h -
Copyright 1991, 1992, 1993, 1994, 1995, 1997, 2000, 2003, 2005, 2006, 2007
Free Software Foundation, Inc.
Copyright 1991, 1992, 1993, 1994, 1995, 1997, 2000, 2003, 2005, 2006,
2007, 2012 Free Software Foundation, Inc.
 
This file is part of the GNU Binutils.
 
42,7 → 42,7
/* In ldlex.l. */
extern int yylex (void);
extern void lex_push_file (FILE *, const char *);
extern void lex_redirect (const char *);
extern void lex_redirect (const char *, const char *, unsigned int);
extern void ldlex_script (void);
extern void ldlex_mri_script (void);
extern void ldlex_version_script (void);
52,6 → 52,7
extern void ldlex_both (void);
extern void ldlex_command (void);
extern void ldlex_popstate (void);
extern const char* ldlex_filename (void);
 
/* In lexsup.c. */
extern int lex_input (void);
/ldlex.l
3,7 → 3,7
%{
 
/* Copyright 1991, 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2000,
2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010, 2011
2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010, 2011, 2012
Free Software Foundation, Inc.
Written by Steve Chamberlain of Cygnus Support.
 
448,17 → 448,11
 
<<EOF>> {
include_stack_ptr--;
 
if (include_stack_ptr == 0)
{
yyterminate ();
}
else
{
yy_switch_to_buffer (include_stack[include_stack_ptr]);
}
 
ldfile_input_filename = file_name_stack[include_stack_ptr - 1];
lineno = lineno_stack[include_stack_ptr];
 
return END;
534,7 → 528,7
on the include stack. */
 
void
lex_redirect (const char *string)
lex_redirect (const char *string, const char *fake_filename, unsigned int count)
{
YY_BUFFER_STATE tmp;
 
543,11 → 537,11
{
einfo("%F: macros nested too deeply\n");
}
file_name_stack[include_stack_ptr] = "redirect";
file_name_stack[include_stack_ptr] = fake_filename;
lineno_stack[include_stack_ptr] = lineno;
include_stack[include_stack_ptr] = YY_CURRENT_BUFFER;
include_stack_ptr++;
lineno = 1;
lineno = count;
tmp = yy_create_string_buffer (string, strlen (string));
yy_switch_to_buffer (tmp);
}
612,6 → 606,15
{
yy_start = *(--state_stack_p);
}
 
/* Return the current file name, or the previous file if no file is
current. */
 
const char*
ldlex_filename (void)
{
return file_name_stack[include_stack_ptr - (include_stack_ptr != 0)];
}
 
/* Place up to MAX_SIZE characters in BUF and return
685,7 → 688,7
if (ldfile_assumed_script)
{
bfd_set_error (bfd_error_file_not_recognized);
einfo ("%F%s: file not recognized: %E\n", ldfile_input_filename);
einfo ("%F%s: file not recognized: %E\n", ldlex_filename ());
}
 
if (! ISPRINT (*what))
694,5 → 697,5
what = buf;
}
 
einfo ("%P:%S: ignoring invalid character `%s'%s\n", what, where);
einfo ("%P:%S: ignoring invalid character `%s'%s\n", NULL, what, where);
}
/ldemul.c
1,6 → 1,6
/* ldemul.c -- clearing house for ld emulation states
Copyright 1991, 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2000,
2001, 2002, 2003, 2005, 2007, 2008, 2009, 2010, 2011
2001, 2002, 2003, 2005, 2007, 2008, 2009, 2010, 2011, 2012
Free Software Foundation, Inc.
 
This file is part of the GNU Binutils.
262,13 → 262,13
void
syslib_default (char *ignore ATTRIBUTE_UNUSED)
{
info_msg (_("%S SYSLIB ignored\n"));
info_msg (_("%S SYSLIB ignored\n"), NULL);
}
 
void
hll_default (char *ignore ATTRIBUTE_UNUSED)
{
info_msg (_("%S HLL ignored\n"));
info_msg (_("%S HLL ignored\n"), NULL);
}
 
ld_emulation_xfer_type *ld_emulations[] = { EMULATION_LIST };
/scripttempl/elf.sc
1,6 → 1,6
#
# Unusual variables checked by this code:
# NOP - four byte opcode for no-op (defaults to 0)
# NOP - four byte opcode for no-op (defaults to none)
# NO_SMALL_DATA - no .sbss/.sbss2/.sdata/.sdata2 sections if not
# empty.
# SMALL_DATA_CTOR - .ctors contains small data.
91,6 → 91,12
#
# Each of these can also have corresponding .rel.* and .rela.* sections.
 
if test -n "$NOP"; then
FILL="=$NOP"
else
FILL=
fi
 
test -z "$RODATA_NAME" && RODATA_NAME=rodata
test -z "$SDATA_NAME" && SDATA_NAME=sdata
test -z "$SBSS_NAME" && SBSS_NAME=sbss
438,7 → 444,7
${RELOCATING+${INIT_START}}
KEEP (*(.init))
${RELOCATING+${INIT_END}}
} =${NOP-0}
} ${FILL}
 
${TEXT_PLT+${PLT}}
${TINY_READONLY_SECTION}
453,13 → 459,13
/* .gnu.warning sections are handled specially by elf32.em. */
*(.gnu.warning)
${RELOCATING+${OTHER_TEXT_SECTIONS}}
} =${NOP-0}
} ${FILL}
.fini ${RELOCATING-0} :
{
${RELOCATING+${FINI_START}}
KEEP (*(.fini))
${RELOCATING+${FINI_END}}
} =${NOP-0}
} ${FILL}
${RELOCATING+PROVIDE (__${ETEXT_NAME} = .);}
${RELOCATING+PROVIDE (_${ETEXT_NAME} = .);}
${RELOCATING+PROVIDE (${ETEXT_NAME} = .);}
/emulparams/elf32ppc_fbsd.sh
1,2 → 1,5
. ${srcdir}/emulparams/elf32ppc.sh
. ${srcdir}/emulparams/elf_fbsd.sh
 
OUTPUT_FORMAT="elf32-powerpc-freebsd"
 
/emulparams/elf_k1om.sh
9,7 → 9,6
ARCH="k1om"
MACHINE=
COMPILE_IN=yes
NOP=0x90909090
TEMPLATE_NAME=elf32
GENERATE_SHLIB_SCRIPT=yes
GENERATE_PIE_SCRIPT=yes
/emulparams/elf64tilegx_be.sh
0,0 → 1,2
. ${srcdir}/emulparams/elf64tilegx.sh
OUTPUT_FORMAT="elf64-tilegx-be"
/emulparams/elf_i386_be.sh
5,7 → 5,6
MAXPAGESIZE="CONSTANT (MAXPAGESIZE)"
ARCH=i386
MACHINE=
NOP=0x90909090
TEMPLATE_NAME=elf32
GENERATE_SHLIB_SCRIPT=yes
NO_SMALL_DATA=yes
/emulparams/elf32_x86_64.sh
8,7 → 8,6
COMMONPAGESIZE="CONSTANT (COMMONPAGESIZE)"
ARCH="i386:x64-32"
MACHINE=
NOP=0x90909090
TEMPLATE_NAME=elf32
GENERATE_SHLIB_SCRIPT=yes
GENERATE_PIE_SCRIPT=yes
/emulparams/elf32tilegx_be.sh
0,0 → 1,2
. ${srcdir}/emulparams/elf32tilegx.sh
OUTPUT_FORMAT="elf32-tilegx-be"
/emulparams/elf_l1om.sh
9,7 → 9,6
ARCH="l1om"
MACHINE=
COMPILE_IN=yes
NOP=0x90909090
TEMPLATE_NAME=elf32
GENERATE_SHLIB_SCRIPT=yes
GENERATE_PIE_SCRIPT=yes
/emulparams/elf_i386_ldso.sh
6,7 → 6,6
MAXPAGESIZE="CONSTANT (MAXPAGESIZE)"
ARCH=i386
MACHINE=
NOP=0x90909090
TEMPLATE_NAME=elf32
GENERATE_SHLIB_SCRIPT=yes
ELF_INTERPRETER_NAME=\"/usr/lib/ld.so.1\"
/emulparams/elf_i386.sh
7,7 → 7,6
COMMONPAGESIZE="CONSTANT (COMMONPAGESIZE)"
ARCH=i386
MACHINE=
NOP=0x90909090
TEMPLATE_NAME=elf32
GENERATE_SHLIB_SCRIPT=yes
GENERATE_PIE_SCRIPT=yes
/emulparams/elf64ppc_fbsd.sh
0,0 → 1,6
. ${srcdir}/emulparams/elf64ppc.sh
. ${srcdir}/emulparams/elf_fbsd.sh
 
OUTPUT_FORMAT="elf64-powerpc-freebsd"
DEFAULT_PLT_STATIC_CHAIN=1
 
/emulparams/elf_i386_vxworks.sh
6,7 → 6,6
COMMONPAGESIZE="CONSTANT (COMMONPAGESIZE)"
ARCH=i386
MACHINE=
NOP=0x90909090
TEMPLATE_NAME=elf32
GENERATE_SHLIB_SCRIPT=yes
GENERATE_PIE_SCRIPT=yes
/emulparams/elf32bmip.sh
64,14 → 64,14
OTHER_SECTIONS='
.gptab.sdata : { *(.gptab.data) *(.gptab.sdata) }
.gptab.sbss : { *(.gptab.bss) *(.gptab.sbss) }
.mdebug.abi32 : { KEEP(*(.mdebug.abi32)) }
.mdebug.abiN32 : { KEEP(*(.mdebug.abiN32)) }
.mdebug.abi64 : { KEEP(*(.mdebug.abi64)) }
.mdebug.abiO64 : { KEEP(*(.mdebug.abiO64)) }
.mdebug.eabi32 : { KEEP(*(.mdebug.eabi32)) }
.mdebug.eabi64 : { KEEP(*(.mdebug.eabi64)) }
.gcc_compiled_long32 : { KEEP(*(.gcc_compiled_long32)) }
.gcc_compiled_long64 : { KEEP(*(.gcc_compiled_long64)) }
.mdebug.abi32 0 : { KEEP(*(.mdebug.abi32)) }
.mdebug.abiN32 0 : { KEEP(*(.mdebug.abiN32)) }
.mdebug.abi64 0 : { KEEP(*(.mdebug.abi64)) }
.mdebug.abiO64 0 : { KEEP(*(.mdebug.abiO64)) }
.mdebug.eabi32 0 : { KEEP(*(.mdebug.eabi32)) }
.mdebug.eabi64 0 : { KEEP(*(.mdebug.eabi64)) }
.gcc_compiled_long32 0 : { KEEP(*(.gcc_compiled_long32)) }
.gcc_compiled_long64 0 : { KEEP(*(.gcc_compiled_long64)) }
'
ARCH=mips
MACHINE=
/emulparams/elf_x86_64.sh
8,7 → 8,6
COMMONPAGESIZE="CONSTANT (COMMONPAGESIZE)"
ARCH="i386:x86-64"
MACHINE=
NOP=0x90909090
TEMPLATE_NAME=elf32
GENERATE_SHLIB_SCRIPT=yes
GENERATE_PIE_SCRIPT=yes
/emulparams/elf32tilegx.sh
1,5 → 1,7
SCRIPT_NAME=elf
OUTPUT_FORMAT="elf32-tilegx"
OUTPUT_FORMAT="elf32-tilegx-le"
BIG_OUTPUT_FORMAT="elf32-tilegx-be"
LITTLE_OUTPUT_FORMAT="elf32-tilegx-le"
TEXT_START_ADDR=0x10000
NO_REL_RELOCS=yes
MAXPAGESIZE="CONSTANT (MAXPAGESIZE)"
/emulparams/elf64tilegx.sh
1,5 → 1,7
SCRIPT_NAME=elf
OUTPUT_FORMAT="elf64-tilegx"
OUTPUT_FORMAT="elf64-tilegx-le"
BIG_OUTPUT_FORMAT="elf64-tilegx-be"
LITTLE_OUTPUT_FORMAT="elf64-tilegx-le"
TEXT_START_ADDR=0x10000
NO_REL_RELOCS=yes
MAXPAGESIZE="CONSTANT (MAXPAGESIZE)"
/ldgram.y
1,6 → 1,6
/* A YACC grammar to parse a superset of the AT&T linker scripting language.
Copyright 1991, 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2000,
2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010, 2011
2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010, 2011, 2012
Free Software Foundation, Inc.
Written by Steve Chamberlain of Cygnus Support (steve@cygnus.com).
 
629,7 → 629,7
tmp.exclude_name_list = NULL;
tmp.sorted = none;
tmp.section_flag_list = $1;
lang_add_wild (NULL, $3, ldgram_had_keep);
lang_add_wild (&tmp, $3, ldgram_had_keep);
}
| wildcard_spec '(' file_NAME_list ')'
{
1219,7 → 1219,7
{
einfo (_("\
%X%P:%S: unknown phdr type `%s' (try integer literal)\n"),
s);
NULL, s);
$$ = exp_intop (0);
}
}
1242,7 → 1242,8
else if (strcmp ($1, "FLAGS") == 0 && $2 != NULL)
$$.flags = $2;
else
einfo (_("%X%P:%S: PHDRS syntax error at `%s'\n"), $1);
einfo (_("%X%P:%S: PHDRS syntax error at `%s'\n"),
NULL, $1);
}
| AT '(' exp ')' phdr_qualifiers
{
1448,9 → 1449,9
{
if (ldfile_assumed_script)
einfo (_("%P:%s: file format not recognized; treating as linker script\n"),
ldfile_input_filename);
ldlex_filename ());
if (error_index > 0 && error_index < ERROR_NAME_MAX)
einfo ("%P%F:%S: %s in %s\n", arg, error_names[error_index-1]);
einfo ("%P%F:%S: %s in %s\n", NULL, arg, error_names[error_index - 1]);
else
einfo ("%P%F:%S: %s\n", arg);
einfo ("%P%F:%S: %s\n", NULL, arg);
}
/po/it.po
0,0 → 1,2236
# Italian translation for ld.
# Copyright (C) 2011 Free Software Foundation, Inc.
# This file is distributed under the same license as the binutils package.
# Sergio Zanchetta <primes2h@ubuntu.com>, 2011.
#
msgid ""
msgstr ""
"Project-Id-Version: ld-2.21.53\n"
"Report-Msgid-Bugs-To: bug-binutils@gnu.org\n"
"POT-Creation-Date: 2011-06-02 14:30+0100\n"
"PO-Revision-Date: 2011-12-08 21:44+0100\n"
"Last-Translator: Sergio Zanchetta <primes2h@ubuntu.com>\n"
"Language-Team: Italian <tp@lists.linux.it>\n"
"Language: it\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"Plural-Forms: nplurals=2; plural=(n!=1);\n"
 
#: emultempl/armcoff.em:73
#, c-format
msgid " --support-old-code Support interworking with old code\n"
msgstr " --support-old-code Supporta la compatibilità con vecchio codice\n"
 
#: emultempl/armcoff.em:74
#, c-format
msgid " --thumb-entry=<sym> Set the entry point to be Thumb symbol <sym>\n"
msgstr " --thumb-entry=<sim> Imposta il simbolo thumb <sim> come punto di ingresso\n"
 
#: emultempl/armcoff.em:122
#, c-format
msgid "Errors encountered processing file %s"
msgstr "Riscontrati errori nell'elaborare il file %s"
 
#: emultempl/armcoff.em:192 emultempl/pe.em:1813
msgid "%P: warning: '--thumb-entry %s' is overriding '-e %s'\n"
msgstr "%P: attenzione: \"--thumb-entry %s\" prevale su \"-e %s\"\n"
 
#: emultempl/armcoff.em:197 emultempl/pe.em:1818
msgid "%P: warning: cannot find thumb start symbol %s\n"
msgstr "%P: attenzione: impossibile trovare il simbolo thumb iniziale %s\n"
 
#: emultempl/pe.em:419
#, c-format
msgid " --base_file <basefile> Generate a base file for relocatable DLLs\n"
msgstr " --base_file <filebase> Genera un file di base per le DLL rilocabili\n"
 
#: emultempl/pe.em:420
#, c-format
msgid " --dll Set image base to the default for DLLs\n"
msgstr " --dll Imposta l'immagine base al valore predefinito per le DLL\n"
 
#: emultempl/pe.em:421
#, c-format
msgid " --file-alignment <size> Set file alignment\n"
msgstr " --file-alignment <dimensione> Imposta l'allineamento del file\n"
 
#: emultempl/pe.em:422
#, c-format
msgid " --heap <size> Set initial size of the heap\n"
msgstr " --heap <dimensione> Imposta la dimensione iniziale dell'heap\n"
 
#: emultempl/pe.em:423
#, c-format
msgid " --image-base <address> Set start address of the executable\n"
msgstr " --image-base <indirizzo> Imposta l'indirizzo iniziale dell'eseguibile\n"
 
#: emultempl/pe.em:424
#, c-format
msgid " --major-image-version <number> Set version number of the executable\n"
msgstr " --major-image-version <numero> Imposta il numero di versione dell'eseguibile\n"
 
#: emultempl/pe.em:425
#, c-format
msgid " --major-os-version <number> Set minimum required OS version\n"
msgstr " --major-os-version <numero> Imposta la versione minima richiesta per il SO\n"
 
#: emultempl/pe.em:426
#, c-format
msgid " --major-subsystem-version <number> Set minimum required OS subsystem version\n"
msgstr " --major-subsystem-version <numero> Imposta la versione minima richiesta per il sottosistema del SO\n"
 
#: emultempl/pe.em:427
#, c-format
msgid " --minor-image-version <number> Set revision number of the executable\n"
msgstr " --minor-image-version <numero> Imposta il numero di revisione dell'eseguibile\n"
 
#: emultempl/pe.em:428
#, c-format
msgid " --minor-os-version <number> Set minimum required OS revision\n"
msgstr " --minor-os-version <numero> Imposta la revisione minima richiesta per il SO\n"
 
#: emultempl/pe.em:429
#, c-format
msgid " --minor-subsystem-version <number> Set minimum required OS subsystem revision\n"
msgstr " --minor-subsystem-version <numero> Imposta la revisione minima richiesta per il sottosistema del SO\n"
 
#: emultempl/pe.em:430
#, c-format
msgid " --section-alignment <size> Set section alignment\n"
msgstr " --section-alignment <dimensione> Imposta l'allineamento della sezione\n"
 
#: emultempl/pe.em:431
#, c-format
msgid " --stack <size> Set size of the initial stack\n"
msgstr " --stack <dimensione> Imposta la dimensione dello stack iniziale\n"
 
#: emultempl/pe.em:432
#, c-format
msgid " --subsystem <name>[:<version>] Set required OS subsystem [& version]\n"
msgstr " --subsystem <nome>[:<versione>] Imposta il sottosistema richiesto del SO [e la versione]\n"
 
#: emultempl/pe.em:433
#, c-format
msgid " --support-old-code Support interworking with old code\n"
msgstr " --support-old-code Supporta la compatibilità con vecchio codice\n"
 
#: emultempl/pe.em:434
#, c-format
msgid " --[no-]leading-underscore Set explicit symbol underscore prefix mode\n"
msgstr " --[no-]leading-underscore Imposta la modalità esplicita di prefisso \"_\" dei simboli\n"
 
#: emultempl/pe.em:435
#, c-format
msgid " --thumb-entry=<symbol> Set the entry point to be Thumb <symbol>\n"
msgstr " --thumb-entry=<simbolo> Imposta il simbolo Thumb <simbolo> come punto di ingresso\n"
 
#: emultempl/pe.em:437
#, c-format
msgid " --add-stdcall-alias Export symbols with and without @nn\n"
msgstr " --add-stdcall-alias Esporta i simboli con e senza @nn\n"
 
#: emultempl/pe.em:438
#, c-format
msgid " --disable-stdcall-fixup Don't link _sym to _sym@nn\n"
msgstr " --disable-stdcall-fixup Non esegue il link di _sym a _sym@nn\n"
 
#: emultempl/pe.em:439
#, c-format
msgid " --enable-stdcall-fixup Link _sym to _sym@nn without warnings\n"
msgstr " --enable-stdcall-fixup Esegue il link di _sym a _sym@nn senza avvertire\n"
 
#: emultempl/pe.em:440
#, c-format
msgid " --exclude-symbols sym,sym,... Exclude symbols from automatic export\n"
msgstr " --exclude-symbols sim,sim,... Esclude i simboli dall'esportazione automatica\n"
 
#: emultempl/pe.em:441
#, c-format
msgid " --exclude-all-symbols Exclude all symbols from automatic export\n"
msgstr " --exclude-all-symbols Esclude tutti i simboli dall'esportazione automatica\n"
 
#: emultempl/pe.em:442
#, c-format
msgid " --exclude-libs lib,lib,... Exclude libraries from automatic export\n"
msgstr " --exclude-libs lib,lib,... Esclude le librerie dall'esportazione automatica\n"
 
#: emultempl/pe.em:443
#, c-format
msgid " --exclude-modules-for-implib mod,mod,...\n"
msgstr " --exclude-modules-for-implib mod,mod,...\n"
 
#: emultempl/pe.em:444
#, c-format
msgid " Exclude objects, archive members from auto\n"
msgstr " Esclude oggetti e membri di archivio dall'esportazione\n"
 
#: emultempl/pe.em:445
#, c-format
msgid " export, place into import library instead.\n"
msgstr " automatica, mettendoli nella libreria di importazione.\n"
 
#: emultempl/pe.em:446
#, c-format
msgid " --export-all-symbols Automatically export all globals to DLL\n"
msgstr " --export-all-symbols Esporta automaticamente tutti i simboli globali nella DLL\n"
 
#: emultempl/pe.em:447
#, c-format
msgid " --kill-at Remove @nn from exported symbols\n"
msgstr " --kill-at Rimuove @nn dai simboli esportati\n"
 
#: emultempl/pe.em:448
#, c-format
msgid " --out-implib <file> Generate import library\n"
msgstr " --out-implib <file> Genera una libreria di importazione\n"
 
#: emultempl/pe.em:449
#, c-format
msgid " --output-def <file> Generate a .DEF file for the built DLL\n"
msgstr " --output-def <file> Genera un file .DEF per la DLL creata\n"
 
#: emultempl/pe.em:450
#, c-format
msgid " --warn-duplicate-exports Warn about duplicate exports.\n"
msgstr " --warn-duplicate-exports Avverte in caso di esportazioni duplicate.\n"
 
#: emultempl/pe.em:451
#, c-format
msgid ""
" --compat-implib Create backward compatible import libs;\n"
" create __imp_<SYMBOL> as well.\n"
msgstr ""
" --compat-implib Crea librerie di importazione retrocompatibili\n"
" e anche __imp_<SIMBOLO>.\n"
 
#: emultempl/pe.em:453
#, c-format
msgid ""
" --enable-auto-image-base Automatically choose image base for DLLs\n"
" unless user specifies one\n"
msgstr ""
" --enable-auto-image-base Sceglie automaticamente l'immagine base per le DLL\n"
" a meno che l'utente non ne specifichi una\n"
 
#: emultempl/pe.em:455
#, c-format
msgid " --disable-auto-image-base Do not auto-choose image base. (default)\n"
msgstr " --disable-auto-image-base Non sceglie automaticamente l'immagine base. (predefinito)\n"
 
#: emultempl/pe.em:456
#, c-format
msgid ""
" --dll-search-prefix=<string> When linking dynamically to a dll without\n"
" an importlib, use <string><basename>.dll\n"
" in preference to lib<basename>.dll \n"
msgstr ""
" --dll-search-prefix=<stringa> Usa <stringa><nomebase>.dll invece di lib<nomebase>.dll\n"
" quando viene effettuato un link dinamico a una dll\n"
" senza una libreria di importazione\n"
 
#: emultempl/pe.em:459
#, c-format
msgid ""
" --enable-auto-import Do sophisticated linking of _sym to\n"
" __imp_sym for DATA references\n"
msgstr ""
" --enable-auto-import Effettua link sofisticati da _sym a\n"
" __imp_sym per riferimenti ai DATI\n"
 
#: emultempl/pe.em:461
#, c-format
msgid " --disable-auto-import Do not auto-import DATA items from DLLs\n"
msgstr " --disable-auto-import Non importa automaticamente elementi dei DATI dalle DLL\n"
 
#: emultempl/pe.em:462
#, c-format
msgid ""
" --enable-runtime-pseudo-reloc Work around auto-import limitations by\n"
" adding pseudo-relocations resolved at\n"
" runtime.\n"
msgstr ""
" --enable-runtime-pseudo-reloc Aggira le limitazioni dell'importazione\n"
" automatica aggiungendo pseudo rilocazioni\n"
" risolte durante l'esecuzione.\n"
 
#: emultempl/pe.em:465
#, c-format
msgid ""
" --disable-runtime-pseudo-reloc Do not add runtime pseudo-relocations for\n"
" auto-imported DATA.\n"
msgstr ""
" --disable-runtime-pseudo-reloc Non aggiunge pseudo rilocazioni di esecuzione\n"
" per i DATI importati automaticamente.\n"
 
#: emultempl/pe.em:467
#, c-format
msgid ""
" --enable-extra-pe-debug Enable verbose debug output when building\n"
" or linking to DLLs (esp. auto-import)\n"
msgstr ""
" --enable-extra-pe-debug Abilita il debug prolisso durante la creazione o il link\n"
" alle DLL (specialmente nell'importazione automatica)\n"
 
#: emultempl/pe.em:470
#, c-format
msgid ""
" --large-address-aware Executable supports virtual addresses\n"
" greater than 2 gigabytes\n"
msgstr ""
" --large-address-aware L'eseguibile supporta indirizzi virtuali\n"
" superiori a 2 gigabyte\n"
 
#: emultempl/pe.em:472
#, c-format
msgid ""
" --enable-long-section-names Use long COFF section names even in\n"
" executable image files\n"
msgstr ""
" --enable-long-section-names Usa nomi lunghi per le sezioni COFF anche\n"
" nei file immagine eseguibili\n"
 
#: emultempl/pe.em:474
#, c-format
msgid ""
" --disable-long-section-names Never use long COFF section names, even\n"
" in object files\n"
msgstr ""
" --disable-long-section-names Non usa mai nomi lunghi per le sezioni COFF,\n"
" neanche nei file oggetto\n"
 
#: emultempl/pe.em:476
#, c-format
msgid ""
" --dynamicbase\t\t\t Image base address may be relocated using\n"
"\t\t\t\t address space layout randomization (ASLR)\n"
msgstr ""
" --dynamicbase\t\t\t L'indirizzo di base dell'immagine può essere rilocato usando\n"
"\t\t\t\t la funzione ASLR (Address Space Layout Randomization)\n"
 
#: emultempl/pe.em:478
#, c-format
msgid " --forceinteg\t\t Code integrity checks are enforced\n"
msgstr " --forceinteg\t\t Forza il controllo di integrità del codice\n"
 
#: emultempl/pe.em:479
#, c-format
msgid " --nxcompat\t\t Image is compatible with data execution prevention\n"
msgstr " --nxcompat\t\t L'immagine è compatibile con la prevenzione dell'esecuzione dei dati\n"
 
#: emultempl/pe.em:480
#, c-format
msgid " --no-isolation\t\t Image understands isolation but do not isolate the image\n"
msgstr " --no-isolation\t\t L'immagine comprende l'isolamento ma non isola l'immagine\n"
 
#: emultempl/pe.em:481
#, c-format
msgid ""
" --no-seh\t\t\t Image does not use SEH. No SE handler may\n"
"\t\t\t\t be called in this image\n"
msgstr ""
" --no-seh\t\t\t L'immagine non usa SEH. Nessun gestore SE può\n"
"\t\t\t\t essere chiamato in questa immagine\n"
 
#: emultempl/pe.em:483
#, c-format
msgid " --no-bind\t\t\t Do not bind this image\n"
msgstr " --no-bind\t\t\t Non associa questa immagine\n"
 
#: emultempl/pe.em:484
#, c-format
msgid " --wdmdriver\t\t Driver uses the WDM model\n"
msgstr " --wdmdriver\t\t Il driver usa il modello WDM\n"
 
#: emultempl/pe.em:485
#, c-format
msgid " --tsaware Image is Terminal Server aware\n"
msgstr " --tsaware L'immagine è informata sul terminal server\n"
 
#: emultempl/pe.em:614
msgid "%P: warning: bad version number in -subsystem option\n"
msgstr "%P: attenzione: numero di versione errato nell'opzione -subsystem\n"
 
#: emultempl/pe.em:639
msgid "%P%F: invalid subsystem type %s\n"
msgstr "%P%F: tipo di sottosistema %s non valido\n"
 
#: emultempl/pe.em:660
msgid "%P%F: invalid hex number for PE parameter '%s'\n"
msgstr "%P%F: numero esadecimale non valido per il parametro PE \"%s\"\n"
 
#: emultempl/pe.em:677
msgid "%P%F: strange hex info for PE parameter '%s'\n"
msgstr "%P%F: informazione esadecimale strana per il parametro PE \"%s\"\n"
 
#: emultempl/pe.em:692
msgid "%F%P: cannot open base file %s\n"
msgstr "%F%P: impossibile aprire il file di base %s\n"
 
#: emultempl/pe.em:965
msgid "%P: warning, file alignment > section alignment.\n"
msgstr "%P: attenzione, allineamento del file > allineamento della sezione.\n"
 
#: emultempl/pe.em:978
msgid "%P: warning: --export-dynamic is not supported for PE targets, did you mean --export-all-symbols?\n"
msgstr "%P: attenzione: --export-dynamic non è supportata per obiettivi PE, forse si intendeva --export-all-symbols.\n"
 
#: emultempl/pe.em:1054 emultempl/pe.em:1081
#, c-format
msgid "Warning: resolving %s by linking to %s\n"
msgstr "Attenzione: risoluzione di %s con il link a %s\n"
 
#: emultempl/pe.em:1059 emultempl/pe.em:1086
msgid "Use --enable-stdcall-fixup to disable these warnings\n"
msgstr "Usare --enable-stdcall-fixup per disabilitare questi avvertimenti\n"
 
#: emultempl/pe.em:1060 emultempl/pe.em:1087
msgid "Use --disable-stdcall-fixup to disable these fixups\n"
msgstr "Usare --disable-stdcall-fixup per disabilitare queste correzioni\n"
 
#: emultempl/pe.em:1106
#, c-format
msgid "%C: Cannot get section contents - auto-import exception\n"
msgstr "%C: impossibile ottenere i contenuti della sezione, se non con l'importazione automatica\n"
 
#: emultempl/pe.em:1146
#, c-format
msgid "Info: resolving %s by linking to %s (auto-import)\n"
msgstr "Info: risoluzione di %s con il link a %s (importazione automatica)\n"
 
#: emultempl/pe.em:1153
msgid ""
"%P: warning: auto-importing has been activated without --enable-auto-import specified on the command line.\n"
"This should work unless it involves constant data structures referencing symbols from auto-imported DLLs.\n"
msgstr ""
"%P: attenzione: è stata attivata l'importazione automatica senza specificare --enable-auto-import sulla riga di comando.\n"
"Dovrebbe funzionare a meno che non coinvolga strutture dati costanti che referenziano simboli da DLL importate automaticamente.\n"
 
#: emultempl/pe.em:1160 emultempl/pe.em:1367 emultempl/pe.em:1574 ldcref.c:490
#: ldcref.c:588 ldmain.c:1215 ldmisc.c:290 pe-dll.c:706 pe-dll.c:1257
#: pe-dll.c:1352
msgid "%B%F: could not read symbols: %E\n"
msgstr "%B%F: impossibile leggere i simboli: %E\n"
 
#: emultempl/pe.em:1243
msgid "%F%P: cannot perform PE operations on non PE output file '%B'.\n"
msgstr "%F%P: impossibile eseguire operazioni PE sul file di output \"%B\" non PE.\n"
 
#: emultempl/pe.em:1617
#, c-format
msgid "Errors encountered processing file %s\n"
msgstr "Riscontrati errori elaborando il file %s\n"
 
#: emultempl/pe.em:1640
#, c-format
msgid "Errors encountered processing file %s for interworking\n"
msgstr "Riscontrati errori elaborando il file %s per la compatibilità\n"
 
#: emultempl/pe.em:1702 ldexp.c:581 ldlang.c:3416 ldlang.c:6947 ldlang.c:6978
#: ldmain.c:1160
msgid "%P%F: bfd_link_hash_lookup failed: %E\n"
msgstr "%P%F: bfd_link_hash_lookup non riuscita: %E\n"
 
#: ldcref.c:168
msgid "%X%P: bfd_hash_table_init of cref table failed: %E\n"
msgstr "%X%P: bfd_hash_table_init della tabella cref non riuscita: %E\n"
 
#: ldcref.c:174
msgid "%X%P: cref_hash_lookup failed: %E\n"
msgstr "%X%P: cref_hash_lookup non riuscita: %E\n"
 
#: ldcref.c:184
msgid "%X%P: cref alloc failed: %E\n"
msgstr "%X%P: allocazione di cref non riuscita: %E\n"
 
#: ldcref.c:366
#, c-format
msgid ""
"\n"
"Cross Reference Table\n"
"\n"
msgstr ""
"\n"
"Tabella dei riferimenti incrociati\n"
"\n"
 
#: ldcref.c:367
msgid "Symbol"
msgstr "Simbolo"
 
#: ldcref.c:375
#, c-format
msgid "File\n"
msgstr "File\n"
 
#: ldcref.c:379
#, c-format
msgid "No symbols\n"
msgstr "Nessun simbolo\n"
 
#: ldcref.c:532
msgid "%P: symbol `%T' missing from main hash table\n"
msgstr "%P: simbolo \"%T\" mancante dalla tabella principale di hash\n"
 
#: ldcref.c:650 ldcref.c:657 ldmain.c:1249 ldmain.c:1256
msgid "%B%F: could not read relocs: %E\n"
msgstr "%B%F: impossibile leggere le rilocazioni: %E\n"
 
#. We found a reloc for the symbol. The symbol is defined
#. in OUTSECNAME. This reloc is from a section which is
#. mapped into a section from which references to OUTSECNAME
#. are prohibited. We must report an error.
#: ldcref.c:684
msgid "%X%C: prohibited cross reference from %s to `%T' in %s\n"
msgstr "%X%C: riferimento incrociato da %s a \"%T\" in %s vietato\n"
 
#: ldctor.c:85
msgid "%P%X: Different relocs used in set %s\n"
msgstr "%P%X: usate rilocazioni diverse nel set %s\n"
 
#: ldctor.c:103
msgid "%P%X: Different object file formats composing set %s\n"
msgstr "%P%X: formati di file oggetto diversi componendo il set %s\n"
 
#: ldctor.c:281 ldctor.c:295
msgid "%P%X: %s does not support reloc %s for set %s\n"
msgstr "%P%X: %s non supporta la rilocazione %s per il set %s\n"
 
#: ldctor.c:316
msgid "%P%X: Unsupported size %d for set %s\n"
msgstr "%P%X: dimensione %d non supportata per il set %s\n"
 
#: ldctor.c:337
msgid ""
"\n"
"Set Symbol\n"
"\n"
msgstr ""
"\n"
"Set Simbolo\n"
"\n"
 
#: ldemul.c:265
#, c-format
msgid "%S SYSLIB ignored\n"
msgstr "%S SYSLIB ignorata\n"
 
#: ldemul.c:271
#, c-format
msgid "%S HLL ignored\n"
msgstr "%S HLL ignorata\n"
 
#: ldemul.c:291
msgid "%P: unrecognised emulation mode: %s\n"
msgstr "%P: modalità di emulazione non riconosciuta: %s\n"
 
#: ldemul.c:292
msgid "Supported emulations: "
msgstr "Emulazioni supportate: "
 
#: ldemul.c:334
#, c-format
msgid " no emulation specific options.\n"
msgstr " nessuna opzione specifica per l'emulazione.\n"
 
#: ldexp.c:314
msgid "%P: warning: address of `%s' isn't multiple of maximum page size\n"
msgstr "%P: attenzione: l'indirizzo di \"%s\" non è un multiplo della dimensione massima della pagina\n"
 
#: ldexp.c:407
#, c-format
msgid "%F%S %% by zero\n"
msgstr "%F%S %% per zero\n"
 
#: ldexp.c:417
#, c-format
msgid "%F%S / by zero\n"
msgstr "%F%S / per zero\n"
 
#: ldexp.c:591
#, c-format
msgid "%X%S: unresolvable symbol `%s' referenced in expression\n"
msgstr "%X%S: simbolo \"%s\" non risolvibile referenziato nell'espressione\n"
 
#: ldexp.c:605
#, c-format
msgid "%F%S: undefined symbol `%s' referenced in expression\n"
msgstr "%F%S: simbolo \"%s\" non definito referenziato nell'espressione\n"
 
#: ldexp.c:626 ldexp.c:643 ldexp.c:670
#, c-format
msgid "%F%S: undefined section `%s' referenced in expression\n"
msgstr "%F%S: sezione \"%s\" non definita referenziata nell'espressione\n"
 
#: ldexp.c:697 ldexp.c:711
#, c-format
msgid "%F%S: undefined MEMORY region `%s' referenced in expression\n"
msgstr "%F%S: regione MEMORY \"%s\" non definita referenziata nell'espressione\n"
 
#: ldexp.c:722
#, c-format
msgid "%F%S: unknown constant `%s' referenced in expression\n"
msgstr "%F%S: costante \"%s\" sconosciuta referenziata nell'espressione\n"
 
#: ldexp.c:787
#, c-format
msgid "%F%S can not PROVIDE assignment to location counter\n"
msgstr "%F%S impossibile assegnare PROVIDE al contatore di posizione\n"
 
#: ldexp.c:805
#, c-format
msgid "%F%S invalid assignment to location counter\n"
msgstr "%F%S assegnazione non valida al contatore di posizione\n"
 
#: ldexp.c:808
#, c-format
msgid "%F%S assignment to location counter invalid outside of SECTION\n"
msgstr "%F%S assegnazione non valida al contatore di posizione fuori da SECTION\n"
 
#: ldexp.c:821
msgid "%F%S cannot move location counter backwards (from %V to %V)\n"
msgstr "%F%S impossibile retrocedere il contatore di posizione (da %V a %V)\n"
 
#: ldexp.c:882
msgid "%P%F:%s: hash creation failed\n"
msgstr "%P%F:%s: creazione dell'hash non riuscita\n"
 
#: ldexp.c:1191 ldexp.c:1216 ldexp.c:1276
#, c-format
msgid "%F%S: nonconstant expression for %s\n"
msgstr "%F%S: espressione non costante per %s\n"
 
#: ldfile.c:142
#, c-format
msgid "attempt to open %s failed\n"
msgstr "tentativo di aprire %s non riuscito\n"
 
#: ldfile.c:144
#, c-format
msgid "attempt to open %s succeeded\n"
msgstr "tentativo di aprire %s riuscito\n"
 
#: ldfile.c:150
msgid "%F%P: invalid BFD target `%s'\n"
msgstr "%F%P: obiettivo BFD \"%s\" non valido\n"
 
#: ldfile.c:267 ldfile.c:296
msgid "%P: skipping incompatible %s when searching for %s\n"
msgstr "%P: saltato %s incompatibile durante la ricerca di %s\n"
 
#: ldfile.c:280
msgid "%F%P: attempted static link of dynamic object `%s'\n"
msgstr "%F%P: tentato un link statico dell'oggetto dinamico \"%s\"\n"
 
#: ldfile.c:426
msgid "%P: cannot find %s (%s): %E\n"
msgstr "%P: impossibile trovare %s (%s): %E\n"
 
#: ldfile.c:429
msgid "%P: cannot find %s: %E\n"
msgstr "%P: impossibile trovare %s: %E\n"
 
#: ldfile.c:464
msgid "%P: cannot find %s inside %s\n"
msgstr "%P: impossibile trovare %s dentro a %s\n"
 
#: ldfile.c:467
msgid "%P: cannot find %s\n"
msgstr "%P: impossibile trovare %s\n"
 
#: ldfile.c:486 ldfile.c:504
#, c-format
msgid "cannot find script file %s\n"
msgstr "impossibile trovare lo script %s\n"
 
#: ldfile.c:488 ldfile.c:506
#, c-format
msgid "opened script file %s\n"
msgstr "aperto lo script %s\n"
 
#: ldfile.c:636
msgid "%P%F: cannot open linker script file %s: %E\n"
msgstr "%P%F: impossibile aprire lo script %s del linker: %E\n"
 
#: ldfile.c:701
msgid "%P%F: cannot represent machine `%s'\n"
msgstr "%P%F: impossibile rappresentare la macchina \"%s\"\n"
 
#: ldlang.c:1217 ldlang.c:1259 ldlang.c:3114
msgid "%P%F: can not create hash table: %E\n"
msgstr "%P%F: impossibile creare la tabella di hash: %E\n"
 
#: ldlang.c:1310
msgid "%P:%S: warning: redeclaration of memory region `%s'\n"
msgstr "%P:%S: attenzione: ridichiarazione della regione di memoria \"%s\"\n"
 
#: ldlang.c:1316
msgid "%P:%S: warning: memory region `%s' not declared\n"
msgstr "%P:%S: attenzione: regione di memoria \"%s\" non dichiarata\n"
 
#: ldlang.c:1350
msgid "%F%P:%S: error: alias for default memory region\n"
msgstr "%F%P:%S: errore: alias per la regione di memoria predefinita\n"
 
#: ldlang.c:1361
msgid "%F%P:%S: error: redefinition of memory region alias `%s'\n"
msgstr "%F%P:%S: errore: ridefinizione dell'alias \"%s\" per la regione di memoria\n"
 
#: ldlang.c:1368
msgid "%F%P:%S: error: memory region `%s' for alias `%s' does not exist\n"
msgstr "%F%P:%S: errore: la regione di memoria \"%s\" con alias \"%s\" non esiste\n"
 
#: ldlang.c:1420 ldlang.c:1459
msgid "%P%F: failed creating section `%s': %E\n"
msgstr "%P%F: creazione della sezione \"%s\" non riuscita: %E\n"
 
#: ldlang.c:2021
#, c-format
msgid ""
"\n"
"Discarded input sections\n"
"\n"
msgstr ""
"\n"
"Sezioni di input scartate\n"
"\n"
 
#: ldlang.c:2029
msgid ""
"\n"
"Memory Configuration\n"
"\n"
msgstr ""
"\n"
"Configurazione della memoria\n"
"\n"
 
#: ldlang.c:2031
msgid "Name"
msgstr "Nome"
 
#: ldlang.c:2031
msgid "Origin"
msgstr "Origine"
 
#: ldlang.c:2031
msgid "Length"
msgstr "Lunghezza"
 
#: ldlang.c:2031
msgid "Attributes"
msgstr "Attributi"
 
#: ldlang.c:2071
#, c-format
msgid ""
"\n"
"Linker script and memory map\n"
"\n"
msgstr ""
"\n"
"Script del linker e mappa della memoria\n"
"\n"
 
#: ldlang.c:2140
msgid "%P%F: Illegal use of `%s' section\n"
msgstr "%P%F: uso non consentito della sezione \"%s\"\n"
 
#: ldlang.c:2149
msgid "%P%F: output format %s cannot represent section called %s\n"
msgstr "%P%F: il formato di output %s non può rappresentare la sezione chiamata %s\n"
 
#: ldlang.c:2702
msgid "%B: file not recognized: %E\n"
msgstr "%B: file non riconosciuto: %E\n"
 
#: ldlang.c:2703
msgid "%B: matching formats:"
msgstr "%B: formati corrispondenti:"
 
#: ldlang.c:2710
msgid "%F%B: file not recognized: %E\n"
msgstr "%F%B: file non riconosciuto: %E\n"
 
#: ldlang.c:2781
msgid "%F%B: member %B in archive is not an object\n"
msgstr "%F%B: il membro %B nell'archivio non è un'oggetto\n"
 
#: ldlang.c:2796 ldlang.c:2810
msgid "%F%B: could not read symbols: %E\n"
msgstr "%F%B: impossibile leggere i simboli: %E\n"
 
#: ldlang.c:3084
msgid "%P: warning: could not find any targets that match endianness requirement\n"
msgstr "%P: attenzione: impossibile trovare obiettivi che corrispondano al requisito di ordine dei byte\n"
 
#: ldlang.c:3098
msgid "%P%F: target %s not found\n"
msgstr "%P%F: obiettivo %s non trovato\n"
 
#: ldlang.c:3100
msgid "%P%F: cannot open output file %s: %E\n"
msgstr "%P%F: impossibile aprire il file di output %s: %E\n"
 
#: ldlang.c:3106
msgid "%P%F:%s: can not make object file: %E\n"
msgstr "%P%F:%s: impossibile creare il file oggetto: %E\n"
 
#: ldlang.c:3110
msgid "%P%F:%s: can not set architecture: %E\n"
msgstr "%P%F:%s: impossibile impostare l'architettura: %E\n"
 
#: ldlang.c:3267
msgid "%P: warning: %s contains output sections; did you forget -T?\n"
msgstr "%P: attenzione: %s contiene sezioni di output; forse è stata dimenticata -T\n"
 
#: ldlang.c:3308
msgid "%P%F: bfd_hash_lookup failed creating symbol %s\n"
msgstr "%P%F: bfd_hash_lookup non riuscita nella creazione del simbolo %s\n"
 
#: ldlang.c:3326
msgid "%P%F: bfd_hash_allocate failed creating symbol %s\n"
msgstr "%P%F: bfd_hash_allocate non riuscita nella creazione del simbolo %s\n"
 
#: ldlang.c:3722
msgid "%F%P: %s not found for insert\n"
msgstr "%F%P: %s non trovato per insert\n"
 
#: ldlang.c:3937
msgid " load address 0x%V"
msgstr " indirizzo di caricamento 0x%V"
 
#: ldlang.c:4212
msgid "%W (size before relaxing)\n"
msgstr "%W (dimensione prima del rilassamento)\n"
 
#: ldlang.c:4303
#, c-format
msgid "Address of section %s set to "
msgstr "Indirizzo della sezione %s impostato a "
 
#: ldlang.c:4456
#, c-format
msgid "Fail with %d\n"
msgstr "Non riuscito con %d\n"
 
#: ldlang.c:4743
msgid "%X%P: section %s loaded at [%V,%V] overlaps section %s loaded at [%V,%V]\n"
msgstr "%X%P: la sezione %s caricata a [%V,%V] si sovrappone alla sezione %s caricata a [%V,%V]\n"
 
#: ldlang.c:4759
msgid "%X%P: region `%s' overflowed by %ld bytes\n"
msgstr "%X%P: overflow della regione \"%s\" pari a %ld byte\n"
 
#: ldlang.c:4782
msgid "%X%P: address 0x%v of %B section `%s' is not within region `%s'\n"
msgstr "%X%P: l'indirizzo 0x%v della sezione %B \"%s\" non è dentro la regione \"%s\"\n"
 
#: ldlang.c:4793
msgid "%X%P: %B section `%s' will not fit in region `%s'\n"
msgstr "%X%P: la sezione %B \"%s\" non si adatterà alla regione \"%s\"\n"
 
#: ldlang.c:4850
#, c-format
msgid "%F%S: non constant or forward reference address expression for section %s\n"
msgstr "%F%S: espressione dell'indirizzo non costante o referenziato in avanti per la sezione %s\n"
 
#: ldlang.c:4875
msgid "%P%X: Internal error on COFF shared library section %s\n"
msgstr "%P%X: errore interno nella sezione %s della libreria condivisa COFF\n"
 
#: ldlang.c:4932
msgid "%P%F: error: no memory region specified for loadable section `%s'\n"
msgstr "%P%F: errore: regione di memoria non specificata per la sezione caricabile \"%s\"\n"
 
#: ldlang.c:4937
msgid "%P: warning: no memory region specified for loadable section `%s'\n"
msgstr "%P: attenzione: regione di memoria non specificata per la sezione caricabile \"%s\"\n"
 
#: ldlang.c:4959
msgid "%P: warning: changing start of section %s by %lu bytes\n"
msgstr "%P: attenzione: spostato l'inizio della sezione %s di %lu byte\n"
 
#: ldlang.c:5036
msgid "%P: warning: dot moved backwards before `%s'\n"
msgstr "%P: attenzione: dot è retrocesso prima di \"%s\"\n"
 
#: ldlang.c:5202
msgid "%P%F: can't relax section: %E\n"
msgstr "%P%F: impossibile rilassare la sezione: %E\n"
 
#: ldlang.c:5531
msgid "%F%P: invalid data statement\n"
msgstr "%F%P: dichiarazione di dati non valida\n"
 
#: ldlang.c:5564
msgid "%F%P: invalid reloc statement\n"
msgstr "%F%P: dichiarazione di rilocazione non valida\n"
 
#: ldlang.c:5683
msgid "%P%F: gc-sections requires either an entry or an undefined symbol\n"
msgstr "%P%F: l'opzione gc-sections richiede un simbolo d'ingresso o uno non definito\n"
 
#: ldlang.c:5708
msgid "%P%F:%s: can't set start address\n"
msgstr "%P%F:%s: impossibile impostare l'indirizzo iniziale\n"
 
#: ldlang.c:5721 ldlang.c:5740
msgid "%P%F: can't set start address\n"
msgstr "%P%F: impossibile impostare l'indirizzo iniziale\n"
 
#: ldlang.c:5733
msgid "%P: warning: cannot find entry symbol %s; defaulting to %V\n"
msgstr "%P: attenzione: impossibile trovare il simbolo d'ingresso %s; ripristinato il predefinito %V\n"
 
#: ldlang.c:5745
msgid "%P: warning: cannot find entry symbol %s; not setting start address\n"
msgstr "%P: attenzione: impossibile trovare il simbolo d'ingresso %s; l'indirizzo iniziale non viene impostato\n"
 
#: ldlang.c:5800
msgid "%P%F: Relocatable linking with relocations from format %s (%B) to format %s (%B) is not supported\n"
msgstr "%P%F: l'operazione di link rilocabile dal formato %s (%B) al formato %s (%B) non è supportata\n"
 
#: ldlang.c:5810
msgid "%P%X: %s architecture of input file `%B' is incompatible with %s output\n"
msgstr "%P%X: %s l'architettura del file di input \"%B\" è incompatibile con l'output %s\n"
 
#: ldlang.c:5832
msgid "%P%X: failed to merge target specific data of file %B\n"
msgstr "%P%X: unione dei dati del file %B specifici per l'obiettivo non riuscita\n"
 
#: ldlang.c:5903
msgid "%P%F: Could not define common symbol `%T': %E\n"
msgstr "%P%F: impossibile definire il simbolo comune \"%T\": %E\n"
 
#: ldlang.c:5915
msgid ""
"\n"
"Allocating common symbols\n"
msgstr ""
"\n"
"Allocazione dei simboli comuni\n"
 
#: ldlang.c:5916
msgid ""
"Common symbol size file\n"
"\n"
msgstr ""
"Simbolo comune dimensione file\n"
"\n"
 
#: ldlang.c:6062
msgid "%P%F: invalid syntax in flags\n"
msgstr "%P%F: sintassi non valida nei flag\n"
 
#: ldlang.c:6524
msgid "%P%F: Failed to create hash table\n"
msgstr "%P%F: creazione della tabella di hash non riuscita\n"
 
#: ldlang.c:6547
msgid "%P%F: %s: plugin reported error after all symbols read\n"
msgstr "%P%F: %s: il plugin ha riportato un errore dopo la lettura di tutti i simboli\n"
 
#: ldlang.c:6860
msgid "%P%F: multiple STARTUP files\n"
msgstr "%P%F: file STARTUP multipli\n"
 
#: ldlang.c:6906
msgid "%X%P:%S: section has both a load address and a load region\n"
msgstr "%X%P:%S: la sezione possiede sia un indirizzo che una regione di caricamento\n"
 
#: ldlang.c:7093
msgid "%X%P:%S: PHDRS and FILEHDR are not supported when prior PT_LOAD headers lack them\n"
msgstr "%X%P:%S: PHDRS e FILEHDR non sono supportati quando mancano nelle intestazioni precedenti di PT_LOAD\n"
 
#: ldlang.c:7165
msgid "%F%P: no sections assigned to phdrs\n"
msgstr "%F%P: nessuna sezione assegnata a phdrs\n"
 
#: ldlang.c:7203
msgid "%F%P: bfd_record_phdr failed: %E\n"
msgstr "%F%P: bfd_record_phdr non riuscita: %E\n"
 
#: ldlang.c:7223
msgid "%X%P: section `%s' assigned to non-existent phdr `%s'\n"
msgstr "%X%P: sezione \"%s\" assegnata al phdr \"%s\" che non esiste\n"
 
#: ldlang.c:7636
msgid "%X%P: unknown language `%s' in version information\n"
msgstr "%X%P: lingua \"%s\" sconosciuta nelle informazioni di versione\n"
 
#: ldlang.c:7781
msgid "%X%P: anonymous version tag cannot be combined with other version tags\n"
msgstr "%X%P: il tag di versione anonima non può essere combinato con altri tag di versione\n"
 
#: ldlang.c:7790
msgid "%X%P: duplicate version tag `%s'\n"
msgstr "%X%P: tag di versione \"%s\" duplicato\n"
 
#: ldlang.c:7811 ldlang.c:7820 ldlang.c:7838 ldlang.c:7848
msgid "%X%P: duplicate expression `%s' in version information\n"
msgstr "%X%P: espressione \"%s\" duplicata nelle informazioni di versione\n"
 
#: ldlang.c:7888
msgid "%X%P: unable to find version dependency `%s'\n"
msgstr "%X%P: impossibile trovare la dipendenza di versione \"%s\"\n"
 
#: ldlang.c:7911
msgid "%X%P: unable to read .exports section contents\n"
msgstr "%X%P: impossibile leggere il contenuto della sezione .exports\n"
 
#: ldlang.c:8035
msgid "%X%P: unknown feature `%s'\n"
msgstr "%X%P: funzionalità \"%s\" sconosciuta\n"
 
#: ldmain.c:239
msgid "%X%P: can't set BFD default target to `%s': %E\n"
msgstr "%X%P: impossibile impostare l'obiettivo predefinito BFD a \"%s\": %E\n"
 
#: ldmain.c:307
msgid "%P%F: -r and -shared may not be used together\n"
msgstr "%P%F: -r e -shared non possono essere usate insieme\n"
 
#: ldmain.c:350
msgid "%P%F: -F may not be used without -shared\n"
msgstr "%P%F: -F non può essere usata senza -shared\n"
 
#: ldmain.c:352
msgid "%P%F: -f may not be used without -shared\n"
msgstr "%P%F: -f non può essere usata senza -shared\n"
 
#: ldmain.c:400
msgid "using external linker script:"
msgstr "usato lo script esterno del linker:"
 
#: ldmain.c:402
msgid "using internal linker script:"
msgstr "usato lo script interno del linker:"
 
#: ldmain.c:436
msgid "%P%F: no input files\n"
msgstr "%P%F: nessun file di input\n"
 
#: ldmain.c:440
msgid "%P: mode %s\n"
msgstr "%P: modalità %s\n"
 
#: ldmain.c:456
msgid "%P%F: cannot open map file %s: %E\n"
msgstr "%P%F: impossibile aprire il file di mappa %s: %E\n"
 
#: ldmain.c:488
msgid "%P: link errors found, deleting executable `%s'\n"
msgstr "%P: trovati errori nei link, eliminazione dell'eseguibile \"%s\"\n"
 
#: ldmain.c:497
msgid "%F%B: final close failed: %E\n"
msgstr "%F%B: chiusura finale non riuscita: %E\n"
 
#: ldmain.c:523
msgid "%X%P: unable to open for source of copy `%s'\n"
msgstr "%X%P: impossibile aprire la copia sorgente \"%s\"\n"
 
#: ldmain.c:526
msgid "%X%P: unable to open for destination of copy `%s'\n"
msgstr "%X%P: impossibile aprire la copia destinazione \"%s\"\n"
 
#: ldmain.c:533
msgid "%P: Error writing file `%s'\n"
msgstr "%P: errore scrivendo il file \"%s\"\n"
 
#: ldmain.c:538 pe-dll.c:1733
#, c-format
msgid "%P: Error closing file `%s'\n"
msgstr "%P: errore chiudendo il file \"%s\"\n"
 
#: ldmain.c:555
#, c-format
msgid "%s: total time in link: %ld.%06ld\n"
msgstr "%s: tempo totale per i link: %ld.%06ld\n"
 
#: ldmain.c:558
#, c-format
msgid "%s: data size %ld\n"
msgstr "%s: dimensione dati %ld\n"
 
#: ldmain.c:642
msgid "%P%F: missing argument to -m\n"
msgstr "%P%F: manca l'argomento per -m\n"
 
#: ldmain.c:690 ldmain.c:710 ldmain.c:742
msgid "%P%F: bfd_hash_table_init failed: %E\n"
msgstr "%P%F: bfd_hash_table_init non riuscita: %E\n"
 
#: ldmain.c:694 ldmain.c:714
msgid "%P%F: bfd_hash_lookup failed: %E\n"
msgstr "%P%F: bfd_hash_lookup non riuscita: %E\n"
 
#: ldmain.c:728
msgid "%X%P: error: duplicate retain-symbols-file\n"
msgstr "%X%P: errore: retain-symbols-file duplicato\n"
 
#: ldmain.c:772
msgid "%P%F: bfd_hash_lookup for insertion failed: %E\n"
msgstr "%P%F: bfd_hash_lookup per l'inserimento non riuscita: %E\n"
 
#: ldmain.c:777
msgid "%P: `-retain-symbols-file' overrides `-s' and `-S'\n"
msgstr "%P: \"-retain-symbols-file\" prevale su \"-s\" e \"-S\"\n"
 
#: ldmain.c:877
#, c-format
msgid ""
"Archive member included because of file (symbol)\n"
"\n"
msgstr ""
"Membro dell'archivio incluso a causa del file (simbolo)\n"
"\n"
 
#: ldmain.c:983
msgid "%X%C: multiple definition of `%T'\n"
msgstr "%X%C: definizione multipla di \"%T\"\n"
 
#: ldmain.c:986
msgid "%D: first defined here\n"
msgstr "%D: definito qui per la prima volta\n"
 
#: ldmain.c:990
msgid "%P: Disabling relaxation: it will not work with multiple definitions\n"
msgstr "%P: rilassamento disabilitato: non funzionerà con definizioni multiple\n"
 
#: ldmain.c:1044
msgid "%B: warning: definition of `%T' overriding common\n"
msgstr "%B: attenzione: la definizione di \"%T\" annulla il comune\n"
 
#: ldmain.c:1047
msgid "%B: warning: common is here\n"
msgstr "%B: attenzione: il comune è qui\n"
 
#: ldmain.c:1054
msgid "%B: warning: common of `%T' overridden by definition\n"
msgstr "%B: attenzione: comune di \"%T\" annullato dalla definizione\n"
 
#: ldmain.c:1057
msgid "%B: warning: defined here\n"
msgstr "%B: attenzione: è definito qui\n"
 
#: ldmain.c:1064
msgid "%B: warning: common of `%T' overridden by larger common\n"
msgstr "%B: attenzione: il comune di \"%T\" è annullato dal comune più grande\n"
 
#: ldmain.c:1067
msgid "%B: warning: larger common is here\n"
msgstr "%B: attenzione: il comune più grande è qui\n"
 
#: ldmain.c:1071
msgid "%B: warning: common of `%T' overriding smaller common\n"
msgstr "%B: attenzione: il comune di \"%T\" annulla il comune più piccolo\n"
 
#: ldmain.c:1074
msgid "%B: warning: smaller common is here\n"
msgstr "%B: attenzione: il comune più piccolo è qui\n"
 
#: ldmain.c:1078
msgid "%B: warning: multiple common of `%T'\n"
msgstr "%B: attenzione: comune multiplo di \"%T\"\n"
 
#: ldmain.c:1080
msgid "%B: warning: previous common is here\n"
msgstr "%B: attenzione: il comune precedente è qui\n"
 
#: ldmain.c:1100 ldmain.c:1138
msgid "%P: warning: global constructor %s used\n"
msgstr "%P: attenzione: usato il costruttore globale %s\n"
 
#: ldmain.c:1148
msgid "%P%F: BFD backend error: BFD_RELOC_CTOR unsupported\n"
msgstr "%P%F: errore del backend BFD: BFD_RELOC_CTOR non supportata\n"
 
#. We found a reloc for the symbol we are looking for.
#: ldmain.c:1202 ldmain.c:1204 ldmain.c:1206 ldmain.c:1224 ldmain.c:1269
msgid "warning: "
msgstr "attenzione: "
 
#: ldmain.c:1305
msgid "%F%P: bfd_hash_table_init failed: %E\n"
msgstr "%F%P: bfd_hash_table_init non riuscita: %E\n"
 
#: ldmain.c:1312
msgid "%F%P: bfd_hash_lookup failed: %E\n"
msgstr "%F%P: bfd_hash_lookup non riuscita: %E\n"
 
#: ldmain.c:1333
msgid "%X%C: undefined reference to `%T'\n"
msgstr "%X%C: riferimento non definito a \"%T\"\n"
 
#: ldmain.c:1336
msgid "%C: warning: undefined reference to `%T'\n"
msgstr "%C: attenzione: riferimento non definito a \"%T\"\n"
 
#: ldmain.c:1342
msgid "%X%D: more undefined references to `%T' follow\n"
msgstr "%X%D: seguono ulteriori riferimenti non definiti a \"%T\"\n"
 
#: ldmain.c:1345
msgid "%D: warning: more undefined references to `%T' follow\n"
msgstr "%D: attenzione: seguono ulteriori riferimenti non definiti a \"%T\"\n"
 
#: ldmain.c:1356
msgid "%X%B: undefined reference to `%T'\n"
msgstr "%X%B: riferimento non definito a \"%T\"\n"
 
#: ldmain.c:1359
msgid "%B: warning: undefined reference to `%T'\n"
msgstr "%B: attenzione: riferimento non definito a \"%T\"\n"
 
#: ldmain.c:1365
msgid "%X%B: more undefined references to `%T' follow\n"
msgstr "%X%B: seguono ulteriori riferimenti non definiti a \"%T\"\n"
 
#: ldmain.c:1368
msgid "%B: warning: more undefined references to `%T' follow\n"
msgstr "%B: attenzione: seguono ulteriori riferimenti non definiti a \"%T\"\n"
 
#: ldmain.c:1407
msgid " additional relocation overflows omitted from the output\n"
msgstr " overflow di rilocazione aggiuntivi omessi dall'output\n"
 
#: ldmain.c:1420
msgid " relocation truncated to fit: %s against undefined symbol `%T'"
msgstr " rilocazione adattata per troncamento: %s contro il simbolo non definito \"%T\""
 
#: ldmain.c:1425
msgid " relocation truncated to fit: %s against symbol `%T' defined in %A section in %B"
msgstr " rilocazione adattata per troncamento: %s contro il simbolo \"%T\" definito nella sezione %A in %B"
 
#: ldmain.c:1437
msgid " relocation truncated to fit: %s against `%T'"
msgstr " rilocazione adattata per troncamento: %s contro \"%T\""
 
#: ldmain.c:1454
msgid "%X%H: dangerous relocation: %s\n"
msgstr "%X%H: rilocazione pericolosa: %s\n"
 
#: ldmain.c:1469
msgid "%X%H: reloc refers to symbol `%T' which is not being output\n"
msgstr "%X%H: la rilocazione fa riferimento al simbolo \"%T\" che non è in output\n"
 
#: ldmisc.c:151
#, c-format
msgid "no symbol"
msgstr "nessun simbolo"
 
#: ldmisc.c:248
#, c-format
msgid "built in linker script:%u"
msgstr "script interno del linker:%u"
 
#: ldmisc.c:329
msgid "%B: In function `%T':\n"
msgstr "%B: nella funzione \"%T\":\n"
 
#: ldmisc.c:464
msgid "%F%P: internal error %s %d\n"
msgstr "%F%P: errore interno %s %d\n"
 
#: ldmisc.c:513
msgid "%P: internal error: aborting at %s line %d in %s\n"
msgstr "%P: errore interno: interrotto su %s riga %d in %s\n"
 
#: ldmisc.c:516
msgid "%P: internal error: aborting at %s line %d\n"
msgstr "%P: errore interno: interrotto su %s riga %d\n"
 
#: ldmisc.c:518
msgid "%P%F: please report this bug\n"
msgstr "%P%F: segnalare questo bug\n"
 
#. Output for noisy == 2 is intended to follow the GNU standards.
#: ldver.c:39
#, c-format
msgid "GNU ld %s\n"
msgstr "ld di GNU %s\n"
 
#: ldver.c:43
#, c-format
msgid "Copyright 2011 Free Software Foundation, Inc.\n"
msgstr "Copyright 2011 Free Software Foundation, Inc.\n"
 
#: ldver.c:44
#, c-format
msgid ""
"This program is free software; you may redistribute it under the terms of\n"
"the GNU General Public License version 3 or (at your option) a later version.\n"
"This program has absolutely no warranty.\n"
msgstr ""
"Questo programma è software libero; siete liberi di ridistribuirlo secondo i termini\n"
"della GNU General Public License versione 3 o (a scelta) una versione più recente.\n"
"Questo programma non ha assolutamente alcuna garanzia.\n"
 
#: ldver.c:54
#, c-format
msgid " Supported emulations:\n"
msgstr " Emulazioni supportate:\n"
 
#: ldwrite.c:62 ldwrite.c:207
msgid "%P%F: bfd_new_link_order failed\n"
msgstr "%P%F: bfd_new_link_order non riuscita\n"
 
#: ldwrite.c:365
msgid "%F%P: cannot create split section name for %s\n"
msgstr "%F%P: impossibile creare un nome di sezione diviso per %s\n"
 
#: ldwrite.c:377
msgid "%F%P: clone section failed: %E\n"
msgstr "%F%P: clonazione della sezione non riuscita: %E\n"
 
#: ldwrite.c:418
#, c-format
msgid "%8x something else\n"
msgstr "%8x qualcos'altro\n"
 
#: ldwrite.c:588
msgid "%F%P: final link failed: %E\n"
msgstr "%F%P: link finale non riuscito: %E\n"
 
#: lexsup.c:219 lexsup.c:373
msgid "KEYWORD"
msgstr "PAROLACHIAVE"
 
#: lexsup.c:219
msgid "Shared library control for HP/UX compatibility"
msgstr "Controllo della libreria condivisa per compatibilità con HP/UX"
 
#: lexsup.c:222
msgid "ARCH"
msgstr "ARCH"
 
#: lexsup.c:222
msgid "Set architecture"
msgstr "Imposta l'architettura"
 
#: lexsup.c:224 lexsup.c:492
msgid "TARGET"
msgstr "OBIETT"
 
#: lexsup.c:224
msgid "Specify target for following input files"
msgstr "Specifica l'obiettivo per i seguenti file di input"
 
#: lexsup.c:227 lexsup.c:278 lexsup.c:302 lexsup.c:315 lexsup.c:317
#: lexsup.c:446 lexsup.c:506 lexsup.c:569 lexsup.c:582
msgid "FILE"
msgstr "FILE"
 
#: lexsup.c:227
msgid "Read MRI format linker script"
msgstr "Legge lo script del linker in formato MRI"
 
#: lexsup.c:229
msgid "Force common symbols to be defined"
msgstr "Forza la definizione dei simboli comuni"
 
#: lexsup.c:233 lexsup.c:550 lexsup.c:552 lexsup.c:554 lexsup.c:556
msgid "ADDRESS"
msgstr "INDIRIZ"
 
#: lexsup.c:233
msgid "Set start address"
msgstr "Imposta l'indirizzo iniziale"
 
#: lexsup.c:235
msgid "Export all dynamic symbols"
msgstr "Esporta tutti i simboli dinamici"
 
#: lexsup.c:237
msgid "Undo the effect of --export-dynamic"
msgstr "Annulla l'azione di --export-dynamic"
 
#: lexsup.c:239
msgid "Link big-endian objects"
msgstr "Effettua il link a oggetti big-endian"
 
#: lexsup.c:241
msgid "Link little-endian objects"
msgstr "Effettua il link a oggetti little-endian"
 
#: lexsup.c:243 lexsup.c:246
msgid "SHLIB"
msgstr "LIBCO"
 
#: lexsup.c:243
msgid "Auxiliary filter for shared object symbol table"
msgstr "Filtro ausiliario per la tabella dei simboli degli oggetti condivisi"
 
#: lexsup.c:246
msgid "Filter for shared object symbol table"
msgstr "Filtro per la tabella dei simboli degli oggetti condivisi"
 
#: lexsup.c:249
msgid "Ignored"
msgstr "Ignorata"
 
#: lexsup.c:251
msgid "SIZE"
msgstr "DIMENS"
 
#: lexsup.c:251
msgid "Small data size (if no size, same as --shared)"
msgstr "Dimensione dei dati small (senza una dimensione, equivale a --shared)"
 
#: lexsup.c:254
msgid "FILENAME"
msgstr "NOMEFILE"
 
#: lexsup.c:254
msgid "Set internal name of shared library"
msgstr "Imposta il nome interno della libreria condivisa"
 
#: lexsup.c:256
msgid "PROGRAM"
msgstr "PROGRAMMA"
 
#: lexsup.c:256
msgid "Set PROGRAM as the dynamic linker to use"
msgstr "Imposta PROGRAMMA come il linker dinamico da usare"
 
#: lexsup.c:259
msgid "LIBNAME"
msgstr "NOMELIB"
 
#: lexsup.c:259
msgid "Search for library LIBNAME"
msgstr "Cerca la libreria NOMELIB"
 
#: lexsup.c:261
msgid "DIRECTORY"
msgstr "DIRECTORY"
 
#: lexsup.c:261
msgid "Add DIRECTORY to library search path"
msgstr "Aggiunge DIRECTORY al percorso di ricerca della libreria"
 
#: lexsup.c:264
msgid "Override the default sysroot location"
msgstr "Sovrascrive la posizione sysroot predefinita"
 
#: lexsup.c:266
msgid "EMULATION"
msgstr "EMULAZIONE"
 
#: lexsup.c:266
msgid "Set emulation"
msgstr "Imposta l'emulazione"
 
#: lexsup.c:268
msgid "Print map file on standard output"
msgstr "Stampa il file di mappa sullo standard output"
 
#: lexsup.c:270
msgid "Do not page align data"
msgstr "Non allinea i dati alla pagina"
 
#: lexsup.c:272
msgid "Do not page align data, do not make text readonly"
msgstr "Non allinea i dati alla pagina, non imposta il testo in sola lettura"
 
#: lexsup.c:275
msgid "Page align data, make text readonly"
msgstr "Allinea i dati alla pagina, imposta il testo in sola lettura"
 
#: lexsup.c:278
msgid "Set output file name"
msgstr "Imposta il nome del file di output"
 
#: lexsup.c:280
msgid "Optimize output file"
msgstr "Ottimizza il file di output"
 
#: lexsup.c:283
msgid "PLUGIN"
msgstr "PLUGIN"
 
#: lexsup.c:283
msgid "Load named plugin"
msgstr "Carica il plugin nominato"
 
#: lexsup.c:285
msgid "ARG"
msgstr "ARGOMENTO"
 
#: lexsup.c:285
msgid "Send arg to last-loaded plugin"
msgstr "Invia l'argomento all'ultimo plugin caricato"
 
#: lexsup.c:287 lexsup.c:290
msgid "Ignored for GCC LTO option compatibility"
msgstr "Ignorato per compatibilità con le opzioni LTO di GCC"
 
#: lexsup.c:294
msgid "Ignored for SVR4 compatibility"
msgstr "Ignorato per compatibilità con SVR4"
 
#: lexsup.c:298
msgid "Generate relocatable output"
msgstr "Genera output rilocabile"
 
#: lexsup.c:302
msgid "Just link symbols (if directory, same as --rpath)"
msgstr "Effettua solo il link dei simboli (se directory, equivale a --rpath)"
 
#: lexsup.c:305
msgid "Strip all symbols"
msgstr "Elimina tutti i simboli"
 
#: lexsup.c:307
msgid "Strip debugging symbols"
msgstr "Elimina i simboli di debug"
 
#: lexsup.c:309
msgid "Strip symbols in discarded sections"
msgstr "Elimina i simboli nelle sezioni scartate"
 
#: lexsup.c:311
msgid "Do not strip symbols in discarded sections"
msgstr "Non elimina i simboli nelle sezioni scartate"
 
#: lexsup.c:313
msgid "Trace file opens"
msgstr "Traccia l'apertura del file"
 
#: lexsup.c:315
msgid "Read linker script"
msgstr "Legge lo script del linker"
 
#: lexsup.c:317
msgid "Read default linker script"
msgstr "Legge lo script predefinito del linker"
 
#: lexsup.c:321 lexsup.c:339 lexsup.c:423 lexsup.c:444 lexsup.c:543
#: lexsup.c:572 lexsup.c:611
msgid "SYMBOL"
msgstr "SIMBOLO"
 
#: lexsup.c:321
msgid "Start with undefined reference to SYMBOL"
msgstr "Inizia con un riferimento non definito al SIMBOLO"
 
#: lexsup.c:324
msgid "[=SECTION]"
msgstr "[=SEZIONE]"
 
#: lexsup.c:325
msgid "Don't merge input [SECTION | orphan] sections"
msgstr "Non unisce le sezioni di input [SEZIONE | orfane]"
 
#: lexsup.c:327
msgid "Build global constructor/destructor tables"
msgstr "Crea le tabelle di costruttori/distruttori globali"
 
#: lexsup.c:329
msgid "Print version information"
msgstr "Stampa le informazioni sulla versione"
 
#: lexsup.c:331
msgid "Print version and emulation information"
msgstr "Stampa le informazioni sulla versione e sull'emulazione"
 
#: lexsup.c:333
msgid "Discard all local symbols"
msgstr "Scarta tutti i simboli locali"
 
#: lexsup.c:335
msgid "Discard temporary local symbols (default)"
msgstr "Scarta i simboli locali temporanei (predefinito)"
 
#: lexsup.c:337
msgid "Don't discard any local symbols"
msgstr "Non scarta alcun simbolo locale"
 
#: lexsup.c:339
msgid "Trace mentions of SYMBOL"
msgstr "Traccia i richiami al SIMBOLO"
 
#: lexsup.c:341 lexsup.c:508 lexsup.c:510
msgid "PATH"
msgstr "PERCORSO"
 
#: lexsup.c:341
msgid "Default search path for Solaris compatibility"
msgstr "Percorso di ricerca predefinito per compatibilità con Solaris"
 
#: lexsup.c:344
msgid "Start a group"
msgstr "Avvia un gruppo"
 
#: lexsup.c:346
msgid "End a group"
msgstr "Termina un gruppo"
 
#: lexsup.c:350
msgid "Accept input files whose architecture cannot be determined"
msgstr "Accetta file di input la cui architettura non può essere determinata"
 
#: lexsup.c:354
msgid "Reject input files whose architecture is unknown"
msgstr "Respinge i file di input la cui architettura è sconosciuta"
 
#: lexsup.c:366
msgid "Only set DT_NEEDED for following dynamic libs if used"
msgstr "Imposta DT_NEEDED per le seguenti librerie dinamiche solo se vengono usate"
 
#: lexsup.c:369
msgid ""
"Always set DT_NEEDED for dynamic libraries mentioned on\n"
" the command line"
msgstr ""
"Imposta sempre DT_NEEDED per le librerie dinamiche richiamate \n"
" sulla riga di comando"
 
#: lexsup.c:373
msgid "Ignored for SunOS compatibility"
msgstr "Ignorato per compatibilità con SunOS"
 
#: lexsup.c:375
msgid "Link against shared libraries"
msgstr "Effettua il link contro le librerie condivise"
 
#: lexsup.c:381
msgid "Do not link against shared libraries"
msgstr "Non effettua il link contro le librerie condivise"
 
#: lexsup.c:389
msgid "Bind global references locally"
msgstr "Associa localmente i riferimenti globali"
 
#: lexsup.c:391
msgid "Bind global function references locally"
msgstr "Associa localmente i riferimenti globali alle funzioni"
 
#: lexsup.c:393
msgid "Check section addresses for overlaps (default)"
msgstr "Controlla le sovrapposizioni negli indirizzi di sezione (predefinito)"
 
#: lexsup.c:396
msgid "Do not check section addresses for overlaps"
msgstr "Non controlla le sovrapposizioni negli indirizzi di sezione"
 
#: lexsup.c:400
msgid "Copy DT_NEEDED links mentioned inside DSOs that follow"
msgstr "Copia i link DT_NEEDED richiamati dentro i DSO che seguono"
 
#: lexsup.c:404
msgid "Do not copy DT_NEEDED links mentioned inside DSOs that follow"
msgstr "Non copia i link DT_NEEDED richiamati dentro i DSO che seguono"
 
#: lexsup.c:408
msgid "Output cross reference table"
msgstr "Stampa la tabella dei riferimenti incrociati"
 
#: lexsup.c:410
msgid "SYMBOL=EXPRESSION"
msgstr "SIMBOLO=ESPRESSIONE"
 
#: lexsup.c:410
msgid "Define a symbol"
msgstr "Definisce un simbolo"
 
#: lexsup.c:412
msgid "[=STYLE]"
msgstr "[=STILE]"
 
#: lexsup.c:412
msgid "Demangle symbol names [using STYLE]"
msgstr "Decodifica i nomi dei simboli [usando lo STILE]"
 
#: lexsup.c:415
msgid "Generate embedded relocs"
msgstr "Genera rilocazioni incorporate"
 
#: lexsup.c:417
msgid "Treat warnings as errors"
msgstr "Considera gli avvertimenti come errori"
 
#: lexsup.c:420
msgid "Do not treat warnings as errors (default)"
msgstr "Non considera gli avvertimenti come errori (predefinito)"
 
#: lexsup.c:423
msgid "Call SYMBOL at unload-time"
msgstr "Chiama il SIMBOLO durante lo scaricamento"
 
#: lexsup.c:425
msgid "Force generation of file with .exe suffix"
msgstr "Forza la generazione di file con suffisso .exe"
 
#: lexsup.c:427
msgid "Remove unused sections (on some targets)"
msgstr "Rimuove le sezioni inutilizzate (su alcuni obiettivi)"
 
#: lexsup.c:430
msgid "Don't remove unused sections (default)"
msgstr "Non rimuove le sezioni inutilizzate (predefinito)"
 
#: lexsup.c:433
msgid "List removed unused sections on stderr"
msgstr "Elenca le sezioni rimosse e inutilizzate sullo stderr"
 
#: lexsup.c:436
msgid "Do not list removed unused sections"
msgstr "Non elenca le sezioni rimosse e inutilizzate"
 
#: lexsup.c:439
msgid "Set default hash table size close to <NUMBER>"
msgstr "Imposta la dimensione predefinita per la tabella di hash vicina a <NUMERO>"
 
#: lexsup.c:442
msgid "Print option help"
msgstr "Stampa un aiuto relativo alle opzioni"
 
#: lexsup.c:444
msgid "Call SYMBOL at load-time"
msgstr "Chiama il SIMBOLO durante il caricamento"
 
#: lexsup.c:446
msgid "Write a map file"
msgstr "Scrive un file di mappa"
 
#: lexsup.c:448
msgid "Do not define Common storage"
msgstr "Non definisce la memoria comune"
 
#: lexsup.c:450
msgid "Do not demangle symbol names"
msgstr "Non decodifica i nomi dei simboli"
 
#: lexsup.c:452
msgid "Use less memory and more disk I/O"
msgstr "Usa meno memoria e più I/O del disco"
 
#: lexsup.c:454
msgid "Do not allow unresolved references in object files"
msgstr "Non ammette riferimenti non risolti nei file oggetto"
 
#: lexsup.c:457
msgid "Allow unresolved references in shared libraries"
msgstr "Ammette riferimenti non risolti nelle librerie condivise"
 
#: lexsup.c:461
msgid "Do not allow unresolved references in shared libs"
msgstr "Non ammette riferimenti non risolti nelle librerie condivise"
 
#: lexsup.c:465
msgid "Allow multiple definitions"
msgstr "Ammette definizioni multiple"
 
#: lexsup.c:467
msgid "Disallow undefined version"
msgstr "Non ammette versioni non definite"
 
#: lexsup.c:469
msgid "Create default symbol version"
msgstr "Crea la versione predefinita del simbolo"
 
#: lexsup.c:472
msgid "Create default symbol version for imported symbols"
msgstr "Crea la versione predefinita del simbolo per i simboli importati"
 
#: lexsup.c:475
msgid "Don't warn about mismatched input files"
msgstr "Non avvisa in caso di file di input non corrispondenti"
 
#: lexsup.c:478
msgid "Don't warn on finding an incompatible library"
msgstr "Non avvisa se viene trovata una libreria non compatibile"
 
#: lexsup.c:481
msgid "Turn off --whole-archive"
msgstr "Disabilita --whole-archive"
 
#: lexsup.c:483
msgid "Create an output file even if errors occur"
msgstr "Crea un file di output anche se vengono riscontrati errori"
 
#: lexsup.c:488
msgid ""
"Only use library directories specified on\n"
" the command line"
msgstr ""
"Usa solo le directory di libreria specificate\n"
" sulla riga di comando"
 
#: lexsup.c:492
msgid "Specify target of output file"
msgstr "Specifica l'obiettivo del file di output"
 
#: lexsup.c:495
msgid "Ignored for Linux compatibility"
msgstr "Ignorato per compatibilità con Linux"
 
#: lexsup.c:498
msgid "Reduce memory overheads, possibly taking much longer"
msgstr "Riduce l'overhead di memoria, forse impiega molto più tempo"
 
#: lexsup.c:501
msgid "Reduce code size by using target specific optimizations"
msgstr "Riduce la dimensione del codice con ottimizzazioni specifiche per gli obiettivi"
 
#: lexsup.c:503
msgid "Do not use relaxation techniques to reduce code size"
msgstr "Non usa tecniche di rilassamento per ridurre la dimensione del codice"
 
#: lexsup.c:506
msgid "Keep only symbols listed in FILE"
msgstr "Mantiene solo i simboli elencati in FILE"
 
#: lexsup.c:508
msgid "Set runtime shared library search path"
msgstr "Imposta il percorso di ricerca runtime per la libreria condivisa"
 
#: lexsup.c:510
msgid "Set link time shared library search path"
msgstr "Imposta il percorso di ricerca link time per la libreria condivisa"
 
#: lexsup.c:513
msgid "Create a shared library"
msgstr "Crea una libreria condivisa"
 
#: lexsup.c:517
msgid "Create a position independent executable"
msgstr "Crea un eseguibile indipendente dalla posizione"
 
# Queste sono da tradurre
#: lexsup.c:521
msgid "[=ascending|descending]"
msgstr "[=crescente|decrescente]"
 
#: lexsup.c:522
msgid "Sort common symbols by alignment [in specified order]"
msgstr "Ordina i simboli comuni per allineamento [nell'ordine specificato]"
 
#: lexsup.c:527
msgid "name|alignment"
msgstr "nome|allineamento"
 
#: lexsup.c:528
msgid "Sort sections by name or maximum alignment"
msgstr "Ordina le sezioni per nome o per allineamento massimo"
 
#: lexsup.c:530
msgid "COUNT"
msgstr "NUMERO"
 
#: lexsup.c:530
msgid "How many tags to reserve in .dynamic section"
msgstr "Quanti tag riservare nella sezione .dynamic"
 
#: lexsup.c:533
msgid "[=SIZE]"
msgstr "[=DIMENS]"
 
#: lexsup.c:533
msgid "Split output sections every SIZE octets"
msgstr "Divide le sezioni di output ogni DIMENS ottetti"
 
#: lexsup.c:536
msgid "[=COUNT]"
msgstr "[=NUMERO]"
 
#: lexsup.c:536
msgid "Split output sections every COUNT relocs"
msgstr "Divide le sezioni di output ogni NUMERO rilocazioni"
 
#: lexsup.c:539
msgid "Print memory usage statistics"
msgstr "Stampa le statistiche d'uso della memoria"
 
#: lexsup.c:541
msgid "Display target specific options"
msgstr "Visualizza le opzioni specifiche per l'obiettivo"
 
#: lexsup.c:543
msgid "Do task level linking"
msgstr "Effettua il link a livello di processi"
 
#: lexsup.c:545
msgid "Use same format as native linker"
msgstr "Usa lo stesso formato del linker nativo"
 
#: lexsup.c:547
msgid "SECTION=ADDRESS"
msgstr "SEZIONE=INDIRIZZO"
 
#: lexsup.c:547
msgid "Set address of named section"
msgstr "Imposta l'indirizzo della sezione nominata"
 
#: lexsup.c:550
msgid "Set address of .bss section"
msgstr "Imposta l'indirizzo della sezione .bss"
 
#: lexsup.c:552
msgid "Set address of .data section"
msgstr "Imposta l'indirizzo della sezione .data"
 
#: lexsup.c:554
msgid "Set address of .text section"
msgstr "Imposta l'indirizzo della sezione .text"
 
#: lexsup.c:556
msgid "Set address of text segment"
msgstr "Imposta l'indirizzo del segmento di testo"
 
#: lexsup.c:559
msgid ""
"How to handle unresolved symbols. <method> is:\n"
" ignore-all, report-all, ignore-in-object-files,\n"
" ignore-in-shared-libs"
msgstr ""
"Come gestire simboli non risolti. Il <metodo> è uno tra:\n"
" ignore-all, report-all, ignore-in-object-files,\n"
" ignore-in-shared-libs"
 
#: lexsup.c:564
msgid "[=NUMBER]"
msgstr "[=NUMERO]"
 
#: lexsup.c:565
msgid "Output lots of information during link"
msgstr "Mostra molte informazioni durante i link"
 
#: lexsup.c:569
msgid "Read version information script"
msgstr "Legge lo script delle informazioni di versione"
 
#: lexsup.c:572
msgid ""
"Take export symbols list from .exports, using\n"
" SYMBOL as the version."
msgstr ""
"Ottiene l'elenco dei simboli di esportazione da .exports,\n"
" usando SIMBOLO come versione."
 
#: lexsup.c:576
msgid "Add data symbols to dynamic list"
msgstr "Aggiunge i simboli dei dati all'elenco dinamico"
 
#: lexsup.c:578
msgid "Use C++ operator new/delete dynamic list"
msgstr "Usa l'elenco dinamico dell'operatore C++ new/delete"
 
#: lexsup.c:580
msgid "Use C++ typeinfo dynamic list"
msgstr "Usa l'elenco dinamico C++ typeinfo"
 
#: lexsup.c:582
msgid "Read dynamic list"
msgstr "Legge l'elenco dinamico"
 
#: lexsup.c:584
msgid "Warn about duplicate common symbols"
msgstr "Avvisa in caso di simboli comuni duplicati"
 
#: lexsup.c:586
msgid "Warn if global constructors/destructors are seen"
msgstr "Avvisa se sono presenti costruttori/distruttori globali"
 
#: lexsup.c:589
msgid "Warn if the multiple GP values are used"
msgstr "Avvisa se sono usati i valori multipli di GP"
 
#: lexsup.c:591
msgid "Warn only once per undefined symbol"
msgstr "Avvisa sola una volta per ogni simbolo indefinito"
 
#: lexsup.c:593
msgid "Warn if start of section changes due to alignment"
msgstr "Avvisa se l'inizio della sezione cambia a causa dell'allineamento"
 
#: lexsup.c:596
msgid "Warn if shared object has DT_TEXTREL"
msgstr "Avvisa se l'oggetto condiviso contiene DT_TEXTREL"
 
#: lexsup.c:599
msgid "Warn if an object has alternate ELF machine code"
msgstr "Avvisa se un oggetto contiene codice macchina ELF alternativo"
 
#: lexsup.c:603
msgid "Report unresolved symbols as warnings"
msgstr "Segnala i simboli non risolti come avvertimenti"
 
#: lexsup.c:606
msgid "Report unresolved symbols as errors"
msgstr "Segnala i simboli non risolti come errori"
 
#: lexsup.c:608
msgid "Include all objects from following archives"
msgstr "Include tutti gli oggetti dai seguenti archivi"
 
#: lexsup.c:611
msgid "Use wrapper functions for SYMBOL"
msgstr "Usa le funzioni wrapper per il SIMBOLO"
 
#: lexsup.c:760
msgid "%P: unrecognized option '%s'\n"
msgstr "%P: opzione \"%s\" non riconosciuta\n"
 
#: lexsup.c:764
msgid "%P%F: use the --help option for usage information\n"
msgstr "%P%F: usare l'opzione --help per le informazioni sull'uso\n"
 
#: lexsup.c:782
msgid "%P%F: unrecognized -a option `%s'\n"
msgstr "%P%F: opzione -a non riconosciuta \"%s\"\n"
 
#: lexsup.c:795
msgid "%P%F: unrecognized -assert option `%s'\n"
msgstr "%P%F: opzione -assert non riconosciuta \"%s\"\n"
 
#: lexsup.c:838
msgid "%F%P: unknown demangling style `%s'"
msgstr "%F%P: stile di decodifica sconosciuto \"%s\""
 
#: lexsup.c:904 lexsup.c:1335
msgid "%P%F: invalid number `%s'\n"
msgstr "%P%F: numero non valido \"%s\"\n"
 
#: lexsup.c:1002
msgid "%P%F: bad --unresolved-symbols option: %s\n"
msgstr "%P%F: opzione --unresolved-symbols errata: %s\n"
 
#: lexsup.c:1065 lexsup.c:1564
msgid "%P%F: %s: error loading plugin\n"
msgstr "%P%F: %s: errore nel caricamento del plugin\n"
 
#: lexsup.c:1070
msgid "%P%F: bad -plugin-opt option\n"
msgstr "%P%F: opzione -plugin-opt errata\n"
 
#. This can happen if the user put "-rpath,a" on the command
#. line. (Or something similar. The comma is important).
#. Getopt becomes confused and thinks that this is a -r option
#. but it cannot parse the text after the -r so it refuses to
#. increment the optind counter. Detect this case and issue
#. an error message here. We cannot just make this a warning,
#. increment optind, and continue because getopt is too confused
#. and will seg-fault the next time around.
#: lexsup.c:1087
msgid "%P%F: bad -rpath option\n"
msgstr "%P%F: opzione -rpath errata\n"
 
#: lexsup.c:1201
msgid "%P%F: -shared not supported\n"
msgstr "%P%F: opzione -shared non supportata\n"
 
#: lexsup.c:1210
msgid "%P%F: -pie not supported\n"
msgstr "%P%F: opzione -pie non supportata\n"
 
#: lexsup.c:1218
msgid "descending"
msgstr "decrescente"
 
#: lexsup.c:1220
msgid "ascending"
msgstr "crescente"
 
#: lexsup.c:1223
msgid "%P%F: invalid common section sorting option: %s\n"
msgstr "%P%F: opzione di ordinamento non valida per la sezione comune: %s\n"
 
#: lexsup.c:1227
msgid "name"
msgstr "nome"
 
#: lexsup.c:1229
msgid "alignment"
msgstr "allineamento"
 
#: lexsup.c:1232
msgid "%P%F: invalid section sorting option: %s\n"
msgstr "%P%F: opzione di ordinamento non valida per la sezione: %s\n"
 
#: lexsup.c:1266
msgid "%P%F: invalid argument to option \"--section-start\"\n"
msgstr "%P%F: argomento non valido per l'opzione \"--section-start\"\n"
 
#: lexsup.c:1273
msgid "%P%F: missing argument(s) to option \"--section-start\"\n"
msgstr "%P%F: argomenti mancanti per l'opzione \"--section-start\"\n"
 
#: lexsup.c:1507
msgid "%P%F: group ended before it began (--help for usage)\n"
msgstr "%P%F: il gruppo è terminato prima di essere iniziato (--help per l'uso)\n"
 
#: lexsup.c:1535
msgid "%P%X: --hash-size needs a numeric argument\n"
msgstr "%P%X: --hash-size ha bisogno di un argomento numerico\n"
 
#: lexsup.c:1595 lexsup.c:1608
msgid "%P%F: invalid hex number `%s'\n"
msgstr "%P%F: numero esadecimale non valido \"%s\"\n"
 
#: lexsup.c:1644
#, c-format
msgid "Usage: %s [options] file...\n"
msgstr "Uso: %s [opzioni] file...\n"
 
#: lexsup.c:1646
#, c-format
msgid "Options:\n"
msgstr "Opzioni:\n"
 
#: lexsup.c:1724
#, c-format
msgid " @FILE"
msgstr " @FILE"
 
#: lexsup.c:1727
#, c-format
msgid "Read options from FILE\n"
msgstr "Legge le opzioni dal FILE\n"
 
#. Note: Various tools (such as libtool) depend upon the
#. format of the listings below - do not change them.
#: lexsup.c:1732
#, c-format
msgid "%s: supported targets:"
msgstr "%s: obiettivi supportati:"
 
#: lexsup.c:1740
#, c-format
msgid "%s: supported emulations: "
msgstr "%s: emulazioni supportate: "
 
#: lexsup.c:1745
#, c-format
msgid "%s: emulation specific options:\n"
msgstr "%s: opzioni specifiche per l'emulazione:\n"
 
#: lexsup.c:1750
#, c-format
msgid "Report bugs to %s\n"
msgstr "Segnalare i bug a %s\n"
 
#: mri.c:292
msgid "%P%F: unknown format type %s\n"
msgstr "%P%F: tipo di formato sconosciuto %s\n"
 
#: pe-dll.c:431
#, c-format
msgid "%XUnsupported PEI architecture: %s\n"
msgstr "%XArchitettura PEI non supportata: %s\n"
 
#: pe-dll.c:791
#, c-format
msgid "%XCannot export %s: invalid export name\n"
msgstr "%XImpossibile esportare %s: nome di esportazione non valido\n"
 
#: pe-dll.c:848
#, c-format
msgid "%XError, duplicate EXPORT with ordinals: %s (%d vs %d)\n"
msgstr "%XErrore, EXPORT duplicata con ordinali: %s (%d contro %d)\n"
 
#: pe-dll.c:855
#, c-format
msgid "Warning, duplicate EXPORT: %s\n"
msgstr "Attenzione, EXPORT duplicata: %s\n"
 
#: pe-dll.c:942
#, c-format
msgid "%XCannot export %s: symbol not defined\n"
msgstr "%XImpossibile esportare %s: simbolo non definito\n"
 
#: pe-dll.c:948
#, c-format
msgid "%XCannot export %s: symbol wrong type (%d vs %d)\n"
msgstr "%XImpossibile esportare %s: simbolo di tipo errato (%d contro %d)\n"
 
#: pe-dll.c:955
#, c-format
msgid "%XCannot export %s: symbol not found\n"
msgstr "%XImpossibile esportare %s: simbolo non trovato\n"
 
#: pe-dll.c:1069
#, c-format
msgid "%XError, ordinal used twice: %d (%s vs %s)\n"
msgstr "%XErrore, ordinale usato due volte: %d (%s contro %s)\n"
 
#: pe-dll.c:1450
#, c-format
msgid "%XError: %d-bit reloc in dll\n"
msgstr "%XErrore: rilocazione di %d bit nella dll\n"
 
#: pe-dll.c:1578
#, c-format
msgid "%s: Can't open output def file %s\n"
msgstr "%s: impossibile aprire il file def di output %s\n"
 
#: pe-dll.c:1729
#, c-format
msgid "; no contents available\n"
msgstr "; nessun contenuto disponibile\n"
 
#: pe-dll.c:2656
msgid "%C: variable '%T' can't be auto-imported. Please read the documentation for ld's --enable-auto-import for details.\n"
msgstr "%C: la variabile \"%T\" non può essere importata automaticamente. Per dettagli, consultare la documentazione di --enable-auto-import di ld.\n"
 
#: pe-dll.c:2686
#, c-format
msgid "%XCan't open .lib file: %s\n"
msgstr "%XImpossibile aprire il file .lib: %s\n"
 
#: pe-dll.c:2691
#, c-format
msgid "Creating library file: %s\n"
msgstr "Creazione del file di libreria: %s\n"
 
#: pe-dll.c:2720
#, c-format
msgid "%Xbfd_openr %s: %E\n"
msgstr "%Xbfd_openr %s: %E\n"
 
#: pe-dll.c:2732
#, c-format
msgid "%X%s(%s): can't find member in non-archive file"
msgstr "%X%s(%s): impossibile trovare il membro in un file non di archivio"
 
#: pe-dll.c:2744
#, c-format
msgid "%X%s(%s): can't find member in archive"
msgstr "%X%s(%s): impossibile trovare il membro nell'archivio"
 
#: pe-dll.c:3183
#, c-format
msgid "%XError: can't use long section names on this arch\n"
msgstr "%XErrore: impossibile usare nomi lunghi di sezione su questa architettura\n"
 
#: plugin.c:176 plugin.c:210
msgid "<no plugin>"
msgstr "<nessun plugin>"
 
#: plugin.c:249
#, c-format
msgid "could not create dummy IR bfd: %F%E\n"
msgstr "impossibile creare un bfd IR fittizio: %F%E\n"
 
#: plugin.c:322
msgid "%P%F: %s: non-ELF symbol in ELF BFD!\n"
msgstr "%P%F: %s: simbolo non ELF nel BFD ELF.\n"
 
#: plugin.c:326
msgid "%P%F: unknown ELF symbol visibility: %d!\n"
msgstr "%P%F: visibilità del simbolo ELF sconosciuta: %d\n"
 
#: plugin.c:559
msgid "%P: %B: symbol `%s' definition: %d, visibility: %d, resolution: %d\n"
msgstr "%P: %B: simbolo \"%s\" definizione: %d, visibilità: %d, risoluzione: %d\n"
 
#: plugin.c:825
msgid "%P%F: %s: plugin reported error claiming file\n"
msgstr "%P%F: %s: il plugin ha riportato un errore richiedendo il file\n"
 
#: plugin.c:896
msgid "%P: %s: error in plugin cleanup (ignored)\n"
msgstr "%P: %s: errore nella pulizia del plugin (ignorata)\n"
/configure.tgt
456,10 → 456,17
pj*-*-*) targ_emul=pjelf
;;
powerpc-*-freebsd* | powerpc-*-kfreebsd*-gnu)
targ_emul=elf32ppc_fbsd;
targ_extra_emuls="elf32ppc elf32ppcsim";
targ_emul=elf32ppc_fbsd
targ_extra_emuls="elf32ppc elf32ppcsim"
targ_extra_libpath=elf32ppc;
tdir_elf32ppcsim=`echo ${targ_alias} | sed -e 's/ppc/ppcsim/'` ;;
powerpc64-*-freebsd*)
targ_emul=elf64ppc_fbsd
targ_extra_emuls="elf64ppc elf32ppc_fbsd elf32ppc"
targ_extra_libpath="elf32ppc_fbsd elf32ppc"
tdir_elf32ppc=`echo "${targ_alias}" | sed -e 's/64//'`
tdir_elf32ppc_fbsd=$tdir_elf32ppc
;;
powerpc*-*-linux*) case "${targ}" in
*64*) targ_emul=elf64ppc
targ_extra_emuls="elf32ppclinux elf32ppc elf32ppcsim"
648,8 → 655,11
tic80-*-*) targ_emul=tic80coff
;;
tilegx-*-*) targ_emul=elf64tilegx
targ_extra_emuls="elf32tilegx"
targ_extra_emuls="elf64tilegx_be elf32tilegx elf32tilegx_be"
targ_extra_libpath=$targ_extra_emuls ;;
tilegxbe-*-*) targ_emul=elf64tilegx_be
targ_extra_emuls="elf64tilegx elf32tilegx elf32tilegx_be"
targ_extra_libpath=$targ_extra_emuls ;;
tilepro-*-*) targ_emul=elf32tilepro ;;
v850*-*-*) targ_emul=v850
;;
/deffilep.y
113,6 → 113,7
 
%union {
char *id;
const char *id_const;
int number;
char *digits;
};
127,8 → 128,9
%type <digits> opt_digits
%type <number> opt_base opt_ordinal
%type <number> attr attr_list opt_number exp_opt_list exp_opt
%type <id> opt_name opt_equal_name dot_name anylang_id opt_id
%type <id> opt_name opt_name2 opt_equal_name anylang_id opt_id
%type <id> opt_equalequal_name
%type <id_const> keyword_as_name
 
%%
 
164,7 → 166,7
/* The opt_comma is necessary to support both the usual
DEF file syntax as well as .drectve syntax which
mandates <expsym>,<expoptlist>. */
dot_name opt_equal_name opt_ordinal opt_comma exp_opt_list opt_comma opt_equalequal_name
opt_name2 opt_equal_name opt_ordinal opt_comma exp_opt_list opt_comma opt_equalequal_name
{ def_exports ($1, $2, $3, $5, $7); }
;
exp_opt_list:
234,19 → 236,65
| SHARED { $$=8;}
;
 
opt_name: ID { $$ = $1; }
| '.' ID
 
keyword_as_name: BASE { $$ = "BASE"; }
| CODE { $$ = "CODE"; }
| CONSTANTU { $$ = "CONSTANT"; }
| CONSTANTL { $$ = "constant"; }
| DATAU { $$ = "DATA"; }
| DATAL { $$ = "data"; }
| DESCRIPTION { $$ = "DESCRIPTION"; }
| DIRECTIVE { $$ = "DIRECTIVE"; }
| EXECUTE { $$ = "EXECUTE"; }
| EXPORTS { $$ = "EXPORTS"; }
| HEAPSIZE { $$ = "HEAPSIZE"; }
| IMPORTS { $$ = "IMPORTS"; }
/* Disable LIBRARY keyword as valid symbol-name. This is necessary
for libtool, which places this command after EXPORTS command.
This behavior is illegal by specification, but sadly required by
by compatibility reasons.
See PR binutils/13710
| LIBRARY { $$ = "LIBRARY"; } */
| NAME { $$ = "NAME"; }
| NONAMEU { $$ = "NONAME"; }
| NONAMEL { $$ = "noname"; }
| PRIVATEU { $$ = "PRIVATE"; }
| PRIVATEL { $$ = "private"; }
| READ { $$ = "READ"; }
| SHARED { $$ = "SHARED"; }
| STACKSIZE_K { $$ = "STACKSIZE"; }
| VERSIONK { $$ = "VERSION"; }
| WRITE { $$ = "WRITE"; }
;
 
opt_name2: ID { $$ = $1; }
| '.' keyword_as_name
{
char *name = xmalloc (strlen ($2) + 2);
sprintf (name, ".%s", $2);
$$ = name;
}
| '.' opt_name2
{
char *name = def_pool_alloc (strlen ($2) + 2);
sprintf (name, ".%s", $2);
$$ = name;
}
| ID '.' ID
| keyword_as_name '.' opt_name2
{
char *name = def_pool_alloc (strlen ($1) + 1 + strlen ($3) + 1);
sprintf (name, "%s.%s", $1, $3);
$$ = name;
}
| ID '.' opt_name2
{
char *name = def_pool_alloc (strlen ($1) + 1 + strlen ($3) + 1);
sprintf (name, "%s.%s", $1, $3);
$$ = name;
}
;
 
opt_name: opt_name2 { $$ = $1; }
| { $$ = ""; }
;
 
260,7 → 308,7
;
 
opt_equal_name:
'=' dot_name { $$ = $2; }
'=' opt_name2 { $$ = $2; }
| { $$ = 0; }
;
 
268,21 → 316,6
| { $$ = -1;}
;
 
dot_name: ID { $$ = $1; }
| '.' ID
{
char *name = def_pool_alloc (strlen ($2) + 2);
sprintf (name, ".%s", $2);
$$ = name;
}
| dot_name '.' ID
{
char *name = def_pool_alloc (strlen ($1) + 1 + strlen ($3) + 1);
sprintf (name, "%s.%s", $1, $3);
$$ = name;
}
;
 
anylang_id: ID { $$ = $1; }
| '.' ID
{
594,13 → 627,21
if (!max)
return 0;
if ((e = cmp_export_elem (b, ex_name, in_name, its_name, ord)) <= 0)
return 0;
{
if (!e)
*is_ident = 1;
return 0;
}
if (max == 1)
return 1;
if ((e = cmp_export_elem (b + (max - 1), ex_name, in_name, its_name, ord)) > 0)
return max;
else if (!e || max == 2)
return max - 1;
{
if (!e)
*is_ident = 1;
return max - 1;
}
l = 0; r = max - 1;
while (l < r)
{
705,6 → 746,8
{
int r;
 
if ((r = are_names_equal (module, (e->module ? e->module->name : NULL))))
return r;
if ((r = are_names_equal (ex_name, e->name)) != 0)
return r;
if ((r = are_names_equal (in_name, e->internal_name)) != 0)
711,7 → 754,7
return r;
if (ord != e->ordinal)
return (ord < e->ordinal ? -1 : 1);
return are_names_equal (module, (e->module ? e->module->name : NULL));
return 0;
}
 
/* Search the position of the identical element, or returns the position
729,13 → 772,21
if (!max)
return 0;
if ((e = cmp_import_elem (b, ex_name, in_name, module, ord)) <= 0)
return 0;
{
if (!e)
*is_ident = 1;
return 0;
}
if (max == 1)
return 1;
if ((e = cmp_import_elem (b + (max - 1), ex_name, in_name, module, ord)) > 0)
return max;
else if (!e || max == 2)
return max - 1;
{
if (!e)
*is_ident = 1;
return max - 1;
}
l = 0; r = max - 1;
while (l < r)
{
/ldexp.c
1,6 → 1,6
/* This module handles expression trees.
Copyright 1991, 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2000,
2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010, 2011
2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010, 2011, 2012
Free Software Foundation, Inc.
Written by Steve Chamberlain of Cygnus Support <sac@cygnus.com>.
 
156,6 → 156,7
{
etree_type *new_e = (etree_type *) stat_alloc (sizeof (new_e->value));
new_e->type.node_code = INT;
new_e->type.filename = ldlex_filename ();
new_e->type.lineno = lineno;
new_e->value.value = value;
new_e->value.str = NULL;
168,6 → 169,7
{
etree_type *new_e = (etree_type *) stat_alloc (sizeof (new_e->value));
new_e->type.node_code = INT;
new_e->type.filename = ldlex_filename ();
new_e->type.lineno = lineno;
new_e->value.value = value;
new_e->value.str = str;
182,6 → 184,7
{
etree_type *new_e = (etree_type *) stat_alloc (sizeof (new_e->rel));
new_e->type.node_code = REL;
new_e->type.filename = ldlex_filename ();
new_e->type.lineno = lineno;
new_e->type.node_class = etree_rel;
new_e->rel.section = section;
404,7 → 407,7
expld.result.value = ((bfd_signed_vma) lhs.value
% (bfd_signed_vma) expld.result.value);
else if (expld.phase != lang_mark_phase_enum)
einfo (_("%F%S %% by zero\n"));
einfo (_("%F%S %% by zero\n"), tree->binary.rhs);
if (expld.result.section == lhs.section)
expld.result.section = NULL;
break;
414,7 → 417,7
expld.result.value = ((bfd_signed_vma) lhs.value
/ (bfd_signed_vma) expld.result.value);
else if (expld.phase != lang_mark_phase_enum)
einfo (_("%F%S / by zero\n"));
einfo (_("%F%S / by zero\n"), tree->binary.rhs);
if (expld.result.section == lhs.section)
expld.result.section = NULL;
break;
587,10 → 590,12
output_section = h->u.def.section->output_section;
if (output_section == NULL)
{
if (expld.phase != lang_mark_phase_enum)
if (expld.phase == lang_mark_phase_enum)
new_rel (h->u.def.value, h->u.def.section);
else
einfo (_("%X%S: unresolvable symbol `%s'"
" referenced in expression\n"),
tree->name.name);
tree, tree->name.name);
}
else if (output_section == bfd_abs_section_ptr
&& (expld.section != bfd_abs_section_ptr
602,8 → 607,9
}
else if (expld.phase == lang_final_phase_enum
|| expld.assigning_to_dot)
einfo (_("%F%S: undefined symbol `%s' referenced in expression\n"),
tree->name.name);
einfo (_("%F%S: undefined symbol `%s'"
" referenced in expression\n"),
tree, tree->name.name);
else if (h->type == bfd_link_hash_new)
{
h->type = bfd_link_hash_undefined;
623,8 → 629,9
if (os == NULL)
{
if (expld.phase == lang_final_phase_enum)
einfo (_("%F%S: undefined section `%s' referenced in expression\n"),
tree->name.name);
einfo (_("%F%S: undefined section `%s'"
" referenced in expression\n"),
tree, tree->name.name);
}
else if (os->processed_vma)
new_rel (0, os->bfd_section);
640,8 → 647,9
if (os == NULL)
{
if (expld.phase == lang_final_phase_enum)
einfo (_("%F%S: undefined section `%s' referenced in expression\n"),
tree->name.name);
einfo (_("%F%S: undefined section `%s'"
" referenced in expression\n"),
tree, tree->name.name);
}
else if (os->processed_lma)
{
667,8 → 675,9
if (os == NULL)
{
if (expld.phase == lang_final_phase_enum)
einfo (_("%F%S: undefined section `%s' referenced in expression\n"),
tree->name.name);
einfo (_("%F%S: undefined section `%s'"
" referenced in expression\n"),
tree, tree->name.name);
new_number (0);
}
else if (os->processed_vma)
695,7 → 704,8
new_number (mem->length);
else
einfo (_("%F%S: undefined MEMORY region `%s'"
" referenced in expression\n"), tree->name.name);
" referenced in expression\n"),
tree, tree->name.name);
}
break;
 
709,7 → 719,8
new_rel_from_abs (mem->origin);
else
einfo (_("%F%S: undefined MEMORY region `%s'"
" referenced in expression\n"), tree->name.name);
" referenced in expression\n"),
tree, tree->name.name);
}
break;
 
720,7 → 731,7
new_number (config.commonpagesize);
else
einfo (_("%F%S: unknown constant `%s' referenced in expression\n"),
tree->name.name);
tree, tree->name.name);
break;
 
default:
784,7 → 795,8
if (tree->assign.dst[0] == '.' && tree->assign.dst[1] == 0)
{
if (tree->type.node_class != etree_assign)
einfo (_("%F%S can not PROVIDE assignment to location counter\n"));
einfo (_("%F%S can not PROVIDE assignment to"
" location counter\n"), tree);
/* After allocation, assignment to dot should not be done inside
an output section since allocation adds a padding statement
that effectively duplicates the assignment. */
802,11 → 814,12
if (!expld.result.valid_p)
{
if (expld.phase != lang_mark_phase_enum)
einfo (_("%F%S invalid assignment to location counter\n"));
einfo (_("%F%S invalid assignment to"
" location counter\n"), tree);
}
else if (expld.dotp == NULL)
einfo (_("%F%S assignment to location counter"
" invalid outside of SECTION\n"));
" invalid outside of SECTION\n"), tree);
else
{
bfd_vma nextdot;
819,7 → 832,8
if (nextdot < expld.dot
&& expld.section != bfd_abs_section_ptr)
einfo (_("%F%S cannot move location counter backwards"
" (from %V to %V)\n"), expld.dot, nextdot);
" (from %V to %V)\n"),
tree, expld.dot, nextdot);
else
{
expld.dot = nextdot;
870,7 → 884,7
 
exp_fold_tree_1 (tree->assign.src);
if (expld.result.valid_p
|| (expld.phase == lang_first_phase_enum
|| (expld.phase <= lang_mark_phase_enum
&& tree->type.node_class == etree_assign
&& tree->assign.hidden))
{
955,6 → 969,7
etree_type value, *new_e;
 
value.type.node_code = code;
value.type.filename = lhs->type.filename;
value.type.lineno = lhs->type.lineno;
value.binary.lhs = lhs;
value.binary.rhs = rhs;
974,7 → 989,8
etree_type value, *new_e;
 
value.type.node_code = code;
value.type.lineno = lhs->type.lineno;
value.type.filename = cond->type.filename;
value.type.lineno = cond->type.lineno;
value.trinary.lhs = lhs;
value.trinary.cond = cond;
value.trinary.rhs = rhs;
994,6 → 1010,7
etree_type value, *new_e;
 
value.unary.type.node_code = code;
value.unary.type.filename = child->type.filename;
value.unary.type.lineno = child->type.lineno;
value.unary.child = child;
value.unary.type.node_class = etree_unary;
1012,6 → 1029,7
etree_type value, *new_e;
 
value.name.type.node_code = code;
value.name.type.filename = ldlex_filename ();
value.name.type.lineno = lineno;
value.name.name = name;
value.name.type.node_class = etree_name;
1036,6 → 1054,7
 
n = (etree_type *) stat_alloc (sizeof (n->assign));
n->assign.type.node_code = '=';
n->assign.type.filename = src->type.filename;
n->assign.type.lineno = src->type.lineno;
n->assign.type.node_class = class;
n->assign.src = src;
1073,6 → 1092,7
 
n = (etree_type *) stat_alloc (sizeof (n->assert_s));
n->assert_s.type.node_code = '!';
n->assert_s.type.filename = exp->type.filename;
n->assert_s.type.lineno = exp->type.lineno;
n->assert_s.type.node_class = etree_assert;
n->assert_s.child = exp;
1188,7 → 1208,8
if (expld.result.valid_p)
return expld.result.value;
else if (name != NULL && expld.phase != lang_mark_phase_enum)
einfo (_("%F%S: nonconstant expression for %s\n"), name);
einfo (_("%F%S: nonconstant expression for %s\n"),
tree, name);
}
return def;
}
1213,7 → 1234,8
if (!expld.result.valid_p)
{
if (name != NULL && expld.phase != lang_mark_phase_enum)
einfo (_("%F%S: nonconstant expression for %s\n"), name);
einfo (_("%F%S: nonconstant expression for %s\n"),
tree, name);
return def;
}
 
1272,8 → 1294,8
}
else if (name != NULL && expld.phase != lang_mark_phase_enum)
{
lineno = tree->type.lineno;
einfo (_("%F%S: nonconstant expression for %s\n"), name);
einfo (_("%F%S: nonconstant expression for %s\n"),
tree, name);
}
}
return def;
/pe-dll.c
1,6 → 1,6
/* Routines to help build PEI-format DLLs (Win32 etc)
Copyright 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007,
2008, 2009, 2010, 2011 Free Software Foundation, Inc.
2008, 2009, 2010, 2011, 2012 Free Software Foundation, Inc.
Written by DJ Delorie <dj@cygnus.com>
 
This file is part of the GNU Binutils.
529,17 → 529,21
static int
auto_export (bfd *abfd, def_file *d, const char *n)
{
int i;
def_file_export key;
struct exclude_list_struct *ex;
const autofilter_entry_type *afptr;
const char * libname = 0;
const char * libname = NULL;
 
if (abfd && abfd->my_archive)
libname = lbasename (abfd->my_archive->filename);
 
for (i = 0; i < d->num_exports; i++)
if (strcmp (d->exports[i].name, n) == 0)
return 0;
key.name = key.its_name = (char *) n;
 
/* Return false if n is in the d->exports table. */
if (bsearch (&key, d->exports, d->num_exports,
sizeof (pe_def_file->exports[0]), pe_export_sort))
return 0;
 
if (pe_dll_do_default_excludes)
{
const char * p;
644,6 → 648,7
bfd *b;
struct bfd_section *s;
def_file_export *e = 0;
bfd_boolean resort_needed;
 
if (!pe_def_file)
pe_def_file = def_file_empty ();
750,6 → 755,7
{
int is_dup = 0;
def_file_export *p;
 
p = def_file_add_export (pe_def_file, sn, 0, -1,
NULL, &is_dup);
/* Fill data flag properly, from dlltool.c. */
768,6 → 774,8
if (NE == 0)
return;
 
resort_needed = FALSE;
 
/* Canonicalize the export list. */
if (pe_dll_kill_ats)
{
788,10 → 796,17
einfo (_("%XCannot export %s: invalid export name\n"),
pe_def_file->exports[i].name);
pe_def_file->exports[i].name = tmp;
resort_needed = TRUE;
}
}
}
 
/* Re-sort the exports table as we have possibly changed the order
by removing leading @. */
if (resort_needed)
qsort (pe_def_file->exports, NE, sizeof (pe_def_file->exports[0]),
pe_export_sort);
 
if (pe_dll_stdcall_aliases)
{
for (i = 0; i < NE; i++)
819,18 → 834,6
/* Convenience, but watch out for it changing. */
e = pe_def_file->exports;
 
exported_symbol_offsets = xmalloc (NE * sizeof (bfd_vma));
exported_symbol_sections = xmalloc (NE * sizeof (struct bfd_section *));
 
memset (exported_symbol_sections, 0, NE * sizeof (struct bfd_section *));
max_ordinal = 0;
min_ordinal = 65536;
count_exported = 0;
count_exported_byname = 0;
count_with_ordinals = 0;
 
qsort (pe_def_file->exports, NE, sizeof (pe_def_file->exports[0]),
pe_export_sort);
for (i = 0, j = 0; i < NE; i++)
{
if (i > 0 && strcmp (e[i].name, e[i - 1].name) == 0)
859,6 → 862,12
e[j - 1].flag_constant |= e[i].flag_constant;
e[j - 1].flag_noname |= e[i].flag_noname;
e[j - 1].flag_data |= e[i].flag_data;
if (e[i].name)
free (e[i].name);
if (e[i].internal_name)
free (e[i].internal_name);
if (e[i].its_name)
free (e[i].its_name);
}
else
{
869,6 → 878,16
}
pe_def_file->num_exports = j; /* == NE */
 
exported_symbol_offsets = xmalloc (NE * sizeof (bfd_vma));
exported_symbol_sections = xmalloc (NE * sizeof (struct bfd_section *));
 
memset (exported_symbol_sections, 0, NE * sizeof (struct bfd_section *));
max_ordinal = 0;
min_ordinal = 65536;
count_exported = 0;
count_exported_byname = 0;
count_with_ordinals = 0;
 
for (i = 0; i < NE; i++)
{
char *name;
2848,7 → 2867,9
void
pe_process_import_defs (bfd *output_bfd, struct bfd_link_info *linfo)
{
int i, j;
def_file_module *module;
def_file_import *imp;
 
pe_dll_id_target (bfd_get_target (output_bfd));
 
2855,92 → 2876,92
if (!pe_def_file)
return;
 
imp = pe_def_file->imports;
 
for (module = pe_def_file->modules; module; module = module->next)
{
int i, do_this_dll;
int do_this_dll = 0;
 
for (i = 0; i < pe_def_file->num_imports && imp[i].module != module; i++)
;
if (i >= pe_def_file->num_imports)
continue;
 
dll_filename = module->name;
dll_symname = xstrdup (module->name);
for (i = 0; dll_symname[i]; i++)
if (!ISALNUM (dll_symname[i]))
dll_symname[i] = '_';
for (j = 0; dll_symname[j]; j++)
if (!ISALNUM (dll_symname[j]))
dll_symname[j] = '_';
 
do_this_dll = 0;
for (; i < pe_def_file->num_imports && imp[i].module == module; i++)
{
def_file_export exp;
struct bfd_link_hash_entry *blhe;
int lead_at = (*imp[i].internal_name == '@');
/* See if we need this import. */
size_t len = strlen (imp[i].internal_name);
char *name = xmalloc (len + 2 + 6);
bfd_boolean include_jmp_stub = FALSE;
bfd_boolean is_cdecl = FALSE;
if (!lead_at && strchr (imp[i].internal_name, '@') == NULL)
is_cdecl = TRUE;
 
for (i = 0; i < pe_def_file->num_imports; i++)
if (pe_def_file->imports[i].module == module)
{
def_file_export exp;
struct bfd_link_hash_entry *blhe;
int lead_at = (*pe_def_file->imports[i].internal_name == '@');
/* See if we need this import. */
size_t len = strlen (pe_def_file->imports[i].internal_name);
char *name = xmalloc (len + 2 + 6);
bfd_boolean include_jmp_stub = FALSE;
bfd_boolean is_cdecl = FALSE;
if (!lead_at && strchr (pe_def_file->imports[i].internal_name, '@') == NULL)
is_cdecl = TRUE;
if (lead_at)
sprintf (name, "%s", imp[i].internal_name);
else
sprintf (name, "%s%s",U (""), imp[i].internal_name);
 
if (lead_at)
sprintf (name, "%s",
pe_def_file->imports[i].internal_name);
else
sprintf (name, "%s%s",U (""),
pe_def_file->imports[i].internal_name);
blhe = bfd_link_hash_lookup (linfo->hash, name,
FALSE, FALSE, FALSE);
 
blhe = bfd_link_hash_lookup (linfo->hash, name,
FALSE, FALSE, FALSE);
/* Include the jump stub for <sym> only if the <sym>
is undefined. */
if (!blhe || (blhe && blhe->type != bfd_link_hash_undefined))
{
if (lead_at)
sprintf (name, "%s%s", "__imp_", imp[i].internal_name);
else
sprintf (name, "%s%s%s", "__imp_", U (""),
imp[i].internal_name);
 
/* Include the jump stub for <sym> only if the <sym>
is undefined. */
if (!blhe || (blhe && blhe->type != bfd_link_hash_undefined))
{
if (lead_at)
sprintf (name, "%s%s", "__imp_",
pe_def_file->imports[i].internal_name);
else
sprintf (name, "%s%s%s", "__imp_", U (""),
pe_def_file->imports[i].internal_name);
blhe = bfd_link_hash_lookup (linfo->hash, name,
FALSE, FALSE, FALSE);
}
else
include_jmp_stub = TRUE;
 
blhe = bfd_link_hash_lookup (linfo->hash, name,
FALSE, FALSE, FALSE);
}
else
if (is_cdecl && !blhe)
{
sprintf (name, "%s%s",U (""), imp[i].internal_name);
blhe = pe_find_cdecl_alias_match (name);
include_jmp_stub = TRUE;
}
 
if (is_cdecl && !blhe)
{
sprintf (name, "%s%s",U (""),
pe_def_file->imports[i].internal_name);
blhe = pe_find_cdecl_alias_match (name);
include_jmp_stub = TRUE;
}
free (name);
 
free (name);
 
if (blhe && blhe->type == bfd_link_hash_undefined)
{
bfd *one;
/* We do. */
if (!do_this_dll)
{
bfd *ar_head = make_head (output_bfd);
add_bfd_to_link (ar_head, ar_head->filename, linfo);
do_this_dll = 1;
}
exp.internal_name = pe_def_file->imports[i].internal_name;
exp.name = pe_def_file->imports[i].name;
exp.its_name = pe_def_file->imports[i].its_name;
exp.ordinal = pe_def_file->imports[i].ordinal;
exp.hint = exp.ordinal >= 0 ? exp.ordinal : 0;
exp.flag_private = 0;
exp.flag_constant = 0;
exp.flag_data = pe_def_file->imports[i].data;
exp.flag_noname = exp.name ? 0 : 1;
one = make_one (&exp, output_bfd, (! exp.flag_data) && include_jmp_stub);
add_bfd_to_link (one, one->filename, linfo);
}
}
if (blhe && blhe->type == bfd_link_hash_undefined)
{
bfd *one;
/* We do. */
if (!do_this_dll)
{
bfd *ar_head = make_head (output_bfd);
add_bfd_to_link (ar_head, ar_head->filename, linfo);
do_this_dll = 1;
}
exp.internal_name = imp[i].internal_name;
exp.name = imp[i].name;
exp.its_name = imp[i].its_name;
exp.ordinal = imp[i].ordinal;
exp.hint = exp.ordinal >= 0 ? exp.ordinal : 0;
exp.flag_private = 0;
exp.flag_constant = 0;
exp.flag_data = imp[i].data;
exp.flag_noname = exp.name ? 0 : 1;
one = make_one (&exp, output_bfd, (! exp.flag_data) && include_jmp_stub);
add_bfd_to_link (one, one->filename, linfo);
}
}
if (do_this_dll)
{
bfd *ar_tail = make_tail (output_bfd);
3165,7 → 3186,7
|| (func_rva >= bss_start && func_rva < bss_end);
 
imp = def_file_add_import (pe_def_file, erva + name_rva,
dllname, i, 0, NULL, &is_dup);
dllname, i, NULL, NULL, &is_dup);
/* Mark symbol type. */
if (!is_dup)
imp->data = is_data;
/ldexp.h
1,6 → 1,6
/* ldexp.h -
Copyright 1991, 1992, 1993, 1994, 1995, 1998, 1999, 2000, 2001, 2002,
2003, 2004, 2005, 2007, 2011 Free Software Foundation, Inc.
2003, 2004, 2005, 2007, 2011, 2012 Free Software Foundation, Inc.
 
This file is part of the GNU Binutils.
 
46,6 → 46,7
typedef struct {
int node_code;
unsigned int lineno;
const char *filename;
enum node_tree_enum node_class;
} node_type;
 
93,11 → 94,19
} assert_s;
} etree_type;
 
typedef enum {
/* Expression evaluation control. */
typedef enum
{
/* Parsing linker script. Will only return "valid" for expressions
that evaluate to a constant. */
lang_first_phase_enum,
/* Prior to section sizing. */
lang_mark_phase_enum,
/* During section sizing. */
lang_allocating_phase_enum,
/* During assignment of symbol values when relaxation in progress. */
lang_assigning_phase_enum,
/* Final assignment of symbol values. */
lang_final_phase_enum
} lang_phase_type;
 
/ChangeLog-2011
0,0 → 1,1074
2011-12-20 Joseph Myers <joseph@codesourcery.com>
 
* emulparams/elf32bmip.sh (OTHER_SECTIONS): Put .mdebug.* and
.gcc_compiled_long* sections at address 0.
 
2011-12-13 Nick Clifton <nickc@redhat.com>
 
* po/it.po: New Italian translation.
* configure.in (ALL_LINGUAS): Add it.
* configure: Regenerate.
 
2011-12-01 Nick Clifton <nickc@redhat.com>
 
* emultempl/spuelf.em (spu_elf_relink): Use pex_one in place
of execvp.
 
2011-11-25 John Tytgat <john@bass-software.com>
 
* emultempl/armelf.em: Update copyright to 2010 and 2011.
(PARSE_AND_LIST_OPTIONS): Fix formatting.
 
2011-11-21 Andreas Tobler <andreast@fgznet.ch>
 
* Makefile.am (ALL_64_EMULATION_SOURCES): Add powerpc64-*-freebsd
source.
(eelf64ppc_fbsd.c): Add rules to build this file.
* Makefile.in: Regenerate.
* configure.tgt: Add target definition for powerpc64-*-freebsd*.
Adjust powerpc-*-freebsd*.
* emultempl/ppc64elf.em: Add a mechanism to override the default
value of 0 for plt_static_chain.
* emulparams/elf32ppc_fbsd.sh (OUTPUT_FORMAT): Override the default.
* emulparams/elf64ppc_fbsd.sh (OUTPUT_FORMAT): Likewise.
(DEFAULT_PLT_STATIC_CHAIN): Define to 1.
 
2011-11-15 Andreas Schwab <schwab@linux-m68k.org>
 
* ldlang.c (insert_pad): Change alignment_needed argument to
bfd_size_type.
(size_input_section): Change alignment_needed varible to
bfd_size_type.
* ldlang.h (lang_padding_statement_type): Change size field to
bfd_size_type.
 
2011-11-03 Tristan Gingold <gingold@adacore.com>
 
* scripttempl/aix.sc: Consider header size for .text and .data
alignment.
 
2011-11-02 Tristan Gingold <gingold@adacore.com>
 
* emultempl/aix.em (read_file_list): New function.
(_handle_option): Handle '-f'.
* NEWS: Mention this feature.
 
2011-11-02 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
 
* configure.tgt (x86_64-*-solaris2*): Use $targ_extra_emuls for
targ_extra_libpath.
 
2011-11-01 DJ Delorie <dj@redhat.com>
 
* Makefile.am (ALL_EMULATION_SOURCES): Add eelf32rl78.c.
(+eelf32rl78.c): New rule.
* Makefile.in: Regenerate.
* configure.tgt: Add rl78-*-* case.
* emulparams/elf32rl78.sh: New file.
* NEWS: Mention addition of Renesas RL78 support.
 
2011-10-28 Walter Lee <walt@tilera.com>
 
* NEWS: Fix TILEPro capitalization.
 
2011-10-25 Joern Rennecke <joern.rennecke@embecosm.com>
 
* NEWS: Mention addition of Adapteva Epiphany support.
* Makefile.am (ALL_EMULATION_SOURCES): Add eelf32epiphany.c .
(eelf32epiphany.c): New rule.
* configure.tgt: Handle epiphany-*-elf.
* emulparams/elf32epiphany.sh: New file.
* Makefile.in: Regenerate.
* po/ld.pot: Regenerate.
 
2011-10-24 Nick Clifton <nickc@redhat.com>
 
* po/ja.po: Updated Japanese translation.
 
2011-10-20 Alan Modra <amodra@gmail.com>
 
PR ld/13287
* plugin.c (plugin_should_reload): New function.
* plugin.h (plugin_should_reload): Declare.
* ldlang.c (open_input_bfds): Use above function.
 
2011-10-19 Alan Modra <amodra@gmail.com>
 
PR ld/13254
* emultempl/elf32.em (gld${EMULATION_NAME}_handle_option): Add
-z text, -z notext, -z textoff options for all targets having
shared lib support.
 
2011-10-15 Alan Modra <amodra@gmail.com>
 
* emultempl/ppc64elf.em (gld${EMULATION_NAME}_finish): Remove toc check.
 
2011-10-13 Dave Korn <dave.korn.cygwin@gmail.com>
 
* pe-dll.c (generate_reloc): Don't emit a base reloc for an
underlying BFD reloc that will be discarded in eh_frame data.
 
2011-10-10 Nick Clifton <nickc@redhat.com>
 
* po/bg.po: Updated Bulgarian translation.
* po/es.po: Updated Spanish translation.
* po/fi.po: Updated Finnish translation.
* po/fr.po: Updated French translation.
 
2011-10-10 Alan Modra <amodra@gmail.com>
 
* ldmain.c (main): Move code twiddling various config and link_info
bits to..
* lexsup.c (parse_args): ..here. Move plugin_load_plugins call
into main.
* plugin.c (set_tv_header): Test link_info.executable, not
link_info.shared.
(is_visible_from_outside): Likewise. Delete redundant
is_ir_dummy_bfd check and "section" parameter.
 
2011-10-10 Alan Modra <amodra@gmail.com>
 
* emultempl/ppc64elf.em (ppc_add_stub_section): Align to 32 bytes.
 
2011-10-09 Alan Modra <amodra@gmail.com>
 
* emultempl/ppc64elf.em (ppc_create_output_section_statements): Add
missing colon to error message.
(ppc_before_allocation): Likewise.
 
2011-10-06 Alan Modra <amodra@gmail.com>
 
PR ld/13229
* plugin.c (tv_header_tags): Add LDPT_GET_SYMBOLS_V2.
(set_tv_header): Handle it. Adjust LDPT_GET_SYMBOLS. Return void.
(get_symbols): Add def_ironly_exp param. Return that value for
syms exported from shared libs.
(get_symbols_v1, get_symbols_v2): New wrapper functions.
* testplug.c: Update for above changes.
 
2011-09-27 Kai Tietz <ktietz@redhat.com>
 
* scripttempl/pe.sc (.text): Add support for
.gnu.linkonce.t.* section.
(.debug_info): Only use .gnu.linkonce.wi.* for
relocating.
* scripttempl/pep.sc: Likewise.
 
2011-09-22 Tristan Gingold <gingold@adacore.com>
 
* NEWS: Add marker for 2.22.
 
2011-09-20 Alan Modra <amodra@gmail.com>
 
PR ld/13201
* ldlang.h (lang_input_statement_type): Add "reload" bitfield.
Clarify comments.
* ldlang.c (new_afile): Init new field.
(load_symbols): Don't call ldlang_add_file when reloading.
(open_input_bfds): Reload as-needed libs during plugin rescan.
 
2011-09-15 H.J. Lu <hongjiu.lu@intel.com>
 
PR ld/12975
* ldlang.c (lang_elf_version_info): Removed.
(lang_register_vers_node): Replace lang_elf_version_info with
link_info.version_info.
(lang_add_vers_depend): Likewise.
* pe-dll.c (process_def_file_and_drectve): Likewise.
* emultempl/solaris2.em (elf_solaris2_before_allocation): Likewise.
 
* ldlang.h (lang_elf_version_info): Removed.
 
* plugin.c (is_visible_from_outside): Check if symbol is hidden
by version script.
 
* emultempl/elf32.em (gld${EMULATION_NAME}_before_allocation):
Remove lang_elf_version_info.
 
2011-09-15 Dmitry Gorbachev <d.g.gorbachev@gmail.com>
 
PR ld/13183
* ldmain.c (add_archive_element): Support thin archive member
for LTO.
 
2011-08-26 Nick Clifton <nickc@redhat.com>
 
* po/es.po: Updated Spanish translation.
 
2011-08-26 Nick Clifton <nickc@redhat.com>
 
* NEWS: Mention that --no-copy-dt-needed-entries is now the
default.
 
2011-08-22 Michael Matz <matz@suse.de>
 
* ldmain.c (add_DT_NEEDED_for_dynamic): Default to FALSE.
* ld.texinfo (--copy-dt-needed-entries): Mention new default.
 
2011-08-17 Alan Modra <amodra@gmail.com>
 
PR ld/12762
* ldlang.c (section_already_linked): Revert 2011-07-09 changes.
* plugin.c: Likewise.
(asymbol_from_plugin_symbol): Create linkonce section for syms
with comdat_key.
 
2011-08-09 Matthew Gretton-Dann <matthew.gretton-dann@arm.com>
 
* emultempl/armelf.em (fix_arm1176): New variable.
(arm_elf_create_output_section_statements): Pass
fix_arm1176 option to bfd backend.
(OPTION_FIX_ARM1176): New define.
(OPTION_NO_FIX_ARM1176): Likewise.
(PARSE_AND_LIST_LONGOPTS): Add new command line options.
(PARSE_AND_LIST_OPTIONS): Likewise.
(PARSE_AND_LIST_ARGS_CASES): Likewise.
* ld.texinfo: Document new command line options.
 
2011-08-09 Alan Modra <amodra@gmail.com>
 
PR ld/13066
* plugin.c (add_symbols): Revert 2011-08-05.
 
2011-08-06 Kai Tietz <ktietz@redhat.com>
 
* scripttempl/pep.sc: Add .debug_macro section.
* scripttempl/pe.sc: Likewise.
 
2011-08-05 Alan Modra <amodra@gmail.com>
 
PR ld/12762
* plugin.c (add_symbols): Exclude comdat_key symbols from symbol
table if already seen.
 
2011-08-04 H.J. Lu <hongjiu.lu@intel.com>
 
* ldmain.c (main): Replace remove_output with ld_cleanup in
comments.
 
2011-07-26 Alan Modra <amodra@gmail.com>
 
* emulparams/elf32ppc.sh: Source plt_unwind.sh.
* emulparams/elf64ppc.sh: Likewise.
* emultempl/ppc32elf.em (OPTION_NO_TLS_OPT): Adjust.
(PARSE_AND_LIST_PROLOGUE, PARSE_AND_LIST_LONGOPTS,
PARSE_AND_LIST_OPTIONS, PARSE_AND_LIST_ARGS_CASES): Append to
existing values.
* emultempl/ppc64elf.em (OPTION_STUBGROUP_SIZE): Adjust.
(PARSE_AND_LIST_PROLOGUE, PARSE_AND_LIST_LONGOPTS,
PARSE_AND_LIST_OPTIONS, PARSE_AND_LIST_ARGS_CASES): Append to
existing values.
 
2011-07-22 H.J. Lu <hongjiu.lu@intel.com>
 
* Makefile.am (ALL_64_EMULATIONS): Add eelf_k1om.o and
eelf_k1om_fbsd.o
(eelf_k1om.c): New.
(eelf_k1om_fbsd.c): Likewise.
* Makefile.in: Regenerated.
 
* configure.tgt (targ64_extra_emuls): Add elf_k1om if elf_x86_64
is supported. Add elf_k1om_fbsd if elf_x86_64_fbsd is supported.
(targ_extra_emuls): Likewise.
 
* emulparams/elf_k1om.sh: New.
* emulparams/elf_k1om_fbsd.sh: Likewise.
 
2011-07-16 Roland McGrath <roland@hack.frob.com>
 
* ld.h (args_type): New field print_output_format.
* lexsup.c (enum option_values, ld_options, parse_args):
Handle --print-output-format.
* ldmain.c (main): Implement --print-output-format.
* ld.texinfo (Options): Document it.
 
* ldlang.c (lang_get_output_target): Don't return current_target
when it's NULL.
 
2011-07-15 Alan Modra <amodra@gmail.com>
 
* Makefile.am (e*.c): Sort.
* Makefile.in: Regenerate.
 
2011-07-14 Alan Modra <amodra@gmail.com>
 
* emultempl/elf32.em (gld${EMULATION_NAME}_handle_option,
gld${EMULATION_NAME}_list_options): Don't condition -z relro
and -z norelro on COMMONPAGESIZE being defined.
 
2011-07-14 Alan Modra <amodra@gmail.com>
 
* emultempl/ppc64elf.em (plt_static_chain): New var.
(gld${EMULATION_NAME}_after_allocation): Pass to ppc64_elf_size_stubs.
(PARSE_AND_LIST_PROLOGUE, PARSE_AND_LIST_LONGOPTS,
PARSE_AND_LIST_OPTIONS, PARSE_AND_LIST_ARGS_CASES): Handle
--plt-static-chain and --no-plt-static-chain.
 
2011-07-14 Alan Modra <amodra@gmail.com>
 
* emultempl/elf32.em (gld${EMULATION_NAME}_add_options,
gld${EMULATION_NAME}_handle_option, gld${EMULATION_NAME}_list_options):
Provide --build-id, -z defs, -z muldefs, -z max-page-size,
-z common-page-size, -z execstack, -z noexecstack for all targets.
Add help for --exclude-libs.
(OPTION_LD_GENERATED_UNWIND_INFO,
OPTION_NO_LD_GENERATED_UNWIND_INFO): Move this..
(gld${EMULATION_NAME}_handle_option): ..and code handling
--ld-generated-unwind-info and --no-ld-generated-unwind-info..
* emulparams/plt_unwind.sh: ..to here. New file. Add help.
* emulparams/elf32_x86_64.sh: Include plt_unwind.sh.
* emulparams/elf_i386.sh: Likewise.
* emulparams/elf_i386_chaos.sh: Likewise.
* emulparams/elf_i386_ldso.sh: Likewise.
* emulparams/elf_l1om.sh: Likewise.
* emulparams/elf_x86_64.sh: Likewise.
 
2011-07-11 Catherine Moore <clm@codesourcery.com>
 
* ld.h (section_flag_list): Add field to struct wildcard_spec.
* ld.texinfo (INPUT_SECTION_FLAGS): Document.
* ldgram.y (flag_info_list, flag_info): Add to union.
(INPUT_SECTION_FLAGS): New token.
(wildcard_spec): Initialize section_flag_list to NULL for
each alternative.
(sect_flag_list, sect_flags): New rules.
(input_section_spec_no_keep): Add alternatives to recognize
sect_flags.
* ldlang.c (walk_wild_consider_section): Initialize
section_flag_info field of the section struct.
(lang_add_section): Check input section flags.
(lang_add_wild): Initialize section_flag_list field of
the statement struct.
* ldlang.h (lang_input_statement_struct): Add section_flag_list field.
(lang_wild_statement_struct): Likewise.
* ldlex.l (INPUT_SECTION_FLAGS): New token.
* mri.c (mri_draw_tree): Initialize section_flag_list to NULL.
* NEWS: Announce INPUT_SECTION_FLAGS enhancement.
 
2011-07-09 H.J. Lu <hongjiu.lu@intel.com>
 
PR ld/12942
* ldlang.c (section_already_linked): Pass "struct already_linked *"
to bfd_section_already_linked.
(lang_process): Set link_info.loading_lto_outputs before
loading LTO outputs.
* plugin.c: Include "libbfd.h".
(add_symbols): Call bfd_section_already_linked with comdat_key.
 
2011-06-20 H.J. Lu <hongjiu.lu@intel.com>
 
* configure.tgt: Revert x32 change.
 
2011-06-20 Jakub Jelinek <jakub@redhat.com>
 
PR ld/12570
* emultempl/elf32.em (OPTION_LD_GENERATED_UNWIND_INFO,
OPTION_NO_LD_GENERATED_UNWIND_INFO): Define.
(gld${EMULATION_NAME}_handle_option): Handle
--ld-generated-unwind-info and --no-ld-generated-unwind-info.
* ld.texinfo (--ld-generated-unwind-info,
--no-ld-generated-unwind-info): Document.
 
2011-06-19 H.J. Lu <hongjiu.lu@intel.com>
 
* configure.tgt: Support x32.
 
2011-06-15 Nick Clifton <nickc@redhat.com>
 
* NEWS: Mention addition of TILEPRO and TIKE-Gx support.
 
2011-06-13 Walter Lee <walt@tilera.com>
 
* Makefile.am (ALL_EMULATION_SOURCES): Add eelf32tilegx.c and
eelf32tilepro.c.
(ALL_64_EMULATION_SOURCES): Add eelf64tilegx.c.
(eelf32tilegx.c): New target.
(eelf32tilepro.c): Likewise.
(eelf64tilegx.c): Likewise.
* Makefile.in: Regenerate.
* configure.tgt: Handle tilegx-*-* and tilepro-*-*.
* emulparams/elf32tilegx.sh: New file.
* emulparams/elf64tilegx.sh: New file.
* emulparams/elf32tilepro.sh: New file.
 
2011-06-13 Alan Modra <amodra@gmail.com>
 
* ldlang.c (sort_def_symbol, lang_one_common): Don't handle
warning symbols here.
* emultempl/pe.em (pr_sym): Remove redundant test.
* emultempl/pep.em (pr_sym): Likewise.
 
2011-06-09 Nick Clifton <nickc@redhat.com>
 
PR ld/12845
* emultempl/mipself.em (mips_add_stub_section): Do not add stubs
for sections that have been removed by garbage collection.
 
2011-06-08 Alan Modra <amodra@gmail.com>
 
* ldlang.c (lang_one_common): Handle warning symbols.
 
2011-06-07 Nick Clifton <nickc@redhat.com>
 
* configure.tgt: Accept any V850 architecture.
 
2011-06-03 Nick Clifton <nickc@redhat.com>
 
* Makefile.am (ALL_EMULATION_SOURCES): Add eelf32am33lin.c
Add rule to build eelf32am33lin.c
* Makefile.in: Regenerate.
 
2011-06-02 Nick Clifton <nickc@redhat.com>
 
* lexsup.c: Fix spelling mistake in comment.
* scripttempl/epocpe.sc: Likewise.
* scripttempl/i386beos.sc: Likewise.
* scripttempl/mcorepe.sc: Likewise.
* scripttempl/pe.sc: Likewise.
* scripttempl/pep.sc: Likewise.
* po/ld.pot: Regenerate.
 
2011-05-27 Nick Clifton <nickc@redhat.com>
 
* scripttempl/v850.sc (_heap_start): Provide.
 
2011-05-23 Alan Modra <amodra@gmail.com>
 
* ldmisc.c (vfinfo): Add %H.
* ldmain.c (reloc_overflow): Use %H rather than %C.
(reloc_dangerous, unattached_reloc): Likewise.
 
2011-05-23 Alan Modra <amodra@gmail.com>
 
PR 12763
* ldlang.c (lang_output_section_find_by_flags): Match orphan .sdata2
like sections to existing .sdata2, and similarly for orphan TLS
sections.
* emultempl/elf32.em (place_orphan): Exclude .tbss from orphan_bss.
 
2011-05-17 Tomohiro Kashiwada <kikairoya@gmail.com>
 
PR ld/12759
* emultempl/rxelf.em (ignore_lma): New variable.
(rx_elf_create_output_section_statements): Pass the setiing of
ignore_lma to bfd_elf32_rx_set_target_flags.
(OPTION_IGNORE_LMA): Define.
(OPTION_NO_IGNORE_LMA): Define.
(PARSE_AND_LIST_LONGOPTS): Add ignore lma.
(PARSE_AND_LIST_OPTIONS): Add ignore lma.
(PARSE_AND_LIST_ARGS_CASES): Add ignore lma.
 
2011-05-17 Alan Modra <amodra@gmail.com>
 
PR ld/12760
* ldmain.c (notice): Add "flags" and "string" param.
* plugin.c (plugin_notice): Likewise. Handle indirect, warning
and constructor syms.
 
2010-05-16 Daniel Jacobowitz <dan@codesourcery.com>
 
* ldlang.c (print_assignment): Use the symbol's section if we
use its value.
* ldexp.c (exp_fold_tree_1): Skip self-assignment. Expand
comment on copying symbol type.
 
2011-05-16 H.J. Lu <hongjiu.lu@intel.com>
 
PR ld/12760
* plugin.c (plugin_notice): Set u.undef.abfd for symbols made
undefweak.
 
2011-05-16 Alan Modra <amodra@gmail.com>
 
* ldlang.c (lang_leave_output_section_statement): Don't copy
previous lma_region if given address.
 
2011-05-13 Bernd Schmidt <bernds@codesourcery.com>
 
(eelf32_tic6x_linux_be.c, eelf32_tic6x_linux_le.c,
eelf32_tic6x_elf_be.c, eelf32_tic6x_elf_le.c): New rules.
* Makefile.am (ALL_EMULATIONS): Add these files.
(eelf32_tic6x_be.c, eelf32_tic6x_le.c): Depend on tic6xdsbt.em.
* Makefile.in: Regenerated.
* emultempl/tic6xdsbt.em (is_tic6x_target): Allow more tic6x target
vectors.
* emulparams/elf32_tic6x_elf_be.sh: New file.
* emulparams/elf32_tic6x_elf_le.sh: New file.
* emulparams/elf32_tic6x_linux_be.sh: New file.
* emulparams/elf32_tic6x_linux_le.sh: New file.
* configure.tgt (tic6x-*-elf, tic6x-*-uclinux): New.
(tic6x-*-*): Replaced by these.
 
2011-05-13 Jan Beulich <jbeulich@novell.com>
 
* configure.tgt: Add targets x86_64-*-pe and x86_64-*-pep.
 
2011-05-09 Paul Brook <paul@codesourcery.com>
 
* emultempl/tic6xdsbt.em (merge_exidx_entries): New.
(compare_output_sec_vma): New function.
(gld${EMULATION_NAME}_after_allocation): New function.
(OPTION_NO_MERGE_EXIDX_ENTRIES): Define.
(PARSE_AND_LIST_OPTIONS): Add --no-merge-exidx-entries.
(PARSE_AND_LIST_ARGS_CASES): Add OPTION_NO_MERGE_EXIDX_ENTRIES.
(LDEMUL_AFTER_ALLOCATION): Set.
* ld.texinfo: Document c6x --no-merge-exidx-entries.
 
2011-05-07 Dave Korn <dave.korn.cygwin@gmail.com>
 
PR ld/12365
* scripttempl/pe.sc (__rt_psrelocs_start): New symbol definition.
(__rt_psrelocs_end): Likewise.
(__rt_psrelocs_size): Likewise difference between the above.
(__RUNTIME_PSEUDO_RELOC_LIST_END__): Move outside .rdata section
immediately after end of pseudo-reloc data.
(___RUNTIME_PSEUDO_RELOC_LIST_END___): Likewise.
(__RUNTIME_PSEUDO_RELOC_LIST__): Move outside .rdata section and
calculate backward from list end.
(___RUNTIME_PSEUDO_RELOC_LIST___): Likewise.
* scripttempl/pep.sc: Likewise.
 
2011-05-06 Tristan Gingold <gingold@adacore.com>
 
* scripttempl/alphavms.sc (CODE): Add *$CODE*.
 
2011-05-04 Tristan Gingold <gingold@adacore.com>
 
* emultempl/generic.em (ld_${EMULATION_NAME}_emulation): Add
LDEMUL_ADD_OPTIONS and LDEMUL_HANDLE_OPTION.
* emultempl/vms.em (OPTION_IDENTIFICATION): New macro.
(gld${EMULATION_NAME}_add_options): New function.
(gld${EMULATION_NAME}_list_options): Ditto.
(gld${EMULATION_NAME}_handle_option): Ditto.
(LDEMUL_ADD_OPTIONS, LDEMUL_HANDLE_OPTION)
(LDEMUL_LIST_OPTIONS): Define.
 
2011-05-04 Alan Modra <amodra@gmail.com>
 
PR ld/12726
* ldexp.h (lang_phase_type): Add lang_assigning_phase_enum.
* ldexp.c (exp_fold_tree_1): Correct assign to dot comment. Don't
assign to dot when lang_assigning_phase_enum.
* ldlang.h (lang_do_assignments): Update prototype.
* ldlang.c (lang_do_assignments): Add phase parameter. Update all
callers.
* pe-dll.c (pe_dll_fill_sections, pe_exe_fill_sections): Update
lang_do_assignments calls.
 
2011-04-28 Daniel C. Klauer <daniel.c.klauer@web.de>
 
PR ld/12614
* emultempl/pe.em (_after_open): Correctly check whether symbol is
in undef list.
 
2011-04-26 Kai Tietz <ktietz@redhat.com>
 
* scripttempl/pe.sc: Handle .eh_frame($|.)* sections.
* scripttempl/pep.sc: Likewise.
 
2011-04-24 Alan Modra <amodra@gmail.com>
 
PR ld/12365
PR ld/12696
* ldmain.c (notice): Delete "name" param, add "h".
* plugin.c (plugin_notice): Likewise. Set non_ir_ref. Handle
redefinitions of IR symbols in real BFDs.
(plugin_multiple_definition, plugin_multiple_common): Delete.
(non_ironly_hash, init_non_ironly_hash): Delete.
(is_visible_from_outside): Traverse entry_symbol chain.
(get_symbols): Use non_ir_ref flag rather than hash lookup.
 
2011-04-21 Tristan Gingold <gingold@adacore.com>
 
* scripttempl/alphavms.sc: Add dwarf2 embedding marks.
 
2011-04-20 Tristan Gingold <gingold@adacore.com>
 
* emultempl/aix.em (_add_options): Ignore -bbigtoc switch.
 
2011-04-20 Alan Modra <amodra@gmail.com>
 
* ld.h (ld_config_type <hash_table_size>): Make it an unsigned long.
 
2011-04-20 Alan Modra <amodra@gmail.com>
 
PR ld/12365
* ldfile.c (ldfile_try_open_bfd): Move code creating and switching
to plugin IR BFD..
* ldmain.c (add_archive_element): ..and similar code here..
* plugin.c (plugin_maybe_claim): ..to here. New function.
(plugin_call_claim_file): Make static.
(asymbol_from_plugin_symbol): Set ELF st_shndx for common syms.
(plugin_multiple_common): New function.
(plugin_call_all_symbols_read): Hook in plugin_multiple_common.
* plugin.h (plugin_call_claim_file): Don't declare.
(plugin_maybe_claim): Declare.
 
2011-04-20 Alan Modra <amodra@gmail.com>
 
PR ld/12365
* ldmain.c (multiple_definition): Take a bfd_link_hash_entry
pointer arg rather than "name", "obfd", "osec", "oval". Add code
removed from linker.c. Hack around xcofflink.c oddity in
passing NULL nbfd.
(multiple_common): Similarly.
* plugin.c (orig_allow_multiple_defs): Delete.
(plugin_call_all_symbols_read): Don't twiddle allow_multiple_definition.
(plugin_multiple_definition): Update.
 
2011-04-18 Kai Tietz <ktietz@redhat.com>
 
* deffilep.y (def_aligncomm): Avoid duplets.
 
* deffilep.y (def_pool_str): New type.
(pool_strs): Local static.
(def_pool_alloc): Local function.
(def_pool_strdup): Likewise.
(def_pool_free): Likewise.
(opt_name): Replace xmalloc/xstrdup by
def_pool_alloc/def_pool_strdup.
(dot_name): Likewise.
(anylang_id): Likewise.
(def_lex): Likewise.
(def_file_parse): Call def_pool_free on
exit and cleanup directives elements.
(def_file_add_directive): Call def_pool_free.
 
2011-04-18 Paul Brook <paul@codesourcery.com>
 
* emulparams/elf32_tic6x_le.sh: Define OTHER_READONLY_SECTIONS
for unwinding tables.
 
2011-04-18 Alan Modra <amodra@gmail.com>
 
PR ld/12365
PR ld/12672
* ldfile.c (ldfile_try_open_bfd): Don't attempt any plugin action
when no_more_claiming.
* ldmain.c (add_archive_element): Likewise.
(multiple_definition): Remove plugin_multiple_definition call.
(notice): Remove plugin_notice call.
* ldlang.c (lang_list_insert_after, void lang_list_remove_tail): Move.
Delete prototype.
(plugin_insert): New static var.
(open_input_bfds): Only rescan libs after plugin insert point.
(lang_gc_sections): Omit plugin claimed files.
(lang_process): Set plugin_insert. Only rescan when plugin adds
objects.
* plugin.h (no_more_claiming): Declare.
(plugin_notice, plugin_multiple_definition): Don't declare.
* plugin.c: Formatting.
(orig_notice_all, orig_allow_multiple_defs, orig_callbacks,
plugin_callbacks): New static vars.
(no_more_claiming): Make global.
(plugin_cached_allow_multiple_defs): Delete.
(plugin_get_ir_dummy_bfd): Set SEC_EXCLUDE on dummy .text section,
use newer bfd_make_section variant. Make COMMON section too.
Error handling. Correct setting of gp size.
(asymbol_from_plugin_symbol): Properly cast last arg of concat.
(message): Likewise for ACONCAT.
(asymbol_from_plugin_symbol): Use our COMMON section.
(get_symbols): When report_plugin_symbols, show visibility too.
(init_non_ironly_hash): Move. Don't test non_ironly_hash.
(plugin_load_plugins): Save state of linker callbacks, set up to
call plugin_notice instead. Call init_non_ironly_hash here.
(plugin_call_all_symbols_read): Set plugin_multiple_definition in
plugin callbacks.
(plugin_notice): Rewrite.
(plugin_multiple_definition): Make static, call original callback.
 
2011-04-15 Alan Modra <amodra@gmail.com>
 
PR ld/12672
* ldlang.c (enum open_bfd_mode): New.
(open_input_bfds): Replace "force" param with "mode". Reload
archives for rescan. Update all callers.
(lang_process): Make another open_input_bfds pass for plugins.
 
2011-04-13 Kai Tietz <ktietz@redhat.com>
 
PR binutils/12658
* deffile.h (def_file_add_export): Add is_dup argument.
(def_file_add_import): Likewise.
* deffilep.y (are_names_equal): New helper.
(cmp_export_elem): New helper.
(find_export_in_list): Add search routine for exports.
(def_file_add_export): Check for duplicates.
(cmp_import_elem): New helper.
(find_import_in_list): Add search routine for imports.
(def_file_add_import): Check for duplicates.
(def_exports): Handle duplicates.
(def_imports): Likewise.
* pe-dll.c (process_def_file_and_drectve): Likewise.
(pe_implied_import_dll): Likewise.
 
2011-04-11 Chris Quenelle <chris.quenelle@oracle.com>
 
* scripttempl/elf.sc (.exception_ranges): Add new section.
 
2011-04-08 Hector Oron <hector.oron@gmail.com>
 
PR ld/12643
* configure.tgt: Add support for arm-*-gnueabihf targets.
 
2011-04-07 Eric B. Weddington <eric.weddington@atmel.com>
 
* Makefile.in: Regenerate. Remove stray eavrtiny10 rules.
 
2011-04-07 Joseph Myers <joseph@codesourcery.com>
 
* configure.tgt: Remove stray ;;.
 
2011-04-06 Joseph Myers <joseph@codesourcery.com>
 
* configure.tgt (thumb-*-linux-* | thumb-*-uclinux*,
strongarm-*-coff, strongarm-*-elf, strongarm-*-kaos*,
thumb-*-coff, thumb-*-elf, thumb-epoc-pe, thumb-*-pe,
xscale-*-coff, xscale-*-elf): Remove targets.
 
2011-03-31 H.J. Lu <hongjiu.lu@intel.com>
 
* configure.tgt: Add elf_l1om to targ_extra_libpath for
x86_64-*-linux-*.
 
* emulparams/elf_l1om.sh: Remove duplicates.
 
2011-03-31 Bernd Schmidt <bernds@codesourcery.com>
 
* emulparams/elf32_tic6x_le.sh (BIG_OUTPUT_FORMAT, EXTRA_EM_FILE,
GENERATE_SHLIB_SCRIPT): New defines.
(TEXT_START_ADDR): Define differently depending on target.
(.got): Redefine to include "*(.dsbt)".
(SDATA_START_SYMBOLS): Remove, replace with
(OTHER_GOT_SYMBOLS): New.
(OTHER_BSS_SECTIONS): Define only for ELF targets.
* emultempl/tic6xdsbt.em: New file.
* gen-doc.texi: Set C6X.
* ld.texinfo: Likewise.
(Options specific to C6X uClinux targets): New section.
 
2011-03-29 Alan Modra <amodra@gmail.com>
 
PR ld/12613
* ldlex.l (lex_warn_invalid): Don't assume char is unsigned.
 
2011-03-26 John Marino <binutils@marino.st>
 
* configure.host: Update *-*-dragonfly* host entry.
* configure.tgt: Update *-*-dragonfly* target entry.
* ldlex.l: Prevent redefinition of YY_NO_UNPUT.
 
2011-03-28 Joseph Myers <joseph@codesourcery.com>
 
* configure.in: Check for windows.h, not Windows.h.
* configure: Regenerate.
* plugin.c: Include windows.h, not Windows.h.
 
2011-03-25 Eric B. Weddington <eric.weddington@atmel.com>
 
* Makefile.in: Regenerate.
 
2011-03-23 Joseph Myers <joseph@codesourcery.com>
 
* lexsup.c (parse_args): Only set report_plugin_symbols if plugins
are enabled. Mark level as possibly unused.
 
2011-03-22 Eric B. Weddington <eric.weddington@atmel.com>
 
* Makefile.am (ALL_EMULATION_SOURCES): Add AVR XMEGA architectures.
(eavrxmega?.c): Likewise.
* configure.tgt (targ_extra_emuls): Likewise.
* emulparams/avrxmega1.sh: New file.
* emulparams/avrxmega2.sh: Likewise.
* emulparams/avrxmega3.sh: Likewise.
* emulparams/avrxmega4.sh: Likewise.
* emulparams/avrxmega5.sh: Likewise.
* emulparams/avrxmega6.sh: Likewise.
* emulparams/avrxmega7.sh: Likewise.
* emultempl/avrelf.em (avr_elf_${EMULATION_NAME}_before_allocation):
Add avrxmega6, avrxmega7 to list of architectures for no stubs.
 
2011-03-21 Eric B. Weddington <eric.weddington@atmel.com>
 
* scripttempl/avr.sc: Add fuse, lock, and signature memory regions.
 
2011-03-14 Richard Sandiford <richard.sandiford@linaro.org>
 
* emultempl/armelf.em (gld${EMULATION_NAME}_finish): Check
eh->target_internal.
 
2011-03-14 Richard Sandiford <richard.sandiford@linaro.org>
 
* emultempl/armelf.em (arm_elf_before_allocation): Check dynobj
instead of dynamic_sections_created.
 
2011-03-10 Dave Korn <dave.korn.cygwin@gmail.com>
 
* plugin.c (get_symbols): Use wrapped lookup for undefined symbols.
 
2011-03-10 Dave Korn <dave.korn.cygwin@gmail.com>
 
* ldlang.c (lang_check): Don't run checks on dummy IR BFDs.
 
2011-03-10 Dave Korn <dave.korn.cygwin@gmail.com>
 
* ldlang.h (lang_input_statement_type): Add new 'claim_archive' flag,
wrapping both it and 'claim' flag in #ifdef ENABLE_PLUGINS.
* ldmain.c (add_archive_element): Set it if the member is claimed.
* ldlang.c (new_afile): Initialise claim_archive and claimed members.
(find_replacements_insert_point): New helper function.
(lang_process): After adding and opening replacement files passed
from plugin, splice them into correct place in statement list and
file chains to preserve critical link order.
(lang_list_insert_after): New helper function.
(lang_list_remove_tail): Likewise.
 
2011-03-10 Dave Korn <dave.korn.cygwin@gmail.com>
 
* plugin.c (IRONLY_SUFFIX): Revise to nicely human-readable form.
(IRONLY_SUFFIX_LEN): Delete.
(plugin_get_ir_dummy_bfd): Don't append IRONLY_SUFFIX.
(is_ir_dummy_bfd): Don't look for suffix; check claimed flag of
enclosing lang input statement instead.
 
2011-03-10 Dave Korn <dave.korn.cygwin@gmail.com>
 
* emultempl/pe.em (gld_${EMULATION_NAME}_place_orphan): Preserve
alignment of input sections when creating orphan output sections
during relocatable link.
* emultempl/pep.em (gld_${EMULATION_NAME}_place_orphan): Likewise.
 
2011-03-04 H.J. Lu <hongjiu.lu@intel.com>
 
* ld.texinfo: Document --verbose[=NUMBER].
 
* lexsup.c (ld_options): Update --verbose.
(parse_args): Set report_plugin_symbols.
 
* plugin.c (report_plugin_symbols): New.
(get_symbols): Report plugin symbols if report_plugin_symbols
is TRUE.
 
* plugin.h (report_plugin_symbols): New.
 
2011-03-01 H.J. Lu <hongjiu.lu@intel.com>
 
PR ld/12529
* testplug.c: Don't include "filenames.h".
(onclaim_file): Don't use filename_cmp.
 
2011-02-28 Kai Tietz <kai.tietz@onevision.com>
 
* emultempl/beos.em (sort_by_file_name): Use filename_(n)cmp.
* emultempl/elf32.em (gld${EMULATION_NAME}_vercheck):
Likewise.
(gld${EMULATION_NAME}_stat_needed): Likewise.
(gld${EMULATION_NAME}_check_needed): Likewise.
* emultempl/pe.em (gld_${EMULATION_NAME}_after_open): Likewise.
(gld_${EMULATION_NAME}_unrecognized_file): Likewise.
* emultempl/pep.em (gld_${EMULATION_NAME}_after_open): Likewise.
(gld_${EMULATION_NAME}_unrecognized_file): Likewise.
* ldfile.c (ldfile_open_file): Likewise.
* ldlang.c (wild_sort): Likewise.
(lookup_name): Likewise.
(check_excluded_libs): Likewise.
* ldmisc.c (vfinfo): Likewise.
* pe-dll.c (libnamencmp): Likewise.
(auto_export): Likewise.
(pe_dll_generate_implib): Likewise.
* testplug.c (onclaim_file): Likewise.
 
2011-02-24 H.J. Lu <hongjiu.lu@intel.com>
 
PR ld/12507
* plugin.c (get_symbols): Don't check entry symbol here.
(init_non_ironly_hash): Add entry_symbol chain into
non_ironly_hash.
 
2011-02-24 H.J. Lu <hongjiu.lu@intel.com>
 
PR ld/12507
* plugin.c (get_symbols): Don't mark entry symbol IR only.
 
2011-02-18 John David Anglin <dave.anglin@nrc-cnnrc.gc.ca>
 
PR ld/12376
emulparams/hppalinux.sh (DATA_ADDR): Define.
(SHLIB_DATA_ADDR): Likewise.
 
2011-02-16 H.J. Lu <hongjiu.lu@intel.com>
 
* emulparams/elf32_x86_64.sh (LIBPATH_SUFFIX): Changed to
x32 for x32.
 
2011-02-15 Kai Tietz <kai.tietz@onevision.com>
 
* pe-dll.c (process_def_file_and_drectve): Don't strip
leading underscore from symbol by calling bfd_find_version_for_sym.
 
2011-02-14 Mike Frysinger <vapier@gentoo.org>
 
* ldlang.c (lang_vers_match): Declare a new c_sym, assign it to
the bfd_demangle of sym, change users of sym to c_sym when not
already demangling, and free when done. Change callers of
cplus_demangle to bfd_demangle.
 
2011-02-14 Alan Modra <amodra@gmail.com>
 
* plugin.c (plugin_get_ir_dummy_bfd): Set SEC_EXCLUDE on dummy
.text section, use newer bfd_make_section variant. Error handling.
Correct setting of gp size.
(asymbol_from_plugin_symbol): Properly cast last arg of concat.
(message): Likewise for ACONCAT.
(get_symbols): Formatting.
 
2011-02-14 Alan Modra <amodra@gmail.com>
 
* ldmain.c (remove_output): Rename to..
(ld_cleanup): ..this. Call bfd_cache_close_all and plugin_call_cleanup.
(main): Adjust.
* plugin.c (plugin_call_cleanup): Make global.
(plugin_load_plugins): Don't register plugin_call_cleanup with xatexit.
* plugin.h (plugin_call_cleanup): Declare.
 
2011-02-13 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
 
* configure: Regenerate.
 
2011-02-10 Alan Modra <amodra@gmail.com>
 
* scripttempl/armbpabi.sc: Revert 2010-11-02 H.J. Lu.
* scripttempl/avr.sc: Likewise.
* scripttempl/elf32cr16.sc: Likewise.
* scripttempl/elf32crx.sc: Likewise.
* scripttempl/elf32msp430.sc: Likewise.
* scripttempl/elf32msp430_3.sc: Likewise.
* scripttempl/elf32sh-symbian.sc: Likewise.
* scripttempl/elf64hppa.sc: Likewise.
* scripttempl/elf_chaos.sc: Likewise.
* scripttempl/elfd10v.sc: Likewise.
* scripttempl/elfd30v.sc: Likewise.
* scripttempl/elfi370.sc: Likewise.
* scripttempl/elfm68hc11.sc: Likewise.
* scripttempl/elfm68hc12.sc: Likewise.
* scripttempl/elfxtensa.sc: Likewise.
* scripttempl/ip2k.sc: Likewise.
* scripttempl/iq2000.sc: Likewise.
* scripttempl/mep.sc: Likewise.
* scripttempl/mmo.sc: Likewise.
* scripttempl/v850.sc: Likewise.
* scripttempl/xstormy16.sc: Likewise.
* scripttempl/elf.sc: Revert 2010-10-29 H.J. Lu.
 
2011-01-22 H.J. Lu <hongjiu.lu@intel.com>
 
* Makefile.am (CXX): Removed.
 
* configure.in: Add AC_PROG_CXX.
 
* Makefile.in: Regenerated.
* configure: Likewise.
 
2011-01-22 Richard Sandiford <rdsandiford@googlemail.com>
 
* plugin.c (plugin_get_ir_dummy_bfd): Copy across the bfd's
private data and GP size.
 
2011-01-21 Alan Modra <amodra@gmail.com>
 
* ldexp.c (fold_binary): Set result section for arithmetic and
logical operations to NULL when both operands are in same section.
* ld.texinfo (Expression Section): Describe this.
 
2011-01-14 Alan Modra <amodra@gmail.com>
 
* emultempl/elf32.em (gld${EMULATION_NAME}_place_orphan): Don't
attempt to put non-alloc orphans before debug sections, just place
them after .comment.
 
2011-01-14 J. Park <grassman@gmail.com>
 
PR ld/12339
* ldlang.c (sort_def_symbol): Handle bfd_link_hash_warning symbols.
 
2011-01-14 Alan Modra <amodra@gmail.com>
 
* Makefile.am: Sort emulation rules.
(eelf32am33lin.c): Delete.
(ALL_EMULATION_SOURCES): Sort, add missing entries.
(ALL_64_EMULATION_SOURCES): Likewise.
* Makefile.in: Regenerate.
 
2011-01-13 Alan Modra <amodra@gmail.com>
 
PR ld/12356
* ld.texinfo (Miscellaneous Commands): Describe LD_FEATURE.
(Expression Section): Update.
* ld.h (ld_config_type): Add sane_expr.
* ldgram.y (ifile_p1): Add LD_FEATURE.
* ldlex.l (LD_FEATYRE): New.
* ldemul.c (after_parse_default): Delete code handling ld_compatibility.
* ldexp.h (struct ldexp_control): Delete uses_defined.
* ldexp.c: Remove all uses of uses_defined.
(fold_name): Test config.sane_expr rather than ld_compatibility.
(exp_fold_tree_1): Likewise. Adjust handling of assignments
during first phase.
* ldlang.h (ld_compatibility): Delete.
(lang_ld_feature): Declare.
* ldlang.c (ld_compatibility): Delete.
(open_input_bfds): Only handle assignments for --defsym.
(lang_ld_feature): New function.
 
PR ld/12356
* ldexp.h (exp_assop): Delete.
(exp_assign, exp_defsym): Declare.
* ldexp.c (exp_assop): Make static, handle all assignment variations.
(exp_assign, exp_defsym): New functions.
(exp_provide): Use exp_assop.
* ldgram.y (defsym_expr): Use exp_defsym.
* ldctor.c, * ldgram.y, * ldlang.c, * mri.c, * emultempl/beos.em,
* emultempl/pe.em, * emultempl/pep.em, * emultempl/spuelf.em,
* emultempl/xtensaelf.em: Update exp_assop -> exp_assign.
 
2011-01-12 Alan Modra <amodra@gmail.com>
 
PR ld/12380
* ldexp.h (enum phase_enum): Comment. Add exp_dataseg_done.
* ldexp.c (fold_unary <DATA_SEGMENT_END>): Rearrange code. Test
for exp_dataseg_done rather than expld.phase == lang_final_phase_enum
to detect when we've finished sizing sections.
(fold_binary <DATA_SEGMENT_ALIGN>): Likewise.
(fold_binary <DATA_SEGMENT_RELRO_END>): Likewise. Also test
that we are not inside an output section statement.
* ldlang.c (lang_size_sections): Set exp_dataseg_done on exit if
not exp_dataseg_relro_adjust or exp_dataseg_adjust. Don't set
lang_final_phase_enum here.
(lang_process): Set lang_final_phase_enum here.
 
2011-01-10 Nick Clifton <nickc@redhat.com>
 
* po/da.po: Updated Danish translation.
 
2011-01-10 H.J. Lu <hongjiu.lu@intel.com>
 
* ldlang.c (startup_file): Removed.
(lang_startup): Updated.
 
2011-01-05 H.J. Lu <hongjiu.lu@intel.com>
 
PR ld/12364
* plugin.c (get_symbols): Check if owner_sec->owner is NULL
before accessing its flags field.
 
2011-01-01 H.J. Lu <hongjiu.lu@intel.com>
 
* ldver.c (ldversion): Update copyright to 2011.
 
For older changes see ChangeLog-2010
Local Variables:
mode: change-log
left-margin: 8
fill-column: 74
version-control: never
End:
/Makefile.am
250,6 → 250,7
eelf32rl78.c \
eelf32rx.c \
eelf32tilegx.c \
eelf32tilegx_be.c \
eelf32tilepro.c \
eelf32vax.c \
eelf32xc16x.c \
481,7 → 482,9
eelf64ltsmip_fbsd.c \
eelf64mmix.c \
eelf64ppc.c \
eelf64ppc_fbsd.c \
eelf64tilegx.c \
eelf64tilegx_be.c \
eelf_l1om.c \
eelf_l1om_fbsd.c \
eelf_k1om.c \
1152,6 → 1155,10
$(srcdir)/emultempl/elf32.em $(srcdir)/emultempl/needrelax.em \
$(srcdir)/scripttempl/elf.sc ${GEN_DEPENDS}
${GENSCRIPTS} elf32tilegx "$(tdir_tilegx)"
eelf32tilegx_be.c: $(srcdir)/emulparams/elf32tilegx_be.sh \
$(srcdir)/emultempl/elf32.em $(srcdir)/emultempl/needrelax.em \
$(srcdir)/scripttempl/elf.sc ${GEN_DEPENDS}
${GENSCRIPTS} elf32tilegx_be "$(tdir_tilegx_be)"
eelf32tilepro.c: $(srcdir)/emulparams/elf32tilepro.sh \
$(srcdir)/emultempl/elf32.em $(srcdir)/emultempl/needrelax.em \
$(srcdir)/scripttempl/elf.sc ${GEN_DEPENDS}
1985,10 → 1992,18
ldemul-list.h \
$(ELF_DEPS) $(srcdir)/scripttempl/elf.sc ${GEN_DEPENDS}
${GENSCRIPTS} elf64ppc "$(tdir_elf64ppc)"
eelf64ppc_fbsd.c: $(srcdir)/emulparams/elf64ppc_fbsd.sh \
$(srcdir)/emultempl/ppc64elf.em ldemul-list.h \
$(ELF_DEPS) $(srcdir)/scripttempl/elf.sc ${GEN_DEPENDS}
${GENSCRIPTS} elf64ppc_fbsd "$(tdir_elf64ppc_fbsd)"
eelf64tilegx.c: $(srcdir)/emulparams/elf64tilegx.sh \
$(srcdir)/emultempl/elf32.em $(srcdir)/emultempl/needrelax.em \
$(srcdir)/scripttempl/elf.sc ${GEN_DEPENDS}
${GENSCRIPTS} elf64tilegx "$(tdir_tilegx)"
eelf64tilegx_be.c: $(srcdir)/emulparams/elf64tilegx_be.sh \
$(srcdir)/emultempl/elf32.em $(srcdir)/emultempl/needrelax.em \
$(srcdir)/scripttempl/elf.sc ${GEN_DEPENDS}
${GENSCRIPTS} elf64tilegx_be "$(tdir_tilegx_be)"
eelf_l1om.c: $(srcdir)/emulparams/elf_l1om.sh \
$(ELF_DEPS) $(srcdir)/scripttempl/elf.sc ${GEN_DEPENDS}
${GENSCRIPTS} elf_l1om "$(tdir_elf_l1om)"
/ld.texinfo
1,7 → 1,7
\input texinfo
@setfilename ld.info
@c Copyright 1991, 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2000,
@c 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010, 2011
@c 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010, 2011, 2012
@c Free Software Foundation, Inc.
@syncodeindex ky cp
@c man begin INCLUDE
6710,7 → 6710,9
@cindex PowerPC64 multi-TOC
@kindex --no-multi-toc
@item --no-multi-toc
By default, PowerPC64 GCC generates code for a TOC model where TOC
If given any toc option besides @code{-mcmodel=medium} or
@code{-mcmodel=large}, PowerPC64 GCC generates code for a TOC model
where TOC
entries are accessed with a 16-bit offset from r2. This limits the
total TOC size to 64K. PowerPC64 @command{ld} extends this limit by
grouping code sections such that each group uses less than 64K for its
6719,6 → 6721,52
help if a single input file has a @code{.toc} section that exceeds
64K, most likely from linking multiple files with @command{ld -r}.
Use this option to turn off this feature.
 
@cindex PowerPC64 TOC sorting
@kindex --no-toc-sort
@item --no-toc-sort
By default, @command{ld} sorts TOC sections so that those whose file
happens to have a section called @code{.init} or @code{.fini} are
placed first, followed by TOC sections referenced by code generated
with PowerPC64 gcc's @code{-mcmodel=small}, and lastly TOC sections
referenced only by code generated with PowerPC64 gcc's
@code{-mcmodel=medium} or @code{-mcmodel=large} options. Doing this
results in better TOC grouping for multi-TOC. Use this option to turn
off this feature.
 
@cindex PowerPC64 PLT stub alignment
@kindex --plt-align
@kindex --no-plt-align
@item --plt-align
@itemx --no-plt-align
Use these options to control whether individual PLT call stubs are
aligned to a 32-byte boundary, or to the specified power of two
boundary when using @code{--plt-align=}. By default PLT call stubs
are packed tightly.
 
@cindex PowerPC64 PLT call stub static chain
@kindex --plt-static-chain
@kindex --no-plt-static-chain
@item --plt-static-chain
@itemx --no-plt-static-chain
Use these options to control whether PLT call stubs load the static
chain pointer (r11). @code{ld} defaults to not loading the static
chain since there is never any need to do so on a PLT call.
 
@cindex PowerPC64 PLT call stub thread safety
@kindex --plt-thread-safe
@kindex --no-plt-thread-safe
@item --plt-thread-safe
@itemx --no-thread-safe
With power7's weakly ordered memory model, it is possible when using
lazy binding for ld.so to update a plt entry in one thread and have
another thread see the individual plt entry words update in the wrong
order, despite ld.so carefully writing in the correct order and using
memory write barriers. To avoid this we need some sort of read
barrier in the call stub, or use LD_BIND_NOW=1. By default, @code{ld}
looks for calls to commonly used functions that create threads, and if
seen, adds the necessary barriers. Use these options to change the
default behaviour.
@end table
 
@ifclear GENERIC

powered by: WebSVN 2.1.0

© copyright 1999-2024 OpenCores.org, equivalent to Oliscience, all rights reserved. OpenCores®, registered trademark.