SHA256
1
0
forked from pool/binutils
binutils/binutils-2.29-branch.diff
2017-08-30 13:08:30 +00:00

15241 lines
514 KiB
Diff
Raw Blame History

This file contains invisible Unicode characters

This file contains invisible Unicode characters that are indistinguishable to humans but may be processed differently by a computer. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

diff --git a/bfd/ChangeLog b/bfd/ChangeLog
index 89f4338..c90206c 100644
--- a/bfd/ChangeLog
+++ b/bfd/ChangeLog
@@ -1,3 +1,138 @@
+2017-08-29 Nick Clifton <nickc@redhat.com>
+
+ Import from mainline:
+
+ PR 21840
+ * mach-o.c (bfd_mach_o_read_symtab_strtab): Fail if the symtab
+ size is -1.
+ * nlmcode.h (nlm_swap_auxiliary_headers_in): Replace assertion
+ with error return.
+ * section.c (bfd_make_section_with_flags): Fail if the name or bfd
+ are NULL.
+ * vms-alpha.c (bfd_make_section_with_flags): Correct computation
+ of end pointer.
+ (evax_bfd_print_emh): Check for invalid string lengths.
+
+2017-08-23 Alan Modra <amodra@gmail.com>
+
+ PR 21988
+ * elf64-ppc.c (ensure_undef_dynamic): Rename from
+ ensure_undefweak_dynamic. Handle undefined too.
+ * elf32-ppc.c (ensure_undef_dynamic): Likewise.
+ * elf32-hppa.c (ensure_undef_dynamic): Likewise.
+ (allocate_dynrelocs): Discard undefined non-default visibility
+ relocs first. Make undefined syms dynamic. Tidy goto.
+
+2017-08-21 Alan Modra <amodra@gmail.com>
+ H.J. Lu <hongjiu.lu@intel.com>
+
+ PR ld/21964
+ * elf-bfd.h (SYMBOLIC_BIND): Return TRUE for __start/__stop symbols.
+ * elflink.c (bfd_elf_define_start_stop): Rewrite.
+
+2017-08-07 Alan Modra <amodra@gmail.com>
+
+ PR 21910
+ * elflink.c (bfd_elf_final_link): Don't segfault when sections
+ needed to define various dynamic tags have been discarded.
+
+2017-08-05 Alan Modra <amodra@gmail.com>
+
+ * elf32-hppa.c (elf32_hppa_set_gp): Don't require an
+ hppa_link_hash_table.
+
+2017-07-25 Alan Modra <amodra@gmail.com>
+
+ * elf64-ppc.c (struct map_stub): Add tls_get_addr_opt_bctrl.
+ (stub_eh_frame_size): New function.
+ (ppc_size_one_stub): Set group tls_get_addr_opt_bctrl.
+ (group_sections): Init group tls_get_addr_opt_bctrl.
+ (ppc64_elf_size_stubs): Update sizing and initialization of
+ .eh_frame. Iteration over stubs via group list.
+ (ppc64_elf_build_stubs): Iterate over stubs via group list.
+ (ppc64_elf_finish_dynamic_sections): Update finalization of
+ .eh_frame.
+
+2017-08-18 Nick Clifton <nickc@redhat.com>
+
+ Import from mainline:
+
+ PR binutils/21962
+ * tekhex.c (getsym): Fix check for source pointer walking off the
+ end of the input buffer.
+
+2017-08-17 Szabolcs Nagy <szabolcs.nagy@arm.com>
+
+ PR ld/18808
+ * elfnn-aarch64.c (elfNN_aarch64_final_link_relocate): Skip IFUNC
+ relocations in debug sections, change abort to _bfd_error_handler.
+
+2017-08-17 Szabolcs Nagy <szabolcs.nagy@arm.com>
+
+ PR ld/18841
+ * elfnn-aarch64.c (elfNN_aarch64_reloc_type_class): Return
+ reloc_class_ifunc for ifunc symbols.
+
+2017-08-11 Nick Clifton <nickc@redhat.com>
+
+ PR 21884
+ * elf32-i386.c (elf_i386_link_setup_gnu_properties): If the dynobj
+ has not been set then use the bfd returned by
+ _bfd_elf_link_setup_gnu_properties. If that is null then search
+ through all the input bfds selecting the first normal, ELF format
+ one.
+ * elf64-x86-64.c (elf_x86_64_link_setup_gnu_properties): Likewise.
+
+2017-08-08 Alan Modra <amodra@gmail.com>
+
+ PR 21017
+ * elf32-microblaze.c (microblaze_elf_check_relocs): Don't bump
+ got.refcount for GOTOFF relocs, just create .got section.
+
+2017-08-01 Andreas Krebbel <krebbel@linux.vnet.ibm.com>
+
+ Backport from mainline
+ 2017-08-01 Andreas Krebbel <krebbel@linux.vnet.ibm.com>
+
+ * elf32-s390.c (elf_s390_finish_dynamic_sections): Skip if it
+ isn't the S/390 specific elf data.
+ * elf64-s390.c (elf_s390_finish_dynamic_sections): Likewise.
+
+2017-08-01 Andreas Krebbel <krebbel@linux.vnet.ibm.com>
+
+ Backport from mainline
+ 2017-07-28 Andreas Krebbel <krebbel@linux.vnet.ibm.com>
+
+ * elf32-s390.c (elf_s390_finish_dynamic_sections): Add NULL
+ pointer check for htab->elf.irelplt.
+ * elf64-s390.c (elf_s390_finish_dynamic_sections): Likewise.
+
+2017-07-31 Alan Modra <amodra@gmail.com>
+
+ * elf64-ppc.c (ppc64_elf_tls_setup): Warn on --plt-localentry
+ without ld.so checks.
+
+2017-07-29 Alan Modra <amodra@gmail.com>
+
+ PR 21847
+ * elf64-ppc.c (struct ppc_link_hash_entry): Add non_zero_localentry.
+ (ppc64_elf_merge_symbol): Set non_zero_localentry.
+ (is_elfv2_localentry0): Test non_zero_localentry.
+ (ppc64_elf_tls_setup): Default to --no-plt-localentry.
+
+2017-07-25 Nick Clifton <nickc@redhat.com>
+
+ * po/fr.po: Updated French translation.
+
+2017-07-24 Tristan Gingold <gingold@adacore.com>
+
+ * version.m4: Bump version to 2.29.0
+ * configure: Regenerate.
+
+2017-07-24 Tristan Gingold <gingold@adacore.com>
+
+ * development.sh: Set development to true.
+
2017-07-24 Tristan Gingold <gingold@adacore.com>
* version.m4: Bump version to 2.29
diff --git a/bfd/configure b/bfd/configure
index 7c8ebb1..cda26d8 100755
--- a/bfd/configure
+++ b/bfd/configure
@@ -1,6 +1,6 @@
#! /bin/sh
# Guess values for system-dependent variables and create Makefiles.
-# Generated by GNU Autoconf 2.64 for bfd 2.29.
+# Generated by GNU Autoconf 2.64 for bfd 2.29.0.
#
# Copyright (C) 1992, 1993, 1994, 1995, 1996, 1998, 1999, 2000, 2001,
# 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009 Free Software
@@ -556,8 +556,8 @@ MAKEFLAGS=
# Identity of this package.
PACKAGE_NAME='bfd'
PACKAGE_TARNAME='bfd'
-PACKAGE_VERSION='2.29'
-PACKAGE_STRING='bfd 2.29'
+PACKAGE_VERSION='2.29.0'
+PACKAGE_STRING='bfd 2.29.0'
PACKAGE_BUGREPORT=''
PACKAGE_URL=''
@@ -1354,7 +1354,7 @@ if test "$ac_init_help" = "long"; then
# Omit some internal or obsolete options to make the list less imposing.
# This message is too long to be a string in the A/UX 3.1 sh.
cat <<_ACEOF
-\`configure' configures bfd 2.29 to adapt to many kinds of systems.
+\`configure' configures bfd 2.29.0 to adapt to many kinds of systems.
Usage: $0 [OPTION]... [VAR=VALUE]...
@@ -1425,7 +1425,7 @@ fi
if test -n "$ac_init_help"; then
case $ac_init_help in
- short | recursive ) echo "Configuration of bfd 2.29:";;
+ short | recursive ) echo "Configuration of bfd 2.29.0:";;
esac
cat <<\_ACEOF
@@ -1546,7 +1546,7 @@ fi
test -n "$ac_init_help" && exit $ac_status
if $ac_init_version; then
cat <<\_ACEOF
-bfd configure 2.29
+bfd configure 2.29.0
generated by GNU Autoconf 2.64
Copyright (C) 2009 Free Software Foundation, Inc.
@@ -2188,7 +2188,7 @@ cat >config.log <<_ACEOF
This file contains any messages produced by compilers while
running configure, to aid debugging if configure makes a mistake.
-It was created by bfd $as_me 2.29, which was
+It was created by bfd $as_me 2.29.0, which was
generated by GNU Autoconf 2.64. Invocation command line was
$ $0 $@
@@ -3997,7 +3997,7 @@ fi
# Define the identity of the package.
PACKAGE='bfd'
- VERSION='2.29'
+ VERSION='2.29.0'
cat >>confdefs.h <<_ACEOF
@@ -16666,7 +16666,7 @@ cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1
# report actual input values of CONFIG_FILES etc. instead of their
# values after options handling.
ac_log="
-This file was extended by bfd $as_me 2.29, which was
+This file was extended by bfd $as_me 2.29.0, which was
generated by GNU Autoconf 2.64. Invocation command line was
CONFIG_FILES = $CONFIG_FILES
@@ -16730,7 +16730,7 @@ Report bugs to the package provider."
_ACEOF
cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1
ac_cs_version="\\
-bfd config.status 2.29
+bfd config.status 2.29.0
configured by $0, generated by GNU Autoconf 2.64,
with options \\"`$as_echo "$ac_configure_args" | sed 's/^ //; s/[\\""\`\$]/\\\\&/g'`\\"
diff --git a/bfd/development.sh b/bfd/development.sh
index b001a88..cd31410 100644
--- a/bfd/development.sh
+++ b/bfd/development.sh
@@ -16,4 +16,4 @@
# along with this program. If not, see <http://www.gnu.org/licenses/>.
# Controls whether to enable development-mode features by default.
-development=false
+development=true
diff --git a/bfd/elf-bfd.h b/bfd/elf-bfd.h
index 92a8e02..83958e4 100644
--- a/bfd/elf-bfd.h
+++ b/bfd/elf-bfd.h
@@ -2802,7 +2802,9 @@ extern asection _bfd_elf_large_com_section;
library, if any. A unique symbol can never be bound locally. */
#define SYMBOLIC_BIND(INFO, H) \
(!(H)->unique_global \
- && ((INFO)->symbolic || ((INFO)->dynamic && !(H)->dynamic)))
+ && ((INFO)->symbolic \
+ || (H)->start_stop \
+ || ((INFO)->dynamic && !(H)->dynamic)))
#ifdef __cplusplus
}
diff --git a/bfd/elf32-hppa.c b/bfd/elf32-hppa.c
index 0087c71..548d656 100644
--- a/bfd/elf32-hppa.c
+++ b/bfd/elf32-hppa.c
@@ -1919,16 +1919,20 @@ elf32_hppa_adjust_dynamic_symbol (struct bfd_link_info *info,
return _bfd_elf_adjust_dynamic_copy (info, eh, sec);
}
-/* Make an undefined weak symbol dynamic. */
+/* If EH is undefined, make it dynamic if that makes sense. */
static bfd_boolean
-ensure_undef_weak_dynamic (struct bfd_link_info *info,
- struct elf_link_hash_entry *eh)
+ensure_undef_dynamic (struct bfd_link_info *info,
+ struct elf_link_hash_entry *eh)
{
- if (eh->dynindx == -1
+ struct elf_link_hash_table *htab = elf_hash_table (info);
+
+ if (htab->dynamic_sections_created
+ && (eh->root.type == bfd_link_hash_undefweak
+ || eh->root.type == bfd_link_hash_undefined)
+ && eh->dynindx == -1
&& !eh->forced_local
&& eh->type != STT_PARISC_MILLI
- && eh->root.type == bfd_link_hash_undefweak
&& ELF_ST_VISIBILITY (eh->other) == STV_DEFAULT)
return bfd_elf_link_record_dynamic_symbol (info, eh);
return TRUE;
@@ -1957,7 +1961,7 @@ allocate_plt_static (struct elf_link_hash_entry *eh, void *inf)
if (htab->etab.dynamic_sections_created
&& eh->plt.refcount > 0)
{
- if (!ensure_undef_weak_dynamic (info, eh))
+ if (!ensure_undef_dynamic (info, eh))
return FALSE;
if (WILL_CALL_FINISH_DYNAMIC_SYMBOL (1, bfd_link_pic (info), eh))
@@ -2034,7 +2038,7 @@ allocate_dynrelocs (struct elf_link_hash_entry *eh, void *inf)
if (eh->got.refcount > 0)
{
- if (!ensure_undef_weak_dynamic (info, eh))
+ if (!ensure_undef_dynamic (info, eh))
return FALSE;
sec = htab->etab.sgot;
@@ -2070,8 +2074,14 @@ allocate_dynrelocs (struct elf_link_hash_entry *eh, void *inf)
changes. */
if (bfd_link_pic (info))
{
+ /* Discard relocs on undefined syms with non-default visibility. */
+ if ((eh->root.type == bfd_link_hash_undefined
+ || eh->root.type == bfd_link_hash_undefweak)
+ && ELF_ST_VISIBILITY (eh->other) != STV_DEFAULT)
+ hh->dyn_relocs = NULL;
+
#if RELATIVE_DYNRELOCS
- if (SYMBOL_CALLS_LOCAL (info, eh))
+ else if (SYMBOL_CALLS_LOCAL (info, eh))
{
struct elf32_hppa_dyn_reloc_entry **hdh_pp;
@@ -2087,15 +2097,9 @@ allocate_dynrelocs (struct elf_link_hash_entry *eh, void *inf)
}
#endif
- /* Also discard relocs on undefined weak syms with non-default
- visibility. */
- if (hh->dyn_relocs != NULL
- && eh->root.type == bfd_link_hash_undefweak)
+ if (hh->dyn_relocs != NULL)
{
- if (ELF_ST_VISIBILITY (eh->other) != STV_DEFAULT)
- hh->dyn_relocs = NULL;
-
- else if (!ensure_undef_weak_dynamic (info, eh))
+ if (!ensure_undef_dynamic (info, eh))
return FALSE;
}
}
@@ -2113,19 +2117,14 @@ allocate_dynrelocs (struct elf_link_hash_entry *eh, void *inf)
&& (eh->root.type == bfd_link_hash_undefweak
|| eh->root.type == bfd_link_hash_undefined))))
{
- if (!ensure_undef_weak_dynamic (info, eh))
+ if (!ensure_undef_dynamic (info, eh))
return FALSE;
- /* If that succeeded, we know we'll be keeping all the
- relocs. */
- if (eh->dynindx != -1)
- goto keep;
+ if (eh->dynindx == -1)
+ hh->dyn_relocs = NULL;
}
-
- hh->dyn_relocs = NULL;
- return TRUE;
-
- keep: ;
+ else
+ hh->dyn_relocs = NULL;
}
/* Finally, allocate space. */
@@ -3090,13 +3089,8 @@ elf32_hppa_set_gp (bfd *abfd, struct bfd_link_info *info)
struct bfd_link_hash_entry *h;
asection *sec = NULL;
bfd_vma gp_val = 0;
- struct elf32_hppa_link_hash_table *htab;
- htab = hppa_link_hash_table (info);
- if (htab == NULL)
- return FALSE;
-
- h = bfd_link_hash_lookup (&htab->etab.root, "$global$", FALSE, FALSE, FALSE);
+ h = bfd_link_hash_lookup (info->hash, "$global$", FALSE, FALSE, FALSE);
if (h != NULL
&& (h->type == bfd_link_hash_defined
@@ -3159,10 +3153,13 @@ elf32_hppa_set_gp (bfd *abfd, struct bfd_link_info *info)
}
}
- if (sec != NULL && sec->output_section != NULL)
- gp_val += sec->output_section->vma + sec->output_offset;
+ if (bfd_get_flavour (abfd) == bfd_target_elf_flavour)
+ {
+ if (sec != NULL && sec->output_section != NULL)
+ gp_val += sec->output_section->vma + sec->output_offset;
- elf_gp (abfd) = gp_val;
+ elf_gp (abfd) = gp_val;
+ }
return TRUE;
}
diff --git a/bfd/elf32-i386.c b/bfd/elf32-i386.c
index df16775..b46ed2d 100644
--- a/bfd/elf32-i386.c
+++ b/bfd/elf32-i386.c
@@ -6914,20 +6914,29 @@ elf_i386_link_setup_gnu_properties (struct bfd_link_info *info)
set it in check_relocs. */
if (dynobj == NULL)
{
- bfd *abfd;
-
- /* Find a normal input file to hold linker created
- sections. */
- for (abfd = info->input_bfds;
- abfd != NULL;
- abfd = abfd->link.next)
- if ((abfd->flags
- & (DYNAMIC | BFD_LINKER_CREATED | BFD_PLUGIN)) == 0)
- {
- htab->elf.dynobj = abfd;
- dynobj = abfd;
- break;
- }
+ if (pbfd != NULL)
+ {
+ htab->elf.dynobj = pbfd;
+ dynobj = pbfd;
+ }
+ else
+ {
+ bfd *abfd;
+
+ /* Find a normal input file to hold linker created
+ sections. */
+ for (abfd = info->input_bfds;
+ abfd != NULL;
+ abfd = abfd->link.next)
+ if (bfd_get_flavour (abfd) == bfd_target_elf_flavour
+ && (abfd->flags
+ & (DYNAMIC | BFD_LINKER_CREATED | BFD_PLUGIN)) == 0)
+ {
+ htab->elf.dynobj = abfd;
+ dynobj = abfd;
+ break;
+ }
+ }
}
/* Even when lazy binding is disabled by "-z now", the PLT0 entry may
@@ -7019,7 +7028,7 @@ elf_i386_link_setup_gnu_properties (struct bfd_link_info *info)
return pbfd;
/* Since create_dynamic_sections isn't always called, but GOT
- relocations need GOT relocations, create them here so that we
+ relocations need GOT sections, create them here so that we
don't need to do it in check_relocs. */
if (htab->elf.sgot == NULL
&& !_bfd_elf_create_got_section (dynobj, info))
diff --git a/bfd/elf32-microblaze.c b/bfd/elf32-microblaze.c
index 2657736..94ef09e 100644
--- a/bfd/elf32-microblaze.c
+++ b/bfd/elf32-microblaze.c
@@ -2353,7 +2353,6 @@ microblaze_elf_check_relocs (bfd * abfd,
dogottls:
sec->has_tls_reloc = 1;
/* Fall through. */
- case R_MICROBLAZE_GOTOFF_64:
case R_MICROBLAZE_GOT_64:
if (htab->elf.sgot == NULL)
{
@@ -2374,6 +2373,17 @@ microblaze_elf_check_relocs (bfd * abfd,
}
break;
+ case R_MICROBLAZE_GOTOFF_64:
+ case R_MICROBLAZE_GOTOFF_32:
+ if (htab->elf.sgot == NULL)
+ {
+ if (htab->elf.dynobj == NULL)
+ htab->elf.dynobj = abfd;
+ if (!_bfd_elf_create_got_section (htab->elf.dynobj, info))
+ return FALSE;
+ }
+ break;
+
case R_MICROBLAZE_64:
case R_MICROBLAZE_64_PCREL:
case R_MICROBLAZE_32:
diff --git a/bfd/elf32-ppc.c b/bfd/elf32-ppc.c
index 8a00fb4..f9a32c2 100644
--- a/bfd/elf32-ppc.c
+++ b/bfd/elf32-ppc.c
@@ -5942,17 +5942,18 @@ allocate_got (struct ppc_elf_link_hash_table *htab, unsigned int need)
return where;
}
-/* If H is undefined weak, make it dynamic if that makes sense. */
+/* If H is undefined, make it dynamic if that makes sense. */
static bfd_boolean
-ensure_undefweak_dynamic (struct bfd_link_info *info,
- struct elf_link_hash_entry *h)
+ensure_undef_dynamic (struct bfd_link_info *info,
+ struct elf_link_hash_entry *h)
{
struct elf_link_hash_table *htab = elf_hash_table (info);
if (htab->dynamic_sections_created
- && info->dynamic_undefined_weak != 0
- && h->root.type == bfd_link_hash_undefweak
+ && ((info->dynamic_undefined_weak != 0
+ && h->root.type == bfd_link_hash_undefweak)
+ || h->root.type == bfd_link_hash_undefined)
&& h->dynindx == -1
&& !h->forced_local
&& ELF_ST_VISIBILITY (h->other) == STV_DEFAULT)
@@ -5986,9 +5987,8 @@ allocate_dynrelocs (struct elf_link_hash_entry *h, void *inf)
{
unsigned int need;
- /* Make sure this symbol is output as a dynamic symbol.
- Undefined weak syms won't yet be marked as dynamic. */
- if (!ensure_undefweak_dynamic (info, &eh->elf))
+ /* Make sure this symbol is output as a dynamic symbol. */
+ if (!ensure_undef_dynamic (info, &eh->elf))
return FALSE;
need = 0;
@@ -6102,9 +6102,8 @@ allocate_dynrelocs (struct elf_link_hash_entry *h, void *inf)
if (eh->dyn_relocs != NULL)
{
- /* Make sure undefined weak symbols are output as a dynamic
- symbol in PIEs. */
- if (!ensure_undefweak_dynamic (info, h))
+ /* Make sure this symbol is output as a dynamic symbol. */
+ if (!ensure_undef_dynamic (info, h))
return FALSE;
}
}
@@ -6120,9 +6119,8 @@ allocate_dynrelocs (struct elf_link_hash_entry *h, void *inf)
&& eh->has_addr16_lo
&& htab->params->pic_fixup > 0))
{
- /* Make sure this symbol is output as a dynamic symbol.
- Undefined weak syms won't yet be marked as dynamic. */
- if (!ensure_undefweak_dynamic (info, h))
+ /* Make sure this symbol is output as a dynamic symbol. */
+ if (!ensure_undef_dynamic (info, h))
return FALSE;
if (h->dynindx == -1)
diff --git a/bfd/elf32-s390.c b/bfd/elf32-s390.c
index c26bdcf..4aa3915 100644
--- a/bfd/elf32-s390.c
+++ b/bfd/elf32-s390.c
@@ -3941,7 +3941,9 @@ elf_s390_finish_dynamic_sections (bfd *output_bfd,
break;
case DT_PLTRELSZ:
- dyn.d_un.d_val = htab->elf.srelplt->size + htab->elf.irelplt->size;
+ dyn.d_un.d_val = htab->elf.srelplt->size;
+ if (htab->elf.irelplt)
+ dyn.d_un.d_val += htab->elf.irelplt->size;
break;
}
@@ -3999,6 +4001,9 @@ elf_s390_finish_dynamic_sections (bfd *output_bfd,
symtab_hdr = &elf_symtab_hdr (ibfd);
+ if (!is_s390_elf (ibfd))
+ continue;
+
local_plt = elf_s390_local_plt (ibfd);
if (local_plt != NULL)
for (i = 0; i < symtab_hdr->sh_info; i++)
diff --git a/bfd/elf64-ppc.c b/bfd/elf64-ppc.c
index 6389cd2..4ff3f06 100644
--- a/bfd/elf64-ppc.c
+++ b/bfd/elf64-ppc.c
@@ -3919,6 +3919,9 @@ struct map_stub
/* Whether to emit a copy of register save/restore functions in this
group. */
int needs_save_res;
+ /* The offset of the __tls_get_addr_opt plt stub bctrl in this group,
+ or -1u if no such stub with bctrl exists. */
+ unsigned int tls_get_addr_opt_bctrl;
};
struct ppc_stub_hash_entry {
@@ -4010,6 +4013,10 @@ struct ppc_link_hash_entry
with non-standard calling convention. */
unsigned int save_res:1;
+ /* Set if a duplicate symbol with non-zero localentry is detected,
+ even when the duplicate symbol does not provide a definition. */
+ unsigned int non_zero_localentry:1;
+
/* Contexts in which symbol is used in the GOT (or TOC).
TLS_GD .. TLS_EXPLICIT bits are or'd into the mask as the
corresponding relocs are encountered during check_relocs.
@@ -5018,7 +5025,7 @@ ppc64_elf_merge_symbol_attribute (struct elf_link_hash_entry *h,
static bfd_boolean
ppc64_elf_merge_symbol (struct elf_link_hash_entry *h,
- const Elf_Internal_Sym *isym ATTRIBUTE_UNUSED,
+ const Elf_Internal_Sym *isym,
asection **psec ATTRIBUTE_UNUSED,
bfd_boolean newdef ATTRIBUTE_UNUSED,
bfd_boolean olddef ATTRIBUTE_UNUSED,
@@ -5026,6 +5033,8 @@ ppc64_elf_merge_symbol (struct elf_link_hash_entry *h,
const asection *oldsec ATTRIBUTE_UNUSED)
{
((struct ppc_link_hash_entry *) h)->fake = 0;
+ if ((STO_PPC64_LOCAL_MASK & isym->st_other) != 0)
+ ((struct ppc_link_hash_entry *) h)->non_zero_localentry = 1;
return TRUE;
}
@@ -6332,6 +6341,7 @@ is_elfv2_localentry0 (struct elf_link_hash_entry *h)
&& h->type == STT_FUNC
&& h->root.type == bfd_link_hash_defined
&& (STO_PPC64_LOCAL_MASK & h->other) == 0
+ && !((struct ppc_link_hash_entry *) h)->non_zero_localentry
&& is_ppc64_elf (h->root.u.def.section->owner)
&& abiversion (h->root.u.def.section->owner) >= 2);
}
@@ -8346,10 +8356,28 @@ ppc64_elf_tls_setup (struct bfd_link_info *info)
else if (!htab->do_multi_toc)
htab->params->no_multi_toc = 1;
+ /* Default to --no-plt-localentry, as this option can cause problems
+ with symbol interposition. For example, glibc libpthread.so and
+ libc.so duplicate many pthread symbols, with a fallback
+ implementation in libc.so. In some cases the fallback does more
+ work than the pthread implementation. __pthread_condattr_destroy
+ is one such symbol: the libpthread.so implementation is
+ localentry:0 while the libc.so implementation is localentry:8.
+ An app that "cleverly" uses dlopen to only load necessary
+ libraries at runtime may omit loading libpthread.so when not
+ running multi-threaded, which then results in the libc.so
+ fallback symbols being used and ld.so complaining. Now there
+ are workarounds in ld (see non_zero_localentry) to detect the
+ pthread situation, but that may not be the only case where
+ --plt-localentry can cause trouble. */
if (htab->params->plt_localentry0 < 0)
- htab->params->plt_localentry0
- = elf_link_hash_lookup (&htab->elf, "GLIBC_2.26",
- FALSE, FALSE, FALSE) != NULL;
+ htab->params->plt_localentry0 = 0;
+ if (htab->params->plt_localentry0
+ && elf_link_hash_lookup (&htab->elf, "GLIBC_2.26",
+ FALSE, FALSE, FALSE) == NULL)
+ info->callbacks->einfo
+ (_("%P: warning: --plt-localentry is especially dangerous without "
+ "ld.so support to detect ABI violations.\n"));
htab->tls_get_addr = ((struct ppc_link_hash_entry *)
elf_link_hash_lookup (&htab->elf, ".__tls_get_addr",
@@ -9715,17 +9743,18 @@ merge_got_entries (struct got_entry **pent)
}
}
-/* If H is undefined weak, make it dynamic if that makes sense. */
+/* If H is undefined, make it dynamic if that makes sense. */
static bfd_boolean
-ensure_undefweak_dynamic (struct bfd_link_info *info,
- struct elf_link_hash_entry *h)
+ensure_undef_dynamic (struct bfd_link_info *info,
+ struct elf_link_hash_entry *h)
{
struct elf_link_hash_table *htab = elf_hash_table (info);
if (htab->dynamic_sections_created
- && info->dynamic_undefined_weak != 0
- && h->root.type == bfd_link_hash_undefweak
+ && ((info->dynamic_undefined_weak != 0
+ && h->root.type == bfd_link_hash_undefweak)
+ || h->root.type == bfd_link_hash_undefined)
&& h->dynindx == -1
&& !h->forced_local
&& ELF_ST_VISIBILITY (h->other) == STV_DEFAULT)
@@ -9804,9 +9833,8 @@ allocate_dynrelocs (struct elf_link_hash_entry *h, void *inf)
for (gent = h->got.glist; gent != NULL; gent = gent->next)
if (!gent->is_indirect)
{
- /* Make sure this symbol is output as a dynamic symbol.
- Undefined weak syms won't yet be marked as dynamic. */
- if (!ensure_undefweak_dynamic (info, h))
+ /* Make sure this symbol is output as a dynamic symbol. */
+ if (!ensure_undef_dynamic (info, h))
return FALSE;
if (!is_ppc64_elf (gent->owner))
@@ -9860,9 +9888,8 @@ allocate_dynrelocs (struct elf_link_hash_entry *h, void *inf)
if (eh->dyn_relocs != NULL)
{
- /* Make sure this symbol is output as a dynamic symbol.
- Undefined weak syms won't yet be marked as dynamic. */
- if (!ensure_undefweak_dynamic (info, h))
+ /* Make sure this symbol is output as a dynamic symbol. */
+ if (!ensure_undef_dynamic (info, h))
return FALSE;
}
}
@@ -9897,9 +9924,8 @@ allocate_dynrelocs (struct elf_link_hash_entry *h, void *inf)
if (!h->non_got_ref
&& !h->def_regular)
{
- /* Make sure this symbol is output as a dynamic symbol.
- Undefined weak syms won't yet be marked as dynamic. */
- if (!ensure_undefweak_dynamic (info, h))
+ /* Make sure this symbol is output as a dynamic symbol. */
+ if (!ensure_undef_dynamic (info, h))
return FALSE;
if (h->dynindx == -1)
@@ -11386,6 +11412,15 @@ ppc_size_one_stub (struct bfd_hash_entry *gen_entry, void *in_arg)
- htab->sec_info[stub_entry->group->link_sec->id].toc_off);
size = plt_stub_size (htab, stub_entry, off);
+ if (stub_entry->h != NULL
+ && (stub_entry->h == htab->tls_get_addr_fd
+ || stub_entry->h == htab->tls_get_addr)
+ && htab->params->tls_get_addr_opt
+ && (ALWAYS_EMIT_R2SAVE
+ || stub_entry->stub_type == ppc_stub_plt_call_r2save))
+ stub_entry->group->tls_get_addr_opt_bctrl
+ = stub_entry->group->stub_sec->size + size - 5 * 4;
+
if (htab->params->plt_stub_align)
size += plt_stub_pad (htab, stub_entry, off);
if (info->emitrelocations)
@@ -12252,6 +12287,7 @@ group_sections (struct bfd_link_info *info,
group->link_sec = curr;
group->stub_sec = NULL;
group->needs_save_res = 0;
+ group->tls_get_addr_opt_bctrl = -1u;
group->next = htab->group;
htab->group = group;
do
@@ -12302,6 +12338,27 @@ static const unsigned char glink_eh_frame_cie[] =
DW_CFA_def_cfa, 1, 0 /* def_cfa: r1 offset 0. */
};
+static size_t
+stub_eh_frame_size (struct map_stub *group, size_t align)
+{
+ size_t this_size = 17;
+ if (group->tls_get_addr_opt_bctrl != -1u)
+ {
+ unsigned int to_bctrl = group->tls_get_addr_opt_bctrl / 4;
+ if (to_bctrl < 64)
+ this_size += 1;
+ else if (to_bctrl < 256)
+ this_size += 2;
+ else if (to_bctrl < 65536)
+ this_size += 3;
+ else
+ this_size += 5;
+ this_size += 6;
+ }
+ this_size = (this_size + align - 1) & -align;
+ return this_size;
+}
+
/* Stripping output sections is normally done before dynamic section
symbols have been allocated. This function is called later, and
handles cases like htab->brlt which is mapped to its own output
@@ -12404,7 +12461,6 @@ ppc64_elf_size_stubs (struct bfd_link_info *info)
bfd *input_bfd;
unsigned int bfd_indx;
struct map_stub *group;
- asection *stub_sec;
htab->stub_iteration += 1;
@@ -12722,11 +12778,11 @@ ppc64_elf_size_stubs (struct bfd_link_info *info)
/* We may have added some stubs. Find out the new size of the
stub sections. */
- for (stub_sec = htab->params->stub_bfd->sections;
- stub_sec != NULL;
- stub_sec = stub_sec->next)
- if ((stub_sec->flags & SEC_LINKER_CREATED) == 0)
+ for (group = htab->group; group != NULL; group = group->next)
+ if (group->stub_sec != NULL)
{
+ asection *stub_sec = group->stub_sec;
+
if (htab->stub_iteration <= STUB_SHRINK_ITER
|| stub_sec->rawsize < stub_sec->size)
/* Past STUB_SHRINK_ITER, rawsize is the max size seen. */
@@ -12761,11 +12817,9 @@ ppc64_elf_size_stubs (struct bfd_link_info *info)
{
size_t size = 0, align = 4;
- for (stub_sec = htab->params->stub_bfd->sections;
- stub_sec != NULL;
- stub_sec = stub_sec->next)
- if ((stub_sec->flags & SEC_LINKER_CREATED) == 0)
- size += (17 + align - 1) & -align;
+ for (group = htab->group; group != NULL; group = group->next)
+ if (group->stub_sec != NULL)
+ size += stub_eh_frame_size (group, align);
if (htab->glink != NULL && htab->glink->size != 0)
size += (24 + align - 1) & -align;
if (size != 0)
@@ -12777,24 +12831,20 @@ ppc64_elf_size_stubs (struct bfd_link_info *info)
}
if (htab->params->plt_stub_align != 0)
- for (stub_sec = htab->params->stub_bfd->sections;
- stub_sec != NULL;
- stub_sec = stub_sec->next)
- if ((stub_sec->flags & SEC_LINKER_CREATED) == 0)
- stub_sec->size = ((stub_sec->size
- + (1 << htab->params->plt_stub_align) - 1)
- & -(1 << htab->params->plt_stub_align));
-
- for (stub_sec = htab->params->stub_bfd->sections;
- stub_sec != NULL;
- stub_sec = stub_sec->next)
- if ((stub_sec->flags & SEC_LINKER_CREATED) == 0
- && stub_sec->rawsize != stub_sec->size
+ for (group = htab->group; group != NULL; group = group->next)
+ if (group->stub_sec != NULL)
+ group->stub_sec->size = ((group->stub_sec->size
+ + (1 << htab->params->plt_stub_align) - 1)
+ & -(1 << htab->params->plt_stub_align));
+
+ for (group = htab->group; group != NULL; group = group->next)
+ if (group->stub_sec != NULL
+ && group->stub_sec->rawsize != group->stub_sec->size
&& (htab->stub_iteration <= STUB_SHRINK_ITER
- || stub_sec->rawsize < stub_sec->size))
+ || group->stub_sec->rawsize < group->stub_sec->size))
break;
- if (stub_sec == NULL
+ if (group == NULL
&& (htab->glink_eh_frame == NULL
|| htab->glink_eh_frame->rawsize == htab->glink_eh_frame->size))
break;
@@ -12809,7 +12859,7 @@ ppc64_elf_size_stubs (struct bfd_link_info *info)
bfd_vma val;
bfd_byte *p, *last_fde;
size_t last_fde_len, size, align, pad;
- asection *stub_sec;
+ struct map_stub *group;
p = bfd_zalloc (htab->glink_eh_frame->owner, htab->glink_eh_frame->size);
if (p == NULL)
@@ -12824,13 +12874,11 @@ ppc64_elf_size_stubs (struct bfd_link_info *info)
bfd_put_32 (htab->elf.dynobj, last_fde_len, p);
p += last_fde_len + 4;
- for (stub_sec = htab->params->stub_bfd->sections;
- stub_sec != NULL;
- stub_sec = stub_sec->next)
- if ((stub_sec->flags & SEC_LINKER_CREATED) == 0)
+ for (group = htab->group; group != NULL; group = group->next)
+ if (group->stub_sec != NULL)
{
last_fde = p;
- last_fde_len = ((17 + align - 1) & -align) - 4;
+ last_fde_len = stub_eh_frame_size (group, align) - 4;
/* FDE length. */
bfd_put_32 (htab->elf.dynobj, last_fde_len, p);
p += 4;
@@ -12841,12 +12889,44 @@ ppc64_elf_size_stubs (struct bfd_link_info *info)
/* Offset to stub section, written later. */
p += 4;
/* stub section size. */
- bfd_put_32 (htab->elf.dynobj, stub_sec->size, p);
+ bfd_put_32 (htab->elf.dynobj, group->stub_sec->size, p);
p += 4;
/* Augmentation. */
p += 1;
+ if (group->tls_get_addr_opt_bctrl != -1u)
+ {
+ unsigned int to_bctrl = group->tls_get_addr_opt_bctrl / 4;
+
+ /* This FDE needs more than just the default.
+ Describe __tls_get_addr_opt stub LR. */
+ if (to_bctrl < 64)
+ *p++ = DW_CFA_advance_loc + to_bctrl;
+ else if (to_bctrl < 256)
+ {
+ *p++ = DW_CFA_advance_loc1;
+ *p++ = to_bctrl;
+ }
+ else if (to_bctrl < 65536)
+ {
+ *p++ = DW_CFA_advance_loc2;
+ bfd_put_16 (htab->elf.dynobj, to_bctrl, p);
+ p += 2;
+ }
+ else
+ {
+ *p++ = DW_CFA_advance_loc4;
+ bfd_put_32 (htab->elf.dynobj, to_bctrl, p);
+ p += 4;
+ }
+ *p++ = DW_CFA_offset_extended_sf;
+ *p++ = 65;
+ *p++ = -(STK_LINKER (htab) / 8) & 0x7f;
+ *p++ = DW_CFA_advance_loc + 4;
+ *p++ = DW_CFA_restore_extended;
+ *p++ = 65;
+ }
/* Pad. */
- p += ((17 + align - 1) & -align) - 17;
+ p = last_fde + last_fde_len + 4;
}
if (htab->glink != NULL && htab->glink->size != 0)
{
@@ -13115,10 +13195,8 @@ ppc64_elf_build_stubs (struct bfd_link_info *info,
return FALSE;
/* Allocate memory to hold the linker stubs. */
- for (stub_sec = htab->params->stub_bfd->sections;
- stub_sec != NULL;
- stub_sec = stub_sec->next)
- if ((stub_sec->flags & SEC_LINKER_CREATED) == 0
+ for (group = htab->group; group != NULL; group = group->next)
+ if ((stub_sec = group->stub_sec) != NULL
&& stub_sec->size != 0)
{
stub_sec->contents = bfd_zalloc (htab->params->stub_bfd, stub_sec->size);
@@ -13300,18 +13378,14 @@ ppc64_elf_build_stubs (struct bfd_link_info *info,
htab->relbrlt->reloc_count = 0;
if (htab->params->plt_stub_align != 0)
- for (stub_sec = htab->params->stub_bfd->sections;
- stub_sec != NULL;
- stub_sec = stub_sec->next)
- if ((stub_sec->flags & SEC_LINKER_CREATED) == 0)
+ for (group = htab->group; group != NULL; group = group->next)
+ if ((stub_sec = group->stub_sec) != NULL)
stub_sec->size = ((stub_sec->size
+ (1 << htab->params->plt_stub_align) - 1)
& -(1 << htab->params->plt_stub_align));
- for (stub_sec = htab->params->stub_bfd->sections;
- stub_sec != NULL;
- stub_sec = stub_sec->next)
- if ((stub_sec->flags & SEC_LINKER_CREATED) == 0)
+ for (group = htab->group; group != NULL; group = group->next)
+ if ((stub_sec = group->stub_sec) != NULL)
{
stub_sec_count += 1;
if (stub_sec->rawsize != stub_sec->size
@@ -13323,7 +13397,7 @@ ppc64_elf_build_stubs (struct bfd_link_info *info,
/* Note that the glink_eh_frame check here is not only testing that
the generated size matched the calculated size but also that
bfd_elf_discard_info didn't make any changes to the section. */
- if (stub_sec != NULL
+ if (group != NULL
|| (htab->glink_eh_frame != NULL
&& htab->glink_eh_frame->rawsize != htab->glink_eh_frame->size))
{
@@ -15743,55 +15817,40 @@ ppc64_elf_finish_dynamic_sections (bfd *output_bfd,
{
bfd_vma val;
bfd_byte *p;
- asection *stub_sec;
+ struct map_stub *group;
size_t align = 4;
p = htab->glink_eh_frame->contents;
p += (sizeof (glink_eh_frame_cie) + align - 1) & -align;
- for (stub_sec = htab->params->stub_bfd->sections;
- stub_sec != NULL;
- stub_sec = stub_sec->next)
- if ((stub_sec->flags & SEC_LINKER_CREATED) == 0)
+
+ for (group = htab->group; group != NULL; group = group->next)
+ if (group->stub_sec != NULL)
{
- /* FDE length. */
- p += 4;
- /* CIE pointer. */
- p += 4;
/* Offset to stub section. */
- val = (stub_sec->output_section->vma
- + stub_sec->output_offset);
+ val = (group->stub_sec->output_section->vma
+ + group->stub_sec->output_offset);
val -= (htab->glink_eh_frame->output_section->vma
+ htab->glink_eh_frame->output_offset
- + (p - htab->glink_eh_frame->contents));
+ + (p + 8 - htab->glink_eh_frame->contents));
if (val + 0x80000000 > 0xffffffff)
{
info->callbacks->einfo
(_("%P: %s offset too large for .eh_frame sdata4 encoding"),
- stub_sec->name);
+ group->stub_sec->name);
return FALSE;
}
- bfd_put_32 (dynobj, val, p);
- p += 4;
- /* stub section size. */
- p += 4;
- /* Augmentation. */
- p += 1;
- /* Pad. */
- p += ((17 + align - 1) & -align) - 17;
+ bfd_put_32 (dynobj, val, p + 8);
+ p += stub_eh_frame_size (group, align);
}
if (htab->glink != NULL && htab->glink->size != 0)
{
- /* FDE length. */
- p += 4;
- /* CIE pointer. */
- p += 4;
/* Offset to .glink. */
val = (htab->glink->output_section->vma
+ htab->glink->output_offset
+ 8);
val -= (htab->glink_eh_frame->output_section->vma
+ htab->glink_eh_frame->output_offset
- + (p - htab->glink_eh_frame->contents));
+ + (p + 8 - htab->glink_eh_frame->contents));
if (val + 0x80000000 > 0xffffffff)
{
info->callbacks->einfo
@@ -15799,15 +15858,8 @@ ppc64_elf_finish_dynamic_sections (bfd *output_bfd,
htab->glink->name);
return FALSE;
}
- bfd_put_32 (dynobj, val, p);
- p += 4;
- /* .glink size. */
- p += 4;
- /* Augmentation. */
- p += 1;
- /* Ops. */
- p += 7;
- p += ((24 + align - 1) & -align) - 24;
+ bfd_put_32 (dynobj, val, p + 8);
+ p += (24 + align - 1) & -align;
}
if (htab->glink_eh_frame->sec_info_type == SEC_INFO_TYPE_EH_FRAME
diff --git a/bfd/elf64-s390.c b/bfd/elf64-s390.c
index f85f8cd..d25c72b 100644
--- a/bfd/elf64-s390.c
+++ b/bfd/elf64-s390.c
@@ -3745,7 +3745,9 @@ elf_s390_finish_dynamic_sections (bfd *output_bfd,
break;
case DT_PLTRELSZ:
- dyn.d_un.d_val = htab->elf.srelplt->size + htab->elf.irelplt->size;
+ dyn.d_un.d_val = htab->elf.srelplt->size;
+ if (htab->elf.irelplt)
+ dyn.d_un.d_val += htab->elf.irelplt->size;
break;
case DT_RELASZ:
@@ -3756,7 +3758,9 @@ elf_s390_finish_dynamic_sections (bfd *output_bfd,
linker script arranges for .rela.plt to follow all
other relocation sections, we don't have to worry
about changing the DT_RELA entry. */
- dyn.d_un.d_val -= htab->elf.srelplt->size + htab->elf.irelplt->size;
+ dyn.d_un.d_val -= htab->elf.srelplt->size;
+ if (htab->elf.irelplt)
+ dyn.d_un.d_val -= htab->elf.irelplt->size;
break;
}
@@ -3810,6 +3814,9 @@ elf_s390_finish_dynamic_sections (bfd *output_bfd,
symtab_hdr = &elf_symtab_hdr (ibfd);
+ if (!is_s390_elf (ibfd))
+ continue;
+
local_plt = elf_s390_local_plt (ibfd);
if (local_plt != NULL)
for (i = 0; i < symtab_hdr->sh_info; i++)
diff --git a/bfd/elf64-x86-64.c b/bfd/elf64-x86-64.c
index c80a9ca..821a7d9c 100644
--- a/bfd/elf64-x86-64.c
+++ b/bfd/elf64-x86-64.c
@@ -7466,8 +7466,9 @@ error_alignment:
for (abfd = info->input_bfds;
abfd != NULL;
abfd = abfd->link.next)
- if ((abfd->flags
- & (DYNAMIC | BFD_LINKER_CREATED | BFD_PLUGIN)) == 0)
+ if (bfd_get_flavour (abfd) == bfd_target_elf_flavour
+ && (abfd->flags
+ & (DYNAMIC | BFD_LINKER_CREATED | BFD_PLUGIN)) == 0)
{
htab->elf.dynobj = abfd;
dynobj = abfd;
diff --git a/bfd/elflink.c b/bfd/elflink.c
index bb1a30a..736fb4c 100644
--- a/bfd/elflink.c
+++ b/bfd/elflink.c
@@ -12338,7 +12338,7 @@ bfd_elf_final_link (bfd *abfd, struct bfd_link_info *info)
get_vma:
o = bfd_get_linker_section (dynobj, name);
do_vma:
- if (o == NULL)
+ if (o == NULL || bfd_is_abs_section (o->output_section))
{
_bfd_error_handler
(_("could not find section %s"), name);
@@ -14226,18 +14226,30 @@ struct bfd_link_hash_entry *
bfd_elf_define_start_stop (struct bfd_link_info *info,
const char *symbol, asection *sec)
{
- struct bfd_link_hash_entry *h;
+ struct elf_link_hash_entry *h;
- h = bfd_generic_define_start_stop (info, symbol, sec);
- if (h != NULL)
+ h = elf_link_hash_lookup (elf_hash_table (info), symbol,
+ FALSE, FALSE, TRUE);
+ if (h != NULL
+ && (h->root.type == bfd_link_hash_undefined
+ || h->root.type == bfd_link_hash_undefweak
+ || (h->ref_regular && !h->def_regular)))
{
- struct elf_link_hash_entry *eh = (struct elf_link_hash_entry *) h;
- eh->start_stop = 1;
- eh->u2.start_stop_section = sec;
- _bfd_elf_link_hash_hide_symbol (info, eh, TRUE);
- if (ELF_ST_VISIBILITY (eh->other) != STV_INTERNAL)
- eh->other = ((eh->other & ~ELF_ST_VISIBILITY (-1))
- | STV_HIDDEN);
+ h->root.type = bfd_link_hash_defined;
+ h->root.u.def.section = sec;
+ h->root.u.def.value = 0;
+ h->def_regular = 1;
+ h->def_dynamic = 0;
+ h->start_stop = 1;
+ h->u2.start_stop_section = sec;
+ if (symbol[0] == '.')
+ {
+ /* .startof. and .sizeof. symbols are local. */
+ _bfd_elf_link_hash_hide_symbol (info, h, TRUE);
+ }
+ else if (ELF_ST_VISIBILITY (h->other) == STV_DEFAULT)
+ h->other = (h->other & ~ELF_ST_VISIBILITY (-1)) | STV_PROTECTED;
+ return &h->root;
}
- return h;
+ return NULL;
}
diff --git a/bfd/elfnn-aarch64.c b/bfd/elfnn-aarch64.c
index 86bae0e..74beaf4 100644
--- a/bfd/elfnn-aarch64.c
+++ b/bfd/elfnn-aarch64.c
@@ -4981,9 +4981,27 @@ elfNN_aarch64_final_link_relocate (reloc_howto_type *howto,
const char *name;
bfd_vma addend = 0;
- if ((input_section->flags & SEC_ALLOC) == 0
- || h->plt.offset == (bfd_vma) -1)
- abort ();
+ if ((input_section->flags & SEC_ALLOC) == 0)
+ {
+ /* Dynamic relocs are not propagated for SEC_DEBUGGING
+ sections because such sections are not SEC_ALLOC and
+ thus ld.so will not process them. */
+ if ((input_section->flags & SEC_DEBUGGING) != 0)
+ return bfd_reloc_ok;
+
+ if (h->root.root.string)
+ name = h->root.root.string;
+ else
+ name = bfd_elf_sym_name (input_bfd, symtab_hdr, sym, NULL);
+ _bfd_error_handler
+ /* xgettext:c-format */
+ (_("%B(%A+%#Lx): unresolvable %s relocation against symbol `%s'"),
+ input_bfd, input_section, rel->r_offset, howto->name, name);
+ bfd_set_error (bfd_error_bad_value);
+ return FALSE;
+ }
+ else if (h->plt.offset == (bfd_vma) -1)
+ goto bad_ifunc_reloc;
/* STT_GNU_IFUNC symbol must go through PLT. */
plt = globals->root.splt ? globals->root.splt : globals->root.iplt;
@@ -4992,6 +5010,7 @@ elfNN_aarch64_final_link_relocate (reloc_howto_type *howto,
switch (bfd_r_type)
{
default:
+bad_ifunc_reloc:
if (h->root.root.string)
name = h->root.root.string;
else
@@ -7634,8 +7653,39 @@ elfNN_aarch64_reloc_type_class (const struct bfd_link_info *info ATTRIBUTE_UNUSE
const asection *rel_sec ATTRIBUTE_UNUSED,
const Elf_Internal_Rela *rela)
{
+ struct elf_aarch64_link_hash_table *htab = elf_aarch64_hash_table (info);
+
+ if (htab->root.dynsym != NULL
+ && htab->root.dynsym->contents != NULL)
+ {
+ /* Check relocation against STT_GNU_IFUNC symbol if there are
+ dynamic symbols. */
+ bfd *abfd = info->output_bfd;
+ const struct elf_backend_data *bed = get_elf_backend_data (abfd);
+ unsigned long r_symndx = ELFNN_R_SYM (rela->r_info);
+ if (r_symndx != STN_UNDEF)
+ {
+ Elf_Internal_Sym sym;
+ if (!bed->s->swap_symbol_in (abfd,
+ (htab->root.dynsym->contents
+ + r_symndx * bed->s->sizeof_sym),
+ 0, &sym))
+ {
+ /* xgettext:c-format */
+ _bfd_error_handler (_("%B symbol number %lu references"
+ " nonexistent SHT_SYMTAB_SHNDX section"),
+ abfd, r_symndx);
+ /* Ideally an error class should be returned here. */
+ }
+ else if (ELF_ST_TYPE (sym.st_info) == STT_GNU_IFUNC)
+ return reloc_class_ifunc;
+ }
+ }
+
switch ((int) ELFNN_R_TYPE (rela->r_info))
{
+ case AARCH64_R (IRELATIVE):
+ return reloc_class_ifunc;
case AARCH64_R (RELATIVE):
return reloc_class_relative;
case AARCH64_R (JUMP_SLOT):
diff --git a/bfd/mach-o.c b/bfd/mach-o.c
index 2c1973c..51920df 100644
--- a/bfd/mach-o.c
+++ b/bfd/mach-o.c
@@ -3749,6 +3749,9 @@ bfd_mach_o_read_symtab_strtab (bfd *abfd)
}
else
{
+ /* See PR 21840 for a reproducer. */
+ if ((sym->strsize + 1) == 0)
+ return FALSE;
sym->strtab = bfd_alloc (abfd, sym->strsize + 1);
if (sym->strtab == NULL)
return FALSE;
diff --git a/bfd/nlmcode.h b/bfd/nlmcode.h
index 6d6aed0..350c83e 100644
--- a/bfd/nlmcode.h
+++ b/bfd/nlmcode.h
@@ -351,7 +351,9 @@ nlm_swap_auxiliary_headers_in (bfd *abfd)
bfd_byte *contents;
bfd_byte *p, *pend;
- BFD_ASSERT (hdrLength == 0 && hdr == NULL);
+ /* See PR 21840 for a reproducer. */
+ if (hdrLength != 0 || hdr != NULL)
+ return FALSE;
pos = bfd_tell (abfd);
if (bfd_seek (abfd, dataOffset, SEEK_SET) != 0)
diff --git a/bfd/po/fr.po b/bfd/po/fr.po
index 6cd65af..fe2855f 100644
--- a/bfd/po/fr.po
+++ b/bfd/po/fr.po
@@ -1,180 +1,191 @@
# Messages français pour GNU concernant bfd.
-# Copyright (C) 2014 Free Software Foundation, Inc.
+# Copyright (C) 2017 Free Software Foundation, Inc.
# This file is distributed under the same license as the binutils package.
# Michel Robitaille <robitail@IRO.UMontreal.CA>, traducteur depuis/since 1996.
-# Frédéric Marchal <fmarchal@perso.be>, 2014.
+# Frédéric Marchal <fmarchal@perso.be>, 2017.
msgid ""
msgstr ""
-"Project-Id-Version: bfd-2.24.90\n"
+"Project-Id-Version: bfd-2.28.90\n"
"Report-Msgid-Bugs-To: bug-binutils@gnu.org\n"
-"POT-Creation-Date: 2014-02-10 09:42+1030\n"
-"PO-Revision-Date: 2014-11-28 11:51+0100\n"
+"POT-Creation-Date: 2017-07-03 16:54+0200\n"
+"PO-Revision-Date: 2017-07-23 16:42+0200\n"
"Last-Translator: Frédéric Marchal <fmarchal@perso.be>\n"
"Language-Team: French <traduc@traduc.org>\n"
"Language: fr\n"
-"X-Bugs: Report translation errors to the Language-Team address.\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"
+"X-Bugs: Report translation errors to the Language-Team address.\n"
+"Plural-Forms: nplurals=2; plural=(n >= 2);\n"
-#: aout-adobe.c:127
+#: aout-adobe.c:126
+#, c-format
msgid "%B: Unknown section type in a.out.adobe file: %x\n"
msgstr "%B: Type de section inconnu dans le fichier a.out.adobe: %x\n"
#: aout-cris.c:200
#, c-format
-msgid "%s: Invalid relocation type exported: %d"
-msgstr "%s: Type de réadressage exporté invalide: %d"
+msgid "%B: Invalid relocation type exported: %d"
+msgstr "%B: Type de réadressage exporté invalide: %d"
-#: aout-cris.c:243
+#: aout-cris.c:244
+#, c-format
msgid "%B: Invalid relocation type imported: %d"
msgstr "%B: Type de réadressage importé invalide: %d"
-#: aout-cris.c:254
+#: aout-cris.c:256
+#, c-format
msgid "%B: Bad relocation record imported: %d"
msgstr "%B: Mauvais enregistrement de réadressage importé: %d"
-#: aoutx.h:1273 aoutx.h:1611
+#: aoutx.h:1284 aoutx.h:1621 pdp11.c:1152 pdp11.c:1413
#, c-format
-msgid "%s: can not represent section `%s' in a.out object file format"
-msgstr "%s: ne peut représenter la section «%s» dans le fichier format objet a.out"
+msgid "%B: can not represent section `%A' in a.out object file format"
+msgstr "%B: ne peut représenter la section « %A » dans le fichier format objet a.out"
-#: aoutx.h:1577
+#: aoutx.h:1585 pdp11.c:1385
#, c-format
-msgid "%s: can not represent section for symbol `%s' in a.out object file format"
-msgstr "%s: ne peut représenter la section pour le symbole «%s» dans le fichier format objet a.out"
+msgid "%B: can not represent section for symbol `%s' in a.out object file format"
+msgstr "%B: ne peut représenter la section pour le symbole « %s » dans le fichier format objet a.out"
-#: aoutx.h:1579 vms-alpha.c:7564
+#: aoutx.h:1588 vms-alpha.c:7776
msgid "*unknown*"
msgstr "*inconnu*"
-#: aoutx.h:4018 aoutx.h:4344
+#: aoutx.h:2407 aoutx.h:2425
+msgid "%B: attempt to write out unknown reloc type"
+msgstr "%B: tentative d'écrire un type de réadressage inconnu"
+
+#: aoutx.h:4077 aoutx.h:4398
msgid "%P: %B: unexpected relocation type\n"
msgstr "%P: %B: type de réadressage non supporté\n"
-#: aoutx.h:5375
+#: aoutx.h:5424 pdp11.c:3708
#, c-format
-msgid "%s: relocatable link from %s to %s not supported"
-msgstr "%s: lien relocalisable de %s vers %s n'est pas supporté"
+msgid "%B: relocatable link from %s to %s not supported"
+msgstr "%B: lien relocalisable de %s vers %s n'est pas supporté"
-#: archive.c:2249
+#: archive.c:2293
msgid "Warning: writing archive was slow: rewriting timestamp\n"
msgstr "Attention: l'écriture de l'archive était lente: réécriture du cachet de date-heure\n"
-#: archive.c:2549
+#: archive.c:2405 linker.c:1408
+msgid "%B: plugin needed to handle lto object"
+msgstr "%B: le greffon doit gérer l'objet lto"
+
+#: archive.c:2634
msgid "Reading archive file mod timestamp"
msgstr "Lecture du cachet date-heure modifié du fichier d'archive"
-#: archive.c:2573
+#: archive.c:2658
msgid "Writing updated armap timestamp"
msgstr "Écriture du cachet date-heure armap mise à jour"
-#: bfd.c:411
+#: bfd.c:454
msgid "No error"
msgstr "Pas d'erreur"
-#: bfd.c:412
+#: bfd.c:455
msgid "System call error"
msgstr "Erreur d'appel système"
-#: bfd.c:413
+#: bfd.c:456
msgid "Invalid bfd target"
msgstr "Cible bfd invalide"
-#: bfd.c:414
+#: bfd.c:457
msgid "File in wrong format"
msgstr "Fichier dans un mauvais format"
-#: bfd.c:415
+#: bfd.c:458
msgid "Archive object file in wrong format"
msgstr "Fichier objet d'archive dans un mauvais format"
-#: bfd.c:416
+#: bfd.c:459
msgid "Invalid operation"
msgstr "Opération invalide"
-#: bfd.c:417
+#: bfd.c:460
msgid "Memory exhausted"
msgstr "Mémoire épuisée"
-#: bfd.c:418
+#: bfd.c:461
msgid "No symbols"
msgstr "Aucun symbole"
-#: bfd.c:419
+#: bfd.c:462
msgid "Archive has no index; run ranlib to add one"
msgstr "L'archive n'a pas d'index; exécuter ranlib pour en ajouter un"
-#: bfd.c:420
+#: bfd.c:463
msgid "No more archived files"
msgstr "Aucun autre fichier d'archive"
-#: bfd.c:421
+#: bfd.c:464
msgid "Malformed archive"
msgstr "Archive mal formée"
-#: bfd.c:422
+#: bfd.c:465
msgid "DSO missing from command line"
msgstr "DSO manquant dans la ligne de commande"
-#: bfd.c:423
+#: bfd.c:466
msgid "File format not recognized"
msgstr "Format de fichier non reconnu"
-#: bfd.c:424
+#: bfd.c:467
msgid "File format is ambiguous"
msgstr "Format de fichier ambigu"
-#: bfd.c:425
+#: bfd.c:468
msgid "Section has no contents"
msgstr "Section sans contenu"
-#: bfd.c:426
+#: bfd.c:469
msgid "Nonrepresentable section on output"
msgstr "Section non-représentable sur la sortie"
-#: bfd.c:427
+#: bfd.c:470
msgid "Symbol needs debug section which does not exist"
msgstr "Symboles ont besoin de la section de débug qui est inexistente"
-#: bfd.c:428
+#: bfd.c:471
msgid "Bad value"
msgstr "Mauvaise valeur"
-#: bfd.c:429
+#: bfd.c:472
msgid "File truncated"
msgstr "Fichier tronqué"
-#: bfd.c:430
+#: bfd.c:473
msgid "File too big"
msgstr "Fichier trop gros"
-#: bfd.c:431
+#: bfd.c:474
#, c-format
msgid "Error reading %s: %s"
msgstr "Erreur lors de la lecture de %s: %s"
-#: bfd.c:432
+#: bfd.c:475
msgid "#<Invalid error code>"
msgstr "#<Code d'erreur invalide>"
-#: bfd.c:1046
+#: bfd.c:1138
#, c-format
msgid "BFD %s assertion fail %s:%d"
msgstr "BFD assertion %s a échoué %s:%d"
-#: bfd.c:1058
+#: bfd.c:1151
#, c-format
-msgid "BFD %s internal error, aborting at %s line %d in %s\n"
-msgstr "BFD erreur interne %s, abandon à %s, ligne %d dans %s\n"
+msgid "BFD %s internal error, aborting at %s:%d in %s\n"
+msgstr "BFD erreur interne %s, abandon à %s:%d dans %s\n"
-#: bfd.c:1062
+#: bfd.c:1156
#, c-format
-msgid "BFD %s internal error, aborting at %s line %d\n"
-msgstr "BFD erreur interne %s, abandon à %s, ligne %d\n"
+msgid "BFD %s internal error, aborting at %s:%d\n"
+msgstr "BFD erreur interne %s, abandon à %s:%d\n"
-#: bfd.c:1064
+#: bfd.c:1158
msgid "Please report this bug.\n"
msgstr "Merci de rapporter cette anomalie.\n"
@@ -188,22 +199,23 @@ msgstr "pas de table de projection: données=%lx adresse de la table=%d\n"
msgid "not mapping: env var not set\n"
msgstr "pas de table de projection: variable d'environnement pas initialisée\n"
-#: binary.c:271
+#: binary.c:276
#, c-format
-msgid "Warning: Writing section `%s' to huge (ie negative) file offset 0x%lx."
-msgstr "Attention: Écriture de la section «%s» vers un énorme décalage (ie négatif) dans le fichier 0x%lx."
+msgid "warning: writing section `%A' at huge (ie negative) file offset 0x%lx."
+msgstr "Attention: écriture de la section « %A » vers un énorme décalage (c-à-d négatif) dans le fichier 0x%lx."
-#: bout.c:1146 elf-m10300.c:2665 elf32-avr.c:1706 elf32-frv.c:5641
-#: elf64-ia64-vms.c:354 elfxx-sparc.c:2869 reloc.c:7324 reloc16.c:160
+#: bout.c:1142 elf-m10300.c:2651 elf32-avr.c:2484 elf32-frv.c:5633
+#: elf64-ia64-vms.c:353 elfxx-sparc.c:2989 reloc.c:8017 reloc16.c:156
#: elf32-ia64.c:351 elf64-ia64.c:351
msgid "%P%F: --relax and -r may not be used together\n"
msgstr "%P%F: --relax et -r ne peuvent pas être utilisés en même temps\n"
-#: cache.c:253
+#: cache.c:273
+#, c-format
msgid "reopening %B: %s\n"
msgstr "réouverture de %B: %s\n"
-#: coff-alpha.c:452
+#: coff-alpha.c:450
msgid ""
"%B: Cannot handle compressed Alpha binaries.\n"
" Use compiler flags, or objZ, to generate uncompressed binaries."
@@ -211,42 +223,44 @@ msgstr ""
"%B: Les binaires compressés pour Alpha ne sont pas supportés.\n"
" Utilisez les options du compilateur ou objZ pour produire des binaires non compressés."
-#: coff-alpha.c:603
+#: coff-alpha.c:602
msgid "%B: unknown/unsupported relocation type %d"
msgstr "%B: type de réadressage %d inconnu ou non supporté"
-#: coff-alpha.c:852 coff-alpha.c:889 coff-alpha.c:1973 coff-mips.c:946
+#: coff-alpha.c:851 coff-alpha.c:888 coff-alpha.c:1961 coff-mips.c:944
msgid "GP relative relocation used when GP not defined"
msgstr "Réadressage relatif GP utilisé alors que GP n'est pas défini"
-#: coff-alpha.c:1450
+#: coff-alpha.c:1444
msgid "using multiple gp values"
msgstr "utilisation de valeurs gp multiples"
-#: coff-alpha.c:1509
+#: coff-alpha.c:1503
msgid "%B: unsupported relocation: ALPHA_R_GPRELHIGH"
msgstr "%B: type de réadressage non supporté: ALPHA_R_GPRELHIGH"
-#: coff-alpha.c:1516
+#: coff-alpha.c:1510
msgid "%B: unsupported relocation: ALPHA_R_GPRELLOW"
msgstr "%B: type de réadressage non supporté: ALPHA_R_GPRELLOW"
-#: coff-alpha.c:1523 elf32-m32r.c:2443 elf64-alpha.c:4083 elf64-alpha.c:4233
-#: elf64-ia64-vms.c:3429 elf32-ia64.c:3836 elf64-ia64.c:3836
+#: coff-alpha.c:1518 elf32-i370.c:1085 elf32-m32r.c:2418
+#: elf32-microblaze.c:952 elf64-alpha.c:4167 elf64-alpha.c:4315
+#: elf64-ia64-vms.c:3431 elf32-ia64.c:3839 elf64-ia64.c:3839
+#, c-format
msgid "%B: unknown relocation type %d"
msgstr "%B: type de réadressage %d inconnu"
-#: coff-arm.c:1034
+#: coff-arm.c:1032
#, c-format
msgid "%B: unable to find THUMB glue '%s' for `%s'"
-msgstr "%B: incapable de repérer le REPÈRE de liant «%s» pour «%s»"
+msgstr "%B: incapable de repérer le REPÈRE de liant « %s » pour « %s »"
-#: coff-arm.c:1063
+#: coff-arm.c:1061
#, c-format
msgid "%B: unable to find ARM glue '%s' for `%s'"
-msgstr "%B: incapable de repérer le liant ARM «%s» pour «%s»"
+msgstr "%B: incapable de repérer le liant ARM « %s » pour « %s »"
-#: coff-arm.c:1365 elf32-arm.c:7141
+#: coff-arm.c:1363 elf32-arm.c:8896
#, c-format
msgid ""
"%B(%s): warning: interworking not enabled.\n"
@@ -255,7 +269,7 @@ msgstr ""
"%B(%s): attention: l'inter-réseautage n'est pas activé.\n"
" première occurrence: %B: appel arm au repère"
-#: coff-arm.c:1455
+#: coff-arm.c:1453
#, c-format
msgid ""
"%B(%s): warning: interworking not enabled.\n"
@@ -266,330 +280,488 @@ msgstr ""
" première occurrence: %B: appel arm au repère\n"
" reliez avec --support-old-code activé"
-#: coff-arm.c:1750 coff-tic80.c:673 cofflink.c:3168
+#: coff-arm.c:1746 coff-tic80.c:670 cofflink.c:3123
+#, c-format
msgid "%B: bad reloc address 0x%lx in section `%A'"
-msgstr "%B: mauvaise adresse de relocalisation 0x%lx dans la section «%A»"
+msgstr "%B: mauvaise adresse de réadressage 0x%lx dans la section « %A »"
-#: coff-arm.c:2075
+#: coff-arm.c:2071
+#, c-format
msgid "%B: illegal symbol index in reloc: %d"
-msgstr "%B: symbole index illégal dans la relocalisation: %d"
+msgstr "%B: symbole index illégal dans le réadressage: %d"
-#: coff-arm.c:2206
+#: coff-arm.c:2203
#, c-format
msgid "error: %B is compiled for APCS-%d, whereas %B is compiled for APCS-%d"
msgstr "erreur: %B compilé pour APCS-%d alors que %B a été compilé pour APCS-%d"
-#: coff-arm.c:2222 elf32-arm.c:16123
+#: coff-arm.c:2216 elf32-arm.c:19756
#, c-format
msgid "error: %B passes floats in float registers, whereas %B passes them in integer registers"
msgstr "erreur: %B passage de valeurs en virgule flottante dans les registres FP alors que %B les passe dans les registres entiers"
-#: coff-arm.c:2225 elf32-arm.c:16127
+#: coff-arm.c:2221 elf32-arm.c:19760
#, c-format
msgid "error: %B passes floats in integer registers, whereas %B passes them in float registers"
msgstr "erreur: %B passage de valeurs en virgule flottante dans les registres entiers alors que %B les passe dans les registres FP"
-#: coff-arm.c:2239
+#: coff-arm.c:2233
#, c-format
msgid "error: %B is compiled as position independent code, whereas target %B is absolute position"
msgstr "erreur: %B compilé avec du code à position indépendante alors que la cible %B est à position absolue"
-#: coff-arm.c:2242
+#: coff-arm.c:2238
#, c-format
msgid "error: %B is compiled as absolute position code, whereas target %B is position independent"
msgstr "erreur: %B compilé avec du code à position absolu alors que la cible %B est à position indépendante"
-#: coff-arm.c:2270 elf32-arm.c:16192
+#: coff-arm.c:2265 elf32-arm.c:19825
#, c-format
msgid "Warning: %B supports interworking, whereas %B does not"
msgstr "Attention: %B supporte l'inter-réseautage, contrairement à %B"
-#: coff-arm.c:2273 elf32-arm.c:16198
+#: coff-arm.c:2270 elf32-arm.c:19831
#, c-format
msgid "Warning: %B does not support interworking, whereas %B does"
msgstr "Attention: %B ne supporte pas l'inter-réseautage, contrairement à %B"
-#: coff-arm.c:2297
+#: coff-arm.c:2293
#, c-format
msgid "private flags = %x:"
msgstr "fanions privés = %x:"
-#: coff-arm.c:2305 elf32-arm.c:12119
+#: coff-arm.c:2301 elf32-arm.c:14156
#, c-format
msgid " [floats passed in float registers]"
msgstr " [valeurs en virgule flottante passées dans des registres de valeurs en virgule flottante]"
-#: coff-arm.c:2307
+#: coff-arm.c:2303
#, c-format
msgid " [floats passed in integer registers]"
msgstr " [valeurs en virgule flottante passées dans des registres de valeurs entières]"
-#: coff-arm.c:2310 elf32-arm.c:12122
+#: coff-arm.c:2306 elf32-arm.c:14159
#, c-format
msgid " [position independent]"
msgstr " [position indépendante]"
-#: coff-arm.c:2312
+#: coff-arm.c:2308
#, c-format
msgid " [absolute position]"
msgstr " [position absolue]"
-#: coff-arm.c:2316
+#: coff-arm.c:2312
#, c-format
msgid " [interworking flag not initialised]"
msgstr " [fanion d'inter-réseautage n'a pas été initialisé]"
-#: coff-arm.c:2318
+#: coff-arm.c:2314
#, c-format
msgid " [interworking supported]"
msgstr " [inter-réseautage supporté]"
-#: coff-arm.c:2320
+#: coff-arm.c:2316
#, c-format
msgid " [interworking not supported]"
msgstr " [inter-réseautage non supporté]"
-#: coff-arm.c:2366 elf32-arm.c:11104
-#, c-format
+#: coff-arm.c:2361 elf32-arm.c:13017
msgid "Warning: Not setting interworking flag of %B since it has already been specified as non-interworking"
msgstr "Attention: Pas d'initialisation du fanion d'inter-réseautage de %B puisqu'il a déjà été spécifié sans inter-réseautage"
-#: coff-arm.c:2370 elf32-arm.c:11108
-#, c-format
+#: coff-arm.c:2364 elf32-arm.c:13021
msgid "Warning: Clearing the interworking flag of %B due to outside request"
msgstr "Attention: Mise à zéro du fanion d'inter-réseautage de %B en raison d'une requête externe"
-#: coff-h8300.c:1096
+#: coff-arm.c:2421 elf32-arm.c:13066
+#, c-format
+msgid "Warning: Clearing the interworking flag of %B because non-interworking code in %B has been linked with it"
+msgstr "Attention: mise à zéro du fanion d'inter-réseautage %B en raison du code sans inter-réseautage dans %B lié avec lui"
+
+#: coff-h8300.c:1068
#, c-format
msgid "cannot handle R_MEM_INDIRECT reloc when using %s output"
-msgstr "ne peut traiter la relocalisation R_MEM_INDIRECT lorsque %s est utilisé en sortie"
+msgstr "ne peut traiter le réadressage R_MEM_INDIRECT lorsque %s est utilisé en sortie"
-#: coff-i860.c:147
+#: coff-i860.c:146
#, c-format
msgid "relocation `%s' not yet implemented"
msgstr "réadressage « %s » pas encore implémenté"
-#: coff-i860.c:605 coff-tic54x.c:365 coffcode.h:5209
+#: coff-i860.c:608 coff-tic4x.c:227 coff-tic54x.c:365 coffcode.h:5314
+#, c-format
msgid "%B: warning: illegal symbol index %ld in relocs"
-msgstr "%B: attention: symbole index illégal %ld dans les relocalisations"
+msgstr "%B: attention: symbole index illégal %ld dans les réadressages"
-#: coff-i960.c:124 coff-i960.c:480
+#: coff-i960.c:122 coff-i960.c:475
msgid "uncertain calling convention for non-COFF symbol"
msgstr "convention d'appel incertaine pour un symbole non COFF"
-#: coff-m68k.c:484 elf32-bfin.c:5556 elf32-cr16.c:2853 elf32-m68k.c:4632
+#: coff-m68k.c:483 elf32-bfin.c:5530 elf32-cr16.c:2817 elf32-m68k.c:4574
msgid "unsupported reloc type"
-msgstr "type de relocalisation non supporté"
+msgstr "type de réadressage non supporté"
-#: coff-mips.c:636 elf32-mips.c:1637 elf32-score.c:431 elf32-score7.c:330
-#: elf64-mips.c:2925 elfn32-mips.c:2737
+#: coff-mips.c:634 elf32-mips.c:1744 elf32-score.c:430 elf32-score7.c:330
+#: elf64-mips.c:3135 elfn32-mips.c:2954
msgid "GP relative relocation when _gp not defined"
msgstr "réadressage relatif GP sans que _gp ne soit défini"
-#: coff-or32.c:216
-msgid "Unrecognized reloc"
-msgstr "Relocalisation non reconnue"
-
-#: coff-rs6000.c:2802
+#: coff-rs6000.c:2747
#, c-format
-msgid "%s: unsupported relocation type 0x%02x"
-msgstr "%s: type de réadressage non supporté 0x%02x"
+msgid "%B: unsupported relocation type 0x%02x"
+msgstr "%B: type de réadressage non supporté 0x%02x"
-#: coff-rs6000.c:2887
+#: coff-rs6000.c:2833
#, c-format
-msgid "%s: TOC reloc at 0x%x to symbol `%s' with no TOC entry"
-msgstr "%s: table des matières des relocalisations à 0x%x pour le symbole «%s» sans aucune entrée"
+msgid "%B: TOC reloc at 0x%x to symbol `%s' with no TOC entry"
+msgstr "%B: la table des matières des réadressages à 0x%x pour le symbole « %s » sans aucune entrée"
-#: coff-rs6000.c:3638 coff64-rs6000.c:2117
+#: coff-rs6000.c:3579 coff64-rs6000.c:2110
+#, c-format
msgid "%B: symbol `%s' has unrecognized smclas %d"
-msgstr "%B: symbole «%s» a une classe smclas %d non reconnue"
+msgstr "%B: symbole « %s » a une classe smclas %d non reconnue"
-#: coff-sh.c:506
+#: coff-sh.c:504
#, c-format
msgid "SH Error: unknown reloc type %d"
msgstr "Erreur SH: type de réadressage %d inconnu"
-#: coff-tic4x.c:184 coff-tic54x.c:279 coff-tic80.c:440
+#: coff-sh.c:778 elf32-sh.c:580
#, c-format
-msgid "Unrecognized reloc type 0x%x"
-msgstr "Type de relocalisation non reconnu 0x%x"
+msgid "%B: 0x%lx: warning: bad R_SH_USES offset"
+msgstr "%B: 0x%lx: attention: mauvais décalage pour R_SH_USES"
-#: coff-tic4x.c:227
+#: coff-sh.c:789 elf32-sh.c:592
#, c-format
-msgid "%s: warning: illegal symbol index %ld in relocs"
-msgstr "%s: attention: symbole index illégal %ld dans les relocalisations"
+msgid "%B: 0x%lx: warning: R_SH_USES points to unrecognized insn 0x%x"
+msgstr "%B: 0x%lx: attention: R_SH_USES pointe vers un insn inconnu 0x%x"
-#: coff-w65.c:355
+#: coff-sh.c:807 elf32-sh.c:610
+#, c-format
+msgid "%B: 0x%lx: warning: bad R_SH_USES load offset"
+msgstr "%B: 0x%lx: attention: mauvais décalage de chargement R_SH_USES"
+
+#: coff-sh.c:832 elf32-sh.c:626
+#, c-format
+msgid "%B: 0x%lx: warning: could not find expected reloc"
+msgstr "%B: 0x%lx: attention: ne peut repérer le réadressage attendu"
+
+#: coff-sh.c:849 elf32-sh.c:655
+#, c-format
+msgid "%B: 0x%lx: warning: symbol in unexpected section"
+msgstr "%B: 0x%lx: attention: symbole dans une section inattendue"
+
+#: coff-sh.c:975 elf32-sh.c:785
+#, c-format
+msgid "%B: 0x%lx: warning: could not find expected COUNT reloc"
+msgstr "%B: 0x%lx: attention: ne peut repérer le compteur de réadressages attendu"
+
+#: coff-sh.c:985 elf32-sh.c:795
+#, c-format
+msgid "%B: 0x%lx: warning: bad count"
+msgstr "%B: 0x%lx: attention: mauvais décompte"
+
+#: coff-sh.c:1357 coff-sh.c:2645 elf32-sh.c:1199 elf32-sh.c:1570
+#, c-format
+msgid "%B: 0x%lx: fatal: reloc overflow while relaxing"
+msgstr "%B: 0x%lx: erreur fatale: débordement de réadressage lors des relâches"
+
+#: coff-sh.c:1452
+msgid "%B: fatal: generic symbols retrieved before relaxing"
+msgstr "%B: fatal: symboles génériques récupérés avant la relâche"
+
+#: coff-sh.c:2783 cofflink.c:2961
+#, c-format
+msgid "%B: illegal symbol index %ld in relocs"
+msgstr "%B: symbole index %ld illégal dans les réadressages"
+
+#: coff-tic4x.c:183 coff-tic54x.c:278 coff-tic80.c:439
+#, c-format
+msgid "Unrecognized reloc type 0x%x"
+msgstr "Type de réadressage non reconnu 0x%x"
+
+#: coff-w65.c:352
#, c-format
msgid "ignoring reloc %s\n"
-msgstr "relocalisation %s ignorée\n"
+msgstr "réadressage %s ignoré\n"
+
+#: coffcode.h:968
+msgid "%B: unable to load COMDAT section name"
+msgstr "%B: impossible de charger le nom de section COMDAT"
-#: coffcode.h:1005
+#: coffcode.h:1009
+#, c-format
msgid "%B: warning: COMDAT symbol '%s' does not match section name '%s'"
-msgstr "%B: attention: symbole COMDAT «%s» ne concorde par avec le nom de section «%s»"
+msgstr "%B: attention: symbole COMDAT « %s » ne concorde par avec le nom de section « %s »"
+
+#: coffcode.h:1019
+#, c-format
+msgid "%B: warning: No symbol for section '%s' found"
+msgstr "%B: attention: Pas de symbole trouvé pour la section « %s »"
#. Generate a warning message rather using the 'unhandled'
#. variable as this will allow some .sys files generate by
#. other toolchains to be processed. See bugzilla issue 196.
-#: coffcode.h:1230
+#: coffcode.h:1245
+#, c-format
msgid "%B: Warning: Ignoring section flag IMAGE_SCN_MEM_NOT_PAGED in section %s"
msgstr "%B: Attention: Ignore le fanion de section IMAGE_SCN_MEM_NOT_PAGED dans la section %s"
-#: coffcode.h:1297
+#: coffcode.h:1314
+#, c-format
msgid "%B (%s): Section flag %s (0x%x) ignored"
msgstr "%B (%s): Fanion de section %s (0x%x) ignoré"
-#: coffcode.h:2439
+#: coffcode.h:1949
+msgid "%B: warning: claims to have 0xffff relocs, without overflow"
+msgstr "%B: attention: prétend avoir 0xffff réadressages, sans débordement"
+
+#: coffcode.h:2465
#, c-format
msgid "Unrecognized TI COFF target id '0x%x'"
-msgstr "Identificateur de cible TI COFF non reconnu «0x%x»"
+msgstr "Identificateur de cible TI COFF non reconnu « 0x%x »"
+
+#: coffcode.h:2783
+#, c-format
+msgid "%B: reloc against a non-existent symbol index: %ld"
+msgstr "%B: réadressage par rapport à un index de symbole inexistant: %ld"
-#: coffcode.h:2753
-msgid "%B: reloc against a non-existant symbol index: %ld"
-msgstr "%B: relocalisation par rapport à un indexe de symbole inexistant: %ld"
+#: coffcode.h:3186
+#, c-format
+msgid "%B: page size is too large (0x%x)"
+msgstr "%B: la taille de page est trop grande (0x%x)"
-#: coffcode.h:3311
+#: coffcode.h:3346
+#, c-format
msgid "%B: too many sections (%d)"
msgstr "%B: trop de sections (%d)"
-#: coffcode.h:3729
-msgid "%B: section %s: string table overflow at offset %ld"
-msgstr "%B: section %s: débordement de la table de chaînes à l'offset %ld"
+#: coffcode.h:3767
+#, c-format
+msgid "%B: section %A: string table overflow at offset %ld"
+msgstr "%B: section %A: débordement de la table de chaînes à l'offset %ld"
-#: coffcode.h:4534
+#: coffcode.h:4585
msgid "%B: warning: line number table read failed"
msgstr "%B: attention: erreur lors de la lecture de la table des numéros de ligne"
-#: coffcode.h:4564
-msgid "%B: warning: illegal symbol index %ld in line numbers"
-msgstr "%B: attention: symbole d'index illégal %ld dans les numéros de ligne"
+#: coffcode.h:4619 coffcode.h:4633
+#, c-format
+msgid "%B: warning: illegal symbol index 0x%lx in line number entry %d"
+msgstr "%B: attention: symbole d'index 0x%lx illégal dans l'entrée %d des numéros de lignes"
+
+#: coffcode.h:4647
+#, c-format
+msgid "%B: warning: illegal symbol in line number entry %d"
+msgstr "%B: attention: symbole illégal dans l'entrée %d des numéros de lignes"
-#: coffcode.h:4578
+#: coffcode.h:4660
+#, c-format
msgid "%B: warning: duplicate line number information for `%s'"
-msgstr "%B: attention: information de numéro de ligne dédoublée pour «%s»"
+msgstr "%B: attention: information de numéro de ligne dédoublée pour « %s »"
-#: coffcode.h:4978
+#: coffcode.h:5074
+#, c-format
msgid "%B: Unrecognized storage class %d for %s symbol `%s'"
-msgstr "%B: Classe de stockage %d non reconnue pour %s symbole «%s»"
+msgstr "%B: Classe de stockage %d non reconnue pour %s symbole « %s »"
-#: coffcode.h:5104
+#: coffcode.h:5207
+#, c-format
msgid "warning: %B: local symbol `%s' has no section"
-msgstr "attention: %B: symbole local «%s» n'a pas de section"
+msgstr "attention: %B: symbole local « %s » n'a pas de section"
-#: coffcode.h:5248
+#: coffcode.h:5354
+#, c-format
msgid "%B: illegal relocation type %d at address 0x%lx"
msgstr "%B: type de réadressage %d illégal à l'adresse 0x%lx"
-#: coffgen.c:179 elf.c:1030
+#: coffgen.c:178 elf.c:1181
+#, c-format
msgid "%B: unable to initialize compress status for section %s"
msgstr "%B: impossible d'initialiser le statut de compression de la section %s"
-#: coffgen.c:199 elf.c:1050
+#: coffgen.c:202 elf.c:1192
+#, c-format
msgid "%B: unable to initialize decompress status for section %s"
msgstr "%B: impossible d'initialiser le statut de décompression de la section %s"
-#: coffgen.c:1685
+#. PR 21013: Provide an error message when the alloc fails.
+#: coffgen.c:1648
+msgid "%B: Not enough memory to allocate space for %lu symbols"
+msgstr "%B: Pas assez de mémoire pour allouer l'espace pour %lu symboles"
+
+#: coffgen.c:1716
+#, c-format
msgid "%B: bad string table size %lu"
msgstr "%B: mauvaise taille de la table des chaînes %lu"
-#: coffgen.c:2608 elflink.c:12906 linker.c:3136
+#: coffgen.c:1885 coffgen.c:1945 coffgen.c:1963 cofflink.c:2041
+#: xcofflink.c:4507
+msgid "<corrupt>"
+msgstr "<corrompu>"
+
+#: coffgen.c:2087
+#, c-format
+msgid "<corrupt info> %s"
+msgstr "<info corrompue> %s"
+
+#: coffgen.c:2666 elflink.c:14044 linker.c:2931
msgid "%F%P: already_linked_table: %E\n"
msgstr "%F%P: already_linked_table: %E\n"
-#: cofflink.c:533 elf64-ia64-vms.c:5173 elflink.c:4356
+#: coffgen.c:3007 elflink.c:13059
+#, c-format
+msgid "Removing unused section '%A' in file '%B'"
+msgstr "Suppression de la section inutilisée « %A » dans le fichier « %B »"
+
+#: coffgen.c:3084 elflink.c:13304
+msgid "Warning: gc-sections option ignored"
+msgstr "Attention: l'option de la section gc est ignorée"
+
+#: cofflink.c:348
+#, c-format
+msgid "Warning: symbol `%s' is both section and non-section"
+msgstr "Attention: le symbole « %s » est à la fois une section et une non-section"
+
+#: cofflink.c:450 elf64-ia64-vms.c:5188 elflink.c:4788
+#, c-format
msgid "Warning: type of symbol `%s' changed from %d to %d in %B"
-msgstr "Attention: type de symbole «%s» a changé de %d à %d dans %B"
+msgstr "Attention: type de symbole « %s » a changé de %d à %d dans %B"
-#: cofflink.c:2416
+#: cofflink.c:2369
+#, c-format
msgid "%B: relocs in section `%A', but it has no contents"
-msgstr "%B: relocalisations dans la section «%A» qui est vide"
+msgstr "%B: réadressages dans la section « %A » qui est vide"
-#: cofflink.c:2478 elflink.c:9711
+#: cofflink.c:2432 elflink.c:10567
+#, c-format
msgid "%X`%s' referenced in section `%A' of %B: defined in discarded section `%A' of %B\n"
-msgstr "%X«%s» référencé dans la section «%A» de %B: défini dans la section abandonnée «%A» de %B\n"
+msgstr "%X« %s » référencé dans la section « %A » de %B: défini dans la section abandonnée « %A » de %B\n"
+
+#: cofflink.c:2730
+#, c-format
+msgid "%B: %A: reloc overflow: 0x%lx > 0xffff"
+msgstr "%B: %A: débordement de réadressage: 0x%lx > 0xffff"
-#: cofflink.c:2777 coffswap.h:826
+#: cofflink.c:2738
#, c-format
-msgid "%s: %s: reloc overflow: 0x%lx > 0xffff"
-msgstr "%s: %s: débordement de relocalisation: 0x%lx > 0xffff"
+msgid "%B: warning: %A: line number overflow: 0x%lx > 0xffff"
+msgstr "%B: attention: %A: débordement du compteur de numéro de ligne: 0x%lx > 0xffff"
-#: cofflink.c:2786 coffswap.h:812
+#: coffswap.h:811
#, c-format
-msgid "%s: warning: %s: line number overflow: 0x%lx > 0xffff"
-msgstr "%s: attention: %s: débordement du compteur de numéro de ligne: 0x%lx > 0xffff"
+msgid "%B: warning: %s: line number overflow: 0x%lx > 0xffff"
+msgstr "%B: attention: %s: débordement du compteur de numéro de ligne: 0x%lx > 0xffff"
-#: cpu-arm.c:190 cpu-arm.c:201
+#: coffswap.h:825
+#, c-format
+msgid "%B: %s: reloc overflow: 0x%lx > 0xffff"
+msgstr "%B: %s: débordement de réadressage: 0x%lx > 0xffff"
+
+#: compress.c:255
+#, c-format
+msgid "error: %B(%A) is too large (%#lx bytes)"
+msgstr "erreur: %B(%A) est trop grand (%#lx octets)"
+
+#: cpu-arm.c:192 cpu-arm.c:204
+#, c-format
msgid "error: %B is compiled for the EP9312, whereas %B is compiled for XScale"
msgstr "erreur: %B compilé pour EP9312 alors que %B a été compilé pour XScale"
-#: cpu-arm.c:334
+#: cpu-arm.c:338
#, c-format
-msgid "warning: unable to update contents of %s section in %s"
-msgstr "attention: incapable de mettre à jour le contenu de la section %s dans %s"
+msgid "warning: unable to update contents of %s section in %B"
+msgstr "attention: incapable de mettre à jour le contenu de la section %s dans %B"
-#: dwarf2.c:514
+#: dwarf2.c:532
#, c-format
msgid "Dwarf Error: Can't find %s section."
-msgstr "Erreur DWARF: ne peut repérer la section %s"
+msgstr "Erreur Dwarf: ne peut repérer la section %s"
-#: dwarf2.c:543
+#: dwarf2.c:562
#, c-format
msgid "Dwarf Error: Offset (%lu) greater than or equal to %s size (%lu)."
-msgstr "Erreur DWARF: décalage de ligne (%lu) est >= à la taille de %s (%lu)"
+msgstr "Erreur Dwarf: décalage de ligne (%lu) est >= à la taille de %s (%lu)"
-#: dwarf2.c:1071
+#: dwarf2.c:1028
+msgid "Dwarf Error: Info pointer extends beyond end of attributes"
+msgstr "Erreur Dwarf: Le pointeur d'info va au delà de la fin des attributs"
+
+#: dwarf2.c:1185
#, c-format
msgid "Dwarf Error: Invalid or unhandled FORM value: %#x."
-msgstr "Erreur DWARF: valeur de FORM invalide ou non supportée: %#x."
+msgstr "Erreur Dwarf: valeur de FORM invalide ou non supportée: %#x."
-#: dwarf2.c:1332
+#: dwarf2.c:1491
msgid "Dwarf Error: mangled line number section (bad file number)."
-msgstr "Erreur DWARF: numéro de ligne de section mutilé (mauvais no. de fichier)"
+msgstr "Erreur Dwarf: numéro de ligne de section mutilé (mauvais no. de fichier)"
+
+#: dwarf2.c:1779
+#, c-format
+msgid "Dwarf Error: Line info section is too small (%ld)"
+msgstr "Erreur Dwarf: Le section des informations de lignes est trop petite (%ld)"
+
+#: dwarf2.c:1809
+#, c-format
+msgid "Dwarf Error: Line info data is bigger (0x%lx) than the section (0x%lx)"
+msgstr "Erreur Dwarf: Les données des informations de lignes sont plus grandes (0x%lx) que la section (0x%lx)"
-#: dwarf2.c:1590
+#: dwarf2.c:1821
#, c-format
msgid "Dwarf Error: Unhandled .debug_line version %d."
-msgstr "Erreur DWARF: Version .debug_line %d non prise en charge."
+msgstr "Erreur Dwarf: Version .debug_line %d non prise en charge."
+
+#: dwarf2.c:1830
+msgid "Dwarf Error: Ran out of room reading prologue"
+msgstr "Erreur Dwarf: On est tombé à cours de place lors de la lecture du prologue"
-#: dwarf2.c:1612
+#: dwarf2.c:1855
msgid "Dwarf Error: Invalid maximum operations per instruction."
-msgstr "Erreur DWARF: Opérations maximum par instruction invalide."
+msgstr "Erreur Dwarf: Opérations maximum par instruction invalide."
+
+#: dwarf2.c:1874
+msgid "Dwarf Error: Ran out of room reading opcodes"
+msgstr "Erreur Dwarf: On est tombé à cours de place en lisant les opcodes"
-#: dwarf2.c:1807
+#: dwarf2.c:2069
msgid "Dwarf Error: mangled line number section."
-msgstr "Erreur DWARF: numéro de ligne de section mutilé"
+msgstr "Erreur Dwarf: numéro de ligne de section mutilé."
-#: dwarf2.c:2160
+#: dwarf2.c:2575
#, c-format
msgid "Dwarf Error: Unable to read alt ref %u."
-msgstr "Erreur DWARF: Impossible de lire la ref alt %u."
+msgstr "Erreur Dwarf: Impossible de lire la ref alt %u."
-#: dwarf2.c:2179 dwarf2.c:2299 dwarf2.c:2595
+#: dwarf2.c:2600 dwarf2.c:2750 dwarf2.c:3071
#, c-format
msgid "Dwarf Error: Could not find abbrev number %u."
-msgstr "Erreur DWARF: ne peut repérer le numéro abrégé %u"
+msgstr "Erreur Dwarf: ne peut repérer le numéro abrégé %u."
-#: dwarf2.c:2551
+#: dwarf2.c:3023
#, c-format
msgid "Dwarf Error: found dwarf version '%u', this reader only handles version 2, 3 and 4 information."
-msgstr "Erreur DWARF: version DWARF trouvée «%u», ce lecteur ne supporte que les informations des versions 2, 3 et 4."
+msgstr "Erreur Dwarf: version DWARF trouvée « %u », ce lecteur ne supporte que les informations des versions 2, 3 et 4."
-#: dwarf2.c:2560
+#: dwarf2.c:3034
#, c-format
msgid "Dwarf Error: found address size '%u', this reader can not handle sizes greater than '%u'."
-msgstr "Erreur DWARF: taille d'adresse obtenue «%u», ce lecteur ne peut traiter des tailles plus grandes que «%u»."
+msgstr "Erreur Dwarf: taille d'adresse obtenue « %u », ce lecteur ne peut traiter des tailles plus grandes que « %u »."
-#: dwarf2.c:2586
+#: dwarf2.c:3137
+msgid "Dwarf Error: DW_AT_comp_dir attribute encountered with a non-string form."
+msgstr "Erreur Dwarf: attribut DW_AT_comp_dir rencontré sous une forme non-chaîne."
+
+#: ecoff.c:964
#, c-format
-msgid "Dwarf Error: Bad abbrev number: %u."
-msgstr "Erreur DWARF: mauvais numéro abrégé: %u"
+msgid "%B: warning: isymMax (%ld) is greater than ifdMax (%d)\n"
+msgstr "%B: attention: isymMax (%ld) est plus grand que ifdMax (%d)\n"
-#: ecoff.c:1233
+#: ecoff.c:1261
#, c-format
msgid "Unknown basic type %d"
msgstr "Type de base %d inconnu"
-#: ecoff.c:1490
+#: ecoff.c:1518
#, c-format
msgid ""
"\n"
@@ -598,7 +770,7 @@ msgstr ""
"\n"
" Dernier+1 symbole: %ld"
-#: ecoff.c:1497 ecoff.c:1500
+#: ecoff.c:1525 ecoff.c:1528
#, c-format
msgid ""
"\n"
@@ -607,7 +779,7 @@ msgstr ""
"\n"
" Premier symbole: %ld"
-#: ecoff.c:1512
+#: ecoff.c:1541
#, c-format
msgid ""
"\n"
@@ -616,7 +788,7 @@ msgstr ""
"\n"
" Dernier+1 symbole: %-7ld Type: %s"
-#: ecoff.c:1519
+#: ecoff.c:1548
#, c-format
msgid ""
"\n"
@@ -625,7 +797,7 @@ msgstr ""
"\n"
" Symbole local: %ld"
-#: ecoff.c:1527
+#: ecoff.c:1556
#, c-format
msgid ""
"\n"
@@ -634,7 +806,7 @@ msgstr ""
"\n"
" struct; Symbole Fin+1: %ld"
-#: ecoff.c:1532
+#: ecoff.c:1561
#, c-format
msgid ""
"\n"
@@ -643,7 +815,7 @@ msgstr ""
"\n"
" union; Dernier+1 symbole: %ld"
-#: ecoff.c:1537
+#: ecoff.c:1566
#, c-format
msgid ""
"\n"
@@ -652,7 +824,7 @@ msgstr ""
"\n"
" enum; Dernier+1 symbol: %ld"
-#: ecoff.c:1543
+#: ecoff.c:1572
#, c-format
msgid ""
"\n"
@@ -661,138 +833,269 @@ msgstr ""
"\n"
" Type: %s"
-#: elf-attrs.c:573
+#: elf-attrs.c:595
+#, c-format
msgid "error: %B: Object has vendor-specific contents that must be processed by the '%s' toolchain"
-msgstr "erreur: %B: L'objet a un contenu spécific à un vendeur qui doit être traité par la chaîne d'outils «%s»"
+msgstr "erreur: %B: L'objet a un contenu spécific à un vendeur qui doit être traité par la chaîne d'outils « %s »"
-#: elf-attrs.c:582
+#: elf-attrs.c:605
+#, c-format
msgid "error: %B: Object tag '%d, %s' is incompatible with tag '%d, %s'"
-msgstr "erreur: %B: Étiquette d'objet «%d, %s» incompatible avec l'étiquette «%d, %s»"
+msgstr "erreur: %B: Étiquette d'objet « %d, %s » incompatible avec l'étiquette « %d, %s »"
+
+#: elf-eh-frame.c:946
+#, c-format
+msgid "discarding zero address range FDE in %B(%A).\n"
+msgstr "abandon du FDE avec une plage d'adresses nulle dans %B(%A).\n"
-#: elf-eh-frame.c:921
+#: elf-eh-frame.c:1051
+#, c-format
msgid "%P: error in %B(%A); no .eh_frame_hdr table will be created.\n"
msgstr "%P: erreur dans %B(%A); aucune table .eh_frame_hdr ne sera créée.\n"
-#: elf-eh-frame.c:1193
-msgid "%P: fde encoding in %B(%A) prevents .eh_frame_hdr table being created.\n"
-msgstr "%P: encodage fde dans %B(%A) empêche la création de la table .eh_frame_hdr.\n"
+#: elf-eh-frame.c:1541
+#, c-format
+msgid "%P: FDE encoding in %B(%A) prevents .eh_frame_hdr table being created.\n"
+msgstr "%P: encodage FDE dans %B(%A) empêche la création de la table .eh_frame_hdr.\n"
+
+#: elf-eh-frame.c:1548
+msgid "%P: Further warnings about FDE encoding preventing .eh_frame_hdr generation dropped.\n"
+msgstr "%P: Les avertissements suivants à propos de l'encodage FDE empêchant la génération de .eh_frame_hdr sont abandonnés.\n"
+
+#: elf-eh-frame.c:1879
+#, c-format
+msgid "%B: %A not in order"
+msgstr "%B: %A pas dans l'ordre"
+
+#: elf-eh-frame.c:1893
+#, c-format
+msgid "%B: %A invalid input section size"
+msgstr "%B: %A taille de section d'entrée invalide"
+
+#: elf-eh-frame.c:1901
+#, c-format
+msgid "%B: %A points past end of text section"
+msgstr "%B: %A pointe au delà de la fin de la section texte"
-#: elf-eh-frame.c:1612
+#: elf-eh-frame.c:2150
msgid "%P: DW_EH_PE_datarel unspecified for this architecture.\n"
msgstr "%P: DW_EH_PE_datarel non spécifié pour cette architecture.\n"
-#: elf-ifunc.c:135
+#: elf-eh-frame.c:2320
+#, c-format
+msgid "Invalid output section for .eh_frame_entry: %A"
+msgstr "Section de sortie invalide pour .eh_frame_entry: %A"
+
+#: elf-eh-frame.c:2343
+#, c-format
+msgid "Invalid contents in %A section"
+msgstr "Contenu invalide dans la section %A"
+
+#: elf-eh-frame.c:2499
+msgid "%P: .eh_frame_hdr entry overflow.\n"
+msgstr "*P: débordement de l'entrée .eh_frame_hrd.\n"
+
+#: elf-eh-frame.c:2502
+msgid "%P: .eh_frame_hdr refers to overlapping FDEs.\n"
+msgstr "%P: .eh_frame_hdr fait référence à des FDE qui se chevauchent.\n"
+
+#: elf-ifunc.c:142
+#, c-format
msgid "%F%P: dynamic STT_GNU_IFUNC symbol `%s' with pointer equality in `%B' can not be used when making an executable; recompile with -fPIE and relink with -pie\n"
-msgstr "%P%P: symbole dynamique STT_GNU_IFUNC «%s» avec une égalité de pointeur dans «%B» ne peut pas être utilisé lors de la création d'un exécutable. Recompilez avec -fPIE et reliez avec -pie\n"
-
-#: elf-m10200.c:430 elf-m10300.c:2164 elf32-avr.c:1256 elf32-bfin.c:3220
-#: elf32-cr16.c:1484 elf32-cr16c.c:780 elf32-cris.c:2016 elf32-crx.c:922
-#: elf32-d10v.c:513 elf32-epiphany.c:557 elf32-fr30.c:589 elf32-frv.c:4039
-#: elf32-h8300.c:525 elf32-i860.c:1212 elf32-ip2k.c:1468 elf32-iq2000.c:688
-#: elf32-lm32.c:1160 elf32-m32c.c:553 elf32-m32r.c:3066 elf32-m68hc1x.c:1283
-#: elf32-mep.c:535 elf32-metag.c:1992 elf32-microblaze.c:1560
-#: elf32-moxie.c:282 elf32-mt.c:395 elf32-nds32.c:4910 elf32-openrisc.c:404
-#: elf32-score.c:2729 elf32-score7.c:2537 elf32-spu.c:5041
-#: elf32-tilepro.c:3666 elf32-v850.c:2281 elf32-xstormy16.c:936
-#: elf64-mmix.c:1538 elfxx-tilegx.c:4051
+msgstr "%P%P: symbole dynamique STT_GNU_IFUNC « %s » avec une égalité de pointeur dans « %B » ne peut pas être utilisé lors de la création d'un exécutable. Recompilez avec -fPIE et reliez avec -pie\n"
+
+#: elf-m10200.c:425 elf-m10300.c:2149 elf32-avr.c:1502 elf32-bfin.c:3194
+#: elf32-cr16.c:1466 elf32-cr16c.c:780 elf32-cris.c:2025 elf32-crx.c:924
+#: elf32-d10v.c:513 elf32-epiphany.c:563 elf32-fr30.c:591 elf32-frv.c:4041
+#: elf32-ft32.c:334 elf32-h8300.c:522 elf32-i860.c:1210 elf32-ip2k.c:1475
+#: elf32-iq2000.c:693 elf32-lm32.c:1126 elf32-m32c.c:621 elf32-m32r.c:3044
+#: elf32-m68hc1x.c:1269 elf32-mep.c:524 elf32-metag.c:2001
+#: elf32-microblaze.c:1570 elf32-moxie.c:285 elf32-mt.c:400 elf32-nds32.c:5402
+#: elf32-or1k.c:1258 elf32-score.c:2731 elf32-score7.c:2540 elf32-spu.c:5076
+#: elf32-tilepro.c:3665 elf32-v850.c:2287 elf32-visium.c:677
+#: elf32-xstormy16.c:927 elf64-mmix.c:1540 elfxx-tilegx.c:4052
+#: /Users/gingold/Repositories/fsf/binutils-gdb.git/bfd/elfnn-riscv.c:2267
msgid "internal error: out of range error"
msgstr "erreur interne: hors limite"
-#: elf-m10200.c:434 elf-m10300.c:2168 elf32-avr.c:1260 elf32-bfin.c:3224
-#: elf32-cr16.c:1488 elf32-cr16c.c:784 elf32-cris.c:2020 elf32-crx.c:926
-#: elf32-d10v.c:517 elf32-fr30.c:593 elf32-frv.c:4043 elf32-h8300.c:529
-#: elf32-i860.c:1216 elf32-iq2000.c:692 elf32-lm32.c:1164 elf32-m32c.c:557
-#: elf32-m32r.c:3070 elf32-m68hc1x.c:1287 elf32-mep.c:539 elf32-metag.c:1996
-#: elf32-microblaze.c:1564 elf32-moxie.c:286 elf32-msp430.c:1321
-#: elf32-nds32.c:4914 elf32-openrisc.c:408 elf32-score.c:2733
-#: elf32-score7.c:2541 elf32-spu.c:5045 elf32-tilepro.c:3670 elf32-v850.c:2285
-#: elf32-xstormy16.c:940 elf64-mmix.c:1542 elfxx-mips.c:9995
-#: elfxx-tilegx.c:4055
+#: elf-m10200.c:429 elf-m10300.c:2153 elf32-avr.c:1506 elf32-bfin.c:3198
+#: elf32-cr16.c:1470 elf32-cr16c.c:784 elf32-cris.c:2029 elf32-crx.c:928
+#: elf32-d10v.c:517 elf32-fr30.c:595 elf32-frv.c:4045 elf32-ft32.c:338
+#: elf32-h8300.c:526 elf32-i860.c:1214 elf32-iq2000.c:697 elf32-lm32.c:1130
+#: elf32-m32c.c:625 elf32-m32r.c:3048 elf32-m68hc1x.c:1273 elf32-mep.c:528
+#: elf32-metag.c:2005 elf32-microblaze.c:1574 elf32-moxie.c:289
+#: elf32-msp430.c:1361 elf32-nds32.c:5406 elf32-or1k.c:1262 elf32-score.c:2735
+#: elf32-score7.c:2544 elf32-spu.c:5080 elf32-tilepro.c:3669 elf32-v850.c:2291
+#: elf32-visium.c:681 elf32-xstormy16.c:931 elf64-mmix.c:1544
+#: elfxx-mips.c:10258 elfxx-tilegx.c:4056
+#: /Users/gingold/Repositories/fsf/binutils-gdb.git/bfd/elfnn-riscv.c:2271
msgid "internal error: unsupported relocation error"
msgstr "erreur interne: erreur de réadressage non supportée"
-#: elf-m10200.c:438 elf32-cr16.c:1492 elf32-cr16c.c:788 elf32-crx.c:930
-#: elf32-d10v.c:521 elf32-h8300.c:533 elf32-lm32.c:1168 elf32-m32r.c:3074
-#: elf32-m68hc1x.c:1291 elf32-microblaze.c:1568 elf32-nds32.c:4918
-#: elf32-score.c:2737 elf32-score7.c:2545 elf32-spu.c:5049
+#: elf-m10200.c:433 elf32-cr16.c:1474 elf32-cr16c.c:788 elf32-crx.c:932
+#: elf32-d10v.c:521 elf32-h8300.c:530 elf32-lm32.c:1134 elf32-m32r.c:3052
+#: elf32-m68hc1x.c:1277 elf32-microblaze.c:1578 elf32-nds32.c:5410
+#: elf32-score.c:2739 elf32-score7.c:2548 elf32-spu.c:5084
msgid "internal error: dangerous error"
msgstr "erreur interne: erreur dangereuse"
-#: elf-m10200.c:442 elf-m10300.c:2184 elf32-avr.c:1268 elf32-bfin.c:3232
-#: elf32-cr16.c:1496 elf32-cr16c.c:792 elf32-cris.c:2028 elf32-crx.c:934
-#: elf32-d10v.c:525 elf32-epiphany.c:572 elf32-fr30.c:601 elf32-frv.c:4051
-#: elf32-h8300.c:537 elf32-i860.c:1224 elf32-ip2k.c:1483 elf32-iq2000.c:700
-#: elf32-lm32.c:1172 elf32-m32c.c:565 elf32-m32r.c:3078 elf32-m68hc1x.c:1295
-#: elf32-mep.c:547 elf32-metag.c:2004 elf32-microblaze.c:1572
-#: elf32-moxie.c:294 elf32-msp430.c:1329 elf32-mt.c:403 elf32-nds32.c:4922
-#: elf32-openrisc.c:416 elf32-score.c:2746 elf32-score7.c:2549
-#: elf32-spu.c:5053 elf32-tilepro.c:3678 elf32-v850.c:2305
-#: elf32-xstormy16.c:948 elf64-mmix.c:1550 elfxx-tilegx.c:4063
+#: elf-m10200.c:437 elf-m10300.c:2170 elf32-avr.c:1514 elf32-bfin.c:3206
+#: elf32-cr16.c:1478 elf32-cr16c.c:792 elf32-cris.c:2037 elf32-crx.c:936
+#: elf32-d10v.c:525 elf32-epiphany.c:578 elf32-fr30.c:603 elf32-frv.c:4053
+#: elf32-ft32.c:346 elf32-h8300.c:534 elf32-i860.c:1222 elf32-ip2k.c:1490
+#: elf32-iq2000.c:705 elf32-lm32.c:1138 elf32-m32c.c:633 elf32-m32r.c:3056
+#: elf32-m68hc1x.c:1281 elf32-mep.c:536 elf32-metag.c:2013
+#: elf32-microblaze.c:1582 elf32-moxie.c:297 elf32-msp430.c:1369
+#: elf32-mt.c:408 elf32-nds32.c:5414 elf32-or1k.c:1270 elf32-score.c:2748
+#: elf32-score7.c:2552 elf32-spu.c:5088 elf32-tilepro.c:3677 elf32-v850.c:2311
+#: elf32-visium.c:689 elf32-xstormy16.c:939 elf64-mmix.c:1552
+#: elfxx-tilegx.c:4064
+#: /Users/gingold/Repositories/fsf/binutils-gdb.git/bfd/elfnn-riscv.c:2279
msgid "internal error: unknown error"
msgstr "erreur interne: erreur inconnue"
-#: elf-m10300.c:1021
+#: elf-m10300.c:812
#, c-format
-msgid "%s: Unsupported transition from %s to %s"
-msgstr "%s: Transition de %s à %s non supportée"
+msgid "%B: unrecognised MN10300 reloc number: %d"
+msgstr "%B: numéro de réadressage MN10300 non reconnu: %d"
-#: elf-m10300.c:1213
+#: elf-m10300.c:1028
+#, c-format
+msgid "%B: Unsupported transition from %s to %s"
+msgstr "%B: Transition de %s à %s non supportée"
+
+#: elf-m10300.c:1201
+#, c-format
msgid "%B: %s' accessed both as normal and thread local symbol"
-msgstr "%B: « %s » accédé à la fois comme symbole normal et comme symbole locale au thread"
+msgstr "%B: « %s  » accédé à la fois comme symbole normal et comme symbole locale au thread"
-#: elf-m10300.c:2108 elf32-arm.c:10632 elf32-i386.c:4363 elf32-m32r.c:2558
-#: elf32-m68k.c:4120 elf32-s390.c:3303 elf32-sh.c:4109 elf32-tilepro.c:3569
-#: elf32-xtensa.c:3063 elf64-s390.c:3229 elf64-sh64.c:1640 elf64-x86-64.c:4463
-#: elfxx-sparc.c:3904 elfxx-tilegx.c:3974
-#: /src/binutils-gdb/bfd/elfnn-aarch64.c:4450
+#: elf-m10300.c:2097 elf32-arm.c:12532 elf32-i386.c:5372 elf32-m32r.c:2540
+#: elf32-m68k.c:4084 elf32-s390.c:3372 elf32-sh.c:4127 elf32-tilepro.c:3569
+#: elf32-xtensa.c:3074 elf64-s390.c:3296 elf64-sh64.c:1636 elf64-x86-64.c:5753
+#: elfxx-sparc.c:4086 elfxx-tilegx.c:3976
+#: /Users/gingold/Repositories/fsf/binutils-gdb.git/bfd/elfnn-aarch64.c:6437
+#: /Users/gingold/Repositories/fsf/binutils-gdb.git/bfd/elfnn-riscv.c:2236
+#, c-format
msgid "%B(%A+0x%lx): unresolvable %s relocation against symbol `%s'"
msgstr "%B(%A+0x%lx): réadressage %s sans solution vers le symbole « %s »"
-#: elf-m10300.c:2173
+#: elf-m10300.c:2158
msgid "error: inappropriate relocation type for shared library (did you forget -fpic?)"
msgstr "erreur: type de réadressage inapproprié pour une librairie partagée (avez-vous oublié -fpic ?)"
-#: elf-m10300.c:2176
+#: elf-m10300.c:2162
+#, c-format
msgid "%B: taking the address of protected function '%s' cannot be done when making a shared library"
msgstr "%B: l'adresse de la fonction protégée « %s » ne peut être prise lors de la création d'une librairie partagée"
-#: elf-m10300.c:2179
+#: elf-m10300.c:2165
msgid "internal error: suspicious relocation type used in shared library"
msgstr "erreur interne: type de réadressage douteux utilisé dans une librairie partagée"
-#: elf.c:343
+#: elf-properties.c:65
+msgid "%B: out of memory in _bfd_elf_get_property"
+msgstr "%B: pas assez de mémoire dans _bfd_elf_get_property"
+
+#: elf-properties.c:91
+msgid "warning: %B: corrupt GNU_PROPERTY_TYPE (%ld) size: %#lx"
+msgstr "attention: %B: taille de GNU_PROPERTY_TYPE (%ld) corrompue: %#lx"
+
+#: elf-properties.c:107
+msgid "warning: %B: corrupt GNU_PROPERTY_TYPE (%ld) type (0x%x) datasz: 0x%x"
+msgstr "attention: %1$B: datasz du type (0x%3$x) GNU_PROPERTY_TYPE (%2$ld) corrompu: 0x%4$x"
+
+#: elf-properties.c:146
+msgid "warning: %B: corrupt stack size: 0x%x"
+msgstr "attention: %B: taille de pille corrompue: 0x%x"
+
+#: elf-properties.c:164
+msgid "warning: %B: corrupt no copy on protected size: 0x%x"
+msgstr "attention: %B: taille de « no copy on protected » corrompue: 0x%x"
+
+#: elf-properties.c:180
+msgid "warning: %B: unsupported GNU_PROPERTY_TYPE (%ld) type: 0x%x"
+msgstr "attention: %B: type GNU_PROPERTY_TYPE (%ld) non supporté: 0x%x"
+
+#. PR 17512: file: f057ec89.
+#: elf.c:342
+#, c-format
+msgid "%B: attempt to load strings from a non-string section (number %d)"
+msgstr "%B: tentative de charger des chaînes depuis une section non-chaînes (numéro %d)"
+
+#: elf.c:357
+#, c-format
msgid "%B: invalid string offset %u >= %lu for section `%s'"
-msgstr "%B: chaîne de décalage invalide %u >= %lu pour la section «%s»"
+msgstr "%B: chaîne de décalage invalide %u >= %lu pour la section « %s »"
-#: elf.c:455
+#: elf.c:496
+#, c-format
msgid "%B symbol number %lu references nonexistent SHT_SYMTAB_SHNDX section"
msgstr "%B le symbole numéro %lu fait référence à une section SHT_SYMTAB_SHNDX inexistante"
-#: elf.c:611
-msgid "%B: Corrupt size field in group section header: 0x%lx"
-msgstr "%B: Champ de taille corrompu dans l'en-tête du groupe de section: 0x%lx"
+#: elf.c:660
+#, c-format
+msgid "%B: corrupt size field in group section header: %#Lx"
+msgstr "%B: champ de taille corrompu dans l'en-tête du groupe de section: %#Lx"
+
+#: elf.c:675
+#, c-format
+msgid "%B: invalid size field in group section header: %#Lx"
+msgstr "%B: champ de taille invalide dans l'en-tête du groupe de section: %#Lx"
-#: elf.c:647
+#: elf.c:711
msgid "%B: invalid SHT_GROUP entry"
msgstr "%B: entrée SHT_GROUP invalide"
-#: elf.c:717
+#: elf.c:730
+msgid "%B: no valid group sections found"
+msgstr "%B: aucune section de groupe valable trouvée"
+
+#: elf.c:804
+#, c-format
msgid "%B: no group info for section %A"
msgstr "%B: aucune info de groupe pour la section %A"
-#: elf.c:746 elf.c:3144 elflink.c:10290
+#: elf.c:835 elf.c:3819 elflink.c:11155
+#, c-format
msgid "%B: warning: sh_link not set for section `%A'"
-msgstr "%B: attention: sh_link n'a pas de valeur pour la section «%A»"
+msgstr "%B: attention: sh_link n'a pas de valeur pour la section « %A »"
-#: elf.c:765
+#: elf.c:855
+#, c-format
msgid "%B: sh_link [%d] in section `%A' is incorrect"
-msgstr "%B: sh_link [%d] n'est pas correct dans la section «%A»"
+msgstr "%B: sh_link [%d] n'est pas correct dans la section « %A »"
-#: elf.c:800
-msgid "%B: unknown [%d] section `%s' in group [%s]"
-msgstr "%B: [%d] inconnu dans la section «%s» du groupe [%s]"
+#: elf.c:868
+#, c-format
+msgid "%B: SHT_GROUP section [index %d] has no SHF_GROUP sections"
+msgstr "%B: la section SHT_GROUP [index %d] n'a pas de section SHF_GROUP"
+
+#: elf.c:889
+#, c-format
+msgid "%B: section group entry number %u is corrupt"
+msgstr "%B: l'entrée de groupe de section %u est corrompue"
+
+#: elf.c:914
+#, c-format
+msgid "%B: unknown type [%#x] section `%s' in group [%A]"
+msgstr "%B: type [%#x] de section « %s » inconnu dans le groupe [%A]"
-#: elf.c:1174
+#: elf.c:1373
+#, c-format
+msgid "%B: Invalid sh_link field (%d) in section number %d"
+msgstr "%B: Champ sh_link (%d) invalide dans la section numéro %d"
+
+#: elf.c:1389
+#, c-format
+msgid "%B: Failed to find link section for section %d"
+msgstr "%B: Impossible de trouver la section de liaison pour la section %d"
+
+#: elf.c:1416
+#, c-format
+msgid "%B: Failed to find info section for section %d"
+msgstr "%B: Impossible de trouver la section d'information pour la section %d"
+
+#: elf.c:1588
#, c-format
msgid ""
"\n"
@@ -801,7 +1104,7 @@ msgstr ""
"\n"
"En-tête de programme:\n"
-#: elf.c:1216
+#: elf.c:1630
#, c-format
msgid ""
"\n"
@@ -810,7 +1113,7 @@ msgstr ""
"\n"
"Section dynamique:\n"
-#: elf.c:1352
+#: elf.c:1771
#, c-format
msgid ""
"\n"
@@ -819,7 +1122,7 @@ msgstr ""
"\n"
"Définitions des versions:\n"
-#: elf.c:1377
+#: elf.c:1796
#, c-format
msgid ""
"\n"
@@ -828,100 +1131,266 @@ msgstr ""
"\n"
"Références de version:\n"
-#: elf.c:1382
+#: elf.c:1801
#, c-format
msgid " required from %s:\n"
msgstr " requis par %s:\n"
-#: elf.c:1807
-msgid "%B: invalid link %lu for reloc section %s (index %u)"
-msgstr "%B: lien invalide %lu pour la section de relocalisation %s (index %u)"
+#: elf.c:1999
+msgid "%B: warning: loop in section dependencies detected"
+msgstr "%B: attention: boucle détectée dans les dépendances de sections"
-#: elf.c:1977
-msgid "%B: don't know how to handle allocated, application specific section `%s' [0x%8x]"
-msgstr "%B: je ne sais pas comment traiter la section «%s» [0x%8x] allouée et spécifique à l'application"
+#: elf.c:2107
+#, c-format
+msgid "%B: warning: multiple symbol tables detected - ignoring the table in section %u"
+msgstr "%B: attention: plusieurs tables de symboles détectées — la table dans la section %u est ignorée"
-#: elf.c:1989
-msgid "%B: don't know how to handle processor specific section `%s' [0x%8x]"
-msgstr "%B: je ne sais pas comment traiter la section «%s» [0x%8x] spécifique au processeur"
+#: elf.c:2191
+#, c-format
+msgid "%B: warning: multiple dynamic symbol tables detected - ignoring the table in section %u"
+msgstr "%B: attention: plusieurs tables de symboles dynamiques ont été détectées — la table dans la section %u est ignorée"
-#: elf.c:2000
-msgid "%B: don't know how to handle OS specific section `%s' [0x%8x]"
-msgstr "%B: je ne sais pas comment traiter la section «%s» [0x%8x] spécifique au système d'exploitation"
+#: elf.c:2304
+#, c-format
+msgid "%B: invalid link %u for reloc section %s (index %u)"
+msgstr "%B: lien %u invalide pour la section de réadressages %s (index %u)"
-#: elf.c:2010
-msgid "%B: don't know how to handle section `%s' [0x%8x]"
-msgstr "%B: je ne sais pas comment traiter la section «%s» [0x%8x]"
+#: elf.c:2463 elf.c:2478 elf.c:2489 elf.c:2502
+#, c-format
+msgid "%B: unknown type [%#x] section `%s'"
+msgstr "%B: type [%#x] inconnu dans la section « %s »"
-#: elf.c:2648
+#: elf.c:3206
+#, c-format
+msgid "%B: error: Alignment power %d of section `%A' is too big"
+msgstr "%B: erreur: L'alignement à la puissance %d de la section « %A » est trop grand"
+
+#: elf.c:3236
#, c-format
msgid "warning: section `%A' type changed to PROGBITS"
-msgstr "attention: type de la section «%A» changé en PROGBITS"
+msgstr "attention: type de la section « %A » changé en PROGBITS"
-#: elf.c:3015
+#: elf.c:3687
+#, c-format
msgid "%B: too many sections: %u"
msgstr "%B: trop de sections: %u"
-#: elf.c:3101
+#: elf.c:3772
+#, c-format
msgid "%B: sh_link of section `%A' points to discarded section `%A' of `%B'"
-msgstr "%B: le sh_link de la section «%A» pointe vers la section abandonnée «%A» de «%B»"
+msgstr "%B: le sh_link de la section « %A » pointe vers la section abandonnée « %A » de « %B »"
-#: elf.c:3124
+#: elf.c:3797
+#, c-format
msgid "%B: sh_link of section `%A' points to removed section `%A' of `%B'"
-msgstr "%B: le sh_link de la section «%A» pointe vers la section supprimée «%A» de «%B»"
+msgstr "%B: le sh_link de la section « %A » pointe vers la section supprimée « %A » de « %B »"
+
+#: elf.c:4349
+#, c-format
+msgid "%B: GNU_MBIN section `%A' has invalid sh_info field: %d"
+msgstr "%B: la section GNU_MBIN « %A » a un champ sh_info invalide: %d"
-#: elf.c:4126
+#: elf.c:4891
msgid "%B: TLS sections are not adjacent:"
msgstr "%B: Les sections TLS ne sont pas adjacentes:"
-#: elf.c:4133
+#: elf.c:4898
#, c-format
msgid "\t TLS: %A"
msgstr "\t TLS: %A"
-#: elf.c:4137
+#: elf.c:4902
#, c-format
msgid "\tnon-TLS: %A"
msgstr "\tnon-TLS: %A"
-#: elf.c:4596
+#: elf.c:5398
msgid "%B: The first section in the PT_DYNAMIC segment is not the .dynamic section"
msgstr "%B: La première section dans le segment PT_DYNAMIC n'est pas la section .dynamic"
-#: elf.c:4621
+#: elf.c:5426
msgid "%B: Not enough room for program headers, try linking with -N"
msgstr "%B: Pas suffisamment d'espace pour les en-têtes du programme, essayer l'option -N"
-#: elf.c:4707
-msgid "%B: section %A lma %#lx adjusted to %#lx"
-msgstr "%B: section %A avec lma %#lx ajustée à %#lx"
+#: elf.c:5514
+#, c-format
+msgid "%B: section %A lma %#Lx adjusted to %#Lx"
+msgstr "%B: section %A avec lma %#Lx ajustée à %#Lx"
-#: elf.c:4843
+#: elf.c:5651
+#, c-format
msgid "%B: section `%A' can't be allocated in segment %d"
-msgstr "%B: la section «%A» ne peut pas être allouée dans le segment %d"
+msgstr "%B: la section « %A » ne peut pas être allouée dans le segment %d"
-#: elf.c:4892
+#: elf.c:5699
+#, c-format
msgid "%B: warning: allocated section `%s' not in segment"
-msgstr "%B: attention: section allouée «%s» n'est pas dans le segment"
+msgstr "%B: attention: section allouée « %s » n'est pas dans le segment"
+
+#: elf.c:5897
+msgid "%B: error: non-load segment %d includes file header and/or program header"
+msgstr "%B: erreur: le segment de non-chargement %d inclus un en-tête de fichier ou de programme"
+
+#. The fix for this error is usually to edit the linker script being
+#. used and set up the program headers manually. Either that or
+#. leave room for the headers at the start of the SECTIONS.
+#: elf.c:6074
+msgid "%B: error: PHDR segment not covered by LOAD segment"
+msgstr "%B: erreur: segment PHDR non couvert par le segment LOAD"
-#: elf.c:5473
+#: elf.c:6418
+#, c-format
msgid "%B: symbol `%s' required but not present"
-msgstr "%B: symbole «%s» requis mais absent"
+msgstr "%B: symbole « %s » requis mais absent"
-#: elf.c:5811
-msgid "%B: warning: Empty loadable segment detected, is this intentional ?\n"
-msgstr "%B: attention: segment chargeable vide détecté, est-ce intentionnel ?\n"
+#: elf.c:6761
+#, c-format
+msgid "%B: warning: Empty loadable segment detected at vaddr=%#Lx, is this intentional?"
+msgstr "%B: attention: Segment chargeable vide détecté à vaddr=%#Lx, est-ce intentionnel ?"
-#: elf.c:6867
+#: elf.c:7375
+#, c-format
+msgid "%B: warning: segment alignment of %#Lx is too large"
+msgstr "%B: attention: un alignement de segment de %#Lx est trop grand"
+
+#: elf.c:7856
#, c-format
msgid "Unable to find equivalent output section for symbol '%s' from section '%s'"
-msgstr "Incapable de trouver un équivalent pour le symbole «%s» de la section «%s»"
+msgstr "Incapable de trouver un équivalent pour le symbole « %s » de la section « %s »"
+
+#: elf.c:8188
+msgid "%B: .gnu.version_r invalid entry"
+msgstr "%B: entrée .gnu.version_r invalide"
-#: elf.c:7915
+#: elf.c:8315
+msgid "%B: .gnu.version_d invalid entry"
+msgstr "%B: entrée .gnu.version_d invalide"
+
+#: elf.c:8867
+#, c-format
msgid "%B: unsupported relocation type %s"
msgstr "%B: type de réadressage %s non supporté"
-#: elf32-arm.c:3722 elf32-arm.c:7051
+#: elf32-arc.c:433 elf32-frv.c:6626 elf32-iq2000.c:870 elf32-m32c.c:915
+#: elf32-mt.c:564 elf32-rl78.c:1256 elf32-rx.c:3177 elf32-visium.c:837
+#: elf64-ppc.c:6078
+#, c-format
+msgid "private flags = 0x%lx:"
+msgstr "fanions privés = 0x%lx:"
+
+#: elf32-arc.c:611
+msgid "Warning: %B: Conflicting platform configuration %s with %s.\n"
+msgstr "Attention: %B: Configuration de platforme %s en conflit avec %s.\n"
+
+#: elf32-arc.c:630
+msgid "error: %B: unable to merge CPU base attributes %s with %s.\n"
+msgstr "erreur: %B: impossible de fusionner les attributs de base CPU %s avec %s.\n"
+
+#: elf32-arc.c:667
+msgid "error: %B: unable to merge ISA extension attributes %s.\n"
+msgstr "erreur: %B: impossible de fusionner les attributs de l'extension ISA %s.\n"
+
+#: elf32-arc.c:691
+msgid "error: %B: conflicting ISA extension attributes %s with %s.\n"
+msgstr "erreur: %B: attributs d'extension ISA %s en conflit avec %s.\n"
+
+#: elf32-arc.c:726
+msgid "error: %B: cannot mix rf16 with full register set %B.\n"
+msgstr "erreur: %B: impossible de mélanger rf16 avec l'ensemble des registres complets %B.\n"
+
+#: elf32-arc.c:752
+msgid "error: %B: conflicting attributes %s: %s with %s.\n"
+msgstr "erreur: %B: attributs %s conflictuels: %s avec %s.\n"
+
+#: elf32-arc.c:777
+msgid "error: %B: conflicting attributes %s.\n"
+msgstr "erreur: %B: attributs %s conflictuels.\n"
+
+#: elf32-arc.c:877
+#, c-format
+msgid "ERROR: Attempting to link %B with a binary %B of different architecture"
+msgstr "ERREUR: Tentative de lier %B avec un binaire %B d'une architecture différente"
+
+#: elf32-arc.c:891 elf32-i370.c:359 elf32-iq2000.c:846 elf32-m32c.c:890
+#: elf32-m68hc1x.c:1388 elf64-sparc.c:727 elfxx-mips.c:15127
+#, c-format
+msgid "%B: uses different e_flags (0x%lx) fields than previous modules (0x%lx)"
+msgstr "%B: utilise des champs e_flags (0x%lx) différents des modules précédents (0x%lx)"
+
+#: elf32-arc.c:980
+msgid "Error: The ARC4 architecture is no longer supported.\n"
+msgstr "Erreur: L'architecture ARC4 n'est plus supportée.\n"
+
+#: elf32-arc.c:986
+msgid ""
+"Warning: unset or old architecture flags. \n"
+"\t Use default machine.\n"
+msgstr ""
+"Attention: fanions d'architecture non définis ou trop anciens. \n"
+" Utilise la machine par défaut.\n"
+
+#: elf32-arc.c:1119
+#, c-format
+msgid "%B(%A+0x%lx): CMEM relocation to `%s' is invalid, 16 MSB should be 0x%04x (value is 0x%lx)"
+msgstr "%B(%A+0x%lx): le réadressage CMEM vers « %s » est invalide. 16 MSB devrait être 0x%04x (la valeur est 0x%lx)"
+
+#: elf32-arc.c:1130
+#, c-format
+msgid "%B(%A+0x%lx): CMEM relocation to `%s+0x%lx' is invalid, 16 MSB should be 0x%04x (value is 0x%lx)"
+msgstr "%B(%A+0x%lx): le réadressage CMEM vers « %s+0x%lx » est invalide, 16 MSB devrait être 0x%04x (la valeur est 0x%lx)"
+
+#: elf32-arc.c:1835
+msgid "GOT and PLT relocations cannot be fixed with a non dynamic linker."
+msgstr "les réadressages GOT et PLT ne peuvent pas être corrigés avec un éditeur de liens non dynamique."
+
+#: elf32-arc.c:1859 elf32-rl78.c:1094 elf32-rx.c:1448
+#, c-format
+msgid "%B(%A): warning: unaligned access to symbol '%s' in the small data area"
+msgstr "%B(%A): attention: accès non aligné au symbole « %s » dans la zone des petites données"
+
+#: elf32-arc.c:1864 elf32-rl78.c:1099 elf32-rx.c:1453
+#, c-format
+msgid "%B(%A): internal error: out of range error"
+msgstr "%B(%A): erreur interne: hors limite"
+
+#: elf32-arc.c:1869 elf32-rl78.c:1104 elf32-rx.c:1458
+#, c-format
+msgid "%B(%A): internal error: unsupported relocation error"
+msgstr "%B(%A): erreur interne: réadressage non supporté"
+
+#: elf32-arc.c:1874 elf32-rl78.c:1109 elf32-rx.c:1463
+#, c-format
+msgid "%B(%A): internal error: dangerous relocation"
+msgstr "%B(%A): erreur interne: réadressage dangereux"
+
+#: elf32-arc.c:1879 elf32-rl78.c:1114 elf32-rx.c:1468
+#, c-format
+msgid "%B(%A): internal error: unknown error"
+msgstr "%B(%A): erreur interne: erreur inconnue"
+
+#: elf32-arc.c:1967 elf32-arm.c:14714 elf32-metag.c:2272 elfxx-mips.c:8883
+#: /Users/gingold/Repositories/fsf/binutils-gdb.git/bfd/elfnn-aarch64.c:7224
+#: /Users/gingold/Repositories/fsf/binutils-gdb.git/bfd/elfnn-riscv.c:484
+#, c-format
+msgid "%B: relocation %s against `%s' can not be used when making a shared object; recompile with -fPIC"
+msgstr "%B: réadressage de %s en vertu de « %s » ne peut être utilisé lors de la création d'un objet partagé; recompilez avec -fPIC"
+
+#: elf32-arc.c:2859
+msgid "%B: Unknown mandatory ARC object attribute %d."
+msgstr "%B: L'attribut d'objet ARC obligatoire %d est inconnu."
+
+#: elf32-arc.c:2867
+msgid "Warning: %B: Unknown ARC object attribute %d."
+msgstr "Attention: %B: Attribut d'objet ARC %d inconnu."
+
+# Les auteurs francophones que j'ai trouvés utilisent le mot « veneer ». Le mot « trampoline » est netttement plus approprié
+# pour désigner une instruction intermédiaire dont le seul but est de faire rebondir un branchement court vers une destination plus
+# éloignée.
+#: elf32-arm.c:4022 elf32-arm.c:4056 elf32-arm.c:4075 elf32-arm.c:4127
+msgid "%B(%A): warning: long branch veneers used in section with SHF_ARM_PURECODE section attribute is only supported for M-profile targets that implement the movw instruction."
+msgstr "%B(%A): attention: les trampolines (aka veneers) de branchements longs utilisés dans la section avec l'attribut de section SHF_ARM_PURECODE n'est supporté que sur les cibles M-profile implémentant l'instruction movw."
+
+#: elf32-arm.c:4087 elf32-arm.c:8806
msgid ""
"%B(%s): warning: interworking not enabled.\n"
" first occurrence: %B: Thumb call to ARM"
@@ -929,7 +1398,7 @@ msgstr ""
"%B(%s): attention: l'inter-réseautage n'est pas activé.\n"
" première occurrence: %B: appel de repère vers ARM"
-#: elf32-arm.c:3769
+#: elf32-arm.c:4141
msgid ""
"%B(%s): warning: interworking not enabled.\n"
" first occurrence: %B: ARM call to Thumb"
@@ -937,178 +1406,294 @@ msgstr ""
"%B(%s): attention: l'inter-réseautage n'est pas activé.\n"
" première occurrence: %B: appel ARM vers repère"
-#: elf32-arm.c:3988 elf32-arm.c:5433
-#: /src/binutils-gdb/bfd/elfnn-aarch64.c:2324
+#: elf32-arm.c:4415
+#, c-format
+msgid "No address assigned to the veneers output section %s"
+msgstr "Aucune adresse assignée à la section de sortie %s des trampolines (veneers)"
+
+#: elf32-arm.c:4490 elf32-arm.c:6627 elf32-hppa.c:587 elf32-m68hc1x.c:165
+#: elf32-metag.c:1198 elf32-nios2.c:2227
+#: /Users/gingold/Repositories/fsf/binutils-gdb.git/bfd/elfnn-aarch64.c:2852
+#, c-format
+msgid "%B: cannot create stub entry %s"
+msgstr "%B: ne peut créer l'entrée de l'ébauche %s"
+
+#: elf32-arm.c:5675
+msgid "%B: Special symbol `%s' only allowed for ARMv8-M architecture or later."
+msgstr "%B: Le symbole spécial « %s » est uniquement autorisé pour les architectures ARMv8-M ou ultérieures."
+
+#: elf32-arm.c:5684
+msgid "%B: invalid special symbol `%s'."
+msgstr "%B: symbole spéciale « %s » invalide."
+
+#: elf32-arm.c:5686 elf32-arm.c:5726
+msgid "It must be a global or weak function symbol."
+msgstr "Il doit être un symbole de fonction global ou faible."
+
+#: elf32-arm.c:5724
+msgid "%B: invalid standard symbol `%s'."
+msgstr "%B: symbole standard « %s » invalide."
+
+#: elf32-arm.c:5730
+msgid "%B: absent standard symbol `%s'."
+msgstr "%B: symbole standard « %s » absent."
+
+#: elf32-arm.c:5742
+msgid "%B: `%s' and its special symbol are in different sections."
+msgstr "%B: « %s » est ses symboles spéciaux sont dans des sections différentes."
+
+#: elf32-arm.c:5754
+msgid "%B: entry function `%s' not output."
+msgstr "%B: fonction « %s » d'entrée par écrite."
+
+#: elf32-arm.c:5761
+msgid "%B: entry function `%s' is empty."
+msgstr "%B: la fonction « %s » d'entrée est vide."
+
+#: elf32-arm.c:5890
+msgid "%B: --in-implib only supported for Secure Gateway import libraries."
+msgstr "%B: --in-implib uniquement supporté pour les bibliothèques d'import Secure Gateway."
+
+#: elf32-arm.c:5936
+msgid "%B: invalid import library entry: `%s'."
+msgstr "%B: entrée de bibliothèque d'import invalide: « %s »."
+
+#: elf32-arm.c:5938
+msgid "Symbol should be absolute, global and refer to Thumb functions."
+msgstr "Le symbole devrait être absolu, global et faire référence à des fonctions Thumb."
+
+#: elf32-arm.c:5958
+#, c-format
+msgid "Entry function `%s' disappeared from secure code."
+msgstr "La fonction d'entrée « %s » a disparu du code sûr."
+
+#: elf32-arm.c:5982
+#, c-format
+msgid "`%s' refers to a non entry function."
+msgstr "« %s » fait référence à quelque chose qui n'est pas une fonction d'entrée."
+
+#: elf32-arm.c:5997
+msgid "%B: visibility of symbol `%s' has changed."
+msgstr "%B: la visibilité du symbole « %s » a changé."
+
+#: elf32-arm.c:6006
+msgid "%B: incorrect size for symbol `%s'."
+msgstr "%B: taille incorrecte pour le symbole « %s »."
+
+#: elf32-arm.c:6025
+#, c-format
+msgid "Offset of veneer for entry function `%s' not a multiple of its size."
+msgstr "Le décalage du trampoline (aka veneer) pour la fonction d'entrée « %s » n'est pas un multiple de sa taille."
+
+#: elf32-arm.c:6045
+msgid "new entry function(s) introduced but no output import library specified:"
+msgstr "une ou plusieurs nouvelles fonctions d'entrée spécifiées mais aucune bibliothèque d'import est spécifiée:"
+
+#: elf32-arm.c:6053
#, c-format
-msgid "%s: cannot create stub entry %s"
-msgstr "%s: ne peut créer l'entrée d'ébauche %s"
+msgid "Start address of `%s' is different from previous link."
+msgstr "L'adresse de départ de « %s » est différente de celle de l'édition de liens précédente."
-#: elf32-arm.c:5549
+#: elf32-arm.c:6760
#, c-format
msgid "unable to find THUMB glue '%s' for '%s'"
-msgstr "incapable de repérer le REPÈRE de liant «%s» pour «%s»"
+msgstr "incapable de repérer le REPÈRE de liant « %s » pour « %s »"
-#: elf32-arm.c:5585
+#: elf32-arm.c:6796
#, c-format
msgid "unable to find ARM glue '%s' for '%s'"
-msgstr "incapable de repérer le liant ARM «%s» pour «%s»"
+msgstr "incapable de repérer le liant ARM « %s » pour « %s »"
-#: elf32-arm.c:6123
+#: elf32-arm.c:7511
msgid "%B: BE8 images only valid in big-endian mode."
msgstr "%B: les images BE8 ne sont valables qu'en mode gros boutiste."
#. Give a warning, but do as the user requests anyway.
-#: elf32-arm.c:6353
+#: elf32-arm.c:7742
msgid "%B: warning: selected VFP11 erratum workaround is not necessary for target architecture"
-msgstr "%B: attention: le palliatif VFP11 n'est pas nécessaire avec l'architecture cible"
+msgstr "%B: attention: le palliatif VFP11 sélectionné n'est pas nécessaire avec l'architecture cible"
-#: elf32-arm.c:6897 elf32-arm.c:6917
+#: elf32-arm.c:7769
+msgid "%B: warning: selected STM32L4XX erratum workaround is not necessary for target architecture"
+msgstr "%B: attention: le palliatif STM32L4XX sélectionné n'est pas nécessaire avec l'architecture cible"
+
+#: elf32-arm.c:8306 elf32-arm.c:8326
msgid "%B: unable to find VFP11 veneer `%s'"
-msgstr "%B: incapable de trouver le vernis VFP11 «%s»"
+msgstr "%B: incapable de trouver le trampoline (veneer) « %s » pour le VFP11"
+
+#: elf32-arm.c:8392 elf32-arm.c:8411
+msgid "%B: unable to find STM32L4XX veneer `%s'"
+msgstr "%B: incapable de trouver le trampoline (veneer) « %s » pour le STM32L4XX"
+
+#: elf32-arm.c:8618
+#, c-format
+msgid ""
+"%B(%A+0x%lx): error: multiple load detected in non-last IT block instruction : STM32L4XX veneer cannot be generated.\n"
+"Use gcc option -mrestrict-it to generate only one instruction per IT block.\n"
+msgstr ""
+"%B(%A+0x%lx): erreur: chargements multiples détectés dans un bloc d'instruction IT qui n'est pas le dernier : le trampoline (veneer) du STM32L4XX ne peut pas être généré.\n"
+"Utilisez l'option -mrestrict-it de gcc pour générer seulement une instruction par bloc IT.\n"
-#: elf32-arm.c:6966
+#: elf32-arm.c:8716
#, c-format
msgid "Invalid TARGET2 relocation type '%s'."
msgstr "Type de réadressage TARGET2 « %s » invalide"
-#. PR ld/16017: Do not generate ARM instructions for
-#. the PLT if compiling for a thumb-only target.
-#.
-#. FIXME: We ought to be able to generate thumb PLT instructions...
-#: elf32-arm.c:7696
-msgid "%B: Warning: thumb mode PLT generation not currently supported"
-msgstr "%B: Attention: génération du mode thumb PLT pas encore supportée"
+#. FIXME: We ought to be able to generate thumb-1 PLT
+#. instructions...
+#: elf32-arm.c:9458
+msgid "%B: Warning: thumb-1 mode PLT generation not currently supported"
+msgstr "%B: Attention: génération de PLT dans le mode thumb-1 pas encore supportée"
-#: elf32-arm.c:7909
-msgid "%B(%A+0x%lx):unexpected Thumb instruction '0x%x' in TLS trampoline"
+#: elf32-arm.c:9723
+#, c-format
+msgid "%B(%A+0x%lx): unexpected Thumb instruction '0x%x' in TLS trampoline"
msgstr "%B(%A+0x%lx): instruction Thumb « 0x%x » inattendue dans le trampoline TLS"
-#: elf32-arm.c:7948
-msgid "%B(%A+0x%lx):unexpected ARM instruction '0x%x' in TLS trampoline"
+#: elf32-arm.c:9763
+#, c-format
+msgid "%B(%A+0x%lx): unexpected ARM instruction '0x%x' in TLS trampoline"
msgstr "%B(%A+0x%lx): instruction ARM « 0x%x » inattendue dans le trampoline TLS"
-#: elf32-arm.c:8412
+#: elf32-arm.c:10097
+msgid "shared object"
+msgstr "objet partagé"
+
+#: elf32-arm.c:10100
+msgid "PIE executable"
+msgstr "exécutable PIE"
+
+#: elf32-arm.c:10103
+msgid "%B: relocation %s against external or undefined symbol `%s' can not be used when making a %s; recompile with -fPIC"
+msgstr "%B: le réadressage de %s vers le symbole externe ou non défini « %s » ne peut pas être utilisé en construisant un %s; recompilez avec -fPIC"
+
+#: elf32-arm.c:10234
msgid "\\%B: Warning: Arm BLX instruction targets Arm function '%s'."
-msgstr "\\%B: Attention: instruction Arm BLX vise la fonction Arm «%s»."
+msgstr "\\%B: Attention: instruction Arm BLX vise la fonction Arm « %s »."
-#: elf32-arm.c:8831
+#: elf32-arm.c:10660
msgid "%B: Warning: Thumb BLX instruction targets thumb function '%s'."
-msgstr "%B: Attention: instruction de repérage BLX vise la fonction de repérage «%s»."
+msgstr "%B: Attention: instruction de repérage BLX vise la fonction de repérage « %s »."
-#: elf32-arm.c:9672
-msgid "%B(%A+0x%lx):unexpected Thumb instruction '0x%x' referenced by TLS_GOTDESC"
+#: elf32-arm.c:11527
+#, c-format
+msgid "%B(%A+0x%lx): unexpected Thumb instruction '0x%x' referenced by TLS_GOTDESC"
msgstr "%B(%A+0x%lx): instruction Thumb « 0x%x » inattendue référencée par TLS_GOTDESC"
-#: elf32-arm.c:9695
-msgid "%B(%A+0x%lx):unexpected ARM instruction '0x%x' referenced by TLS_GOTDESC"
+#: elf32-arm.c:11551
+#, c-format
+msgid "%B(%A+0x%lx): unexpected ARM instruction '0x%x' referenced by TLS_GOTDESC"
msgstr "%B(%A+0x%lx): instruction ARM '0x%x' inattendue référencée par TLS_GOTDESC"
-#: elf32-arm.c:9724
+#: elf32-arm.c:11581
+#, c-format
msgid "%B(%A+0x%lx): R_ARM_TLS_LE32 relocation not permitted in shared object"
msgstr "%B(%A+0x%lx): réadressage R_ARM_TLS_LE32 pas permis dans un objet partagé"
-#: elf32-arm.c:9937
+#: elf32-arm.c:11795
+#, c-format
msgid "%B(%A+0x%lx): Only ADD or SUB instructions are allowed for ALU group relocations"
msgstr "%B(%A+0x%lx): Seuls ADD ou SUB sont permis dans les réadressages du groupe ALU"
-#: elf32-arm.c:9977 elf32-arm.c:10065 elf32-arm.c:10149 elf32-arm.c:10235
+#: elf32-arm.c:11836 elf32-arm.c:11927 elf32-arm.c:12013 elf32-arm.c:12101
+#, c-format
msgid "%B(%A+0x%lx): Overflow whilst splitting 0x%lx for group relocation %s"
msgstr "%B(%A+0x%lx): Débordement en scindant 0x%lx pour le réadressage du groupe %s"
-#: elf32-arm.c:10474 elf32-sh.c:3994 elf64-sh64.c:1544
+#: elf32-arm.c:12365 elf32-sh.c:4009 elf64-sh64.c:1539
+#, c-format
msgid "%B(%A+0x%lx): %s relocation against SEC_MERGE section"
msgstr "%B(%A+0x%lx): %s réadressage vers une section SEC_MERGE"
-#: elf32-arm.c:10585 elf32-m68k.c:4155 elf32-xtensa.c:2799
-#: /src/binutils-gdb/bfd/elfnn-aarch64.c:4192
+#: elf32-arm.c:12477 elf32-m68k.c:4120 elf32-xtensa.c:2816
+#: /Users/gingold/Repositories/fsf/binutils-gdb.git/bfd/elfnn-aarch64.c:6165
+#, c-format
msgid "%B(%A+0x%lx): %s used with TLS symbol %s"
msgstr "%B(%A+0x%lx): %s utilisé avec le symbole TLS %s"
-#: elf32-arm.c:10586 elf32-m68k.c:4156 elf32-xtensa.c:2800
-#: /src/binutils-gdb/bfd/elfnn-aarch64.c:4193
+#: elf32-arm.c:12479 elf32-m68k.c:4122 elf32-xtensa.c:2818
+#: /Users/gingold/Repositories/fsf/binutils-gdb.git/bfd/elfnn-aarch64.c:6167
+#, c-format
msgid "%B(%A+0x%lx): %s used with non-TLS symbol %s"
msgstr "%B(%A+0x%lx): %s utilisé avec le symbole non-TLS %s"
-#: elf32-arm.c:10666 elf32-tic6x.c:2736
-#: /src/binutils-gdb/bfd/elfnn-aarch64.c:4481
+#: elf32-arm.c:12561 elf32-tic6x.c:2739
+#: /Users/gingold/Repositories/fsf/binutils-gdb.git/bfd/elfnn-aarch64.c:6500
msgid "out of range"
msgstr "hors limite"
-#: elf32-arm.c:10670 elf32-nios2.c:3525 elf32-tic6x.c:2740
-#: /src/binutils-gdb/bfd/elfnn-aarch64.c:4485
+#: elf32-arm.c:12565 elf32-nios2.c:4505 elf32-pru.c:821 elf32-tic6x.c:2743
+#: /Users/gingold/Repositories/fsf/binutils-gdb.git/bfd/elfnn-aarch64.c:6504
msgid "unsupported relocation"
msgstr "réadressage non supporté"
-#: elf32-arm.c:10678 elf32-nios2.c:3535 elf32-tic6x.c:2748
-#: /src/binutils-gdb/bfd/elfnn-aarch64.c:4493
+#: elf32-arm.c:12573 elf32-nios2.c:4515 elf32-pru.c:831 elf32-tic6x.c:2751
+#: /Users/gingold/Repositories/fsf/binutils-gdb.git/bfd/elfnn-aarch64.c:6512
msgid "unknown error"
msgstr "erreur inconnue"
-#: elf32-arm.c:11153
-msgid "Warning: Clearing the interworking flag of %B because non-interworking code in %B has been linked with it"
-msgstr "Attention: mise à zéro du fanion d'inter-réseautage %B en raison du code sans inter-réseautage dans %B lié avec lui"
-
-#: elf32-arm.c:11240
+#: elf32-arm.c:13153
msgid "%B: Unknown mandatory EABI object attribute %d"
msgstr "%B: L'attribut d'objet EABI obligatoire %d est manquant"
-#: elf32-arm.c:11248
+#: elf32-arm.c:13161
msgid "Warning: %B: Unknown EABI object attribute %d"
msgstr "Attention: %B: Attribut d'objet EABI %d inconnu"
-#: elf32-arm.c:11449
+#: elf32-arm.c:13428
msgid "error: %B: Unknown CPU architecture"
msgstr "erreur: %B: Architecture CPU inconnue"
-#: elf32-arm.c:11487
+#: elf32-arm.c:13466 elf32-nios2.c:2965
+#, c-format
msgid "error: %B: Conflicting CPU architectures %d/%d"
msgstr "erreur: %B: Architectures CPU conflictuelles %d/%d"
-#: elf32-arm.c:11576
+#: elf32-arm.c:13563
msgid "Error: %B has both the current and legacy Tag_MPextension_use attributes"
msgstr "Erreur: %B utilise les deux attributs Tag_MPextension_use actuel et hérité"
-#: elf32-arm.c:11601
+#: elf32-arm.c:13592
msgid "error: %B uses VFP register arguments, %B does not"
msgstr "erreur: %B passe les paramètres dans un registre VFP alors que %B ne le fait pas"
-#: elf32-arm.c:11747
+#: elf32-arm.c:13750
msgid "error: %B: unable to merge virtualization attributes with %B"
msgstr "erreur: %B: impossible de fusionner les attributs de visualisation avec %B"
-#: elf32-arm.c:11773
+#: elf32-arm.c:13776
msgid "error: %B: Conflicting architecture profiles %c/%c"
msgstr "erreur: %B: Profils d'architecture conflictuels %c/%c"
-#: elf32-arm.c:11877
+#: elf32-arm.c:13915
msgid "Warning: %B: Conflicting platform configuration"
msgstr "Attention: %B: Configuration de platforme conflictuelle"
-#: elf32-arm.c:11886
+#: elf32-arm.c:13924
msgid "error: %B: Conflicting use of R9"
msgstr "erreur: %B: Utilisation conflictuelle de R9"
-#: elf32-arm.c:11898
+#: elf32-arm.c:13936
msgid "error: %B: SB relative addressing conflicts with use of R9"
msgstr "erreur: %B: Adressage relatif SB entre en conflit avec l'utilisation de R9"
-#: elf32-arm.c:11911
+#: elf32-arm.c:13949
msgid "warning: %B uses %u-byte wchar_t yet the output is to use %u-byte wchar_t; use of wchar_t values across objects may fail"
msgstr "attention: %B utilise des wchar_t de %u octets alors que la sortie doit utiliser des wchar_t de %u octets. L'utilisation de wchar_t entre objets peu échouer"
-#: elf32-arm.c:11942
+#: elf32-arm.c:13980
msgid "warning: %B uses %s enums yet the output is to use %s enums; use of enum values across objects may fail"
msgstr "attantion: %B utilise des enums %s alors que la sortie doit utiliser des enums %s. L'utilisation des valeurs enum entre objets peu échouer"
-#: elf32-arm.c:11954
+#: elf32-arm.c:13992
msgid "error: %B uses iWMMXt register arguments, %B does not"
msgstr "erreur: %B passe les paramètres dans le registre iWMMXt contrairement à %B"
-#: elf32-arm.c:11971
+#: elf32-arm.c:14009
msgid "error: fp16 format mismatch between %B and %B"
msgstr "erreur: désaccord de format fp16 entre %B et %B"
-#: elf32-arm.c:12007
+#: elf32-arm.c:14045
msgid "%B has has both the current and legacy Tag_MPextension_use attributes"
msgstr "%B utilise les deux attributs Tag_MPextension_use actuel et hérité"
@@ -1117,335 +1702,383 @@ msgstr "%B utilise les deux attributs Tag_MPextension_use actuel et hérité"
#. Ignore init flag - it may not be set, despite the flags field containing valid data.
#. Ignore init flag - it may not be set, despite the flags field
#. containing valid data.
-#: elf32-arm.c:12095 elf32-bfin.c:4949 elf32-cris.c:4139 elf32-m68hc1x.c:1427
-#: elf32-m68k.c:1195 elf32-score.c:4004 elf32-score7.c:3808 elf32-vax.c:529
-#: elf32-xgate.c:674 elfxx-mips.c:14955
-#: /src/binutils-gdb/bfd/elfnn-aarch64.c:4645
+#: elf32-arm.c:14132 elf32-bfin.c:4919 elf32-cris.c:4089 elf32-m68hc1x.c:1413
+#: elf32-m68k.c:1200 elf32-score.c:4002 elf32-score7.c:3807 elf32-vax.c:536
+#: elf32-xgate.c:669 elfxx-mips.c:15802
+#: /Users/gingold/Repositories/fsf/binutils-gdb.git/bfd/elfnn-aarch64.c:6666
#, c-format
msgid "private flags = %lx:"
msgstr "fanions privés = %lx"
-#: elf32-arm.c:12104
+#: elf32-arm.c:14141
#, c-format
msgid " [interworking enabled]"
msgstr " [inter-réseautage autorisé]"
-#: elf32-arm.c:12112
+#: elf32-arm.c:14149
#, c-format
msgid " [VFP float format]"
msgstr " [format flottant VFP]"
-#: elf32-arm.c:12114
+#: elf32-arm.c:14151
#, c-format
msgid " [Maverick float format]"
msgstr " [format flottant Maverick]"
-#: elf32-arm.c:12116
+#: elf32-arm.c:14153
#, c-format
msgid " [FPA float format]"
msgstr " [format flottant FPA]"
-#: elf32-arm.c:12125
+#: elf32-arm.c:14162
#, c-format
msgid " [new ABI]"
msgstr " [nouvel ABI]"
-#: elf32-arm.c:12128
+#: elf32-arm.c:14165
#, c-format
msgid " [old ABI]"
msgstr " [ancien ABI]"
-#: elf32-arm.c:12131
+#: elf32-arm.c:14168
#, c-format
msgid " [software FP]"
msgstr " [virgule flottante logiciel]"
-#: elf32-arm.c:12140
+#: elf32-arm.c:14177
#, c-format
msgid " [Version1 EABI]"
msgstr " [Version1 EABI]"
-#: elf32-arm.c:12143 elf32-arm.c:12154
+#: elf32-arm.c:14180 elf32-arm.c:14191
#, c-format
msgid " [sorted symbol table]"
msgstr " [table des symboles triés]"
-#: elf32-arm.c:12145 elf32-arm.c:12156
+#: elf32-arm.c:14182 elf32-arm.c:14193
#, c-format
msgid " [unsorted symbol table]"
msgstr " [table des symboles non triés]"
-#: elf32-arm.c:12151
+#: elf32-arm.c:14188
#, c-format
msgid " [Version2 EABI]"
msgstr " [Version2 EABI]"
-#: elf32-arm.c:12159
+#: elf32-arm.c:14196
#, c-format
msgid " [dynamic symbols use segment index]"
msgstr " [symboles dynamiques utilisent un index de segment]"
-#: elf32-arm.c:12162
+#: elf32-arm.c:14199
#, c-format
msgid " [mapping symbols precede others]"
msgstr " [mapping de symboles précèdes les autres]"
-#: elf32-arm.c:12169
+#: elf32-arm.c:14206
#, c-format
msgid " [Version3 EABI]"
msgstr " [Version3 EABI]"
-#: elf32-arm.c:12173
+#: elf32-arm.c:14210
#, c-format
msgid " [Version4 EABI]"
msgstr " [Version4 EABI]"
-#: elf32-arm.c:12177
+#: elf32-arm.c:14214
#, c-format
msgid " [Version5 EABI]"
msgstr " [Version5 EABI]"
-#: elf32-arm.c:12180
+#: elf32-arm.c:14217
#, c-format
msgid " [soft-float ABI]"
msgstr " [soft-float ABI]"
-#: elf32-arm.c:12183
+#: elf32-arm.c:14220
#, c-format
msgid " [hard-float ABI]"
msgstr " [hard-float ABI]"
-#: elf32-arm.c:12189
+#: elf32-arm.c:14226
#, c-format
msgid " [BE8]"
msgstr " [BE8]"
-#: elf32-arm.c:12192
+#: elf32-arm.c:14229
#, c-format
msgid " [LE8]"
msgstr " [LE8]"
-#: elf32-arm.c:12198
+#: elf32-arm.c:14235
#, c-format
msgid " <EABI version unrecognised>"
msgstr " <Version EABI non reconnue>"
-#: elf32-arm.c:12205
+#: elf32-arm.c:14242
#, c-format
msgid " [relocatable executable]"
msgstr " [exécutables relocalisés]"
-#: elf32-arm.c:12208
-#, c-format
-msgid " [has entry point]"
-msgstr " [a des points d'entrées]"
-
-#: elf32-arm.c:12213 /src/binutils-gdb/bfd/elfnn-aarch64.c:4648
+#: elf32-arm.c:14247
+#: /Users/gingold/Repositories/fsf/binutils-gdb.git/bfd/elfnn-aarch64.c:6669
#, c-format
msgid "<Unrecognised flag bits set>"
msgstr "<Bits de fanions non reconnus>"
-#: elf32-arm.c:12522 elf32-i386.c:1452 elf32-s390.c:1005 elf32-tic6x.c:2812
-#: elf32-tilepro.c:1511 elf32-xtensa.c:999 elf64-s390.c:927
-#: elf64-x86-64.c:1467 elfxx-sparc.c:1415 elfxx-tilegx.c:1728
-#: /src/binutils-gdb/bfd/elfnn-aarch64.c:5038
+#: elf32-arm.c:14557 elf32-i386.c:2053 elf32-s390.c:956 elf32-tic6x.c:2814
+#: elf32-tilepro.c:1491 elf32-xtensa.c:1018 elf64-s390.c:875
+#: elf64-x86-64.c:2444 elfxx-sparc.c:1440 elfxx-tilegx.c:1708
+#: /Users/gingold/Repositories/fsf/binutils-gdb.git/bfd/elfnn-aarch64.c:7115
+#: /Users/gingold/Repositories/fsf/binutils-gdb.git/bfd/elfnn-riscv.c:526
+#, c-format
msgid "%B: bad symbol index: %d"
msgstr "%B: symbole index erroné: %d"
-#: elf32-arm.c:12674 elf32-metag.c:2283 elf64-x86-64.c:1593
-#: elf64-x86-64.c:1771 elfxx-mips.c:8482
-msgid "%B: relocation %s against `%s' can not be used when making a shared object; recompile with -fPIC"
-msgstr "%B: réadressage de %s en vertu de « %s » ne peut être utilisé lors de la création d'un objet partagé; recompilez avec -fPIC"
-
-#: elf32-arm.c:13796
-#, c-format
-msgid "Errors encountered processing file %s"
-msgstr "Erreurs rencontrées pendant le traitement du fichier %s"
+#: elf32-arm.c:16055
+msgid "Errors encountered processing file %B"
+msgstr "Erreurs rencontrées pendant le traitement du fichier %B"
-#: elf32-arm.c:14230
+#: elf32-arm.c:16493 elflink.c:12297 elflink.c:12344
#, c-format
-msgid "error: required section '%s' not found in the linker script"
-msgstr "erreur: section requise « %s » pas trouvée dans le script de liaison"
+msgid "could not find section %s"
+msgstr "ne peut repérer la section %s"
-#: elf32-arm.c:15252
+#: elf32-arm.c:17669
msgid "%B: error: Cortex-A8 erratum stub is allocated in unsafe location"
msgstr "%B: erreur: L'ébauche d'erratum du Cortex A8 est allouée à un emplacement peu sûr"
#. There's not much we can do apart from complain if this
#. happens.
-#: elf32-arm.c:15279
+#: elf32-arm.c:17696
msgid "%B: error: Cortex-A8 erratum stub out of range (input file too large)"
msgstr "%B: erreur: L'ébauche d'erratum du Cortex A8 est hors limite (fichier d'entrée trop grand)"
-#: elf32-arm.c:15373 elf32-arm.c:15395
+#: elf32-arm.c:18523 elf32-arm.c:18545
msgid "%B: error: VFP11 veneer out of range"
msgstr "%B: erreur: vernis VFP11 hors limite"
-#: elf32-arm.c:16020
+#: elf32-arm.c:18596
+msgid "%B(%#x): error: Cannot create STM32L4XX veneer. Jump out of range by %ld bytes. Cannot encode branch instruction. "
+msgstr "%B(%#x): erreur: Impossible de créer le trampoline (veneer) du STM32L4XX. Saut hors de portée pour %ld octets. Impossible d'encoder l'instruction de branchement. "
+
+#: elf32-arm.c:18634
+msgid "%B: error: Cannot create STM32L4XX veneer."
+msgstr "%B: erreur: Impossible de créer le trampoline (veneer) du STM32L4XX."
+
+#: elf32-arm.c:19655
msgid "error: %B is already in final BE8 format"
msgstr "erreur: %B est déjà au format final BE8"
-#: elf32-arm.c:16096
+#: elf32-arm.c:19731
msgid "error: Source object %B has EABI version %d, but target %B has EABI version %d"
msgstr "erreur: L'objet source %B a l'EABI version %d alors que la cible %B a l'EABI version %d"
-#: elf32-arm.c:16112
+#: elf32-arm.c:19746
msgid "error: %B is compiled for APCS-%d, whereas target %B uses APCS-%d"
msgstr "erreur: %B compilé pour APCS-%d alors que la cible %B utilise APCS-%d"
-#: elf32-arm.c:16137
+#: elf32-arm.c:19770
msgid "error: %B uses VFP instructions, whereas %B does not"
msgstr "erreur: %B utilise les instructions VFP alors que %B ne les utilise pas"
-#: elf32-arm.c:16141
+#: elf32-arm.c:19774
msgid "error: %B uses FPA instructions, whereas %B does not"
msgstr "erreur: %B utilise les instructions FPA alors que %B ne les utilise pas"
-#: elf32-arm.c:16151
+#: elf32-arm.c:19784
msgid "error: %B uses Maverick instructions, whereas %B does not"
msgstr "erreur: %B utilise les instructions Maverick alors que %B ne les utilise pas"
-#: elf32-arm.c:16155
+#: elf32-arm.c:19788
msgid "error: %B does not use Maverick instructions, whereas %B does"
msgstr "erreur: %B n'utilise pas les instructions Maverick alors que %B les utilise"
-#: elf32-arm.c:16174
+#: elf32-arm.c:19807
msgid "error: %B uses software FP, whereas %B uses hardware FP"
msgstr "erreur: %B utilise le logiciel pour virgule flottante alors que %B utilise le matériel pour virgule flottante"
-#: elf32-arm.c:16178
+#: elf32-arm.c:19811
msgid "error: %B uses hardware FP, whereas %B uses software FP"
msgstr "erreur: %B utilise le matériel pour virgule flottante alors que %B utilise le logiciel pour virgule flottante"
-#: elf32-avr.c:1264 elf32-bfin.c:3228 elf32-cris.c:2024 elf32-epiphany.c:568
-#: elf32-fr30.c:597 elf32-frv.c:4047 elf32-i860.c:1220 elf32-ip2k.c:1479
-#: elf32-iq2000.c:696 elf32-m32c.c:561 elf32-mep.c:543 elf32-metag.c:2000
-#: elf32-moxie.c:290 elf32-msp430.c:1325 elf32-mt.c:399 elf32-openrisc.c:412
-#: elf32-tilepro.c:3674 elf32-v850.c:2289 elf32-xstormy16.c:944
-#: elf64-mmix.c:1546 elfxx-tilegx.c:4059
+#: elf32-avr.c:959
+#, c-format
+msgid "%B: invalid AVR reloc number: %d"
+msgstr "%B: numéro de réadressage AVR invalide: %d"
+
+#: elf32-avr.c:1510 elf32-bfin.c:3202 elf32-cris.c:2033 elf32-epiphany.c:574
+#: elf32-fr30.c:599 elf32-frv.c:4049 elf32-ft32.c:342 elf32-i860.c:1218
+#: elf32-ip2k.c:1486 elf32-iq2000.c:701 elf32-m32c.c:629 elf32-mep.c:532
+#: elf32-metag.c:2009 elf32-moxie.c:293 elf32-msp430.c:1365 elf32-mt.c:404
+#: elf32-or1k.c:1266 elf32-tilepro.c:3673 elf32-v850.c:2295 elf32-visium.c:685
+#: elf32-xstormy16.c:935 elf64-mmix.c:1548 elfxx-tilegx.c:4060
+#: /Users/gingold/Repositories/fsf/binutils-gdb.git/bfd/elfnn-riscv.c:2275
msgid "internal error: dangerous relocation"
msgstr "erreur interne: réadressage dangereux"
-#: elf32-avr.c:2476 elf32-hppa.c:578 elf32-m68hc1x.c:160 elf32-metag.c:1197
-#: elf32-nios2.c:1357
-msgid "%B: cannot create stub entry %s"
-msgstr "%B: ne peut créer l'entrée de l'ébauche %s"
-
-#: elf32-bfin.c:107 elf32-bfin.c:363
+#: elf32-avr.c:3319
+#: /Users/gingold/Repositories/fsf/binutils-gdb.git/bfd/elfnn-aarch64.c:2880
+#, c-format
+msgid "cannot create stub entry %s"
+msgstr "ne peut créer l'entrée d'ébauche %s"
+
+#: elf32-bfin.c:106 elf32-bfin.c:362
msgid "relocation should be even number"
msgstr "le réadressage devrait être un nombre paire"
-#: elf32-bfin.c:1601
+#: elf32-bfin.c:1581
+#, c-format
msgid "%B(%A+0x%lx): unresolvable relocation against symbol `%s'"
msgstr "%B(%A+0x%lx): réadressage sans solution vers le symbole « %s »"
-#: elf32-bfin.c:1634 elf32-i386.c:4406 elf32-m68k.c:4197 elf32-s390.c:3364
-#: elf64-s390.c:3290 elf64-x86-64.c:4506
+#: elf32-bfin.c:1612 elf32-i386.c:5412 elf32-m68k.c:4160 elf32-s390.c:3429
+#: elf64-s390.c:3353 elf64-x86-64.c:5793
+#, c-format
msgid "%B(%A+0x%lx): reloc against `%s': error %d"
-msgstr "%B(%A+0x%lx): relocalisation vers «%s»: erreur %d"
+msgstr "%B(%A+0x%lx): réadressage vers « %s »: erreur %d"
-#: elf32-bfin.c:2732
+#: elf32-bfin.c:2706
+#, c-format
msgid "%B: relocation at `%A+0x%x' references symbol `%s' with nonzero addend"
msgstr "%B: réadressage à « %A+0x%x » fait référence au symbole « %s » avec un opérande non nul"
-#: elf32-bfin.c:2748
+#: elf32-bfin.c:2722
msgid "relocation references symbol not defined in the module"
msgstr "le réadressage fait référence à un symbole non défini dans le module"
-#: elf32-bfin.c:2845
+#: elf32-bfin.c:2819
msgid "R_BFIN_FUNCDESC references dynamic symbol with nonzero addend"
msgstr "R_BFIN_FUNCDESC fait référence à un symbole dynamique avec un opérande non nul"
-#: elf32-bfin.c:2886 elf32-bfin.c:3009
+#: elf32-bfin.c:2860 elf32-bfin.c:2983
msgid "cannot emit fixups in read-only section"
msgstr "impossible d'apporter des corrections dans une section en lecture seule"
-#: elf32-bfin.c:2917 elf32-bfin.c:3047 elf32-lm32.c:1095 elf32-sh.c:4913
+#: elf32-bfin.c:2891 elf32-bfin.c:3021 elf32-lm32.c:1064 elf32-sh.c:4930
msgid "cannot emit dynamic relocations in read-only section"
msgstr "impossible d'éditer les réadressages dynamiques dans une section en lecture seule"
-#: elf32-bfin.c:2967
+#: elf32-bfin.c:2941
msgid "R_BFIN_FUNCDESC_VALUE references dynamic symbol with nonzero addend"
msgstr "R_BFIN_FUNCDESC_VALUE fait référence à un symbole dynamique avec un opérande non nul"
-#: elf32-bfin.c:3132
+#: elf32-bfin.c:3106
msgid "relocations between different segments are not supported"
msgstr "les réadressages entre segments différents ne sont pas supportés"
-#: elf32-bfin.c:3133
+#: elf32-bfin.c:3107
msgid "warning: relocation references a different segment"
msgstr "attention: réadressage fait référence à un segment différent"
-#: elf32-bfin.c:4907
+#: elf32-bfin.c:4877
+#, c-format
msgid "%B: unsupported relocation type %i"
msgstr "%B: type de réadressage %i non supporté"
-#: elf32-bfin.c:4995 elf32-frv.c:6600
-#, c-format
-msgid "%s: cannot link non-fdpic object file into fdpic executable"
-msgstr "%s: ne peut lier un fichier objet non fdpic dans un exécutable fdpic"
+#: elf32-bfin.c:4966 elf32-frv.c:6599
+msgid "%B: cannot link non-fdpic object file into fdpic executable"
+msgstr "%B: ne peut lier un fichier objet non fdpic dans un exécutable fdpic"
-#: elf32-bfin.c:4999 elf32-frv.c:6604
-#, c-format
-msgid "%s: cannot link fdpic object file into non-fdpic executable"
-msgstr "%s: ne peut lier un fichier objet fdpic dans un exécutable non fdpic"
+#: elf32-bfin.c:4970 elf32-frv.c:6603
+msgid "%B: cannot link fdpic object file into non-fdpic executable"
+msgstr "%B: ne peut lier un fichier objet fdpic dans un exécutable non fdpic"
-#: elf32-bfin.c:5153
+#: elf32-bfin.c:5120
#, c-format
msgid "*** check this relocation %s"
msgstr "*** vérifiez ce réadressage %s"
-#: elf32-cris.c:1110
+#: elf32-bfin.c:5236
+msgid "the bfin target does not currently support the generation of copy relocations"
+msgstr "la cible bfin ne supporte actuellement pas la génération de réadressages copiés"
+
+#: elf32-cr16.c:653
+#, c-format
+msgid "Unsupported CR16 relocation type: 0x%x\n"
+msgstr "Type de réadressage CR16 non supporté: 0x%x\n"
+
+#: elf32-cr16.c:682
+#, c-format
+msgid "%B: unrecognised CR16 reloc number: %d"
+msgstr "%B: numéro de réadressage CR16 non reconnu: %d"
+
+#: elf32-cr16c.c:186
+#, c-format
+msgid "%B: invalid CR16C reloc number: %d"
+msgstr "%B: numéro de réadressage CR16C invalide: %d"
+
+#: elf32-cris.c:467
+#, c-format
+msgid "%B: invalid CRIS reloc number: %d"
+msgstr "%B: numéro de réadressage CRIS invalide: %d"
+
+#: elf32-cris.c:1115
+#, c-format
msgid "%B, section %A: unresolvable relocation %s against symbol `%s'"
msgstr "%B, section %A: réadressage %s non résolu sur le symbole « %s »"
-#: elf32-cris.c:1172
+#: elf32-cris.c:1177
+#, c-format
msgid "%B, section %A: No PLT nor GOT for relocation %s against symbol `%s'"
msgstr "%B, section %a: Pas de PLT ni de GOT pour réadresser %s sur le symbole « %s »"
-#: elf32-cris.c:1174
+#: elf32-cris.c:1180
+#, c-format
msgid "%B, section %A: No PLT for relocation %s against symbol `%s'"
msgstr "%B, section %A: Pas de PLT pour réadresser %s sur le symbole « %s »"
-#: elf32-cris.c:1180 elf32-cris.c:1313 elf32-cris.c:1573 elf32-cris.c:1656
-#: elf32-cris.c:1809 elf32-tic6x.c:2645
+#: elf32-cris.c:1186 elf32-cris.c:1319 elf32-cris.c:1583 elf32-cris.c:1666
+#: elf32-cris.c:1819 elf32-tic6x.c:2651
msgid "[whose name is lost]"
msgstr "[dont le nom est perdu]"
-#: elf32-cris.c:1299 elf32-tic6x.c:2630
+#: elf32-cris.c:1304 elf32-tic6x.c:2635
+#, c-format
msgid "%B, section %A: relocation %s with non-zero addend %d against local symbol"
msgstr "%B, section %A: réadressage de %s avec un opérande non nul %d sur le symbole local"
-#: elf32-cris.c:1307 elf32-cris.c:1650 elf32-cris.c:1803 elf32-tic6x.c:2638
+#: elf32-cris.c:1313 elf32-cris.c:1660 elf32-cris.c:1813 elf32-tic6x.c:2644
+#, c-format
msgid "%B, section %A: relocation %s with non-zero addend %d against symbol `%s'"
msgstr "%B, section %A: réadressage de %s avec un opérande non nul %d sur le symbole « %s »"
-#: elf32-cris.c:1333
+#: elf32-cris.c:1340
+#, c-format
msgid "%B, section %A: relocation %s is not allowed for global symbol: `%s'"
msgstr "%B, section %A: le réadressage de %s n'est pas permis pour le symbole global: « %s »"
-#: elf32-cris.c:1349
+#: elf32-cris.c:1357
+#, c-format
msgid "%B, section %A: relocation %s with no GOT created"
msgstr "%B, section %A: réadressage de %s sans GOT"
#. We shouldn't get here for GCC-emitted code.
-#: elf32-cris.c:1564
+#: elf32-cris.c:1573
+#, c-format
msgid "%B, section %A: relocation %s has an undefined reference to `%s', perhaps a declaration mixup?"
msgstr "%B, section %A: réadressage de %s a une référence non définie vers « %s », peut-être un mélange dans les déclarations ?"
-#: elf32-cris.c:1937
+#: elf32-cris.c:1576
+#, c-format
+msgid "%B, section %A: relocation %s is not allowed for `%s', a global symbol with default visibility, perhaps a declaration mixup?"
+msgstr "%B, section %A: réadressage de %s n'est pas permis pour « %s », un symbole global avec la visibilité par défaut, peut-être un mélange dans les déclarations ?"
+
+#: elf32-cris.c:1947
+#, c-format
msgid "%B, section %A: relocation %s is not allowed for symbol: `%s' which is defined outside the program, perhaps a declaration mixup?"
msgstr "%B, section %A: réadressage de %s n'est pas permis pour le symbole « %s » qui est défini en dehors du programme, peut-être un mélange dans les déclarations ?"
-#: elf32-cris.c:1990
+#: elf32-cris.c:2000
msgid "(too many global variables for -fpic: recompile with -fPIC)"
msgstr "(trop de variables globales pour -fpic: recompilez avec -fPIC)"
-#: elf32-cris.c:1997
+#: elf32-cris.c:2007
msgid "(thread-local data too big for -fpic or -msmall-tls: recompile with -fPIC or -mno-small-tls)"
msgstr "(donnée locale au thread trop grande pour -fpic or -msmall-tls: recompilez avec -fPIC ou -mno-small-tls)"
-#: elf32-cris.c:3234
+#: elf32-cris.c:3233
+#, c-format
msgid ""
"%B, section %A:\n"
" v10/v32 compatible object %s must not contain a PIC relocation"
@@ -1453,7 +2086,8 @@ msgstr ""
"%B, section %A:\n"
" l'objet compatible v10/v32 %s ne peut pas contenir de réadressage PIC"
-#: elf32-cris.c:3342
+#: elf32-cris.c:3287
+#, c-format
msgid ""
"%B, section %A:\n"
" relocation %s not valid in a shared object; typically an option mixup, recompile with -fPIC"
@@ -1461,7 +2095,8 @@ msgstr ""
"%B, section %A:\n"
" réadressage de %s pas valable dans un objet partagé; typiquement un mélange dans les options. Recompilez avec -fPIC"
-#: elf32-cris.c:3556
+#: elf32-cris.c:3505
+#, c-format
msgid ""
"%B, section %A:\n"
" relocation %s should not be used in a shared object; recompile with -fPIC"
@@ -1469,50 +2104,66 @@ msgstr ""
"%B, section %A:\n"
" réadressage de %s ne devrait pas être utilisé dans un objet partagé; recompilez avec -fPIC"
-#: elf32-cris.c:3978
+#: elf32-cris.c:3929
+#, c-format
msgid ""
"%B, section `%A', to symbol `%s':\n"
" relocation %s should not be used in a shared object; recompile with -fPIC"
msgstr ""
-"%B, section «%A», vers le symbole «%s»:\n"
+"%B, section « %A », vers le symbole « %s »:\n"
" réadressage de %s ne devrait pas être utilisé dans un objet partagé; recompilez avec -fPIC"
-#: elf32-cris.c:4091
+#: elf32-cris.c:4041
msgid "Unexpected machine number"
msgstr "Numéro de machine inattendu"
-#: elf32-cris.c:4142
+#: elf32-cris.c:4092
#, c-format
msgid " [symbols have a _ prefix]"
-msgstr " [symboles sont préfixés par « _ »]"
+msgstr " [symboles sont préfixés par «  _  »]"
-#: elf32-cris.c:4145
+#: elf32-cris.c:4095
#, c-format
msgid " [v10 and v32]"
msgstr " [v10 et v32]"
-#: elf32-cris.c:4148
+#: elf32-cris.c:4098
#, c-format
msgid " [v32]"
msgstr " [v32]"
-#: elf32-cris.c:4191
+#: elf32-cris.c:4142
msgid "%B: uses _-prefixed symbols, but writing file with non-prefixed symbols"
msgstr "%B: utilise des symboles préfixés par _ mais écrits les symboles sans préfixes dans le fichier"
-#: elf32-cris.c:4192
+#: elf32-cris.c:4143
msgid "%B: uses non-prefixed symbols, but writing file with _-prefixed symbols"
msgstr "%B: utilise des symboles sans préfixe mais ajoute le préfixe _ aux symboles dans le fichier"
-#: elf32-cris.c:4211
+#: elf32-cris.c:4162
msgid "%B contains CRIS v32 code, incompatible with previous objects"
msgstr "%B contient du code CRIS v32 incompatible avec les objets précédents"
-#: elf32-cris.c:4213
+#: elf32-cris.c:4164
msgid "%B contains non-CRIS-v32 code, incompatible with previous objects"
msgstr "%B contient du code non CRIS v32 incompatible avec les objets précédents"
-#: elf32-dlx.c:142
+#: elf32-crx.c:429
+#, c-format
+msgid "%B: unrecognised CRX reloc number: %d"
+msgstr "%B: numéro de réadressage CRX non reconnu: %d"
+
+#: elf32-d10v.c:234
+#, c-format
+msgid "%B: invalid D10V reloc number: %d"
+msgstr "%B: numéro de réadressage D10V invalide: %d"
+
+#: elf32-d30v.c:522 elf32-d30v.c:541
+#, c-format
+msgid "%B: invalid D30V reloc number: %d"
+msgstr "%B: numéro de réadressage D30V invalide: %d"
+
+#: elf32-dlx.c:141
#, c-format
msgid "BFD Link Error: branch (PC rel16) to section (%s) not supported"
msgstr "Erreur de liaison BFD: branchement (PC rel16) à la section (%s) n'est pas supporté"
@@ -1522,693 +2173,994 @@ msgstr "Erreur de liaison BFD: branchement (PC rel16) à la section (%s) n'est p
msgid "BFD Link Error: jump (PC rel26) to section (%s) not supported"
msgstr "Erreur de liaison BFD: saut (PC rel26) à la section (%s) n'est pas supporté"
+#: elf32-dlx.c:552
+#, c-format
+msgid "Invalid DLX reloc number: %d"
+msgstr "Numéro de réadressage DLX invalide: %d"
+
+#: elf32-epiphany.c:376
+#, c-format
+msgid "%B: invalid Epiphany reloc number: %d"
+msgstr "%B: numéro de réadressage Epiphany invalide: %d"
+
#. Only if it's not an unresolved symbol.
-#: elf32-epiphany.c:564 elf32-ip2k.c:1475
+#: elf32-epiphany.c:570 elf32-ip2k.c:1482
msgid "unsupported relocation between data/insn address spaces"
msgstr "réadressage non supporté entre les espaces d'adresses data/insn"
-#: elf32-frv.c:1460 elf32-frv.c:1609
+#: elf32-fr30.c:381
+#, c-format
+msgid "%B: invalid FR30 reloc number: %d"
+msgstr "%B: numéro de réadressage FR30 invalide: %d"
+
+#: elf32-frv.c:1451 elf32-frv.c:1602
msgid "relocation requires zero addend"
msgstr "le réadressage exige un opérande nul"
-#: elf32-frv.c:2822
+#: elf32-frv.c:2557
+#, c-format
+msgid "%B: invalid FRV reloc number: %d"
+msgstr "%B: numéro de réadressage FRV invalide: %d"
+
+#: elf32-frv.c:2823
+#, c-format
msgid "%H: relocation to `%s+%v' may have caused the error above\n"
msgstr "%H: le réadressage en « %s+%v » peut avoir causé le problème ci-dessus\n"
-#: elf32-frv.c:2839
+#: elf32-frv.c:2840
msgid "%H: relocation references symbol not defined in the module\n"
msgstr "%H: le réadressage fait référence à un symbole non défini dans le module\n"
-#: elf32-frv.c:2915
+#: elf32-frv.c:2916
msgid "%H: R_FRV_GETTLSOFF not applied to a call instruction\n"
msgstr "%H: R_FRV_GETTLSOFF pas appliqué à une instruction d'appel\n"
-#: elf32-frv.c:2956
+#: elf32-frv.c:2957
msgid "%H: R_FRV_GOTTLSDESC12 not applied to an lddi instruction\n"
msgstr "%H: R_FRV_GOTTLSDESC12 pas appliqué à une instruction lddi\n"
-#: elf32-frv.c:3027
+#: elf32-frv.c:3028
msgid "%H: R_FRV_GOTTLSDESCHI not applied to a sethi instruction\n"
msgstr "%H: R_FRV_GOTTLSDESCHI pas appliqué à une instruction sethi\n"
-#: elf32-frv.c:3064
+#: elf32-frv.c:3065
msgid "%H: R_FRV_GOTTLSDESCLO not applied to a setlo or setlos instruction\n"
msgstr "%H: R_FRV_GOTTLSDESCLO pas appliqué à une instruction setlo ou setlos\n"
-#: elf32-frv.c:3111
+#: elf32-frv.c:3112
msgid "%H: R_FRV_TLSDESC_RELAX not applied to an ldd instruction\n"
msgstr "%H: R_FRV_TLSDESC_RELAX pas appliqué à une instruction ldd\n"
-#: elf32-frv.c:3195
+#: elf32-frv.c:3196
msgid "%H: R_FRV_GETTLSOFF_RELAX not applied to a calll instruction\n"
msgstr "%H: R_FRV_GETTLSOFF_RELAX pas appliqué à une instruction calll\n"
-#: elf32-frv.c:3249
+#: elf32-frv.c:3250
msgid "%H: R_FRV_GOTTLSOFF12 not applied to an ldi instruction\n"
msgstr "%H: R_FRV_GOTTLSOFF12 pas appliqué à une instruction ldi\n"
-#: elf32-frv.c:3279
+#: elf32-frv.c:3280
msgid "%H: R_FRV_GOTTLSOFFHI not applied to a sethi instruction\n"
msgstr "%H: R_FRV_GOTTLSOFFHI pas appliqué à une instruction sethi\n"
-#: elf32-frv.c:3308
+#: elf32-frv.c:3309
msgid "%H: R_FRV_GOTTLSOFFLO not applied to a setlo or setlos instruction\n"
msgstr "%H: R_FRV_GOTTLSOFFLO pas appliqué à une instruction setlo ou setlos\n"
-#: elf32-frv.c:3338
+#: elf32-frv.c:3339
msgid "%H: R_FRV_TLSOFF_RELAX not applied to an ld instruction\n"
msgstr "%H: R_FRV_TLSOFF_RELAX pas appliqué à une instruction ld\n"
-#: elf32-frv.c:3383
+#: elf32-frv.c:3384
msgid "%H: R_FRV_TLSMOFFHI not applied to a sethi instruction\n"
msgstr "%H: R_FRV_TLSMOFFHI pas appliqué à une instruction sethi\n"
-#: elf32-frv.c:3410
+#: elf32-frv.c:3411
msgid "R_FRV_TLSMOFFLO not applied to a setlo or setlos instruction\n"
msgstr "R_FRV_TLSMOFFLO pas appliqué à une instruction setlo ou setlos\n"
-#: elf32-frv.c:3531
+#: elf32-frv.c:3532
msgid "%H: R_FRV_FUNCDESC references dynamic symbol with nonzero addend\n"
msgstr "%H: R_FRV_FUNCDESC fait référence à un symbole dynamique avec un opérande non nul\n"
-#: elf32-frv.c:3572 elf32-frv.c:3694
+#: elf32-frv.c:3573 elf32-frv.c:3695
msgid "%H: cannot emit fixups in read-only section\n"
msgstr "%H: impossible d'apporter des corrections dans une section en lecture seule\n"
-#: elf32-frv.c:3603 elf32-frv.c:3737
+#: elf32-frv.c:3604 elf32-frv.c:3738
msgid "%H: cannot emit dynamic relocations in read-only section\n"
msgstr "%H: impossible d'éditer les réadressages dynamiques dans une section en lecture seule\n"
-#: elf32-frv.c:3652
+#: elf32-frv.c:3653
msgid "%H: R_FRV_FUNCDESC_VALUE references dynamic symbol with nonzero addend\n"
msgstr "%H: R_FRV_FUNCDESC_VALUE fait référence à un symbole dynamique avec un opérande non nul\n"
-#: elf32-frv.c:3908
+#: elf32-frv.c:3910
+#, c-format
msgid "%H: reloc against `%s' references a different segment\n"
msgstr "%H: le réadressage sur « %s » fait référence à un segment différent\n"
-#: elf32-frv.c:4058
+#: elf32-frv.c:4061
+#, c-format
msgid "%H: reloc against `%s': %s\n"
msgstr "%H: réadressage sur « %s »: %s\n"
-#: elf32-frv.c:6265
+#: elf32-frv.c:6258
+#, c-format
msgid "%B: unsupported relocation type %i\n"
msgstr "%B: type de réadressage %i non supporté\n"
-#: elf32-frv.c:6514
+#: elf32-frv.c:6510
#, c-format
-msgid "%s: compiled with %s and linked with modules that use non-pic relocations"
-msgstr "%s: compilé avec %s et lié avec les modules qui utilisent le réadressage non PIC"
+msgid "%B: compiled with %s and linked with modules that use non-pic relocations"
+msgstr "%B: compilé avec %s et lié avec les modules qui utilisent le réadressage non PIC"
-#: elf32-frv.c:6567 elf32-iq2000.c:828 elf32-m32c.c:812
+#: elf32-frv.c:6564 elf32-iq2000.c:832 elf32-m32c.c:877
#, c-format
-msgid "%s: compiled with %s and linked with modules compiled with %s"
-msgstr "%s: compilé avec %s et lié avec les modules compilés avec %s"
+msgid "%B: compiled with %s and linked with modules compiled with %s"
+msgstr "%B: compilé avec %s et lié avec les modules compilés avec %s"
-#: elf32-frv.c:6579
+#: elf32-frv.c:6577
#, c-format
-msgid "%s: uses different unknown e_flags (0x%lx) fields than previous modules (0x%lx)"
-msgstr "%s: utilise différents champs e_flags (0x%lx) que les modules précédents (0x%lx)"
-
-#: elf32-frv.c:6627 elf32-iq2000.c:865 elf32-m32c.c:848 elf32-mt.c:561
-#: elf32-rl78.c:1069 elf32-rx.c:3040 elf64-ppc.c:5839
-#, c-format
-msgid "private flags = 0x%lx:"
-msgstr "fanions privés = 0x%lx:"
+msgid "%B: uses different unknown e_flags (0x%lx) fields than previous modules (0x%lx)"
+msgstr "%B: utilise différents champs e_flags (0x%lx) que les modules précédents (0x%lx)"
#: elf32-gen.c:69 elf64-gen.c:69
+#, c-format
msgid "%B: Relocations in generic ELF (EM: %d)"
msgstr "%B: Réadressages en format ELF générique (EM: %d)"
-#: elf32-hppa.c:830 elf32-hppa.c:3592
+#: elf32-hppa.c:839 elf32-hppa.c:3599
+#, c-format
msgid "%B(%A+0x%lx): cannot reach %s, recompile with -ffunction-sections"
msgstr "%B(%A+0x%lx): ne peut atteindre %s, recompilez avec -ffunction-sections"
-#: elf32-hppa.c:1268
+#: elf32-hppa.c:1270
+#, c-format
msgid "%B: relocation %s can not be used when making a shared object; recompile with -fPIC"
msgstr "%B: réadressage de %s ne peut être utilisé lors de la création d'un objet partagé; recompilez avec -fPIC"
-#: elf32-hppa.c:2781
+#: elf32-hppa.c:2778
+#, c-format
msgid "%B: duplicate export stub %s"
msgstr "%B: ébauche d'exportation en double %s"
-#: elf32-hppa.c:3427
+#: elf32-hppa.c:3433
+#, c-format
msgid "%B(%A+0x%lx): %s fixup for insn 0x%x is not supported in a non-shared link"
msgstr "%B(%A+0x%lx): correction %s pour insn 0x%x n'est pas supporté dans un lien non partagé"
-#: elf32-hppa.c:4279
+#: elf32-hppa.c:4290
+#, c-format
msgid "%B(%A+0x%lx): cannot handle %s for %s"
msgstr "%B(%A+0x%lx): ne sait pas traiter %s pour %s"
-#: elf32-hppa.c:4598
+#: elf32-hppa.c:4588
msgid ".got section not immediately after .plt section"
msgstr "section .got pas immédiatement après la section .plt"
+#: elf32-i370.c:307
+#, c-format
+msgid "%B: unrecognised I370 reloc number: %d"
+msgstr "%B: numéro de réadressage I370 non reconnu: %d"
+
+#: elf32-i370.c:1168
+msgid "%B: unknown relocation type %d for symbol %s"
+msgstr "%B: type de réadressage %d inconnu pour le symbole %s"
+
+#: elf32-i370.c:1310
+#, c-format
+msgid "%B: Relocation %s is not yet supported for symbol %s."
+msgstr "%B: réadressage %s n'est pas encore supporté pour le symbole %s"
+
#. Unknown relocation.
-#: elf32-i386.c:380 elf32-m68k.c:353 elf32-ppc.c:2035 elf32-s390.c:345
-#: elf32-tic6x.c:2667 elf64-ppc.c:2427 elf64-s390.c:371 elf64-x86-64.c:281
+#: elf32-i386.c:387 elf32-m68k.c:352 elf32-ppc.c:2074 elf32-s390.c:346
+#: elf32-tic6x.c:2674 elf32-wasm32.c:106 elf64-ppc.c:2516 elf64-s390.c:373
+#: elf64-x86-64.c:289
+#, c-format
msgid "%B: invalid relocation type %d"
msgstr "%B: type de réadressage %d invalide"
-#: elf32-i386.c:1394 elf64-x86-64.c:1410
+#: elf32-i386.c:1711 elf64-x86-64.c:1888
+#, c-format
msgid "%B: TLS transition from %s to %s against `%s' at 0x%lx in section `%A' failed"
-msgstr "%B: Échec de la transition TLS de %s vers %s sur «%s» à 0x%lx dans la section «%A»"
+msgstr "%B: Échec de la transition TLS de %s vers %s sur « %s » à 0x%lx dans la section « %A »"
+
+#: elf32-i386.c:1799
+#, c-format
+msgid "%B: direct GOT relocation R_386_GOT32X against `%s' without base register can not be used when making a shared object"
+msgstr "%B: le réadressage GOT direct R_386_GOT32X sur le symbole « %s » sans registre de base ne peut pas être utilisé lors de la création d'un objet partagé"
-#: elf32-i386.c:1642 elf32-s390.c:1233 elf32-sh.c:6263 elf32-tilepro.c:1627
-#: elf32-xtensa.c:1176 elf64-s390.c:1166 elfxx-sparc.c:1596
-#: elfxx-tilegx.c:1836
+#: elf32-i386.c:2237 elf32-s390.c:1188 elf32-sh.c:6056 elf32-tilepro.c:1608
+#: elf32-xtensa.c:1196 elf64-s390.c:1117 elfxx-sparc.c:1625
+#: elfxx-tilegx.c:1817
+#: /Users/gingold/Repositories/fsf/binutils-gdb.git/bfd/elfnn-riscv.c:440
+#, c-format
msgid "%B: `%s' accessed both as normal and thread local symbol"
-msgstr "%B: «%s» accédé à la fois comme symbole normal et comme symbole locale au thread"
+msgstr "%B: « %s » accédé à la fois comme symbole normal et comme symbole locale au thread"
-#: elf32-i386.c:2500 elf64-x86-64.c:2582
-msgid "%P: %B: warning: relocation against `%s' in readonly section `%A'.\n"
-msgstr "%P: %B: attention: réadressage sur « %s » dans la section en lecture seule « %A ».\n"
+#: elf32-i386.c:2314
+#, c-format
+msgid "%B: unsupported non-PIC call to IFUNC `%s'"
+msgstr "%B: appel non-PIC non supporté vers IFUNC « %s »"
+
+#: elf32-i386.c:3189 elf64-x86-64.c:3589
+#, c-format
+msgid "%P: %B: warning: relocation against `%s' in readonly section `%A'\n"
+msgstr "%P: %B: attention: réadressage sur « %s » dans la section en lecture seule « %A »\n"
+
+#: elf32-i386.c:3402 elf64-x86-64.c:3798
+#, c-format
+msgid "%P: %B: warning: relocation in readonly section `%A'\n"
+msgstr "%P: %B: attention: réadressage dans la section « %A » en lecture seule\n"
-#: elf32-i386.c:2740 elf64-x86-64.c:2820
-msgid "%P: %B: warning: relocation in readonly section `%A'.\n"
-msgstr "%P: %B: attention: réadressage dans la section « %A » en lecture seule.\n"
+#: elf32-i386.c:3705 elf64-x86-64.c:4114
+msgid "%P%X: read-only segment has dynamic IFUNC relocations; recompile with -fPIC\n"
+msgstr "%P%X: le segment en lecture seule a des réadressages IFUNC dynamiques; recompilez avec -fPIC\n"
-#: elf32-i386.c:3207 elf32-tilepro.c:2873 elf64-x86-64.c:3275
-#: elfxx-tilegx.c:3172 /src/binutils-gdb/bfd/elfnn-aarch64.c:4099
+#: elf32-i386.c:3945 elf32-tilepro.c:2868 elf64-x86-64.c:4321
+#: elfxx-tilegx.c:3167
+#: /Users/gingold/Repositories/fsf/binutils-gdb.git/bfd/elfnn-aarch64.c:6082
+#, c-format
msgid "%B: unrecognized relocation (0x%x) in section `%A'"
msgstr "%B: réadressage inconnu (0x%x) dans la section « %A »"
-#: elf32-i386.c:3368 elf64-x86-64.c:3380 elfxx-sparc.c:3150
-#: /src/binutils-gdb/bfd/elfnn-aarch64.c:3496
-msgid "%B: relocation %s against STT_GNU_IFUNC symbol `%s' isn't handled by %s"
-msgstr "%B: le réadressage %s sur le symbole STT_GNU_IFUNC « %s » n'est pas géré par %s"
+#: elf32-i386.c:4240 elf64-x86-64.c:4550
+#, c-format
+msgid "%B: relocation %s against STT_GNU_IFUNC symbol `%s' isn't supported"
+msgstr "%B: le réadressage %s sur le symbole STT_GNU_IFUNC « %s » n'est pas supporté"
+
+#: elf32-i386.c:4275 elf32-i386.c:5642 elf32-i386.c:5781 elf64-x86-64.c:4609
+#: elf64-x86-64.c:5982 elf64-x86-64.c:6136
+msgid "Local IFUNC function `%s' in %B\n"
+msgstr "Fonction IFUNC locale « %s » dans %B\n"
+
+#: elf32-i386.c:4508
+#, c-format
+msgid "%B: direct GOT relocation %s against `%s' without base register can not be used when making a shared object"
+msgstr "%B: le réadressage GOT direct %s vers « %s » sans registre de base ne peut pas être utilisé lors de la création d'un objet partagé"
-#: elf32-i386.c:3610 elf64-x86-64.c:3777
+#: elf32-i386.c:4543 elf64-x86-64.c:4816
msgid "hidden symbol"
msgstr "symbole caché"
-#: elf32-i386.c:3613 elf64-x86-64.c:3780
+#: elf32-i386.c:4546 elf64-x86-64.c:4819
msgid "internal symbol"
msgstr "symbole interne"
-#: elf32-i386.c:3616 elf64-x86-64.c:3783
+#: elf32-i386.c:4549 elf64-x86-64.c:4822
msgid "protected symbol"
msgstr "symbole protégé"
-#: elf32-i386.c:3619 elf64-x86-64.c:3786
+#: elf32-i386.c:4552 elf64-x86-64.c:4825
msgid "symbol"
msgstr "symbole"
-#: elf32-i386.c:3624
+#: elf32-i386.c:4558
+#, c-format
msgid "%B: relocation R_386_GOTOFF against undefined %s `%s' can not be used when making a shared object"
msgstr "%B: réadressage R_386_GOTOFF sur le symbole %s « %s » non défini ne peut pas être utilisé lors de la création d'un objet partagé"
-#: elf32-i386.c:3635
-msgid "%B: relocation R_386_GOTOFF against protected function `%s' can not be used when making a shared object"
-msgstr "%B: réadressage R_386_GOTOFF vers la fonction protégée « %s » ne peut pas être utilisé lors de la création d'un objet partagé"
+# « la %s progétée » a un %s qui est remplacé par le texte non traduit « function » ou « data ».
+# Heureusement, cette ligne n'existe plus dans le code source actuel.
+#: elf32-i386.c:4571
+#, c-format
+msgid "%B: relocation R_386_GOTOFF against protected %s `%s' can not be used when making a shared object"
+msgstr "%B: réadressage R_386_GOTOFF vers la %s protégée « %s » ne peut pas être utilisé lors de la création d'un objet partagé"
-#: elf32-i386.c:4923 elf32-tilepro.c:3923 elf64-x86-64.c:4964
-#: elfxx-tilegx.c:4326 /src/binutils-gdb/bfd/elfnn-aarch64.c:7105
+#: elf32-i386.c:6116 elf32-tilepro.c:3920 elf64-x86-64.c:6483
+#: elfxx-tilegx.c:4327
+#: /Users/gingold/Repositories/fsf/binutils-gdb.git/bfd/elfnn-aarch64.c:9261
+#: /Users/gingold/Repositories/fsf/binutils-gdb.git/bfd/elfnn-riscv.c:2522
#, c-format
msgid "discarded output section: `%A'"
-msgstr "section de sortie rejetée: «%A»"
+msgstr "section de sortie rejetée: « %A »"
+
+#: elf32-i386.c:6693 elf64-x86-64.c:7228
+msgid "error: %B: <corrupt x86 ISA used size: 0x%x>"
+msgstr "erreur: %B: <la taille utilisée par l'ISA x86 est corrompue: 0x%x>"
+
+#: elf32-i386.c:6695 elf64-x86-64.c:7230
+msgid "error: %B: <corrupt x86 ISA needed size: 0x%x>"
+msgstr "erreur: %B: <la taille nécessaire pour l'ISA x86 est corrompue: 0x%x>"
+
+#: elf32-i386.c:6696 elf64-x86-64.c:7231
+msgid "error: %B: <corrupt x86 feature size: 0x%x>"
+msgstr "erreur: %B: <la taille des fonctionnalités x86 est corrompue: 0x%x>"
+
+#: elf32-i386.c:6873 elf64-x86-64.c:7408
+#, c-format
+msgid "%F: failed to create GNU property section\n"
+msgstr "%F: échec lors de la création de la section des propriétés GNU\n"
+
+#: elf32-i386.c:6959
+#, c-format
+msgid "%F: failed to create VxWorks dynamic sections\n"
+msgstr "%F: échec lors de la création des sections dynamiques VxWorks\n"
+
+#: elf32-i386.c:7026 elf64-x86-64.c:7568
+#, c-format
+msgid "%F: failed to create GOT sections\n"
+msgstr "%F: échec lors de la création des sections GOT\n"
+
+#: elf32-i386.c:7031 elf64-x86-64.c:7584
+#, c-format
+msgid "%F: failed to create ifunc sections\n"
+msgstr "%F: échec lors de la création des sections ifunc\n"
+
+#: elf32-i386.c:7074 elf64-x86-64.c:7627
+#, c-format
+msgid "%F: failed to create GOT PLT section\n"
+msgstr "%F: échec lors de la création de la section PLT GOT\n"
+
+#: elf32-i386.c:7095 elf64-x86-64.c:7648
+#, c-format
+msgid "%F: failed to create IBT-enabled PLT section\n"
+msgstr "%F: échec lors de la création de la section PLT activée pour IBT\n"
+
+#: elf32-i386.c:7116 elf64-x86-64.c:7684
+#, c-format
+msgid "%F: failed to create PLT .eh_frame section\n"
+msgstr "%F: échec lors de la création de la section .eh_frame PLT\n"
+
+#: elf32-i386.c:7129 elf64-x86-64.c:7698
+#, c-format
+msgid "%F: failed to create GOT PLT .eh_frame section\n"
+msgstr "%F: échec lors de la création de la section .eh_frame PLT GOT\n"
+
+#: elf32-i386.c:7149 elf64-x86-64.c:7414
+#, c-format
+msgid "%F%A: failed to align section\n"
+msgstr "%F%A: échec lors de l'alignement de la section\n"
+
+#: elf32-i960.c:140
+#, c-format
+msgid "%B: invalid i960 reloc number: %d"
+msgstr "%B: numéro de réadressage i960 invalide: %d"
-#: elf32-ip2k.c:857 elf32-ip2k.c:863 elf32-ip2k.c:930 elf32-ip2k.c:936
+#: elf32-ip2k.c:856 elf32-ip2k.c:862 elf32-ip2k.c:929 elf32-ip2k.c:935
msgid "ip2k relaxer: switch table without complete matching relocation information."
msgstr "relâche ip2k: table de commutation sans concordance complète des informations de réadressage"
-#: elf32-ip2k.c:880 elf32-ip2k.c:963
+#: elf32-ip2k.c:879 elf32-ip2k.c:962
msgid "ip2k relaxer: switch table header corrupt."
msgstr "relâche ip2k: en-tête de table de commutation corrompue"
-#: elf32-ip2k.c:1292
+#: elf32-ip2k.c:1245
+#, c-format
+msgid "%B: invalid IP2K reloc number: %d"
+msgstr "%B: numéro de réadressage IP2K invalide: %d"
+
+#: elf32-ip2k.c:1298
#, c-format
msgid "ip2k linker: missing page instruction at 0x%08lx (dest = 0x%08lx)."
msgstr "liaison ip2k: instruction de page manquante à 0x%08lx (cible = 0x%08lx)."
-#: elf32-ip2k.c:1308
+#: elf32-ip2k.c:1315
#, c-format
msgid "ip2k linker: redundant page instruction at 0x%08lx (dest = 0x%08lx)."
msgstr "liaison ip2k: instruction de page redondante à 0x%08lx (cible = 0x%08lx)."
-#: elf32-iq2000.c:841 elf32-m32c.c:824
+#: elf32-iq2000.c:441
+#, c-format
+msgid "%B: invalid IQ2000 reloc number: %d"
+msgstr "%B: numéro de réadressage IQ2000 invalide: %d"
+
+#: elf32-lm32.c:559
#, c-format
-msgid "%s: uses different e_flags (0x%lx) fields than previous modules (0x%lx)"
-msgstr "%s: utilise des champs e_flags (0x%lx) différents des modules précédents (0x%lx)"
+msgid "%B: invalid LM32 reloc number: %d"
+msgstr "%B: numéro de réadressage LM32 invalide: %d"
-#: elf32-lm32.c:698 elf32-nios2.c:2191
+#: elf32-lm32.c:668 elf32-nios2.c:3153
msgid "global pointer relative relocation when _gp not defined"
msgstr "réadressage relatif au pointeur global sans que _gp ne soit défini"
-#: elf32-lm32.c:753 elf32-nios2.c:2623
+#: elf32-lm32.c:723 elf32-nios2.c:3590
msgid "global pointer relative address out of range"
msgstr "adresse relative du pointeur global hors limites"
-#: elf32-lm32.c:1049
+#: elf32-lm32.c:1018
msgid "internal error: addend should be zero for R_LM32_16_GOT"
msgstr "erreur interne: opérande devrait être zéro pour R_LM32_16_GOT"
-#: elf32-m32r.c:1453
+#: elf32-m32c.c:305
+#, c-format
+msgid "%B: invalid M32C reloc number: %d"
+msgstr "%B: numéro de réadressage M32C invalide: %d"
+
+#: elf32-m32r.c:1286
+#, c-format
+msgid "%B: invalid M32R reloc number: %d"
+msgstr "%B: numéro de réadressage M32R invalide: %d"
+
+#: elf32-m32r.c:1458
msgid "SDA relocation when _SDA_BASE_ not defined"
msgstr "réadressage SDA alors que _SDA_BASE_ n'est pas défini"
-#: elf32-m32r.c:3003
+#: elf32-m32r.c:2984 elf32-microblaze.c:1080 elf32-microblaze.c:1128
+#, c-format
msgid "%B: The target (%s) of an %s relocation is in the wrong section (%A)"
msgstr "%B: la cible (%s) du réadressage %s est dans la mauvaise section (%A)"
-#: elf32-m32r.c:3529
+#: elf32-m32r.c:3486
msgid "%B: Instruction set mismatch with previous modules"
msgstr "%B: jeu d'instructions ne concorde par avec les modules précédents"
-#: elf32-m32r.c:3550 elf32-nds32.c:5636
+#: elf32-m32r.c:3507 elf32-nds32.c:6111
#, c-format
msgid "private flags = %lx"
msgstr "fanions privés = %lx"
-#: elf32-m32r.c:3555
+#: elf32-m32r.c:3512
#, c-format
msgid ": m32r instructions"
msgstr ": instructions m32r"
-#: elf32-m32r.c:3556
+#: elf32-m32r.c:3513
#, c-format
msgid ": m32rx instructions"
msgstr ": instruction m32rx"
-#: elf32-m32r.c:3557
+#: elf32-m32r.c:3514
#, c-format
msgid ": m32r2 instructions"
msgstr ": instructions m32r2"
-#: elf32-m68hc1x.c:1114
+#: elf32-m68hc11.c:390
+#, c-format
+msgid "%B: invalid M68HC11 reloc number: %d"
+msgstr "%B: numéro de réadressage M68HC11 invalide: %d"
+
+#: elf32-m68hc12.c:510
+#, c-format
+msgid "%B: invalid M68HC12 reloc number: %d"
+msgstr "%B: numéro de réadressage M68HC12 invalide: %d"
+
+#: elf32-m68hc1x.c:1119
#, c-format
msgid "Reference to the far symbol `%s' using a wrong relocation may result in incorrect execution"
msgstr "Référence à un symbole far « %s » utilisant le mauvais réadressage peut provoquer une exécution incorrecte"
-#: elf32-m68hc1x.c:1150
+#: elf32-m68hc1x.c:1153
#, c-format
msgid "XGATE address (%lx) is not within shared RAM(0xE000-0xFFFF), therefore you must manually offset the address, and possibly manage the page, in your code."
msgstr "l'adresse XGATE (%lx) n'est pas dans la mémoire RAM partagée (0xE000-0xFFFF), par conséquent, vous devez décaler l'adresse manuellement, et peut-être gérer la page, dans votre code."
-#: elf32-m68hc1x.c:1170
+#: elf32-m68hc1x.c:1171
#, c-format
msgid "banked address [%lx:%04lx] (%lx) is not in the same bank as current banked address [%lx:%04lx] (%lx)"
msgstr "banque d'adresses [%lx:%04lx] (%lx) n'es pas dans la même banque que la banque courante d'adresses [%lx:%04lx] (%lx)"
-#: elf32-m68hc1x.c:1190
+#: elf32-m68hc1x.c:1187
#, c-format
msgid "reference to a banked address [%lx:%04lx] in the normal address space at %04lx"
msgstr "référence à une banque d'adresses [%lx:%04lx] dans l'espace normal d'adresses à %04lx"
-#: elf32-m68hc1x.c:1237
+#: elf32-m68hc1x.c:1228
#, c-format
msgid "S12 address (%lx) is not within shared RAM(0x2000-0x4000), therefore you must manually offset the address in your code"
msgstr "l'adresse S12 (%lx) n'est pas dans la mémoire RAM partagée (0x2000-0x4000), par conséquent, vous devez décaler l'adresse manuellement dans votre code"
-#: elf32-m68hc1x.c:1370
+#: elf32-m68hc1x.c:1355
msgid "%B: linking files compiled for 16-bit integers (-mshort) and others for 32-bit integers"
msgstr "%B: fichiers liés compilés pour des entiers de 16 bits (-mshort) et d'autres pour des entiers de 32 bits"
-#: elf32-m68hc1x.c:1377
+#: elf32-m68hc1x.c:1362
msgid "%B: linking files compiled for 32-bit double (-fshort-double) and others for 64-bit double"
msgstr "%B: fichiers liés compilés pour des doubles de 32 bits (-fshort-double) et d'autres pour des doubles de 64 bits"
-#: elf32-m68hc1x.c:1386
+#: elf32-m68hc1x.c:1371
msgid "%B: linking files compiled for HCS12 with others compiled for HC12"
msgstr "%B: certains fichiers liés compilés pour HCS12 avec d'autres compilés pour HC12"
-#: elf32-m68hc1x.c:1402 elf32-ppc.c:4776 elf64-sparc.c:706 elfxx-mips.c:14817
-msgid "%B: uses different e_flags (0x%lx) fields than previous modules (0x%lx)"
-msgstr "%B: utilise des champs e_flags (0x%lx) différents des modules précédents (0x%lx)"
-
-#: elf32-m68hc1x.c:1430 elf32-xgate.c:677
+#: elf32-m68hc1x.c:1416 elf32-xgate.c:672
#, c-format
msgid "[abi=32-bit int, "
msgstr "[abi=32-bit int, "
-#: elf32-m68hc1x.c:1432 elf32-xgate.c:679
+#: elf32-m68hc1x.c:1418 elf32-xgate.c:674
#, c-format
msgid "[abi=16-bit int, "
msgstr "[abi=16-bit int, "
-#: elf32-m68hc1x.c:1435 elf32-xgate.c:682
+#: elf32-m68hc1x.c:1421 elf32-xgate.c:677
#, c-format
msgid "64-bit double, "
msgstr "double de 64 bits, "
-#: elf32-m68hc1x.c:1437 elf32-xgate.c:684
+#: elf32-m68hc1x.c:1423 elf32-xgate.c:679
#, c-format
msgid "32-bit double, "
msgstr "double de 32 bits, "
-#: elf32-m68hc1x.c:1440
+#: elf32-m68hc1x.c:1426
#, c-format
msgid "cpu=HC11]"
msgstr "cpu=HC11]"
-#: elf32-m68hc1x.c:1442
+#: elf32-m68hc1x.c:1428
#, c-format
msgid "cpu=HCS12]"
msgstr "cpu=HCS12]"
-#: elf32-m68hc1x.c:1444
+#: elf32-m68hc1x.c:1430
#, c-format
msgid "cpu=HC12]"
msgstr "cpu=HC12]"
-#: elf32-m68hc1x.c:1447
+#: elf32-m68hc1x.c:1433
#, c-format
msgid " [memory=bank-model]"
msgstr " [memory=bank-model]"
-#: elf32-m68hc1x.c:1449
+#: elf32-m68hc1x.c:1435
#, c-format
msgid " [memory=flat]"
msgstr " [memory=flat]"
-#: elf32-m68hc1x.c:1452
+#: elf32-m68hc1x.c:1438
#, c-format
msgid " [XGATE RAM offsetting]"
msgstr " [décalage RAM XGATE]"
-#: elf32-m68k.c:1210 elf32-m68k.c:1211 vms-alpha.c:7207 vms-alpha.c:7222
+#: elf32-m68k.c:1215 elf32-m68k.c:1216 vms-alpha.c:7400 vms-alpha.c:7416
msgid "unknown"
msgstr "inconnu"
-#: elf32-m68k.c:1674
+#: elf32-m68k.c:1680
+#, c-format
msgid "%B: GOT overflow: Number of relocations with 8-bit offset > %d"
msgstr "%B: débordement GOT: Nombre de réadressages avec des offsets de 8 bits > %d"
-#: elf32-m68k.c:1680
+#: elf32-m68k.c:1687
+#, c-format
msgid "%B: GOT overflow: Number of relocations with 8- or 16-bit offset > %d"
msgstr "%B: débordement GOT: Nombre de réadressages avec des offsets de 8 ou 16 bits > %d"
-#: elf32-m68k.c:3921
+#: elf32-m68k.c:3890
+#, c-format
msgid "%B(%A+0x%lx): R_68K_TLS_LE32 relocation not permitted in shared object"
msgstr "%B(%A+0x%lx): réadressage R_68K_TLS_LE32 pas permis dans un objet partagé"
-#: elf32-mcore.c:99 elf32-mcore.c:442
+#: elf32-mcore.c:100 elf32-mcore.c:455
+#, c-format
msgid "%B: Relocation %s (%d) is not currently supported.\n"
msgstr "%B: Réadressage %s (%d) n'est pas actuellement supporté.\n"
-#: elf32-mcore.c:428
+#: elf32-mcore.c:355
+#, c-format
+msgid "%B: unrecognised MCore reloc number: %d"
+msgstr "%B: numéro de réadressage MCore non reconnu: %d"
+
+#: elf32-mcore.c:440
+#, c-format
msgid "%B: Unknown relocation type %d\n"
msgstr "%B: Type de réadressage %d inconnu\n"
#. Pacify gcc -Wall.
-#: elf32-mep.c:157
+#: elf32-mep.c:139
#, c-format
msgid "mep: no reloc for code %d"
msgstr "mep: pas de réadressage pour le code %d"
-#: elf32-mep.c:163
+#: elf32-mep.c:146
#, c-format
msgid "MeP: howto %d has type %d"
msgstr "MeP: le howto %d a le type %d"
-#: elf32-mep.c:632
+#: elf32-mep.c:390
+#, c-format
+msgid "%B: invalid MEP reloc number: %d"
+msgstr "%B: numéro de réadressage MEP invalide: %d"
+
+#: elf32-mep.c:620
+#, c-format
msgid "%B and %B are for different cores"
msgstr "%B et %B sont pour des noyaux différents"
-#: elf32-mep.c:649
+#: elf32-mep.c:639
+#, c-format
msgid "%B and %B are for different configurations"
msgstr "%B et %B sont pour des configurations différentes"
-#: elf32-mep.c:686
+#: elf32-mep.c:677
#, c-format
msgid "private flags = 0x%lx"
msgstr "fanions privés = 0x%lx"
-#: elf32-metag.c:1921
-msgid "%B(%A+0x%lx): R_METAG_TLS_LE/IENONPIC relocation not permitted in shared object"
-msgstr "%B(%A+0x%lx): réadressage R_METAG_TLS_LE/IENONPIC pas permis dans un objet partagé"
+#: elf32-metag.c:893
+#, c-format
+msgid "%B: invalid METAG reloc number: %d"
+msgstr "%B: numéro de réadressage METAG invalide: %d"
+
+#: elf32-metag.c:1875
+msgid "%B(%A): multiple TLS models are not supported"
+msgstr "%B(%A): l'utilisation de plusieurs modèles TLS n'est pas supporté"
-#: elf32-microblaze.c:950
+#: elf32-metag.c:1878
+msgid "%B(%A): shared library symbol %s encountered whilst performing a static link"
+msgstr "%B(%A): symbole de bibliothèque partagée %s rencontré en réalisant une édition de liens statiques"
+
+#: elf32-metag.c:1931
#, c-format
-msgid "%s: unknown relocation type %d"
-msgstr "%s: type de réadressage %d inconnu"
+msgid "%B(%A+0x%lx): R_METAG_TLS_LE/IENONPIC relocation not permitted in shared object"
+msgstr "%B(%A+0x%lx): réadressage R_METAG_TLS_LE/IENONPIC pas permis dans un objet partagé"
-#: elf32-microblaze.c:1076 elf32-microblaze.c:1121
+#: elf32-microblaze.c:656
#, c-format
-msgid "%s: The target (%s) of an %s relocation is in the wrong section (%s)"
-msgstr "%s: la cible (%s) du réadressage %s est dans la mauvaise section (%s)"
+msgid "%B: unrecognised MicroBlaze reloc number: %d"
+msgstr "%B: numéro de réadressage MicroBlaze non reconnu: %d"
-#: elf32-microblaze.c:1484 elf32-tilepro.c:3320 elfxx-sparc.c:3526
-#: elfxx-tilegx.c:3729
+#: elf32-microblaze.c:1496 elf32-or1k.c:1072 elf32-tilepro.c:3317
+#: elfxx-sparc.c:3705 elfxx-tilegx.c:3726
msgid "%B: probably compiled without -fPIC?"
msgstr "%B: probablement compilé sans -fPIC?"
-#: elf32-mips.c:1670 elf64-mips.c:2990 elfn32-mips.c:2793
+#: elf32-mips.c:1777 elf64-mips.c:3200 elfn32-mips.c:3010
msgid "literal relocation occurs for an external symbol"
msgstr "réadressage littéral rencontré pour un symbole externe"
-#: elf32-mips.c:1717 elf32-score.c:570 elf32-score7.c:469 elf64-mips.c:3033
-#: elfn32-mips.c:2834
+#: elf32-mips.c:1824 elf32-score.c:569 elf32-score7.c:469 elf64-mips.c:3243
+#: elfn32-mips.c:3051
msgid "32bits gp relative relocation occurs for an external symbol"
msgstr "réadressage relatif gp 32bits rencontré pour un symbole externe"
-#: elf32-msp430.c:801 elf32-msp430.c:1109
+#: elf32-mips.c:2225
+#, c-format
+msgid "Unrecognised MIPS reloc number: %d"
+msgstr "Numéro de réadressage MIPS non reconnu: %d"
+
+#: elf32-moxie.c:137
+#, c-format
+msgid "%B: invalid Moxie reloc number: %d"
+msgstr "%B: numéro de réadressage Moxie invalide: %d"
+
+#: elf32-msp430.c:648
+#, c-format
+msgid "%B: invalid MSP430X reloc number: %d"
+msgstr "%B: numéro de réadressage MSP430X invalide: %d"
+
+#: elf32-msp430.c:658
+#, c-format
+msgid "%B: invalid MSP430 reloc number: %d"
+msgstr "%B: numéro de réadressage MSP430 invalide: %d"
+
+#: elf32-msp430.c:836 elf32-msp430.c:1150
msgid "Try enabling relaxation to avoid relocation truncations"
msgstr "Essayez d'activer la relaxation pour éviter des réadressages tronqués"
-#: elf32-msp430.c:1317
+#: elf32-msp430.c:1357
msgid "internal error: branch/jump to an odd address detected"
msgstr "erreur interne: branchement/saut vers une adresse impaire détecté"
-#: elf32-msp430.c:2221
+#: elf32-msp430.c:2354
+#, c-format
msgid "Warning: %B: Unknown MSPABI object attribute %d"
msgstr "Attention: %B: Attribut d'objet MSPBI %d inconnu"
-#: elf32-msp430.c:2312
+#: elf32-msp430.c:2447
+#, c-format
msgid "error: %B uses %s instructions but %B uses %s"
msgstr "erreur: %B utilise les instructions %s alors que %B utilise %s"
-#: elf32-msp430.c:2324
+#: elf32-msp430.c:2459
+#, c-format
msgid "error: %B uses the %s code model whereas %B uses the %s code model"
msgstr "erreur: %B utilise le modèle de code %s alors que %B utilise le modèle de code %s"
-#: elf32-msp430.c:2336
+#: elf32-msp430.c:2471
+#, c-format
msgid "error: %B uses the large code model but %B uses MSP430 instructions"
msgstr "erreur: %B utilise le grand modèle de code alors que %B utilise les instructions MSP430"
-#: elf32-msp430.c:2346
+#: elf32-msp430.c:2482
+#, c-format
msgid "error: %B uses the %s data model whereas %B uses the %s data model"
msgstr "erreur: %B utilise le modèle de données %s alors que %B utilise le modèle de données %s"
-#: elf32-msp430.c:2358
+#: elf32-msp430.c:2494
+#, c-format
msgid "error: %B uses the small code model but %B uses the %s data model"
msgstr "erreur: %B utilise le petit modèle de code alors que %B utilise le modèle de données %s"
-#: elf32-msp430.c:2369
+#: elf32-msp430.c:2506
+#, c-format
msgid "error: %B uses the %s data model but %B only uses MSP430 instructions"
msgstr "erreur: %B utilise le modèle de données %s alors que %B utilise uniquement des instructions MSP430"
-#: elf32-nds32.c:2921
+#: elf32-mt.c:242
+#, c-format
+msgid "%B: invalid MT reloc number: %d"
+msgstr "%B: numéro de réadressage MT invalide: %d"
+
+#: elf32-nds32.c:2974
+#, c-format
+msgid "%B: invalid NDS32 reloc number: %d"
+msgstr "%B: numéro de réadressage NDS32 invalide: %d"
+
+#: elf32-nds32.c:3309
msgid "error: Can't find symbol: _SDA_BASE_."
msgstr "erreur: Le symbole ne peut être trouvé: _SDA_BASE_."
-#: elf32-nds32.c:4142
+#: elf32-nds32.c:4484 elf32-nds32.c:11978
+msgid "%B: error: Cannot set _ITB_BASE_"
+msgstr "%B: erreur: Ne peut définir _ITB_BASE_"
+
+#: elf32-nds32.c:4492
+msgid "error: IFC relocation error."
+msgstr "erreur: erreur de réadressage IFC."
+
+#: elf32-nds32.c:4526
+#, c-format
msgid "%B: error: unknown relocation type %d."
msgstr "%B: erreur: type de réadressage %d inconnu."
-#: elf32-nds32.c:4584
-#, c-format
-msgid "%s: warning: cannot deal R_NDS32_25_ABS_RELA in shared mode."
-msgstr "%s: attention: ne peut gérer R_NDS32_25_ABS_RELA en mode partagé."
+#: elf32-nds32.c:4972
+msgid "%B: warning: cannot deal R_NDS32_25_ABS_RELA in shared mode."
+msgstr "%B: attention: ne peut gérer R_NDS32_25_ABS_RELA en mode partagé."
-#: elf32-nds32.c:4716
+#: elf32-nds32.c:5106
msgid "%B: warning: unaligned access to GOT entry."
msgstr "%B: attention: accès non aligné à une entrée GOT."
-#: elf32-nds32.c:4758
+#: elf32-nds32.c:5148
msgid "%B: warning: relocate SDA_BASE failed."
msgstr "%B: attention: réadressage SDA_BASE a échoué."
-#: elf32-nds32.c:4779
+#: elf32-nds32.c:5170
+#, c-format
msgid "%B(%A): warning: unaligned small data access of type %d."
msgstr "%B(%A): attention: accès non aligné à une petite donnée de type %d."
-#: elf32-nds32.c:5446
+#: elf32-nds32.c:5918
+#, c-format
msgid "%B: ISR vector size mismatch with previous modules, previous %u-byte, current %u-byte"
msgstr "%B: Taille de vecteur ISR en désaccord avec les modules précédents: précédent a %u octets; actuel a %u octets"
-#: elf32-nds32.c:5489
+#: elf32-nds32.c:5962
msgid "%B: warning: Endian mismatch with previous modules."
msgstr "%B: attention: L'ordre des octets n'est pas le même que dans les modules précédents."
-#: elf32-nds32.c:5499
+#: elf32-nds32.c:5972
msgid "%B: warning: Older version of object file encountered, Please recompile with current tool chain."
msgstr "%B: attention: Version plus ancienne du fichier objet rencontrée. Veuillez recompiler avec la chaîne d'outils actuelle."
-#: elf32-nds32.c:5577
+#: elf32-nds32.c:6050
msgid "%B: error: ABI mismatch with previous modules."
msgstr "%B: erreur: non concordance de l'ABI avec les modules précédents."
-#: elf32-nds32.c:5588
+#: elf32-nds32.c:6061
msgid "%B: error: Instruction set mismatch with previous modules."
msgstr "%B: erreur: Jeu d'instructions ne concorde par avec les modules précédents."
-#: elf32-nds32.c:5612
+#: elf32-nds32.c:6087
+#, c-format
msgid "%B: warning: Incompatible elf-versions %s and %s."
msgstr "%B: attention: Versions elf %s et %s non compatibles."
-#: elf32-nds32.c:5642
+#: elf32-nds32.c:6117
#, c-format
msgid ": n1 instructions"
msgstr ": instructions n1"
-#: elf32-nds32.c:5645
+#: elf32-nds32.c:6120
#, c-format
msgid ": n1h instructions"
msgstr ": instructions n1h"
-#: elf32-nds32.c:8147
-msgid "%B: %s\n"
-msgstr "%B: %s\n"
+#: elf32-nds32.c:8730
+msgid "%B: Error: search_nds32_elf_blank reports wrong node\n"
+msgstr "%B: Erreur: search_nds32_elf_blank rapporte le mauvais nœud\n"
-#: elf32-nds32.c:8449
-msgid "%B(%A): warning: relax is suppressed for sections of alignment %d-bytes > 4-byte."
-msgstr "%B(%A): attention: la relaxation est supprimée pour les sections avec l'alignement %d octets > 4 octets."
+#: elf32-nds32.c:8989
+#, c-format
+msgid "%B: warning: %s points to unrecognized reloc at 0x%lx."
+msgstr "%B: attention: %s pointe vers le réadressage non reconnu à 0x%lx."
-#: elf32-nds32.c:8502
-msgid "%B: error: Cannot set _ITB_BASE_"
-msgstr "%B: erreur: Ne peut définir _ITB_BASE_"
+#: elf32-nds32.c:11850 elf32-nds32.c:11867
+msgid "error: Jump IFC Fail."
+msgstr "erreur: Saut IFC a échoué."
-#: elf32-nds32.c:11384
+#: elf32-nds32.c:12724
+#, c-format
msgid "%B: Nested OMIT_FP in %A."
msgstr "%B: OMIT_FP imbriqués dans %A."
-#: elf32-nds32.c:11401
+#: elf32-nds32.c:12743
+#, c-format
msgid "%B: Unmatched OMIT_FP in %A."
msgstr "%B: OMIT_FP non apparié dans %A."
-#: elf32-nds32.c:13357
+#: elf32-nds32.c:13026 reloc.c:8231
+#, c-format
+msgid "%X%P: %B(%A): relocation \"%R\" goes out of range\n"
+msgstr "%X%P: %B(%A): réadressage « %R » va en dehors des limites\n"
+
+#: elf32-nds32.c:14802
msgid "Linker: cannot init ex9 hash table error \n"
msgstr "Lieur: ne peut initialiser la table de hachage ex9 \n"
-#: elf32-nds32.c:13790 elf32-nds32.c:13804
+#: elf32-nds32.c:15211 elf32-nds32.c:15225
msgid "Linker: error cannot fixed ex9 relocation \n"
msgstr "Lieur: ne peut réadresser ex9 fixé \n"
-#: elf32-nds32.c:14015
+#: elf32-nds32.c:15436
#, c-format
-msgid "%s: warning: unaligned small data access. For entry: {%d, %d, %d}, addr = 0x%x, align = 0x%x."
-msgstr "%s: attention: accès non aligné à une petite donnée. Pour l'entrée: {%d, %d, %d}, adr = 0x%x, alignement = 0x%x."
+msgid "%B: warning: unaligned small data access. For entry: {%d, %d, %d}, addr = 0x%x, align = 0x%x."
+msgstr "%B: attention: accès non aligné à une petite donnée. Pour l'entrée: {%d, %d, %d}, adr = 0x%x, alignement = 0x%x."
-#: elf32-nds32.c:14047
+#: elf32-nds32.c:15469
msgid "%P%F: failed creating ex9.it %s hash table: %E\n"
msgstr "%P%F: échec de la création de la table de hachage ex9.it %s: %E\n"
-#: elf32-nios2.c:2861
+#: elf32-nios2.c:2949
+msgid "error: %B: Big-endian R2 is not supported."
+msgstr "erreur: %B: R2 gros boutiste n'est pas supporté."
+
+#: elf32-nios2.c:3830
#, c-format
msgid "global pointer relative relocation at address 0x%08x when _gp not defined\n"
msgstr "réadressage relatif au pointeur global à l'adresse 0x%08x sans que _gp ne soit défini\n"
-#: elf32-nios2.c:2878
+#: elf32-nios2.c:3850
#, c-format
msgid "Unable to reach %s (at 0x%08x) from the global pointer (at 0x%08x) because the offset (%d) is out of the allowed range, -32678 to 32767.\n"
msgstr "Impossible d'atteindre %s (à 0x%08x) depuis le pointeur global (à 0x%08x) car l'offset (%d) est en dehors de la plage autorisée -32768 à 32767.\n"
-#: elf32-nios2.c:3392
+#: elf32-nios2.c:4372
+#, c-format
msgid "%B(%A+0x%lx): R_NIOS2_TLS_LE16 relocation not permitted in shared object"
msgstr "%B(%A+0x%lx): réadressage R_NIOS2_TLS_LE16 pas permis dans un objet partagé"
-#: elf32-nios2.c:3520
+#: elf32-nios2.c:4500 elf32-pru.c:816
msgid "relocation out of range"
msgstr "réadressage hors limite"
-#: elf32-nios2.c:3530 elf32-tic6x.c:2744
+#: elf32-nios2.c:4510 elf32-pru.c:826 elf32-tic6x.c:2747
msgid "dangerous relocation"
msgstr "réadressage dangereux"
-#: elf32-nios2.c:4529
+#: elf32-nios2.c:5491
#, c-format
msgid "dynamic variable `%s' is zero size"
-msgstr "la variable dynamique «%s» a une taille nulle"
+msgstr "la variable dynamique « %s » a une taille nulle"
+
+#: elf32-or1k.c:735
+#, c-format
+msgid "%B: invalid OR1K reloc number: %d"
+msgstr "%B: numéro de réadressage OR1K invalide: %d"
+
+#: elf32-or1k.c:985
+msgid "internal error: addend should be zero for R_OR1K_GOT16"
+msgstr "erreur interne: opérande devrait être zéro pour R_OR1K_GOT16"
+
+#: elf32-or1k.c:1094
+msgid "%B: support for local dynamic not implemented"
+msgstr "%B: support pour les dynamiques locaux pas implémentée"
+
+#: elf32-or1k.c:1229
+msgid "%B: will not resolve runtime TLS relocation"
+msgstr "%B: le réadressage TLS ne sera pas résolu à l'exécution"
+
+#: elf32-or1k.c:1599
+#, c-format
+msgid "%B: bad relocation section name `%s'"
+msgstr "%B: nom de section de réadressage erroné « %s »"
+
+#: elf32-or1k.c:2704
+msgid "%B: EF_OR1K_NODELAY flag mismatch with previous modules"
+msgstr "%B: désaccord du fanion EF_OR1K_NODELAY avec les modules précédents"
-#: elf32-ppc.c:2100
+#: elf32-pj.c:325
+#, c-format
+msgid "%B: unrecognised PicoJava reloc number: %d"
+msgstr "%B: numéro de réadressage PicoJava non reconnu: %d"
+
+#: elf32-ppc.c:2062
+#, c-format
+msgid "%B: unrecognised PPC reloc number: %d"
+msgstr "%B: numéro de réadressage PPC non reconnu: %d"
+
+#: elf32-ppc.c:2147
#, c-format
msgid "generic linker can't handle %s"
msgstr "liaison générique ne peut traiter %s"
-#: elf32-ppc.c:2642
+#: elf32-ppc.c:2781
+#, c-format
msgid "corrupt %s section in %B"
msgstr "section %s corrompue dans %B"
-#: elf32-ppc.c:2661
+#: elf32-ppc.c:2801
+#, c-format
msgid "unable to read in %s section from %B"
msgstr "incapable de lire dans la section %s à partir de %B"
-#: elf32-ppc.c:2702
+#: elf32-ppc.c:2843
+#, c-format
msgid "warning: unable to set size of %s section in %B"
msgstr "attention: incapable d'initialiser la taille de la section %s dans %B"
-#: elf32-ppc.c:2752
+#: elf32-ppc.c:2893
msgid "failed to allocate space for new APUinfo section."
msgstr "échec d'allocation d'espace pour une nouvelle section APUinfo"
-#: elf32-ppc.c:2771
+#: elf32-ppc.c:2912
msgid "failed to compute new APUinfo section."
msgstr "échec d'évaluation de la nouvelle section APUinfo"
-#: elf32-ppc.c:2774
+#: elf32-ppc.c:2915
msgid "failed to install new APUinfo section."
msgstr "échec d'installation de la nouvelle section APUinfo"
-#: elf32-ppc.c:3844
+#: elf32-ppc.c:3975
+#, c-format
msgid "%B: relocation %s cannot be used when making a shared object"
msgstr "%B: réadressage %s ne peut être utilisé lors de la création d'un objet partagé"
-#. It does not make sense to have a procedure linkage
-#. table entry for a local symbol.
-#: elf32-ppc.c:4218
-msgid "%P: %H: %s reloc against local symbol\n"
-msgstr "%P: %H: %s réadressé par rapport à un symbole local\n"
-
-#: elf32-ppc.c:4299
-msgid "%P: %H: @local call to ifunc %s\n"
-msgstr "%P: %H: appel @local à ifunc %s\n"
+#: elf32-ppc.c:4329 elf64-ppc.c:5591
+#, c-format
+msgid "%H: %s reloc against local symbol\n"
+msgstr "%H: %s est réadressé par rapport à un symbole local\n"
-#: elf32-ppc.c:4588 elf32-ppc.c:4603
+#: elf32-ppc.c:4691 elf32-ppc.c:4695
+#, c-format
msgid "Warning: %B uses hard float, %B uses soft float"
msgstr "Attention: %B utilise la virgule flottante matérielle, %B utilise la virgule flottante logicielle"
-#: elf32-ppc.c:4591 elf32-ppc.c:4595
+#: elf32-ppc.c:4699 elf32-ppc.c:4704
+#, c-format
msgid "Warning: %B uses double-precision hard float, %B uses single-precision hard float"
msgstr "Attention: %B utilise la virgule flottante double précision matérielle, %B utilise la virgule flottante simple précision matérielle"
-#: elf32-ppc.c:4599
-msgid "Warning: %B uses soft float, %B uses single-precision hard float"
-msgstr "Attention: %B utilise la virgule flottante logicielle, %B utilise la virgule flottante simple précision matérielle"
-
-#: elf32-ppc.c:4606 elf32-ppc.c:4610
-msgid "Warning: %B uses unknown floating point ABI %d"
-msgstr "Attention: %B utilise l'ABI inconnu %d pour la gestion des virgules flottantes"
+#: elf32-ppc.c:4719 elf32-ppc.c:4724
+#, c-format
+msgid "Warning: %B uses 64-bit long double, %B uses 128-bit long double"
+msgstr "Attention: %B utilise un double long 64 bits, %B utilise un double long de 128 bits"
-#: elf32-ppc.c:4652 elf32-ppc.c:4656
-msgid "Warning: %B uses unknown vector ABI %d"
-msgstr "Attention: %B utilise l'ABI inconnu %d pour les vecteurs"
+#: elf32-ppc.c:4729 elf32-ppc.c:4734
+#, c-format
+msgid "Warning: %B uses IBM long double, %B uses IEEE long double"
+msgstr "Attention: %B utilise un double long IBM, %B utilise un double long IEEE"
-#: elf32-ppc.c:4660
-msgid "Warning: %B uses vector ABI \"%s\", %B uses \"%s\""
-msgstr "Attention: %B utilise l'ABI de vecteurs «%s», %B utilise «%s»"
+#: elf32-ppc.c:4785 elf32-ppc.c:4790
+#, c-format
+msgid "Warning: %B uses AltiVec vector ABI, %B uses SPE vector ABI"
+msgstr "Attention: %B utilise l'ABI de vecteurs AltiVec, %B utilise l'ABI de vecteurs SPE"
-#: elf32-ppc.c:4677 elf32-ppc.c:4680
+#: elf32-ppc.c:4813 elf32-ppc.c:4818
+#, c-format
msgid "Warning: %B uses r3/r4 for small structure returns, %B uses memory"
msgstr "Attention: %B utilise r3/r4 pour les retours de petites structures, %B utilise la mémoire"
-#: elf32-ppc.c:4683 elf32-ppc.c:4687
-msgid "Warning: %B uses unknown small structure return convention %d"
-msgstr "Attention: %B utilise la convention inconnue %d pour le retour des petites structures"
-
-#: elf32-ppc.c:4741
+#: elf32-ppc.c:4873
msgid "%B: compiled with -mrelocatable and linked with modules compiled normally"
msgstr "%B: compilé avec -mrelocatable et fait l'édition de lien avec les modules compilés normalement"
-#: elf32-ppc.c:4749
+#: elf32-ppc.c:4881
msgid "%B: compiled normally and linked with modules compiled with -mrelocatable"
msgstr "%B: compilé normalement et fait l'édition de lien avec les modules compilés avec -mrelocatable"
-#: elf32-ppc.c:4872
+#: elf32-ppc.c:4909
+#, c-format
+msgid "%B: uses different e_flags (%#x) fields than previous modules (%#x)"
+msgstr "%B: utilise des champs e_flags (%#x) différents des modules précédents (%#x)"
+
+#: elf32-ppc.c:4950
+#, c-format
+msgid "%B(%A+0x%lx): expected 16A style relocation on 0x%08x insn"
+msgstr "%B(%A+0x%lx): réadressage du style 16A attendu sur l'insn 0x%08x"
+
+#: elf32-ppc.c:4969
+#, c-format
+msgid "%B(%A+0x%lx): expected 16D style relocation on 0x%08x insn"
+msgstr "%B(%A+0x%lx): réadressage du style 16D attendu sur l'insn 0x%08x"
+
+#: elf32-ppc.c:5043
msgid "%P: bss-plt forced due to %B\n"
msgstr "%P: bss-plt forcé à cause de %B\n"
-#: elf32-ppc.c:4875
+#: elf32-ppc.c:5046
msgid "%P: bss-plt forced by profiling\n"
msgstr "%P: bss-plt forcé par le profilage\n"
@@ -2216,810 +3168,1129 @@ msgstr "%P: bss-plt forcé par le profilage\n"
#. could just mark this symbol to exclude it
#. from tls optimization but it's safer to skip
#. the entire optimization.
-#: elf32-ppc.c:5369 elf64-ppc.c:8371
+#: elf32-ppc.c:5544 elf64-ppc.c:8798
+#, c-format
msgid "%H arg lost __tls_get_addr, TLS optimization disabled\n"
msgstr "%H l'argument a perdu __tls_get_addr, optimisation TLS désactivée\n"
-#: elf32-ppc.c:7927
+#: elf32-ppc.c:8249
+msgid "%H: fixup branch overflow\n"
+msgstr "%H: débordement du branchement de correction\n"
+
+#: elf32-ppc.c:8289 elf32-ppc.c:8324
+#, c-format
+msgid "%H: error: %s with unexpected instruction %x\n"
+msgstr "%H: erreur: %s avec l'instruction inattendue %x\n"
+
+#: elf32-ppc.c:8380
+#, c-format
+msgid "%X%H: unsupported bss-plt -fPIC ifunc %s\n"
+msgstr "%X%H: bss-plt -fPIC ifunc %s non supporté\n"
+
+#: elf32-ppc.c:8434
+#, c-format
msgid "%P: %B: unknown relocation type %d for symbol %s\n"
msgstr "%P: %B: type de réadressage %d inconnu pour le symbole %s\n"
-#: elf32-ppc.c:8191
-msgid "%P: %H: non-zero addend on %s reloc against `%s'\n"
-msgstr "%P: %H: opérande non nul sur le réadressage %s par rapport à « %s »\n"
+#: elf32-ppc.c:8723
+#, c-format
+msgid "%H: non-zero addend on %s reloc against `%s'\n"
+msgstr "%H: opérande non nul sur le réadressage %s par rapport à « %s »\n"
+
+#. @local on an ifunc does not really make sense since
+#. the ifunc resolver can take you anywhere. More
+#. seriously, calls to ifuncs must go through a plt call
+#. stub, and for pic the plt call stubs uses r30 to
+#. access the PLT. The problem is that a call that is
+#. local won't have the +32k reloc addend trick marking
+#. -fPIC code, so the linker won't know whether r30 is
+#. _GLOBAL_OFFSET_TABLE_ or pointing into a .got2 section.
+#: elf32-ppc.c:8755
+#, c-format
+msgid "%X%H: @local call to ifunc %s\n"
+msgstr "%X%H: appel @local à ifunc %s\n"
-#: elf32-ppc.c:8389
-msgid "%P: %H: relocation %s for indirect function %s unsupported\n"
-msgstr "%P: %H: réadressage %s non supporté pour la fonction indirecte %s\n"
+#: elf32-ppc.c:8935
+#, c-format
+msgid "%H: relocation %s for indirect function %s unsupported\n"
+msgstr "%H: réadressage %s non supporté pour la fonction indirecte %s\n"
-#: elf32-ppc.c:8646 elf32-ppc.c:8676 elf32-ppc.c:8767
+#: elf32-ppc.c:9232 elf32-ppc.c:9263 elf32-ppc.c:9354
+#, c-format
msgid "%P: %B: the target (%s) of a %s relocation is in the wrong output section (%s)\n"
msgstr "%P: %B: la cible (%s) d'un réadressage %s est dans la mauvaise section de sortie (%s)\n"
-#: elf32-ppc.c:8854
+#: elf32-ppc.c:9442
+#, c-format
msgid "%B: the target (%s) of a %s relocation is in the wrong output section (%s)"
msgstr "%B: la cible (%s) d'un réadressage %s est dans la mauvaise section de sortie (%s)"
-#: elf32-ppc.c:8958
+#: elf32-ppc.c:9546
+#, c-format
msgid "%P: %B: relocation %s is not yet supported for symbol %s\n"
msgstr "%P: %B: réadressage %s n'est pas encore supporté pour le symbole %s\n"
-#: elf32-ppc.c:9038
-msgid "%P: %H: error: %s against `%s' not a multiple of %u\n"
-msgstr "%P: %H: erreur: %s par rapport à « %s » n'est pas un multiple de %u\n"
+#: elf32-ppc.c:9631
+#, c-format
+msgid "%H: error: %s against `%s' not a multiple of %u\n"
+msgstr "%H: erreur: %s par rapport à « %s » n'est pas un multiple de %u\n"
+
+#: elf32-ppc.c:9660
+#, c-format
+msgid "%H: unresolvable %s relocation against symbol `%s'\n"
+msgstr "%H: réadressage %s sans solution par rapport au symbole « %s »\n"
+
+#: elf32-ppc.c:9741
+#, c-format
+msgid "%H: %s reloc against `%s': error %d\n"
+msgstr "%H: réadressage %s vers « %s »: erreur %d\n"
-#: elf32-ppc.c:9067
-msgid "%P: %H: unresolvable %s relocation against symbol `%s'\n"
-msgstr "%P: %H: réadressage %s sans solution par rapport au symbole « %s »\n"
+#: elf32-ppc.c:10505 elf64-ppc.c:15719
+msgid "%X%P: text relocations and GNU indirect functions will result in a segfault at runtime\n"
+msgstr "%X%P: les réadressages de textes et les fonctions indirectes GNU résulteront en un crash à l'exécution\n"
-#: elf32-ppc.c:9114
-msgid "%P: %H: %s reloc against `%s': error %d\n"
-msgstr "%P: %H: réadressage %s vers « %s »: erreur %d\n"
+#: elf32-ppc.c:10509 elf64-ppc.c:15723
+msgid "%P: warning: text relocations and GNU indirect functions may result in a segfault at runtime\n"
+msgstr "%P: attention: les réadressages de textes et les fonctions indirectes GNU pourraient résulter en un crash à l'exécution\n"
-#: elf32-ppc.c:9750
+#: elf32-ppc.c:10554
+#, c-format
msgid "%P: %s not defined in linker created %s\n"
msgstr "%P: %s pas défini dans %s créé par l'éditeur de liens\n"
-#: elf32-rl78.c:784
+#: elf32-rl78.c:291
+#, c-format
+msgid "%B: invalid RL78 reloc number: %d"
+msgstr "%B: numéro de réadressage RL78 invalide: %d"
+
+#: elf32-rl78.c:369
+msgid "Internal Error: RL78 reloc stack overflow"
+msgstr "Erreur interne: débordement de la pile de réadressages RL78"
+
+#: elf32-rl78.c:380
+msgid "Internal Error: RL78 reloc stack underflow"
+msgstr "Erreur interne: débordement par le bas de la pile de réadressages RL78"
+
+#: elf32-rl78.c:1049
msgid "Warning: RL78_SYM reloc with an unknown symbol"
-msgstr "Attention: Relocalisation RL78_SYM avec un symbole inconnu"
+msgstr "Attention: Réadressage RL78_SYM avec un symbole inconnu"
-#: elf32-rl78.c:952 elf32-rx.c:1324
+#: elf32-rl78.c:1080 elf32-rx.c:1434
+#, c-format
msgid "%B(%A): error: call to undefined function '%s'"
-msgstr "%B(%A): erreur: appel à la fonction non définie «%s»"
+msgstr "%B(%A): erreur: appel à la fonction non définie « %s »"
-#: elf32-rl78.c:966 elf32-rx.c:1338
-msgid "%B(%A): warning: unaligned access to symbol '%s' in the small data area"
-msgstr "%B(%A): attention: accès non aligné au symbole «%s» dans la zone des petites données"
+#: elf32-rl78.c:1201
+#, c-format
+msgid "RL78 ABI conflict: G10 file %B cannot be linked with %s file %B"
+msgstr "Conflit ABI RL78: Le fichier G10 %B ne peut pas être lié avec %s fichier %B"
-#: elf32-rl78.c:970 elf32-rx.c:1342
-msgid "%B(%A): internal error: out of range error"
-msgstr "%B(%A): erreur interne: hors limite"
+# les deux %s sont des noms de processeurs
+#: elf32-rl78.c:1218
+#, c-format
+msgid "RL78 ABI conflict: cannot link %s file %B with %s file %B"
+msgstr "Conflit d'ABI RL78: ne peut lier le fichier %2$B pour %1$s avec le fichier %4$B pour %3$s"
-#: elf32-rl78.c:974 elf32-rx.c:1346
-msgid "%B(%A): internal error: unsupported relocation error"
-msgstr "%B(%A): erreur interne: réadressage non supporté"
+#: elf32-rl78.c:1227
+msgid "RL78 merge conflict: cannot link 32-bit and 64-bit objects together"
+msgstr "Conflit de fusion RL78: ne peut lier ensemble un objet 32 bits et un objet 64 bits"
-#: elf32-rl78.c:978 elf32-rx.c:1350
-msgid "%B(%A): internal error: dangerous relocation"
-msgstr "%B(%A): erreur interne: réadressage dangereux"
+#: elf32-rl78.c:1231 elf32-rl78.c:1235
+#, c-format
+msgid "- %B is 64-bit, %B is not"
+msgstr "- %B est 64 bits, %B ne l'est pas"
-#: elf32-rl78.c:982 elf32-rx.c:1354
-msgid "%B(%A): internal error: unknown error"
-msgstr "%B(%A): erreur interne: erreur inconnue"
+#: elf32-rl78.c:1262
+#, c-format
+msgid " [64-bit doubles]"
+msgstr " [doubles de 64 bits]"
-#: elf32-rl78.c:1043
-msgid "RL78/G10 ABI conflict: cannot link G10 and non-G10 objects together"
-msgstr "Conflit d'ABI RL78/G10: ne peut lier ensemble un objet G10 et un objet non-G10"
+#: elf32-rx.c:313
+#, c-format
+msgid "%B: invalid RX reloc number: %d"
+msgstr "%B: numéro de réadressage RX invalide: %d"
-#: elf32-rl78.c:1046 elf32-rl78.c:1049
+#: elf32-rx.c:594
#, c-format
-msgid "- %s is G10, %s is not"
-msgstr "- %s est G10, %s ne l'est pas"
+msgid "%B:%A: table entry %s outside table"
+msgstr "%B:%A: l'entrée %s de la table est en dehors de la table"
-#: elf32-rl78.c:1072
+#: elf32-rx.c:601
#, c-format
-msgid " [G10]"
-msgstr " [G10]"
+msgid "%B:%A: table entry %s not word-aligned within table"
+msgstr "%B:%A: l'entrée %s de la table n'est pas alignée sur un mot dans la table"
-#: elf32-rx.c:563
+#: elf32-rx.c:667
+#, c-format
msgid "%B:%A: Warning: deprecated Red Hat reloc "
-msgstr "%B:%A: Attention: relocalisation Red Hat réprouvée "
+msgstr "%B:%A: Attention: réadressage Red Hat réprouvée "
#. Check for unsafe relocs in PID mode. These are any relocs where
#. an absolute address is being computed. There are special cases
#. for relocs against symbols that are known to be referenced in
#. crt0.o before the PID base address register has been initialised.
-#: elf32-rx.c:581
+#: elf32-rx.c:686
+#, c-format
msgid "%B(%A): unsafe PID relocation %s at 0x%08lx (against %s in %s)"
msgstr "%B(%A): réadressage PID %s non sûr à 0x%08lx (sur %s dans %s)"
-#: elf32-rx.c:1157
+#: elf32-rx.c:1266
msgid "Warning: RX_SYM reloc with an unknown symbol"
msgstr "Attention: Relocalistaion RX_SYM avec un symbole inconnu"
-#: elf32-s390.c:2292 elf64-s390.c:2244
+#: elf32-rx.c:3145
+msgid "There is a conflict merging the ELF header flags from %B"
+msgstr "Il y a un conflit en fusionnant les fanions d'en-têtes ELF de %B"
+
+#: elf32-rx.c:3148
+#, c-format
+msgid " the input file's flags: %s"
+msgstr " les fanions du fichier d'entrée: %s"
+
+#: elf32-rx.c:3150
+#, c-format
+msgid " the output file's flags: %s"
+msgstr " les fanions du fichier de sortie: %s"
+
+#: elf32-rx.c:3757
+#, c-format
+msgid "%B:%A: table %s missing corresponding %s"
+msgstr "%B:%A: la table %s n'a pas de %s correspondant"
+
+#: elf32-rx.c:3765
+#, c-format
+msgid "%B:%A: %s and %s must be in the same input section"
+msgstr "%B:%A: %s et %s doivent être dans la même section d'entrée"
+
+#: elf32-s390.c:2310 elf64-s390.c:2257
+#, c-format
msgid "%B(%A+0x%lx): invalid instruction for TLS relocation %s"
msgstr "%B(%A+0x%lx): instruction invalide pour le réadressage TLS %s"
-#: elf32-score.c:1520 elf32-score7.c:1379 elfxx-mips.c:3642
+#: elf32-score.c:1521 elf32-score7.c:1382 elfxx-mips.c:3756
msgid "not enough GOT space for local GOT entries"
msgstr "pas suffisamment d'espace GOT pour les entrées locales GOT"
-#: elf32-score.c:2742
+#: elf32-score.c:2744
msgid "address not word align"
msgstr "adresse pas alignée sur un mot"
-#: elf32-score.c:2827 elf32-score7.c:2631
+#: elf32-score.c:2825 elf32-score7.c:2630
#, c-format
-msgid "%s: Malformed reloc detected for section %s"
-msgstr "%s: relocalisation mal composée détectée dans la section %s"
+msgid "%B: Malformed reloc detected for section %A"
+msgstr "%B: Réadressage mal composé détecté dans la section %A"
-#: elf32-score.c:2882 elf32-score7.c:2686
+#: elf32-score.c:2883 elf32-score7.c:2688
+#, c-format
msgid "%B: CALL15 reloc at 0x%lx not against global symbol"
-msgstr "%B: appel CALL15 de relocalisation à 0x%lx n'est pas appliqué sur un symbole global"
+msgstr "%B: appel CALL15 de réadressage à 0x%lx n'est pas appliqué sur un symbole global"
-#: elf32-score.c:4007 elf32-score7.c:3811
+#: elf32-score.c:4005 elf32-score7.c:3810
#, c-format
msgid " [pic]"
msgstr " [pic]"
-#: elf32-score.c:4011 elf32-score7.c:3815
+#: elf32-score.c:4009 elf32-score7.c:3814
#, c-format
msgid " [fix dep]"
msgstr " [fix dep]"
-#: elf32-score.c:4053 elf32-score7.c:3857
+#: elf32-score.c:4052 elf32-score7.c:3857
msgid "%B: warning: linking PIC files with non-PIC files"
msgstr "%B: attention: édition de liens des fichiers PIC avec des fichiers non PIC"
#: elf32-sh-symbian.c:130
+#, c-format
msgid "%B: IMPORT AS directive for %s conceals previous IMPORT AS"
msgstr "%B: la directive IMPORT AS de %s masque l'IMPORT AS précédent"
-#: elf32-sh-symbian.c:383
+#: elf32-sh-symbian.c:384
+#, c-format
msgid "%B: Unrecognised .directive command: %s"
msgstr "%B: Commande .directive non reconnue: %s"
-#: elf32-sh-symbian.c:500
+#: elf32-sh-symbian.c:502
+#, c-format
msgid "%B: Failed to add renamed symbol %s"
msgstr "%B: Échec de l'ajout du symbole renommé %s"
-#: elf32-sh.c:569
-msgid "%B: 0x%lx: warning: bad R_SH_USES offset"
-msgstr "%B: 0x%lx: attention: mauvais décalage pour R_SH_USES"
-
-#: elf32-sh.c:581
-msgid "%B: 0x%lx: warning: R_SH_USES points to unrecognized insn 0x%x"
-msgstr "%B: 0x%lx: attention: R_SH_USES pointe vers un insn inconnu 0x%x"
-
-#: elf32-sh.c:598
-msgid "%B: 0x%lx: warning: bad R_SH_USES load offset"
-msgstr "%B: 0x%lx: attention: mauvais décalage de chargement R_SH_USES"
-
-#: elf32-sh.c:613
-msgid "%B: 0x%lx: warning: could not find expected reloc"
-msgstr "%B: 0x%lx: attention: ne peut repérer la relocalisation attendue"
-
-#: elf32-sh.c:641
-msgid "%B: 0x%lx: warning: symbol in unexpected section"
-msgstr "%B: 0x%lx: attention: symbole dans une section inattendue"
-
-#: elf32-sh.c:767
-msgid "%B: 0x%lx: warning: could not find expected COUNT reloc"
-msgstr "%B: 0x%lx: attention: ne peut repérer le compteur de relocalisation attendu"
-
-#: elf32-sh.c:776
-msgid "%B: 0x%lx: warning: bad count"
-msgstr "%B: 0x%lx: attention: mauvais décompte"
-
-#: elf32-sh.c:1180 elf32-sh.c:1550
-msgid "%B: 0x%lx: fatal: reloc overflow while relaxing"
-msgstr "%B: 0x%lx: erreur fatale: débordement de relocalisation lors des relâches"
+#: elf32-sh.c:491
+#, c-format
+msgid "%B: unrecognised SH reloc number: %d"
+msgstr "%B: numéro de réadressage SH non reconnu: %d"
-#: elf32-sh.c:3939 elf64-sh64.c:1514
+#: elf32-sh.c:3953 elf64-sh64.c:1508
msgid "Unexpected STO_SH5_ISA32 on local symbol is not handled"
msgstr "STO_SH5_ISA32 inattendu sur le symbole local n'est pas traité"
-#: elf32-sh.c:4190
+#: elf32-sh.c:4206
+#, c-format
msgid "%B: 0x%lx: fatal: unaligned branch target for relax-support relocation"
msgstr "%B: 0x%lx: fatal: cible de branchement non alignée pour un réadressage de type relax-support"
-#: elf32-sh.c:4223 elf32-sh.c:4238
+#: elf32-sh.c:4240 elf32-sh.c:4256
+#, c-format
msgid "%B: 0x%lx: fatal: unaligned %s relocation 0x%lx"
msgstr "%B: 0x%lx: fatal: réadressage %s non aligné 0x%lx"
-#: elf32-sh.c:4252
+#: elf32-sh.c:4271
+#, c-format
msgid "%B: 0x%lx: fatal: R_SH_PSHA relocation %d not in range -32..32"
msgstr "%B: 0x%lx: fatal: réadressage R_SH_PSHA %d pas dans l'intervalle -32..32"
-#: elf32-sh.c:4266
+#: elf32-sh.c:4286
+#, c-format
msgid "%B: 0x%lx: fatal: R_SH_PSHL relocation %d not in range -32..32"
msgstr "%B: 0x%lx: fatal: réadressage R_SH_PSHL %d n'est pas dans l'intervalle -32..32"
-#: elf32-sh.c:4410 elf32-sh.c:4886
+#: elf32-sh.c:4431 elf32-sh.c:4903
+#, c-format
msgid "%B(%A+0x%lx): cannot emit fixup to `%s' in read-only section"
-msgstr "%B(%A+0x%lx): impossible d'apporter des corrections à «%s» dans une section en lecture seule"
+msgstr "%B(%A+0x%lx): impossible d'apporter des corrections à « %s » dans une section en lecture seule"
-#: elf32-sh.c:4993
+#: elf32-sh.c:5005
+#, c-format
msgid "%B(%A+0x%lx): %s relocation against external symbol \"%s\""
msgstr "%B(%A+0x%lx): %s réadressage vers le symbole externe « %s »"
-#: elf32-sh.c:5466
+#: elf32-sh.c:5469
#, c-format
msgid "%X%C: relocation to \"%s\" references a different segment\n"
msgstr "%X%C: le réadressage vers « %s » fait référence à un segment différent\n"
-#: elf32-sh.c:5472
+#: elf32-sh.c:5476
#, c-format
msgid "%C: warning: relocation to \"%s\" references a different segment\n"
msgstr "%C: attention: réadressage vers « %s » fait référence à un segment différent\n"
-#: elf32-sh.c:6254 elf32-sh.c:6337
+#: elf32-sh.c:6045 elf32-sh.c:6131
+#, c-format
msgid "%B: `%s' accessed both as normal and FDPIC symbol"
-msgstr "%B: «%s» accédé à la fois comme symbole normal et comme symbole FDPIC"
+msgstr "%B: « %s » accédé à la fois comme symbole normal et comme symbole FDPIC"
-#: elf32-sh.c:6259 elf32-sh.c:6341
+#: elf32-sh.c:6051 elf32-sh.c:6136
+#, c-format
msgid "%B: `%s' accessed both as FDPIC and thread local symbol"
-msgstr "%B: «%s» accédé à la fois comme symbole FDPIC et comme symbole local au thread"
+msgstr "%B: « %s » accédé à la fois comme symbole FDPIC et comme symbole local au thread"
-#: elf32-sh.c:6289
+#: elf32-sh.c:6082
msgid "%B: Function descriptor relocation with non-zero addend"
msgstr "%B: Descripteur de fonction réadressé avec un opérande non nul"
-#: elf32-sh.c:6525 elf64-alpha.c:4661
+#: elf32-sh.c:6320 elf64-alpha.c:4757
+#, c-format
msgid "%B: TLS local exec code cannot be linked into shared objects"
msgstr "%B: code exécutable local TLS ne peut être lié en objets partagés"
-#: elf32-sh64.c:224 elf64-sh64.c:2318
+# %s sont « dsp » ou « floating point » non traduits
+#: elf32-sh.c:6435
+#, c-format
+msgid "%B: uses %s instructions while previous modules use %s instructions"
+msgstr "%B: utilise les instructions %s tandis que les modules précédents utilisent les instructions %s"
+
+#: elf32-sh.c:6447
#, c-format
-msgid "%s: compiled as 32-bit object and %s is 64-bit"
-msgstr "%s: compilé comme un objet de 32 bits et %s est de 64 bits"
+msgid "internal error: merge of architecture '%s' with architecture '%s' produced unknown architecture"
+msgstr "erreur interne: la fusion de l'architecture « %s » avec l'architecture « %s » a produit une architecture inconnue"
+
+#: elf32-sh.c:6484
+msgid "%B: uses instructions which are incompatible with instructions used in previous modules"
+msgstr "%B: utilise des instructions qui sont incompatibles avec les instructions utilisées dans les modules précédents"
-#: elf32-sh64.c:227 elf64-sh64.c:2321
+#: elf32-sh.c:6497
+msgid "%B: attempt to mix FDPIC and non-FDPIC objects"
+msgstr "%B: tentative de mélanger des objets FDPIC et non-FDPIC"
+
+#: elf32-sh64.c:225 elf64-sh64.c:2277
#, c-format
-msgid "%s: compiled as 64-bit object and %s is 32-bit"
-msgstr "%s: compilé comme un objet de 64 bits et %s est de 32 bits"
+msgid "%B: compiled as 32-bit object and %B is 64-bit"
+msgstr "%B: compilé comme un objet de 32 bits et %B est de 64 bits"
-#: elf32-sh64.c:229 elf64-sh64.c:2323
+#: elf32-sh64.c:229 elf64-sh64.c:2281
#, c-format
-msgid "%s: object size does not match that of target %s"
-msgstr "%s: taille de l'objet ne concorde pas avec la taille de la cible %s"
+msgid "%B: compiled as 64-bit object and %B is 32-bit"
+msgstr "%B: compilé comme un objet de 64 bits et %B est de 32 bits"
-#: elf32-sh64.c:452 elf64-sh64.c:2839
+#: elf32-sh64.c:232 elf64-sh64.c:2284
#, c-format
-msgid "%s: encountered datalabel symbol in input"
-msgstr "%s: rencontre du symbole d'une étiquette de donnée dans l'entrée"
+msgid "%B: object size does not match that of target %B"
+msgstr "%B: taille de l'objet ne concorde pas avec la taille de la cible %B"
+
+#: elf32-sh64.c:455 elf64-sh64.c:2776
+msgid "%B: encountered datalabel symbol in input"
+msgstr "%B: rencontre du symbole d'une étiquette de donnée dans l'entrée"
-#: elf32-sh64.c:529
+#: elf32-sh64.c:531
msgid "PTB mismatch: a SHmedia address (bit 0 == 1)"
msgstr "Non concordance PTB: adresse SHmedia (bit 0 == 1)"
-#: elf32-sh64.c:532
+#: elf32-sh64.c:534
msgid "PTA mismatch: a SHcompact address (bit 0 == 0)"
msgstr "Non concordance PTA: adresse SHcompact (bit 0 == 0)"
#: elf32-sh64.c:550
-#, c-format
-msgid "%s: GAS error: unexpected PTB insn with R_SH_PT_16"
-msgstr "%s: Erreur GAS: insn PTB inattendue avec R_SH_PT_16"
+msgid "%B: GAS error: unexpected PTB insn with R_SH_PT_16"
+msgstr "%B: Erreur GAS: insn PTB inattendue avec R_SH_PT_16"
-#: elf32-sh64.c:599
+#: elf32-sh64.c:600
+#, c-format
msgid "%B: error: unaligned relocation type %d at %08x reloc %p\n"
msgstr "%B: erreur: type de réadressage %d non aligné à %08x réadressé %p\n"
-#: elf32-sh64.c:675
-#, c-format
-msgid "%s: could not write out added .cranges entries"
-msgstr "%s: ne peut écrire en sortie des entrées .cranges ajoutées"
+#: elf32-sh64.c:676
+msgid "%B: could not write out added .cranges entries"
+msgstr "%B: ne peut écrire en sortie des entrées .cranges ajoutées"
#: elf32-sh64.c:735
-#, c-format
-msgid "%s: could not write out sorted .cranges entries"
-msgstr "%s: ne peut écrire en sortie des entrées .cranges triées"
+msgid "%B: could not write out sorted .cranges entries"
+msgstr "%B: ne peut écrire en sortie des entrées .cranges triées"
-#: elf32-sparc.c:90
+#: elf32-sparc.c:89
msgid "%B: compiled for a 64 bit system and target is 32 bit"
msgstr "%B: compilé pour un système à 64 bits et la cible est de 32 bits"
-#: elf32-sparc.c:103
+#: elf32-sparc.c:102
msgid "%B: linking little endian files with big endian files"
msgstr "%B: édition de liens pour des fichiers à octets de poids faible avec des fichiers à octets de poids fort"
-#: elf32-spu.c:716
+#: elf32-spu.c:160
+#, c-format
+msgid "%B: unrecognised SPU reloc number: %d"
+msgstr "%B: numéro de réadressage SPU non reconnu: %d"
+
+#: elf32-spu.c:726
msgid "%X%P: overlay section %A does not start on a cache line.\n"
msgstr "%X%P: recouvrement de la section %A ne démarre pas sur une ligne de cache.\n"
-#: elf32-spu.c:724
+#: elf32-spu.c:734
msgid "%X%P: overlay section %A is larger than a cache line.\n"
msgstr "%X%P: recouvrement de la section %A est plus grand que la ligne de cache.\n"
-#: elf32-spu.c:744
+#: elf32-spu.c:754
msgid "%X%P: overlay section %A is not in cache area.\n"
msgstr "%X%P: recouvrement de la section %A n'est pas dans une zone de cache.\n"
-#: elf32-spu.c:784
+#: elf32-spu.c:795
+#, c-format
msgid "%X%P: overlay sections %A and %A do not start at the same address.\n"
msgstr "%X%P: recouvrement des sections %A et %A ne commencent pas à la même adresse.\n"
-#: elf32-spu.c:1008
+#: elf32-spu.c:1021
+#, c-format
msgid "warning: call to non-function symbol %s defined in %B"
msgstr "attention: appel au symbole %s défini dans %B qui n'est pas une fonction"
-#: elf32-spu.c:1358
+#: elf32-spu.c:1371
+#, c-format
msgid "%A:0x%v lrlive .brinfo (%u) differs from analysis (%u)\n"
msgstr "%A:0x%v le lrlive .brinfo (%u) diffère de celui de l'analyse (%u)\n"
-#: elf32-spu.c:1877
+#: elf32-spu.c:1903
+#, c-format
msgid "%B is not allowed to define %s"
msgstr "%B ne peut pas définir %s"
-#: elf32-spu.c:1885
+#: elf32-spu.c:1911
#, c-format
msgid "you are not allowed to define %s in a script"
msgstr "vous ne pouvez pas définir %s dans un script"
-#: elf32-spu.c:1919
+#: elf32-spu.c:1945
#, c-format
msgid "%s in overlay section"
msgstr "%s dans une section de recouvrement"
-#: elf32-spu.c:1948
+#: elf32-spu.c:1974
msgid "overlay stub relocation overflow"
msgstr "débordement du réadressage de l'ébauche de recouvrement"
-#: elf32-spu.c:1957
+#: elf32-spu.c:1983
msgid "stubs don't match calculated size"
msgstr "taille des ébauches ne concorde pas avec la taille calculée"
-#: elf32-spu.c:2539
+#: elf32-spu.c:2566
#, c-format
msgid "warning: %s overlaps %s\n"
msgstr "attention: %s recouvre %s\n"
-#: elf32-spu.c:2555
+#: elf32-spu.c:2582
#, c-format
msgid "warning: %s exceeds section size\n"
msgstr "attention: %s dépasse la taille de la section\n"
-#: elf32-spu.c:2586
+#: elf32-spu.c:2614
+#, c-format
msgid "%A:0x%v not found in function table\n"
msgstr "%A:%0x%v pas trouvé dans la table de fonctions\n"
-#: elf32-spu.c:2726
+#: elf32-spu.c:2755
+#, c-format
msgid "%B(%A+0x%v): call to non-code section %B(%A), analysis incomplete\n"
msgstr "%B(%A+0x%v): appel à la section non exécutable %B(%A), analyse incomplète\n"
-#: elf32-spu.c:3294
+#: elf32-spu.c:3324
#, c-format
msgid "Stack analysis will ignore the call from %s to %s\n"
msgstr "L'analyse de la pile ignorera l'appel de %s à %s\n"
-#: elf32-spu.c:3985
-msgid " %s: 0x%v\n"
-msgstr " %s: 0x%v\n"
-
-#: elf32-spu.c:3986
-msgid "%s: 0x%v 0x%v\n"
-msgstr "%s: 0x%v 0x%v\n"
-
-#: elf32-spu.c:3991
+#: elf32-spu.c:4021
msgid " calls:\n"
msgstr " appels:\n"
-#: elf32-spu.c:3999
-#, c-format
-msgid " %s%s %s\n"
-msgstr " %s%s %s\n"
-
-#: elf32-spu.c:4304
+#: elf32-spu.c:4335
#, c-format
msgid "%s duplicated in %s\n"
msgstr "%s dupliqué dans %s\n"
-#: elf32-spu.c:4308
+#: elf32-spu.c:4339
#, c-format
msgid "%s duplicated\n"
msgstr "%s dupliqué\n"
-#: elf32-spu.c:4315
+#: elf32-spu.c:4346
msgid "sorry, no support for duplicate object files in auto-overlay script\n"
msgstr "désolé, pas de support des fichiers objet dupliqués dans un script auto-overlay\n"
-#: elf32-spu.c:4356
+#: elf32-spu.c:4388
+#, c-format
msgid "non-overlay size of 0x%v plus maximum overlay size of 0x%v exceeds local store\n"
msgstr "la taille de non recouvrement de 0x%v plus la taille maximum de recouvrement de 0x%v dépasse l'espace local\n"
-#: elf32-spu.c:4511
+#: elf32-spu.c:4544
+#, c-format
msgid "%B:%A%s exceeds overlay size\n"
msgstr "%B:%A%s dépasse la taille de recouvrement\n"
-#: elf32-spu.c:4673
+#: elf32-spu.c:4685
+msgid "%F%P: auto overlay error: %E\n"
+msgstr "%F%P: erreur d'auto recouvrement: %E\n"
+
+#: elf32-spu.c:4706
msgid "Stack size for call graph root nodes.\n"
msgstr "Taille de la pile des nœuds racine du graph d'appel.\n"
-#: elf32-spu.c:4674
+#: elf32-spu.c:4707
msgid ""
"\n"
"Stack size for functions. Annotations: '*' max stack, 't' tail call\n"
msgstr ""
"\n"
-"Taille de la pile pour les fonctions. Annotations: «*» pile max, «t» appel de queue\n"
+"Taille de la pile pour les fonctions. Annotations: « * » pile max, « t » appel de queue\n"
-#: elf32-spu.c:4684
+#: elf32-spu.c:4717
msgid "Maximum stack required is 0x%v\n"
msgstr "Pile maximum requise est 0x%v\n"
-#: elf32-spu.c:4775
+#: elf32-spu.c:4736
+msgid "%X%P: stack/lrlive analysis error: %E\n"
+msgstr "%X%P: erreur d'analyse de pile/lrlive: %E\n"
+
+#: elf32-spu.c:4739
+msgid "%F%P: can not build overlay stubs: %E\n"
+msgstr "%F%P: ne peut construire les ébauches de recouvrement: %E\n"
+
+#: elf32-spu.c:4808
msgid "fatal error while creating .fixup"
msgstr "erreur fatale lors de la création de .fixup"
-#: elf32-spu.c:5005
+#: elf32-spu.c:5043
+#, c-format
msgid "%B(%s+0x%lx): unresolvable %s relocation against symbol `%s'"
msgstr "%B(%A+0x%lx): réadressage %s sans solution vers le symbole « %s »"
-#: elf32-tic6x.c:1600
+#: elf32-tic6x.c:1596
msgid "warning: generating a shared library containing non-PIC code"
msgstr "attention: production d'une librairie partagée contenant du code non-PIC"
-#: elf32-tic6x.c:1605
+#: elf32-tic6x.c:1601
msgid "warning: generating a shared library containing non-PID code"
msgstr "attention: production d'une librairie partagée contenant du code non-PID"
-#: elf32-tic6x.c:2524
+#: elf32-tic6x.c:2525
msgid "%B: SB-relative relocation but __c6xabi_DSBT_BASE not defined"
msgstr "%B: réadressage relatif à SB mais __c6xabi_DSBT_BASE n'est pas défini"
-#: elf32-tic6x.c:3648
+#: elf32-tic6x.c:3651
+#, c-format
msgid "%B: error: unknown mandatory EABI object attribute %d"
msgstr "%B: erreur: l'attribut d'objet EABI obligatoire %d est manquant"
-#: elf32-tic6x.c:3656
+#: elf32-tic6x.c:3660
+#, c-format
msgid "%B: warning: unknown EABI object attribute %d"
msgstr "%B: attention: attribut d'objet EABI %d inconnu"
-#: elf32-tic6x.c:3768 elf32-tic6x.c:3776
+#: elf32-tic6x.c:3774 elf32-tic6x.c:3783
+#, c-format
msgid "error: %B requires more stack alignment than %B preserves"
msgstr "erreur: %B nécessite un plus grand alignement de pile que ce que %B préserve"
-#: elf32-tic6x.c:3786 elf32-tic6x.c:3795
+#: elf32-tic6x.c:3793 elf32-tic6x.c:3802
msgid "error: unknown Tag_ABI_array_object_alignment value in %B"
msgstr "erreur: valeur Tag_ABI_array_object_alignment inconnue dans %B"
-#: elf32-tic6x.c:3804 elf32-tic6x.c:3813
+#: elf32-tic6x.c:3811 elf32-tic6x.c:3820
msgid "error: unknown Tag_ABI_array_object_align_expected value in %B"
msgstr "erreur: valeur Tag_ABI_array_object_align_expected inconnue dans %B"
-#: elf32-tic6x.c:3821 elf32-tic6x.c:3828
+#: elf32-tic6x.c:3829 elf32-tic6x.c:3837
+#, c-format
msgid "error: %B requires more array alignment than %B preserves"
msgstr "erreur: %B nécessite un plus grand alignement de tableau que ce que %B préserve"
-#: elf32-tic6x.c:3850
+#: elf32-tic6x.c:3860
+#, c-format
msgid "warning: %B and %B differ in wchar_t size"
msgstr "attention: %B et %B on des tailles de wchar_t différentes"
-#: elf32-tic6x.c:3868
+#: elf32-tic6x.c:3879
+#, c-format
msgid "warning: %B and %B differ in whether code is compiled for DSBT"
msgstr "attention: %B et %B ne sont pas d'accord sur la compilation du code pour DSBT"
#: elf32-v850.c:157
#, c-format
msgid "Variable `%s' cannot occupy in multiple small data regions"
-msgstr "Variable «%s» ne peut occuper de multiples petites régions de données"
+msgstr "Variable « %s » ne peut occuper de multiples petites régions de données"
#: elf32-v850.c:160
#, c-format
msgid "Variable `%s' can only be in one of the small, zero, and tiny data regions"
-msgstr "Variable «%s» peut seulement être dans une région de données petite, zéro ou minuscule"
+msgstr "Variable « %s » peut seulement être dans une région de données petite, zéro ou minuscule"
#: elf32-v850.c:163
#, c-format
msgid "Variable `%s' cannot be in both small and zero data regions simultaneously"
-msgstr "Variable «%s» ne peut être dans une région de données petite et zéro à la fois"
+msgstr "Variable « %s » ne peut être dans une région de données petite et zéro à la fois"
#: elf32-v850.c:166
#, c-format
msgid "Variable `%s' cannot be in both small and tiny data regions simultaneously"
-msgstr "Variable «%s» ne peut être dans une région de données petite et minuscule à la fois"
+msgstr "Variable « %s » ne peut être dans une région de données petite et minuscule à la fois"
#: elf32-v850.c:169
#, c-format
msgid "Variable `%s' cannot be in both zero and tiny data regions simultaneously"
-msgstr "Variable «%s» ne peut être dans une région de données zéro et minuscule à la fois"
+msgstr "Variable « %s » ne peut être dans une région de données zéro et minuscule à la fois"
#: elf32-v850.c:467
msgid "FAILED to find previous HI16 reloc"
msgstr "ÉCHEC de repérage du réadressage HI16 précédent"
-#: elf32-v850.c:2293
+#: elf32-v850.c:1902 elf32-v850.c:1921
+#, c-format
+msgid "%B: invalid V850 reloc number: %d"
+msgstr "%B: numéro de réadressage V850 invalide: %d"
+
+#: elf32-v850.c:2299
msgid "could not locate special linker symbol __gp"
msgstr "ne peut repérer le symbole spécial d'édition de lien __gp"
-#: elf32-v850.c:2297
+#: elf32-v850.c:2303
msgid "could not locate special linker symbol __ep"
msgstr "ne peut repérer le symbole spécial d'édition de lien __ep"
-#: elf32-v850.c:2301
+#: elf32-v850.c:2307
msgid "could not locate special linker symbol __ctbp"
msgstr "ne peut repérer le symbole spécial d'édition de lien __ctbp"
-#: elf32-v850.c:2471 elf32-v850.c:2534
+#: elf32-v850.c:2528
+#, c-format
+msgid "error: %B needs 8-byte aligment but %B is set for 4-byte alignment"
+msgstr "erreur: %B a besoin d'un alignement sur 8 octets mais %B est défini pour un alignement sur 4 octets"
+
+#: elf32-v850.c:2544
+#, c-format
+msgid "error: %B uses 64-bit doubles but %B uses 32-bit doubles"
+msgstr "erreur: %B utilise des doubles 64 bits alors que %B utilise des doubles 32 bits"
+
+#: elf32-v850.c:2559
+#, c-format
+msgid "error: %B uses FPU-3.0 but %B only supports FPU-2.0"
+msgstr "erreur: %B utilise FPU-3.0 mais %B ne supporte que FPU-2.0"
+
+#: elf32-v850.c:2591
+#, c-format
+msgid " alignment of 8-byte entities: "
+msgstr " alignement d'entités de 8 octets:"
+
+#: elf32-v850.c:2594
+#, c-format
+msgid "4-byte"
+msgstr "4 octets"
+
+#: elf32-v850.c:2595
+#, c-format
+msgid "8-byte"
+msgstr "8 octets"
+
+#: elf32-v850.c:2596 elf32-v850.c:2608
+#, c-format
+msgid "not set"
+msgstr "pas défini"
+
+#: elf32-v850.c:2597 elf32-v850.c:2609 elf32-v850.c:2621 elf32-v850.c:2632
+#: elf32-v850.c:2643 elf32-v850.c:2654
+#, c-format
+msgid "unknown: %x"
+msgstr "inconnu: %x"
+
+#: elf32-v850.c:2603
+#, c-format
+msgid " size of doubles: "
+msgstr " taille des doubles: "
+
+#: elf32-v850.c:2606
+#, c-format
+msgid "4-bytes"
+msgstr "4 octets"
+
+#: elf32-v850.c:2607
+#, c-format
+msgid "8-bytes"
+msgstr "8 octets"
+
+#: elf32-v850.c:2615
+#, c-format
+msgid " FPU support required: "
+msgstr " support du FPU requis: "
+
+#: elf32-v850.c:2618
+#, c-format
+msgid "FPU-2.0"
+msgstr "FPU-2.0"
+
+#: elf32-v850.c:2619
+#, c-format
+msgid "FPU-3.0"
+msgstr "FPU-3.0"
+
+#: elf32-v850.c:2620
+#, c-format
+msgid "none"
+msgstr "aucun"
+
+#: elf32-v850.c:2627
+#, c-format
+msgid "SIMD use: "
+msgstr "utilisation SIMD: "
+
+#: elf32-v850.c:2630 elf32-v850.c:2641 elf32-v850.c:2652
+#, c-format
+msgid "yes"
+msgstr "oui"
+
+#: elf32-v850.c:2631 elf32-v850.c:2642 elf32-v850.c:2653
+#, c-format
+msgid "no"
+msgstr "non"
+
+#: elf32-v850.c:2638
+#, c-format
+msgid "CACHE use: "
+msgstr "utilisation CACHE: "
+
+#: elf32-v850.c:2649
+#, c-format
+msgid "MMU use: "
+msgstr "utilisation MMU: "
+
+#: elf32-v850.c:2816 elf32-v850.c:2872
msgid "%B: Architecture mismatch with previous modules"
msgstr "%B: L'architecture ne concorde pas avec les modules précédents"
-#: elf32-v850.c:2478
-msgid "%B: Alignment mismatch with previous modules"
-msgstr "%B: L'alignement ne concorde pas avec les modules précédents"
-
#. xgettext:c-format.
-#: elf32-v850.c:2553
+#: elf32-v850.c:2890
#, c-format
msgid "private flags = %lx: "
msgstr "fanions privés = %lx: "
-#: elf32-v850.c:2558
+#: elf32-v850.c:2895
#, c-format
msgid "unknown v850 architecture"
msgstr "architecture v850 inconnue"
-#: elf32-v850.c:2560
+#: elf32-v850.c:2897
#, c-format
msgid "v850 E3 architecture"
msgstr "architecture v850 E3"
-#: elf32-v850.c:2562 elf32-v850.c:2572
+#: elf32-v850.c:2899 elf32-v850.c:2906
#, c-format
msgid "v850 architecture"
msgstr "architecture v850"
-#: elf32-v850.c:2565
-#, c-format
-msgid ", 8-byte data alignment"
-msgstr ", alignement de données sur 8 octets"
-
-#: elf32-v850.c:2573
+#: elf32-v850.c:2907
#, c-format
msgid "v850e architecture"
msgstr "architecture v850e"
-#: elf32-v850.c:2574
+#: elf32-v850.c:2908
#, c-format
msgid "v850e1 architecture"
msgstr "architecture v850e1"
-#: elf32-v850.c:2575
+#: elf32-v850.c:2909
#, c-format
msgid "v850e2 architecture"
msgstr "architecture v850e2"
-#: elf32-v850.c:2576
+#: elf32-v850.c:2910
#, c-format
msgid "v850e2v3 architecture"
msgstr "architecture v850e2v3"
-#: elf32-v850.c:2577
+#: elf32-v850.c:2911
#, c-format
msgid "v850e3v5 architecture"
msgstr "architecture v850e3v5"
-#: elf32-vax.c:532
+#: elf32-v850.c:3605
+#, c-format
+msgid "%B: 0x%lx: warning: R_V850_LONGCALL points to unrecognized insns"
+msgstr "%B: 0x%lx: attention: R_V850_LONGCALL pointe vers des insns inconnues"
+
+#: elf32-v850.c:3615
+#, c-format
+msgid "%B: 0x%lx: warning: R_V850_LONGCALL points to unrecognized insn 0x%x"
+msgstr "%B: 0x%lx: attention: R_V850_LONGCALL pointe vers l'insn inconnue 0x%x"
+
+#: elf32-v850.c:3660
+#, c-format
+msgid "%B: 0x%lx: warning: R_V850_LONGCALL points to unrecognized reloc"
+msgstr "%B: 0x%lx: attention: R_V850_LONGCALL pointe vers un réadressage non reconnu"
+
+#: elf32-v850.c:3700
+#, c-format
+msgid "%B: 0x%lx: warning: R_V850_LONGCALL points to unrecognized reloc 0x%lx"
+msgstr "%B: 0x%lx: attention: R_V850_LONGCALL pointe vers le réadressage inconnu 0x%lx"
+
+#: elf32-v850.c:3843
+#, c-format
+msgid "%B: 0x%lx: warning: R_V850_LONGJUMP points to unrecognized insns"
+msgstr "%B: 0x%lx: attention: R_V850_LONGJUMP pointe vers des insns non reconnues"
+
+#: elf32-v850.c:3853
+#, c-format
+msgid "%B: 0x%lx: warning: R_V850_LONGJUMP points to unrecognized insn 0x%x"
+msgstr "%B: 0x%lx: attention: R_V850_LONGJUMP pointe vers une insn inconnue 0x%x"
+
+#: elf32-v850.c:3887
+#, c-format
+msgid "%B: 0x%lx: warning: R_V850_LONGJUMP points to unrecognized reloc"
+msgstr "%B: 0x%lx: attention: R_V850_LONGJUMP pointe vers un réadressage non reconnu"
+
+#: elf32-vax.c:290
+#, c-format
+msgid "%B: unrecognised VAX reloc number: %d"
+msgstr "%B: numéro de réadressage VAX non reconnu: %d"
+
+#: elf32-vax.c:539
#, c-format
msgid " [nonpic]"
msgstr " [nonpic]"
-#: elf32-vax.c:535
+#: elf32-vax.c:542
#, c-format
msgid " [d-float]"
msgstr " [d-float]"
-#: elf32-vax.c:538
+#: elf32-vax.c:545
#, c-format
msgid " [g-float]"
msgstr " [g-float]"
-#: elf32-vax.c:656
+#: elf32-vax.c:635
+#, c-format
+msgid "%B: warning: GOT addend of %ld to `%s' does not match previous GOT addend of %ld"
+msgstr "%B: attention: ajout GOT de %ld à « %s » ne concorde par avec l'ajout GOT précédent de %ld"
+
+#: elf32-vax.c:1511
+#, c-format
+msgid "%B: warning: PLT addend of %d to `%s' from %A section ignored"
+msgstr "%B: attention: ignore l'ajout PLT de %d à « %s » de la section %A"
+
+#: elf32-vax.c:1636
+#, c-format
+msgid "%B: warning: %s relocation against symbol `%s' from %A section"
+msgstr "%B: attention: réadressage %s vers le symbole « %s » de la section %A"
+
+#: elf32-vax.c:1643
#, c-format
-msgid "%s: warning: GOT addend of %ld to `%s' does not match previous GOT addend of %ld"
-msgstr "%s: attention: ajout GOT de %ld à «%s» ne concorde par avec l'ajout GOT précédent de %ld"
+msgid "%B: warning: %s relocation to 0x%x from %A section"
+msgstr "%B: attention: réadressage %s vers 0x%x de la section %A"
-#: elf32-vax.c:1543
+#: elf32-visium.c:481
#, c-format
-msgid "%s: warning: PLT addend of %d to `%s' from %s section ignored"
-msgstr "%s: attention: ignore l'ajout PLT de %d à «%s» de la section %s"
+msgid "%B: invalid Visium reloc number: %d"
+msgstr "%B: numéro de réadressage Visium invalide: %d"
-#: elf32-vax.c:1668
+# Les %s sont « with » ou « without » non traduits.
+# Heureusement, le fichier entier a été supprimé dans les sources actuelles.
+#: elf32-visium.c:817
#, c-format
-msgid "%s: warning: %s relocation against symbol `%s' from %s section"
-msgstr "%s: attention: réadressage %s vers le symbole « %s » de la section %s"
+msgid "%B: compiled %s -mtune=%s and linked with modules compiled %s -mtune=%s"
+msgstr "%B: compilé %s -mtune=%s et lié avec des modules compilés %s -mtune=%s"
-#: elf32-vax.c:1674
+#: elf32-xgate.c:428
#, c-format
-msgid "%s: warning: %s relocation to 0x%x from %s section"
-msgstr "%s: attention: réadressage %s vers 0x%x de la section %s"
+msgid "%B: invalid XGate reloc number: %d"
+msgstr "%B: numéro de réadressage XGate invalide: %d"
-#: elf32-xgate.c:686
+#: elf32-xgate.c:681
#, c-format
msgid "cpu=XGATE]"
msgstr "cpu=XGATE]"
-#: elf32-xgate.c:688
+#: elf32-xgate.c:683
#, c-format
msgid "error reading cpu type from elf private data"
msgstr "erreur lors de la lecture du type de CPU dans les données elf privées"
-#: elf32-xstormy16.c:455 elf64-ia64-vms.c:2072 elf32-ia64.c:2330
-#: elf64-ia64.c:2330
+#: elf32-xstormy16.c:453 elf64-ia64-vms.c:2074 elf32-ia64.c:2334
+#: elf64-ia64.c:2334
msgid "non-zero addend in @fptr reloc"
-msgstr "ajout non nul dans la relocalisation @fptr"
+msgstr "ajout non nul dans le réadressage @fptr"
+
+#: elf32-xtensa.c:485
+#, c-format
+msgid "%B: invalid XTENSA reloc number: %d"
+msgstr "%B: numéro de réadressage XTENSA invalide: %d"
-#: elf32-xtensa.c:908
+#: elf32-xtensa.c:926
+#, c-format
msgid "%B(%A): invalid property table"
msgstr "%B(%A): table de propriété invalide"
-#: elf32-xtensa.c:2774
+#: elf32-xtensa.c:2790
+#, c-format
msgid "%B(%A+0x%lx): relocation offset out of range (size=0x%x)"
msgstr "%B(%A+0x%lx): décalage de réadressage hors limite (taille=0x%x)"
-#: elf32-xtensa.c:2853 elf32-xtensa.c:2974
+#: elf32-xtensa.c:2871 elf32-xtensa.c:2990
msgid "dynamic relocation in read-only section"
msgstr "réadressage dynamique dans une section en lecture seule"
-#: elf32-xtensa.c:2950
+#: elf32-xtensa.c:2967
msgid "TLS relocation invalid without dynamic sections"
msgstr "réadressage TLS incorrecte sans section dynamique"
-#: elf32-xtensa.c:3169
+#: elf32-xtensa.c:3178
msgid "internal inconsistency in size of .got.loc section"
msgstr "incohérence interne dans la taille de la section .got.loc"
-#: elf32-xtensa.c:3482
+#: elf32-xtensa.c:3485
+#, c-format
msgid "%B: incompatible machine type. Output is 0x%x. Input is 0x%x"
msgstr "%B: type de machine incompatible. Sortie est 0x%x. Entrée est 0x%x"
-#: elf32-xtensa.c:4713 elf32-xtensa.c:4721
+#: elf32-xtensa.c:4716 elf32-xtensa.c:4724
msgid "Attempt to convert L32R/CALLX to CALL failed"
msgstr "Échec de la tentative de convertir L32R/CALLX en CALL"
-#: elf32-xtensa.c:6330 elf32-xtensa.c:6406 elf32-xtensa.c:7522
+#: elf32-xtensa.c:6552 elf32-xtensa.c:6629 elf32-xtensa.c:8002
+#, c-format
msgid "%B(%A+0x%lx): could not decode instruction; possible configuration mismatch"
msgstr "%B(%A+0x%lx): l'instruction ne peut pas être décodée; la configuration est peut-être erronée"
-#: elf32-xtensa.c:7262
+#: elf32-xtensa.c:7743
+#, c-format
msgid "%B(%A+0x%lx): could not decode instruction for XTENSA_ASM_SIMPLIFY relocation; possible configuration mismatch"
msgstr "%B(%A+0x%lx): l'instruction ne peut pas être décodée pour un réadressage XTENSA_ASM_SIMPLIFY; la configuration est peut-être erronée"
-#: elf32-xtensa.c:9022
+#: elf32-xtensa.c:9585
msgid "invalid relocation address"
msgstr "adresse de réadressage incorrecte"
-#: elf32-xtensa.c:9071
+#: elf32-xtensa.c:9635
msgid "overflow after relaxation"
msgstr "débordement après la relâche"
-#: elf32-xtensa.c:10203
+#: elf32-xtensa.c:10779
+#, c-format
msgid "%B(%A+0x%lx): unexpected fix for %s relocation"
msgstr "%B(%A+0x%lx): correction inattendue pour le réadressage %s"
-#: elf64-alpha.c:474
+#: elf64-alpha.c:472
msgid "GPDISP relocation did not find ldah and lda instructions"
msgstr "le réadressage GPDISP n'a pas repéré les instructions ldah et lda"
-#: elf64-alpha.c:2503
+#: elf64-alpha.c:1112
+#, c-format
+msgid "%B: unrecognised Alpha reloc number: %d"
+msgstr "%B: numéro de réadressage Alpha non reconnu: %d"
+
+#: elf64-alpha.c:2529
+#, c-format
msgid "%B: .got subsegment exceeds 64K (size %d)"
msgstr "%B: le sous-segment .got excède 64K (taille %d)"
-#: elf64-alpha.c:4396 elf64-alpha.c:4408
+#: elf64-alpha.c:3084
+#, c-format
+msgid "%B: %A+0x%lx: warning: %s relocation against unexpected insn"
+msgstr "%B: %A+0x%lx: attention: réadressage de %s sur une insn inattendue"
+
+#: elf64-alpha.c:3280
+#, c-format
+msgid "%B: %A+0x%lx: warning: LITERAL relocation against unexpected insn"
+msgstr "%B: %A+0x%lx: attention: réadressage LITERAL sur une insn inattendue"
+
+#: elf64-alpha.c:4481 elf64-alpha.c:4494
+#, c-format
msgid "%B: gp-relative relocation against dynamic symbol %s"
msgstr "%B: réadressage relatif au gp vers le symbole dynamique %s"
-#: elf64-alpha.c:4434 elf64-alpha.c:4574
+#: elf64-alpha.c:4521 elf64-alpha.c:4665
+#, c-format
msgid "%B: pc-relative relocation against dynamic symbol %s"
msgstr "%B: réadressage relatif au PC vers le symbole dynamique %s"
-#: elf64-alpha.c:4462
+#: elf64-alpha.c:4550
+#, c-format
msgid "%B: change in gp: BRSGP %s"
msgstr "%B: changé dans le GP: BRSGP %s"
-#: elf64-alpha.c:4487
+#: elf64-alpha.c:4575
msgid "<unknown>"
msgstr "<inconnu>"
-#: elf64-alpha.c:4492
+#: elf64-alpha.c:4581
+#, c-format
msgid "%B: !samegp reloc against symbol without .prologue: %s"
-msgstr "%B: relocalisation !samegp vers le symbole sans .prologue: %s"
+msgstr "%B: réadressage !samegp vers le symbole sans .prologue: %s"
-#: elf64-alpha.c:4549
+#: elf64-alpha.c:4639
+#, c-format
msgid "%B: unhandled dynamic relocation against %s"
msgstr "%B: réadressage dynamique non traité vers %s"
-#: elf64-alpha.c:4581
+#: elf64-alpha.c:4674
+#, c-format
msgid "%B: pc-relative relocation against undefined weak symbol %s"
msgstr "%B: réadressage relatif au PC vers le symbole faible non défini %s"
-#: elf64-alpha.c:4645
+#: elf64-alpha.c:4740
+#, c-format
msgid "%B: dtp-relative relocation against dynamic symbol %s"
msgstr "%B: réadressage relatif au dtp vers le symbole dynamique %s"
-#: elf64-alpha.c:4668
+#: elf64-alpha.c:4765
+#, c-format
msgid "%B: tp-relative relocation against dynamic symbol %s"
msgstr "%B: réadressage relatif au tp vers le symbole dynamique %s"
-#: elf64-hppa.c:2084
+#: elf64-hppa.c:2082
#, c-format
msgid "stub entry for %s cannot load .plt, dp offset = %ld"
msgstr "entrée de l'ébauche pour %s ne peut charger .plt, décalage dp = %ld"
-#: elf64-hppa.c:3280
+#: elf64-hppa.c:3287
+#, c-format
msgid "%B(%A+0x%"
msgstr "%B(%A+0x%"
-#: elf64-ia64-vms.c:587 elf32-ia64.c:619 elf64-ia64.c:619
+#: elf64-ia64-vms.c:587 elf32-ia64.c:620 elf64-ia64.c:620
+#, c-format
msgid "%B: Can't relax br at 0x%lx in section `%A'. Please use brl or indirect branch."
-msgstr "%B: Ne peut relâcher br à 0x%lx dans la section «%A». Veuillez utiliser brl ou un branchement indirect."
+msgstr "%B: Ne peut relâcher br à 0x%lx dans la section « %A ». Veuillez utiliser brl ou un branchement indirect."
-#: elf64-ia64-vms.c:2027 elf32-ia64.c:2278 elf64-ia64.c:2278
+#: elf64-ia64-vms.c:2029 elf32-ia64.c:2282 elf64-ia64.c:2282
msgid "@pltoff reloc against local symbol"
-msgstr "relocalisation @pltoff vers un symbole local"
+msgstr "réadressage @pltoff vers un symbole local"
-#: elf64-ia64-vms.c:3279 elf32-ia64.c:3684 elf64-ia64.c:3684
+#: elf64-ia64-vms.c:3282 elf32-ia64.c:3688 elf64-ia64.c:3688
#, c-format
-msgid "%s: short data segment overflowed (0x%lx >= 0x400000)"
-msgstr "%s: débordement du segment de données court (0x%lx >= 0x400000)"
+msgid "%B: short data segment overflowed (0x%lx >= 0x400000)"
+msgstr "%B: débordement du segment de données court (0x%lx >= 0x400000)"
-#: elf64-ia64-vms.c:3290 elf32-ia64.c:3695 elf64-ia64.c:3695
-#, c-format
-msgid "%s: __gp does not cover short data segment"
-msgstr "%s: __gp ne couvre pas le segment de données court"
+#: elf64-ia64-vms.c:3292 elf32-ia64.c:3698 elf64-ia64.c:3698
+msgid "%B: __gp does not cover short data segment"
+msgstr "%B: __gp ne couvre pas le segment de données court"
-#: elf64-ia64-vms.c:3555 elf32-ia64.c:3962 elf64-ia64.c:3962
+#: elf64-ia64-vms.c:3558 elf32-ia64.c:3965 elf64-ia64.c:3965
+#, c-format
msgid "%B: non-pic code with imm relocation against dynamic symbol `%s'"
msgstr "%B: code non pic avec des réadressages imm vers le symbole dynamique « %s »"
-#: elf64-ia64-vms.c:3617 elf32-ia64.c:4029 elf64-ia64.c:4029
+#: elf64-ia64-vms.c:3622 elf32-ia64.c:4033 elf64-ia64.c:4033
+#, c-format
msgid "%B: @gprel relocation against dynamic symbol %s"
msgstr "%B: réadressage @gprel vers le symbole dynamique %s"
-#: elf64-ia64-vms.c:3676 elf32-ia64.c:4092 elf64-ia64.c:4092
+#: elf64-ia64-vms.c:3681 elf32-ia64.c:4096 elf64-ia64.c:4096
msgid "%B: linking non-pic code in a position independent executable"
msgstr "%B: liaison de code non-pic dans un exécutable à position indépendante"
-#: elf64-ia64-vms.c:3777 elf32-ia64.c:4229 elf64-ia64.c:4229
+#: elf64-ia64-vms.c:3783 elf32-ia64.c:4234 elf64-ia64.c:4234
+#, c-format
msgid "%B: @internal branch to dynamic symbol %s"
msgstr "%B: branchement @internal vers le symbole dynamique %s"
-#: elf64-ia64-vms.c:3779 elf32-ia64.c:4231 elf64-ia64.c:4231
+#: elf64-ia64-vms.c:3786 elf32-ia64.c:4237 elf64-ia64.c:4237
+#, c-format
msgid "%B: speculation fixup to dynamic symbol %s"
msgstr "%B: spéculation d'ajustements vers le symbole dynamique %s"
-#: elf64-ia64-vms.c:3781 elf32-ia64.c:4233 elf64-ia64.c:4233
+#: elf64-ia64-vms.c:3789 elf32-ia64.c:4240 elf64-ia64.c:4240
+#, c-format
msgid "%B: @pcrel relocation against dynamic symbol %s"
msgstr "%B: réadressage @pcrel vers le symbole dynamique %s"
-#: elf64-ia64-vms.c:3905 elf32-ia64.c:4430 elf64-ia64.c:4430
+#: elf64-ia64-vms.c:3913 elf32-ia64.c:4437 elf64-ia64.c:4437
msgid "unsupported reloc"
-msgstr "relocalisation non supportée"
+msgstr "réadressage non supportée"
-#: elf64-ia64-vms.c:3942 elf32-ia64.c:4468 elf64-ia64.c:4468
+#: elf64-ia64-vms.c:3950 elf32-ia64.c:4475 elf64-ia64.c:4475
+#, c-format
msgid "%B: missing TLS section for relocation %s against `%s' at 0x%lx in section `%A'."
msgstr "%B: setion TLS manquante pour le réadressage %s vers « %s » à 0x%lx dans la section « %A »."
-#: elf64-ia64-vms.c:3957 elf32-ia64.c:4483 elf64-ia64.c:4483
+#: elf64-ia64-vms.c:3967 elf32-ia64.c:4492 elf64-ia64.c:4492
+#, c-format
msgid "%B: Can't relax br (%s) to `%s' at 0x%lx in section `%A' with size 0x%lx (> 0x1000000)."
-msgstr "%B:Ne peut pas relâcher br (%s) sur «%s» à 0x%lx dans la section «%A» avec la taille 0x%lx (> 0x1000000)."
+msgstr "%B:Ne peut pas relâcher br (%s) sur « %s » à 0x%lx dans la section « %A » avec la taille 0x%lx (> 0x1000000)."
-#: elf64-ia64-vms.c:4246 elf32-ia64.c:4745 elf64-ia64.c:4745
+#: elf64-ia64-vms.c:4258 elf32-ia64.c:4749 elf64-ia64.c:4749
msgid "%B: linking trap-on-NULL-dereference with non-trapping files"
msgstr "%B: édition de liens trap-on-NULL-dereference avec des fichiers non-trapping"
-#: elf64-ia64-vms.c:4255 elf32-ia64.c:4754 elf64-ia64.c:4754
+#: elf64-ia64-vms.c:4267 elf32-ia64.c:4758 elf64-ia64.c:4758
msgid "%B: linking big-endian files with little-endian files"
msgstr "%B: édition de liens entre des fichiers à octets de poids fort et des fichiers à octets de poids faible"
-#: elf64-ia64-vms.c:4264 elf32-ia64.c:4763 elf64-ia64.c:4763
+#: elf64-ia64-vms.c:4276 elf32-ia64.c:4767 elf64-ia64.c:4767
msgid "%B: linking 64-bit files with 32-bit files"
msgstr "%B: édition de liens entre fichiers 64 bits et fichiers 32 bits"
-#: elf64-ia64-vms.c:4273 elf32-ia64.c:4772 elf64-ia64.c:4772
+#: elf64-ia64-vms.c:4285 elf32-ia64.c:4776 elf64-ia64.c:4776
msgid "%B: linking constant-gp files with non-constant-gp files"
msgstr "%B: édition de liens entre fichiers constant-gp et fichiers non-constant-gp"
-#: elf64-ia64-vms.c:4283 elf32-ia64.c:4782 elf64-ia64.c:4782
+#: elf64-ia64-vms.c:4295 elf32-ia64.c:4786 elf64-ia64.c:4786
msgid "%B: linking auto-pic files with non-auto-pic files"
msgstr "%B: édition de liens entre fichiers auto-pic et fichiers non-auto-pic"
-#: elf64-ia64-vms.c:5125 elflink.c:4299
+#: elf64-ia64-vms.c:5138 elflink.c:4730
+#, c-format
msgid "Warning: alignment %u of common symbol `%s' in %B is greater than the alignment (%u) of its section %A"
-msgstr "Attention: alignement %u du symbole commun «%s» dans %B est plus grand que l'alignement (%u) de sa section %A"
+msgstr "Attention: alignement %u du symbole commun « %s » dans %B est plus grand que l'alignement (%u) de sa section %A"
-#: elf64-ia64-vms.c:5131 elflink.c:4305
+#: elf64-ia64-vms.c:5145 elflink.c:4737
+#, c-format
msgid "Warning: alignment %u of symbol `%s' in %B is smaller than %u in %B"
-msgstr "Attention: alignement %u du symbole «%s» dans %B est plus petit que %u dans %B"
+msgstr "Attention: alignement %u du symbole « %s » dans %B est plus petit que %u dans %B"
-#: elf64-ia64-vms.c:5146 elflink.c:4321
+#: elf64-ia64-vms.c:5161
+#, c-format
msgid "Warning: size of symbol `%s' changed from %lu in %B to %lu in %B"
-msgstr "Attention: taille du symbole «%s» a changé de %lu dans %B à %lu dans %B"
+msgstr "Attention: taille du symbole « %s » a changé de %lu dans %B à %lu dans %B"
+
+#: elf64-mips.c:3615 elfn32-mips.c:3439
+#, c-format
+msgid "unrecognised MIPS reloc number: %d"
+msgstr "type de réadressage MIPS non reconnu: %d"
-#: elf64-mmix.c:986
+#: elf64-mmix.c:984
msgid ""
"invalid input relocation when producing non-ELF, non-mmo format output.\n"
" Please use the objcopy program to convert from ELF or mmo,\n"
@@ -3029,7 +4300,7 @@ msgstr ""
" Veuillez utiliser le programme objcopy pour convertir de ELF ou mmo,\n"
" ou assembler en utilisant « -no-expand » (pour gcc, « -Wa,-no-expand »"
-#: elf64-mmix.c:1170
+#: elf64-mmix.c:1168
msgid ""
"invalid input relocation when producing non-ELF, non-mmo format output.\n"
" Please use the objcopy program to convert from ELF or mmo,\n"
@@ -3039,55 +4310,59 @@ msgstr ""
" Veuillez utiliser le programme objcopy pour convertir de ELF ou mmo,\n"
" ou compiler en utilisant l'option gcc « -mno-base-addresses »."
-#: elf64-mmix.c:1196
+#: elf64-mmix.c:1195
#, c-format
msgid ""
-"%s: Internal inconsistency error for value for\n"
+"%B: Internal inconsistency error for value for\n"
" linker-allocated global register: linked: 0x%lx%08lx != relaxed: 0x%lx%08lx\n"
msgstr ""
-"%s: erreur d'incohérence interne pour la valeur du registre global\n"
+"%B: erreur d'incohérence interne pour la valeur du registre global\n"
" alloué à l'édition de lien: lié: 0x%lx%08lx != relâché: 0x%lx%08lx\n"
-#: elf64-mmix.c:1618
+#: elf64-mmix.c:1266
#, c-format
-msgid "%s: base-plus-offset relocation against register symbol: (unknown) in %s"
-msgstr "%s: réadressage base plus décalage vers le symbole registre: (inconnu) dans %s"
+msgid "%B: invalid MMIX reloc number: %d"
+msgstr "%B: numéro de réadressage MMIX invalide: %d"
-#: elf64-mmix.c:1623
+#: elf64-mmix.c:1618
#, c-format
-msgid "%s: base-plus-offset relocation against register symbol: %s in %s"
-msgstr "%s: réadressage base plus décalage vers le symbole registre: %s dans %s"
+msgid "%B: base-plus-offset relocation against register symbol: (unknown) in %A"
+msgstr "%B: réadressage base plus décalage vers le symbole registre: (inconnu) dans %A"
-#: elf64-mmix.c:1667
+#: elf64-mmix.c:1624
#, c-format
-msgid "%s: register relocation against non-register symbol: (unknown) in %s"
-msgstr "%s: réadressage de registre vers le symbole non-registre: (inconnu) dans %s"
+msgid "%B: base-plus-offset relocation against register symbol: %s in %A"
+msgstr "%B: réadressage base plus décalage vers le symbole registre: %s dans %A"
-#: elf64-mmix.c:1672
+#: elf64-mmix.c:1669
#, c-format
-msgid "%s: register relocation against non-register symbol: %s in %s"
-msgstr "%s: réadressage de registre vers le symbole non-registre: %s dans %s"
+msgid "%B: register relocation against non-register symbol: (unknown) in %A"
+msgstr "%B: réadressage de registre vers le symbole non-registre: (inconnu) dans %A"
-#: elf64-mmix.c:1709
+#: elf64-mmix.c:1675
#, c-format
-msgid "%s: directive LOCAL valid only with a register or absolute value"
-msgstr "%s: directive LOCAL valide seulement avec un registre ou une valeur absolue"
+msgid "%B: register relocation against non-register symbol: %s in %A"
+msgstr "%B: réadressage de registre vers le symbole non-registre: %s dans %A"
+
+#: elf64-mmix.c:1712
+msgid "%B: directive LOCAL valid only with a register or absolute value"
+msgstr "%B: directive LOCAL valide seulement avec un registre ou une valeur absolue"
-#: elf64-mmix.c:1739
+#: elf64-mmix.c:1743
#, c-format
-msgid "%s: LOCAL directive: Register $%ld is not a local register. First global register is $%ld."
-msgstr "%s: directive LOCAL: registre $%ld n'est pas un registre local. Premier registre global est $%ld."
+msgid "%B: LOCAL directive: Register $%ld is not a local register. First global register is $%ld."
+msgstr "%B: directive LOCAL: registre $%ld n'est pas un registre local. Premier registre global est $%ld."
-#: elf64-mmix.c:2198
+#: elf64-mmix.c:2202
#, c-format
-msgid "%s: Error: multiple definition of `%s'; start of %s is set in a earlier linked file\n"
-msgstr "%s: erreur: multiple définitions de «%s»; début de %s est initialisé dans un précédent fichier lié\n"
+msgid "%B: Error: multiple definition of `%s'; start of %s is set in a earlier linked file\n"
+msgstr "%B: erreur: multiple définitions de « %s »; début de %s est initialisé dans un précédent fichier lié\n"
-#: elf64-mmix.c:2252
+#: elf64-mmix.c:2257
msgid "Register section has contents\n"
msgstr "Registre de section contient\n"
-#: elf64-mmix.c:2441
+#: elf64-mmix.c:2447
#, c-format
msgid ""
"Internal inconsistency: remaining %u != max %u.\n"
@@ -3096,105 +4371,117 @@ msgstr ""
"Inconsistance interne: reste %u != max %u.\n"
" Merci de rapporter cette anomalie."
-#: elf64-ppc.c:4463
+#: elf64-ppc.c:4625
+#, c-format
msgid "%P: %B: cannot create stub entry %s\n"
msgstr "%P: %B: ne peut créer l'entrée de l'ébauche %s\n"
-#: elf64-ppc.c:4810
+#: elf64-ppc.c:4993
msgid "%P: symbol '%s' has invalid st_other for ABI version 1\n"
msgstr "%P: le symbole « %s » a un st_other invalide pour l'ABI à la version 1\n"
-#: elf64-ppc.c:5170
-msgid "%P: .opd not allowed in ABI version %d\n"
-msgstr "%P: .opd pas permis dans l'ABI à la version %d\n"
+#: elf64-ppc.c:5163
+#, c-format
+msgid "%P: %B .opd not allowed in ABI version %d\n"
+msgstr "%P: %B: .opd pas permis dans l'ABI à la version %d\n"
+
+#: elf64-ppc.c:5639
+#, c-format
+msgid "%H: %s reloc unsupported in shared libraries and PIEs.\n"
+msgstr "%H: le réadressage %s n'est pas supporté dans les bibliothèques partagées et les PIE.\n"
-#: elf64-ppc.c:5809
+#: elf64-ppc.c:6046
+#, c-format
msgid "%B uses unknown e_flags 0x%lx"
msgstr "%B utilise le e_flags 0x%lx inconnu"
-#: elf64-ppc.c:5816
+#: elf64-ppc.c:6054
+#, c-format
msgid "%B: ABI version %ld is not compatible with ABI version %ld output"
msgstr "%B: la version ABI %ld n'est pas compatible avec la sortie de l'ABI version %ld"
-#: elf64-ppc.c:5843
+#: elf64-ppc.c:6082
#, c-format
msgid " [abiv%ld]"
msgstr " [abiv%ld]"
-#: elf64-ppc.c:7007
+#: elf64-ppc.c:7413
msgid "%P: copy reloc against `%T' requires lazy plt linking; avoid setting LD_BIND_NOW=1 or upgrade gcc\n"
msgstr "%P: le réadressage par copie sur « %T » nécessite un lien plt paresseux; évitez de mettre LD_BIND_NOW=1 ou mettez à jour gcc\n"
-#: elf64-ppc.c:7270
+#: elf64-ppc.c:7680
msgid "%B: undefined symbol on R_PPC64_TOCSAVE relocation"
msgstr "%B: symbole indéfini sur le réadressage R_PPC64_TOCSAVE"
-#: elf64-ppc.c:7499
+#: elf64-ppc.c:7910
+#, c-format
msgid "%P: dynreloc miscount for %B, section %A\n"
msgstr "%P: erreur de décompte de réadressage dynamique pour %B, section %A\n"
-#: elf64-ppc.c:7583
+#: elf64-ppc.c:7999
msgid "%B: .opd is not a regular array of opd entries"
msgstr "%B: .opd n'est pas un tableau régulier d'entrées opd"
-#: elf64-ppc.c:7592
+#: elf64-ppc.c:8009
+#, c-format
msgid "%B: unexpected reloc type %u in .opd section"
-msgstr "%B: type de relocalisation %u inattendu dans la section .opd"
+msgstr "%B: type de réadressage %u inattendu dans la section .opd"
-#: elf64-ppc.c:7613
+#: elf64-ppc.c:8031
+#, c-format
msgid "%B: undefined sym `%s' in .opd section"
-msgstr "%B: symbole «%s» indéfini dans la section .opd"
+msgstr "%B: symbole « %s » indéfini dans la section .opd"
-#: elf64-ppc.c:8177
+#: elf64-ppc.c:8600
msgid "%H __tls_get_addr lost arg, TLS optimization disabled\n"
msgstr "%H __tls_get_addr a perdu l'argument, optimisation TLS désactivée\n"
-#: elf64-ppc.c:8516 elf64-ppc.c:9139
+#: elf64-ppc.c:8943 elf64-ppc.c:9580
#, c-format
msgid "%s defined on removed toc entry"
msgstr "%s défini dans une entrée toc supprimée"
-#: elf64-ppc.c:8868
-msgid "%P: %H: toc optimization is not supported for %s instruction.\n"
-msgstr "%P: %H: l'optimisation toc n'est pas supportée pour l'instruction %s.\n"
+#: elf64-ppc.c:9308
+#, c-format
+msgid "%H: toc optimization is not supported for %s instruction.\n"
+msgstr "%H: l'optimisation toc n'est pas supportée pour l'instruction %s.\n"
-#: elf64-ppc.c:9096
-msgid "%P: %H: %s references optimized away TOC entry\n"
-msgstr "%P: %H: %s fait référence à une entrée TOC supprimée par l'optimisation\n"
+#: elf64-ppc.c:9537
+#, c-format
+msgid "%H: %s references optimized away TOC entry\n"
+msgstr "%H: %s fait référence à une entrée TOC supprimée par l'optimisation\n"
-#: elf64-ppc.c:10394
+#: elf64-ppc.c:10878
msgid "%P: cannot find opd entry toc for `%T'\n"
msgstr "%P: l'entrée toc de opd non trouvée pour « %T »\n"
-#: elf64-ppc.c:10479
+#: elf64-ppc.c:10969
msgid "%P: long branch stub `%s' offset overflow\n"
msgstr "%P: débordement de l'offset du branchement long de l'ébauche « %s »\n"
-#: elf64-ppc.c:10538
+#: elf64-ppc.c:11028
msgid "%P: can't find branch stub `%s'\n"
msgstr "%P: ne peut repérer l'ébauche de branchement « %s »\n"
-#: elf64-ppc.c:10602 elf64-ppc.c:10749 elf64-ppc.c:12416
+#: elf64-ppc.c:11092 elf64-ppc.c:11244 elf64-ppc.c:13052
+#, c-format
msgid "%P: linkage table error against `%T'\n"
msgstr "%P: erreur de la table de liaison vers « %T »\n"
-#: elf64-ppc.c:10940
+#: elf64-ppc.c:11454
msgid "%P: can't build branch stub `%s'\n"
msgstr "%P: ne peut construire l'ébauche de branchement « %s »\n"
-#: elf64-ppc.c:11748
+#: elf64-ppc.c:12227
+#, c-format
msgid "%B section %A exceeds stub group size"
msgstr "%B section %A dépasse la taille du groupe d'ébauche"
-#: elf64-ppc.c:12662 elf64-ppc.c:12697
-msgid "%P: %s offset too large for .eh_frame sdata4 encoding"
-msgstr "%P: décalage %s trop grand pour l'encodage .eh_frame sdata4"
-
-#: elf64-ppc.c:12758
+#: elf64-ppc.c:13331
msgid "%P: stubs don't match calculated size\n"
msgstr "%P: taille des ébauches ne concorde pas avec la taille calculée\n"
-#: elf64-ppc.c:12770
+#: elf64-ppc.c:13343
#, c-format
msgid ""
"linker stubs in %u group%s\n"
@@ -3203,7 +4490,8 @@ msgid ""
" long branch %lu\n"
" long toc adj %lu\n"
" plt call %lu\n"
-" plt call toc %lu"
+" plt call toc %lu\n"
+" global entry %lu"
msgstr ""
"éditeur de liens des ébauches dans %u groupe%s\n"
" branchements %lu\n"
@@ -3211,896 +4499,1266 @@ msgstr ""
" long branchements %lu\n"
" long ajustements toc %lu\n"
" appels plt %lu\n"
-" appels plt toc %lu"
+" appels plt toc %lu\n"
+" entrées globales %lu"
-#: elf64-ppc.c:13096
-msgid "%P: %H: %s used with TLS symbol `%T'\n"
-msgstr "%P: %H: %s utilisé avec le symbole TLS « %T »\n"
+#: elf64-ppc.c:13665
+#, c-format
+msgid "%H: %s used with TLS symbol `%T'\n"
+msgstr "%H: %s utilisé avec le symbole TLS « %T »\n"
+
+#: elf64-ppc.c:13667
+#, c-format
+msgid "%H: %s used with non-TLS symbol `%T'\n"
+msgstr "%H: %s utilisé avec le symbole non-TLS « %T »\n"
-#: elf64-ppc.c:13097
-msgid "%P: %H: %s used with non-TLS symbol `%T'\n"
-msgstr "%P: %H: %s utilisé avec le symbole non-TLS « %T »\n"
+#: elf64-ppc.c:14306
+#, c-format
+msgid "%H: call to `%T' lacks nop, can't restore toc; recompile with -fPIC\n"
+msgstr "%H: il manque un nop à l'appel à « %T », toc ne peut être rétablie, recompilez avec -fPIC\n"
-#: elf64-ppc.c:13675
-msgid "%P: %H: call to `%T' lacks nop, can't restore toc; recompile with -fPIC\n"
-msgstr "%P: %H: il manque un nop à l'appel à « %T », toc ne peut être rétablie, recompilez avec -fPIC\n"
+#: elf64-ppc.c:14312
+#, c-format
+msgid "%H: call to `%T' lacks nop, can't restore toc; (-mcmodel=small toc adjust stub)\n"
+msgstr "%H: il manque un nop à l'appel à « %T », toc ne peut être rétablie, (ébauche d'ajustement de la toc -mcmodel=small)\n"
-#: elf64-ppc.c:13793
+#: elf64-ppc.c:14440
+#, c-format
msgid "%P: %B: unknown relocation type %d for `%T'\n"
msgstr "%P: %B: type de réadressage %d inconnu pour « %T »\n"
-#: elf64-ppc.c:14310
-msgid "%P: %H: %s for indirect function `%T' unsupported\n"
-msgstr "%P: %H: %s non supporté pour la fonction indirecte « %T »\n"
+#: elf64-ppc.c:14994
+#, c-format
+msgid "%H: %s for indirect function `%T' unsupported\n"
+msgstr "%H: %s non supporté pour la fonction indirecte « %T »\n"
-#: elf64-ppc.c:14417
+#: elf64-ppc.c:15132
+#, c-format
msgid "%P: %B: %s is not supported for `%T'\n"
msgstr "%P: %B: %s n'est pas supporté pour le symbole « %T »\n"
-#: elf64-ppc.c:14565
-msgid "%P: %H: error: %s not a multiple of %u\n"
-msgstr "%P: %H: erreur: %s n'est pas un multiple de %u\n"
+#: elf64-ppc.c:15287
+#, c-format
+msgid "%H: error: %s not a multiple of %u\n"
+msgstr "%H: erreur: %s n'est pas un multiple de %u\n"
+
+#: elf64-ppc.c:15309
+#, c-format
+msgid "%H: unresolvable %s against `%T'\n"
+msgstr "%H: %s ne peut être résolu par rapport à « %T »\n"
+
+#: elf64-ppc.c:15406
+#, c-format
+msgid "%H: %s against `%T': error %d\n"
+msgstr "%H: %s vers « %T »: erreur %d\n"
-#: elf64-ppc.c:14586
-msgid "%P: %H: unresolvable %s against `%T'\n"
-msgstr "%P: %H: %s ne peut être résolu par rapport à « %T »\n"
+#: elf64-ppc.c:15801 elf64-ppc.c:15830
+msgid "%P: %s offset too large for .eh_frame sdata4 encoding"
+msgstr "%P: décalage %s trop grand pour l'encodage .eh_frame sdata4"
-#: elf64-ppc.c:14644
-msgid "%P: %H: %s against `%T': error %d\n"
-msgstr "%P: %H: %s vers « %T »: erreur %d\n"
+#: elf64-s390.c:2712
+msgid "%B: `%s' non-PLT reloc for symbol defined in shared library and accessed from executable (rebuild file with -fPIC ?)"
+msgstr "%B: réadressage non-PLT « %s » pour le symbole défini dans une bibliothèque partagée et accédé depuis l'exécutable (recompiler le fichier avec -fPIC ?)"
-#: elf64-sh64.c:1686
+#: elf64-sh64.c:1680
#, c-format
-msgid "%s: error: unaligned relocation type %d at %08x reloc %08x\n"
-msgstr "%s: erreur: type de réadressage %d non aligné à %08x réadressé`%08x\n"
+msgid "%B: error: unaligned relocation type %d at %08x reloc %08x\n"
+msgstr "%B: erreur: type de réadressage %d non aligné à %08x réadressé`%08x\n"
-#: elf64-sparc.c:446
+#: elf64-sparc.c:460
msgid "%B: Only registers %%g[2367] can be declared using STT_REGISTER"
msgstr "%B: Seuls les registres %%g[2367] peuvent être déclarés en utilisant les registres STT_REGISTER"
-#: elf64-sparc.c:466
+#: elf64-sparc.c:481
+#, c-format
msgid "Register %%g%d used incompatibly: %s in %B, previously %s in %B"
msgstr "Registre %%g%d utilisé de manière incompatible: %s dans %B précédemment %s dans %B"
-#: elf64-sparc.c:489
+#: elf64-sparc.c:505
+#, c-format
msgid "Symbol `%s' has differing types: REGISTER in %B, previously %s in %B"
-msgstr "Symbole «%s» a des types qui diffèrent: REGISTRE dans %B, précédemment %s dans %B"
+msgstr "Symbole « %s » a des types qui diffèrent: REGISTRE dans %B, précédemment %s dans %B"
-#: elf64-sparc.c:534
+#: elf64-sparc.c:552
+#, c-format
msgid "Symbol `%s' has differing types: %s in %B, previously REGISTER in %B"
-msgstr "Symbole «%s» a des types qui diffèrent: %s dans %B, précédemment REGISTRE dans %B"
+msgstr "Symbole « %s » a des types qui diffèrent: %s dans %B, précédemment REGISTRE dans %B"
-#: elf64-sparc.c:687
+#: elf64-sparc.c:707
msgid "%B: linking UltraSPARC specific with HAL specific code"
msgstr "%B: édition de liens spécifiques pour UltraSPARC avec du code spécifique HAL"
-#: elf64-x86-64.c:1530
+#: elf64-x86-64.c:1923
+msgid "hidden symbol "
+msgstr "symbole caché "
+
+#: elf64-x86-64.c:1926
+msgid "internal symbol "
+msgstr "symbole interne "
+
+#: elf64-x86-64.c:1929
+msgid "protected symbol "
+msgstr "symbole protégé "
+
+#: elf64-x86-64.c:1932
+msgid "symbol "
+msgstr "symbole "
+
+#: elf64-x86-64.c:1933 elf64-x86-64.c:1943
+msgid "; recompile with -fPIC"
+msgstr "; recompilé avec -fPIC"
+
+#: elf64-x86-64.c:1938
+msgid "undefined "
+msgstr "non défini "
+
+# Les %s%s au début de %s%s« %s » peuvent être « non défini » ou rien pour le premier et
+# un des fragments ci-dessus pour le second ce qui donne par exemple « symbole interne non défini» en inversant les deux %s.
+# Le dernier %s collé au dernier mot peut être rien ou un des fragments traduits ci-dessus et commençant par un point-virgule.
+#: elf64-x86-64.c:1947
+#, c-format
+msgid "%B: relocation %s against %s%s`%s' can not be used when making a shared object%s"
+msgstr "%1$B: réadressage %2$s vers %4$s%3$s« %5$s » ne peut pas être utilisé en créant un objet partagé%6$s"
+
+#: elf64-x86-64.c:2510
+#, c-format
msgid "%B: relocation %s against symbol `%s' isn't supported in x32 mode"
msgstr "%B: le réadressage %s sur le symbole « %s » n'est pas supporté en mode x32"
-#: elf64-x86-64.c:1688
+#: elf64-x86-64.c:2633
+#, c-format
msgid "%B: '%s' accessed both as normal and thread local symbol"
-msgstr "%B: symbole «%s» accédé à la fois comme normal et comme local au thread"
+msgstr "%B: symbole « %s » accédé à la fois comme normal et comme local au thread"
-#: elf64-x86-64.c:3405 /src/binutils-gdb/bfd/elfnn-aarch64.c:3511
+#: elf64-x86-64.c:4576
+#: /Users/gingold/Repositories/fsf/binutils-gdb.git/bfd/elfnn-aarch64.c:5018
+#, c-format
msgid "%B: relocation %s against STT_GNU_IFUNC symbol `%s' has non-zero addend: %d"
msgstr "%B: le réadressage %s vers le symbole STT_GNU_IFUNC « %s » a l'opérande non nul: %d"
-#: elf64-x86-64.c:3667
-msgid "%B: relocation R_X86_64_GOTOFF64 against protected function `%s' can not be used when making a shared object"
-msgstr "%B: réadressage R_X86_64_GOTOFF64 vers la fonction protégée « %s » ne peut pas être utilisé lors de la création d'un objet partagé"
-
-#: elf64-x86-64.c:3787
-msgid "; recompile with -fPIC"
-msgstr "; recompilé avec -fPIC"
-
-#: elf64-x86-64.c:3792
-msgid "%B: relocation %s against %s `%s' can not be used when making a shared object%s"
-msgstr "%B: réadressage %s vers %s « %s » ne peut pas être utilisé en créant un objet partagé %s"
+#: elf64-x86-64.c:4831
+#, c-format
+msgid "%B: relocation R_X86_64_GOTOFF64 against undefined %s `%s' can not be used when making a shared object"
+msgstr "%B: réadressage R_X86_64_GOTOFF64 sur le symbole %s « %s » non défini ne peut pas être utilisé lors de la création d'un objet partagé"
-#: elf64-x86-64.c:3794
-msgid "%B: relocation %s against undefined %s `%s' can not be used when making a shared object%s"
-msgstr "%B: réadressage %s vers le %s non défini « %s » ne peut pas être utilisé en créant un objet partagé %s"
+# Le %s protégée est soit « function » ou « data » sans traduction.
+# Cette construction scabreuse a déjà été enlevée dans les sources.
+#: elf64-x86-64.c:4845
+#, c-format
+msgid "%B: relocation R_X86_64_GOTOFF64 against protected %s `%s' can not be used when making a shared object"
+msgstr "%B: réadressage R_X86_64_GOTOFF64 vers la %s protégée « %s » ne peut pas être utilisé lors de la création d'un objet partagé"
-#: elf64-x86-64.c:3900
+#: elf64-x86-64.c:5122
+#, c-format
msgid "%B: addend -0x%x in relocation %s against symbol `%s' at 0x%lx in section `%A' is out of range"
msgstr "%B: l'opérande -0x%x dans le réadressage %s vers le symbole « %s » à 0x%lx dans la section « %A » est hors limite"
-#: elf64-x86-64.c:3908
+#: elf64-x86-64.c:5130
+#, c-format
msgid "%B: addend 0x%x in relocation %s against symbol `%s' at 0x%lx in section `%A' is out of range"
msgstr "%B: l'opérande 0x%x dans le réadressage %s vers le symbole « %s » à 0x%lx dans la section « %A » est hors limite"
-#: elfcode.h:760
+#: elf64-x86-64.c:5952
+#, c-format
+msgid "%F%B: PC-relative offset overflow in PLT entry for `%s'\n"
+msgstr "%F%B: débordement du décalage relatif au PC dans l'entrée PLT pour « %s »\n"
+
+#: elf64-x86-64.c:6019
+#, c-format
+msgid "%F%B: branch displacement overflow in PLT entry for `%s'\n"
+msgstr "%F%B: débordement du déplacement de branchement dans l'entrée PLT pour « %s »\n"
+
+#: elf64-x86-64.c:6072
#, c-format
-msgid "warning: %s has a corrupt string table index - ignoring"
-msgstr "attention: %s a un index de table de chaînes corrompu - ignoré"
+msgid "%F%B: PC-relative offset overflow in GOT PLT entry for `%s'\n"
+msgstr "%F%B: débordement du décalage relatif au PC dans l'entrée PLT GOT pour « %s »\n"
-#: elfcode.h:1186
+#: elf64-x86-64.c:7663
#, c-format
-msgid "%s: version count (%ld) does not match symbol count (%ld)"
-msgstr "%s: compteur de version (%ld) ne concorde pas avec le symbole du compteur (%ld)"
+msgid "%F: failed to create BND PLT section\n"
+msgstr "%F: échec lors de la création de la section PLT BND\n"
-#: elfcode.h:1440
+#: elf64-x86-64.c:7713
#, c-format
-msgid "%s(%s): relocation %d has invalid symbol index %ld"
-msgstr "%s(%s): réadressage %d a un index de symbole %ld invalide"
+msgid "%F: failed to create BND PLT .eh_frame section\n"
+msgstr "%F: échec lors de la création de la section .eh_frame PLT BND\n"
-#: elfcore.h:305
+#: elfcode.h:760
+msgid "warning: %B has a corrupt string table index - ignoring"
+msgstr "attention: %B a un index de table de chaînes corrompu - ignoré"
+
+#: elfcode.h:1193
+#, c-format
+msgid "%B: version count (%ld) does not match symbol count (%ld)"
+msgstr "%B: compteur de version (%ld) ne concorde pas avec le symbole du compteur (%ld)"
+
+#: elfcode.h:1448
+#, c-format
+msgid "%B(%A): relocation %d has invalid symbol index %ld"
+msgstr "%B(%A): réadressage %d a un index de symbole %ld invalide"
+
+#: elfcore.h:300
+#, c-format
msgid "Warning: %B is truncated: expected core file size >= %lu, found: %lu."
msgstr "Attention: %B est tronqué: taille attendue du cœur du fichier >= %lu, obtenu: %lu."
-#: elflink.c:1143
+#: elflink.c:1336
+#, c-format
msgid "%s: TLS definition in %B section %A mismatches non-TLS definition in %B section %A"
msgstr "%s: définition TLS dans %B section %A ne correspond pas à la définition non TLS dans %B section %A"
-#: elflink.c:1148
+#: elflink.c:1342
+#, c-format
msgid "%s: TLS reference in %B mismatches non-TLS reference in %B"
msgstr "%s: référence TLS dans %B ne correspond pas à la référence non TLS dans %B"
-#: elflink.c:1153
+#: elflink.c:1348
+#, c-format
msgid "%s: TLS definition in %B section %A mismatches non-TLS reference in %B"
msgstr "%s: définition TLS dans %B section %A ne correspond pas à la référence TLS dans %B"
-#: elflink.c:1158
+#: elflink.c:1354
+#, c-format
msgid "%s: TLS reference in %B mismatches non-TLS definition in %B section %A"
msgstr "%s: référence TLS dans %B ne correspond pas à la définition non TLS dans %B section %A"
-#: elflink.c:1763
+#: elflink.c:2015
+#, c-format
msgid "%B: unexpected redefinition of indirect versioned symbol `%s'"
-msgstr "%B: attention: redéfinition inattendue du symbole indirect avec version «%s»"
+msgstr "%B: attention: redéfinition inattendue du symbole indirect avec version « %s »"
-#: elflink.c:2066
+#: elflink.c:2308
+#, c-format
msgid "%B: version node not found for symbol %s"
msgstr "%B: version du nœud pas trouvée pour le symbole %s"
-#: elflink.c:2157
-msgid "%B: bad reloc symbol index (0x%lx >= 0x%lx) for offset 0x%lx in section `%A'"
-msgstr "%B: mauvais index de relocalisation du symbole (0x%lx >= 0x%lx) pour l'offset 0x%lx de la section «%A»"
+#: elflink.c:2397
+#, c-format
+msgid "%B: bad reloc symbol index (%#lx >= %#lx) for offset %#Lx in section `%A'"
+msgstr "%B: mauvais index du symbole de réadressage (%#lx >= %#lx) pour l'offset %#Lx de la section « %A »"
-#: elflink.c:2168
-msgid "%B: non-zero symbol index (0x%lx) for offset 0x%lx in section `%A' when the object file has no symbol table"
-msgstr "%B: index de symbole non nul (0x%lx) pour l'offset 0x%lx de la section «%A» quand le fichier objet n'a pas de table de symboles"
+#: elflink.c:2409
+#, c-format
+msgid "%B: non-zero symbol index (%#lx) for offset %#Lx in section `%A' when the object file has no symbol table"
+msgstr "%B: index de symbole non nul (%#lx) pour l'offset %#Lx de la section « %A » quand le fichier objet n'a pas de table de symboles"
-#: elflink.c:2358
+#: elflink.c:2600
+#, c-format
msgid "%B: relocation size mismatch in %B section %A"
msgstr "%B: taille du réadressage ne concorde pas dans %B section %A"
-#: elflink.c:2640
+#: elflink.c:2911
#, c-format
msgid "warning: type and size of dynamic symbol `%s' are not defined"
-msgstr "attention: type et taille du symbole dynamique «%s» ne sont pas définis"
+msgstr "attention: type et taille du symbole dynamique « %s » ne sont pas définis"
-#: elflink.c:3403
+#: elflink.c:2976
+msgid "%P: copy reloc against protected `%T' is dangerous\n"
+msgstr "%P: un réadressage copié envers un « %T » protégé est dangereux\n"
+
+#: elflink.c:3777
+#, c-format
msgid "%P: alternate ELF machine code found (%d) in %B, expecting %d\n"
msgstr "%P: code machine ELF alternatif trouvé (%d) dans %B, %d est attendu\n"
-#: elflink.c:4032
+#: elflink.c:4438
+#, c-format
msgid "%B: %s: invalid version %u (max %d)"
msgstr "%B: %s: version invalide %u (max %d)"
-#: elflink.c:4068
+#: elflink.c:4475
+#, c-format
msgid "%B: %s: invalid needed version %d"
msgstr "%B: %s: version requise invalide %d"
-#: elflink.c:4452
+#: elflink.c:4754
+#, c-format
+msgid "Warning: size of symbol `%s' changed from %Lu in %B to %Lu in %B"
+msgstr "Attention: taille du symbole « %s » a changé de %Lu dans %B à %Lu dans %B"
+
+#: elflink.c:4890
+#, c-format
msgid "%B: undefined reference to symbol '%s'"
-msgstr "%B: référence au symbole non défini «%s»"
+msgstr "%B: référence au symbole non défini « %s »"
-#: elflink.c:5523
+#: elflink.c:5903
+#, c-format
msgid "%B: stack size specified and %s set"
msgstr "%B: taille de pile spécifiée et %s défini"
-#: elflink.c:5526
+#: elflink.c:5907
+#, c-format
msgid "%B: %s not absolute"
msgstr "%B: %s pas supporté"
-#: elflink.c:5824
+#: elflink.c:6105
#, c-format
msgid "%s: undefined version: %s"
msgstr "%s: version non définie: %s"
-#: elflink.c:5892
+#: elflink.c:6682
msgid "%B: .preinit_array section is not allowed in DSO"
msgstr "%B: section .preinit_array n'est pas permise dans DSO"
-#: elflink.c:7657
+#: elflink.c:8122
#, c-format
msgid "undefined %s reference in complex symbol: %s"
msgstr "référence %s non définie dans le symbole complexe: %s"
-#: elflink.c:7811
+#: elflink.c:8277
#, c-format
msgid "unknown operator '%c' in complex symbol"
-msgstr "opérateur «%c» inconnu dans le symbole complexe"
+msgstr "opérateur « %c » inconnu dans le symbole complexe"
+
+#. PR 21524: Let the user know if a symbol was removed by garbage collection.
+#: elflink.c:8615
+msgid "%B:%A: error: relocation references symbol %s which was removed by garbage collection."
+msgstr "%B:%A: erreur: symbole de référence des réadressages %s qui a été supprimé par le ramasse miettes"
-#: elflink.c:8165 elflink.c:8182 elflink.c:8219 elflink.c:8236
+#: elflink.c:8618
+msgid "%B:%A: error: try relinking with --gc-keep-exported enabled."
+msgstr "%B:%A: erreur: essayez de rééditer les liens avec --gc-keep-exported enabled."
+
+#: elflink.c:8855 elflink.c:8873 elflink.c:8912 elflink.c:8930
msgid "%B: Unable to sort relocs - they are in more than one size"
-msgstr "%B: Impossible de trier les relocalisations - plusieurs tailles rencontrées"
+msgstr "%B: Impossible de trier les réadressages - plusieurs tailles rencontrées"
-#: elflink.c:8196 elflink.c:8250
+#. The section size is not divisible by either -
+#. something is wrong.
+#: elflink.c:8889 elflink.c:8946
msgid "%B: Unable to sort relocs - they are of an unknown size"
-msgstr "%B: Impossible de trier les relocalisations - leur taille est inconnue"
+msgstr "%B: Impossible de trier les réadressages - leur taille est inconnue"
-#: elflink.c:8301
+#: elflink.c:8998
msgid "Not enough memory to sort relocations"
msgstr "Pas assez de mémoire pour trier les réadressages"
-#: elflink.c:8494
+#: elflink.c:9266
+#, c-format
msgid "%B: Too many sections: %d (>= %d)"
msgstr "%B: Trop de sections: %d (>= %d)"
-#: elflink.c:8775
+#: elflink.c:9546
+#, c-format
msgid "%B: internal symbol `%s' in %B is referenced by DSO"
msgstr "%B: symbole interne « %s » dans %B est référencé par DSO"
-#: elflink.c:8777
+#: elflink.c:9549
+#, c-format
msgid "%B: hidden symbol `%s' in %B is referenced by DSO"
msgstr "%B: symbole caché « %s » dans %B est référencé par DSO"
-#: elflink.c:8779
+#: elflink.c:9552
+#, c-format
msgid "%B: local symbol `%s' in %B is referenced by DSO"
msgstr "%B: symbole local « %s » dans %B est référencé par DSO"
-#: elflink.c:8890
+#: elflink.c:9638
+#, c-format
msgid "%B: could not find output section %A for input section %A"
msgstr "%B: ne peut repérer la section de sortie %A pour la section d'entrée %A"
-#: elflink.c:9013
+#: elflink.c:9792
+#, c-format
msgid "%B: protected symbol `%s' isn't defined"
msgstr "%B: symbole protégé « %s » n'est pas défini"
-#: elflink.c:9015
+#: elflink.c:9795
+#, c-format
msgid "%B: internal symbol `%s' isn't defined"
msgstr "%B: symbole interne « %s » n'est pas défini"
-#: elflink.c:9017
+#: elflink.c:9798
+#, c-format
msgid "%B: hidden symbol `%s' isn't defined"
msgstr "%B: symbole caché « %s » n'est pas défini"
-#: elflink.c:9043
+#: elflink.c:9829
+#, c-format
msgid "%B: No symbol version section for versioned symbol `%s'"
msgstr "%B: Pas de section de version de symbole pour le symbole avec version « %s »"
-#: elflink.c:9598
+#: elflink.c:10436
+#, c-format
msgid "error: %B: size of section %A is not multiple of address size"
msgstr "erreur: %B: le réadressage de la section %A n'est pas un multiple de la taille des adresses"
-#: elflink.c:9645
-msgid "error: %B contains a reloc (0x%s) for section %A that references a non-existent global symbol"
-msgstr "erreur: %B contient une relocalisation (0x%s) pour la section %A qui fait référence à un symbole global inexistant"
+#: elflink.c:10481
+#, c-format
+msgid "error: %B contains a reloc (%#Lx) for section %A that references a non-existent global symbol"
+msgstr "erreur: %B contient un réadressage (%#Lx) pour la section %A qui fait référence à un symbole global inexistant"
-#: elflink.c:10369
+#: elflink.c:11236
+#, c-format
msgid "%A has both ordered [`%A' in %B] and unordered [`%A' in %B] sections"
-msgstr "%A a, à la fois, des sections ordonnées [«%A» dans %B] et désordonnées [«%A» dans %B]"
+msgstr "%A a, à la fois, des sections ordonnées [« %A » dans %B] et désordonnées [« %A » dans %B]"
-#: elflink.c:10374
+#: elflink.c:11242
#, c-format
msgid "%A has both ordered and unordered sections"
msgstr "%A a, à la fois, des sections ordonnées et désordonnées"
-#: elflink.c:10982
+#: elflink.c:11344
+msgid "%B: no symbol found for import library"
+msgstr "%B: aucun symbole trouvé dans la bibliothèque d'importation"
+
+#: elflink.c:11966
+#, c-format
msgid "%B: file class %s incompatible with %s"
msgstr "%B: classe de fichier %s incompatible avec %s"
-#: elflink.c:11303 elflink.c:11347
-msgid "%B: could not find output section %s"
-msgstr "%B: ne peut repérer la section de sortie %s"
+#: elflink.c:12183
+msgid "%B: failed to generate import library"
+msgstr "%B: échec de la génération de la bibliothèque d'importation"
-#: elflink.c:11308
+#: elflink.c:12302
#, c-format
msgid "warning: %s section has zero size"
msgstr "attention: section %s a une taille nulle"
-#: elflink.c:11353
+#: elflink.c:12350
#, c-format
msgid "warning: section '%s' is being made into a note"
msgstr "attention: section « %s » changé en une note"
-#: elflink.c:11419
+#: elflink.c:12442
msgid "%P%X: read-only segment has dynamic relocations.\n"
msgstr "%P%X: segment en lecture seule a des réadressages dynamiques.\n"
-#: elflink.c:11422
+#: elflink.c:12445
msgid "%P: warning: creating a DT_TEXTREL in a shared object.\n"
msgstr "%P: attention: création d'un DT_TEXTREL dans un objet partagé.\n"
-#: elflink.c:11545
+#: elflink.c:12570
msgid "%P%X: can not read symbols: %E\n"
msgstr "%P%X: ne peut pas lire les symboles: %E\n"
-#: elflink.c:11989
-msgid "Removing unused section '%s' in file '%B'"
-msgstr "Suppression de la section inutilisée «%s» dans le fichier «%B»"
+#: elflink.c:12732
+msgid "%F%P: corrupt input: %B\n"
+msgstr "%F%P: entrée corrompue: %B\n"
-#: elflink.c:12200
-msgid "Warning: gc-sections option ignored"
-msgstr "Attention: l'option de la section gc est ignorée"
+#: elflink.c:13421
+#, c-format
+msgid "%B: %A+%#Lx: No symbol found for INHERIT"
+msgstr "%B: %A+%#Lx: Pas de symbole trouvé pour INHERIT"
-#: elflink.c:12489
+#: elflink.c:13597
#, c-format
msgid "Unrecognized INPUT_SECTION_FLAG %s\n"
msgstr "INPUT_SECTION_FLAG %s non reconnu\n"
-#: elfxx-mips.c:1419
+#: elfxx-mips.c:1444
msgid "static procedure (no name)"
msgstr "procédure statique (sans name)"
-#: elfxx-mips.c:5476
+#: elfxx-mips.c:5627
msgid "MIPS16 and microMIPS functions cannot call each other"
msgstr "Des fonctions MIPS16 et microMIPS ne peuvent pas s'appeler l'une l'autre"
-#: elfxx-mips.c:6087
-msgid "%B: %A+0x%lx: Unsupported jump between ISA modes; consider recompiling with interlinking enabled."
-msgstr "%B: %A+0x%lx: Saut non supporté entre modes ISA ; envisagez de recompiler avec l'interliage activé."
+#: elfxx-mips.c:6370
+msgid "%X%H: Unsupported JALX to the same ISA mode\n"
+msgstr "%X%H: JALX vers le même mode ISA n'est pas supporté\n"
-#: elfxx-mips.c:6756 elfxx-mips.c:6979
+#: elfxx-mips.c:6403
+msgid "%X%H: Unsupported jump between ISA modes; consider recompiling with interlinking enabled\n"
+msgstr "%X%H: Saut non supporté entre modes ISA ; envisagez de recompiler avec l'interliage activé.\n"
+
+#: elfxx-mips.c:6444
+msgid "%X%H: Cannot convert branch between ISA modes to JALX: relocation out of range\n"
+msgstr "%X%H: Impossible de convertir les branchements vers JALX entre modes ISA: réadressage hors portée\n"
+
+#: elfxx-mips.c:6456
+msgid "%X%H: Unsupported branch between ISA modes\n"
+msgstr "%X%H: Branchement entre modes ISA non supporté\n"
+
+#: elfxx-mips.c:7134 elfxx-mips.c:7369
+#, c-format
msgid "%B: Warning: bad `%s' option size %u smaller than its header"
-msgstr "%B: Attention: mauvaise «%s» taille d'option %u plus petite que son en-tête"
+msgstr "%B: Attention: mauvaise « %s » taille d'option %u plus petite que son en-tête"
-#: elfxx-mips.c:7734 elfxx-mips.c:7859
+#: elfxx-mips.c:8125 elfxx-mips.c:8251
+#, c-format
msgid "%B: Warning: cannot determine the target function for stub section `%s'"
-msgstr "%B: Attention: ne peut pas déterminer la fonction cible de la section d'ébauche «%s»"
+msgstr "%B: Attention: ne peut pas déterminer la fonction cible de la section d'ébauche « %s »"
-#: elfxx-mips.c:7990
+#: elfxx-mips.c:8383
+#, c-format
msgid "%B: Malformed reloc detected for section %s"
-msgstr "%B: relocalisation mal composée détectée dans la section %s"
+msgstr "%B: Réadressage mal composé détecté dans la section %s"
-#: elfxx-mips.c:8065
+#: elfxx-mips.c:8459
+#, c-format
msgid "%B: GOT reloc at 0x%lx not expected in executables"
-msgstr "%B: relocalisation GOT à 0x%lx pas attendue dans les executables"
+msgstr "%B: Réadressage GOT à 0x%lx pas attendu dans les exécutables"
-#: elfxx-mips.c:8199
+#: elfxx-mips.c:8597
+#, c-format
msgid "%B: CALL16 reloc at 0x%lx not against global symbol"
-msgstr "%B: appel CALL16 de relocalisation à 0x%lx qui n'est pas pour un symbole global"
+msgstr "%B: appel CALL16 de réadressage à 0x%lx qui n'est pas pour un symbole global"
-#: elfxx-mips.c:8977
+#: elfxx-mips.c:9219
#, c-format
msgid "non-dynamic relocations refer to dynamic symbol %s"
msgstr "réadressages non dynamiques font référence au symbole dynamique %s"
-#: elfxx-mips.c:9877
+#: elfxx-mips.c:10139
+#, c-format
msgid "%B: Can't find matching LO16 reloc against `%s' for %s at 0x%lx in section `%A'"
-msgstr "%B: Ne trouve pas de relocalisation LO16 correspondante vers «%s» pour %s à 0x%lx de la section «%A»"
+msgstr "%B: Ne trouve pas de réadressage LO16 correspondant vers « %s » pour %s à 0x%lx de la section « %A »"
-#: elfxx-mips.c:10016
+#: elfxx-mips.c:10279
msgid "small-data section exceeds 64KB; lower small-data size limit (see option -G)"
msgstr "la taille des petites données de la section dépasse 64KB; abaissez la limite de taille des petites données (voyez l'option -G)"
-#: elfxx-mips.c:10035
-msgid "JALX to a non-word-aligned address"
-msgstr "JALX vers une adresse non alignée sur un mot"
+#: elfxx-mips.c:10298
+msgid "Cannot convert a jump to JALX for a non-word-aligned address"
+msgstr "Impossible de convertir un saut vers JALX pour une adresse non alignée sur un mot"
+
+#: elfxx-mips.c:10301
+msgid "Jump to a non-word-aligned address"
+msgstr "Saut vers une adresse non alignée sur un mot"
+
+#: elfxx-mips.c:10302
+msgid "Jump to a non-instruction-aligned address"
+msgstr "Saut vers une adresse non alignée sur une instruction"
+
+#: elfxx-mips.c:10305
+msgid "Cannot convert a branch to JALX for a non-word-aligned address"
+msgstr "Impossible de convertir un branchement vers JALX pour une adresse non alignée sur un mot"
-#: elfxx-mips.c:10402 elfxx-mips.c:10966
+#: elfxx-mips.c:10307
+msgid "Branch to a non-instruction-aligned address"
+msgstr "Branchement vers une adresse non alignée sur une instruction"
+
+#: elfxx-mips.c:10309
+msgid "PC-relative load from unaligned address"
+msgstr "Chargement relatif au PC depuis une adresse non alignée"
+
+#: elfxx-mips.c:10683 elfxx-mips.c:11251
+#, c-format
msgid "%B: `%A' offset of %ld from `%A' beyond the range of ADDIUPC"
msgstr "%B: « %A » offset de %ld depuis « %A » au delà de la limite de ADDIUPC"
-#: elfxx-mips.c:13990
+#: elfxx-mips.c:14174
#, c-format
-msgid "%s: illegal section name `%s'"
-msgstr "%s: nom illégal de section «%s»"
+msgid "%B: Unknown architecture %s"
+msgstr "%B: Architecture %s inconnue"
-#: elfxx-mips.c:14375 elfxx-mips.c:14381 elfxx-mips.c:14387 elfxx-mips.c:14407
-#: elfxx-mips.c:14413 elfxx-mips.c:14419 elfxx-mips.c:14441 elfxx-mips.c:14460
-#: elfxx-mips.c:14467 elfxx-mips.c:14474
-msgid "Warning: %B uses %s (set by %B), %B uses %s"
-msgstr "Attention: %B utilise %s (défini par %B), %B utilise « %s »"
+#: elfxx-mips.c:14704
+#, c-format
+msgid "%B: illegal section name `%A'"
+msgstr "%B: nom illégal de section « %A »"
-#: elfxx-mips.c:14394 elfxx-mips.c:14426 elfxx-mips.c:14447 elfxx-mips.c:14480
-msgid "Warning: %B uses %s (set by %B), %B uses unknown floating point ABI %d"
-msgstr "Attention: %B utilise %s (défini par %B), %B utilise l'ABI virgule flottante inconnue %d"
+#: elfxx-mips.c:14981
+msgid "%B: warning: linking abicalls files with non-abicalls files"
+msgstr "%B: attention: édition de liens des fichiers abicalls avec des fichiers non abicalls"
-#: elfxx-mips.c:14493 elfxx-mips.c:14501 elfxx-mips.c:14509 elfxx-mips.c:14517
-msgid "Warning: %B uses unknown floating point ABI %d (set by %B), %B uses %s"
-msgstr "Attention: %B utilise l'ABI virgule flottante inconnue %d (définie par %B), %B utilise %s"
+#: elfxx-mips.c:14998
+msgid "%B: linking 32-bit code with 64-bit code"
+msgstr "%B: édition de liens de code 32 bits avec du code 64 bits"
+
+#: elfxx-mips.c:15030 elfxx-mips.c:15096 elfxx-mips.c:15111
+#, c-format
+msgid "%B: linking %s module with previous %s modules"
+msgstr "%B: édition de liens du module %s avec les modules précédents %s"
+
+#: elfxx-mips.c:15054
+#, c-format
+msgid "%B: ABI mismatch: linking %s module with previous %s modules"
+msgstr "%B: ABI ne concorde pas: édition de lien du module %s avec les modules précédents %s"
+
+#: elfxx-mips.c:15079
+#, c-format
+msgid "%B: ASE mismatch: linking %s module with previous %s modules"
+msgstr "%B: ASE ne concorde pas: édition de lien du module %s avec les modules précédents %s"
-#: elfxx-mips.c:14525
+#: elfxx-mips.c:15214
msgid "Warning: %B uses unknown floating point ABI %d (set by %B), %B uses unknown floating point ABI %d"
msgstr "Attention: %B utilise l'ABI virgule flottante inconnue %d (définie par %B), %B utilise l'ABI virgule flottante inconnue %d"
-#: elfxx-mips.c:14548
+#: elfxx-mips.c:15220
+#, c-format
+msgid "Warning: %B uses unknown floating point ABI %d (set by %B), %B uses %s"
+msgstr "Attention: %B utilise l'ABI virgule flottante inconnue %d (définie par %B), %B utilise %s"
+
+#: elfxx-mips.c:15226
+#, c-format
+msgid "Warning: %B uses %s (set by %B), %B uses unknown floating point ABI %d"
+msgstr "Attention: %B utilise %s (défini par %B), %B utilise l'ABI virgule flottante inconnue %d"
+
+#: elfxx-mips.c:15240
+#, c-format
+msgid "Warning: %B uses %s (set by %B), %B uses %s"
+msgstr "Attention: %B utilise %s (défini par %B), %B utilise « %s »"
+
+#: elfxx-mips.c:15259
+#, c-format
msgid "Warning: %B uses %s (set by %B), %B uses unknown MSA ABI %d"
msgstr "Attention: %B utilise %s (défini par %B), %B utilise l'ABI MSA inconnue %d"
-#: elfxx-mips.c:14559
+#: elfxx-mips.c:15271
+#, c-format
msgid "Warning: %B uses unknown MSA ABI %d (set by %B), %B uses %s"
msgstr "Attention: %B utilise l'ABI MSA inconnue %d (définie par %B), %B utilise %s"
-#: elfxx-mips.c:14567
+#: elfxx-mips.c:15280
+#, c-format
msgid "Warning: %B uses unknown MSA ABI %d (set by %B), %B uses unknown MSA ABI %d"
msgstr "Attention: %B utilise l'ABI MSA inconnue %d (définie par %B), %B utilise l'ABI MSA inconnue %d"
-#: elfxx-mips.c:14599
+#: elfxx-mips.c:15342
msgid "%B: endianness incompatible with that of the selected emulation"
msgstr "%B: système de poids fort ou faible incompatible avec celui sélectionné pour l'émulation"
-#: elfxx-mips.c:14610
+#: elfxx-mips.c:15356
msgid "%B: ABI is incompatible with that of the selected emulation"
msgstr "%B: ABI est incompatible avec celui sélectionné pour l'émulation"
-#: elfxx-mips.c:14694
-msgid "%B: warning: linking abicalls files with non-abicalls files"
-msgstr "%B: attention: édition de liens des fichiers abicalls avec des fichiers non abicalls"
+#: elfxx-mips.c:15408
+msgid "%B: warning: Inconsistent ISA between e_flags and .MIPS.abiflags"
+msgstr "%B: attention: ISA incohérentes entre e_flags et .MIPS.abiflags"
-#: elfxx-mips.c:14711
-msgid "%B: linking 32-bit code with 64-bit code"
-msgstr "%B: édition de liens de code 32 bits avec du code 64 bits"
+#: elfxx-mips.c:15413
+msgid "%B: warning: Inconsistent FP ABI between .gnu.attributes and .MIPS.abiflags"
+msgstr "%B: attention: ABI FP incohérentes entre .gnu.attributes and .MIPS.abiflags"
-#: elfxx-mips.c:14739 elfxx-mips.c:14802
-msgid "%B: linking %s module with previous %s modules"
-msgstr "%B: édition de liens du module %s avec les modules précédents %s"
+#: elfxx-mips.c:15417
+msgid "%B: warning: Inconsistent ASEs between e_flags and .MIPS.abiflags"
+msgstr "%B: attention: ASE incohérents entre e_flags et .MIPS.abiflags"
-#: elfxx-mips.c:14762
-msgid "%B: ABI mismatch: linking %s module with previous %s modules"
-msgstr "%B: ABI ne concorde pas: édition de lien du module %s avec les modules précédents %s"
+#: elfxx-mips.c:15424
+msgid "%B: warning: Inconsistent ISA extensions between e_flags and .MIPS.abiflags"
+msgstr "%B: attention: Extensions ISA incohérentes entre e_flags et .MIPS.abiflags"
-#: elfxx-mips.c:14786
-msgid "%B: ASE mismatch: linking %s module with previous %s modules"
-msgstr "%B: ASE ne concorde pas: édition de lien du module %s avec les modules précédents %s"
+#: elfxx-mips.c:15428
+msgid "%B: warning: Unexpected flag in the flags2 field of .MIPS.abiflags (0x%lx)"
+msgstr "%B: attention: Fanion inattendu dans le champ flags2 de .MIPS.abiflags (0x%lx)"
+
+#: elfxx-mips.c:15617
+msgid "-mips32r2 -mfp64 (12 callee-saved)"
+msgstr "-mips32r2 -mfp64 (12 callee-saved)"
+
+#: elfxx-mips.c:15667 elfxx-mips.c:15678
+msgid "None"
+msgstr "aucun"
+
+#: elfxx-mips.c:15669 elfxx-mips.c:15741
+msgid "Unknown"
+msgstr "Inconnu"
+
+#: elfxx-mips.c:15752
+#, c-format
+msgid "Hard or soft float\n"
+msgstr "Flottant matériel ou logiciel\n"
+
+#: elfxx-mips.c:15755
+#, c-format
+msgid "Hard float (double precision)\n"
+msgstr "Flottant matériel (double précision)\n"
+
+#: elfxx-mips.c:15758
+#, c-format
+msgid "Hard float (single precision)\n"
+msgstr "Flottant matériel (simple précision)\n"
+
+#: elfxx-mips.c:15761
+#, c-format
+msgid "Soft float\n"
+msgstr "Flottant logiciel\n"
+
+#: elfxx-mips.c:15764
+#, c-format
+msgid "Hard float (MIPS32r2 64-bit FPU 12 callee-saved)\n"
+msgstr "Flottant matériel (MIPS32r2 64 bits FPU 12 callee-saved)\n"
-#: elfxx-mips.c:14958
+#: elfxx-mips.c:15767
+#, c-format
+msgid "Hard float (32-bit CPU, Any FPU)\n"
+msgstr "Flottant matériel (processeur 32 bits, tout coprocesseur)\n"
+
+#: elfxx-mips.c:15770
+#, c-format
+msgid "Hard float (32-bit CPU, 64-bit FPU)\n"
+msgstr "Flottant matériel (processeur 32 bits, coprocesseur 64 bits)\n"
+
+#: elfxx-mips.c:15773
+#, c-format
+msgid "Hard float compat (32-bit CPU, 64-bit FPU)\n"
+msgstr "Compatibilité flottant matériel (processeur 32 bits, coprocesseur 64 bits)\n"
+
+#: elfxx-mips.c:15805
#, c-format
msgid " [abi=O32]"
msgstr " [abi=O32]"
-#: elfxx-mips.c:14960
+#: elfxx-mips.c:15807
#, c-format
msgid " [abi=O64]"
msgstr " [abi=O64]"
-#: elfxx-mips.c:14962
+#: elfxx-mips.c:15809
#, c-format
msgid " [abi=EABI32]"
msgstr " [abi=EABI32]"
-#: elfxx-mips.c:14964
+#: elfxx-mips.c:15811
#, c-format
msgid " [abi=EABI64]"
msgstr " [abi=EABI64]"
-#: elfxx-mips.c:14966
+#: elfxx-mips.c:15813
#, c-format
msgid " [abi unknown]"
msgstr " [abi inconnu]"
-#: elfxx-mips.c:14968
+#: elfxx-mips.c:15815
#, c-format
msgid " [abi=N32]"
msgstr " [abi=N32]"
-#: elfxx-mips.c:14970
+#: elfxx-mips.c:15817
#, c-format
msgid " [abi=64]"
msgstr " [abi=64]"
-#: elfxx-mips.c:14972
+#: elfxx-mips.c:15819
#, c-format
msgid " [no abi set]"
msgstr " [aucun jeu abi]"
-#: elfxx-mips.c:14993
+#: elfxx-mips.c:15844
#, c-format
msgid " [unknown ISA]"
msgstr " [ISA inconnu]"
-#: elfxx-mips.c:15013
+#: elfxx-mips.c:15864
#, c-format
msgid " [not 32bitmode]"
msgstr " [aucun mode 32 bits]"
-#: elfxx-sparc.c:640
+#: elfxx-riscv.c:948
+#, c-format
+msgid "unrecognized relocation (0x%x)"
+msgstr "Réadressage non reconnu (0x%x)"
+
+#: elfxx-sparc.c:639
#, c-format
msgid "invalid relocation type %d"
msgstr "type de réadressage %d invalide"
-#: elfxx-tilegx.c:4433
+#: elfxx-sparc.c:3301
+#: /Users/gingold/Repositories/fsf/binutils-gdb.git/bfd/elfnn-aarch64.c:5002
+#, c-format
+msgid "%B: relocation %s against STT_GNU_IFUNC symbol `%s' isn't handled by %s"
+msgstr "%B: le réadressage %s sur le symbole STT_GNU_IFUNC « %s » n'est pas géré par %s"
+
+#: elfxx-tilegx.c:4436
+#, c-format
msgid "%B: Cannot link together %s and %s objects."
msgstr "%B: Ne peut lier ensemble les objets %s et %s."
-#: i386linux.c:418 m68klinux.c:421 sparclinux.c:414
+#: i386linux.c:416 m68klinux.c:419 sparclinux.c:412
#, c-format
msgid "Output file requires shared library `%s'\n"
-msgstr "La sortie requiert la librairie partagée «%s»\n"
+msgstr "La sortie requiert la librairie partagée « %s »\n"
-#: i386linux.c:426 m68klinux.c:429 sparclinux.c:422
+#: i386linux.c:424 m68klinux.c:428 sparclinux.c:421
#, c-format
msgid "Output file requires shared library `%s.so.%s'\n"
-msgstr "Le fichier de sortie requiert une librairie partagée «%s.so.%s»\n"
+msgstr "Le fichier de sortie requiert une librairie partagée « %s.so.%s »\n"
-#: i386linux.c:613 i386linux.c:663 m68klinux.c:618 m68klinux.c:666
-#: sparclinux.c:609 sparclinux.c:659
+#: i386linux.c:611 i386linux.c:661 m68klinux.c:617 m68klinux.c:665
+#: sparclinux.c:608 sparclinux.c:658
#, c-format
msgid "Symbol %s not defined for fixups\n"
msgstr "Symbole %s n'est pas défini pour les corrections\n"
-#: i386linux.c:687 m68klinux.c:690 sparclinux.c:683
+#: i386linux.c:685 m68klinux.c:689 sparclinux.c:682
msgid "Warning: fixup count mismatch\n"
msgstr "Attention: nombre de corrections en désaccord\n"
-#: ieee.c:158
+#: ieee.c:159
+#, c-format
+msgid "%B: string too long (%d chars, max 65535)"
+msgstr "%B: chaîne trop longue (%d caractères, max 65535)"
+
+#: ieee.c:226
#, c-format
-msgid "%s: string too long (%d chars, max 65535)"
-msgstr "%s: chaîne trop longue (%d caractères, max 65535)"
+msgid "IEEE parser: string length: %#lx longer than buffer: %#lx"
+msgstr "Analyseur IEEE: longueur de chaîne: %#lx plus longue que le tampon: %#lx"
-#: ieee.c:285
+#: ieee.c:302
#, c-format
-msgid "%s: unrecognized symbol `%s' flags 0x%x"
-msgstr "%s: symbole non reconnue «%s» fanions 0x%x"
+msgid "%B: unrecognized symbol `%s' flags 0x%x"
+msgstr "%B: symbole non reconnue « %s » fanions 0x%x"
-#: ieee.c:791
+#: ieee.c:837
+#, c-format
msgid "%B: unimplemented ATI record %u for symbol %u"
msgstr "%B: enregistrement ATI non implanté %u pour le symbole %u"
-#: ieee.c:815
+#: ieee.c:862
+#, c-format
msgid "%B: unexpected ATN type %d in external part"
msgstr "%B: type ATN %d inattendu dans la partie externe"
-#: ieee.c:837
+#: ieee.c:884
msgid "%B: unexpected type after ATN"
msgstr "%B: type inattendu après ATN"
#: ihex.c:230
+#, c-format
msgid "%B:%d: unexpected character `%s' in Intel Hex file"
-msgstr "%B:%d: caractère inattendu «%s» dans le fichier Intel hexadécimal"
+msgstr "%B:%d: caractère inattendu « %s » dans le fichier Intel hexadécimal"
-#: ihex.c:337
+#: ihex.c:338
+#, c-format
msgid "%B:%u: bad checksum in Intel Hex file (expected %u, found %u)"
msgstr "%B:%u: somme de contrôle erronée dans le fichier Intel hexadécimal (attendu %u, obtenu %u)"
-#: ihex.c:392
+#: ihex.c:394
+#, c-format
msgid "%B:%u: bad extended address record length in Intel Hex file"
msgstr "%B:%u: longueur erronée de l'enregistrement d'adresse étendue dans le fichier Intel hexadécimal"
-#: ihex.c:409
+#: ihex.c:412
+#, c-format
msgid "%B:%u: bad extended start address length in Intel Hex file"
msgstr "%B:%u: longueur erronée d'adresse étendue de début dans le fichier Intel hexadécimal"
-#: ihex.c:426
+#: ihex.c:430
+#, c-format
msgid "%B:%u: bad extended linear address record length in Intel Hex file"
msgstr "%B:%u: longueur erronée de l'enregistrement d'adresse étendue linéaire dans le fichier Intel hexadécimal"
-#: ihex.c:443
+#: ihex.c:448
+#, c-format
msgid "%B:%u: bad extended linear start address length in Intel Hex file"
msgstr "%B:%u: longueur erronée d'adresse étendue linéraire de début dans le fichier Intel hexadécimal"
-#: ihex.c:460
+#: ihex.c:466
+#, c-format
msgid "%B:%u: unrecognized ihex type %u in Intel Hex file"
msgstr "%B:%u: type ihex %u non reconnu dans le fichier Intel hexadécima"
-#: ihex.c:579
+#: ihex.c:585
msgid "%B: internal error in ihex_read_section"
msgstr "%B: erreur interne dans ihex_read_section"
-#: ihex.c:613
+#: ihex.c:619
msgid "%B: bad section length in ihex_read_section"
msgstr "%B: longuer erronée de section dans ihex_read_section"
-#: ihex.c:826
+#: ihex.c:833
#, c-format
-msgid "%s: address 0x%s out of range for Intel Hex file"
-msgstr "%s: adresse 0x%s hors limite pour le fichier Intel hexadécimal"
+msgid "%B: address 0x%s out of range for Intel Hex file"
+msgstr "%B: adresse 0x%s hors limite pour le fichier Intel hexadécimal"
-#: libbfd.c:863
+#: libbfd.c:799
+#, c-format
msgid "%B: unable to get decompressed section %A"
msgstr "%B: impossible d'obtenir la section décompressée %A"
-#: libbfd.c:1012
-msgid "%B: compiled for a big endian system and target is little endian"
-msgstr ""
-"%B: compilé pour un système à octets de poids fort alors que la cible\n"
-"est un système à octets de poids faible"
-
-#: libbfd.c:1014
-msgid "%B: compiled for a little endian system and target is big endian"
-msgstr ""
-"%B: compilé pour un système à octets de poids faible alors que la cible\n"
-"est un système à octets de poids fort"
-
-#: libbfd.c:1043
+#: libbfd.c:963
#, c-format
msgid "Deprecated %s called at %s line %d in %s\n"
msgstr "%s déprécié appelé à %s dans la ligne %d dans %s\n"
-#: libbfd.c:1046
+#: libbfd.c:966
#, c-format
msgid "Deprecated %s called\n"
msgstr "%s appel déprécié\n"
-#: linker.c:1873
+#: linker.c:1669
+#, c-format
msgid "%B: indirect symbol `%s' to `%s' is a loop"
-msgstr "%B: symbole indirect «%s» vers «%s» est une boucle"
+msgstr "%B: symbole indirect « %s » vers « %s » est une boucle"
-#: linker.c:2750
+#: linker.c:2539
#, c-format
msgid "Attempt to do relocatable link with %s input and %s output"
-msgstr "Tentative de relocalisation d'un lien avec %s à l'entrée et %s à la sortie"
+msgstr "Tentative de réadressage d'un lien avec %s à l'entrée et %s à la sortie"
-#: linker.c:3035
+#: linker.c:2825
+#, c-format
msgid "%B: ignoring duplicate section `%A'\n"
msgstr "%B: ignore les sections dupliquées « %A »\n"
-#: linker.c:3044 linker.c:3053
+#: linker.c:2835 linker.c:2845
+#, c-format
msgid "%B: duplicate section `%A' has different size\n"
msgstr "%B: section dupliquée « %A » avec des tailles différentes\n"
-#: linker.c:3061 linker.c:3066
+#: linker.c:2854 linker.c:2860
+#, c-format
msgid "%B: could not read contents of section `%A'\n"
msgstr "%B: ne peut pas lire le contenu de la section « %A »\n"
-#: linker.c:3070
+#: linker.c:2865
+#, c-format
msgid "%B: duplicate section `%A' has different contents\n"
msgstr "%B: section dupliquée « %A » a des contenus différents\n"
-#: mach-o.c:648
+#: linker.c:3353
+msgid "%B: compiled for a big endian system and target is little endian"
+msgstr ""
+"%B: compilé pour un système à octets de poids fort alors que la cible\n"
+"est un système à octets de poids faible"
+
+#: linker.c:3356
+msgid "%B: compiled for a little endian system and target is big endian"
+msgstr ""
+"%B: compilé pour un système à octets de poids faible alors que la cible\n"
+"est un système à octets de poids fort"
+
+#: mach-o.c:779
msgid "bfd_mach_o_canonicalize_symtab: unable to load symbols"
msgstr "bfd_mach_o_canonicalize_symtab: impossible de charger les symboles"
-#: mach-o.c:1918
+#: mach-o.c:1981
+msgid "sorry: modtab, toc and extrefsyms are not yet implemented for dysymtab commands."
+msgstr "désolé: modtab, toc et extrefsyms ne sont pas encore implémentés pour les commandes dysymtab."
+
+#: mach-o.c:2424
+#, c-format
+msgid "mach-o: there are too many sections (%u) maximum is 255,\n"
+msgstr "mach-o: il y a trop de sections (%u) le maximum est 255,\n"
+
+#: mach-o.c:2531
#, c-format
-msgid "mach-o: there are too many sections (%d) maximum is 255,\n"
-msgstr "mach-o: il y a trop de sections (%d) le maximum est 255,\n"
+msgid "unable to allocate data for load command 0x%lx"
+msgstr "impossible d'allouer les données pour la commande de chargement 0x%lx"
-#: mach-o.c:2017
+#: mach-o.c:2636
#, c-format
msgid "unable to write unknown load command 0x%lx"
msgstr "impossible d'écrire la commande de chargement inconnue 0x%lx"
-#: mach-o.c:2272
-msgid "sorry: modtab, toc and extrefsyms are not yet implemented for dysymtab commands."
-msgstr "désolé: modtab, toc et extrefsyms ne sont pas encore implémentés pour les commandes dysymtab."
+#: mach-o.c:2820
+#, c-format
+msgid "section address (%lx) below start of segment (%lx)"
+msgstr "adresse de section (%lx) en deçà du début du segment (%lx)"
+
+#: mach-o.c:2961
+#, c-format
+msgid "unable to layout unknown load command 0x%lx"
+msgstr "impossible de disposer la commande de chargement inconnue 0x%lx"
+
+#: mach-o.c:3497
+#, c-format
+msgid "bfd_mach_o_read_section_32: overlarge alignment value: 0x%x, using 32 instead"
+msgstr "bfd_mach_o_read_section_32: valeur d'alignement démesurée: 0x%x, utilise 32 à la place"
-#: mach-o.c:2898
+#: mach-o.c:3540
+#, c-format
+msgid "bfd_mach_o_read_section_64: overlarge alignment value: 0x%x, using 32 instead"
+msgstr "bfd_mach_o_read_section_64: valeur d'alignement démesurée: 0x%x, utilise 32 à la place"
+
+#: mach-o.c:3591
#, c-format
msgid "bfd_mach_o_read_symtab_symbol: unable to read %d bytes at %lu"
msgstr "bfd_mach_o_read_symtab_symbol: impossible de lire %d octets à %lu"
-#: mach-o.c:2916
+#: mach-o.c:3610
#, c-format
msgid "bfd_mach_o_read_symtab_symbol: name out of range (%lu >= %lu)"
msgstr "bfd_mach_o_read_symtab_symbol: nom hors limites (%lu >= %lu)"
-#: mach-o.c:2997
+#: mach-o.c:3693
#, c-format
msgid "bfd_mach_o_read_symtab_symbol: symbol \"%s\" specified invalid section %d (max %lu): setting to undefined"
msgstr "bfd_mach_o_read_symtab_symbol: le symbole « %s » spécifie la section %d invalide (max %lu): laissé non défini"
-#: mach-o.c:3013
+#: mach-o.c:3712
#, c-format
msgid "bfd_mach_o_read_symtab_symbol: symbol \"%s\" specified invalid type field 0x%x: setting to undefined"
msgstr "bfd_mach_o_read_symtab_symbol: symbole « %s » spécifie le champ de type 0x%x invalide: laissé non défini"
-#: mach-o.c:3085
+#: mach-o.c:3786
msgid "bfd_mach_o_read_symtab_symbols: unable to allocate memory for symbols"
msgstr "bfd_mach_o_read_symtab_symbols: impossible d'allouer la mémoire pour les symboles"
-#: mach-o.c:3915
+#: mach-o.c:4759
msgid "%B: unknown load command 0x%lx"
msgstr "%B: commande de chargement inconnue 0x%lx"
-#: mach-o.c:4107
+#: mach-o.c:4950
#, c-format
msgid "bfd_mach_o_scan: unknown architecture 0x%lx/0x%lx"
msgstr "bfd_mach_o_scan: architecture 0x%lx/0x%lx inconnue"
-#: mach-o.c:4204
+#: mach-o.c:5055
#, c-format
msgid "unknown header byte-order value 0x%lx"
msgstr "valeur d'ordre des octets de l'en-tête 0x%lx est inconnue"
-#: merge.c:832
+#: merge.c:864
#, c-format
-msgid "%s: access beyond end of merged section (%ld)"
-msgstr "%s: accès au-delà de la fin de la section fusionnée (%ld)"
+msgid "%B: access beyond end of merged section (%ld)"
+msgstr "%B: accès au-delà de la fin de la section fusionnée (%ld)"
-#: mmo.c:455
+#: mmo.c:468
#, c-format
-msgid "%s: No core to allocate section name %s\n"
-msgstr "%s: pas de corps pour allouer un nom de section %s\n"
+msgid "%B: No core to allocate section name %s\n"
+msgstr "%B: Pas de corps pour allouer un nom de section %s\n"
-#: mmo.c:530
+#: mmo.c:544
#, c-format
-msgid "%s: No core to allocate a symbol %d bytes long\n"
-msgstr "%s: pas de corps pour allouer un symbole de %d octets de longueur\n"
+msgid "%B: No core to allocate a symbol %d bytes long\n"
+msgstr "%B: pas de corps pour allouer un symbole de %d octets de longueur\n"
-#: mmo.c:1189
+#: mmo.c:958
#, c-format
-msgid "%s: invalid mmo file: initialization value for $255 is not `Main'\n"
-msgstr "%s: fichier mmo invalide: valeur d'initialisation pour $255 n'est pas «Main»\n"
+msgid "%B: attempt to emit contents at non-multiple-of-4 address 0x%lx\n"
+msgstr "%B: tentative d'émettre du contenu à une adresse 0x%lx qui n'est pas un multiple de 4\n"
-#: mmo.c:1334
-#, c-format
-msgid "%s: unsupported wide character sequence 0x%02X 0x%02X after symbol name starting with `%s'\n"
-msgstr "%s: séquence de caractères large 0x%02X 0x%02X non supportée après le nom de symbole débutant par «%s»\n"
+#: mmo.c:1255
+msgid "%B: invalid mmo file: initialization value for $255 is not `Main'\n"
+msgstr "%B: fichier mmo invalide: valeur d'initialisation pour $255 n'est pas « Main »\n"
-#: mmo.c:1568
+#: mmo.c:1402
#, c-format
-msgid "%s: invalid mmo file: unsupported lopcode `%d'\n"
-msgstr "%s: fichier mmo invalide: lopcode «%d» non supporté\n"
+msgid "%B: unsupported wide character sequence 0x%02X 0x%02X after symbol name starting with `%s'\n"
+msgstr "%B: séquence de caractères large 0x%02X 0x%02X non supportée après le nom de symbole débutant par « %s »\n"
-#: mmo.c:1578
+#: mmo.c:1636
#, c-format
-msgid "%s: invalid mmo file: expected YZ = 1 got YZ = %d for lop_quote\n"
-msgstr "%s: fichier mmo invalide: attendu YZ = 1 obtenu YZ = %d pour lop_quote\n"
+msgid "%B: invalid mmo file: unsupported lopcode `%d'\n"
+msgstr "%B: fichier mmo invalide: lopcode « %d » non supporté\n"
-#: mmo.c:1614
+#: mmo.c:1647
#, c-format
-msgid "%s: invalid mmo file: expected z = 1 or z = 2, got z = %d for lop_loc\n"
-msgstr "%s: fichier mmo invalide: attendu z = 1 ou z = 2, obtenu z = %d pour lop_loc\n"
+msgid "%B: invalid mmo file: expected YZ = 1 got YZ = %d for lop_quote\n"
+msgstr "%B: fichier mmo invalide: attendu YZ = 1 obtenu YZ = %d pour lop_quote\n"
-#: mmo.c:1660
+#: mmo.c:1685
#, c-format
-msgid "%s: invalid mmo file: expected z = 1 or z = 2, got z = %d for lop_fixo\n"
-msgstr "%s: fichier mmo invalide: attendu z = 1 ou z = 2, obtenu z = %d pour lop_fixo\n"
+msgid "%B: invalid mmo file: expected z = 1 or z = 2, got z = %d for lop_loc\n"
+msgstr "%B: fichier mmo invalide: attendu z = 1 ou z = 2, obtenu z = %d pour lop_loc\n"
-#: mmo.c:1699
+#: mmo.c:1736
#, c-format
-msgid "%s: invalid mmo file: expected y = 0, got y = %d for lop_fixrx\n"
-msgstr "%s: fichier mmo invalide: attendu y = 0, obtenu y = %d pour lop_fixrx\n"
+msgid "%B: invalid mmo file: expected z = 1 or z = 2, got z = %d for lop_fixo\n"
+msgstr "%B: fichier mmo invalide: attendu z = 1 ou z = 2, obtenu z = %d pour lop_fixo\n"
-#: mmo.c:1708
+#: mmo.c:1777
#, c-format
-msgid "%s: invalid mmo file: expected z = 16 or z = 24, got z = %d for lop_fixrx\n"
-msgstr "%s: fichier mmo invalide: attendu z = 16 ou z = 24, obtenu z = %d pour lop_fixrx\n"
+msgid "%B: invalid mmo file: expected y = 0, got y = %d for lop_fixrx\n"
+msgstr "%B: fichier mmo invalide: attendu y = 0, obtenu y = %d pour lop_fixrx\n"
-#: mmo.c:1731
+#: mmo.c:1788
#, c-format
-msgid "%s: invalid mmo file: leading byte of operand word must be 0 or 1, got %d for lop_fixrx\n"
-msgstr "%s: fichier mmo invalide: octet de tête du mot de l'opérande doit être 0 ou 1, obtenu %d pour lop_fixrx\n"
+msgid "%B: invalid mmo file: expected z = 16 or z = 24, got z = %d for lop_fixrx\n"
+msgstr "%B: fichier mmo invalide: attendu z = 16 ou z = 24, obtenu z = %d pour lop_fixrx\n"
-#: mmo.c:1754
+#: mmo.c:1813
#, c-format
-msgid "%s: cannot allocate file name for file number %d, %d bytes\n"
-msgstr "%s: ne paut pas allouer un nom de ficheir pour le no. de fichier %d, %d octets\n"
+msgid "%B: invalid mmo file: leading byte of operand word must be 0 or 1, got %d for lop_fixrx\n"
+msgstr "%B: fichier mmo invalide: octet de tête du mot de l'opérande doit être 0 ou 1, obtenu %d pour lop_fixrx\n"
-#: mmo.c:1774
+#: mmo.c:1838
#, c-format
-msgid "%s: invalid mmo file: file number %d `%s', was already entered as `%s'\n"
-msgstr "%s: fichier mmo invalide: no. de fichier %d «%s», a déjà été entré en tant que «%s»\n"
+msgid "%B: cannot allocate file name for file number %d, %d bytes\n"
+msgstr "%B: ne paut pas allouer un nom de ficheir pour le no. de fichier %d, %d octets\n"
-#: mmo.c:1787
+#: mmo.c:1860
#, c-format
-msgid "%s: invalid mmo file: file name for number %d was not specified before use\n"
-msgstr "%s: fichier mmo invalide: nom de fichier %d n'a pas été spécifié avant son utilisation\n"
+msgid "%B: invalid mmo file: file number %d `%s', was already entered as `%s'\n"
+msgstr "%B: fichier mmo invalide: no. de fichier %d « %s », a déjà été entré en tant que « %s »\n"
-#: mmo.c:1893
+#: mmo.c:1874
#, c-format
-msgid "%s: invalid mmo file: fields y and z of lop_stab non-zero, y: %d, z: %d\n"
-msgstr "%s: fichier mmo invalide: champs y et z de lop_stab non nul, y: %d, z: %d\n"
+msgid "%B: invalid mmo file: file name for number %d was not specified before use\n"
+msgstr "%B: fichier mmo invalide: nom de fichier %d n'a pas été spécifié avant son utilisation\n"
-#: mmo.c:1929
+#: mmo.c:1981
#, c-format
-msgid "%s: invalid mmo file: lop_end not last item in file\n"
-msgstr "%s: fichier mmo invalide: lop_end n'est pas le dernier élement dans le fichier\n"
+msgid "%B: invalid mmo file: fields y and z of lop_stab non-zero, y: %d, z: %d\n"
+msgstr "%B: fichier mmo invalide: champs y et z de lop_stab non nul, y: %d, z: %d\n"
-#: mmo.c:1942
+#: mmo.c:2018
#, c-format
-msgid "%s: invalid mmo file: YZ of lop_end (%ld) not equal to the number of tetras to the preceding lop_stab (%ld)\n"
-msgstr "%s: fichier mmo invalide: YZ de lop_end (%ld) n'est pas égal au nombre de tetras du lop_stab précédent (%ld)\n"
+msgid "%B: invalid mmo file: lop_end not last item in file\n"
+msgstr "%B: fichier mmo invalide: lop_end n'est pas le dernier élement dans le fichier\n"
-#: mmo.c:2652
+#: mmo.c:2032
#, c-format
-msgid "%s: invalid symbol table: duplicate symbol `%s'\n"
-msgstr "%s: table de symboles invalide: symbole «%s» dupliqué\n"
+msgid "%B: invalid mmo file: YZ of lop_end (%ld) not equal to the number of tetras to the preceding lop_stab (%ld)\n"
+msgstr "%B: fichier mmo invalide: YZ de lop_end (%ld) n'est pas égal au nombre de tetras du lop_stab précédent (%ld)\n"
-#: mmo.c:2892
+#: mmo.c:2743
#, c-format
-msgid "%s: Bad symbol definition: `Main' set to %s rather than the start address %s\n"
-msgstr "%s: Définition de symbole erronée: «Main» initialisé à %s au lieu de l'adresse de départ %s\n"
+msgid "%B: invalid symbol table: duplicate symbol `%s'\n"
+msgstr "%B: table de symboles invalide: symbole « %s » dupliqué\n"
-#: mmo.c:2984
+#: mmo.c:2986
#, c-format
-msgid "%s: warning: symbol table too large for mmo, larger than 65535 32-bit words: %d. Only `Main' will be emitted.\n"
-msgstr "%s: attention: table de symboles trop grande pour mmo, plus grande que 65535 mots de 32 bits: %d. Seul «Main» sera produit.\n"
+msgid "%B: Bad symbol definition: `Main' set to %s rather than the start address %s\n"
+msgstr "%B: Définition de symbole erronée: « Main » initialisé à %s au lieu de l'adresse de départ %s\n"
-#: mmo.c:3029
+#: mmo.c:3085
#, c-format
-msgid "%s: internal error, symbol table changed size from %d to %d words\n"
-msgstr "%s: erreur interne, table de symbole a changé de taille de %d à %d mots\n"
+msgid "%B: warning: symbol table too large for mmo, larger than 65535 32-bit words: %d. Only `Main' will be emitted.\n"
+msgstr "%B: attention: table de symboles trop grande pour mmo, plus grande que 65535 mots de 32 bits: %d. Seul « Main » sera produit.\n"
-#: mmo.c:3081
+#: mmo.c:3131
#, c-format
-msgid "%s: internal error, internal register section %s had contents\n"
-msgstr "%s: erreur interne, registre interne de section %s contient quelque chose\n"
+msgid "%B: internal error, symbol table changed size from %d to %d words\n"
+msgstr "%B: erreur interne, table de symbole a changé de taille de %d à %d mots\n"
-#: mmo.c:3132
+#: mmo.c:3184
#, c-format
-msgid "%s: no initialized registers; section length 0\n"
-msgstr "%s: pas de registre initialisé; section de longeur 0\n"
+msgid "%B: internal error, internal register section %A had contents\n"
+msgstr "%B: erreur interne, registre interne de section %A contient quelque chose\n"
+
+#: mmo.c:3235
+msgid "%B: no initialized registers; section length 0\n"
+msgstr "%B: pas de registre initialisé; section de longueur 0\n"
-#: mmo.c:3138
+#: mmo.c:3242
#, c-format
-msgid "%s: too many initialized registers; section length %ld\n"
-msgstr "%s: trop de resigstres initialisés; longueur de section %ld\n"
+msgid "%B: too many initialized registers; section length %ld\n"
+msgstr "%B: trop de registres initialisés; longueur de section %ld\n"
-#: mmo.c:3143
+#: mmo.c:3247
#, c-format
-msgid "%s: invalid start address for initialized registers of length %ld: 0x%lx%08lx\n"
-msgstr "%s: adresse de départ invalide pour des registres initialisés de longueur %ld: 0x%lx%08lx\n"
+msgid "%B: invalid start address for initialized registers of length %ld: 0x%lx%08lx\n"
+msgstr "%B: adresse de départ invalide pour des registres initialisés de longueur %ld: 0x%lx%08lx\n"
#: oasys.c:881
#, c-format
-msgid "%s: can not represent section `%s' in oasys"
-msgstr "%s: ne peut représenter la section «%s» dans oasys"
+msgid "%B: can not represent section `%A' in oasys"
+msgstr "%B: ne peut représenter la section « %A » dans oasys"
-#: osf-core.c:128
+#: osf-core.c:127
#, c-format
msgid "Unhandled OSF/1 core file section type %d\n"
msgstr "Type de section de fichier core OSF/1 %d non traité\n"
-#: pe-mips.c:607
+#: pe-mips.c:609
msgid "%B: `ld -r' not supported with PE MIPS objects\n"
-msgstr "%B: «ld -r» non supporté avec les objets PE MIPS\n"
+msgstr "%B: « ld -r » non supporté avec les objets PE MIPS\n"
#. OK, at this point the following variables are set up:
#. src = VMA of the memory we're fixing up
#. mem = pointer to memory we're fixing up
#. val = VMA of what we need to refer to.
-#: pe-mips.c:719
+#: pe-mips.c:720
+#, c-format
msgid "%B: unimplemented %s\n"
msgstr "%B: non implanté %s\n"
-#: pe-mips.c:745
+#: pe-mips.c:746
msgid "%B: jump too far away\n"
msgstr "%B: le saut va trop loin\n"
-#: pe-mips.c:771
+#: pe-mips.c:772
msgid "%B: bad pair/reflo after refhi\n"
msgstr "%B: pairage erronée pair/reflo après refhi\n"
-#: pef.c:522
+#: pef.c:526
#, c-format
msgid "bfd_pef_scan: unknown architecture 0x%lx"
msgstr "bfd_pef_scan: architecture 0x%lx inconnue"
-#: pei-x86_64.c:469
+#. PR 17512: file: 2245-7442-0.004.
+#: pei-x86_64.c:281
+#, c-format
+msgid "Unknown: %x"
+msgstr "Inconnu: %x"
+
+#: pei-x86_64.c:331
+#, c-format
+msgid "warning: xdata section corrupt\n"
+msgstr "attention: section xdata corrompue\n"
+
+#: pei-x86_64.c:341
+#, c-format
+msgid "warning: xdata section corrupt"
+msgstr "attention: section xdata corrompue"
+
+#: pei-x86_64.c:401
+#, c-format
+msgid "Too many unwind codes (%ld)\n"
+msgstr "Trop de codes de déroulages (%ld)\n"
+
+#: pei-x86_64.c:491
+#, c-format
+msgid "Warning: %s section size (%ld) is not a multiple of %d\n"
+msgstr "Attention: la taille de la section %s (%ld) n'est pas un multiple de %d\n"
+
+#: pei-x86_64.c:498
+#, c-format
+msgid "Warning: %s section size is zero\n"
+msgstr "Attention: la taille de la section %s est nulle\n"
+
+#: pei-x86_64.c:513
#, c-format
-msgid "warning: .pdata section size (%ld) is not a multiple of %d\n"
-msgstr "attention, taille de la section .pdata (%ld) n'est pas un multiple de %d\n"
+msgid "Warning: %s section size (%ld) is smaller than virtual size (%ld)\n"
+msgstr "Attention: la taille de la section %s (%ld) est plus petite que la taille virtuelle (%ld)\n"
-#: pei-x86_64.c:474 peigen.c:1626 peigen.c:1809 pepigen.c:1626 pepigen.c:1809
-#: pex64igen.c:1626 pex64igen.c:1809
+#: pei-x86_64.c:522
#, c-format
msgid ""
"\n"
-"The Function Table (interpreted .pdata section contents)\n"
+"The Function Table (interpreted %s section contents)\n"
msgstr ""
"\n"
-"La table de fonctions (interprétation du contenu de la section .pdata)\n"
+"La table de fonctions (interprétation du contenu de la section %s)\n"
-#: pei-x86_64.c:476
+#: pei-x86_64.c:525
#, c-format
msgid "vma:\t\t\tBeginAddress\t EndAddress\t UnwindData\n"
msgstr " vma:\t\t\tAdresse Début\t Adresse Fin\t Unwind Info\n"
+#: pei-x86_64.c:654
+#, c-format
+msgid ""
+"\n"
+"Dump of %s\n"
+msgstr ""
+"\n"
+"Vidange de %s\n"
+
#. XXX code yet to be written.
-#: peicode.h:758
+#: peicode.h:775
+#, c-format
msgid "%B: Unhandled import type; %x"
msgstr "%B: type d'importation non traitée; %x"
-#: peicode.h:763
+#: peicode.h:781
+#, c-format
msgid "%B: Unrecognised import type; %x"
msgstr "%B: type d'importation non reconnu; %x"
-#: peicode.h:777
+#: peicode.h:796
+#, c-format
msgid "%B: Unrecognised import name type; %x"
msgstr "%B: type de nom d'importation non reconnu: %x"
-#: peicode.h:1173
+#: peicode.h:1217
+#, c-format
msgid "%B: Unrecognised machine type (0x%x) in Import Library Format archive"
msgstr "%B: type de machine non reconnu (0x%x) dans l'archive de librairie de formats d'importation"
-#: peicode.h:1185
+#: peicode.h:1230
+#, c-format
msgid "%B: Recognised but unhandled machine type (0x%x) in Import Library Format archive"
msgstr "%B: type de machine reconnue mais non traitée (0x%x) dans l'archive da la librairie de formats d'importation"
-#: peicode.h:1203
+#: peicode.h:1248
msgid "%B: size field is zero in Import Library Format header"
msgstr "%B: taille du champ est zéro dans l'en-tête de la librairie de formats d'importation"
-#: peicode.h:1234
+#: peicode.h:1280
msgid "%B: string not null terminated in ILF object file."
msgstr "%B: chaîne n'est pas terminée par un zéro dans le fichier objet ILF."
-#: ppcboot.c:391
+#: peicode.h:1333
+msgid "%B: Error: Debug Data ends beyond end of debug directory."
+msgstr "%B: Erreur: Les données de débogage s'arrêtent après la fin du répertoire de débogage."
+
+#: ppcboot.c:393
#, c-format
msgid ""
"\n"
@@ -4109,27 +5767,27 @@ msgstr ""
"\n"
"En-têtes ppcboot:\n"
-#: ppcboot.c:392
+#: ppcboot.c:394
#, c-format
msgid "Entry offset = 0x%.8lx (%ld)\n"
msgstr "Décalage de l'entrée= 0x%.8lx (%ld)\n"
-#: ppcboot.c:394
+#: ppcboot.c:396
#, c-format
msgid "Length = 0x%.8lx (%ld)\n"
msgstr "Longueur = 0x%.8lx (%ld)\n"
-#: ppcboot.c:398
+#: ppcboot.c:400
#, c-format
msgid "Flag field = 0x%.2x\n"
msgstr "Champ de fanion = 0x%.2x\n"
-#: ppcboot.c:404
+#: ppcboot.c:406
#, c-format
msgid "Partition name = \"%s\"\n"
-msgstr "Nom de partition = «%s»\n"
+msgstr "Nom de partition = « %s »\n"
-#: ppcboot.c:423
+#: ppcboot.c:426
#, c-format
msgid ""
"\n"
@@ -4138,35 +5796,45 @@ msgstr ""
"\n"
"Début de partition[%d] = { 0x%.2x, 0x%.2x, 0x%.2x, 0x%.2x }\n"
-#: ppcboot.c:429
+#: ppcboot.c:433
#, c-format
msgid "Partition[%d] end = { 0x%.2x, 0x%.2x, 0x%.2x, 0x%.2x }\n"
msgstr "Fin de la partition[%d] = { 0x%.2x, 0x%.2x, 0x%.2x, 0x%.2x }\n"
-#: ppcboot.c:435
+#: ppcboot.c:440
#, c-format
msgid "Partition[%d] sector = 0x%.8lx (%ld)\n"
msgstr "Secteur de la partition[%d] = 0x%.8lx (%ld)\n"
-#: ppcboot.c:437
+#: ppcboot.c:444
#, c-format
msgid "Partition[%d] length = 0x%.8lx (%ld)\n"
msgstr "Longueur de la partition[%d] = 0x%.8lx (%ld)\n"
-#: reloc.c:7371
+#: reloc.c:8064
msgid "INPUT_SECTION_FLAGS are not supported.\n"
msgstr "INPUT_SECTION_FLAGS pas supportés.\n"
-#: reloc.c:7526
-msgid "%X%P: %B(%A): relocation \"%R\" goes out of range\n"
-msgstr "%X%P: %B(%A): réadressage « %R » va en dehors des limites\n"
+#: reloc.c:8165
+#, c-format
+msgid "%X%P: %B(%A): error: relocation for offset %V has no value\n"
+msgstr "%X%P: %B(%A): erreur: le réadressage pour le décalage %V n'a pas de valeur\n"
-#: rs6000-core.c:448
+#: reloc.c:8241
#, c-format
-msgid "%s: warning core file truncated"
-msgstr "%s: fichier core d'avertissement tronqué"
+msgid "%X%P: %B(%A): relocation \"%R\" is not supported\n"
+msgstr "%X%P: %B(%A): le réadressage « %R » n'est pas supporté\n"
-#: som.c:5471
+#: reloc.c:8250
+#, c-format
+msgid "%X%P: %B(%A): relocation \"%R\" returns an unrecognized value %x\n"
+msgstr "%X%P: %B(%A): le réadressage « %R » retourne une valeur %x non reconnue\n"
+
+#: rs6000-core.c:471
+msgid "%B: warning core file truncated"
+msgstr "%B: fichier core d'avertissement tronqué"
+
+#: som.c:5478
#, c-format
msgid ""
"\n"
@@ -4175,19 +5843,27 @@ msgstr ""
"\n"
"En-tête auxiliaire de l'exec\n"
-#: som.c:5776
+#: som.c:5787
msgid "som_sizeof_headers unimplemented"
msgstr "som_sizeof_headers non implémenté"
-#: srec.c:261
+#: srec.c:260
+#, c-format
msgid "%B:%d: Unexpected character `%s' in S-record file\n"
-msgstr "%B:%d: caractère inattendu «%s» dans le fichier S-record\n"
+msgstr "%B:%d: caractère inattendu « %s » dans le fichier S-record\n"
-#: srec.c:567 srec.c:600
+#: srec.c:488
+#, c-format
+msgid "%B:%d: byte count %d too small\n"
+msgstr "%B:%d: nombre d'octets %d trop petit\n"
+
+#: srec.c:581 srec.c:615
+#, c-format
msgid "%B:%d: Bad checksum in S-record file\n"
msgstr "%B:%d: Mauvaise somme de contrôle dans le fichier S-record\n"
#: stabs.c:279
+#, c-format
msgid "%B(%A+0x%lx): Stabs entry has invalid string index."
msgstr "%B(%A+0x%lx): Entrée des ébauches a un indexe de chaîne invalide"
@@ -4195,32 +5871,60 @@ msgstr "%B(%A+0x%lx): Entrée des ébauches a un indexe de chaîne invalide"
msgid "Unsupported .stab relocation"
msgstr "Réadressage du .stab non supporté"
-#: vms-alpha.c:1294
+#: vms-alpha.c:652
+#, c-format
+msgid "Unable to read EIHS record at offset %#x"
+msgstr "Impossible de lire l'enregistrement EIHS à l'offset %#x"
+
+#: vms-alpha.c:1164
+#, c-format
+msgid "Corrupt EGSD record: its size (%#x) is too small"
+msgstr "Enregistrement EGSD corrompu: sa taille (%#x) est trop petite"
+
+#: vms-alpha.c:1188
+#, c-format
+msgid "Corrupt EGSD record: size (%#x) is larger than remaining space (%#x)"
+msgstr "Enregistrement EGSD corrompu: la taille (%#x) est plus grande que l'espace restant (%#x)"
+
+#: vms-alpha.c:1196
+#, c-format
+msgid "Corrupt EGSD record: size (%#x) is too small"
+msgstr "Enregistrement EGSD corrompu: la taille (%#x) est trop petite"
+
+#: vms-alpha.c:1380
#, c-format
msgid "Unknown EGSD subtype %d"
msgstr "Sous type EGSD %d inconnu"
-#: vms-alpha.c:1325
+#: vms-alpha.c:1413
#, c-format
msgid "Stack overflow (%d) in _bfd_vms_push"
msgstr "Débordement de la pile (%d) dans _bfd_vms_push"
-#: vms-alpha.c:1338
+#: vms-alpha.c:1426
msgid "Stack underflow in _bfd_vms_pop"
msgstr "Sous dépilage de la pile dans _bfd_vms_pop"
#. These names have not yet been added to this switch statement.
-#: vms-alpha.c:1575
+#: vms-alpha.c:1665
#, c-format
msgid "unknown ETIR command %d"
msgstr "commande ETIR %d inconnue"
-#: vms-alpha.c:1762
+#: vms-alpha.c:1696
+msgid "Corrupt vms value"
+msgstr "Valeur vms corrompue"
+
+#: vms-alpha.c:1824
+msgid "Corrupt ETIR record encountered"
+msgstr "Enregistrement ETIR corrompu rencontré"
+
+#: vms-alpha.c:1881
#, c-format
msgid "bad section index in %s"
msgstr "index de section erronée dans %s"
-#: vms-alpha.c:1775
+#: vms-alpha.c:1894
#, c-format
msgid "unsupported STA cmd %s"
msgstr "commande STA %s non supportée"
@@ -4230,1388 +5934,1463 @@ msgstr "commande STA %s non supportée"
#. Rotate.
#. Redefine symbol to current location.
#. Define a literal.
-#: vms-alpha.c:1951 vms-alpha.c:1982 vms-alpha.c:2229
+#: vms-alpha.c:2074 vms-alpha.c:2105 vms-alpha.c:2196 vms-alpha.c:2354
#, c-format
msgid "%s: not supported"
msgstr "%s: pas supporté"
-#: vms-alpha.c:1957
+#: vms-alpha.c:2080
#, c-format
msgid "%s: not implemented"
msgstr "%s: non implémenté"
-#: vms-alpha.c:2213
+#: vms-alpha.c:2338
#, c-format
msgid "invalid use of %s with contexts"
msgstr "utilisation incorrecte de %s avec des contextes"
-#: vms-alpha.c:2247
+#: vms-alpha.c:2372
#, c-format
msgid "reserved cmd %d"
msgstr "commande %d réservée"
-#: vms-alpha.c:2332
+#: vms-alpha.c:2457
msgid "Object module NOT error-free !\n"
msgstr "Module objet N'EST PAS sans erreur !\n"
-#: vms-alpha.c:3657
+#: vms-alpha.c:3778
#, c-format
-msgid "SEC_RELOC with no relocs in section %s"
-msgstr "SEC_RELOC sans relocalisation dans la section %s"
+msgid "SEC_RELOC with no relocs in section %A"
+msgstr "SEC_RELOC sans réadressages dans la section %A"
-#: vms-alpha.c:3709 vms-alpha.c:3922
+#: vms-alpha.c:3830 vms-alpha.c:4043
#, c-format
-msgid "Size error in section %s"
-msgstr "Erreur de taille dans la section %s"
+msgid "Size error in section %A"
+msgstr "Erreur de taille dans la section %A"
-#: vms-alpha.c:3868
+#: vms-alpha.c:3989
msgid "Spurious ALPHA_R_BSR reloc"
-msgstr "Relocalisation ALPHA_R_BSR parasite"
+msgstr "Réadressages ALPHA_R_BSR parasite"
-#: vms-alpha.c:3909
+#: vms-alpha.c:4030
#, c-format
msgid "Unhandled relocation %s"
msgstr "Réadressage %s non traité"
-#: vms-alpha.c:4199
+#: vms-alpha.c:4323
#, c-format
msgid "unknown source command %d"
msgstr "commande source %d inconnue"
-#: vms-alpha.c:4260
+#: vms-alpha.c:4384
msgid "DST__K_SET_LINUM_INCR not implemented"
msgstr "DST__K_SET_LINUM_INCR pas implémenté"
-#: vms-alpha.c:4266
+#: vms-alpha.c:4390
msgid "DST__K_SET_LINUM_INCR_W not implemented"
msgstr "DST__K_SET_LINUM_INCR_W pas implémenté"
-#: vms-alpha.c:4272
+#: vms-alpha.c:4396
msgid "DST__K_RESET_LINUM_INCR not implemented"
msgstr "DST__K_RESET_LINUM_INCR pas implémenté"
-#: vms-alpha.c:4278
+#: vms-alpha.c:4402
msgid "DST__K_BEG_STMT_MODE not implemented"
msgstr "DST__K_BEG_STMT_MODE pas implémenté"
-#: vms-alpha.c:4284
+#: vms-alpha.c:4408
msgid "DST__K_END_STMT_MODE not implemented"
msgstr "DST__K_END_STMT_MODE pas implémenté"
-#: vms-alpha.c:4311
+#: vms-alpha.c:4435
msgid "DST__K_SET_PC not implemented"
msgstr "DST__K_SET_PC pas implémenté"
-#: vms-alpha.c:4317
+#: vms-alpha.c:4441
msgid "DST__K_SET_PC_W not implemented"
msgstr "DST__K_SET_PC_W pas implémenté"
-#: vms-alpha.c:4323
+#: vms-alpha.c:4447
msgid "DST__K_SET_PC_L not implemented"
msgstr "DST__K_SET_PC_L pas implémenté"
-#: vms-alpha.c:4329
+#: vms-alpha.c:4453
msgid "DST__K_SET_STMTNUM not implemented"
msgstr "DST__K_SET_STMTNUM pas implémenté"
-#: vms-alpha.c:4372
+#: vms-alpha.c:4496
#, c-format
msgid "unknown line command %d"
msgstr "commande de ligne %d inconnue"
-#: vms-alpha.c:4846 vms-alpha.c:4863 vms-alpha.c:4877 vms-alpha.c:4892
-#: vms-alpha.c:4904 vms-alpha.c:4915 vms-alpha.c:4927
+#: vms-alpha.c:4956 vms-alpha.c:4974 vms-alpha.c:4989 vms-alpha.c:5005
+#: vms-alpha.c:5018 vms-alpha.c:5030 vms-alpha.c:5043
#, c-format
msgid "Unknown reloc %s + %s"
-msgstr "Relocalisation %s + %s inconnue"
+msgstr "Réadressage %s + %s inconnu"
-#: vms-alpha.c:4982
+#: vms-alpha.c:5098
#, c-format
msgid "Unknown reloc %s"
-msgstr "Relocalisation %s inconnue"
+msgstr "Réadressage %s inconnu"
-#: vms-alpha.c:4995
+#: vms-alpha.c:5111
msgid "Invalid section index in ETIR"
msgstr "Index de section incorrect dans ETIR"
-#: vms-alpha.c:5002
+#: vms-alpha.c:5120
msgid "Relocation for non-REL psect"
msgstr "Réadressage pour psect non-REL"
-#: vms-alpha.c:5049
+#: vms-alpha.c:5167
#, c-format
msgid "Unknown symbol in command %s"
msgstr "Symbole inconnu dans la commande %s"
-#: vms-alpha.c:5564
+#: vms-alpha.c:5577
+#, c-format
+msgid "reloc (%d) is *UNKNOWN*"
+msgstr "le réadressage (%d) est *INCONNU*"
+
+#: vms-alpha.c:5692
#, c-format
msgid " EMH %u (len=%u): "
msgstr " EMH %u (long=%u): "
-#: vms-alpha.c:5573
+#: vms-alpha.c:5697
+#, c-format
+msgid " Error: The length is less than the length of an EMH record\n"
+msgstr " Erreur: La longueur est plus petite que la longueur d'un enregistrement EMH\n"
+
+#: vms-alpha.c:5708
#, c-format
msgid "Module header\n"
msgstr "En-tête module\n"
-#: vms-alpha.c:5574
+#: vms-alpha.c:5709
#, c-format
msgid " structure level: %u\n"
msgstr " niveau de structure: %u\n"
-#: vms-alpha.c:5575
+#: vms-alpha.c:5710
#, c-format
msgid " max record size: %u\n"
msgstr " taille max d'enregistrement: %u\n"
-#: vms-alpha.c:5578
+#: vms-alpha.c:5713
#, c-format
msgid " module name : %.*s\n"
msgstr " nom du module : %.*s\n"
-#: vms-alpha.c:5580
+#: vms-alpha.c:5715
#, c-format
msgid " module version : %.*s\n"
msgstr " version du module : %.*s\n"
-#: vms-alpha.c:5582
+#: vms-alpha.c:5717
#, c-format
msgid " compile date : %.17s\n"
msgstr " date de compilation : %.17s\n"
-#: vms-alpha.c:5587
+#: vms-alpha.c:5722
#, c-format
msgid "Language Processor Name\n"
msgstr "Nom du Processeur de Langage\n"
-#: vms-alpha.c:5588
+#: vms-alpha.c:5723
#, c-format
msgid " language name: %.*s\n"
msgstr " nom du language: %.*s\n"
-#: vms-alpha.c:5595
+#: vms-alpha.c:5730
#, c-format
msgid "Source Files Header\n"
msgstr "En-tête des fichiers sources\n"
-#: vms-alpha.c:5596
+#: vms-alpha.c:5731
#, c-format
msgid " file: %.*s\n"
msgstr " fichier: %.*s\n"
-#: vms-alpha.c:5603
+#: vms-alpha.c:5738
#, c-format
msgid "Title Text Header\n"
msgstr "En-tête du texte du titre\n"
-#: vms-alpha.c:5604
+#: vms-alpha.c:5739
#, c-format
msgid " title: %.*s\n"
msgstr " titre: %.*s\n"
-#: vms-alpha.c:5611
+#: vms-alpha.c:5746
#, c-format
msgid "Copyright Header\n"
msgstr "En-tête du copyright\n"
-#: vms-alpha.c:5612
+#: vms-alpha.c:5747
#, c-format
msgid " copyright: %.*s\n"
msgstr " copyright: %.*s\n"
-#: vms-alpha.c:5618
+#: vms-alpha.c:5753
#, c-format
msgid "unhandled emh subtype %u\n"
msgstr "sous-type emh %u non pris en charge\n"
-#: vms-alpha.c:5628
+#: vms-alpha.c:5763
#, c-format
msgid " EEOM (len=%u):\n"
msgstr " EEOM (long=%u):\n"
-#: vms-alpha.c:5629
+#: vms-alpha.c:5768
+#, c-format
+msgid " Error: The length is less than the length of an EEOM record\n"
+msgstr " Erreur: La longueur est plus petite que la longueur d'un enregistrement EEOM\n"
+
+#: vms-alpha.c:5772
#, c-format
msgid " number of cond linkage pairs: %u\n"
msgstr " nombre de paires de liaisons cond: %u\n"
-#: vms-alpha.c:5631
+#: vms-alpha.c:5774
#, c-format
msgid " completion code: %u\n"
msgstr " code de complétion: %u\n"
-#: vms-alpha.c:5635
+#: vms-alpha.c:5778
#, c-format
msgid " transfer addr flags: 0x%02x\n"
msgstr " fanions de transfert d'adr: 0x%02x\n"
-#: vms-alpha.c:5636
+#: vms-alpha.c:5779
#, c-format
msgid " transfer addr psect: %u\n"
msgstr " psect transert adr: %u\n"
-#: vms-alpha.c:5638
+#: vms-alpha.c:5781
#, c-format
msgid " transfer address : 0x%08x\n"
msgstr " adresse de transert: 0x%08x\n"
-#: vms-alpha.c:5647
+#: vms-alpha.c:5790
msgid " WEAK"
msgstr " FAIBLE"
-#: vms-alpha.c:5649
+#: vms-alpha.c:5792
msgid " DEF"
msgstr " DEF"
-#: vms-alpha.c:5651
+#: vms-alpha.c:5794
msgid " UNI"
msgstr " UNI"
-#: vms-alpha.c:5653 vms-alpha.c:5674
+#: vms-alpha.c:5796 vms-alpha.c:5817
msgid " REL"
msgstr " REL"
-#: vms-alpha.c:5655
+#: vms-alpha.c:5798
msgid " COMM"
msgstr " COMM"
-#: vms-alpha.c:5657
+#: vms-alpha.c:5800
msgid " VECEP"
msgstr " VECEP"
-#: vms-alpha.c:5659
+#: vms-alpha.c:5802
msgid " NORM"
msgstr " NORM"
-#: vms-alpha.c:5661
+#: vms-alpha.c:5804
msgid " QVAL"
msgstr " QVAL"
-#: vms-alpha.c:5668
+#: vms-alpha.c:5811
msgid " PIC"
msgstr " PIC"
-#: vms-alpha.c:5670
+#: vms-alpha.c:5813
msgid " LIB"
msgstr " LIB"
-#: vms-alpha.c:5672
+#: vms-alpha.c:5815
msgid " OVR"
msgstr " OVR"
-#: vms-alpha.c:5676
+#: vms-alpha.c:5819
msgid " GBL"
msgstr " GBL"
-#: vms-alpha.c:5678
+#: vms-alpha.c:5821
msgid " SHR"
msgstr " SHR"
-#: vms-alpha.c:5680
+#: vms-alpha.c:5823
msgid " EXE"
msgstr " EXE"
-#: vms-alpha.c:5682
+#: vms-alpha.c:5825
msgid " RD"
msgstr " RD"
-#: vms-alpha.c:5684
+#: vms-alpha.c:5827
msgid " WRT"
msgstr " WRT"
-#: vms-alpha.c:5686
+#: vms-alpha.c:5829
msgid " VEC"
msgstr " VEC"
-#: vms-alpha.c:5688
+#: vms-alpha.c:5831
msgid " NOMOD"
msgstr " NOMOD"
-#: vms-alpha.c:5690
+#: vms-alpha.c:5833
msgid " COM"
msgstr " COM"
-#: vms-alpha.c:5692
+#: vms-alpha.c:5835
msgid " 64B"
msgstr " 64B"
-#: vms-alpha.c:5701
+#: vms-alpha.c:5844
#, c-format
msgid " EGSD (len=%u):\n"
msgstr " EGSD (long=%u):\n"
-#: vms-alpha.c:5713
+#: vms-alpha.c:5857
#, c-format
msgid " EGSD entry %2u (type: %u, len: %u): "
msgstr " entrée EGSD %2u (type: %u, long: %u): "
-#: vms-alpha.c:5725
+#: vms-alpha.c:5863 vms-alpha.c:6114
+#, c-format
+msgid " Error: length larger than remaining space in record\n"
+msgstr " Erreur: longueur plus grande que l'espace restant dans l'enregistrement\n"
+
+#: vms-alpha.c:5875
#, c-format
msgid "PSC - Program section definition\n"
msgstr "PSC - Définition de section du programme\n"
-#: vms-alpha.c:5726 vms-alpha.c:5743
+#: vms-alpha.c:5876 vms-alpha.c:5893
#, c-format
msgid " alignment : 2**%u\n"
msgstr " alignement : 2**%u\n"
-#: vms-alpha.c:5727 vms-alpha.c:5744
+#: vms-alpha.c:5877 vms-alpha.c:5894
#, c-format
msgid " flags : 0x%04x"
msgstr " fanions : 0x%04x"
-#: vms-alpha.c:5731
+#: vms-alpha.c:5881
#, c-format
msgid " alloc (len): %u (0x%08x)\n"
msgstr " alloc (long): %u (0x%08x)\n"
-#: vms-alpha.c:5732 vms-alpha.c:5789 vms-alpha.c:5838
+#: vms-alpha.c:5882 vms-alpha.c:5939 vms-alpha.c:5988
#, c-format
msgid " name : %.*s\n"
msgstr " nom : %.*s\n"
-#: vms-alpha.c:5742
+#: vms-alpha.c:5892
#, c-format
msgid "SPSC - Shared Image Program section def\n"
msgstr "SPSC - Def de section de l'image partagée du programme\n"
-#: vms-alpha.c:5748
+#: vms-alpha.c:5898
#, c-format
msgid " alloc (len) : %u (0x%08x)\n"
msgstr " alloc (long) : %u (0x%08x)\n"
-#: vms-alpha.c:5749
+#: vms-alpha.c:5899
#, c-format
msgid " image offset : 0x%08x\n"
msgstr " offset d'image: 0x%08x\n"
-#: vms-alpha.c:5751
+#: vms-alpha.c:5901
#, c-format
msgid " symvec offset : 0x%08x\n"
msgstr " offset symvec : 0x%08x\n"
-#: vms-alpha.c:5753
+#: vms-alpha.c:5903
#, c-format
msgid " name : %.*s\n"
msgstr " nom : %.*s\n"
-#: vms-alpha.c:5766
+#: vms-alpha.c:5916
#, c-format
msgid "SYM - Global symbol definition\n"
msgstr "SYM - Définition du symbol global\n"
-#: vms-alpha.c:5767 vms-alpha.c:5827 vms-alpha.c:5848 vms-alpha.c:5867
+#: vms-alpha.c:5917 vms-alpha.c:5977 vms-alpha.c:5998 vms-alpha.c:6017
#, c-format
msgid " flags: 0x%04x"
msgstr " fanions: 0x%04x"
-#: vms-alpha.c:5770
+#: vms-alpha.c:5920
#, c-format
msgid " psect offset: 0x%08x\n"
msgstr " offset psect: 0x%08x\n"
-#: vms-alpha.c:5774
+#: vms-alpha.c:5924
#, c-format
msgid " code address: 0x%08x\n"
msgstr " adresse code: 0x%08x\n"
-#: vms-alpha.c:5776
+#: vms-alpha.c:5926
#, c-format
msgid " psect index for entry point : %u\n"
msgstr " index psect pour point d'entrée: %u\n"
-#: vms-alpha.c:5779 vms-alpha.c:5855 vms-alpha.c:5874
+#: vms-alpha.c:5929 vms-alpha.c:6005 vms-alpha.c:6024
#, c-format
msgid " psect index : %u\n"
msgstr " index psect : %u\n"
-#: vms-alpha.c:5781 vms-alpha.c:5857 vms-alpha.c:5876
+#: vms-alpha.c:5931 vms-alpha.c:6007 vms-alpha.c:6026
#, c-format
msgid " name : %.*s\n"
msgstr " nom : %.*s\n"
-#: vms-alpha.c:5788
+#: vms-alpha.c:5938
#, c-format
msgid "SYM - Global symbol reference\n"
msgstr "SYM - Référence du symbol globaux\n"
-#: vms-alpha.c:5800
+#: vms-alpha.c:5950
#, c-format
msgid "IDC - Ident Consistency check\n"
msgstr "IDC - Vérification de la consistance d'identité\n"
-#: vms-alpha.c:5801
+#: vms-alpha.c:5951
#, c-format
msgid " flags : 0x%08x"
msgstr " fanions : 0x%08x"
-#: vms-alpha.c:5805
+#: vms-alpha.c:5955
#, c-format
msgid " id match : %x\n"
msgstr " correspondance id : %x\n"
-#: vms-alpha.c:5807
+#: vms-alpha.c:5957
#, c-format
msgid " error severity: %x\n"
msgstr " sévérité d'erreur: %x\n"
-#: vms-alpha.c:5810
+#: vms-alpha.c:5960
#, c-format
msgid " entity name : %.*s\n"
msgstr " nom d'entité : %.*s\n"
-#: vms-alpha.c:5812
+#: vms-alpha.c:5962
#, c-format
msgid " object name : %.*s\n"
msgstr " nom d'objet : %.*s\n"
-#: vms-alpha.c:5815
+#: vms-alpha.c:5965
#, c-format
msgid " binary ident : 0x%08x\n"
msgstr " ident binaire : 0x%08x\n"
-#: vms-alpha.c:5818
+#: vms-alpha.c:5968
#, c-format
msgid " ascii ident : %.*s\n"
msgstr " ident ascii : %.*s\n"
-#: vms-alpha.c:5826
+#: vms-alpha.c:5976
#, c-format
msgid "SYMG - Universal symbol definition\n"
msgstr "SYMG - Définition de symbole universel\n"
-#: vms-alpha.c:5830
+#: vms-alpha.c:5980
#, c-format
msgid " symbol vector offset: 0x%08x\n"
msgstr " offset vecteur symbole: 0x%08x\n"
-#: vms-alpha.c:5832
+#: vms-alpha.c:5982
#, c-format
msgid " entry point: 0x%08x\n"
msgstr " point d'entrée: 0x%08x\n"
-#: vms-alpha.c:5834
+#: vms-alpha.c:5984
#, c-format
msgid " proc descr : 0x%08x\n"
msgstr " descr proc : 0x%08x\n"
-#: vms-alpha.c:5836
+#: vms-alpha.c:5986
#, c-format
msgid " psect index: %u\n"
msgstr " index psect: %u\n"
-#: vms-alpha.c:5847
+#: vms-alpha.c:5997
#, c-format
msgid "SYMV - Vectored symbol definition\n"
msgstr "SYMV - Définition symbole vectorisé\n"
-#: vms-alpha.c:5851
+#: vms-alpha.c:6001
#, c-format
msgid " vector : 0x%08x\n"
msgstr " vecteur : 0x%08x\n"
-#: vms-alpha.c:5853 vms-alpha.c:5872
+#: vms-alpha.c:6003 vms-alpha.c:6022
#, c-format
msgid " psect offset: %u\n"
msgstr " offset psect: %u\n"
-#: vms-alpha.c:5866
+#: vms-alpha.c:6016
#, c-format
msgid "SYMM - Global symbol definition with version\n"
msgstr "SYMM - Définition de symbole globale avec version\n"
-#: vms-alpha.c:5870
+#: vms-alpha.c:6020
#, c-format
msgid " version mask: 0x%08x\n"
msgstr " masque de version: 0x%08x\n"
-#: vms-alpha.c:5881
+#: vms-alpha.c:6031
#, c-format
msgid "unhandled egsd entry type %u\n"
msgstr "type d'entrée egsd %u non supporté\n"
-#: vms-alpha.c:5915
+#: vms-alpha.c:6066
#, c-format
msgid " linkage index: %u, replacement insn: 0x%08x\n"
msgstr " index de liaison: %u, instruction de remplacement: 0x%08x\n"
-#: vms-alpha.c:5918
+#: vms-alpha.c:6070
#, c-format
msgid " psect idx 1: %u, offset 1: 0x%08x %08x\n"
msgstr " index psect 1: %u, offset 1: 0x%08x %08x\n"
-#: vms-alpha.c:5922
+#: vms-alpha.c:6075
#, c-format
msgid " psect idx 2: %u, offset 2: 0x%08x %08x\n"
msgstr " index psect 2: %u, offset 2: 0x%08x %08x\n"
-#: vms-alpha.c:5927
+#: vms-alpha.c:6081
#, c-format
msgid " psect idx 3: %u, offset 3: 0x%08x %08x\n"
msgstr " index psect 3: %u, offset 3: 0x%08x %08x\n"
-#: vms-alpha.c:5932
+#: vms-alpha.c:6086
#, c-format
msgid " global name: %.*s\n"
msgstr " nom global: %.*s\n"
-#: vms-alpha.c:5942
+#: vms-alpha.c:6097
#, c-format
msgid " %s (len=%u+%u):\n"
msgstr " %s (long=%u+%u):\n"
-#: vms-alpha.c:5957
+#: vms-alpha.c:6119
#, c-format
msgid " (type: %3u, size: 4+%3u): "
msgstr " (type: %3u, taille: 4+%3u): "
-#: vms-alpha.c:5961
+#: vms-alpha.c:6123
#, c-format
msgid "STA_GBL (stack global) %.*s\n"
msgstr "STA_GBL (pile globals) %.*s\n"
-#: vms-alpha.c:5965
+#: vms-alpha.c:6127
#, c-format
msgid "STA_LW (stack longword) 0x%08x\n"
msgstr "STA_LW (pile mot long) 0x%08x\n"
-#: vms-alpha.c:5969
+#: vms-alpha.c:6131
#, c-format
msgid "STA_QW (stack quadword) 0x%08x %08x\n"
msgstr "STA_QW (pile quad mot) 0x%08x %08x\n"
-#: vms-alpha.c:5974
+#: vms-alpha.c:6136
#, c-format
msgid "STA_PQ (stack psect base + offset)\n"
msgstr "STA_PQ (base pile psect + offset)\n"
-#: vms-alpha.c:5975
+#: vms-alpha.c:6138
#, c-format
msgid " psect: %u, offset: 0x%08x %08x\n"
msgstr " psect: %u, offset: 0x%08x %08x\n"
-#: vms-alpha.c:5981
+#: vms-alpha.c:6144
#, c-format
msgid "STA_LI (stack literal)\n"
msgstr "STA_LI (pile literale)\n"
-#: vms-alpha.c:5984
+#: vms-alpha.c:6147
#, c-format
msgid "STA_MOD (stack module)\n"
msgstr "STA_MOD (pile module)\n"
-#: vms-alpha.c:5987
+#: vms-alpha.c:6150
#, c-format
msgid "STA_CKARG (compare procedure argument)\n"
msgstr "STA_CKARG (compare les arguments de la procédure)\n"
-#: vms-alpha.c:5991
+#: vms-alpha.c:6154
#, c-format
msgid "STO_B (store byte)\n"
msgstr "STO_B (stocke octet)\n"
-#: vms-alpha.c:5994
+#: vms-alpha.c:6157
#, c-format
msgid "STO_W (store word)\n"
msgstr "STO_W (stocke mot)\n"
-#: vms-alpha.c:5997
+#: vms-alpha.c:6160
#, c-format
msgid "STO_LW (store longword)\n"
msgstr "STO_LW (stocke mot long)\n"
-#: vms-alpha.c:6000
+#: vms-alpha.c:6163
#, c-format
msgid "STO_QW (store quadword)\n"
msgstr "STO_QW (stocke quad mot)\n"
-#: vms-alpha.c:6006
+#: vms-alpha.c:6169
#, c-format
msgid "STO_IMMR (store immediate repeat) %u bytes\n"
msgstr "STO_IMMR (stock répétition immédiate) %u octets\n"
-#: vms-alpha.c:6013
+#: vms-alpha.c:6176
#, c-format
msgid "STO_GBL (store global) %.*s\n"
msgstr "STO_GBL (stocke globale) %.*s\n"
-#: vms-alpha.c:6017
+#: vms-alpha.c:6180
#, c-format
msgid "STO_CA (store code address) %.*s\n"
msgstr "STO_CA (stock adresse code) %.*s\n"
-#: vms-alpha.c:6021
+#: vms-alpha.c:6184
#, c-format
msgid "STO_RB (store relative branch)\n"
msgstr "STO_RB (stocke branche relative)\n"
-#: vms-alpha.c:6024
+#: vms-alpha.c:6187
#, c-format
msgid "STO_AB (store absolute branch)\n"
msgstr "STO_AB (stocke branche absolue)\n"
-#: vms-alpha.c:6027
+#: vms-alpha.c:6190
#, c-format
msgid "STO_OFF (store offset to psect)\n"
msgstr "STO_OFF (stocke offset de psect)\n"
-#: vms-alpha.c:6033
+#: vms-alpha.c:6196
#, c-format
msgid "STO_IMM (store immediate) %u bytes\n"
msgstr "STO_IMM (stocke immediat) %u octets\n"
-#: vms-alpha.c:6040
+#: vms-alpha.c:6203
#, c-format
msgid "STO_GBL_LW (store global longword) %.*s\n"
msgstr "STO_GBL_LW (stocke mot long global) %.*s\n"
-#: vms-alpha.c:6044
+#: vms-alpha.c:6207
#, c-format
msgid "STO_OFF (store LP with procedure signature)\n"
msgstr "STO_OFF (stocke LP avec la signature de la procédure)\n"
-#: vms-alpha.c:6047
+#: vms-alpha.c:6210
#, c-format
msgid "STO_BR_GBL (store branch global) *todo*\n"
msgstr "STO_BR_GBL (stocke branche globale) *todo*\n"
-#: vms-alpha.c:6050
+#: vms-alpha.c:6213
#, c-format
msgid "STO_BR_PS (store branch psect + offset) *todo*\n"
msgstr "STO_BR_PS (stocke branche psect + offset) *todo*\n"
-#: vms-alpha.c:6054
+#: vms-alpha.c:6217
#, c-format
msgid "OPR_NOP (no-operation)\n"
msgstr "OPR_NOP (pas d'operation)\n"
-#: vms-alpha.c:6057
+#: vms-alpha.c:6220
#, c-format
msgid "OPR_ADD (add)\n"
msgstr "OPR_ADD (ajout)\n"
-#: vms-alpha.c:6060
+#: vms-alpha.c:6223
#, c-format
msgid "OPR_SUB (substract)\n"
msgstr "OPR_SUB (soustraction)\n"
-#: vms-alpha.c:6063
+#: vms-alpha.c:6226
#, c-format
msgid "OPR_MUL (multiply)\n"
msgstr "OPR_MUL (multiplication)\n"
-#: vms-alpha.c:6066
+#: vms-alpha.c:6229
#, c-format
msgid "OPR_DIV (divide)\n"
msgstr "OPR_DIV (division)\n"
-#: vms-alpha.c:6069
+#: vms-alpha.c:6232
#, c-format
msgid "OPR_AND (logical and)\n"
msgstr "OPR_AND (et logique)\n"
-#: vms-alpha.c:6072
+#: vms-alpha.c:6235
#, c-format
msgid "OPR_IOR (logical inclusive or)\n"
msgstr "OPR_IOR (ou inclusif logique)\n"
-#: vms-alpha.c:6075
+#: vms-alpha.c:6238
#, c-format
msgid "OPR_EOR (logical exclusive or)\n"
msgstr "OPR_EOR (ou exclusif logique)\n"
-#: vms-alpha.c:6078
+#: vms-alpha.c:6241
#, c-format
msgid "OPR_NEG (negate)\n"
msgstr "OPR_NEG (négation)\n"
-#: vms-alpha.c:6081
+#: vms-alpha.c:6244
#, c-format
msgid "OPR_COM (complement)\n"
msgstr "OPR_COM (complément)\n"
-#: vms-alpha.c:6084
+#: vms-alpha.c:6247
#, c-format
msgid "OPR_INSV (insert field)\n"
msgstr "OPR_INSV (insertion champ)\n"
-#: vms-alpha.c:6087
+#: vms-alpha.c:6250
#, c-format
msgid "OPR_ASH (arithmetic shift)\n"
msgstr "OPR_ASH (décalage arithmetique)\n"
-#: vms-alpha.c:6090
+#: vms-alpha.c:6253
#, c-format
msgid "OPR_USH (unsigned shift)\n"
msgstr "OPR_USH (décalage non signé)\n"
-#: vms-alpha.c:6093
+#: vms-alpha.c:6256
#, c-format
msgid "OPR_ROT (rotate)\n"
msgstr "OPR_ROT (rotation)\n"
-#: vms-alpha.c:6096
+#: vms-alpha.c:6259
#, c-format
msgid "OPR_SEL (select)\n"
msgstr "OPR_SEL (selection)\n"
-#: vms-alpha.c:6099
+#: vms-alpha.c:6262
#, c-format
msgid "OPR_REDEF (redefine symbol to curr location)\n"
msgstr "OPR_REDEF (redéfini le symbole à la position actuelle)\n"
-#: vms-alpha.c:6102
+#: vms-alpha.c:6265
#, c-format
msgid "OPR_REDEF (define a literal)\n"
msgstr "OPR_REDEF (définir un litéral)\n"
-#: vms-alpha.c:6106
+#: vms-alpha.c:6269
#, c-format
msgid "STC_LP (store cond linkage pair)\n"
msgstr "STC_LP (stocke pair de liaison cond)\n"
-#: vms-alpha.c:6110
+#: vms-alpha.c:6273
#, c-format
msgid "STC_LP_PSB (store cond linkage pair + signature)\n"
msgstr "STC_LP_PSB (stocke pair de liaison cond + signature)\n"
-#: vms-alpha.c:6111
+#: vms-alpha.c:6275
#, c-format
msgid " linkage index: %u, procedure: %.*s\n"
msgstr " index liaison: %u, procédure: %.*s\n"
-#: vms-alpha.c:6114
+#: vms-alpha.c:6278
#, c-format
msgid " signature: %.*s\n"
msgstr " signature: %.*s\n"
-#: vms-alpha.c:6117
+#: vms-alpha.c:6281
#, c-format
msgid "STC_GBL (store cond global)\n"
msgstr "STC_GBL (stocke cond globale)\n"
-#: vms-alpha.c:6118
+#: vms-alpha.c:6283
#, c-format
msgid " linkage index: %u, global: %.*s\n"
msgstr " index liaison: %u, globale: %.*s\n"
-#: vms-alpha.c:6122
+#: vms-alpha.c:6287
#, c-format
msgid "STC_GCA (store cond code address)\n"
msgstr "STC_GCA (stocke adresse code cond)\n"
-#: vms-alpha.c:6123
+#: vms-alpha.c:6289
#, c-format
msgid " linkage index: %u, procedure name: %.*s\n"
msgstr " index liaison: %u, nom procédure: %.*s\n"
-#: vms-alpha.c:6127
+#: vms-alpha.c:6293
#, c-format
msgid "STC_PS (store cond psect + offset)\n"
msgstr "STC_PS (stocke psect cond + offset)\n"
-#: vms-alpha.c:6129
+#: vms-alpha.c:6296
#, c-format
msgid " linkage index: %u, psect: %u, offset: 0x%08x %08x\n"
msgstr " index liaison: %u, psect: %u, offset: 0x%08x %08x\n"
-#: vms-alpha.c:6136
+#: vms-alpha.c:6303
#, c-format
msgid "STC_NOP_GBL (store cond NOP at global addr)\n"
msgstr "STC_NOP_GBL (stocke NOP cond à l'adresse globale)\n"
-#: vms-alpha.c:6140
+#: vms-alpha.c:6307
#, c-format
msgid "STC_NOP_PS (store cond NOP at psect + offset)\n"
msgstr "STC_NOP_PS (stocke NOP cond à psect + offset)\n"
-#: vms-alpha.c:6144
+#: vms-alpha.c:6311
#, c-format
msgid "STC_BSR_GBL (store cond BSR at global addr)\n"
msgstr "STC_BSR_GBL (stocke BSR cond à l'adresse globale)\n"
-#: vms-alpha.c:6148
+#: vms-alpha.c:6315
#, c-format
msgid "STC_BSR_PS (store cond BSR at psect + offset)\n"
msgstr "STC_BSR_PS (stocke BSR cond à psect + offset)\n"
-#: vms-alpha.c:6152
+#: vms-alpha.c:6319
#, c-format
msgid "STC_LDA_GBL (store cond LDA at global addr)\n"
msgstr "STC_LDA_GBL (stocke LDA cond à l'adresse globale)\n"
-#: vms-alpha.c:6156
+#: vms-alpha.c:6323
#, c-format
msgid "STC_LDA_PS (store cond LDA at psect + offset)\n"
msgstr "STC_LDA_PS (stocke LDA cond à psect + offset)\n"
-#: vms-alpha.c:6160
+#: vms-alpha.c:6327
#, c-format
msgid "STC_BOH_GBL (store cond BOH at global addr)\n"
msgstr "STC_BOH_GBL (stocke BOH cond à l'adresse globale)\n"
-#: vms-alpha.c:6164
+#: vms-alpha.c:6331
#, c-format
msgid "STC_BOH_PS (store cond BOH at psect + offset)\n"
msgstr "STC_BOH_PS (stocke BOH cond à psect + offset)\n"
-#: vms-alpha.c:6169
+#: vms-alpha.c:6336
#, c-format
msgid "STC_NBH_GBL (store cond or hint at global addr)\n"
msgstr "STC_NBH_GBL (stocke cond ou suggestion à l'adresse globale)\n"
-#: vms-alpha.c:6173
+#: vms-alpha.c:6340
#, c-format
msgid "STC_NBH_PS (store cond or hint at psect + offset)\n"
msgstr "STC_NBH_PS (stocke cond or suggestion à psect + offset)\n"
-#: vms-alpha.c:6177
+#: vms-alpha.c:6344
#, c-format
msgid "CTL_SETRB (set relocation base)\n"
msgstr "CTL_SETRB (fixe la base du réadressage)\n"
-#: vms-alpha.c:6183
+#: vms-alpha.c:6350
#, c-format
msgid "CTL_AUGRB (augment relocation base) %u\n"
msgstr "CTL_AUGRB (augmente la base du réadressage) %u\n"
-#: vms-alpha.c:6187
+#: vms-alpha.c:6354
#, c-format
msgid "CTL_DFLOC (define location)\n"
msgstr "CTL_DFLOC (définir position)\n"
-#: vms-alpha.c:6190
+#: vms-alpha.c:6357
#, c-format
msgid "CTL_STLOC (set location)\n"
msgstr "CTL_STLOC (fixer position)\n"
-#: vms-alpha.c:6193
+#: vms-alpha.c:6360
#, c-format
msgid "CTL_STKDL (stack defined location)\n"
msgstr "CTL_STKDL (position définie dans la pile)\n"
-#: vms-alpha.c:6196 vms-alpha.c:6610
+#: vms-alpha.c:6363 vms-alpha.c:6787 vms-alpha.c:6913
#, c-format
msgid "*unhandled*\n"
msgstr "*non pris en charge*\n"
-#: vms-alpha.c:6226 vms-alpha.c:6265
+#: vms-alpha.c:6393 vms-alpha.c:6432
#, c-format
msgid "cannot read GST record length\n"
msgstr "impossible de lire la longueur de l'enregistrement GST\n"
#. Ill-formed.
-#: vms-alpha.c:6247
+#: vms-alpha.c:6414
#, c-format
msgid "cannot find EMH in first GST record\n"
msgstr "impossible de trouver le EMH dans le premier enregistrement GST\n"
-#: vms-alpha.c:6273
+#: vms-alpha.c:6440
#, c-format
msgid "cannot read GST record header\n"
msgstr "impossible de lire l'en-tête de l'enregistrement GST\n"
-#: vms-alpha.c:6286
+#: vms-alpha.c:6453
#, c-format
msgid " corrupted GST\n"
msgstr " GST corrompu\n"
-#: vms-alpha.c:6294
+#: vms-alpha.c:6461
#, c-format
msgid "cannot read GST record\n"
msgstr "ne peut lire l'enregistrement GST\n"
-#: vms-alpha.c:6323
+#: vms-alpha.c:6490
#, c-format
msgid " unhandled EOBJ record type %u\n"
msgstr " type d'enregistrement EOBJ %u non supporté\n"
-#: vms-alpha.c:6346
+#: vms-alpha.c:6514
#, c-format
msgid " bitcount: %u, base addr: 0x%08x\n"
msgstr " décompte des bits: %u, adr base: 0x%08x\n"
-#: vms-alpha.c:6359
+#: vms-alpha.c:6528
#, c-format
msgid " bitmap: 0x%08x (count: %u):\n"
msgstr " carte des bits: 0x%08x (occurrence: %u):\n"
-#: vms-alpha.c:6366
+#: vms-alpha.c:6535
#, c-format
msgid " %08x"
msgstr " %08x"
-#: vms-alpha.c:6391
+#: vms-alpha.c:6561
#, c-format
msgid " image %u (%u entries)\n"
msgstr " image %u (%u entrées)\n"
-#: vms-alpha.c:6396
+#: vms-alpha.c:6567
#, c-format
msgid " offset: 0x%08x, val: 0x%08x\n"
msgstr " offset: 0x%08x, val: 0x%08x\n"
-#: vms-alpha.c:6417
+#: vms-alpha.c:6589
#, c-format
msgid " image %u (%u entries), offsets:\n"
msgstr " image %u (%u entrées), offsets:\n"
-#: vms-alpha.c:6424
+#: vms-alpha.c:6596
#, c-format
msgid " 0x%08x"
msgstr " 0x%08x"
#. 64 bits.
-#: vms-alpha.c:6546
+#: vms-alpha.c:6718
#, c-format
msgid "64 bits *unhandled*\n"
msgstr "64 bits *non supporté*\n"
-#: vms-alpha.c:6550
+#: vms-alpha.c:6723
#, c-format
msgid "class: %u, dtype: %u, length: %u, pointer: 0x%08x\n"
msgstr "classe: %u, dtype: %u, longueur: %u, pointeur: 0x%08x\n"
-#: vms-alpha.c:6561
+#: vms-alpha.c:6734
#, c-format
msgid "non-contiguous array of %s\n"
msgstr "table de %s non contiguë\n"
-#: vms-alpha.c:6565
+#: vms-alpha.c:6739
#, c-format
msgid "dimct: %u, aflags: 0x%02x, digits: %u, scale: %u\n"
msgstr "dimct: %u, aflags: 0x%02x, digits: %u, échelle: %u\n"
-#: vms-alpha.c:6569
+#: vms-alpha.c:6744
#, c-format
msgid "arsize: %u, a0: 0x%08x\n"
msgstr "arsize: %u, a0: 0x%08x\n"
-#: vms-alpha.c:6573
+#: vms-alpha.c:6748
#, c-format
msgid "Strides:\n"
msgstr "Pas:\n"
-#: vms-alpha.c:6578
-#, c-format
-msgid "[%u]: %u\n"
-msgstr "[%u]: %u\n"
-
-#: vms-alpha.c:6583
+#: vms-alpha.c:6758
#, c-format
msgid "Bounds:\n"
msgstr "Limites:\n"
-#: vms-alpha.c:6588
+#: vms-alpha.c:6764
#, c-format
msgid "[%u]: Lower: %u, upper: %u\n"
msgstr "[%u]: Inférieure: %u, supérieure: %u\n"
-#: vms-alpha.c:6600
+#: vms-alpha.c:6776
#, c-format
msgid "unaligned bit-string of %s\n"
msgstr "chaine de bits de %s désalignée\n"
-#: vms-alpha.c:6604
+#: vms-alpha.c:6781
#, c-format
msgid "base: %u, pos: %u\n"
msgstr "base: %u, pos: %u\n"
-#: vms-alpha.c:6624
+#: vms-alpha.c:6802
#, c-format
msgid "vflags: 0x%02x, value: 0x%08x "
msgstr "vflags: 0x%02x, valeur: 0x%08x "
-#: vms-alpha.c:6630
+#: vms-alpha.c:6808
#, c-format
msgid "(no value)\n"
msgstr "(pas de valeur)\n"
-#: vms-alpha.c:6633
+#: vms-alpha.c:6811
#, c-format
msgid "(not active)\n"
msgstr "(pas active)\n"
-#: vms-alpha.c:6636
+#: vms-alpha.c:6814
#, c-format
msgid "(not allocated)\n"
msgstr "(pas allouée)\n"
-#: vms-alpha.c:6639
+#: vms-alpha.c:6817
#, c-format
msgid "(descriptor)\n"
msgstr "(descripteur)\n"
-#: vms-alpha.c:6643
+#: vms-alpha.c:6821
#, c-format
msgid "(trailing value)\n"
msgstr "(valeur postérieure)\n"
-#: vms-alpha.c:6646
+#: vms-alpha.c:6824
#, c-format
msgid "(value spec follows)\n"
msgstr "(spécificités de la valeur suivent)\n"
-#: vms-alpha.c:6649
+#: vms-alpha.c:6827
#, c-format
msgid "(at bit offset %u)\n"
msgstr "(à l'offset de bit %u)\n"
-#: vms-alpha.c:6652
+#: vms-alpha.c:6831
#, c-format
msgid "(reg: %u, disp: %u, indir: %u, kind: "
msgstr "(reg: %u, aff: %u, indir: %u, type: "
-#: vms-alpha.c:6659
+#: vms-alpha.c:6838
msgid "literal"
msgstr "litérale"
-#: vms-alpha.c:6662
+#: vms-alpha.c:6841
msgid "address"
msgstr "adresse"
-#: vms-alpha.c:6665
+#: vms-alpha.c:6844
msgid "desc"
msgstr "desc"
-#: vms-alpha.c:6668
+#: vms-alpha.c:6847
msgid "reg"
msgstr "reg"
-#: vms-alpha.c:6743
+#: vms-alpha.c:6864
+#, c-format
+msgid "len: %2u, kind: %2u "
+msgstr "long: %2u, type: %2u "
+
+#: vms-alpha.c:6870
+#, c-format
+msgid "atomic, type=0x%02x %s\n"
+msgstr "atomique, type=0x%02x %s\n"
+
+#: vms-alpha.c:6874
+#, c-format
+msgid "indirect, defined at 0x%08x\n"
+msgstr "indirect, défini à 0x%08x\n"
+
+#: vms-alpha.c:6878
+#, c-format
+msgid "typed pointer\n"
+msgstr "pointeur typé\n"
+
+#: vms-alpha.c:6882
+#, c-format
+msgid "pointer\n"
+msgstr "pointeur\n"
+
+#: vms-alpha.c:6890
+#, c-format
+msgid "array, dim: %u, bitmap: "
+msgstr "tableau, dim: %u, bitmpa: "
+
+#: vms-alpha.c:6897
+#, c-format
+msgid "array descriptor:\n"
+msgstr "descripteur de tableau:\n"
+
+#: vms-alpha.c:6904
+#, c-format
+msgid "type spec for element:\n"
+msgstr "spec de type pour élément:\n"
+
+#: vms-alpha.c:6906
+#, c-format
+msgid "type spec for subscript %u:\n"
+msgstr "spec de type pour l'indice %u:\n"
+
+#: vms-alpha.c:6924
#, c-format
msgid "Debug symbol table:\n"
msgstr "Table des symboles de debug:\n"
-#: vms-alpha.c:6754
+#: vms-alpha.c:6935
#, c-format
msgid "cannot read DST header\n"
msgstr "impossible de lire l'en-tête DST\n"
-#: vms-alpha.c:6759
+#: vms-alpha.c:6941
#, c-format
msgid " type: %3u, len: %3u (at 0x%08x): "
msgstr " type: %3u, long: %3u (à 0x%08x): "
-#: vms-alpha.c:6773
+#: vms-alpha.c:6955
#, c-format
msgid "cannot read DST symbol\n"
msgstr "ne peut lire le symbole DST\n"
-#: vms-alpha.c:6816
+#: vms-alpha.c:6998
#, c-format
msgid "standard data: %s\n"
msgstr "données standards: %s\n"
-#: vms-alpha.c:6819 vms-alpha.c:6903
+#: vms-alpha.c:7001 vms-alpha.c:7089
#, c-format
msgid " name: %.*s\n"
msgstr " nom: %.*s\n"
-#: vms-alpha.c:6826
+#: vms-alpha.c:7008
#, c-format
msgid "modbeg\n"
msgstr "début module\n"
-#: vms-alpha.c:6827
+#: vms-alpha.c:7010
#, c-format
msgid " flags: %d, language: %u, major: %u, minor: %u\n"
msgstr " fanions: %d, language: %u, majeur: %u, mineur: %u\n"
-#: vms-alpha.c:6833 vms-alpha.c:7099
+#: vms-alpha.c:7016 vms-alpha.c:7290
#, c-format
msgid " module name: %.*s\n"
msgstr " nom du module: %.*s\n"
-#: vms-alpha.c:6836
+#: vms-alpha.c:7019
#, c-format
msgid " compiler : %.*s\n"
msgstr " compilateur : %.*s\n"
-#: vms-alpha.c:6841
+#: vms-alpha.c:7024
#, c-format
msgid "modend\n"
msgstr "fin module\n"
-#: vms-alpha.c:6848
+#: vms-alpha.c:7031
msgid "rtnbeg\n"
msgstr "début rtn\n"
-#: vms-alpha.c:6849
+#: vms-alpha.c:7033
#, c-format
msgid " flags: %u, address: 0x%08x, pd-address: 0x%08x\n"
msgstr " fanions: %u, adresse: 0x%08x, pd-adresse: 0x%08x\n"
-#: vms-alpha.c:6854
+#: vms-alpha.c:7038
#, c-format
msgid " routine name: %.*s\n"
msgstr " nom routine : %.*s\n"
-#: vms-alpha.c:6862
+#: vms-alpha.c:7046
#, c-format
msgid "rtnend: size 0x%08x\n"
msgstr "fin rtn: taille 0x%08x\n"
-#: vms-alpha.c:6870
+#: vms-alpha.c:7054
#, c-format
msgid "prolog: bkpt address 0x%08x\n"
msgstr "prologue: adresse bkpt 0x%08x\n"
-#: vms-alpha.c:6878
+#: vms-alpha.c:7063
#, c-format
msgid "epilog: flags: %u, count: %u\n"
msgstr "épilogue: fanions: %u, nombre: %u\n"
-#: vms-alpha.c:6887
+#: vms-alpha.c:7073
#, c-format
msgid "blkbeg: address: 0x%08x, name: %.*s\n"
msgstr "début blk: adresse: 0x%08x, nom: %.*s\n"
-#: vms-alpha.c:6896
+#: vms-alpha.c:7082
#, c-format
msgid "blkend: size: 0x%08x\n"
msgstr "fin blk: taille: 0x%08x\n"
-#: vms-alpha.c:6902
+#: vms-alpha.c:7088
#, c-format
msgid "typspec (len: %u)\n"
msgstr "typspec (long: %u)\n"
-#: vms-alpha.c:6909
+#: vms-alpha.c:7095
#, c-format
msgid "septyp, name: %.*s\n"
msgstr "septyp, nom: %.*s\n"
-#: vms-alpha.c:6918
+#: vms-alpha.c:7104
#, c-format
msgid "recbeg: name: %.*s\n"
msgstr "début rec: nom: %.*s\n"
-#: vms-alpha.c:6925
+#: vms-alpha.c:7106
+#, c-format
+msgid " len: %u bits\n"
+msgstr " long: %u bits\n"
+
+#: vms-alpha.c:7111
#, c-format
msgid "recend\n"
msgstr "fin rec\n"
-#: vms-alpha.c:6928
+#: vms-alpha.c:7115
#, c-format
msgid "enumbeg, len: %u, name: %.*s\n"
msgstr "début énumération, long: %u, nom: %.*s\n"
-#: vms-alpha.c:6932
+#: vms-alpha.c:7119
#, c-format
msgid "enumelt, name: %.*s\n"
msgstr "énumération éléments, nom: %.*s\n"
-#: vms-alpha.c:6936
+#: vms-alpha.c:7123
#, c-format
msgid "enumend\n"
msgstr "fin énumération\n"
-#: vms-alpha.c:6953
+#: vms-alpha.c:7128
+#, c-format
+msgid "label, name: %.*s\n"
+msgstr "étiquette, nom: %.*s\n"
+
+#: vms-alpha.c:7130
+#, c-format
+msgid " address: 0x%08x\n"
+msgstr " adresse: 0x%08x\n"
+
+#: vms-alpha.c:7140
#, c-format
msgid "discontiguous range (nbr: %u)\n"
msgstr "plage discontinue (nbr: %u)\n"
-#: vms-alpha.c:6955
+#: vms-alpha.c:7143
#, c-format
msgid " address: 0x%08x, size: %u\n"
msgstr " adresse: 0x%08x, taille: %u\n"
-#: vms-alpha.c:6965
+#: vms-alpha.c:7153
#, c-format
msgid "line num (len: %u)\n"
msgstr "num ligne (long: %u)\n"
-#: vms-alpha.c:6982
+#: vms-alpha.c:7170
#, c-format
msgid "delta_pc_w %u\n"
msgstr "delta_pc_w %u\n"
-#: vms-alpha.c:6989
+#: vms-alpha.c:7177
#, c-format
msgid "incr_linum(b): +%u\n"
msgstr "incr_linum(b): +%u\n"
-#: vms-alpha.c:6995
+#: vms-alpha.c:7183
#, c-format
msgid "incr_linum_w: +%u\n"
msgstr "incr_linum_w: +%u\n"
-#: vms-alpha.c:7001
+#: vms-alpha.c:7189
#, c-format
msgid "incr_linum_l: +%u\n"
msgstr "incr_linum_l: +%u\n"
-#: vms-alpha.c:7007
+#: vms-alpha.c:7195
#, c-format
msgid "set_line_num(w) %u\n"
msgstr "set_line_num(w) %u\n"
-#: vms-alpha.c:7012
+#: vms-alpha.c:7200
#, c-format
msgid "set_line_num_b %u\n"
msgstr "set_line_num_b %u\n"
-#: vms-alpha.c:7017
+#: vms-alpha.c:7205
#, c-format
msgid "set_line_num_l %u\n"
msgstr "set_line_num_l %u\n"
-#: vms-alpha.c:7022
+#: vms-alpha.c:7210
#, c-format
msgid "set_abs_pc: 0x%08x\n"
msgstr "set_abs_pc: 0x%08x\n"
-#: vms-alpha.c:7026
+#: vms-alpha.c:7214
#, c-format
msgid "delta_pc_l: +0x%08x\n"
msgstr "delta_pc_l: +0x%08x\n"
-#: vms-alpha.c:7031
+#: vms-alpha.c:7219
#, c-format
msgid "term(b): 0x%02x"
msgstr "term(b): 0x%02x"
-#: vms-alpha.c:7033
+#: vms-alpha.c:7221
#, c-format
msgid " pc: 0x%08x\n"
msgstr " pc: 0x%08x\n"
-#: vms-alpha.c:7038
+#: vms-alpha.c:7226
#, c-format
msgid "term_w: 0x%04x"
msgstr "term_w: 0x%04x"
-#: vms-alpha.c:7040
+#: vms-alpha.c:7228
#, c-format
msgid " pc: 0x%08x\n"
msgstr " pc: 0x%08x\n"
-#: vms-alpha.c:7046
+#: vms-alpha.c:7234
#, c-format
msgid "delta pc +%-4d"
msgstr "delta pc +%-4d"
-#: vms-alpha.c:7049
+#: vms-alpha.c:7238
#, c-format
msgid " pc: 0x%08x line: %5u\n"
msgstr " pc: 0x%08x ligne: %5u\n"
-#: vms-alpha.c:7054
+#: vms-alpha.c:7243
#, c-format
msgid " *unhandled* cmd %u\n"
msgstr " cmd %u *non gérée*\n"
-#: vms-alpha.c:7069
+#: vms-alpha.c:7258
#, c-format
msgid "source (len: %u)\n"
msgstr "source (long: %u)\n"
-#: vms-alpha.c:7083
+#: vms-alpha.c:7273
#, c-format
msgid " declfile: len: %u, flags: %u, fileid: %u\n"
msgstr " declfile: long: %u, fanions: %u, id fichier: %u\n"
-#: vms-alpha.c:7087
+#: vms-alpha.c:7278
#, c-format
msgid " rms: cdt: 0x%08x %08x, ebk: 0x%08x, ffb: 0x%04x, rfo: %u\n"
msgstr " rms: cdt: 0x%08x %08x, ebk: 0x%08x, ffb: 0x%04x, rfo: %u\n"
-#: vms-alpha.c:7096
+#: vms-alpha.c:7287
#, c-format
msgid " filename : %.*s\n"
msgstr " nom fichier: %.*s\n"
-#: vms-alpha.c:7105
+#: vms-alpha.c:7296
#, c-format
msgid " setfile %u\n"
msgstr " setfile %u\n"
-#: vms-alpha.c:7110 vms-alpha.c:7115
+#: vms-alpha.c:7301 vms-alpha.c:7306
#, c-format
msgid " setrec %u\n"
msgstr " setrec %u\n"
-#: vms-alpha.c:7120 vms-alpha.c:7125
+#: vms-alpha.c:7311 vms-alpha.c:7316
#, c-format
msgid " setlnum %u\n"
msgstr " setlnum %u\n"
-#: vms-alpha.c:7130 vms-alpha.c:7135
+#: vms-alpha.c:7321 vms-alpha.c:7326
#, c-format
msgid " deflines %u\n"
msgstr " deflines %u\n"
-#: vms-alpha.c:7139
+#: vms-alpha.c:7330
#, c-format
msgid " formfeed\n"
msgstr " formfeed\n"
-#: vms-alpha.c:7143
+#: vms-alpha.c:7334
#, c-format
msgid " *unhandled* cmd %u\n"
msgstr " cmd %u *non gérée*\n"
-#: vms-alpha.c:7155
+#: vms-alpha.c:7346
#, c-format
msgid "*unhandled* dst type %u\n"
msgstr "type dst %u *non géré*\n"
-#: vms-alpha.c:7187
+#: vms-alpha.c:7378
#, c-format
msgid "cannot read EIHD\n"
msgstr "ne peut lire EIHD\n"
-#: vms-alpha.c:7190
+#: vms-alpha.c:7382
#, c-format
msgid "EIHD: (size: %u, nbr blocks: %u)\n"
msgstr "EIHD: (taille: %u, nbr blocs: %u)\n"
-#: vms-alpha.c:7193
+#: vms-alpha.c:7386
#, c-format
msgid " majorid: %u, minorid: %u\n"
msgstr " id majeur: %u, id mineur: %u\n"
-#: vms-alpha.c:7201
+#: vms-alpha.c:7394
msgid "executable"
msgstr "exécutable"
-#: vms-alpha.c:7204
+#: vms-alpha.c:7397
msgid "linkable image"
msgstr "image liable"
-#: vms-alpha.c:7210
+#: vms-alpha.c:7404
#, c-format
msgid " image type: %u (%s)"
msgstr " type image: %u (%s)"
-#: vms-alpha.c:7216
+#: vms-alpha.c:7410
msgid "native"
msgstr "natif"
-#: vms-alpha.c:7219
+#: vms-alpha.c:7413
msgid "CLI"
msgstr "CLI"
-#: vms-alpha.c:7225
+#: vms-alpha.c:7420
#, c-format
msgid ", subtype: %u (%s)\n"
msgstr ", sous-type: %u (%s)\n"
-#: vms-alpha.c:7231
+#: vms-alpha.c:7427
#, c-format
msgid " offsets: isd: %u, activ: %u, symdbg: %u, imgid: %u, patch: %u\n"
msgstr " offsets: isd: %u, actif: %u, debug symbol: %u, id image: %u, patch: %u\n"
-#: vms-alpha.c:7235
+#: vms-alpha.c:7431
#, c-format
msgid " fixup info rva: "
msgstr " correctif info rva: "
-#: vms-alpha.c:7237
+#: vms-alpha.c:7433
#, c-format
msgid ", symbol vector rva: "
msgstr ", vecteur de symbol rva: "
-#: vms-alpha.c:7240
+#: vms-alpha.c:7436
#, c-format
msgid ""
"\n"
@@ -5620,624 +7399,688 @@ msgstr ""
"\n"
" offset tableau version: %u\n"
-#: vms-alpha.c:7244
+#: vms-alpha.c:7441
#, c-format
msgid " img I/O count: %u, nbr channels: %u, req pri: %08x%08x\n"
msgstr " décompte E/S img: %u, nbr canaux: %u, priv req: %08x%08x\n"
-#: vms-alpha.c:7250
+#: vms-alpha.c:7447
#, c-format
msgid " linker flags: %08x:"
msgstr " fanions lieur: %08x:"
-#: vms-alpha.c:7280
+#: vms-alpha.c:7478
#, c-format
msgid " ident: 0x%08x, sysver: 0x%08x, match ctrl: %u, symvect_size: %u\n"
msgstr " ident: 0x%08x, ver sys: 0x%08x, apparier ctrl: %u, taille vectsym: %u\n"
-#: vms-alpha.c:7286
+#: vms-alpha.c:7484
#, c-format
msgid " BPAGE: %u"
msgstr " BPAGE: %u"
-#: vms-alpha.c:7292
+#: vms-alpha.c:7491
#, c-format
msgid ", ext fixup offset: %u, no_opt psect off: %u"
msgstr ", offset correctif étendu: %u, offset no_opt psect: %u"
-#: vms-alpha.c:7295
+#: vms-alpha.c:7494
#, c-format
msgid ", alias: %u\n"
msgstr ", alias: %u\n"
-#: vms-alpha.c:7303
+#: vms-alpha.c:7502
#, c-format
msgid "system version array information:\n"
msgstr "information sur table de version système:\n"
-#: vms-alpha.c:7307
+#: vms-alpha.c:7506
#, c-format
msgid "cannot read EIHVN header\n"
msgstr "ne peut lire l'en-tête EIHVN\n"
-#: vms-alpha.c:7317
+#: vms-alpha.c:7516
#, c-format
msgid "cannot read EIHVN version\n"
msgstr "ne peut lire la version EIHVN\n"
-#: vms-alpha.c:7320
+#: vms-alpha.c:7519
#, c-format
msgid " %02u "
msgstr " %02u "
-#: vms-alpha.c:7324
+#: vms-alpha.c:7523
msgid "BASE_IMAGE "
msgstr "BASE_IMAGE "
-#: vms-alpha.c:7327
+#: vms-alpha.c:7526
msgid "MEMORY_MANAGEMENT"
msgstr "MEMORY_MANAGEMENT"
-#: vms-alpha.c:7330
+#: vms-alpha.c:7529
msgid "IO "
msgstr "IO "
-#: vms-alpha.c:7333
+#: vms-alpha.c:7532
msgid "FILES_VOLUMES "
msgstr "FILES_VOLUMES "
-#: vms-alpha.c:7336
+#: vms-alpha.c:7535
msgid "PROCESS_SCHED "
msgstr "PROCESS_SCHED "
-#: vms-alpha.c:7339
+#: vms-alpha.c:7538
msgid "SYSGEN "
msgstr "SYSGEN "
-#: vms-alpha.c:7342
+#: vms-alpha.c:7541
msgid "CLUSTERS_LOCKMGR "
msgstr "CLUSTERS_LOCKMGR "
-#: vms-alpha.c:7345
+#: vms-alpha.c:7544
msgid "LOGICAL_NAMES "
msgstr "LOGICAL_NAMES "
-#: vms-alpha.c:7348
+#: vms-alpha.c:7547
msgid "SECURITY "
msgstr "SECURITY "
-#: vms-alpha.c:7351
+#: vms-alpha.c:7550
msgid "IMAGE_ACTIVATOR "
msgstr "IMAGE_ACTIVATOR "
-#: vms-alpha.c:7354
+#: vms-alpha.c:7553
msgid "NETWORKS "
msgstr "NETWORKS "
-#: vms-alpha.c:7357
+#: vms-alpha.c:7556
msgid "COUNTERS "
msgstr "COUNTERS "
-#: vms-alpha.c:7360
+#: vms-alpha.c:7559
msgid "STABLE "
msgstr "STABLE "
-#: vms-alpha.c:7363
+#: vms-alpha.c:7562
msgid "MISC "
msgstr "MISC "
-#: vms-alpha.c:7366
+#: vms-alpha.c:7565
msgid "CPU "
msgstr "CPU "
-#: vms-alpha.c:7369
+#: vms-alpha.c:7568
msgid "VOLATILE "
msgstr "VOLATILE "
-#: vms-alpha.c:7372
+#: vms-alpha.c:7571
msgid "SHELL "
msgstr "SHELL "
-#: vms-alpha.c:7375
+#: vms-alpha.c:7574
msgid "POSIX "
msgstr "POSIX "
-#: vms-alpha.c:7378
+#: vms-alpha.c:7577
msgid "MULTI_PROCESSING "
msgstr "MULTI_PROCESSING "
-#: vms-alpha.c:7381
+#: vms-alpha.c:7580
msgid "GALAXY "
msgstr "GALAXY "
-#: vms-alpha.c:7384
+#: vms-alpha.c:7583
msgid "*unknown* "
msgstr "*inconnu* "
-#: vms-alpha.c:7387
-#, c-format
-msgid ": %u.%u\n"
-msgstr ": %u.%u\n"
-
-#: vms-alpha.c:7400 vms-alpha.c:7659
+#: vms-alpha.c:7599 vms-alpha.c:7874
#, c-format
msgid "cannot read EIHA\n"
msgstr "ne peut lire EIHA\n"
-#: vms-alpha.c:7403
+#: vms-alpha.c:7602
#, c-format
msgid "Image activation: (size=%u)\n"
msgstr "Activation de l'image: (taille=%u)\n"
-#: vms-alpha.c:7405
+#: vms-alpha.c:7605
#, c-format
msgid " First address : 0x%08x 0x%08x\n"
msgstr " Première adresse : 0x%08x 0x%08x\n"
-#: vms-alpha.c:7408
+#: vms-alpha.c:7609
#, c-format
msgid " Second address: 0x%08x 0x%08x\n"
msgstr " Deuxième adresse : 0x%08x 0x%08x\n"
-#: vms-alpha.c:7411
+#: vms-alpha.c:7613
#, c-format
msgid " Third address : 0x%08x 0x%08x\n"
msgstr " Troisième adresse: 0x%08x 0x%08x\n"
-#: vms-alpha.c:7414
+#: vms-alpha.c:7617
#, c-format
msgid " Fourth address: 0x%08x 0x%08x\n"
msgstr " Quatrième adresse: 0x%08x 0x%08x\n"
-#: vms-alpha.c:7417
+#: vms-alpha.c:7621
#, c-format
msgid " Shared image : 0x%08x 0x%08x\n"
msgstr " Image partagée : 0x%08x 0x%08x\n"
-#: vms-alpha.c:7428
+#: vms-alpha.c:7632
#, c-format
msgid "cannot read EIHI\n"
msgstr "ne peut lire EIHI\n"
-#: vms-alpha.c:7431
+#: vms-alpha.c:7636
#, c-format
msgid "Image identification: (major: %u, minor: %u)\n"
msgstr "Identification d'image: (majeur: %u, mineur: %u)\n"
-#: vms-alpha.c:7434
+#: vms-alpha.c:7639
#, c-format
msgid " image name : %.*s\n"
msgstr " nom de l'image : %.*s\n"
-#: vms-alpha.c:7436
+#: vms-alpha.c:7641
#, c-format
msgid " link time : %s\n"
msgstr " heure de liaison : %s\n"
-#: vms-alpha.c:7438
+#: vms-alpha.c:7643
#, c-format
msgid " image ident : %.*s\n"
msgstr " ident image : %.*s\n"
-#: vms-alpha.c:7440
+#: vms-alpha.c:7645
#, c-format
msgid " linker ident : %.*s\n"
msgstr " ident lieur : %.*s\n"
-#: vms-alpha.c:7442
+#: vms-alpha.c:7647
#, c-format
msgid " image build ident: %.*s\n"
msgstr " ident construction image: %.*s\n"
-#: vms-alpha.c:7452
+#: vms-alpha.c:7657
#, c-format
msgid "cannot read EIHS\n"
msgstr "ne peut lire EIHS\n"
-#: vms-alpha.c:7455
+#: vms-alpha.c:7661
#, c-format
msgid "Image symbol & debug table: (major: %u, minor: %u)\n"
msgstr "Image des symboles et table debug: (majeur: %u, mineur: %u)\n"
-#: vms-alpha.c:7460
+#: vms-alpha.c:7667
#, c-format
msgid " debug symbol table : vbn: %u, size: %u (0x%x)\n"
msgstr " table des symboles de debug : vbn: %u, taille: %u (0x%x)\n"
-#: vms-alpha.c:7464
+#: vms-alpha.c:7672
#, c-format
msgid " global symbol table: vbn: %u, records: %u\n"
msgstr " table des symboles globale: vbn: %u, enregistrements: %u\n"
-#: vms-alpha.c:7468
+#: vms-alpha.c:7677
#, c-format
msgid " debug module table : vbn: %u, size: %u\n"
msgstr " table des modules de debug: vbn: %u, taille: %u\n"
-#: vms-alpha.c:7481
+#: vms-alpha.c:7690
#, c-format
msgid "cannot read EISD\n"
msgstr "ne peut lire EISD\n"
-#: vms-alpha.c:7491
+#: vms-alpha.c:7701
#, c-format
msgid "Image section descriptor: (major: %u, minor: %u, size: %u, offset: %u)\n"
msgstr "Descripteur de section d'image: (majeur: %u, mineur: %u, taille: %u, offset: %u)\n"
-#: vms-alpha.c:7498
+#: vms-alpha.c:7709
#, c-format
msgid " section: base: 0x%08x%08x size: 0x%08x\n"
msgstr " section: base: 0x%08x%08x taille: 0x%08x\n"
-#: vms-alpha.c:7503
+#: vms-alpha.c:7714
#, c-format
msgid " flags: 0x%04x"
msgstr " fanions: 0x%04x"
-#: vms-alpha.c:7540
+#: vms-alpha.c:7752
#, c-format
msgid " vbn: %u, pfc: %u, matchctl: %u type: %u ("
msgstr " vbn: %u, pfc: %u, matchctl: %u type: %u ("
-#: vms-alpha.c:7546
+#: vms-alpha.c:7758
msgid "NORMAL"
msgstr "NORMAL"
-#: vms-alpha.c:7549
+#: vms-alpha.c:7761
msgid "SHRFXD"
msgstr "SHRFXD"
-#: vms-alpha.c:7552
+#: vms-alpha.c:7764
msgid "PRVFXD"
msgstr "PRVFXD"
-#: vms-alpha.c:7555
+#: vms-alpha.c:7767
msgid "SHRPIC"
msgstr "SHRPIC"
-#: vms-alpha.c:7558
+#: vms-alpha.c:7770
msgid "PRVPIC"
msgstr "PRVPIC"
-#: vms-alpha.c:7561
+#: vms-alpha.c:7773
msgid "USRSTACK"
msgstr "USRSTACK"
-#: vms-alpha.c:7567
+#: vms-alpha.c:7779
msgid ")\n"
msgstr ")\n"
-#: vms-alpha.c:7569
+#: vms-alpha.c:7782
#, c-format
msgid " ident: 0x%08x, name: %.*s\n"
msgstr " ident: 0x%08x, nom: %.*s\n"
-#: vms-alpha.c:7579
+#: vms-alpha.c:7792
#, c-format
msgid "cannot read DMT\n"
msgstr "ne peut lire DMT\n"
-#: vms-alpha.c:7583
+#: vms-alpha.c:7796
#, c-format
msgid "Debug module table:\n"
msgstr "Table de debug du module:\n"
-#: vms-alpha.c:7592
+#: vms-alpha.c:7805
#, c-format
msgid "cannot read DMT header\n"
msgstr "ne peut lire l'en-tête DMT\n"
-#: vms-alpha.c:7597
+#: vms-alpha.c:7811
#, c-format
msgid " module offset: 0x%08x, size: 0x%08x, (%u psects)\n"
msgstr " offset du module: 0x%08x, taille: 0x%08x, (%u psects)\n"
-#: vms-alpha.c:7607
+#: vms-alpha.c:7821
#, c-format
msgid "cannot read DMT psect\n"
msgstr "ne peut lire le psect DMT\n"
-#: vms-alpha.c:7610
+#: vms-alpha.c:7825
#, c-format
msgid " psect start: 0x%08x, length: %u\n"
msgstr " début psect: 0x%08x, longueur: %u\n"
-#: vms-alpha.c:7623
+#: vms-alpha.c:7838
#, c-format
msgid "cannot read DST\n"
msgstr "ne peut lire DST\n"
-#: vms-alpha.c:7633
+#: vms-alpha.c:7848
#, c-format
msgid "cannot read GST\n"
msgstr "ne peut lire GST\n"
-#: vms-alpha.c:7637
+#: vms-alpha.c:7852
#, c-format
msgid "Global symbol table:\n"
msgstr "Table des symboles globaux:\n"
-#: vms-alpha.c:7665
+#: vms-alpha.c:7881
#, c-format
msgid "Image activator fixup: (major: %u, minor: %u)\n"
msgstr "Correction de l'activateur de l'image: (majeur: %u, mineur: %u)\n"
-#: vms-alpha.c:7668
+#: vms-alpha.c:7885
#, c-format
msgid " iaflink : 0x%08x %08x\n"
msgstr " lien iaf : 0x%08x %08x\n"
-#: vms-alpha.c:7671
+#: vms-alpha.c:7889
#, c-format
msgid " fixuplnk: 0x%08x %08x\n"
msgstr " lien correctif: 0x%08x %08x\n"
-#: vms-alpha.c:7674
+#: vms-alpha.c:7892
#, c-format
msgid " size : %u\n"
msgstr " taille : %u\n"
-#: vms-alpha.c:7676
+#: vms-alpha.c:7894
#, c-format
msgid " flags: 0x%08x\n"
msgstr " fanions: 0x%08x\n"
-#: vms-alpha.c:7680
+#: vms-alpha.c:7899
#, c-format
msgid " qrelfixoff: %5u, lrelfixoff: %5u\n"
msgstr " qrelfixoff: %5u, lrelfixoff: %5u\n"
-#: vms-alpha.c:7684
+#: vms-alpha.c:7904
#, c-format
msgid " qdotadroff: %5u, ldotadroff: %5u\n"
msgstr " qdotadroff: %5u, ldotadroff: %5u\n"
-#: vms-alpha.c:7688
+#: vms-alpha.c:7909
#, c-format
msgid " codeadroff: %5u, lpfixoff : %5u\n"
msgstr " codeadroff: %5u, lpfixoff : %5u\n"
-#: vms-alpha.c:7691
+#: vms-alpha.c:7912
#, c-format
msgid " chgprtoff : %5u\n"
msgstr " chgprtoff : %5u\n"
-#: vms-alpha.c:7694
+#: vms-alpha.c:7916
#, c-format
msgid " shlstoff : %5u, shrimgcnt : %5u\n"
msgstr " shlstoff : %5u, shrimgcnt : %5u\n"
-#: vms-alpha.c:7696
+#: vms-alpha.c:7919
#, c-format
msgid " shlextra : %5u, permctx : %5u\n"
msgstr " shlextra : %5u, permctx : %5u\n"
-#: vms-alpha.c:7699
+#: vms-alpha.c:7922
#, c-format
msgid " base_va : 0x%08x\n"
msgstr " base_va : 0x%08x\n"
-#: vms-alpha.c:7701
+#: vms-alpha.c:7924
#, c-format
msgid " lppsbfixoff: %5u\n"
msgstr " lppsbfixoff: %5u\n"
-#: vms-alpha.c:7709
+#: vms-alpha.c:7932
#, c-format
msgid " Shareable images:\n"
msgstr " Images partageables:\n"
-#: vms-alpha.c:7713
+#: vms-alpha.c:7937
#, c-format
msgid " %u: size: %u, flags: 0x%02x, name: %.*s\n"
msgstr " %u: taille: %u, fanions: 0x%02x, nom: %.*s\n"
-#: vms-alpha.c:7720
+#: vms-alpha.c:7944
#, c-format
msgid " quad-word relocation fixups:\n"
msgstr " correctifs du réadressage des quad-mots:\n"
-#: vms-alpha.c:7725
+#: vms-alpha.c:7949
#, c-format
msgid " long-word relocation fixups:\n"
msgstr " correctifs du réadressage des mots longs:\n"
-#: vms-alpha.c:7730
+#: vms-alpha.c:7954
#, c-format
msgid " quad-word .address reference fixups:\n"
-msgstr " correctifs des références quad-mots «.address»:\n"
+msgstr " correctifs des références quad-mots « .address »:\n"
-#: vms-alpha.c:7735
+#: vms-alpha.c:7959
#, c-format
msgid " long-word .address reference fixups:\n"
-msgstr " correctifs des références mots longs «.address»:\n"
+msgstr " correctifs des références mots longs « .address »:\n"
-#: vms-alpha.c:7740
+#: vms-alpha.c:7964
#, c-format
msgid " Code Address Reference Fixups:\n"
msgstr " Correctifs des références des adresses de code:\n"
-#: vms-alpha.c:7745
+#: vms-alpha.c:7969
#, c-format
msgid " Linkage Pairs Reference Fixups:\n"
msgstr " Correctifs des références des paires de liaison:\n"
-#: vms-alpha.c:7754
+#: vms-alpha.c:7978
#, c-format
msgid " Change Protection (%u entries):\n"
msgstr " Changement de protection (%u entrées):\n"
-#: vms-alpha.c:7759
+#: vms-alpha.c:7984
#, c-format
msgid " base: 0x%08x %08x, size: 0x%08x, prot: 0x%08x "
msgstr " base: 0x%08x %08x, taille: 0x%08x, prot: 0x%08x "
#. FIXME: we do not yet support relocatable link. It is not obvious
#. how to do it for debug infos.
-#: vms-alpha.c:8599
+#: vms-alpha.c:8824
msgid "%P: relocatable link is not supported\n"
msgstr "%P: lien relocalisable pas supporté\n"
-#: vms-alpha.c:8669
+#: vms-alpha.c:8895
+#, c-format
msgid "%P: multiple entry points: in modules %B and %B\n"
msgstr "%P: points d'entrée multiples: dans les modules %B et %B\n"
-#: vms-lib.c:1444
+#: vms-lib.c:1445
#, c-format
msgid "could not open shared image '%s' from '%s'"
-msgstr "n'a pas su ouvrir l'image partagée «%s» de «%s»"
+msgstr "n'a pas su ouvrir l'image partagée « %s » de « %s »"
-#: vms-misc.c:360
+#: vms-misc.c:361
msgid "_bfd_vms_output_counted called with zero bytes"
msgstr "_bfd_vms_output_counted appelé avec un compte de zéro octet"
-#: vms-misc.c:365
+#: vms-misc.c:366
msgid "_bfd_vms_output_counted called with too many bytes"
msgstr "_bfd_vms_output_counted appelé avec trop d'octets"
-#: xcofflink.c:824
-#, c-format
-msgid "%s: XCOFF shared object when not producing XCOFF output"
-msgstr "%s: objet XCOFF partagé alors qu'on ne produit pas de sortie XCOFF"
+#: xcofflink.c:832
+msgid "%B: XCOFF shared object when not producing XCOFF output"
+msgstr "%B: objet XCOFF partagé alors qu'on ne produit pas de sortie XCOFF"
-#: xcofflink.c:845
-#, c-format
-msgid "%s: dynamic object with no .loader section"
-msgstr "%s: objet dynamique sans section .loader"
+#: xcofflink.c:853
+msgid "%B: dynamic object with no .loader section"
+msgstr "%B: objet dynamique sans section .loader"
-#: xcofflink.c:1404
+#: xcofflink.c:1413
+#, c-format
msgid "%B: `%s' has line numbers but no enclosing section"
-msgstr "%B: «%s» contient des numéros de lignes mais de section d'encadrement"
+msgstr "%B: « %s » contient des numéros de lignes mais de section d'encadrement"
-#: xcofflink.c:1456
+#: xcofflink.c:1466
+#, c-format
msgid "%B: class %d symbol `%s' has no aux entries"
-msgstr "%B: classe %d symbole «%s» n'a pas d'entrée auxiliaire"
+msgstr "%B: classe %d symbole « %s » n'a pas d'entrée auxiliaire"
-#: xcofflink.c:1478
+#: xcofflink.c:1489
+#, c-format
msgid "%B: symbol `%s' has unrecognized csect type %d"
-msgstr "%B: symbole «%s» a un type csect %d non reconnu"
+msgstr "%B: symbole « %s » a un type csect %d non reconnu"
-#: xcofflink.c:1490
+#: xcofflink.c:1502
+#, c-format
msgid "%B: bad XTY_ER symbol `%s': class %d scnum %d scnlen %d"
-msgstr "%B: symbole XTY_ER «%s» erroné: classe %d scnum %d scnlen %d"
+msgstr "%B: symbole XTY_ER « %s » erroné: classe %d scnum %d scnlen %d"
-#: xcofflink.c:1519
+#: xcofflink.c:1532
+#, c-format
msgid "%B: XMC_TC0 symbol `%s' is class %d scnlen %d"
-msgstr "%B: XMC_TC0 symbol «%s» est la classe %d scnlen %d"
+msgstr "%B: XMC_TC0 symbol « %s » est la classe %d scnlen %d"
-#: xcofflink.c:1665
+#: xcofflink.c:1679
+#, c-format
msgid "%B: csect `%s' not in enclosing section"
-msgstr "%B: csect «%s» n'est pas dans un section d'encadrement"
+msgstr "%B: csect « %s » n'est pas dans un section d'encadrement"
-#: xcofflink.c:1772
+#: xcofflink.c:1787
+#, c-format
msgid "%B: misplaced XTY_LD `%s'"
-msgstr "%B: XTY_LD «%s» mal placé"
+msgstr "%B: XTY_LD « %s » mal placé"
-#: xcofflink.c:2091
+#: xcofflink.c:2108
+#, c-format
msgid "%B: reloc %s:%d not in csect"
-msgstr "%B: relocalisation %s:%d n'est pas dans csect"
+msgstr "%B: réadressage %s:%d n'est pas dans csect"
-#: xcofflink.c:3182
+#: xcofflink.c:3198
#, c-format
msgid "%s: no such symbol"
msgstr "%s: pas de tel symbole"
-#: xcofflink.c:3287
+#: xcofflink.c:3303
#, c-format
msgid "warning: attempt to export undefined symbol `%s'"
-msgstr "attention: tentative d'exportation d'un symbole non défini «%s»"
+msgstr "attention: tentative d'exportation d'un symbole non défini « %s »"
-#: xcofflink.c:3666
+#: xcofflink.c:3682
msgid "error: undefined symbol __rtinit"
msgstr "erreur: symbole __rtinit non défini"
-#: xcofflink.c:4045
+#: xcofflink.c:4062
+#, c-format
msgid "%B: loader reloc in unrecognized section `%s'"
-msgstr "%B: chargeur de relocalisation dans une section non reconnnue «%s»"
+msgstr "%B: chargeur de réadressage dans une section non reconnue « %s »"
-#: xcofflink.c:4056
+#: xcofflink.c:4074
+#, c-format
msgid "%B: `%s' in loader reloc but not loader sym"
-msgstr "%B: «%s» est dans le chargeur de relocalisation mais pas dans celui des symboles"
+msgstr "%B: « %s » est dans le chargeur de réadressage mais pas dans celui des symboles"
-#: xcofflink.c:4072
+#: xcofflink.c:4091
+#, c-format
msgid "%B: loader reloc in read-only section %A"
-msgstr "%B: chargeur de relocalisation dans la section %A en lecture seule"
+msgstr "%B: chargeur de réadressages dans la section %A en lecture seule"
-#: xcofflink.c:5094
+#: xcofflink.c:5115
#, c-format
msgid "TOC overflow: 0x%lx > 0x10000; try -mminimal-toc when compiling"
msgstr "Débordement de la table des entrées: 0x%lx > 0x10000; essayez l'option -mminimal-toc à la compilation"
-#: peigen.c:1009 pepigen.c:1009 pex64igen.c:1009
+#: /Users/gingold/Repositories/fsf/binutils-gdb.git/bfd/elfnn-aarch64.c:1890
+#, c-format
+msgid "Invalid AArch64 reloc number: %d"
+msgstr "Numéro de réadressage AArch64 invalide: %d"
+
+#: /Users/gingold/Repositories/fsf/binutils-gdb.git/bfd/elfnn-aarch64.c:4777
+msgid "%B: error: Erratum 835769 stub out of range (input file too large)"
+msgstr "%B: erreur: L'ébauche d'erratum du 835769 est hors limite (fichier d'entrée trop grand)"
+
+#: /Users/gingold/Repositories/fsf/binutils-gdb.git/bfd/elfnn-aarch64.c:4858
+msgid "%B: error: Erratum 843419 stub out of range (input file too large)"
+msgstr "%B: erreur: L'ébauche d'erratum du 843419 est hors limite (fichier d'entrée trop grand)"
+
+#: /Users/gingold/Repositories/fsf/binutils-gdb.git/bfd/elfnn-aarch64.c:5340
+#, c-format
+msgid "%B: relocation %s against symbol `%s' which may bind externally can not be used when making a shared object; recompile with -fPIC"
+msgstr "%B: réadressage de %s en vertu du symbol « %s » qui peut être lié avec l'extérieur ne peut être utilisé lors de la création d'un objet partagé; recompilez avec -fPIC"
+
+#: /Users/gingold/Repositories/fsf/binutils-gdb.git/bfd/elfnn-aarch64.c:5431
#, c-format
-msgid "%s: line number overflow: 0x%lx > 0xffff"
-msgstr "%s: débordement du nombre de lignes: 0x%lx > 0xffff"
+msgid "%B: Local symbol descriptor table be NULL when applying relocation %s against local symbol"
+msgstr "%B: La table des descripteurs de symboles locaux peut être NULL en application le réadressage %s sur un symbole local"
-#: peigen.c:1036 pepigen.c:1036 pex64igen.c:1036
+#: /Users/gingold/Repositories/fsf/binutils-gdb.git/bfd/elfnn-aarch64.c:6459
+msgid "Too many GOT entries for -fpic, please recompile with -fPIC"
+msgstr "Trop d'entrées GOT pour -fpic, recompilez avec -fPIC"
+
+#: /Users/gingold/Repositories/fsf/binutils-gdb.git/bfd/elfnn-aarch64.c:6487
+msgid "One possible cause of this error is that the symbol is being referenced in the indicated code as if it had a larger alignment than was declared where it was defined."
+msgstr "Une cause possible pour cette erreur est que le symbole est référencé dans le code indiqué comme si il avait un alignement plus grand que celui qui a été déclaré lors de sa définition."
+
+#: /Users/gingold/Repositories/fsf/binutils-gdb.git/bfd/elfnn-riscv.c:2600
+msgid ""
+"%B: ABI is incompatible with that of the selected emulation:\n"
+" target emulation `%s' does not match `%s'"
+msgstr ""
+"%B: l'ABI est incompatible avec celle de l'émulation sélectionnée:\n"
+" l'émulation de la cible « %s » ne correspond pas à « %s »"
+
+#: /Users/gingold/Repositories/fsf/binutils-gdb.git/bfd/elfnn-riscv.c:2620
+msgid "%B: can't link hard-float modules with soft-float modules"
+msgstr "%B: impossible de lier des modules utilisant des flottants matériels avec des modules utilisant des flottants logiciels"
+
+#: peigen.c:157 pepigen.c:157 pex64igen.c:157
+msgid "%B: unable to find name for empty section"
+msgstr "%B: impossible de trouver le nom pour une section vide"
+
+#: peigen.c:183 pepigen.c:183 pex64igen.c:183
+msgid "%B: out of memory creating name for empty section"
+msgstr "%B: pas assez de mémoire en créant le nom pour une section vide"
+
+#: peigen.c:194 pepigen.c:194 pex64igen.c:194
+msgid "%B: unable to create fake empty section"
+msgstr "%B: impossible de créer une section vide factice"
+
+#: peigen.c:532 pepigen.c:532 pex64igen.c:532
+msgid "%B: aout header specifies an invalid number of data-directory entries: %d"
+msgstr "%B: l'en-tête aout spécifie un nombre invalide d'entrées de répertoire de données: %d"
+
+#: peigen.c:1089 pepigen.c:1089 pex64igen.c:1089
+#, c-format
+msgid "%B: line number overflow: 0x%lx > 0xffff"
+msgstr "%B: débordement du nombre de lignes: 0x%lx > 0xffff"
+
+#: peigen.c:1233 pepigen.c:1233 pex64igen.c:1233
msgid "Export Directory [.edata (or where ever we found it)]"
msgstr "Répertoire d'exportation [.edata (ou là où il a été trouvé)]"
-#: peigen.c:1037 pepigen.c:1037 pex64igen.c:1037
+#: peigen.c:1234 pepigen.c:1234 pex64igen.c:1234
msgid "Import Directory [parts of .idata]"
msgstr "Répertoire d'importation [faisant partie de .idata]"
-#: peigen.c:1038 pepigen.c:1038 pex64igen.c:1038
+#: peigen.c:1235 pepigen.c:1235 pex64igen.c:1235
msgid "Resource Directory [.rsrc]"
msgstr "Répertoire des resources [.rsrc]"
-#: peigen.c:1039 pepigen.c:1039 pex64igen.c:1039
+#: peigen.c:1236 pepigen.c:1236 pex64igen.c:1236
msgid "Exception Directory [.pdata]"
msgstr "Répertoire des exceptions [.pdata]"
-#: peigen.c:1040 pepigen.c:1040 pex64igen.c:1040
+#: peigen.c:1237 pepigen.c:1237 pex64igen.c:1237
msgid "Security Directory"
msgstr "Répertoire de la sécurité"
-#: peigen.c:1041 pepigen.c:1041 pex64igen.c:1041
+#: peigen.c:1238 pepigen.c:1238 pex64igen.c:1238
msgid "Base Relocation Directory [.reloc]"
msgstr "Répertoire de base du réadressage [.reloc]"
-#: peigen.c:1042 pepigen.c:1042 pex64igen.c:1042
+#: peigen.c:1239 pepigen.c:1239 pex64igen.c:1239
msgid "Debug Directory"
msgstr "Répertoire de débug"
-#: peigen.c:1043 pepigen.c:1043 pex64igen.c:1043
+#: peigen.c:1240 pepigen.c:1240 pex64igen.c:1240
msgid "Description Directory"
msgstr "Répertoire de description"
-#: peigen.c:1044 pepigen.c:1044 pex64igen.c:1044
+#: peigen.c:1241 pepigen.c:1241 pex64igen.c:1241
msgid "Special Directory"
msgstr "Répertoire spécial"
-#: peigen.c:1045 pepigen.c:1045 pex64igen.c:1045
+#: peigen.c:1242 pepigen.c:1242 pex64igen.c:1242
msgid "Thread Storage Directory [.tls]"
msgstr "Répertoire des files de stockage [.tls]"
-#: peigen.c:1046 pepigen.c:1046 pex64igen.c:1046
+#: peigen.c:1243 pepigen.c:1243 pex64igen.c:1243
msgid "Load Configuration Directory"
msgstr "Répertoire de chargement de configuration"
-#: peigen.c:1047 pepigen.c:1047 pex64igen.c:1047
+#: peigen.c:1244 pepigen.c:1244 pex64igen.c:1244
msgid "Bound Import Directory"
msgstr "Répertoire des importations limitées"
-#: peigen.c:1048 pepigen.c:1048 pex64igen.c:1048
+#: peigen.c:1245 pepigen.c:1245 pex64igen.c:1245
msgid "Import Address Table Directory"
msgstr "Répertoire de la table d'adresse d'importation"
-#: peigen.c:1049 pepigen.c:1049 pex64igen.c:1049
+#: peigen.c:1246 pepigen.c:1246 pex64igen.c:1246
msgid "Delay Import Directory"
msgstr "Répertoire des délais d'importation"
-#: peigen.c:1050 pepigen.c:1050 pex64igen.c:1050
+#: peigen.c:1247 pepigen.c:1247 pex64igen.c:1247
msgid "CLR Runtime Header"
msgstr "En-tête exécutable CLR"
-#: peigen.c:1051 pepigen.c:1051 pex64igen.c:1051
+#: peigen.c:1248 pepigen.c:1248 pex64igen.c:1248
msgid "Reserved"
msgstr "Réservé"
-#: peigen.c:1111 pepigen.c:1111 pex64igen.c:1111
+#: peigen.c:1308 pepigen.c:1308 pex64igen.c:1308
#, c-format
msgid ""
"\n"
@@ -6246,7 +8089,16 @@ msgstr ""
"\n"
"Il y a une table d'importation, mais la section la contenant ne peut être repérée\n"
-#: peigen.c:1116 pepigen.c:1116 pex64igen.c:1116
+#: peigen.c:1314 pepigen.c:1314 pex64igen.c:1314
+#, c-format
+msgid ""
+"\n"
+"There is an import table in %s, but that section has no contents\n"
+msgstr ""
+"\n"
+"Il y a une table d'importation dans %s, mais cette section n'a pas de contenu\n"
+
+#: peigen.c:1321 pepigen.c:1321 pex64igen.c:1321
#, c-format
msgid ""
"\n"
@@ -6255,7 +8107,7 @@ msgstr ""
"\n"
"Il y a une table d'importation dans %s à 0x%lx\n"
-#: peigen.c:1158 pepigen.c:1158 pex64igen.c:1158
+#: peigen.c:1363 pepigen.c:1363 pex64igen.c:1363
#, c-format
msgid ""
"\n"
@@ -6264,12 +8116,12 @@ msgstr ""
"\n"
"Descripteur de fonction localisé à l'adresse de départ: %04lx\n"
-#: peigen.c:1161 pepigen.c:1161 pex64igen.c:1161
+#: peigen.c:1367 pepigen.c:1367 pex64igen.c:1367
#, c-format
msgid "\tcode-base %08lx toc (loadable/actual) %08lx/%08lx\n"
msgstr "\tcode-base %08lx tab. des entrées (chargeable/actuel) %08lx/%08lx\n"
-#: peigen.c:1169 pepigen.c:1169 pex64igen.c:1169
+#: peigen.c:1375 pepigen.c:1375 pex64igen.c:1375
#, c-format
msgid ""
"\n"
@@ -6278,7 +8130,7 @@ msgstr ""
"\n"
"Pas de section reldata! Descripteur de fonction pas décodé.\n"
-#: peigen.c:1174 pepigen.c:1174 pex64igen.c:1174
+#: peigen.c:1380 pepigen.c:1380 pex64igen.c:1380
#, c-format
msgid ""
"\n"
@@ -6287,7 +8139,7 @@ msgstr ""
"\n"
"Les tables d'importation (contenus interprété de la section %s)\n"
-#: peigen.c:1177 pepigen.c:1177 pex64igen.c:1177
+#: peigen.c:1383 pepigen.c:1383 pex64igen.c:1383
#, c-format
msgid ""
" vma: Hint Time Forward DLL First\n"
@@ -6296,30 +8148,36 @@ msgstr ""
" vma: Hint Temps Avant DLL Premier\n"
" Table Estampil. Chaîne Nom Thunk\n"
-#: peigen.c:1225 pepigen.c:1225 pex64igen.c:1225
+#: peigen.c:1433 pepigen.c:1433 pex64igen.c:1433
#, c-format
msgid ""
"\n"
-"\tDLL Name: %s\n"
+"\tDLL Name: %.*s\n"
msgstr ""
"\n"
-"\tNom DLL: %s\n"
+"\tNom DLL: %.*s\n"
-#: peigen.c:1236 pepigen.c:1236 pex64igen.c:1236
+#: peigen.c:1449 pepigen.c:1449 pex64igen.c:1449
#, c-format
msgid "\tvma: Hint/Ord Member-Name Bound-To\n"
msgstr "\tvma: Hint/Ord Membre Lien\n"
-#: peigen.c:1261 pepigen.c:1261 pex64igen.c:1261
+#: peigen.c:1474 pepigen.c:1474 pex64igen.c:1474
#, c-format
msgid ""
"\n"
"There is a first thunk, but the section containing it could not be found\n"
msgstr ""
"\n"
-"Il y a un premier «thunk», mais la section le contenant ne peut être repérée\n"
+"Il y a un premier « thunk », mais la section le contenant ne peut être repérée\n"
-#: peigen.c:1423 pepigen.c:1423 pex64igen.c:1423
+#: peigen.c:1518 peigen.c:1556 pepigen.c:1518 pepigen.c:1556 pex64igen.c:1518
+#: pex64igen.c:1556
+#, c-format
+msgid "\t<corrupt: 0x%04lx>"
+msgstr "\t<corrompu: 0x%04lx>"
+
+#: peigen.c:1649 pepigen.c:1649 pex64igen.c:1649
#, c-format
msgid ""
"\n"
@@ -6328,7 +8186,16 @@ msgstr ""
"\n"
"Il y a une table d'exportation, mais la section la contenant n'a pu être repérée\n"
-#: peigen.c:1432 pepigen.c:1432 pex64igen.c:1432
+#: peigen.c:1655 pepigen.c:1655 pex64igen.c:1655
+#, c-format
+msgid ""
+"\n"
+"There is an export table in %s, but that section has no contents\n"
+msgstr ""
+"\n"
+"Il y a une table d'exportation dans %s, mais cette section n'a pas de contenu\n"
+
+#: peigen.c:1665 pepigen.c:1665 pex64igen.c:1665
#, c-format
msgid ""
"\n"
@@ -6337,7 +8204,16 @@ msgstr ""
"\n"
"Il y a une table d'exportation dans %s, mais elle ne rentre pas dans la section\n"
-#: peigen.c:1438 pepigen.c:1438 pex64igen.c:1438
+#: peigen.c:1676 pepigen.c:1676 pex64igen.c:1676
+#, c-format
+msgid ""
+"\n"
+"There is an export table in %s, but it is too small (%d)\n"
+msgstr ""
+"\n"
+"Il y a une table d'exportation dans %s, mais elle est trop petite (%d)\n"
+
+#: peigen.c:1682 pepigen.c:1682 pex64igen.c:1682
#, c-format
msgid ""
"\n"
@@ -6346,7 +8222,7 @@ msgstr ""
"\n"
"Il y a une table d'exportation dans %s à 0x%lx\n"
-#: peigen.c:1466 pepigen.c:1466 pex64igen.c:1466
+#: peigen.c:1710 pepigen.c:1710 pex64igen.c:1710
#, c-format
msgid ""
"\n"
@@ -6357,67 +8233,67 @@ msgstr ""
"Les tables d'exportation (contenus interprété de la section %s)\n"
"\n"
-#: peigen.c:1470 pepigen.c:1470 pex64igen.c:1470
+#: peigen.c:1714 pepigen.c:1714 pex64igen.c:1714
#, c-format
msgid "Export Flags \t\t\t%lx\n"
msgstr "Fanion d'exportation \t\t\t%lx\n"
-#: peigen.c:1473 pepigen.c:1473 pex64igen.c:1473
+#: peigen.c:1717 pepigen.c:1717 pex64igen.c:1717
#, c-format
msgid "Time/Date stamp \t\t%lx\n"
msgstr "Tampon Heure/Date \t\t%lx\n"
-#: peigen.c:1476 pepigen.c:1476 pex64igen.c:1476
+#: peigen.c:1721 pepigen.c:1721 pex64igen.c:1721
#, c-format
msgid "Major/Minor \t\t\t%d/%d\n"
msgstr "Majeur/Mineur \t\t\t%d/%d\n"
-#: peigen.c:1479 pepigen.c:1479 pex64igen.c:1479
+#: peigen.c:1724 pepigen.c:1724 pex64igen.c:1724
#, c-format
msgid "Name \t\t\t\t"
msgstr "Nom \t\t\t\t"
-#: peigen.c:1485 pepigen.c:1485 pex64igen.c:1485
+#: peigen.c:1735 pepigen.c:1735 pex64igen.c:1735
#, c-format
msgid "Ordinal Base \t\t\t%ld\n"
msgstr "base de nombre ordinal \t\t\t%ld\n"
-#: peigen.c:1488 pepigen.c:1488 pex64igen.c:1488
+#: peigen.c:1738 pepigen.c:1738 pex64igen.c:1738
#, c-format
msgid "Number in:\n"
msgstr "Numéro dans:\n"
-#: peigen.c:1491 pepigen.c:1491 pex64igen.c:1491
+#: peigen.c:1741 pepigen.c:1741 pex64igen.c:1741
#, c-format
msgid "\tExport Address Table \t\t%08lx\n"
msgstr "\tTable d'adresses d'exportation \t\t%08lx\n"
-#: peigen.c:1495 pepigen.c:1495 pex64igen.c:1495
+#: peigen.c:1745 pepigen.c:1745 pex64igen.c:1745
#, c-format
msgid "\t[Name Pointer/Ordinal] Table\t%08lx\n"
msgstr "\tTable [Nom pointeur/Nombre ordinal]\t%08lx\n"
-#: peigen.c:1498 pepigen.c:1498 pex64igen.c:1498
+#: peigen.c:1748 pepigen.c:1748 pex64igen.c:1748
#, c-format
msgid "Table Addresses\n"
msgstr "Table d'adresses\n"
-#: peigen.c:1501 pepigen.c:1501 pex64igen.c:1501
+#: peigen.c:1751 pepigen.c:1751 pex64igen.c:1751
#, c-format
msgid "\tExport Address Table \t\t"
msgstr "\tTable d'adresse d'exportation \t\t"
-#: peigen.c:1506 pepigen.c:1506 pex64igen.c:1506
+#: peigen.c:1756 pepigen.c:1756 pex64igen.c:1756
#, c-format
msgid "\tName Pointer Table \t\t"
msgstr "\tTable des noms de pointeurs \t\t"
-#: peigen.c:1511 pepigen.c:1511 pex64igen.c:1511
+#: peigen.c:1761 pepigen.c:1761 pex64igen.c:1761
#, c-format
msgid "\tOrdinal Table \t\t\t"
msgstr "\tTable des ordinals \t\t\t"
-#: peigen.c:1525 pepigen.c:1525 pex64igen.c:1525
+#: peigen.c:1775 pepigen.c:1775 pex64igen.c:1775
#, c-format
msgid ""
"\n"
@@ -6426,15 +8302,20 @@ msgstr ""
"\n"
"Table d'adresses d'exportation -- base de nombre ordinal %ld\n"
-#: peigen.c:1544 pepigen.c:1544 pex64igen.c:1544
+#: peigen.c:1784 pepigen.c:1784 pex64igen.c:1784
+#, c-format
+msgid "\tInvalid Export Address Table rva (0x%lx) or entry count (0x%lx)\n"
+msgstr "\tL'adresse virtuelle relative de la table des adresses exportées (0x%lx) ou le nombre d'entrées (0x%lx) est invalide\n"
+
+#: peigen.c:1803 pepigen.c:1803 pex64igen.c:1803
msgid "Forwarder RVA"
msgstr "Adresseur RVA"
-#: peigen.c:1555 pepigen.c:1555 pex64igen.c:1555
+#: peigen.c:1815 pepigen.c:1815 pex64igen.c:1815
msgid "Export RVA"
msgstr "Exportation RVA"
-#: peigen.c:1562 pepigen.c:1562 pex64igen.c:1562
+#: peigen.c:1822 pepigen.c:1822 pex64igen.c:1822
#, c-format
msgid ""
"\n"
@@ -6443,18 +8324,43 @@ msgstr ""
"\n"
"Table [Ordinal/Nom de pointeur]\n"
-#: peigen.c:1622 peigen.c:1805 pepigen.c:1622 pepigen.c:1805 pex64igen.c:1622
-#: pex64igen.c:1805
+#: peigen.c:1830 pepigen.c:1830 pex64igen.c:1830
+#, c-format
+msgid "\tInvalid Name Pointer Table rva (0x%lx) or entry count (0x%lx)\n"
+msgstr "\tAdresse virtuelle relative de la table des pointeurs de noms (0x%lx) ou nombre d'entrées (0x%lx) invalide\n"
+
+#: peigen.c:1837 pepigen.c:1837 pex64igen.c:1837
+#, c-format
+msgid "\tInvalid Ordinal Table rva (0x%lx) or entry count (0x%lx)\n"
+msgstr "\tAdresse virtuelle relative de la table ordinale (0x%lx) ou nombre d'entrées (0x%lx) invalide\n"
+
+#: peigen.c:1851 pepigen.c:1851 pex64igen.c:1851
+#, c-format
+msgid "\t[%4ld] <corrupt offset: %lx>\n"
+msgstr "\t[%4ld] <offset corrompu: %lx>\n"
+
+#: peigen.c:1905 peigen.c:2102 pepigen.c:1905 pepigen.c:2102 pex64igen.c:1905
+#: pex64igen.c:2102
#, c-format
msgid "Warning, .pdata section size (%ld) is not a multiple of %d\n"
msgstr "Attention, taille de la section .pdata (%ld) n'est pas un multiple de %d\n"
-#: peigen.c:1629 pepigen.c:1629 pex64igen.c:1629
+#: peigen.c:1909 peigen.c:2106 pepigen.c:1909 pepigen.c:2106 pex64igen.c:1909
+#: pex64igen.c:2106
+#, c-format
+msgid ""
+"\n"
+"The Function Table (interpreted .pdata section contents)\n"
+msgstr ""
+"\n"
+"La table de fonctions (interprétation du contenu de la section .pdata)\n"
+
+#: peigen.c:1912 pepigen.c:1912 pex64igen.c:1912
#, c-format
msgid " vma:\t\t\tBegin Address End Address Unwind Info\n"
msgstr " vma:\t\t\tDébut Adresse Fin Adresse Unwind Info\n"
-#: peigen.c:1631 pepigen.c:1631 pex64igen.c:1631
+#: peigen.c:1914 pepigen.c:1914 pex64igen.c:1914
#, c-format
msgid ""
" vma:\t\tBegin End EH EH PrologEnd Exception\n"
@@ -6463,22 +8369,27 @@ msgstr ""
" vma:\t\tDébut Fin EH EH FinProlog Exception\n"
" \t\tAdresse Adresse Handler Données Adresse Masque\n"
-#: peigen.c:1705 pepigen.c:1705 pex64igen.c:1705
+#: peigen.c:1927 pepigen.c:1927 pex64igen.c:1927
+#, c-format
+msgid "Virtual size of .pdata section (%ld) larger than real size (%ld)\n"
+msgstr "La taille virtuelle de la section .pdata (%ld) est plus grande que la taille réelle (%ld)\n"
+
+#: peigen.c:1997 pepigen.c:1997 pex64igen.c:1997
#, c-format
msgid " Register save millicode"
msgstr " Registre a préservé le millicode"
-#: peigen.c:1708 pepigen.c:1708 pex64igen.c:1708
+#: peigen.c:2000 pepigen.c:2000 pex64igen.c:2000
#, c-format
msgid " Register restore millicode"
msgstr " Registre a restauré le millicode"
-#: peigen.c:1711 pepigen.c:1711 pex64igen.c:1711
+#: peigen.c:2003 pepigen.c:2003 pex64igen.c:2003
#, c-format
msgid " Glue code sequence"
msgstr " Séquence du code de liants"
-#: peigen.c:1811 pepigen.c:1811 pex64igen.c:1811
+#: peigen.c:2108 pepigen.c:2108 pex64igen.c:2108
#, c-format
msgid ""
" vma:\t\tBegin Prolog Function Flags Exception EH\n"
@@ -6487,7 +8398,7 @@ msgstr ""
" vma:\t\tDébut Long. Long. Fanions Gestion. EH\n"
" \t\tAdresse Prolog. Fonction 32b exc Exception Données\n"
-#: peigen.c:1937 pepigen.c:1937 pex64igen.c:1937
+#: peigen.c:2230 pepigen.c:2230 pex64igen.c:2230
#, c-format
msgid ""
"\n"
@@ -6498,7 +8409,7 @@ msgstr ""
"\n"
"Fichier de base des réadressages PE (contenus interprétés de la section .reloc)\n"
-#: peigen.c:1966 pepigen.c:1966 pex64igen.c:1966
+#: peigen.c:2260 pepigen.c:2260 pex64igen.c:2260
#, c-format
msgid ""
"\n"
@@ -6507,57 +8418,62 @@ msgstr ""
"\n"
"Adresse virtuelle: %08lx taille des morceaux %ld (0x%lx) nombre de correctifs %ld\n"
-#: peigen.c:1979 pepigen.c:1979 pex64igen.c:1979
+#: peigen.c:2278 pepigen.c:2278 pex64igen.c:2278
#, c-format
msgid "\treloc %4d offset %4x [%4lx] %s"
-msgstr "\trelocalisation %4d décalage %4x [%4lx] %s"
+msgstr "\tréadressage %4d décalage %4x [%4lx] %s"
-#: peigen.c:2023 pepigen.c:2023 pex64igen.c:2023
+#: peigen.c:2339 pepigen.c:2339 pex64igen.c:2339
#, c-format
-msgid "%*.s Entry: "
-msgstr "%*.s Entrée: "
+msgid "%03x %*.s Entry: "
+msgstr "%03x %*.s Entrée: "
-#: peigen.c:2043 pepigen.c:2043 pex64igen.c:2043
+#: peigen.c:2363 pepigen.c:2363 pex64igen.c:2363
#, c-format
msgid "name: [val: %08lx len %d]: "
msgstr "nom: [val: %08lx long %d]: "
-#: peigen.c:2054 pepigen.c:2054 pex64igen.c:2054
+#: peigen.c:2383 pepigen.c:2383 pex64igen.c:2383
#, c-format
-msgid "<corrupt string length: %#x>"
-msgstr "<longueur de la chaîne corrompue: %#x>"
+msgid "<corrupt string length: %#x>\n"
+msgstr "<longueur de la chaîne corrompue: %#x>\n"
-#: peigen.c:2057 pepigen.c:2057 pex64igen.c:2057
+#: peigen.c:2393 pepigen.c:2393 pex64igen.c:2393
#, c-format
-msgid "<corrupt string offset: %#lx>"
-msgstr "<offset de la chaîne corrompue: %#lx>"
+msgid "<corrupt string offset: %#lx>\n"
+msgstr "<offset de la chaîne corrompue: %#lx>\n"
-#: peigen.c:2060 pepigen.c:2060 pex64igen.c:2060
+#: peigen.c:2398 pepigen.c:2398 pex64igen.c:2398
#, c-format
msgid "ID: %#08lx"
msgstr "ID: %#08lx"
-#: peigen.c:2063 pepigen.c:2063 pex64igen.c:2063
+#: peigen.c:2401 pepigen.c:2401 pex64igen.c:2401
#, c-format
msgid ", Value: %#08lx\n"
msgstr ", Valeur: %#08lx\n"
-#: peigen.c:2074 pepigen.c:2074 pex64igen.c:2074
+#: peigen.c:2423 pepigen.c:2423 pex64igen.c:2423
#, c-format
-msgid "%*.s Leaf: Addr: %#08lx, Size: %#08lx, Codepage: %d\n"
-msgstr "%*.s Feuilles: Adr: %#08lx, Taille: %#08lx, Codepage: %d\n"
+msgid "%03x %*.s Leaf: Addr: %#08lx, Size: %#08lx, Codepage: %d\n"
+msgstr "%03x %*.s Feuilles: Adr: %#08lx, Taille: %#08lx, Codepage: %d\n"
-#: peigen.c:2116 pepigen.c:2116 pex64igen.c:2116
+#: peigen.c:2465 pepigen.c:2465 pex64igen.c:2465
+#, c-format
+msgid "<unknown directory type: %d>\n"
+msgstr "<type de répertoire inconnu: %d>\n"
+
+#: peigen.c:2473 pepigen.c:2473 pex64igen.c:2473
#, c-format
msgid " Table: Char: %d, Time: %08lx, Ver: %d/%d, Num Names: %d, IDs: %d\n"
msgstr "Table: Car: %d, Temps: %08lx, Ver: %d/%d, Nbr Noms: %d, IDs: %d\n"
-#: peigen.c:2204 pepigen.c:2204 pex64igen.c:2204
+#: peigen.c:2562 pepigen.c:2562 pex64igen.c:2562
#, c-format
msgid "Corrupt .rsrc section detected!\n"
msgstr "Détection d'une section .rsrc corrompue !\n"
-#: peigen.c:2220 pepigen.c:2220 pex64igen.c:2220
+#: peigen.c:2586 pepigen.c:2586 pex64igen.c:2586
#, c-format
msgid ""
"\n"
@@ -6566,10 +8482,79 @@ msgstr ""
"\n"
"ATTENTION: Données en trop dans la section .rsrc elles seront ignorées par Windows:\n"
+#: peigen.c:2592 pepigen.c:2592 pex64igen.c:2592
+#, c-format
+msgid " String table starts at offset: %#03x\n"
+msgstr " La table des chaînes démarre au décalage: %#03x\n"
+
+#: peigen.c:2595 pepigen.c:2595 pex64igen.c:2595
+#, c-format
+msgid " Resources start at offset: %#03x\n"
+msgstr " Les ressources démarrent au décalage: %#03x\n"
+
+#: peigen.c:2647 pepigen.c:2647 pex64igen.c:2647
+#, c-format
+msgid ""
+"\n"
+"There is a debug directory, but the section containing it could not be found\n"
+msgstr ""
+"\n"
+"Ceci est un répertoire de débogage, mais la section le contenant ne peut être repérée\n"
+
+#: peigen.c:2653 pepigen.c:2653 pex64igen.c:2653
+#, c-format
+msgid ""
+"\n"
+"There is a debug directory in %s, but that section has no contents\n"
+msgstr ""
+"\n"
+"Il y a un répertoire de débogage dans %s, mais cette section n'a pas de contenu\n"
+
+#: peigen.c:2660 pepigen.c:2660 pex64igen.c:2660
+#, c-format
+msgid ""
+"\n"
+"Error: section %s contains the debug data starting address but it is too small\n"
+msgstr ""
+"\n"
+"Erreur: la section %s contient l'adresse de départ des données de débogage mais elle est trop petite\n"
+
+#: peigen.c:2665 pepigen.c:2665 pex64igen.c:2665
+#, c-format
+msgid ""
+"\n"
+"There is a debug directory in %s at 0x%lx\n"
+"\n"
+msgstr ""
+"\n"
+"Il y a un répertoire de débogage dans %s à 0x%lx\n"
+
+#: peigen.c:2672 pepigen.c:2672 pex64igen.c:2672
+#, c-format
+msgid "The debug data size field in the data directory is too big for the section"
+msgstr "Le champ de taille des données de débogage dans le répertoire de données est trop grand pour la section"
+
+# RVA = Adresse Virtuelle Relative mais AVR semble inconnu sur internet. Gageons que les utilisateurs trouverons plus
+# facilement la signification de RVA dans ce contexte.
+#: peigen.c:2677 pepigen.c:2677 pex64igen.c:2677
+#, c-format
+msgid "Type Size Rva Offset\n"
+msgstr "Type Taille Rva Décalage\n"
+
+#: peigen.c:2725 pepigen.c:2725 pex64igen.c:2725
+#, c-format
+msgid "(format %c%c%c%c signature %s age %ld)\n"
+msgstr "(format %c%c%c%c signature %s age %ld)\n"
+
+#: peigen.c:2733 pepigen.c:2733 pex64igen.c:2733
+#, c-format
+msgid "The debug directory size is not a multiple of the debug directory entry size\n"
+msgstr "La taille du répertoire de débogage n'est pas un multiple de la taille d'une entrée du répertoire de débogage\n"
+
#. The MS dumpbin program reportedly ands with 0xff0f before
#. printing the characteristics field. Not sure why. No reason to
#. emulate it here.
-#: peigen.c:2243 pepigen.c:2243 pex64igen.c:2243
+#: peigen.c:2753 pepigen.c:2753 pex64igen.c:2753
#, c-format
msgid ""
"\n"
@@ -6578,66 +8563,163 @@ msgstr ""
"\n"
"Caractéristiques 0x%x\n"
-#: peigen.c:3194 pepigen.c:3194 pex64igen.c:3194
+#: peigen.c:2988 pepigen.c:2988 pex64igen.c:2988
+#, c-format
+msgid "%B: Data Directory size (%lx) exceeds space left in section (%lx)"
+msgstr "%B: La taille du répertoire de données (%lx) excède l'espace restant dans la section (%lx)"
+
+#: peigen.c:3018 pepigen.c:3018 pex64igen.c:3018
+msgid "Failed to update file offsets in debug directory"
+msgstr "Échec lors de la mise à jour des décalages du fichier dans le répertoire de débogage"
+
+#: peigen.c:3024 pepigen.c:3024 pex64igen.c:3024
+msgid "%B: Failed to read debug data section"
+msgstr "%B: Échec lors de la lecture de la section des données de débogage"
+
+#: peigen.c:3840 pepigen.c:3840 pex64igen.c:3840
#, c-format
msgid ".rsrc merge failure: duplicate string resource: %d"
msgstr "échec de la fusion de .rsrc: ressource chaîne dupliquée: %d"
-#: peigen.c:3329 pepigen.c:3329 pex64igen.c:3329
+#: peigen.c:3975 pepigen.c:3975 pex64igen.c:3975
msgid ".rsrc merge failure: multiple non-default manifests"
msgstr "échec de la fusion de .rsrc: plusieurs manifestes pas par défaut"
-#: peigen.c:3347 pepigen.c:3347 pex64igen.c:3347
+#: peigen.c:3993 pepigen.c:3993 pex64igen.c:3993
msgid ".rsrc merge failure: a directory matches a leaf"
msgstr "échec de la fusion de .rsrc: un répertoire correspond à une feuille"
-#: peigen.c:3389 pepigen.c:3389 pex64igen.c:3389
+#: peigen.c:4035 pepigen.c:4035 pex64igen.c:4035
msgid ".rsrc merge failure: duplicate leaf"
msgstr "échec de la fusion de .rsrc: feuille dupliquée"
-#: peigen.c:3391 pepigen.c:3391 pex64igen.c:3391
+#: peigen.c:4037 pepigen.c:4037 pex64igen.c:4037
#, c-format
msgid ".rsrc merge failure: duplicate leaf: %s"
msgstr "échec de la fusion .rsrc: feuille dupliquée: %s"
-#: peigen.c:3457 pepigen.c:3457 pex64igen.c:3457
+#: peigen.c:4103 pepigen.c:4103 pex64igen.c:4103
msgid ".rsrc merge failure: dirs with differing characteristics\n"
msgstr "échec de la fusion .rsrc: répertoires avec des caractéristiques différentes\n"
-#: peigen.c:3464 pepigen.c:3464 pex64igen.c:3464
+#: peigen.c:4110 pepigen.c:4110 pex64igen.c:4110
msgid ".rsrc merge failure: differing directory versions\n"
msgstr "échec de la fusion de .rsrc: versions de répertoires différentes\n"
#. Corrupted .rsrc section - cannot merge.
-#: peigen.c:3537 pepigen.c:3537 pex64igen.c:3537
-#, c-format
-msgid "%s: .rsrc merge failure: corrupt .rsrc section"
-msgstr "%s: échec de la fusion de .rsrc: section .rsrc corrompue"
+#: peigen.c:4227 pepigen.c:4227 pex64igen.c:4227
+msgid "%B: .rsrc merge failure: corrupt .rsrc section"
+msgstr "%B: échec de la fusion de .rsrc: section .rsrc corrompue"
-#: peigen.c:3673 pepigen.c:3673 pex64igen.c:3673
+#: peigen.c:4235 pepigen.c:4235 pex64igen.c:4235
+msgid "%B: .rsrc merge failure: unexpected .rsrc size"
+msgstr "%B: échec de la fusion de .rsrc: taille de .rsrc inattendue"
+
+#: peigen.c:4374 pepigen.c:4374 pex64igen.c:4374
msgid "%B: unable to fill in DataDictionary[1] because .idata$2 is missing"
msgstr "%B: impossible de remplir DataDictionary[1] car .idata$2 est manquant"
-#: peigen.c:3693 pepigen.c:3693 pex64igen.c:3693
+#: peigen.c:4394 pepigen.c:4394 pex64igen.c:4394
msgid "%B: unable to fill in DataDictionary[1] because .idata$4 is missing"
msgstr "%B: impossible de remplir DataDictionary[1] car .idata$4 est manquant"
-#: peigen.c:3714 pepigen.c:3714 pex64igen.c:3714
+#: peigen.c:4415 pepigen.c:4415 pex64igen.c:4415
msgid "%B: unable to fill in DataDictionary[12] because .idata$5 is missing"
msgstr "%B: impossible de remplir DataDictionary[12] car .idata$5 est manquant"
-#: peigen.c:3734 pepigen.c:3734 pex64igen.c:3734
+#: peigen.c:4435 pepigen.c:4435 pex64igen.c:4435
msgid "%B: unable to fill in DataDictionary[PE_IMPORT_ADDRESS_TABLE (12)] because .idata$6 is missing"
msgstr "%B: impossible de remplir DataDictionary[PE_IMPORT_ADDRESS_TABLE (12)] car .idata$6 est manquant"
-#: peigen.c:3776 pepigen.c:3776 pex64igen.c:3776
+#: peigen.c:4477 pepigen.c:4477 pex64igen.c:4477
msgid "%B: unable to fill in DataDictionary[PE_IMPORT_ADDRESS_TABLE(12)] because .idata$6 is missing"
msgstr "%B: impossible de remplir DataDictionary[PE_IMPORT_ADDRESS_TABLE(12)] car .idata$6 est manquant"
-#: peigen.c:3801 pepigen.c:3801 pex64igen.c:3801
+#: peigen.c:4502 pepigen.c:4502 pex64igen.c:4502
msgid "%B: unable to fill in DataDictionary[9] because __tls_used is missing"
msgstr "%B: impossible de remplir DataDictionary[9] car __tls_used est manquant"
+#~ msgid "Unrecognized reloc"
+#~ msgstr "Relocalisation non reconnue"
+
+#~ msgid "%s: warning: illegal symbol index %ld in relocs"
+#~ msgstr "%s: attention: symbole index illégal %ld dans les relocalisations"
+
+#~ msgid "Dwarf Error: Bad abbrev number: %u."
+#~ msgstr "Erreur DWARF: mauvais numéro abrégé: %u"
+
+#~ msgid "%B: don't know how to handle allocated, application specific section `%s' [0x%8x]"
+#~ msgstr "%B: je ne sais pas comment traiter la section « %s » [0x%8x] allouée et spécifique à l'application"
+
+#~ msgid "%B: don't know how to handle processor specific section `%s' [0x%8x]"
+#~ msgstr "%B: je ne sais pas comment traiter la section « %s » [0x%8x] spécifique au processeur"
+
+#~ msgid "%B: don't know how to handle OS specific section `%s' [0x%8x]"
+#~ msgstr "%B: je ne sais pas comment traiter la section « %s » [0x%8x] spécifique au système d'exploitation"
+
+#~ msgid "%B: don't know how to handle section `%s' [0x%8x]"
+#~ msgstr "%B: je ne sais pas comment traiter la section « %s » [0x%8x]"
+
+#~ msgid " [has entry point]"
+#~ msgstr " [a des points d'entrées]"
+
+#~ msgid "error: required section '%s' not found in the linker script"
+#~ msgstr "erreur: section requise « %s » pas trouvée dans le script de liaison"
+
+#~ msgid "%s: uses different e_flags (0x%lx) fields than previous modules (0x%lx)"
+#~ msgstr "%s: utilise des champs e_flags (0x%lx) différents des modules précédents (0x%lx)"
+
+#~ msgid "%s: unknown relocation type %d"
+#~ msgstr "%s: type de réadressage %d inconnu"
+
+#~ msgid "%s: The target (%s) of an %s relocation is in the wrong section (%s)"
+#~ msgstr "%s: la cible (%s) du réadressage %s est dans la mauvaise section (%s)"
+
+#~ msgid "%B: %s\n"
+#~ msgstr "%B: %s\n"
+
+#~ msgid "%B(%A): warning: relax is suppressed for sections of alignment %d-bytes > 4-byte."
+#~ msgstr "%B(%A): attention: la relaxation est supprimée pour les sections avec l'alignement %d octets > 4 octets."
+
+#~ msgid "Warning: %B uses soft float, %B uses single-precision hard float"
+#~ msgstr "Attention: %B utilise la virgule flottante logicielle, %B utilise la virgule flottante simple précision matérielle"
+
+#~ msgid "Warning: %B uses unknown floating point ABI %d"
+#~ msgstr "Attention: %B utilise l'ABI inconnu %d pour la gestion des virgules flottantes"
+
+#~ msgid "Warning: %B uses unknown vector ABI %d"
+#~ msgstr "Attention: %B utilise l'ABI inconnu %d pour les vecteurs"
+
+#~ msgid "Warning: %B uses unknown small structure return convention %d"
+#~ msgstr "Attention: %B utilise la convention inconnue %d pour le retour des petites structures"
+
+#~ msgid " [G10]"
+#~ msgstr " [G10]"
+
+#~ msgid "%s: Malformed reloc detected for section %s"
+#~ msgstr "%s: relocalisation mal composée détectée dans la section %s"
+
+#~ msgid " %s: 0x%v\n"
+#~ msgstr " %s: 0x%v\n"
+
+#~ msgid "%s: 0x%v 0x%v\n"
+#~ msgstr "%s: 0x%v 0x%v\n"
+
+#~ msgid " %s%s %s\n"
+#~ msgstr " %s%s %s\n"
+
+#~ msgid ", 8-byte data alignment"
+#~ msgstr ", alignement de données sur 8 octets"
+
+#~ msgid "%B: relocation %s against undefined %s `%s' can not be used when making a shared object%s"
+#~ msgstr "%B: réadressage %s vers le %s non défini « %s » ne peut pas être utilisé en créant un objet partagé %s"
+
+#~ msgid "[%u]: %u\n"
+#~ msgstr "[%u]: %u\n"
+
+#~ msgid ": %u.%u\n"
+#~ msgstr ": %u.%u\n"
+
#~ msgid ""
#~ "%B(%s): warning: interworking not enabled.\n"
#~ " first occurrence: %B: thumb call to arm"
@@ -6648,15 +8730,9 @@ msgstr "%B: impossible de remplir DataDictionary[9] car __tls_used est manquant"
#~ msgid "DIV usage mismatch between %B and %B"
#~ msgstr "incohérence d'utilisation de DIV entre %B et %B"
-#~ msgid "%B: bad relocation section name `%s'"
-#~ msgstr "%B: nom de section de réadressage erroné « %s »"
-
#~ msgid "%P: dynamic variable `%s' is zero size\n"
#~ msgstr "%P: la variable dynamique « %s » a une taille nulle\n"
-#~ msgid " [64-bit doubles]"
-#~ msgstr " [doubles de 64 bits]"
-
#~ msgid " [dsp]"
#~ msgstr " [dsp]"
@@ -6667,10 +8743,7 @@ msgstr "%B: impossible de remplir DataDictionary[9] car __tls_used est manquant"
#~ msgstr "%P: %H: l'optimisation sœurs des appels vers « %s » n'autorise pas de TOC multiples et automatiques; recompilez avec -mminimal-toc ou -fno-optimize-sibling-calls, ou rendez « %s » externe\n"
#~ msgid "note: '%s' is defined in DSO %B so try adding it to the linker command line"
-#~ msgstr "note: «%s» est défini dans le DSO %B donc essayez de l'ajouter à la ligne de commande du lieur"
-
-#~ msgid "Warning: %B uses -msingle-float, %B uses -mdouble-float"
-#~ msgstr "Attention: %B utilise -msingle-float, %B utilise -mdouble-float"
+#~ msgstr "note: « %s » est défini dans le DSO %B donc essayez de l'ajouter à la ligne de commande du lieur"
#~ msgid "Warning: %B uses -msingle-float, %B uses -mips32r2 -mfp64"
#~ msgstr "Attention: %B utilise -msingle-float, %B utilise -mips32r2 -mfp64"
@@ -6721,17 +8794,14 @@ msgstr "%B: impossible de remplir DataDictionary[9] car __tls_used est manquant"
#~ msgstr "%B(%A+0x%lx): ne peut atteindre %s"
#~ msgid "%B: warning: ignoring duplicate section `%A'\n"
-#~ msgstr "%B: attention: ignore la section dupliquée «%A»\n"
+#~ msgstr "%B: attention: ignore la section dupliquée « %A »\n"
#~ msgid "%B: warning: duplicate section `%A' has different size\n"
-#~ msgstr "%B: attention: section dupliquée «%A» avec des tailles différentes\n"
+#~ msgstr "%B: attention: section dupliquée « %A » avec des tailles différentes\n"
#~ msgid "relocation references a different segment"
#~ msgstr "la relocalisation fait référence à un segment différent"
-#~ msgid "%B: relocation type %d not implemented"
-#~ msgstr "%B: relocalisation de type %d pas implémentée"
-
#~ msgid "warning: %B and %B differ in position-dependence of data addressing"
#~ msgstr "attention: %B et %B divergent sur la dépendance de la position de l'adressage des données"
@@ -6757,7 +8827,7 @@ msgstr "%B: impossible de remplir DataDictionary[9] car __tls_used est manquant"
#~ msgstr "section %s vide ou corrompue dans %B"
#~ msgid "%s: invalid DSO for symbol `%s' definition"
-#~ msgstr "%s: DSO incorrect pour la définition du symbole «%s»"
+#~ msgstr "%s: DSO incorrect pour la définition du symbole « %s »"
#~ msgid "%B: %A+0x%lx: jump to stub routine which is not jal"
#~ msgstr "%B: %A+0x%lx: saut vers la routine dans la partie de l'ébauche (stub) qui n'est pas jal"
diff --git a/bfd/section.c b/bfd/section.c
index 28eee7f..811d42a 100644
--- a/bfd/section.c
+++ b/bfd/section.c
@@ -1240,7 +1240,7 @@ bfd_make_section_with_flags (bfd *abfd, const char *name,
struct section_hash_entry *sh;
asection *newsect;
- if (abfd->output_has_begun)
+ if (abfd == NULL || name == NULL || abfd->output_has_begun)
{
bfd_set_error (bfd_error_invalid_operation);
return NULL;
diff --git a/bfd/tekhex.c b/bfd/tekhex.c
index 1d605d5..cb4b624 100644
--- a/bfd/tekhex.c
+++ b/bfd/tekhex.c
@@ -307,7 +307,7 @@ getsym (char *dstp, char **srcp, unsigned int *lenp, char * endp)
len = hex_value (*src++);
if (len == 0)
len = 16;
- for (i = 0; i < len && src < endp; i++)
+ for (i = 0; i < len && (src + i) < endp; i++)
dstp[i] = src[i];
dstp[i] = 0;
*srcp = src + i;
diff --git a/bfd/version.h b/bfd/version.h
index f3dfbf0..0c457a2 100644
--- a/bfd/version.h
+++ b/bfd/version.h
@@ -1,4 +1,4 @@
-#define BFD_VERSION_DATE 20170724
+#define BFD_VERSION_DATE 20170830
#define BFD_VERSION @bfd_version@
#define BFD_VERSION_STRING @bfd_version_package@ @bfd_version_string@
#define REPORT_BUGS_TO @report_bugs_to@
diff --git a/bfd/version.m4 b/bfd/version.m4
index a54e7f8..d840ef6 100644
--- a/bfd/version.m4
+++ b/bfd/version.m4
@@ -1 +1 @@
-m4_define([BFD_VERSION], [2.29])
+m4_define([BFD_VERSION], [2.29.0])
diff --git a/bfd/vms-alpha.c b/bfd/vms-alpha.c
index 91e8b6e..0b41db4 100644
--- a/bfd/vms-alpha.c
+++ b/bfd/vms-alpha.c
@@ -895,7 +895,7 @@ _bfd_vms_slurp_ehdr (bfd *abfd)
vms_rec = PRIV (recrd.rec);
/* PR 17512: file: 62736583. */
- end = vms_rec + PRIV (recrd.buf_size);
+ end = PRIV (recrd.buf) + PRIV (recrd.buf_size);
vms_debug2 ((2, "HDR/EMH\n"));
@@ -5685,8 +5685,9 @@ evax_bfd_print_emh (FILE *file, unsigned char *rec, unsigned int rec_len)
{
struct vms_emh_common *emh = (struct vms_emh_common *)rec;
unsigned int subtype;
+ int extra;
- subtype = (unsigned)bfd_getl16 (emh->subtyp);
+ subtype = (unsigned) bfd_getl16 (emh->subtyp);
/* xgettext:c-format */
fprintf (file, _(" EMH %u (len=%u): "), subtype, rec_len);
@@ -5697,58 +5698,82 @@ evax_bfd_print_emh (FILE *file, unsigned char *rec, unsigned int rec_len)
fprintf (file, _(" Error: The length is less than the length of an EMH record\n"));
return;
}
-
+ extra = rec_len - sizeof (struct vms_emh_common);
+
switch (subtype)
{
case EMH__C_MHD:
{
- struct vms_emh_mhd *mhd = (struct vms_emh_mhd *)rec;
- const char *name;
+ struct vms_emh_mhd *mhd = (struct vms_emh_mhd *) rec;
+ const char * name;
+ const char * nextname;
+ const char * maxname;
+ /* PR 21840: Check for invalid lengths. */
+ if (rec_len < sizeof (* mhd))
+ {
+ fprintf (file, _(" Error: The record length is less than the size of an EMH_MHD record\n"));
+ return;
+ }
fprintf (file, _("Module header\n"));
fprintf (file, _(" structure level: %u\n"), mhd->strlvl);
fprintf (file, _(" max record size: %u\n"),
- (unsigned)bfd_getl32 (mhd->recsiz));
+ (unsigned) bfd_getl32 (mhd->recsiz));
name = (char *)(mhd + 1);
+ maxname = (char *) rec + rec_len;
+ if (name > maxname - 2)
+ {
+ fprintf (file, _(" Error: The module name is missing\n"));
+ return;
+ }
+ nextname = name + name[0] + 1;
+ if (nextname >= maxname)
+ {
+ fprintf (file, _(" Error: The module name is too long\n"));
+ return;
+ }
fprintf (file, _(" module name : %.*s\n"), name[0], name + 1);
- name += name[0] + 1;
+ name = nextname;
+ if (name > maxname - 2)
+ {
+ fprintf (file, _(" Error: The module version is missing\n"));
+ return;
+ }
+ nextname = name + name[0] + 1;
+ if (nextname >= maxname)
+ {
+ fprintf (file, _(" Error: The module version is too long\n"));
+ return;
+ }
fprintf (file, _(" module version : %.*s\n"), name[0], name + 1);
- name += name[0] + 1;
- fprintf (file, _(" compile date : %.17s\n"), name);
+ name = nextname;
+ if ((maxname - name) < 17 && maxname[-1] != 0)
+ fprintf (file, _(" Error: The compile date is truncated\n"));
+ else
+ fprintf (file, _(" compile date : %.17s\n"), name);
}
break;
+
case EMH__C_LNM:
- {
- fprintf (file, _("Language Processor Name\n"));
- fprintf (file, _(" language name: %.*s\n"),
- (int)(rec_len - sizeof (struct vms_emh_common)),
- (char *)rec + sizeof (struct vms_emh_common));
- }
+ fprintf (file, _("Language Processor Name\n"));
+ fprintf (file, _(" language name: %.*s\n"), extra, (char *)(emh + 1));
break;
+
case EMH__C_SRC:
- {
- fprintf (file, _("Source Files Header\n"));
- fprintf (file, _(" file: %.*s\n"),
- (int)(rec_len - sizeof (struct vms_emh_common)),
- (char *)rec + sizeof (struct vms_emh_common));
- }
+ fprintf (file, _("Source Files Header\n"));
+ fprintf (file, _(" file: %.*s\n"), extra, (char *)(emh + 1));
break;
+
case EMH__C_TTL:
- {
- fprintf (file, _("Title Text Header\n"));
- fprintf (file, _(" title: %.*s\n"),
- (int)(rec_len - sizeof (struct vms_emh_common)),
- (char *)rec + sizeof (struct vms_emh_common));
- }
+ fprintf (file, _("Title Text Header\n"));
+ fprintf (file, _(" title: %.*s\n"), extra, (char *)(emh + 1));
break;
+
case EMH__C_CPR:
- {
- fprintf (file, _("Copyright Header\n"));
- fprintf (file, _(" copyright: %.*s\n"),
- (int)(rec_len - sizeof (struct vms_emh_common)),
- (char *)rec + sizeof (struct vms_emh_common));
- }
+ fprintf (file, _("Copyright Header\n"));
+ fprintf (file, _(" copyright: %.*s\n"), extra, (char *)(emh + 1));
break;
+
default:
fprintf (file, _("unhandled emh subtype %u\n"), subtype);
break;
@@ -6220,7 +6245,7 @@ evax_bfd_print_etir (FILE *file, const char *name,
fprintf (file, _("OPR_ADD (add)\n"));
break;
case ETIR__C_OPR_SUB:
- fprintf (file, _("OPR_SUB (substract)\n"));
+ fprintf (file, _("OPR_SUB (subtract)\n"));
break;
case ETIR__C_OPR_MUL:
fprintf (file, _("OPR_MUL (multiply)\n"));
diff --git a/binutils/ChangeLog b/binutils/ChangeLog
index b74dbcf..7c9b86f 100644
--- a/binutils/ChangeLog
+++ b/binutils/ChangeLog
@@ -1,3 +1,12 @@
+2017-08-12 Alan Modra <amodra@gmail.com>
+
+ * readelf.c (process_note): Qualify NT_GNU_BUILD_ATTRIBUTE notes
+ by name data.
+
+2017-07-24 Tristan Gingold <gingold@adacore.com>
+
+ * configure: Regenerate.
+
2017-07-24 Tristan Gingold <gingold@adacore.com>
* configure: Regenerate.
diff --git a/binutils/configure b/binutils/configure
index e903709..38d08d0 100755
--- a/binutils/configure
+++ b/binutils/configure
@@ -1,6 +1,6 @@
#! /bin/sh
# Guess values for system-dependent variables and create Makefiles.
-# Generated by GNU Autoconf 2.64 for binutils 2.29.
+# Generated by GNU Autoconf 2.64 for binutils 2.29.0.
#
# Copyright (C) 1992, 1993, 1994, 1995, 1996, 1998, 1999, 2000, 2001,
# 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009 Free Software
@@ -556,8 +556,8 @@ MAKEFLAGS=
# Identity of this package.
PACKAGE_NAME='binutils'
PACKAGE_TARNAME='binutils'
-PACKAGE_VERSION='2.29'
-PACKAGE_STRING='binutils 2.29'
+PACKAGE_VERSION='2.29.0'
+PACKAGE_STRING='binutils 2.29.0'
PACKAGE_BUGREPORT=''
PACKAGE_URL=''
@@ -1338,7 +1338,7 @@ if test "$ac_init_help" = "long"; then
# Omit some internal or obsolete options to make the list less imposing.
# This message is too long to be a string in the A/UX 3.1 sh.
cat <<_ACEOF
-\`configure' configures binutils 2.29 to adapt to many kinds of systems.
+\`configure' configures binutils 2.29.0 to adapt to many kinds of systems.
Usage: $0 [OPTION]... [VAR=VALUE]...
@@ -1409,7 +1409,7 @@ fi
if test -n "$ac_init_help"; then
case $ac_init_help in
- short | recursive ) echo "Configuration of binutils 2.29:";;
+ short | recursive ) echo "Configuration of binutils 2.29.0:";;
esac
cat <<\_ACEOF
@@ -1530,7 +1530,7 @@ fi
test -n "$ac_init_help" && exit $ac_status
if $ac_init_version; then
cat <<\_ACEOF
-binutils configure 2.29
+binutils configure 2.29.0
generated by GNU Autoconf 2.64
Copyright (C) 2009 Free Software Foundation, Inc.
@@ -2172,7 +2172,7 @@ cat >config.log <<_ACEOF
This file contains any messages produced by compilers while
running configure, to aid debugging if configure makes a mistake.
-It was created by binutils $as_me 2.29, which was
+It was created by binutils $as_me 2.29.0, which was
generated by GNU Autoconf 2.64. Invocation command line was
$ $0 $@
@@ -3981,7 +3981,7 @@ fi
# Define the identity of the package.
PACKAGE='binutils'
- VERSION='2.29'
+ VERSION='2.29.0'
cat >>confdefs.h <<_ACEOF
@@ -15233,7 +15233,7 @@ cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1
# report actual input values of CONFIG_FILES etc. instead of their
# values after options handling.
ac_log="
-This file was extended by binutils $as_me 2.29, which was
+This file was extended by binutils $as_me 2.29.0, which was
generated by GNU Autoconf 2.64. Invocation command line was
CONFIG_FILES = $CONFIG_FILES
@@ -15297,7 +15297,7 @@ Report bugs to the package provider."
_ACEOF
cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1
ac_cs_version="\\
-binutils config.status 2.29
+binutils config.status 2.29.0
configured by $0, generated by GNU Autoconf 2.64,
with options \\"`$as_echo "$ac_configure_args" | sed 's/^ //; s/[\\""\`\$]/\\\\&/g'`\\"
diff --git a/binutils/readelf.c b/binutils/readelf.c
index b2f75c0..9bbfc95 100644
--- a/binutils/readelf.c
+++ b/binutils/readelf.c
@@ -17465,8 +17465,11 @@ process_note (Elf_Internal_Note * pnote,
printf (" ");
- if (pnote->type == NT_GNU_BUILD_ATTRIBUTE_OPEN
- || pnote->type == NT_GNU_BUILD_ATTRIBUTE_FUNC)
+ if (((const_strneq (pnote->namedata, "GA")
+ && strchr ("*$!+", pnote->namedata[2]) != NULL)
+ || strchr ("*$!+", pnote->namedata[0]) != NULL)
+ && (pnote->type == NT_GNU_BUILD_ATTRIBUTE_OPEN
+ || pnote->type == NT_GNU_BUILD_ATTRIBUTE_FUNC))
print_gnu_build_attribute_name (pnote);
else
print_symbol (-20, name);
@@ -17484,8 +17487,11 @@ process_note (Elf_Internal_Note * pnote,
return print_stapsdt_note (pnote);
else if (const_strneq (pnote->namedata, "CORE"))
return print_core_note (pnote);
- else if (pnote->type == NT_GNU_BUILD_ATTRIBUTE_OPEN
- || pnote->type == NT_GNU_BUILD_ATTRIBUTE_FUNC)
+ else if (((const_strneq (pnote->namedata, "GA")
+ && strchr ("*$!+", pnote->namedata[2]) != NULL)
+ || strchr ("*$!+", pnote->namedata[0]) != NULL)
+ && (pnote->type == NT_GNU_BUILD_ATTRIBUTE_OPEN
+ || pnote->type == NT_GNU_BUILD_ATTRIBUTE_FUNC))
return print_gnu_build_attribute_description (pnote, file);
if (pnote->descsz)
diff --git a/elfcpp/ChangeLog b/elfcpp/ChangeLog
index fc864bf..f669248 100644
--- a/elfcpp/ChangeLog
+++ b/elfcpp/ChangeLog
@@ -1,3 +1,10 @@
+2017-07-28 H.J. Lu <hongjiu.lu@intel.com>
+
+ PR gold/21857
+ * elfcpp.h (Chdr_write): Add put_ch_reserved.
+ (Chdr_write<64, true>::put_ch_reserved): New.
+ (Chdr_write<64, false>::put_ch_reserved): Likewise.
+
2017-07-03 Alan Modra <amodra@gmail.com>
* dwarf.h (DW_FIRST_IDX, DW_IDX, DW_IDX_DUP, DW_END_IDX): Define,
diff --git a/elfcpp/elfcpp.h b/elfcpp/elfcpp.h
index a57f547..cccec4c 100644
--- a/elfcpp/elfcpp.h
+++ b/elfcpp/elfcpp.h
@@ -1351,10 +1351,27 @@ class Chdr_write
put_ch_addralign(typename Elf_types<size>::Elf_WXword v)
{ this->p_->ch_addralign = Convert<size, big_endian>::convert_host(v); }
+ void
+ put_ch_reserved(Elf_Word);
+
private:
internal::Chdr_data<size>* p_;
};
+template<>
+inline void
+elfcpp::Chdr_write<64, true>::put_ch_reserved(Elf_Word v)
+{
+ this->p_->ch_reserved = v;
+}
+
+template<>
+inline void
+elfcpp::Chdr_write<64, false>::put_ch_reserved(Elf_Word v)
+{
+ this->p_->ch_reserved = v;
+}
+
// Accessor class for an ELF segment header.
template<int size, bool big_endian>
diff --git a/gas/ChangeLog b/gas/ChangeLog
index d5b208a..0de5dd8 100644
--- a/gas/ChangeLog
+++ b/gas/ChangeLog
@@ -1,3 +1,57 @@
+2017-08-15 Ramana Radhakrishnan <ramana.radhakrishnan@arm.com>
+
+ Backport from mainline:
+ * config/tc-aarch64.c (REGDEF_ALIAS): Define
+ (reg_names): Update for ip0, ip1, fp, lr to use REGDEF_ALIAS
+ * doc/c-aarch64.texi: Update documentation on .req.
+ * testsuite/gas/diagnostic.s: Update
+ * testsuite/gas/diagnostic.l: Likewise
+ * testsuite/gas/register_aliases.s: New file.
+ * testsuite/gas/register_aliases.d: New file.
+
+2017-08-10 Nick Clifton <nickc@redhat.com>
+
+ Backport from mainline:
+ 2017-08-10 Nick Clifton <nickc@redhat.com>
+
+ PR gas/21939
+ * config/obj-macho.c (obj_mach_o_set_indirect_symbols): Increase
+ size of indirect_syms array so that it is large enough to hold
+ every symbol if necessary.
+
+2017-08-09 Jiong Wang <jiong.wang@arm.com>
+
+ * config/tc-arm.c (do_crc32_1): Remove warning on REG_SP for thumb_mode.
+ * testsuite/gas/arm/crc32-armv8-a-bad.d: Update exepcted result.
+ * testsuite/gas/arm/crc32-armv8-r-bad.d: Likewise.
+ * testsuite/gas/arm/crc32-armv8-a.d: Likewise.
+ * testsuite/gas/arm/crc32-armv8-r.d: Likewise.
+ * testsuite/gas/arm/crc32-armv8-ar-bad.s: Update test case.
+ * testsuite/gas/arm/crc32-armv8-ar.s: Likewise.
+ * testsuite/gas/arm/crc32-bad.l: Update expected error message.
+
+2017-08-02 John David Anglin <danglin@gcc.gnu.org>
+
+ Backport from mainline
+ 2017-07-31 John David Anglin <danglin@gcc.gnu.org>
+
+ * config/tc-hppa.c (pa_ip): Clear `d' bit in branch on bit instructions
+ with a double-word condition and a fixed bit position greater than 31.
+
+2017-08-01 Andreas Krebbel <krebbel@linux.vnet.ibm.com>
+
+ Backport from mainline
+ 2017-07-21 Andreas Krebbel <krebbel@linux.vnet.ibm.com>
+
+ * config/tc-s390.c (s390_parse_cpu): Add z14 as alternate CPU
+ name.
+ * doc/as.texinfo: Add z14 to CPU string list.
+ * doc/c-s390.texi: Likewise.
+
+2017-07-24 Tristan Gingold <gingold@adacore.com>
+
+ * configure: Regenerate.
+
2017-07-24 Tristan Gingold <gingold@adacore.com>
* configure: Regenerate.
diff --git a/gas/config/obj-macho.c b/gas/config/obj-macho.c
index 28867bd..8cc9581 100644
--- a/gas/config/obj-macho.c
+++ b/gas/config/obj-macho.c
@@ -1808,15 +1808,21 @@ obj_mach_o_set_indirect_symbols (bfd *abfd, asection *sec,
{
unsigned n;
bfd_mach_o_asymbol *sym;
+
+ /* FIXME: It seems that there can be more indirect symbols
+ than is computed by the loop above. So be paranoid and
+ allocate enough space for every symbol to be indirect.
+ See PR 21939 for an example of where this is needed. */
+ if (nactual < bfd_get_symcount (abfd))
+ nactual = bfd_get_symcount (abfd);
+
ms->indirect_syms =
bfd_zalloc (abfd,
nactual * sizeof (bfd_mach_o_asymbol *));
if (ms->indirect_syms == NULL)
- {
- as_fatal (_("internal error: failed to allocate %d indirect"
- "symbol pointers"), nactual);
- }
+ as_fatal (_("internal error: failed to allocate %d indirect"
+ "symbol pointers"), nactual);
for (isym = list, n = 0; isym != NULL; isym = isym->next, n++)
{
@@ -1827,7 +1833,11 @@ obj_mach_o_set_indirect_symbols (bfd *abfd, asection *sec,
Absolute symbols are handled specially. */
if (sym->symbol.section == bfd_abs_section_ptr)
- ms->indirect_syms[n] = sym;
+ {
+ if (n >= nactual)
+ as_fatal (_("internal error: more indirect mach-o symbols than expected"));
+ ms->indirect_syms[n] = sym;
+ }
else if (S_IS_LOCAL (isym->sym) && ! lazy)
;
else
@@ -1847,6 +1857,8 @@ obj_mach_o_set_indirect_symbols (bfd *abfd, asection *sec,
&& ! (sym->n_type & BFD_MACH_O_N_PEXT)
&& (sym->n_type & BFD_MACH_O_N_EXT))
sym->n_desc |= lazy;
+ if (n >= nactual)
+ as_fatal (_("internal error: more indirect mach-o symbols than expected"));
ms->indirect_syms[n] = sym;
}
}
diff --git a/gas/config/tc-aarch64.c b/gas/config/tc-aarch64.c
index f095ab9..e805863 100644
--- a/gas/config/tc-aarch64.c
+++ b/gas/config/tc-aarch64.c
@@ -6772,6 +6772,7 @@ aarch64_canonicalize_symbol_name (char *name)
also have mixed-case names. */
#define REGDEF(s,n,t) { #s, n, REG_TYPE_##t, TRUE }
+#define REGDEF_ALIAS(s, n, t) { #s, n, REG_TYPE_##t, FALSE}
#define REGNUM(p,n,t) REGDEF(p##n, n, t)
#define REGSET16(p,t) \
REGNUM(p, 0,t), REGNUM(p, 1,t), REGNUM(p, 2,t), REGNUM(p, 3,t), \
@@ -6793,17 +6794,16 @@ static const reg_entry reg_names[] = {
REGSET31 (x, R_64), REGSET31 (X, R_64),
REGSET31 (w, R_32), REGSET31 (W, R_32),
+ REGDEF_ALIAS (ip0, 16, R_64), REGDEF_ALIAS (IP0, 16, R_64),
+ REGDEF_ALIAS (ip1, 17, R_64), REGDEF_ALIAS (IP1, 16, R_64),
+ REGDEF_ALIAS (fp, 29, R_64), REGDEF_ALIAS (FP, 29, R_64),
+ REGDEF_ALIAS (lr, 30, R_64), REGDEF_ALIAS (LR, 30, R_64),
REGDEF (wsp, 31, SP_32), REGDEF (WSP, 31, SP_32),
REGDEF (sp, 31, SP_64), REGDEF (SP, 31, SP_64),
REGDEF (wzr, 31, Z_32), REGDEF (WZR, 31, Z_32),
REGDEF (xzr, 31, Z_64), REGDEF (XZR, 31, Z_64),
- REGDEF (ip0, 16, R_64), REGDEF (IP0, 16, R_64),
- REGDEF (ip1, 17, R_64), REGDEF (IP1, 17, R_64),
- REGDEF (fp, 29, R_64), REGDEF (FP, 29, R_64),
- REGDEF (lr, 30, R_64), REGDEF (LR, 30, R_64),
-
/* Floating-point single precision registers. */
REGSET (s, FP_S), REGSET (S, FP_S),
@@ -6830,6 +6830,7 @@ static const reg_entry reg_names[] = {
};
#undef REGDEF
+#undef REGDEF_ALIAS
#undef REGNUM
#undef REGSET16
#undef REGSET31
diff --git a/gas/config/tc-arm.c b/gas/config/tc-arm.c
index e22ffe6..c3662da 100644
--- a/gas/config/tc-arm.c
+++ b/gas/config/tc-arm.c
@@ -17598,8 +17598,6 @@ do_crc32_1 (unsigned int poly, unsigned int sz)
if (Rd == REG_PC || Rn == REG_PC || Rm == REG_PC)
as_warn (UNPRED_REG ("r15"));
- if (thumb_mode && (Rd == REG_SP || Rn == REG_SP || Rm == REG_SP))
- as_warn (UNPRED_REG ("r13"));
}
static void
diff --git a/gas/config/tc-hppa.c b/gas/config/tc-hppa.c
index 724b48b..e4ec892 100644
--- a/gas/config/tc-hppa.c
+++ b/gas/config/tc-hppa.c
@@ -5216,9 +5216,7 @@ pa_ip (char *str)
s = expr_end;
CHECK_FIELD (num, 63, 0, strict);
if (num & 0x20)
- ;
- else
- opcode |= (1 << 13);
+ opcode &= ~(1 << 13);
INSERT_FIELD_AND_CONTINUE (opcode, num & 0x1f, 21);
/* Handle a 5 bit immediate at 10. */
diff --git a/gas/config/tc-s390.c b/gas/config/tc-s390.c
index 3ec5a27..84b2e27 100644
--- a/gas/config/tc-s390.c
+++ b/gas/config/tc-s390.c
@@ -290,7 +290,7 @@ s390_parse_cpu (const char * arg,
S390_INSTR_FLAG_HTM },
{ STRING_COMMA_LEN ("z13"), STRING_COMMA_LEN ("arch11"),
S390_INSTR_FLAG_HTM | S390_INSTR_FLAG_VX },
- { STRING_COMMA_LEN ("arch12"), STRING_COMMA_LEN (""),
+ { STRING_COMMA_LEN ("z14"), STRING_COMMA_LEN ("arch12"),
S390_INSTR_FLAG_HTM | S390_INSTR_FLAG_VX }
};
static struct
diff --git a/gas/configure b/gas/configure
index e78136c..b385894 100755
--- a/gas/configure
+++ b/gas/configure
@@ -1,6 +1,6 @@
#! /bin/sh
# Guess values for system-dependent variables and create Makefiles.
-# Generated by GNU Autoconf 2.64 for gas 2.29.
+# Generated by GNU Autoconf 2.64 for gas 2.29.0.
#
# Copyright (C) 1992, 1993, 1994, 1995, 1996, 1998, 1999, 2000, 2001,
# 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009 Free Software
@@ -556,8 +556,8 @@ MAKEFLAGS=
# Identity of this package.
PACKAGE_NAME='gas'
PACKAGE_TARNAME='gas'
-PACKAGE_VERSION='2.29'
-PACKAGE_STRING='gas 2.29'
+PACKAGE_VERSION='2.29.0'
+PACKAGE_STRING='gas 2.29.0'
PACKAGE_BUGREPORT=''
PACKAGE_URL=''
@@ -1330,7 +1330,7 @@ if test "$ac_init_help" = "long"; then
# Omit some internal or obsolete options to make the list less imposing.
# This message is too long to be a string in the A/UX 3.1 sh.
cat <<_ACEOF
-\`configure' configures gas 2.29 to adapt to many kinds of systems.
+\`configure' configures gas 2.29.0 to adapt to many kinds of systems.
Usage: $0 [OPTION]... [VAR=VALUE]...
@@ -1401,7 +1401,7 @@ fi
if test -n "$ac_init_help"; then
case $ac_init_help in
- short | recursive ) echo "Configuration of gas 2.29:";;
+ short | recursive ) echo "Configuration of gas 2.29.0:";;
esac
cat <<\_ACEOF
@@ -1523,7 +1523,7 @@ fi
test -n "$ac_init_help" && exit $ac_status
if $ac_init_version; then
cat <<\_ACEOF
-gas configure 2.29
+gas configure 2.29.0
generated by GNU Autoconf 2.64
Copyright (C) 2009 Free Software Foundation, Inc.
@@ -1933,7 +1933,7 @@ cat >config.log <<_ACEOF
This file contains any messages produced by compilers while
running configure, to aid debugging if configure makes a mistake.
-It was created by gas $as_me 2.29, which was
+It was created by gas $as_me 2.29.0, which was
generated by GNU Autoconf 2.64. Invocation command line was
$ $0 $@
@@ -3742,7 +3742,7 @@ fi
# Define the identity of the package.
PACKAGE='gas'
- VERSION='2.29'
+ VERSION='2.29.0'
cat >>confdefs.h <<_ACEOF
@@ -15223,7 +15223,7 @@ cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1
# report actual input values of CONFIG_FILES etc. instead of their
# values after options handling.
ac_log="
-This file was extended by gas $as_me 2.29, which was
+This file was extended by gas $as_me 2.29.0, which was
generated by GNU Autoconf 2.64. Invocation command line was
CONFIG_FILES = $CONFIG_FILES
@@ -15287,7 +15287,7 @@ Report bugs to the package provider."
_ACEOF
cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1
ac_cs_version="\\
-gas config.status 2.29
+gas config.status 2.29.0
configured by $0, generated by GNU Autoconf 2.64,
with options \\"`$as_echo "$ac_configure_args" | sed 's/^ //; s/[\\""\`\$]/\\\\&/g'`\\"
diff --git a/gas/doc/as.texinfo b/gas/doc/as.texinfo
index e0637c7..b82204d 100644
--- a/gas/doc/as.texinfo
+++ b/gas/doc/as.texinfo
@@ -1740,7 +1740,7 @@ Specify which s390 processor variant is the target, @samp{g5} (or
@samp{arch3}), @samp{g6}, @samp{z900} (or @samp{arch5}), @samp{z990} (or
@samp{arch6}), @samp{z9-109}, @samp{z9-ec} (or @samp{arch7}), @samp{z10} (or
@samp{arch8}), @samp{z196} (or @samp{arch9}), @samp{zEC12} (or @samp{arch10}),
-@samp{z13} (or @samp{arch11}), or @samp{arch12}.
+@samp{z13} (or @samp{arch11}), or @samp{z14} (or @samp{arch12}).
@item -mregnames
@itemx -mno-regnames
Allow or disallow symbolic names for registers.
diff --git a/gas/doc/c-aarch64.texi b/gas/doc/c-aarch64.texi
index 6774205..e73d48c 100644
--- a/gas/doc/c-aarch64.texi
+++ b/gas/doc/c-aarch64.texi
@@ -363,6 +363,9 @@ example:
foo .req w0
@end smallexample
+ip0, ip1, lr and fp are automatically defined to
+alias to X16, X17, X30 and X29 respectively.
+
@c SSSSSSSSSSSSSSSSSSSSSSSSSS
@c TTTTTTTTTTTTTTTTTTTTTTTTTT
diff --git a/gas/doc/c-s390.texi b/gas/doc/c-s390.texi
index 2f417cb..a50d726 100644
--- a/gas/doc/c-s390.texi
+++ b/gas/doc/c-s390.texi
@@ -18,7 +18,7 @@ and eleven chip levels. The architecture modes are the Enterprise System
Architecture (ESA) and the newer z/Architecture mode. The chip levels
are g5 (or arch3), g6, z900 (or arch5), z990 (or arch6), z9-109, z9-ec
(or arch7), z10 (or arch8), z196 (or arch9), zEC12 (or arch10), z13
-(or arch11), and arch12.
+(or arch11), and z14 (or arch12).
@menu
* s390 Options:: Command-line Options.
diff --git a/gas/testsuite/gas/aarch64/diagnostic.l b/gas/testsuite/gas/aarch64/diagnostic.l
index b749d2e..cd3ce99 100644
--- a/gas/testsuite/gas/aarch64/diagnostic.l
+++ b/gas/testsuite/gas/aarch64/diagnostic.l
@@ -172,3 +172,7 @@
[^:]*:295: Error: invalid use of 'MUL' at operand 4 -- `orr x0,x0,#0xff,mul#1'
[^:]*:296: Error: invalid use of 'MUL' at operand 4 -- `orr x0,x0,#0xfe,mul#255'
[^:]*:297: Error: invalid use of 'MUL' at operand 4 -- `orr x0,x0,#0xfc,mul#256'
+[^:]*:299: Warning: ignoring redefinition of register alias 'ip0'
+[^:]*:300: Warning: ignoring redefinition of register alias 'ip1'
+[^:]*:301: Warning: ignoring redefinition of register alias 'lr'
+[^:]*:302: Warning: ignoring redefinition of register alias 'fp'
diff --git a/gas/testsuite/gas/aarch64/diagnostic.s b/gas/testsuite/gas/aarch64/diagnostic.s
index 09126e6..12e8504 100644
--- a/gas/testsuite/gas/aarch64/diagnostic.s
+++ b/gas/testsuite/gas/aarch64/diagnostic.s
@@ -295,3 +295,8 @@
orr x0, x0, #0xff, mul #1
orr x0, x0, #0xfe, mul #255
orr x0, x0, #0xfc, mul #256
+
+ ip0 .req x0
+ ip1 .req x1
+ lr .req x2
+ fp .req x3
diff --git a/gas/testsuite/gas/aarch64/register_aliases.d b/gas/testsuite/gas/aarch64/register_aliases.d
new file mode 100644
index 0000000..677d5f0
--- /dev/null
+++ b/gas/testsuite/gas/aarch64/register_aliases.d
@@ -0,0 +1,10 @@
+#objdump: -dr
+
+.*: file format .*
+
+Disassembly of section \.text:
+
+0+ <.*>:
+ 0: 8b1e0210 add x16, x16, x30
+ 4: f90003b0 str x16, \[x29\]
+ 8: f94003b1 ldr x17, \[x29\]
\ No newline at end of file
diff --git a/gas/testsuite/gas/aarch64/register_aliases.s b/gas/testsuite/gas/aarch64/register_aliases.s
new file mode 100644
index 0000000..5864283
--- /dev/null
+++ b/gas/testsuite/gas/aarch64/register_aliases.s
@@ -0,0 +1,9 @@
+ # test register aliases.
+ lr .req x30
+ fp .req x29
+ ip0 .req x16
+ ip1 .req x17
+ add ip0, ip0, lr
+ str ip0, [fp]
+ ldr ip1, [fp]
+
diff --git a/gas/testsuite/gas/arm/crc32-armv8-a-bad.d b/gas/testsuite/gas/arm/crc32-armv8-a-bad.d
index 18d4844..bc559e0 100644
--- a/gas/testsuite/gas/arm/crc32-armv8-a-bad.d
+++ b/gas/testsuite/gas/arm/crc32-armv8-a-bad.d
@@ -15,9 +15,9 @@ Disassembly of section .text:
0+c <[^>]*> e10f0242 crc32cb r0, pc, r2 ; <UNPREDICTABLE>
0+10 <[^>]*> e121f242 crc32ch pc, r1, r2 ; <UNPREDICTABLE>
0+14 <[^>]*> e14f0242 crc32cw r0, pc, r2 ; <UNPREDICTABLE>
-0+18 <[^>]*> fac1 fd82 crc32b sp, r1, r2 ; <UNPREDICTABLE>
+0+18 <[^>]*> fac1 ff82 crc32b pc, r1, r2 ; <UNPREDICTABLE>
0+1c <[^>]*> facf f092 crc32h r0, pc, r2 ; <UNPREDICTABLE>
-0+20 <[^>]*> fac1 f0ad crc32w r0, r1, sp ; <UNPREDICTABLE>
+0+20 <[^>]*> fac1 f0af crc32w r0, r1, pc ; <UNPREDICTABLE>
0+24 <[^>]*> fadf f082 crc32cb r0, pc, r2 ; <UNPREDICTABLE>
-0+28 <[^>]*> fad1 fd92 crc32ch sp, r1, r2 ; <UNPREDICTABLE>
+0+28 <[^>]*> fad1 ff92 crc32ch pc, r1, r2 ; <UNPREDICTABLE>
0+2c <[^>]*> fadf f0a2 crc32cw r0, pc, r2 ; <UNPREDICTABLE>
diff --git a/gas/testsuite/gas/arm/crc32-armv8-a.d b/gas/testsuite/gas/arm/crc32-armv8-a.d
index b09942e..1374553 100644
--- a/gas/testsuite/gas/arm/crc32-armv8-a.d
+++ b/gas/testsuite/gas/arm/crc32-armv8-a.d
@@ -20,4 +20,15 @@ Disassembly of section .text:
0+24 <[^>]*> fad1 f082 crc32cb r0, r1, r2
0+28 <[^>]*> fad1 f092 crc32ch r0, r1, r2
0+2c <[^>]*> fad1 f0a2 crc32cw r0, r1, r2
-
+0+30 <[^>]*> e101d042 crc32b sp, r1, r2
+0+34 <[^>]*> e12db042 crc32h fp, sp, r2
+0+38 <[^>]*> e141004d crc32w r0, r1, sp
+0+3c <[^>]*> e10d9242 crc32cb r9, sp, r2
+0+40 <[^>]*> e121d248 crc32ch sp, r1, r8
+0+44 <[^>]*> e141a24d crc32cw sl, r1, sp
+0+48 <[^>]*> fac1 fc8d crc32b ip, r1, sp
+0+4c <[^>]*> facd fa92 crc32h r5, sp, r2
+0+50 <[^>]*> fac1 fda7 crc32w sp, r1, r7
+0+54 <[^>]*> fadd f082 crc32cb r0, sp, r2
+0+58 <[^>]*> fad5 f09d crc32ch r0, r5, sp
+0+5c <[^>]*> fad1 fda9 crc32cw sp, r1, r9
diff --git a/gas/testsuite/gas/arm/crc32-armv8-ar-bad.s b/gas/testsuite/gas/arm/crc32-armv8-ar-bad.s
index 4e497e3..847156c 100644
--- a/gas/testsuite/gas/arm/crc32-armv8-ar-bad.s
+++ b/gas/testsuite/gas/arm/crc32-armv8-ar-bad.s
@@ -9,9 +9,9 @@ crc32ch r15, r1, r2
crc32cw r0, r15, r2
.thumb
-crc32b r13, r1, r2
+crc32b r15, r1, r2
crc32h r0, r15, r2
-crc32w r0, r1, r13
+crc32w r0, r1, r15
crc32cb r0, r15, r2
-crc32ch r13, r1, r2
+crc32ch r15, r1, r2
crc32cw r0, r15, r2
diff --git a/gas/testsuite/gas/arm/crc32-armv8-ar.s b/gas/testsuite/gas/arm/crc32-armv8-ar.s
index 63c1d68..9a0edf7 100644
--- a/gas/testsuite/gas/arm/crc32-armv8-ar.s
+++ b/gas/testsuite/gas/arm/crc32-armv8-ar.s
@@ -15,3 +15,19 @@ crc32w r0, r1, r2
crc32cb r0, r1, r2
crc32ch r0, r1, r2
crc32cw r0, r1, r2
+
+.arm
+crc32b sp, r1, r2
+crc32h r11, sp, r2
+crc32w r0, r1, sp
+crc32cb r9, sp, r2
+crc32ch sp, r1, r8
+crc32cw r10, r1, sp
+
+.thumb
+crc32b r12, r1, sp
+crc32h r10, sp, r2
+crc32w sp, r1, r7
+crc32cb r0, sp, r2
+crc32ch r0, r5, sp
+crc32cw sp, r1, r9
diff --git a/gas/testsuite/gas/arm/crc32-armv8-r-bad.d b/gas/testsuite/gas/arm/crc32-armv8-r-bad.d
index a1a4f61..4e6fe3f 100644
--- a/gas/testsuite/gas/arm/crc32-armv8-r-bad.d
+++ b/gas/testsuite/gas/arm/crc32-armv8-r-bad.d
@@ -15,9 +15,9 @@ Disassembly of section .text:
0+c <[^>]*> e10f0242 crc32cb r0, pc, r2 ; <UNPREDICTABLE>
0+10 <[^>]*> e121f242 crc32ch pc, r1, r2 ; <UNPREDICTABLE>
0+14 <[^>]*> e14f0242 crc32cw r0, pc, r2 ; <UNPREDICTABLE>
-0+18 <[^>]*> fac1 fd82 crc32b sp, r1, r2 ; <UNPREDICTABLE>
+0+18 <[^>]*> fac1 ff82 crc32b pc, r1, r2 ; <UNPREDICTABLE>
0+1c <[^>]*> facf f092 crc32h r0, pc, r2 ; <UNPREDICTABLE>
-0+20 <[^>]*> fac1 f0ad crc32w r0, r1, sp ; <UNPREDICTABLE>
+0+20 <[^>]*> fac1 f0af crc32w r0, r1, pc ; <UNPREDICTABLE>
0+24 <[^>]*> fadf f082 crc32cb r0, pc, r2 ; <UNPREDICTABLE>
-0+28 <[^>]*> fad1 fd92 crc32ch sp, r1, r2 ; <UNPREDICTABLE>
+0+28 <[^>]*> fad1 ff92 crc32ch pc, r1, r2 ; <UNPREDICTABLE>
0+2c <[^>]*> fadf f0a2 crc32cw r0, pc, r2 ; <UNPREDICTABLE>
diff --git a/gas/testsuite/gas/arm/crc32-armv8-r.d b/gas/testsuite/gas/arm/crc32-armv8-r.d
index b179821..6918e07 100644
--- a/gas/testsuite/gas/arm/crc32-armv8-r.d
+++ b/gas/testsuite/gas/arm/crc32-armv8-r.d
@@ -20,4 +20,15 @@ Disassembly of section .text:
0+24 <[^>]*> fad1 f082 crc32cb r0, r1, r2
0+28 <[^>]*> fad1 f092 crc32ch r0, r1, r2
0+2c <[^>]*> fad1 f0a2 crc32cw r0, r1, r2
-
+0+30 <[^>]*> e101d042 crc32b sp, r1, r2
+0+34 <[^>]*> e12db042 crc32h fp, sp, r2
+0+38 <[^>]*> e141004d crc32w r0, r1, sp
+0+3c <[^>]*> e10d9242 crc32cb r9, sp, r2
+0+40 <[^>]*> e121d248 crc32ch sp, r1, r8
+0+44 <[^>]*> e141a24d crc32cw sl, r1, sp
+0+48 <[^>]*> fac1 fc8d crc32b ip, r1, sp
+0+4c <[^>]*> facd fa92 crc32h r5, sp, r2
+0+50 <[^>]*> fac1 fda7 crc32w sp, r1, r7
+0+54 <[^>]*> fadd f082 crc32cb r0, sp, r2
+0+58 <[^>]*> fad5 f09d crc32ch r0, r5, sp
+0+5c <[^>]*> fad1 fda9 crc32cw sp, r1, r9
diff --git a/gas/testsuite/gas/arm/crc32-bad.l b/gas/testsuite/gas/arm/crc32-bad.l
index ea520aa..01e1d22 100644
--- a/gas/testsuite/gas/arm/crc32-bad.l
+++ b/gas/testsuite/gas/arm/crc32-bad.l
@@ -5,9 +5,9 @@
[^:]*.s:7: Warning: using r15 results in unpredictable behaviour
[^:]*.s:8: Warning: using r15 results in unpredictable behaviour
[^:]*.s:9: Warning: using r15 results in unpredictable behaviour
-[^:]*.s:12: Warning: using r13 results in unpredictable behaviour
+[^:]*.s:12: Warning: using r15 results in unpredictable behaviour
[^:]*.s:13: Warning: using r15 results in unpredictable behaviour
-[^:]*.s:14: Warning: using r13 results in unpredictable behaviour
+[^:]*.s:14: Warning: using r15 results in unpredictable behaviour
[^:]*.s:15: Warning: using r15 results in unpredictable behaviour
-[^:]*.s:16: Warning: using r13 results in unpredictable behaviour
+[^:]*.s:16: Warning: using r15 results in unpredictable behaviour
[^:]*.s:17: Warning: using r15 results in unpredictable behaviour
diff --git a/gold/ChangeLog b/gold/ChangeLog
index b1b30cb..6cfb34e 100644
--- a/gold/ChangeLog
+++ b/gold/ChangeLog
@@ -1,3 +1,41 @@
+2017-08-28 Alan Modra <amodra@gmail.com>
+
+ PR 21847
+ * powerpc.cc (Target_powerpc::is_elfv2_localentry0): Test
+ non_zero_localentry.
+ (Target_powerpc::resolve): New function.
+ (powerpc_info): Set has_resolve for 64-bit.
+ * target.h (Sized_target::resolve): Return bool.
+ * resolve.cc (Symbol_table::resolve): Continue with normal
+ processing when target resolve returns false.
+ * symtab.h (Symbol::non_zero_localentry, set_non_zero_localentry):
+ New accessors.
+ (Symbol::non_zero_localentry_): New flag bit.
+ * symtab.cc (Symbol::init_fields): Init non_zero_localentry_.
+
+2017-07-31 Alan Modra <amodra@gmail.com>
+
+ PR 21847
+ * powerpc.cc (Target_powerpc::scan_relocs): Warn on --plt-localentry
+ without ld.so checks.
+
+2017-07-29 Alan Modra <amodra@gmail.com>
+
+ PR 21847
+ * powerpc.cc (Target_powerpc::scan_relocs): Default to
+ --no-plt-localentry.
+
+2017-07-28 H.J. Lu <hongjiu.lu@intel.com>
+
+ PR gold/21857
+ * compressed_output.cc (Output_compressed_section::set_final_data_size):
+ Call put_ch_reserved to clear the reserved field for 64-bit ELF.
+
+2017-07-26 H.J. Lu <hongjiu.lu@intel.com>
+
+ * mips.cc (Mips_relocate_functions): Add "llu" suffix to
+ 0x800080008000.
+
2017-07-23 Alan Modra <amodra@gmail.com>
* powerpc.cc (glink_eh_frame_fde_64v2): Correct advance to
diff --git a/gold/aarch64.cc b/gold/aarch64.cc
index 696df19..b4287a6 100644
--- a/gold/aarch64.cc
+++ b/gold/aarch64.cc
@@ -1864,7 +1864,7 @@ class AArch64_relobj : public Sized_relobj_file<size, big_endian>
// applied.
bool
try_fix_erratum_843419_optimized(
- The_erratum_stub*,
+ The_erratum_stub*, AArch64_address,
typename Sized_relobj_file<size, big_endian>::View_size&);
// Whether a section needs to be scanned for relocation stubs.
@@ -1980,6 +1980,7 @@ AArch64_relobj<size, big_endian>::fix_errata_and_relocate_erratum_stubs(
{
typedef typename elfcpp::Swap<32,big_endian>::Valtype Insntype;
unsigned int shnum = this->shnum();
+ const Relobj::Output_sections& out_sections(this->output_sections());
for (unsigned int i = 1; i < shnum; ++i)
{
The_stub_table* stub_table = this->stub_table(i);
@@ -1988,33 +1989,48 @@ AArch64_relobj<size, big_endian>::fix_errata_and_relocate_erratum_stubs(
std::pair<Erratum_stub_set_iter, Erratum_stub_set_iter>
ipair(stub_table->find_erratum_stubs_for_input_section(this, i));
Erratum_stub_set_iter p = ipair.first, end = ipair.second;
+ typename Sized_relobj_file<size, big_endian>::View_size&
+ pview((*pviews)[i]);
+ AArch64_address view_offset = 0;
+ if (pview.is_input_output_view)
+ {
+ // In this case, write_sections has not added the output offset to
+ // the view's address, so we must do so. Currently this only happens
+ // for a relaxed section.
+ unsigned int index = this->adjust_shndx(i);
+ const Output_relaxed_input_section* poris =
+ out_sections[index]->find_relaxed_input_section(this, index);
+ gold_assert(poris != NULL);
+ view_offset = poris->address() - pview.address;
+ }
+
while (p != end)
{
The_erratum_stub* stub = *p;
- typename Sized_relobj_file<size, big_endian>::View_size&
- pview((*pviews)[i]);
// Double check data before fix.
- gold_assert(pview.address + stub->sh_offset()
+ gold_assert(pview.address + view_offset + stub->sh_offset()
== stub->erratum_address());
// Update previously recorded erratum insn with relocated
// version.
Insntype* ip =
- reinterpret_cast<Insntype*>(pview.view + stub->sh_offset());
+ reinterpret_cast<Insntype*>(
+ pview.view + view_offset + stub->sh_offset());
Insntype insn_to_fix = ip[0];
stub->update_erratum_insn(insn_to_fix);
// First try to see if erratum is 843419 and if it can be fixed
// without using branch-to-stub.
- if (!try_fix_erratum_843419_optimized(stub, pview))
+ if (!try_fix_erratum_843419_optimized(stub, view_offset, pview))
{
// Replace the erratum insn with a branch-to-stub.
AArch64_address stub_address =
stub_table->erratum_stub_address(stub);
unsigned int b_offset = stub_address - stub->erratum_address();
AArch64_relocate_functions<size, big_endian>::construct_b(
- pview.view + stub->sh_offset(), b_offset & 0xfffffff);
+ pview.view + view_offset + stub->sh_offset(),
+ b_offset & 0xfffffff);
}
// Erratum fix is done (or skipped), continue to relocate erratum
@@ -2024,7 +2040,8 @@ AArch64_relobj<size, big_endian>::fix_errata_and_relocate_erratum_stubs(
// erratum stub, ignoring the fact the erratum could never be
// executed.
stub_table->relocate_erratum_stub(
- stub, pview.view + (stub_table->address() - pview.address));
+ stub,
+ pview.view + view_offset + (stub_table->address() - pview.address));
// Next erratum stub.
++p;
@@ -2042,7 +2059,7 @@ AArch64_relobj<size, big_endian>::fix_errata_and_relocate_erratum_stubs(
template<int size, bool big_endian>
bool
AArch64_relobj<size, big_endian>::try_fix_erratum_843419_optimized(
- The_erratum_stub* stub,
+ The_erratum_stub* stub, AArch64_address view_offset,
typename Sized_relobj_file<size, big_endian>::View_size& pview)
{
if (stub->type() != ST_E_843419)
@@ -2052,9 +2069,11 @@ AArch64_relobj<size, big_endian>::try_fix_erratum_843419_optimized(
typedef typename elfcpp::Swap<32,big_endian>::Valtype Insntype;
E843419_stub<size, big_endian>* e843419_stub =
reinterpret_cast<E843419_stub<size, big_endian>*>(stub);
- AArch64_address pc = pview.address + e843419_stub->adrp_sh_offset();
+ AArch64_address pc =
+ pview.address + view_offset + e843419_stub->adrp_sh_offset();
unsigned int adrp_offset = e843419_stub->adrp_sh_offset ();
- Insntype* adrp_view = reinterpret_cast<Insntype*>(pview.view + adrp_offset);
+ Insntype* adrp_view =
+ reinterpret_cast<Insntype*>(pview.view + view_offset + adrp_offset);
Insntype adrp_insn = adrp_view[0];
// If the instruction at adrp_sh_offset is "mrs R, tpidr_el0", it may come
@@ -2070,8 +2089,9 @@ AArch64_relobj<size, big_endian>::try_fix_erratum_843419_optimized(
// return true.
if (!Insn_utilities::is_adrp(adrp_insn) && adrp_offset)
{
- Insntype* prev_view
- = reinterpret_cast<Insntype*>(pview.view + adrp_offset - 4);
+ Insntype* prev_view =
+ reinterpret_cast<Insntype*>(
+ pview.view + view_offset + adrp_offset - 4);
Insntype prev_insn = prev_view[0];
if (Insn_utilities::is_mrs_tpidr_el0(prev_insn))
diff --git a/gold/compressed_output.cc b/gold/compressed_output.cc
index 4374ba1..45077f7 100644
--- a/gold/compressed_output.cc
+++ b/gold/compressed_output.cc
@@ -286,6 +286,8 @@ Output_compressed_section::set_final_data_size()
chdr.put_ch_type(elfcpp::ELFCOMPRESS_ZLIB);
chdr.put_ch_size(uncompressed_size);
chdr.put_ch_addralign(addralign);
+ // Clear the reserved field.
+ chdr.put_ch_reserved(0);
}
else
{
@@ -293,6 +295,8 @@ Output_compressed_section::set_final_data_size()
chdr.put_ch_type(elfcpp::ELFCOMPRESS_ZLIB);
chdr.put_ch_size(uncompressed_size);
chdr.put_ch_addralign(addralign);
+ // Clear the reserved field.
+ chdr.put_ch_reserved(0);
}
}
else
diff --git a/gold/mips.cc b/gold/mips.cc
index 4fc160b..5555562 100644
--- a/gold/mips.cc
+++ b/gold/mips.cc
@@ -5664,7 +5664,7 @@ class Mips_relocate_functions : public Relocate_functions<size, big_endian>
: addend_a);
Valtype x = psymval->value(object, addend);
- x = ((x + (uint64_t) 0x800080008000) >> 48) & 0xffff;
+ x = ((x + (uint64_t) 0x800080008000llu) >> 48) & 0xffff;
val = Bits<32>::bit_select32(val, x, 0xffff);
if (calculate_only)
diff --git a/gold/powerpc.cc b/gold/powerpc.cc
index 1135acd..629da4f 100644
--- a/gold/powerpc.cc
+++ b/gold/powerpc.cc
@@ -1026,7 +1026,8 @@ class Target_powerpc : public Sized_target<size, big_endian>
&& this->plt_localentry0()
&& gsym->type() == elfcpp::STT_FUNC
&& gsym->is_defined()
- && gsym->nonvis() >> 3 == 0);
+ && gsym->nonvis() >> 3 == 0
+ && !gsym->non_zero_localentry());
}
bool
@@ -1051,6 +1052,22 @@ class Target_powerpc : public Sized_target<size, big_endian>
return false;
}
+ // Remember any symbols seen with non-zero localentry, even those
+ // not providing a definition
+ bool
+ resolve(Symbol* to, const elfcpp::Sym<size, big_endian>& sym, Object*,
+ const char*)
+ {
+ if (size == 64)
+ {
+ unsigned char st_other = sym.get_st_other();
+ if ((st_other & elfcpp::STO_PPC64_LOCAL_MASK) != 0)
+ to->set_non_zero_localentry();
+ }
+ // We haven't resolved anything, continue normal processing.
+ return false;
+ }
+
int
abiversion () const
{ return this->processor_specific_flags() & elfcpp::EF_PPC64_ABI; }
@@ -1599,7 +1616,7 @@ Target::Target_info Target_powerpc<64, true>::powerpc_info =
true, // is_big_endian
elfcpp::EM_PPC64, // machine_code
false, // has_make_symbol
- false, // has_resolve
+ true, // has_resolve
false, // has_code_fill
true, // is_default_stack_executable
false, // can_icf_inline_merge_sections
@@ -1627,7 +1644,7 @@ Target::Target_info Target_powerpc<64, false>::powerpc_info =
false, // is_big_endian
elfcpp::EM_PPC64, // machine_code
false, // has_make_symbol
- false, // has_resolve
+ true, // has_resolve
false, // has_code_fill
true, // is_default_stack_executable
false, // can_icf_inline_merge_sections
@@ -7660,8 +7677,10 @@ Target_powerpc<size, big_endian>::scan_relocs(
{
if (parameters->options().user_set_plt_localentry())
plt_localentry0 = parameters->options().plt_localentry();
- else
- plt_localentry0 = symtab->lookup("GLIBC_2.26", NULL) != NULL;
+ if (plt_localentry0
+ && symtab->lookup("GLIBC_2.26", NULL) == NULL)
+ gold_warning(_("--plt-localentry is especially dangerous without "
+ "ld.so support to detect ABI violations"));
}
this->plt_localentry0_ = plt_localentry0;
this->plt_localentry0_init_ = true;
diff --git a/gold/resolve.cc b/gold/resolve.cc
index 8f4d2e3..7c22606 100644
--- a/gold/resolve.cc
+++ b/gold/resolve.cc
@@ -266,8 +266,8 @@ Symbol_table::resolve(Sized_symbol<size>* to,
{
Sized_target<size, big_endian>* sized_target;
sized_target = parameters->sized_target<size, big_endian>();
- sized_target->resolve(to, sym, object, version);
- return;
+ if (sized_target->resolve(to, sym, object, version))
+ return;
}
if (!object->is_dynamic())
diff --git a/gold/symtab.cc b/gold/symtab.cc
index 43909ff..7e0a3f8 100644
--- a/gold/symtab.cc
+++ b/gold/symtab.cc
@@ -81,6 +81,7 @@ Symbol::init_fields(const char* name, const char* version,
this->undef_binding_weak_ = false;
this->is_predefined_ = false;
this->is_protected_ = false;
+ this->non_zero_localentry_ = false;
}
// Return the demangled version of the symbol's name, but only
diff --git a/gold/symtab.h b/gold/symtab.h
index 77552ae..c371731 100644
--- a/gold/symtab.h
+++ b/gold/symtab.h
@@ -883,6 +883,16 @@ class Symbol
set_is_protected()
{ this->is_protected_ = true; }
+ // Return state of PowerPC64 ELFv2 specific flag.
+ bool
+ non_zero_localentry() const
+ { return this->non_zero_localentry_; }
+
+ // Set PowerPC64 ELFv2 specific flag.
+ void
+ set_non_zero_localentry()
+ { this->non_zero_localentry_ = true; }
+
protected:
// Instances of this class should always be created at a specific
// size.
@@ -1084,6 +1094,8 @@ class Symbol
// The visibility_ field will be STV_DEFAULT in this case because we
// must treat it as such from outside the shared object.
bool is_protected_ : 1;
+ // Used by PowerPC64 ELFv2 to track st_other localentry (bit 36).
+ bool non_zero_localentry_ : 1;
};
// The parts of a symbol which are size specific. Using a template
diff --git a/gold/target.h b/gold/target.h
index 5ca8435..cf6d902 100644
--- a/gold/target.h
+++ b/gold/target.h
@@ -852,7 +852,7 @@ class Sized_target : public Target
// pre-existing symbol. SYM is the new symbol, seen in OBJECT.
// VERSION is the version of SYM. This will only be called if
// has_resolve() returns true.
- virtual void
+ virtual bool
resolve(Symbol*, const elfcpp::Sym<size, big_endian>&, Object*,
const char*)
{ gold_unreachable(); }
diff --git a/gprof/ChangeLog b/gprof/ChangeLog
index ef39520..c9b0714 100644
--- a/gprof/ChangeLog
+++ b/gprof/ChangeLog
@@ -2,6 +2,10 @@
* configure: Regenerate.
+2017-07-24 Tristan Gingold <gingold@adacore.com>
+
+ * configure: Regenerate.
+
2017-07-18 Nick Clifton <nickc@redhat.com>
* po/bg.po: Updated translation.
diff --git a/gprof/configure b/gprof/configure
index 30aa546..fb9f076 100755
--- a/gprof/configure
+++ b/gprof/configure
@@ -1,6 +1,6 @@
#! /bin/sh
# Guess values for system-dependent variables and create Makefiles.
-# Generated by GNU Autoconf 2.64 for gprof 2.29.
+# Generated by GNU Autoconf 2.64 for gprof 2.29.0.
#
# Copyright (C) 1992, 1993, 1994, 1995, 1996, 1998, 1999, 2000, 2001,
# 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009 Free Software
@@ -556,8 +556,8 @@ MAKEFLAGS=
# Identity of this package.
PACKAGE_NAME='gprof'
PACKAGE_TARNAME='gprof'
-PACKAGE_VERSION='2.29'
-PACKAGE_STRING='gprof 2.29'
+PACKAGE_VERSION='2.29.0'
+PACKAGE_STRING='gprof 2.29.0'
PACKAGE_BUGREPORT=''
PACKAGE_URL=''
@@ -1302,7 +1302,7 @@ if test "$ac_init_help" = "long"; then
# Omit some internal or obsolete options to make the list less imposing.
# This message is too long to be a string in the A/UX 3.1 sh.
cat <<_ACEOF
-\`configure' configures gprof 2.29 to adapt to many kinds of systems.
+\`configure' configures gprof 2.29.0 to adapt to many kinds of systems.
Usage: $0 [OPTION]... [VAR=VALUE]...
@@ -1373,7 +1373,7 @@ fi
if test -n "$ac_init_help"; then
case $ac_init_help in
- short | recursive ) echo "Configuration of gprof 2.29:";;
+ short | recursive ) echo "Configuration of gprof 2.29.0:";;
esac
cat <<\_ACEOF
@@ -1479,7 +1479,7 @@ fi
test -n "$ac_init_help" && exit $ac_status
if $ac_init_version; then
cat <<\_ACEOF
-gprof configure 2.29
+gprof configure 2.29.0
generated by GNU Autoconf 2.64
Copyright (C) 2009 Free Software Foundation, Inc.
@@ -1844,7 +1844,7 @@ cat >config.log <<_ACEOF
This file contains any messages produced by compilers while
running configure, to aid debugging if configure makes a mistake.
-It was created by gprof $as_me 2.29, which was
+It was created by gprof $as_me 2.29.0, which was
generated by GNU Autoconf 2.64. Invocation command line was
$ $0 $@
@@ -3653,7 +3653,7 @@ fi
# Define the identity of the package.
PACKAGE='gprof'
- VERSION='2.29'
+ VERSION='2.29.0'
cat >>confdefs.h <<_ACEOF
@@ -12787,7 +12787,7 @@ cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1
# report actual input values of CONFIG_FILES etc. instead of their
# values after options handling.
ac_log="
-This file was extended by gprof $as_me 2.29, which was
+This file was extended by gprof $as_me 2.29.0, which was
generated by GNU Autoconf 2.64. Invocation command line was
CONFIG_FILES = $CONFIG_FILES
@@ -12851,7 +12851,7 @@ Report bugs to the package provider."
_ACEOF
cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1
ac_cs_version="\\
-gprof config.status 2.29
+gprof config.status 2.29.0
configured by $0, generated by GNU Autoconf 2.64,
with options \\"`$as_echo "$ac_configure_args" | sed 's/^ //; s/[\\""\`\$]/\\\\&/g'`\\"
diff --git a/ld/ChangeLog b/ld/ChangeLog
index bc7d797..c806a53 100644
--- a/ld/ChangeLog
+++ b/ld/ChangeLog
@@ -1,3 +1,166 @@
+2017-08-17 Andrew Burgess <andrew.burgess@embecosm.com>
+
+ PR 21961
+ * ldlang.c (lang_discard_section_p): New function.
+ (lang_add_section): Checks moved out into new function, which is
+ now called.
+ (lang_place_orphans): Call lang_discard_section_p instead of
+ duplicating some of the checks from lang_add_section.
+ * testsuite/ld-elf/orphan-11.d: New file.
+ * testsuite/ld-elf/orphan-11.ld: New file.
+ * testsuite/ld-elf/orphan-11.s: New file.
+ * testsuite/ld-elf/orphan-12.d: New file.
+ * testsuite/ld-elf/orphan-12.s: New file.
+
+2017-08-23 Alan Modra <amodra@gmail.com>
+
+ * testsuite/ld-gc/pr19161.d: Don't xfail hppa.
+
+2017-08-21 H.J. Lu <hongjiu.lu@intel.com>
+ Alan Modra <amodra@gmail.com>
+
+ PR ld/21964
+ * testsuite/ld-elf/pr21562a.d: Update for changed start/stop symbols.
+ * testsuite/ld-elf/pr21562b.d: Likewise.
+ * testsuite/ld-elf/pr21562c.d: Likewise.
+ * testsuite/ld-elf/pr21562d.d: Likewise.
+ * testsuite/ld-elf/pr21562e.d: Likewise.
+ * testsuite/ld-elf/pr21562f.d: Likewise.
+ * testsuite/ld-elf/pr21562g.d: Likewise.
+ * testsuite/ld-elf/pr21562h.d: Likewise.
+ * testsuite/ld-elf/pr21562i.d: Likewise.
+ * testsuite/ld-elf/pr21562j.d: Likewise.
+ * testsuite/ld-elf/pr21562k.d: Likewise.
+ * testsuite/ld-elf/pr21562l.d: Likewise.
+ * testsuite/ld-elf/pr21562m.d: Likewise.
+ * testsuite/ld-elf/pr21562n.d: Likewise.
+ * testsuite/ld-elf/sizeofa.d: Likewise.
+ * testsuite/ld-elf/sizeofb.d: Likewise.
+ * testsuite/ld-elf/startofa.d: Likewise.
+ * testsuite/ld-elf/startofb.d: Likewise.
+ * testsuite/ld-gc/pr20022.d: Likewise.
+ * testsuite/ld-gc/start.d: Likewise.
+ * testsuite/ld-elf/pr21964-1a.c: New file.
+ * testsuite/ld-elf/pr21964-1b.c: New file.
+ * testsuite/ld-elf/pr21964-2a.c: New file.
+ * testsuite/ld-elf/pr21964-2b.c: New file.
+ * testsuite/ld-elf/shared.exp: Run PR ld/21964 tests.
+
+2017-08-05 Alan Modra <amodra@gmail.com>
+
+ * testsuite/ld-unique/pr21529.d: Don't xfail hppa.
+
+2017-08-03 Nick Clifton <nickc@redhat.com>
+
+ PR ld/21884
+ * testsuite/ld-elf/pr21884.d: Add AVR, HPPA, IA64, M68HC1x and
+ SCORE to list of targets not supporting file format changes during
+ linking.
+ * testsuite/ld-unique/pr21529.d: Likewise.
+ * emultempl/avrelf.em (_before_allocation): Skip for non-ELF
+ output formats.
+ (avr_elf_create_output_section_statements): Fail if the output
+ format is not ELF.
+ (avr_finish): Do not access the ELF header in non-ELF format
+ output bfds.
+ * emultempl/m68hc1xelf.em (_before_allocation): Skip for non-ELF
+ output formats.
+ (m68hc11elf_create_output_section_statements): Fail if the putput
+ format is not ELF.
+ (m68hc11elf_after_allocation): Skip for non-ELF output formats.
+
+2017-07-25 Alan Modra <amodra@gmail.com>
+
+ * testsuite/ld-powerpc/tlsopt5.s: Add cfi.
+ * testsuite/ld-powerpc/tlsopt5.d: Update.
+ * testsuite/ld-powerpc/tlsopt5.wf: New file.
+ * testsuite/ld-powerpc/powerpc.exp: Perform new tlsopt5 test.
+
+2017-07-14 Alan Modra <amodra@gmail.com>
+
+ * testsuite/ld-powerpc/powerpc.exp: Add -shared to tlsop5 tests.
+ * testsuite/ld-powerpc/tlsopt5.d: Adjust.
+ * testsuite/ld-powerpc/tlsopt1_32.s: Use r30 as GOT pointer.
+ * testsuite/ld-powerpc/tlsopt2_32.s: Likewise.
+ * testsuite/ld-powerpc/tlsopt3_32.s: Likewise.
+ * testsuite/ld-powerpc/tlsopt4_32.s: Likewise.
+ * testsuite/ld-powerpc/tlsopt5_32.s: Rewrite.
+ * testsuite/ld-powerpc/tlsopt1_32.d: Adjust.
+ * testsuite/ld-powerpc/tlsopt2_32.d: Adjust.
+ * testsuite/ld-powerpc/tlsopt3_32.d: Adjust.
+ * testsuite/ld-powerpc/tlsopt5_32.d: Adjust.
+
+2017-08-13 H.J. Lu <hongjiu.lu@intel.com>
+
+ PR ld/21923
+ * configure.ac (TESTBFDLIB): Replace --rpath with -Wl,--rpath,
+ for --disable-static.
+ * configure: Regenerated.
+
+2017-08-13 H.J. Lu <hongjiu.lu@intel.com>
+
+ * testsuite/ld-i386/i386.exp: Run pr21884-nacl.
+ * testsuite/ld-x86-64/x86-64.exp: Likewise.
+ * testsuite/ld-i386/pr21884.d: Don't run on nacl targets.
+ * testsuite/ld-x86-64/pr21884.d: Likewise.
+ * testsuite/ld-i386/pr21884.t: Revert the last change.
+ * testsuite/ld-x86-64/pr21884.t: Likewise.
+ * testsuite/ld-i386/pr21884-nacl.d: New file.
+ * testsuite/ld-i386/pr21884-nacl.t: Likewise.
+ * testsuite/ld-x86-64/pr21884-nacl.d: Likewise.
+ * testsuite/ld-x86-64/pr21884-nacl.t: Likewise.
+
+2017-08-13 Alan Modra <amodra@gmail.com>
+
+ * testsuite/ld-i386/pr21884.t: Remove unneeded format, arch and entry.
+ * testsuite/ld-x86-64/pr21884.t: Likewise.
+
+2017-08-11 H.J. Lu <hongjiu.lu@intel.com>
+
+ PR ld/21884
+ * testsuite/ld-i386/i386.exp: Run pr21884.
+ * testsuite/ld-x86-64/x86-64.exp: Likewise.
+ * testsuite/ld-i386/pr21884.d: New file.
+ * testsuite/ld-i386/pr21884.t: Likewise.
+ * testsuite/ld-x86-64/pr21884.d: Likewise.
+ * testsuite/ld-x86-64/pr21884.t: Likewise.
+
+2017-08-03 Alan Modra <amodra@gmail.com>
+
+ PR ld/21884
+ * emultempl/elf32.em (gld${EMULATION_NAME}_place_orphan): Revert
+ last change. Rename iself to elfinput. Expand comments. Condition
+ ELF checks on having both input and output ELF files. Extract..
+ (elf_orphan_compatible): ..this new function.
+
+2017-08-02 H.J. Lu <hongjiu.lu@intel.com>
+
+ PR ld/21884
+ * emultempl/elf32.em (gld${EMULATION_NAME}_place_orphan): Check
+ ELF section header only for ELF output.
+ * testsuite/ld-elf/pr21884.d: New test.
+ * testsuite/ld-elf/pr21884.t: Likewise.
+ * testsuite/ld-elf/pr21884a.s: Likewise.
+ * testsuite/ld-elf/pr21884b.s: Likewise.
+
+2017-07-31 Alan Modra <amodra@gmail.com>
+
+ * ld.texinfo (plt-localentry): Revise.
+
+2017-07-29 Alan Modra <amodra@gmail.com>
+
+ * ld.texinfo (plt-localentry): Document.
+
+2017-07-27 Georg-Johann Lay <gjl@gcc.gnu.org>
+
+ PR ld/21849
+ * scripttempl/avr.sc: Split .progmemx.* from .progmem.* and locate
+ former at a higher address.
+
+2017-07-24 Tristan Gingold <gingold@adacore.com>
+
+ * configure: Regenerate.
+
2017-07-24 Tristan Gingold <gingold@adacore.com>
* configure: Regenerate.
diff --git a/ld/configure b/ld/configure
index da20ab5..20fb84d 100755
--- a/ld/configure
+++ b/ld/configure
@@ -1,6 +1,6 @@
#! /bin/sh
# Guess values for system-dependent variables and create Makefiles.
-# Generated by GNU Autoconf 2.64 for ld 2.29.
+# Generated by GNU Autoconf 2.64 for ld 2.29.0.
#
# Copyright (C) 1992, 1993, 1994, 1995, 1996, 1998, 1999, 2000, 2001,
# 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009 Free Software
@@ -556,8 +556,8 @@ MAKEFLAGS=
# Identity of this package.
PACKAGE_NAME='ld'
PACKAGE_TARNAME='ld'
-PACKAGE_VERSION='2.29'
-PACKAGE_STRING='ld 2.29'
+PACKAGE_VERSION='2.29.0'
+PACKAGE_STRING='ld 2.29.0'
PACKAGE_BUGREPORT=''
PACKAGE_URL=''
@@ -1351,7 +1351,7 @@ if test "$ac_init_help" = "long"; then
# Omit some internal or obsolete options to make the list less imposing.
# This message is too long to be a string in the A/UX 3.1 sh.
cat <<_ACEOF
-\`configure' configures ld 2.29 to adapt to many kinds of systems.
+\`configure' configures ld 2.29.0 to adapt to many kinds of systems.
Usage: $0 [OPTION]... [VAR=VALUE]...
@@ -1422,7 +1422,7 @@ fi
if test -n "$ac_init_help"; then
case $ac_init_help in
- short | recursive ) echo "Configuration of ld 2.29:";;
+ short | recursive ) echo "Configuration of ld 2.29.0:";;
esac
cat <<\_ACEOF
@@ -1548,7 +1548,7 @@ fi
test -n "$ac_init_help" && exit $ac_status
if $ac_init_version; then
cat <<\_ACEOF
-ld configure 2.29
+ld configure 2.29.0
generated by GNU Autoconf 2.64
Copyright (C) 2009 Free Software Foundation, Inc.
@@ -2257,7 +2257,7 @@ cat >config.log <<_ACEOF
This file contains any messages produced by compilers while
running configure, to aid debugging if configure makes a mistake.
-It was created by ld $as_me 2.29, which was
+It was created by ld $as_me 2.29.0, which was
generated by GNU Autoconf 2.64. Invocation command line was
$ $0 $@
@@ -4067,7 +4067,7 @@ fi
# Define the identity of the package.
PACKAGE='ld'
- VERSION='2.29'
+ VERSION='2.29.0'
cat >>confdefs.h <<_ACEOF
@@ -17255,7 +17255,7 @@ EMULATION_LIBPATH=$all_libpath
if test x${enable_static} = xno; then
- TESTBFDLIB="--rpath ../bfd/.libs ../bfd/.libs/libbfd.so"
+ TESTBFDLIB="-Wl,--rpath,../bfd/.libs ../bfd/.libs/libbfd.so"
else
TESTBFDLIB="../bfd/.libs/libbfd.a"
fi
@@ -17827,7 +17827,7 @@ cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1
# report actual input values of CONFIG_FILES etc. instead of their
# values after options handling.
ac_log="
-This file was extended by ld $as_me 2.29, which was
+This file was extended by ld $as_me 2.29.0, which was
generated by GNU Autoconf 2.64. Invocation command line was
CONFIG_FILES = $CONFIG_FILES
@@ -17891,7 +17891,7 @@ Report bugs to the package provider."
_ACEOF
cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1
ac_cs_version="\\
-ld config.status 2.29
+ld config.status 2.29.0
configured by $0, generated by GNU Autoconf 2.64,
with options \\"`$as_echo "$ac_configure_args" | sed 's/^ //; s/[\\""\`\$]/\\\\&/g'`\\"
diff --git a/ld/configure.ac b/ld/configure.ac
index 34315e6..6f25d28 100644
--- a/ld/configure.ac
+++ b/ld/configure.ac
@@ -436,7 +436,7 @@ EMULATION_LIBPATH=$all_libpath
AC_SUBST(EMULATION_LIBPATH)
if test x${enable_static} = xno; then
- TESTBFDLIB="--rpath ../bfd/.libs ../bfd/.libs/libbfd.so"
+ TESTBFDLIB="-Wl,--rpath,../bfd/.libs ../bfd/.libs/libbfd.so"
else
TESTBFDLIB="../bfd/.libs/libbfd.a"
fi
diff --git a/ld/emultempl/avrelf.em b/ld/emultempl/avrelf.em
index 2072124..acb478f 100644
--- a/ld/emultempl/avrelf.em
+++ b/ld/emultempl/avrelf.em
@@ -71,6 +71,12 @@ avr_elf_${EMULATION_NAME}_before_allocation (void)
gld${EMULATION_NAME}_before_allocation ();
+ if (bfd_get_flavour (link_info.output_bfd) != bfd_target_elf_flavour)
+ {
+ avr_no_stubs = TRUE;
+ return;
+ }
+
/* We only need stubs for avr6, avrxmega6, and avrxmega7. */
if (strcmp ("${EMULATION_NAME}","avr6")
&& strcmp ("${EMULATION_NAME}","avrxmega6")
@@ -108,6 +114,12 @@ avr_elf_create_output_section_statements (void)
{
flagword flags;
+ if (bfd_get_flavour (link_info.output_bfd) != bfd_target_elf_flavour)
+ {
+ einfo ("%X%P: changing output format whilst linking is not supported\n");
+ return;
+ }
+
stub_file = lang_add_input_file ("linker stubs",
lang_input_file_is_fake_enum,
NULL);
@@ -204,10 +216,14 @@ avr_finish (void)
}
abfd = link_info.output_bfd;
- if (avr_link_relax)
- elf_elfheader (abfd)->e_flags |= EF_AVR_LINKRELAX_PREPARED;
- else
- elf_elfheader (abfd)->e_flags &= ~EF_AVR_LINKRELAX_PREPARED;
+
+ if (bfd_get_flavour (link_info.output_bfd) == bfd_target_elf_flavour)
+ {
+ if (avr_link_relax)
+ elf_elfheader (abfd)->e_flags |= EF_AVR_LINKRELAX_PREPARED;
+ else
+ elf_elfheader (abfd)->e_flags &= ~EF_AVR_LINKRELAX_PREPARED;
+ }
finish_default ();
}
diff --git a/ld/emultempl/elf32.em b/ld/emultempl/elf32.em
index d2551b6..9ac1840 100644
--- a/ld/emultempl/elf32.em
+++ b/ld/emultempl/elf32.em
@@ -2008,6 +2008,29 @@ output_rel_find (asection *sec, int isdyn)
return last;
}
+/* Return whether IN is suitable to be part of OUT. */
+
+static bfd_boolean
+elf_orphan_compatible (asection *in, asection *out)
+{
+ /* Non-zero sh_info implies a section with SHF_INFO_LINK with
+ unknown semantics for the generic linker, or a SHT_REL/SHT_RELA
+ section where sh_info specifies a symbol table. (We won't see
+ SHT_GROUP, SHT_SYMTAB or SHT_DYNSYM sections here.) We clearly
+ can't merge SHT_REL/SHT_RELA using differing symbol tables, and
+ shouldn't merge sections with differing unknown semantics. */
+ if (elf_section_data (out)->this_hdr.sh_info
+ != elf_section_data (in)->this_hdr.sh_info)
+ return FALSE;
+ /* We can't merge two sections with differing SHF_EXCLUDE when doing
+ a relocatable link. */
+ if (bfd_link_relocatable (&link_info)
+ && ((elf_section_flags (out) ^ elf_section_flags (in)) & SHF_EXCLUDE) != 0)
+ return FALSE;
+ return _bfd_elf_match_sections_by_type (link_info.output_bfd, out,
+ in->owner, in);
+}
+
/* Place an orphan section. We use this to put random SHF_ALLOC
sections in the right segment. */
@@ -2064,8 +2087,9 @@ gld${EMULATION_NAME}_place_orphan (asection *s,
lang_output_section_statement_type *os;
lang_output_section_statement_type *match_by_name = NULL;
int isdyn = 0;
- int iself = s->owner->xvec->flavour == bfd_target_elf_flavour;
- unsigned int sh_type = iself ? elf_section_type (s) : SHT_NULL;
+ int elfinput = s->owner->xvec->flavour == bfd_target_elf_flavour;
+ int elfoutput = link_info.output_bfd->xvec->flavour == bfd_target_elf_flavour;
+ unsigned int sh_type = elfinput ? elf_section_type (s) : SHT_NULL;
flagword flags;
asection *nexts;
@@ -2073,7 +2097,7 @@ gld${EMULATION_NAME}_place_orphan (asection *s,
&& link_info.combreloc
&& (s->flags & SEC_ALLOC))
{
- if (iself)
+ if (elfinput)
switch (sh_type)
{
case SHT_RELA:
@@ -2095,6 +2119,8 @@ gld${EMULATION_NAME}_place_orphan (asection *s,
}
if (!bfd_link_relocatable (&link_info)
+ && elfinput
+ && elfoutput
&& (s->flags & SEC_ALLOC) != 0
&& (elf_section_flags (s) & SHF_GNU_MBIND) != 0)
{
@@ -2135,7 +2161,10 @@ gld${EMULATION_NAME}_place_orphan (asection *s,
secname = ".mbind.text";
}
- /* Look through the script to see where to place this section. */
+ /* Look through the script to see where to place this section. The
+ script includes entries added by previous lang_insert_orphan
+ calls, so this loop puts multiple compatible orphans of the same
+ name into a single output section. */
if (constraint == 0)
for (os = lang_output_section_find (secname);
os != NULL;
@@ -2145,29 +2174,19 @@ gld${EMULATION_NAME}_place_orphan (asection *s,
lang_insert_orphan to create a new output section. */
constraint = SPECIAL;
- /* SEC_EXCLUDE is cleared when doing a relocatable link. But
- we can't merge 2 input sections with the same name when only
- one of them has SHF_EXCLUDE. Don't merge 2 sections with
- different sh_info. */
+ /* Check to see if we already have an output section statement
+ with this name, and its bfd section has compatible flags.
+ If the section already exists but does not have any flags
+ set, then it has been created by the linker, possibly as a
+ result of a --section-start command line switch. */
if (os->bfd_section != NULL
- && (elf_section_data (os->bfd_section)->this_hdr.sh_info
- == elf_section_data (s)->this_hdr.sh_info)
&& (os->bfd_section->flags == 0
- || ((!bfd_link_relocatable (&link_info)
- || (iself && (((elf_section_flags (s)
- ^ elf_section_flags (os->bfd_section))
- & SHF_EXCLUDE) == 0)))
- && ((s->flags ^ os->bfd_section->flags)
+ || (((s->flags ^ os->bfd_section->flags)
& (SEC_LOAD | SEC_ALLOC)) == 0
- && _bfd_elf_match_sections_by_type (link_info.output_bfd,
- os->bfd_section,
- s->owner, s))))
+ && (!elfinput
+ || !elfoutput
+ || elf_orphan_compatible (s, os->bfd_section)))))
{
- /* We already have an output section statement with this
- name, and its bfd section has compatible flags.
- If the section already exists but does not have any flags
- set, then it has been created by the linker, probably as a
- result of a --section-start command line switch. */
lang_add_section (&os->children, s, NULL, os);
return os;
}
@@ -2243,8 +2262,8 @@ gld${EMULATION_NAME}_place_orphan (asection *s,
else if ((flags & SEC_ALLOC) == 0)
;
else if ((flags & SEC_LOAD) != 0
- && ((iself && sh_type == SHT_NOTE)
- || (!iself && CONST_STRNEQ (secname, ".note"))))
+ && ((elfinput && sh_type == SHT_NOTE)
+ || (!elfinput && CONST_STRNEQ (secname, ".note"))))
place = &hold[orphan_interp];
else if ((flags & (SEC_LOAD | SEC_HAS_CONTENTS | SEC_THREAD_LOCAL)) == 0)
place = &hold[orphan_bss];
@@ -2254,8 +2273,8 @@ gld${EMULATION_NAME}_place_orphan (asection *s,
place = &hold[orphan_tdata];
else if ((flags & SEC_READONLY) == 0)
place = &hold[orphan_data];
- else if (((iself && (sh_type == SHT_RELA || sh_type == SHT_REL))
- || (!iself && CONST_STRNEQ (secname, ".rel")))
+ else if (((elfinput && (sh_type == SHT_RELA || sh_type == SHT_REL))
+ || (!elfinput && CONST_STRNEQ (secname, ".rel")))
&& (flags & SEC_LOAD) != 0)
place = &hold[orphan_rel];
else if ((flags & SEC_CODE) == 0)
diff --git a/ld/emultempl/m68hc1xelf.em b/ld/emultempl/m68hc1xelf.em
index bfe88d6..f7337da 100644
--- a/ld/emultempl/m68hc1xelf.em
+++ b/ld/emultempl/m68hc1xelf.em
@@ -66,6 +66,9 @@ m68hc11_elf_${EMULATION_NAME}_before_allocation (void)
gld${EMULATION_NAME}_before_allocation ();
+ if (bfd_get_flavour (link_info.output_bfd) != bfd_target_elf_flavour)
+ return;
+
/* If generating a relocatable output file, then we don't
have to generate the trampolines. */
if (bfd_link_relocatable (&link_info))
@@ -141,6 +144,12 @@ m68hc11_elf_${EMULATION_NAME}_before_allocation (void)
static void
m68hc11elf_create_output_section_statements (void)
{
+ if (bfd_get_flavour (link_info.output_bfd) != bfd_target_elf_flavour)
+ {
+ einfo ("%X%P: changing output format whilst linking is not supported\n");
+ return;
+ }
+
stub_file = lang_add_input_file ("linker stubs",
lang_input_file_is_fake_enum,
NULL);
@@ -286,22 +295,25 @@ m68hc11elf_add_stub_section (const char *stub_sec_name,
static void
m68hc11elf_after_allocation (void)
{
- /* Now build the linker stubs. */
- if (stub_file->the_bfd->sections != NULL)
+ if (bfd_get_flavour (link_info.output_bfd) == bfd_target_elf_flavour)
{
- /* Call again the trampoline analyzer to initialize the trampoline
- stubs with the correct symbol addresses. Since there could have
- been relaxation, the symbol addresses that were found during
- first call may no longer be correct. */
- if (!elf32_m68hc11_size_stubs (link_info.output_bfd,
- stub_file->the_bfd,
- &link_info, 0))
+ /* Now build the linker stubs. */
+ if (stub_file->the_bfd->sections != NULL)
{
- einfo ("%X%P: can not size stub section: %E\n");
- return;
+ /* Call again the trampoline analyzer to initialize the trampoline
+ stubs with the correct symbol addresses. Since there could have
+ been relaxation, the symbol addresses that were found during
+ first call may no longer be correct. */
+ if (!elf32_m68hc11_size_stubs (link_info.output_bfd,
+ stub_file->the_bfd,
+ &link_info, 0))
+ {
+ einfo ("%X%P: can not size stub section: %E\n");
+ return;
+ }
+ if (!elf32_m68hc11_build_stubs (link_info.output_bfd, &link_info))
+ einfo ("%X%P: can not build stubs: %E\n");
}
- if (!elf32_m68hc11_build_stubs (link_info.output_bfd, &link_info))
- einfo ("%X%P: can not build stubs: %E\n");
}
gld${EMULATION_NAME}_after_allocation ();
diff --git a/ld/ld.texinfo b/ld/ld.texinfo
index bb5f719..5d0b007 100644
--- a/ld/ld.texinfo
+++ b/ld/ld.texinfo
@@ -7600,6 +7600,24 @@ 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.
+
+@cindex PowerPC64 ELFv2 PLT localentry optimization
+@kindex --plt-localentry
+@kindex --no-plt-localentry
+@item --plt-localentry
+@itemx --no-localentry
+ELFv2 functions with localentry:0 are those with a single entry point,
+ie. global entry == local entry, and that have no requirement on r2
+(the TOC/GOT pointer) or r12, and guarantee r2 is unchanged on return.
+Such an external function can be called via the PLT without saving r2
+or restoring it on return, avoiding a common load-hit-store for small
+functions. The optimization is attractive, with up to 40% reduction
+in execution time for a small function, but can result in symbol
+interposition failures. Also, minor changes in a shared library,
+including system libraries, can cause a function that was localentry:0
+to become localentry:8. This will result in a dynamic loader
+complaint and failure to run. The option is experimental, use with
+care. @option{--no-plt-localentry} is the default.
@end table
@ifclear GENERIC
diff --git a/ld/ldlang.c b/ld/ldlang.c
index 726bc8e..4ce0f51 100644
--- a/ld/ldlang.c
+++ b/ld/ldlang.c
@@ -2274,6 +2274,34 @@ section_already_linked (bfd *abfd, asection *sec, void *data)
bfd_section_already_linked (abfd, sec, &link_info);
}
+
+/* Returns true if SECTION is one we know will be discarded based on its
+ section flags, otherwise returns false. */
+
+static bfd_boolean
+lang_discard_section_p (asection *section)
+{
+ bfd_boolean discard;
+ flagword flags = section->flags;
+
+ /* Discard sections marked with SEC_EXCLUDE. */
+ discard = (flags & SEC_EXCLUDE) != 0;
+
+ /* Discard the group descriptor sections when we're finally placing the
+ sections from within the group. */
+ if ((flags & SEC_GROUP) != 0
+ && link_info.resolve_section_groups)
+ discard = TRUE;
+
+ /* Discard debugging sections if we are stripping debugging
+ information. */
+ if ((link_info.strip == strip_debugger || link_info.strip == strip_all)
+ && (flags & SEC_DEBUGGING) != 0)
+ discard = TRUE;
+
+ return discard;
+}
+
/* The wild routines.
These expand statements like *(.text) and foo.o to a list of
@@ -2295,26 +2323,14 @@ lang_add_section (lang_statement_list_type *ptr,
lang_input_section_type *new_section;
bfd *abfd = link_info.output_bfd;
- /* Discard sections marked with SEC_EXCLUDE. */
- discard = (flags & SEC_EXCLUDE) != 0;
+ /* Is this section one we know should be discarded? */
+ discard = lang_discard_section_p (section);
/* Discard input sections which are assigned to a section named
DISCARD_SECTION_NAME. */
if (strcmp (output->name, DISCARD_SECTION_NAME) == 0)
discard = TRUE;
- /* Discard the group descriptor sections when we're finally placing the
- sections from within the group. */
- if ((section->flags & SEC_GROUP) == SEC_GROUP
- && link_info.resolve_section_groups)
- discard = TRUE;
-
- /* Discard debugging sections if we are stripping debugging
- information. */
- if ((link_info.strip == strip_debugger || link_info.strip == strip_all)
- && (flags & SEC_DEBUGGING) != 0)
- discard = TRUE;
-
if (discard)
{
if (section->output_section == NULL)
@@ -6411,7 +6427,7 @@ lang_place_orphans (void)
if (file->flags.just_syms)
bfd_link_just_syms (file->the_bfd, s, &link_info);
- else if ((s->flags & SEC_EXCLUDE) != 0)
+ else if (lang_discard_section_p (s))
s->output_section = bfd_abs_section_ptr;
else if (strcmp (s->name, "COMMON") == 0)
{
diff --git a/ld/scripttempl/avr.sc b/ld/scripttempl/avr.sc
index 07553b4..7a146b7 100644
--- a/ld/scripttempl/avr.sc
+++ b/ld/scripttempl/avr.sc
@@ -128,7 +128,7 @@ SECTIONS
${RELOCATING+ *libprintf_flt.a:*(.progmem.data)}
${RELOCATING+ *libc.a:*(.progmem.data)}
- ${RELOCATING+ *(.progmem*)}
+ ${RELOCATING+ *(.progmem.*)}
${RELOCATING+. = ALIGN(2);}
@@ -196,6 +196,8 @@ SECTIONS
*(.hightext)
${RELOCATING+ *(.hightext*)}
+ ${RELOCATING+ *(.progmemx.*)}
+
${RELOCATING+. = ALIGN(2);}
/* For tablejump instruction arrays. We don't relax
diff --git a/ld/testsuite/ld-elf/orphan-11.d b/ld/testsuite/ld-elf/orphan-11.d
new file mode 100644
index 0000000..3daefba
--- /dev/null
+++ b/ld/testsuite/ld-elf/orphan-11.d
@@ -0,0 +1,9 @@
+#source: orphan-11.s
+#ld: -T orphan-11.ld --orphan-handling=error
+#objdump: -wh
+#notarget: d30v-* dlx-* fr30-* frv-* ft32-* i860-* i960-* iq2000-* mn10200-* moxie-* ms1-* msp430-* mt-* pj-*
+
+#...
+ . \.text .*
+ . \.data .*
+#pass
diff --git a/ld/testsuite/ld-elf/orphan-11.ld b/ld/testsuite/ld-elf/orphan-11.ld
new file mode 100644
index 0000000..74c7789
--- /dev/null
+++ b/ld/testsuite/ld-elf/orphan-11.ld
@@ -0,0 +1,16 @@
+SECTIONS
+{
+ . = SIZEOF_HEADERS;
+ .text : { *(.text .text.*) }
+ .data : { *(.data .data.*) }
+ .bss : { *(.bss .bss.*) *(COMMON) }
+ .sbss : { *(.sbss .sbss.*) }
+ .note : { *(.note .note.*) }
+ .rela : { *(.rela .rela.*) }
+ .rel : { *(.rel .rel.*) }
+
+ /DISCARD/ : {
+ *(.reginfo) *(.MIPS.abiflags) *(.trampolines) *(.iplt*)
+ *(.note*) *(.got*) *(.igot*) *(.*.attributes) *(.*.info)
+ *(.pdr) "linker stubs*"(*) }
+}
diff --git a/ld/testsuite/ld-elf/orphan-11.s b/ld/testsuite/ld-elf/orphan-11.s
new file mode 100644
index 0000000..3d7961b
--- /dev/null
+++ b/ld/testsuite/ld-elf/orphan-11.s
@@ -0,0 +1,11 @@
+ .section .text.foo,"axG",%progbits,foo_group
+ .word 0
+
+ .section .data.foo,"waG",%progbits,foo_group
+ .word 1
+
+ .section .text, "ax"
+ .word 0
+
+ .section .data, "wa"
+ .word 1
diff --git a/ld/testsuite/ld-elf/orphan-12.d b/ld/testsuite/ld-elf/orphan-12.d
new file mode 100644
index 0000000..71a8c93
--- /dev/null
+++ b/ld/testsuite/ld-elf/orphan-12.d
@@ -0,0 +1,9 @@
+#source: orphan-12.s
+#ld: -T orphan-11.ld --strip-debug --orphan-handling=error
+#objdump: -wh
+#notarget: d30v-* dlx-* fr30-* frv-* ft32-* i860-* i960-* iq2000-* mn10200-* moxie-* ms1-* msp430-* mt-* pj-*
+
+#...
+ . \.text .*
+ . \.data .*
+#pass
diff --git a/ld/testsuite/ld-elf/orphan-12.s b/ld/testsuite/ld-elf/orphan-12.s
new file mode 100644
index 0000000..f9cbcf7
--- /dev/null
+++ b/ld/testsuite/ld-elf/orphan-12.s
@@ -0,0 +1,8 @@
+ .section .debug_info, "",%progbits
+ .word 0
+
+ .section .text, "ax"
+ .word 0
+
+ .section .data, "wa"
+ .word 1
diff --git a/ld/testsuite/ld-elf/pr21562a.d b/ld/testsuite/ld-elf/pr21562a.d
index ecf013f..e978734 100644
--- a/ld/testsuite/ld-elf/pr21562a.d
+++ b/ld/testsuite/ld-elf/pr21562a.d
@@ -8,5 +8,5 @@
#...
\[[ 0-9]+\] scnfoo[ \t]+PROGBITS[ \t]+[0-9a-f]+ +[0-9a-f]+ +0*10[ \t]+.*
#...
- +[0-9]+: +[0-9a-f]+ +[0-9a-f]+ +NOTYPE +LOCAL +DEFAULT +[0-9]+ +___?start_scnfoo
+ +[0-9]+: +[0-9a-f]+ +[0-9a-f]+ +NOTYPE +GLOBAL +PROTECTED +[0-9]+ +___?start_scnfoo
#pass
diff --git a/ld/testsuite/ld-elf/pr21562b.d b/ld/testsuite/ld-elf/pr21562b.d
index 063a141..f1d058a 100644
--- a/ld/testsuite/ld-elf/pr21562b.d
+++ b/ld/testsuite/ld-elf/pr21562b.d
@@ -8,5 +8,5 @@
#...
\[[ 0-9]+\] scnfoo[ \t]+PROGBITS[ \t]+[0-9a-f]+ +[0-9a-f]+ +0*10[ \t]+.*
#...
- +[0-9]+: +[0-9a-f]+ +[0-9a-f]+ +NOTYPE +LOCAL +DEFAULT +[0-9]+ +___?stop_scnfoo
+ +[0-9]+: +[0-9a-f]+ +[0-9a-f]+ +NOTYPE +GLOBAL +PROTECTED +[0-9]+ +___?stop_scnfoo
#pass
diff --git a/ld/testsuite/ld-elf/pr21562c.d b/ld/testsuite/ld-elf/pr21562c.d
index 1d72a0d..1bfbff3 100644
--- a/ld/testsuite/ld-elf/pr21562c.d
+++ b/ld/testsuite/ld-elf/pr21562c.d
@@ -9,5 +9,5 @@
#...
\[[ 0-9]+\] scnfoo[ \t]+PROGBITS[ \t]+[0-9a-f]+ +[0-9a-f]+ +0*10[ \t]+.*
#...
- +[0-9]+: +[0-9a-f]+ +[0-9a-f]+ +NOTYPE +LOCAL +DEFAULT +[0-9]+ +___?start_scnfoo
+ +[0-9]+: +[0-9a-f]+ +[0-9a-f]+ +NOTYPE +GLOBAL +PROTECTED +[0-9]+ +___?start_scnfoo
#pass
diff --git a/ld/testsuite/ld-elf/pr21562d.d b/ld/testsuite/ld-elf/pr21562d.d
index f752a24..4f8e91e 100644
--- a/ld/testsuite/ld-elf/pr21562d.d
+++ b/ld/testsuite/ld-elf/pr21562d.d
@@ -9,5 +9,5 @@
#...
\[[ 0-9]+\] scnfoo[ \t]+PROGBITS[ \t]+[0-9a-f]+ +[0-9a-f]+ +0*10[ \t]+.*
#...
- +[0-9]+: +[0-9a-f]+ +[0-9a-f]+ +NOTYPE +LOCAL +DEFAULT +[0-9]+ +___?stop_scnfoo
+ +[0-9]+: +[0-9a-f]+ +[0-9a-f]+ +NOTYPE +GLOBAL +PROTECTED +[0-9]+ +___?stop_scnfoo
#pass
diff --git a/ld/testsuite/ld-elf/pr21562e.d b/ld/testsuite/ld-elf/pr21562e.d
index 769f2f8..ee969bd 100644
--- a/ld/testsuite/ld-elf/pr21562e.d
+++ b/ld/testsuite/ld-elf/pr21562e.d
@@ -6,5 +6,5 @@
#...
\[[ 0-9]+\] scnfoo[ \t]+PROGBITS[ \t]+[0-9a-f]+ +[0-9a-f]+ +0*10[ \t]+.*
#...
- +[0-9]+: +[0-9a-f]+ +[0-9a-f]+ +NOTYPE +LOCAL +DEFAULT +[0-9]+ +___?start_scnfoo
+ +[0-9]+: +[0-9a-f]+ +[0-9a-f]+ +NOTYPE +GLOBAL +PROTECTED +[0-9]+ +___?start_scnfoo
#pass
diff --git a/ld/testsuite/ld-elf/pr21562f.d b/ld/testsuite/ld-elf/pr21562f.d
index cb81c2a..119f43e 100644
--- a/ld/testsuite/ld-elf/pr21562f.d
+++ b/ld/testsuite/ld-elf/pr21562f.d
@@ -6,5 +6,5 @@
#...
\[[ 0-9]+\] scnfoo[ \t]+PROGBITS[ \t]+[0-9a-f]+ +[0-9a-f]+ +0*10[ \t]+.*
#...
- +[0-9]+: +[0-9a-f]+ +[0-9a-f]+ +NOTYPE +LOCAL +DEFAULT +[0-9]+ +___?stop_scnfoo
+ +[0-9]+: +[0-9a-f]+ +[0-9a-f]+ +NOTYPE +GLOBAL +PROTECTED +[0-9]+ +___?stop_scnfoo
#pass
diff --git a/ld/testsuite/ld-elf/pr21562g.d b/ld/testsuite/ld-elf/pr21562g.d
index 9926416..f3d2a31 100644
--- a/ld/testsuite/ld-elf/pr21562g.d
+++ b/ld/testsuite/ld-elf/pr21562g.d
@@ -6,5 +6,5 @@
#...
\[[ 0-9]+\] scnfoo[ \t]+PROGBITS[ \t]+[0-9a-f]+ +[0-9a-f]+ +0*10[ \t]+.*
#...
- +[0-9]+: +[0-9a-f]+ +[0-9a-f]+ +NOTYPE +LOCAL +DEFAULT +[0-9]+ +___?start_scnfoo
+ +[0-9]+: +[0-9a-f]+ +[0-9a-f]+ +NOTYPE +GLOBAL +PROTECTED +[0-9]+ +___?start_scnfoo
#pass
diff --git a/ld/testsuite/ld-elf/pr21562h.d b/ld/testsuite/ld-elf/pr21562h.d
index 1e723ba..0517aec 100644
--- a/ld/testsuite/ld-elf/pr21562h.d
+++ b/ld/testsuite/ld-elf/pr21562h.d
@@ -6,5 +6,5 @@
#...
\[[ 0-9]+\] scnfoo[ \t]+PROGBITS[ \t]+[0-9a-f]+ +[0-9a-f]+ +0*10[ \t]+.*
#...
- +[0-9]+: +[0-9a-f]+ +[0-9a-f]+ +NOTYPE +LOCAL +DEFAULT +[0-9]+ +___?stop_scnfoo
+ +[0-9]+: +[0-9a-f]+ +[0-9a-f]+ +NOTYPE +GLOBAL +PROTECTED +[0-9]+ +___?stop_scnfoo
#pass
diff --git a/ld/testsuite/ld-elf/pr21562i.d b/ld/testsuite/ld-elf/pr21562i.d
index f5b59c5..8baa583 100644
--- a/ld/testsuite/ld-elf/pr21562i.d
+++ b/ld/testsuite/ld-elf/pr21562i.d
@@ -9,5 +9,5 @@
#...
\[[ 0-9]+\] scnfoo[ \t]+PROGBITS[ \t]+[0-9a-f]+ +[0-9a-f]+ +0*10[ \t]+.*
#...
- +[0-9]+: +[0-9a-f]+ +[0-9a-f]+ +NOTYPE +LOCAL +DEFAULT +[0-9]+ +___?start_scnfoo
+ +[0-9]+: +[0-9a-f]+ +[0-9a-f]+ +NOTYPE +GLOBAL +PROTECTED +[0-9]+ +___?start_scnfoo
#pass
diff --git a/ld/testsuite/ld-elf/pr21562j.d b/ld/testsuite/ld-elf/pr21562j.d
index 70e311e..99d987c 100644
--- a/ld/testsuite/ld-elf/pr21562j.d
+++ b/ld/testsuite/ld-elf/pr21562j.d
@@ -9,5 +9,5 @@
#...
\[[ 0-9]+\] scnfoo[ \t]+PROGBITS[ \t]+[0-9a-f]+ +[0-9a-f]+ +0*10[ \t]+.*
#...
- +[0-9]+: +[0-9a-f]+ +[0-9a-f]+ +NOTYPE +LOCAL +DEFAULT +[0-9]+ +___?stop_scnfoo
+ +[0-9]+: +[0-9a-f]+ +[0-9a-f]+ +NOTYPE +GLOBAL +PROTECTED +[0-9]+ +___?stop_scnfoo
#pass
diff --git a/ld/testsuite/ld-elf/pr21562k.d b/ld/testsuite/ld-elf/pr21562k.d
index 4c62eb7..6aa8334 100644
--- a/ld/testsuite/ld-elf/pr21562k.d
+++ b/ld/testsuite/ld-elf/pr21562k.d
@@ -9,5 +9,5 @@
#...
\[[ 0-9]+\] \.foo[ \t]+PROGBITS[ \t]+[0-9a-f]+ +[0-9a-f]+ +0*10[ \t]+.*
#...
- +[0-9]+: +[0-9a-f]+ +[0-9a-f]+ +NOTYPE +LOCAL +DEFAULT +[0-9]+ +___?start_scnfoo
+ +[0-9]+: +[0-9a-f]+ +[0-9a-f]+ +NOTYPE +GLOBAL +PROTECTED +[0-9]+ +___?start_scnfoo
#pass
diff --git a/ld/testsuite/ld-elf/pr21562l.d b/ld/testsuite/ld-elf/pr21562l.d
index b0ba90d..82bab1e 100644
--- a/ld/testsuite/ld-elf/pr21562l.d
+++ b/ld/testsuite/ld-elf/pr21562l.d
@@ -9,5 +9,5 @@
#...
\[[ 0-9]+\] \.foo[ \t]+PROGBITS[ \t]+[0-9a-f]+ +[0-9a-f]+ +0*10[ \t]+.*
#...
- +[0-9]+: +[0-9a-f]+ +[0-9a-f]+ +NOTYPE +LOCAL +DEFAULT +[0-9]+ +___?stop_scnfoo
+ +[0-9]+: +[0-9a-f]+ +[0-9a-f]+ +NOTYPE +GLOBAL +PROTECTED +[0-9]+ +___?stop_scnfoo
#pass
diff --git a/ld/testsuite/ld-elf/pr21562m.d b/ld/testsuite/ld-elf/pr21562m.d
index fbcf76f..e1ad876 100644
--- a/ld/testsuite/ld-elf/pr21562m.d
+++ b/ld/testsuite/ld-elf/pr21562m.d
@@ -9,5 +9,5 @@
#...
\[[ 0-9]+\] \.foo[ \t]+PROGBITS[ \t]+[0-9a-f]+ +[0-9a-f]+ +0*10[ \t]+.*
#...
- +[0-9]+: +[0-9a-f]+ +[0-9a-f]+ +NOTYPE +LOCAL +DEFAULT +[0-9]+ +___?start_scnfoo
+ +[0-9]+: +[0-9a-f]+ +[0-9a-f]+ +NOTYPE +GLOBAL +PROTECTED +[0-9]+ +___?start_scnfoo
#pass
diff --git a/ld/testsuite/ld-elf/pr21562n.d b/ld/testsuite/ld-elf/pr21562n.d
index 2453169..583c771 100644
--- a/ld/testsuite/ld-elf/pr21562n.d
+++ b/ld/testsuite/ld-elf/pr21562n.d
@@ -9,5 +9,5 @@
#...
\[[ 0-9]+\] \.foo[ \t]+PROGBITS[ \t]+[0-9a-f]+ +[0-9a-f]+ +0*10[ \t]+.*
#...
- +[0-9]+: +[0-9a-f]+ +[0-9a-f]+ +NOTYPE +LOCAL +DEFAULT +[0-9]+ +___?stop_scnfoo
+ +[0-9]+: +[0-9a-f]+ +[0-9a-f]+ +NOTYPE +GLOBAL +PROTECTED +[0-9]+ +___?stop_scnfoo
#pass
diff --git a/ld/testsuite/ld-elf/pr21884.d b/ld/testsuite/ld-elf/pr21884.d
new file mode 100644
index 0000000..0de7b83
--- /dev/null
+++ b/ld/testsuite/ld-elf/pr21884.d
@@ -0,0 +1,11 @@
+#source: pr21884a.s
+#source: pr21884b.s
+#ld: -T pr21884.t
+#objdump: -b binary -s
+#notarget: aarch64*-*-* arm*-*-* avr-*-* hppa-*-* ia64-*-* m68hc1*-*-* nds32*-*-* score-*-*
+# Skip targets which can't change output format to binary.
+
+.*: file format binary
+
+Contents of section .data:
+#pass
diff --git a/ld/testsuite/ld-elf/pr21884.t b/ld/testsuite/ld-elf/pr21884.t
new file mode 100644
index 0000000..d483911
--- /dev/null
+++ b/ld/testsuite/ld-elf/pr21884.t
@@ -0,0 +1,7 @@
+OUTPUT_FORMAT("binary")
+
+ENTRY(_main);
+SECTIONS {
+ . = 0;
+ .setup : { *(.setup) }
+}
diff --git a/ld/testsuite/ld-elf/pr21884a.s b/ld/testsuite/ld-elf/pr21884a.s
new file mode 100644
index 0000000..a3361b2
--- /dev/null
+++ b/ld/testsuite/ld-elf/pr21884a.s
@@ -0,0 +1,5 @@
+ .text
+ .globl _main
+ .type _main,%function
+_main:
+ .dc.a bar
diff --git a/ld/testsuite/ld-elf/pr21884b.s b/ld/testsuite/ld-elf/pr21884b.s
new file mode 100644
index 0000000..e533837
--- /dev/null
+++ b/ld/testsuite/ld-elf/pr21884b.s
@@ -0,0 +1,5 @@
+ .text
+ .globl bar
+ .type bar,%function
+bar:
+ .byte 0
diff --git a/ld/testsuite/ld-elf/pr21964-1a.c b/ld/testsuite/ld-elf/pr21964-1a.c
new file mode 100644
index 0000000..f2eae53
--- /dev/null
+++ b/ld/testsuite/ld-elf/pr21964-1a.c
@@ -0,0 +1,11 @@
+extern int __start___verbose[];
+extern int __stop___verbose[];
+int foo (void)
+{
+ static int my_var __attribute__((used, section("__verbose"))) = 5;
+ if (__start___verbose == __stop___verbose
+ || __start___verbose[0] != 5)
+ return -1;
+ else
+ return 0;
+}
diff --git a/ld/testsuite/ld-elf/pr21964-1b.c b/ld/testsuite/ld-elf/pr21964-1b.c
new file mode 100644
index 0000000..440c937
--- /dev/null
+++ b/ld/testsuite/ld-elf/pr21964-1b.c
@@ -0,0 +1,24 @@
+#include <stdio.h>
+
+extern int foo (void);
+
+extern int __start___verbose[];
+extern int __stop___verbose[];
+static int my_var __attribute__((used, section("__verbose"))) = 6;
+int bar (void)
+{
+ if (__start___verbose == __stop___verbose)
+ return -1;
+
+ if (__start___verbose[0] != 6)
+ return -2;
+ else
+ return 0;
+}
+
+int main()
+{
+ if (bar () == 0 && foo () == 0)
+ printf ("PASS\n");
+ return 0;
+}
diff --git a/ld/testsuite/ld-elf/pr21964-2a.c b/ld/testsuite/ld-elf/pr21964-2a.c
new file mode 100644
index 0000000..617ce75
--- /dev/null
+++ b/ld/testsuite/ld-elf/pr21964-2a.c
@@ -0,0 +1,11 @@
+extern int __start___verbose[];
+extern int __stop___verbose[];
+int foo (void)
+{
+ static int my_var __attribute__((used, section("__verbose"))) = 5;
+ if (__start___verbose == __stop___verbose
+ && __start___verbose[0] != 5)
+ return -1;
+ else
+ return 0;
+}
diff --git a/ld/testsuite/ld-elf/pr21964-2b.c b/ld/testsuite/ld-elf/pr21964-2b.c
new file mode 100644
index 0000000..5f638a3
--- /dev/null
+++ b/ld/testsuite/ld-elf/pr21964-2b.c
@@ -0,0 +1,27 @@
+#include <dlfcn.h>
+#include <stdio.h>
+
+int main()
+{
+ void *dl;
+ void *sym;
+ int (*func) (void);
+
+ dl = dlopen("pr21964-2.so", RTLD_LAZY);
+ if (!dl)
+ return 1;
+
+ sym = dlsym(dl, "__start___verbose");
+ if (!sym)
+ return 2;
+
+ func = dlsym(dl, "foo");
+ if (!func)
+ return 3;
+ if (func () == 0)
+ printf ("PASS\n");
+
+ dlclose(dl);
+
+ return 0;
+}
diff --git a/ld/testsuite/ld-elf/shared.exp b/ld/testsuite/ld-elf/shared.exp
index 8b139ec..0802fa2 100644
--- a/ld/testsuite/ld-elf/shared.exp
+++ b/ld/testsuite/ld-elf/shared.exp
@@ -423,6 +423,12 @@ set build_tests {
{"Build libpr19073.so"
"-shared -Wl,--version-script=pr19073.map tmpdir/pr19073a.o" "-fPIC"
{dummy.c} {{readelf {--dyn-syms --wide} pr19073.rd}} "libpr19073.so"}
+ {"Build pr21964-1.so"
+ "-shared" "-fPIC"
+ {pr21964-1a.c} {} "pr21964-1.so"}
+ {"Build pr21964-2.so"
+ "-shared" "-fPIC"
+ {pr21964-2a.c} {} "pr21964-2.so"}
}
run_cc_link_tests $build_tests
@@ -540,6 +546,9 @@ set run_tests [list \
[list "Run pr18458" \
"-Wl,--no-as-needed,-z,now tmpdir/libpr18458a.so tmpdir/libpr18458b.so" "" \
{pr18458c.c} "pr18458" "pass.out" ] \
+ [list "Run pr21964-1" \
+ "-Wl,--no-as-needed,-rpath,tmpdir tmpdir/pr21964-1.so" "" \
+ {pr21964-1b.c} "pr21964-1" "pass.out" ] \
]
# NetBSD ELF systems do not currently support the .*_array sections.
@@ -586,6 +595,9 @@ set dlopen_run_tests [list \
[list "Run dl6d1 with --dynamic-list-data and dlopen on libdl6d.so" \
"-Wl,--no-as-needed,--dynamic-list-data $extralibs" "" \
{dl6dmain.c} "dl6d1" "dl6b.out" ] \
+ [list "Run pr21964-2" \
+ "-Wl,--no-as-needed,-rpath,tmpdir $extralibs" "" \
+ {pr21964-2b.c} "pr21964-2" "pass.out" ] \
]
# Only run them when libdl is available.
diff --git a/ld/testsuite/ld-elf/sizeofa.d b/ld/testsuite/ld-elf/sizeofa.d
index 572ffbd..3eaa4e5 100644
--- a/ld/testsuite/ld-elf/sizeofa.d
+++ b/ld/testsuite/ld-elf/sizeofa.d
@@ -6,7 +6,7 @@ Symbol table '\.symtab' contains [0-9]+ entries:
+Num: +Value +Size Type +Bind +Vis +Ndx Name
+0: 0+ +0 +NOTYPE +LOCAL +DEFAULT +UND +
#...
- +[0-9]+: +[a-f0-9]+ +0 +(NOTYPE|OBJECT) +(LOC|GLOB)AL +DEFAULT +[0-9]+ +___?stop_scnfoo
+ +[0-9]+: +[a-f0-9]+ +0 +(NOTYPE|OBJECT) +GLOBAL +(PROTECTED|DEFAULT) +[0-9]+ +___?stop_scnfoo
#...
+[0-9]+: +[a-f0-9]+ +0 +(NOTYPE|OBJECT) +GLOBAL +DEFAULT +UND +.sizeof.scnfoo
#pass
diff --git a/ld/testsuite/ld-elf/sizeofb.d b/ld/testsuite/ld-elf/sizeofb.d
index ac4a6a4..c7d4edd 100644
--- a/ld/testsuite/ld-elf/sizeofb.d
+++ b/ld/testsuite/ld-elf/sizeofb.d
@@ -7,7 +7,5 @@ Symbol table '\.dynsym' contains [0-9]+ entries:
+Num: +Value +Size Type +Bind +Vis +Ndx Name
+0: 0+ +0 +NOTYPE +LOCAL +DEFAULT +UND +
#...
- +[0-9]+: +[a-f0-9]+ +0 +NOTYPE +LOCAL +DEFAULT +[0-9]+ +___?stop_scnfoo
-#...
- +[0-9]+: 0+10 + +0 +NOTYPE +LOCAL +DEFAULT +ABS +.sizeof.scnfoo
+ +[0-9]+: +[a-f0-9]+ +0 +NOTYPE +GLOBAL +PROTECTED +[0-9]+ +___?stop_scnfoo
#pass
diff --git a/ld/testsuite/ld-elf/startofa.d b/ld/testsuite/ld-elf/startofa.d
index 07d5dda..6a4460f 100644
--- a/ld/testsuite/ld-elf/startofa.d
+++ b/ld/testsuite/ld-elf/startofa.d
@@ -6,7 +6,7 @@ Symbol table '\.symtab' contains [0-9]+ entries:
+Num: +Value +Size Type +Bind +Vis +Ndx Name
+0: 0+ +0 +NOTYPE +LOCAL +DEFAULT +UND +
#...
- +[0-9]+: +[a-f0-9]+ +0 +(NOTYPE|OBJECT) +(LOCAL +DEFAULT +[0-9]+ +___?start_scnfoo|GLOBAL +DEFAULT +UND +.startof.scnfoo)
+ +[0-9]+: +[a-f0-9]+ +0 +(NOTYPE|OBJECT) +GLOBAL +DEFAULT +UND +.startof.scnfoo
#...
- +[0-9]+: +[a-f0-9]+ +0 +(NOTYPE|OBJECT) +GLOBAL +DEFAULT +(UND +.startof.scnfoo|[0-9]+ +___?start_scnfoo)
+ +[0-9]+: +[a-f0-9]+ +0 +(NOTYPE|OBJECT) +GLOBAL +(PROTECTED|DEFAULT) +[0-9]+ +___?start_scnfoo
#pass
diff --git a/ld/testsuite/ld-elf/startofb.d b/ld/testsuite/ld-elf/startofb.d
index 5d659bb..b0cf563 100644
--- a/ld/testsuite/ld-elf/startofb.d
+++ b/ld/testsuite/ld-elf/startofb.d
@@ -7,7 +7,5 @@ Symbol table '\.dynsym' contains [0-9]+ entries:
+Num: +Value +Size Type +Bind +Vis +Ndx Name
+0: 0+ +0 +NOTYPE +LOCAL +DEFAULT +UND +
#...
- +[0-9]+: +[a-f0-9]+ +0 +NOTYPE +LOCAL +DEFAULT +[0-9]+ +.startof.scnfoo
-#...
- +[0-9]+: +[a-f0-9]+ +0 +NOTYPE +LOCAL +DEFAULT +[0-9]+ +___?start_scnfoo
+ +[0-9]+: +[a-f0-9]+ +0 +NOTYPE +GLOBAL +PROTECTED +[0-9]+ +___?start_scnfoo
#pass
diff --git a/ld/testsuite/ld-gc/pr19161.d b/ld/testsuite/ld-gc/pr19161.d
index baee8da..474cbd4 100644
--- a/ld/testsuite/ld-gc/pr19161.d
+++ b/ld/testsuite/ld-gc/pr19161.d
@@ -2,7 +2,7 @@
#source: dummy.s
#ld: --gc-sections -e main tmpdir/pr19161-1.o tmpdir/pr19161-2.o
#nm: --format=bsd
-#xfail: epiphany-*-* frv-*-* hppa-*-* iq2000-*-* lm32-*-* m32c-*-*
+#xfail: epiphany-*-* frv-*-* iq2000-*-* lm32-*-* m32c-*-*
#xfail: mips64vr-*-* msp430-*-* powerpc*-*-eabivle rl78-*-* rx-*-* sh*-*-*
#...
diff --git a/ld/testsuite/ld-gc/pr20022.d b/ld/testsuite/ld-gc/pr20022.d
index 906f73d..40473c2 100644
--- a/ld/testsuite/ld-gc/pr20022.d
+++ b/ld/testsuite/ld-gc/pr20022.d
@@ -9,5 +9,5 @@
#...
\[[ 0-9]+\] _foo[ \t]+PROGBITS[ \t]+[0-9a-f]+ +[0-9a-f]+ +[0-9a-f]+[ \t]+.*
#...
- +[0-9]+: +[0-9a-f]+ +[0-9a-f]+ +NOTYPE +LOCAL +DEFAULT +[0-9]+ +__start__foo
+ +[0-9]+: +[0-9a-f]+ +[0-9a-f]+ +NOTYPE +GLOBAL +PROTECTED +[0-9]+ +__start__foo
#pass
diff --git a/ld/testsuite/ld-gc/start.d b/ld/testsuite/ld-gc/start.d
index 9113b48..18e74c1 100644
--- a/ld/testsuite/ld-gc/start.d
+++ b/ld/testsuite/ld-gc/start.d
@@ -5,5 +5,5 @@
#notarget: *-*-*aout *-*-*oldld frv-*-linux* metag-*-linux*
#...
-[0-9a-f]+ d +__start__foo
+[0-9a-f]+ D +__start__foo
#...
diff --git a/ld/testsuite/ld-i386/i386.exp b/ld/testsuite/ld-i386/i386.exp
index 6c53046..1734d67 100644
--- a/ld/testsuite/ld-i386/i386.exp
+++ b/ld/testsuite/ld-i386/i386.exp
@@ -434,6 +434,8 @@ run_dump_test "property-x86-shstk3a"
run_dump_test "property-x86-shstk3b"
run_dump_test "property-x86-shstk4"
run_dump_test "property-x86-shstk5"
+run_dump_test "pr21884"
+run_dump_test "pr21884-nacl"
if { !([istarget "i?86-*-linux*"]
|| [istarget "i?86-*-gnu*"]
diff --git a/ld/testsuite/ld-i386/pr21884-nacl.d b/ld/testsuite/ld-i386/pr21884-nacl.d
new file mode 100644
index 0000000..82daaaa
--- /dev/null
+++ b/ld/testsuite/ld-i386/pr21884-nacl.d
@@ -0,0 +1,10 @@
+#source: dummy.s
+#as: --32
+#ld: -m elf_i386 -T pr21884-nacl.t -b binary
+#objdump: -b binary -s
+#target: i?86-*-nacl* x86_64-*-nacl*
+
+.*: file format binary
+
+Contents of section .data:
+#pass
diff --git a/ld/testsuite/ld-i386/pr21884-nacl.t b/ld/testsuite/ld-i386/pr21884-nacl.t
new file mode 100644
index 0000000..3ffb56c
--- /dev/null
+++ b/ld/testsuite/ld-i386/pr21884-nacl.t
@@ -0,0 +1,11 @@
+OUTPUT_FORMAT("elf32-i386-nacl");
+OUTPUT_ARCH(i386);
+
+ENTRY(_start);
+SECTIONS {
+ . = 0x10000;
+ _start = . ;
+ .data : {
+ *(.data)
+ }
+}
diff --git a/ld/testsuite/ld-i386/pr21884.d b/ld/testsuite/ld-i386/pr21884.d
new file mode 100644
index 0000000..ea73aa2
--- /dev/null
+++ b/ld/testsuite/ld-i386/pr21884.d
@@ -0,0 +1,10 @@
+#source: dummy.s
+#as: --32
+#ld: -m elf_i386 -T pr21884.t -b binary
+#objdump: -b binary -s
+#notarget: i?86-*-nacl* x86_64-*-nacl*
+
+.*: file format binary
+
+Contents of section .data:
+#pass
diff --git a/ld/testsuite/ld-i386/pr21884.t b/ld/testsuite/ld-i386/pr21884.t
new file mode 100644
index 0000000..4cf8cdc
--- /dev/null
+++ b/ld/testsuite/ld-i386/pr21884.t
@@ -0,0 +1,11 @@
+OUTPUT_FORMAT("elf32-i386");
+OUTPUT_ARCH(i386);
+
+ENTRY(_start);
+SECTIONS {
+ . = 0x10000;
+ _start = . ;
+ .data : {
+ *(.data)
+ }
+}
diff --git a/ld/testsuite/ld-powerpc/powerpc.exp b/ld/testsuite/ld-powerpc/powerpc.exp
index f709b1e..6249ccb 100644
--- a/ld/testsuite/ld-powerpc/powerpc.exp
+++ b/ld/testsuite/ld-powerpc/powerpc.exp
@@ -140,7 +140,7 @@ set ppcelftests {
"tlsopt4_32"}
{"TLS32 DLL" "-shared -melf32ppc --version-script tlsdll.ver" "" "-a32" {tlsdll_32.s}
{} "tlsdll32.so"}
- {"TLS32 opt 5" "-melf32ppc --gc-sections --secure-plt tmpdir/tlsdll32.so" "" "-a32" {tlsopt5_32.s}
+ {"TLS32 opt 5" "-melf32ppc -shared --gc-sections --secure-plt tmpdir/tlsdll32.so" "" "-a32" {tlsopt5_32.s}
{{objdump -dr tlsopt5_32.d}}
"tlsopt5_32"}
{"Shared library with global symbol" "-shared -melf32ppc" "" "-a32" {sdalib.s}
@@ -210,8 +210,8 @@ set ppc64elftests {
"tlsopt4"}
{"TLS DLL" "-shared -melf64ppc --version-script tlsdll.ver" "" "-a64" {tlsdll.s}
{} "tlsdll.so"}
- {"TLS opt 5" "-melf64ppc --gc-sections --no-plt-localentry tmpdir/tlsdll.so" "" "-a64" {tlsopt5.s}
- {{objdump -dr tlsopt5.d}}
+ {"TLS opt 5" "-melf64ppc -shared --gc-sections --no-plt-localentry tmpdir/tlsdll.so" "" "-a64" {tlsopt5.s}
+ {{objdump -dr tlsopt5.d} {readelf -wf tlsopt5.wf}}
"tlsopt5"}
{"sym@tocbase" "-shared -melf64ppc" "" "-a64" {symtocbase-1.s symtocbase-2.s}
{{objdump -dj.data symtocbase.d}} "symtocbase.so"}
diff --git a/ld/testsuite/ld-powerpc/tlsopt1_32.d b/ld/testsuite/ld-powerpc/tlsopt1_32.d
index ec9c7ca..fd0f7eb 100644
--- a/ld/testsuite/ld-powerpc/tlsopt1_32.d
+++ b/ld/testsuite/ld-powerpc/tlsopt1_32.d
@@ -15,7 +15,7 @@ Disassembly of section \.text:
Disassembly of section \.no_opt1:
0+1800098 <\.no_opt1>:
-.*: (38 6d ff f4|f4 ff 6d 38) addi r3,r13,-12
+.*: (38 7e ff f4|f4 ff 7e 38) addi r3,r30,-12
.*: (2c 04 00 00|00 00 04 2c) cmpwi r4,0
.*: (41 82 00 0c|0c 00 82 41) beq .*
.*: (4b ff ff f1|f1 ff ff 4b) bl 1800094 <__tls_get_addr>
diff --git a/ld/testsuite/ld-powerpc/tlsopt1_32.s b/ld/testsuite/ld-powerpc/tlsopt1_32.s
index aba2bbc..79d6662 100644
--- a/ld/testsuite/ld-powerpc/tlsopt1_32.s
+++ b/ld/testsuite/ld-powerpc/tlsopt1_32.s
@@ -2,7 +2,7 @@
# this section should not be optimised since we have old-style
# __tls_get_addr without marker relocs, and the arg setup insn
# is shared with two __tls_get_addr calls.
- addi 3,13,gd@got@tlsgd
+ addi 3,30,gd@got@tlsgd
cmpwi 4,0
beq 0f
bl __tls_get_addr
diff --git a/ld/testsuite/ld-powerpc/tlsopt2_32.d b/ld/testsuite/ld-powerpc/tlsopt2_32.d
index baffe91..7dc1bce 100644
--- a/ld/testsuite/ld-powerpc/tlsopt2_32.d
+++ b/ld/testsuite/ld-powerpc/tlsopt2_32.d
@@ -15,9 +15,9 @@ Disassembly of section \.text:
Disassembly of section \.no_opt2:
0+1800098 <\.no_opt2>:
-.*: (38 6d ff f4|f4 ff 6d 38) addi r3,r13,-12
+.*: (38 7e ff f4|f4 ff 7e 38) addi r3,r30,-12
.*: (2c 04 00 00|00 00 04 2c) cmpwi r4,0
.*: (41 82 00 08|08 00 82 41) beq .*
-.*: (38 6d ff f4|f4 ff 6d 38) addi r3,r13,-12
+.*: (38 7e ff f4|f4 ff 7e 38) addi r3,r30,-12
.*: (4b ff ff ed|ed ff ff 4b) bl 1800094 <__tls_get_addr>
#pass
diff --git a/ld/testsuite/ld-powerpc/tlsopt2_32.s b/ld/testsuite/ld-powerpc/tlsopt2_32.s
index bca1247..8c387d0 100644
--- a/ld/testsuite/ld-powerpc/tlsopt2_32.s
+++ b/ld/testsuite/ld-powerpc/tlsopt2_32.s
@@ -2,9 +2,9 @@
# this section should not be optimised since we have old-style
# __tls_get_addr without marker relocs, and two arg setup insns
# feed into one __tls_get_addr call.
- addi 3,13,gd@got@tlsgd
+ addi 3,30,gd@got@tlsgd
cmpwi 4,0
beq 0f
- addi 3,13,gd@got@tlsgd
+ addi 3,30,gd@got@tlsgd
0:
bl __tls_get_addr
diff --git a/ld/testsuite/ld-powerpc/tlsopt3_32.d b/ld/testsuite/ld-powerpc/tlsopt3_32.d
index 55827a2..2bc999f 100644
--- a/ld/testsuite/ld-powerpc/tlsopt3_32.d
+++ b/ld/testsuite/ld-powerpc/tlsopt3_32.d
@@ -15,9 +15,9 @@ Disassembly of section \.text:
Disassembly of section \.no_opt3:
0+1800098 <\.no_opt3>:
-.*: (38 6d ff ec|ec ff 6d 38) addi r3,r13,-20
+.*: (38 7e ff ec|ec ff 7e 38) addi r3,r30,-20
.*: (48 00 00 0c|0c 00 00 48) b .*
-.*: (38 6d ff f4|f4 ff 6d 38) addi r3,r13,-12
+.*: (38 7e ff f4|f4 ff 7e 38) addi r3,r30,-12
.*: (48 00 00 0c|0c 00 00 48) b .*
.*: (4b ff ff ed|ed ff ff 4b) bl 1800094 <__tls_get_addr>
.*: (48 00 00 08|08 00 00 48) b .*
diff --git a/ld/testsuite/ld-powerpc/tlsopt3_32.s b/ld/testsuite/ld-powerpc/tlsopt3_32.s
index 6432c24..c2b5fcd 100644
--- a/ld/testsuite/ld-powerpc/tlsopt3_32.s
+++ b/ld/testsuite/ld-powerpc/tlsopt3_32.s
@@ -5,9 +5,9 @@ gd0: .space 8
.section ".no_opt3", "ax", %progbits
# this section should also not be optimised
- addi 3,13,gd@got@tlsgd
+ addi 3,30,gd@got@tlsgd
b 0f
- addi 3,13,gd0@got@tlsgd
+ addi 3,30,gd0@got@tlsgd
b 1f
0:
bl __tls_get_addr
diff --git a/ld/testsuite/ld-powerpc/tlsopt4_32.s b/ld/testsuite/ld-powerpc/tlsopt4_32.s
index 9643fcb..762067e 100644
--- a/ld/testsuite/ld-powerpc/tlsopt4_32.s
+++ b/ld/testsuite/ld-powerpc/tlsopt4_32.s
@@ -4,7 +4,7 @@
gd0: .space 8
.section ".opt1", "ax", %progbits
- addi 3,13,gd@got@tlsgd
+ addi 3,30,gd@got@tlsgd
cmpwi 4,0
beq 0f
bl __tls_get_addr(gd@tlsgd)
@@ -14,17 +14,17 @@ gd0: .space 8
1:
.section ".opt2", "ax", %progbits
- addi 3,13,gd@got@tlsgd
+ addi 3,30,gd@got@tlsgd
cmpwi 4,0
beq 0f
- addi 3,13,gd@got@tlsgd
+ addi 3,30,gd@got@tlsgd
0:
bl __tls_get_addr(gd@tlsgd)
.section ".opt3", "ax", %progbits
- addi 3,13,gd@got@tlsgd
+ addi 3,30,gd@got@tlsgd
b 0f
- addi 3,13,gd0@got@tlsgd
+ addi 3,30,gd0@got@tlsgd
b 1f
0:
bl __tls_get_addr(gd@tlsgd)
diff --git a/ld/testsuite/ld-powerpc/tlsopt5.d b/ld/testsuite/ld-powerpc/tlsopt5.d
index b356a2e..3c85185 100644
--- a/ld/testsuite/ld-powerpc/tlsopt5.d
+++ b/ld/testsuite/ld-powerpc/tlsopt5.d
@@ -1,6 +1,6 @@
#source: tlsopt5.s
#as: -a64
-#ld: --gc-sections --no-plt-localentry tlsdll.so
+#ld: -shared --gc-sections --no-plt-localentry tlsdll.so
#objdump: -dr
#target: powerpc64*-*-*
@@ -8,7 +8,7 @@
Disassembly of section \.text:
-0000000010000300 <.*\.plt_call\.__tls_get_addr_opt@@GLIBC_2\.22>:
+0+2c0 <.*\.plt_call\.__tls_get_addr_opt@@GLIBC_2\.22>:
.*: (00 00 63 e9|e9 63 00 00) ld r11,0\(r3\)
.*: (08 00 83 e9|e9 83 00 08) ld r12,8\(r3\)
.*: (78 1b 60 7c|7c 60 1b 78) mr r0,r3
@@ -27,14 +27,14 @@ Disassembly of section \.text:
.*: (a6 03 68 7d|7d 68 03 a6) mtlr r11
.*: (20 00 80 4e|4e 80 00 20) blr
-0000000010000344 <_start>:
+0+304 <_start>:
.*: (08 80 62 38|38 62 80 08) addi r3,r2,-32760
.*: (b9 ff ff 4b|4b ff ff b9) bl .*
.*: (00 00 00 60|60 00 00 00) nop
-.*: (b8 02 01 00|00 00 00 00) .*
-.*: (00 00 00 00|00 01 02 b8) .*
+.*: (f8 02 01 00|00 00 00 00) .*
+.*: (00 00 00 00|00 01 02 f8) .*
-0000000010000358 <__glink_PLTresolve>:
+0+318 <__glink_PLTresolve>:
.*: (a6 02 08 7c|7c 08 02 a6) mflr r0
.*: (05 00 9f 42|42 9f 00 05) bcl .*
.*: (a6 02 68 7d|7d 68 02 a6) mflr r11
@@ -50,5 +50,5 @@ Disassembly of section \.text:
.*: (08 00 6b e9|e9 6b 00 08) ld r11,8\(r11\)
.*: (20 04 80 4e|4e 80 04 20) bctr
-0000000010000390 <__tls_get_addr_opt@plt>:
+0+350 <__tls_get_addr_opt@plt>:
.*: (c8 ff ff 4b|4b ff ff c8) b .*
diff --git a/ld/testsuite/ld-powerpc/tlsopt5.s b/ld/testsuite/ld-powerpc/tlsopt5.s
index 598bbd9..70902ef 100644
--- a/ld/testsuite/ld-powerpc/tlsopt5.s
+++ b/ld/testsuite/ld-powerpc/tlsopt5.s
@@ -1,5 +1,7 @@
.globl _start
_start:
+ .cfi_startproc
addi 3,2,gd@got@tlsgd
bl __tls_get_addr(gd@tlsgd)
nop
+ .cfi_endproc
diff --git a/ld/testsuite/ld-powerpc/tlsopt5.wf b/ld/testsuite/ld-powerpc/tlsopt5.wf
new file mode 100644
index 0000000..05ef7e0
--- /dev/null
+++ b/ld/testsuite/ld-powerpc/tlsopt5.wf
@@ -0,0 +1,32 @@
+Contents of the \.eh_frame section:
+
+0+ 0+10 0+ CIE
+ Version: 1
+ Augmentation: "zR"
+ Code alignment factor: 4
+ Data alignment factor: -8
+ Return address column: 65
+ Augmentation data: 1b
+
+ DW_CFA_def_cfa: r1 ofs 0
+
+0+14 0+14 0+18 FDE cie=0+ pc=0+2c0\.\.0+304
+ DW_CFA_advance_loc: 48 to 0+2f0
+ DW_CFA_offset_extended_sf: r65 at cfa\+8
+ DW_CFA_advance_loc: 16 to 0+300
+ DW_CFA_restore_extended: r65
+
+0+2c 0+18 0+30 FDE cie=0+ pc=0+318\.\.0+354
+ DW_CFA_advance_loc: 4 to 0+31c
+ DW_CFA_register: r65 in r0
+ DW_CFA_advance_loc: 28 to 0+338
+ DW_CFA_restore_extended: r65
+ DW_CFA_nop
+ DW_CFA_nop
+ DW_CFA_nop
+ DW_CFA_nop
+
+0+48 0+10 0+4c FDE cie=0+ pc=0+304\.\.0+310
+ DW_CFA_nop
+ DW_CFA_nop
+ DW_CFA_nop
diff --git a/ld/testsuite/ld-powerpc/tlsopt5_32.d b/ld/testsuite/ld-powerpc/tlsopt5_32.d
index 9749248..64acf10 100644
--- a/ld/testsuite/ld-powerpc/tlsopt5_32.d
+++ b/ld/testsuite/ld-powerpc/tlsopt5_32.d
@@ -1,6 +1,6 @@
#source: tlsopt5_32.s
#as: -a32
-#ld: --gc-sections --secure-plt tlsdll32.so
+#ld: -shared --gc-sections --secure-plt tlsdll32.so
#objdump: -dr
#target: powerpc*-*-*
@@ -8,12 +8,25 @@
Disassembly of section \.text:
-01800230 <_start>:
-.*: (f8 ff 6d 38|38 6d ff f8) addi r3,r13,-8
-.*: (0d 00 00 48|48 00 00 0d) bl 1800240 <__tls_get_addr_opt@plt>
- \.\.\.
+0+200 <_start>:
+.*: (f0 ff 21 94|94 21 ff f0) stwu r1,-16\(r1\)
+.*: (a6 02 08 7c|7c 08 02 a6) mflr r0
+.*: (05 00 9f 42|42 9f 00 05) bcl .*
+.*: (08 00 c1 93|93 c1 00 08) stw r30,8\(r1\)
+.*: (a6 02 c8 7f|7f c8 02 a6) mflr r30
+.*: (01 00 de 3f|3f de 00 01) addis r30,r30,1
+.*: (14 00 01 90|90 01 00 14) stw r0,20\(r1\)
+.*: (7c 01 de 3b|3b de 01 7c) addi r30,r30,380
+.*: (f8 ff 7e 38|38 7e ff f8) addi r3,r30,-8
+.*: (1d 00 00 48|48 00 00 1d) bl 240 <.*__tls_get_addr_opt.*>
+.*: (14 00 01 80|80 01 00 14) lwz r0,20\(r1\)
+.*: (08 00 c1 83|83 c1 00 08) lwz r30,8\(r1\)
+.*: (a6 03 08 7c|7c 08 03 a6) mtlr r0
+.*: (10 00 21 38|38 21 00 10) addi r1,r1,16
+.*: (20 00 80 4e|4e 80 00 20) blr
+.*
-01800240 <__tls_get_addr_opt@plt>:
+0+240 <.*__tls_get_addr_opt.*>:
.*: (00 00 63 81|81 63 00 00) lwz r11,0\(r3\)
.*: (04 00 83 81|81 83 00 04) lwz r12,4\(r3\)
.*: (78 1b 60 7c|7c 60 1b 78) mr r0,r3
@@ -22,31 +35,31 @@ Disassembly of section \.text:
.*: (20 00 82 4d|4d 82 00 20) beqlr
.*: (78 03 03 7c|7c 03 03 78) mr r3,r0
.*: (00 00 00 60|60 00 00 00) nop
-.*: (81 01 60 3d|3d 60 01 81) lis r11,385
-.*: (9c 03 6b 81|81 6b 03 9c) lwz r11,924\(r11\)
+.*: (0c 00 7e 81|81 7e 00 0c) lwz r11,12\(r30\)
.*: (a6 03 69 7d|7d 69 03 a6) mtctr r11
.*: (20 04 80 4e|4e 80 04 20) bctr
+.*: (00 00 00 60|60 00 00 00) nop
-01800270 <__glink>:
+0+270 <__glink>:
.*: (00 00 00 60|60 00 00 00) nop
.*: (00 00 00 60|60 00 00 00) nop
.*: (00 00 00 60|60 00 00 00) nop
.*: (00 00 00 60|60 00 00 00) nop
-01800280 <__glink_PLTresolve>:
-.*: (81 01 80 3d|3d 80 01 81) lis r12,385
-.*: (80 fe 6b 3d|3d 6b fe 80) addis r11,r11,-384
-.*: (94 03 0c 80|80 0c 03 94) lwz r0,916\(r12\)
-.*: (90 fd 6b 39|39 6b fd 90) addi r11,r11,-624
+0+280 <__glink_PLTresolve>:
+.*: (00 00 6b 3d|3d 6b 00 00) addis r11,r11,0
+.*: (a6 02 08 7c|7c 08 02 a6) mflr r0
+.*: (05 00 9f 42|42 9f 00 05) bcl .*
+.*: (1c 00 6b 39|39 6b 00 1c) addi r11,r11,28
+.*: (a6 02 88 7d|7d 88 02 a6) mflr r12
+.*: (a6 03 08 7c|7c 08 03 a6) mtlr r0
+.*: (50 58 6c 7d|7d 6c 58 50) subf r11,r12,r11
+.*: (01 00 8c 3d|3d 8c 00 01) addis r12,r12,1
+.*: (00 01 0c 80|80 0c 01 00) lwz r0,256\(r12\)
+.*: (04 01 8c 81|81 8c 01 04) lwz r12,260\(r12\)
.*: (a6 03 09 7c|7c 09 03 a6) mtctr r0
.*: (14 5a 0b 7c|7c 0b 5a 14) add r0,r11,r11
-.*: (98 03 8c 81|81 8c 03 98) lwz r12,920\(r12\)
.*: (14 5a 60 7d|7d 60 5a 14) add r11,r0,r11
.*: (20 04 80 4e|4e 80 04 20) bctr
.*: (00 00 00 60|60 00 00 00) nop
.*: (00 00 00 60|60 00 00 00) nop
-.*: (00 00 00 60|60 00 00 00) nop
-.*: (00 00 00 60|60 00 00 00) nop
-.*: (00 00 00 60|60 00 00 00) nop
-.*: (00 00 00 60|60 00 00 00) nop
-.*: (00 00 00 60|60 00 00 00) nop
diff --git a/ld/testsuite/ld-powerpc/tlsopt5_32.s b/ld/testsuite/ld-powerpc/tlsopt5_32.s
index 36b4858..d07b742 100644
--- a/ld/testsuite/ld-powerpc/tlsopt5_32.s
+++ b/ld/testsuite/ld-powerpc/tlsopt5_32.s
@@ -1,4 +1,18 @@
.globl _start
_start:
- addi 3,13,gd@got@tlsgd
- bl __tls_get_addr(gd@tlsgd)
+ stwu 1,-16(1)
+ mflr 0
+ bcl 20,31,.L2
+.L2:
+ stw 30,8(1)
+ mflr 30
+ addis 30,30,_GLOBAL_OFFSET_TABLE_-.L2@ha
+ stw 0,20(1)
+ addi 30,30,_GLOBAL_OFFSET_TABLE_-.L2@l
+ addi 3,30,gd@got@tlsgd
+ bl __tls_get_addr(gd@tlsgd)@plt
+ lwz 0,20(1)
+ lwz 30,8(1)
+ mtlr 0
+ addi 1,1,16
+ blr
diff --git a/ld/testsuite/ld-unique/pr21529.d b/ld/testsuite/ld-unique/pr21529.d
index bc4763d..ffc1a72 100644
--- a/ld/testsuite/ld-unique/pr21529.d
+++ b/ld/testsuite/ld-unique/pr21529.d
@@ -1,5 +1,6 @@
#ld: --oformat binary -T pr21529.ld -e main
#objdump: -s -b binary
-#xfail: aarch64*-*-* arm*-*-* hppa-*-* ia64-*-* nds32*-*-* score-*-*
+#notarget: aarch64*-*-* arm*-*-* avr-*-* ia64-*-* m68hc1*-*-* nds32*-*-* score-*-*
+# Skip targets which can't change output format to binary.
#pass
diff --git a/ld/testsuite/ld-x86-64/pr21884-nacl.d b/ld/testsuite/ld-x86-64/pr21884-nacl.d
new file mode 100644
index 0000000..8883505
--- /dev/null
+++ b/ld/testsuite/ld-x86-64/pr21884-nacl.d
@@ -0,0 +1,10 @@
+#source: dummy.s
+#as: --64
+#ld: -m elf_x86_64 -T pr21884-nacl.t -b binary
+#objdump: -b binary -s
+#target: x86_64-*-nacl*
+
+.*: file format binary
+
+Contents of section .data:
+#pass
diff --git a/ld/testsuite/ld-x86-64/pr21884-nacl.t b/ld/testsuite/ld-x86-64/pr21884-nacl.t
new file mode 100644
index 0000000..722312e
--- /dev/null
+++ b/ld/testsuite/ld-x86-64/pr21884-nacl.t
@@ -0,0 +1,11 @@
+OUTPUT_FORMAT("elf64-x86-64-nacl");
+OUTPUT_ARCH(i386:x86-64);
+
+ENTRY(_start);
+SECTIONS {
+ . = 0x10000;
+ _start = . ;
+ .data : {
+ *(.data)
+ }
+}
diff --git a/ld/testsuite/ld-x86-64/pr21884.d b/ld/testsuite/ld-x86-64/pr21884.d
new file mode 100644
index 0000000..7a2a3f3
--- /dev/null
+++ b/ld/testsuite/ld-x86-64/pr21884.d
@@ -0,0 +1,10 @@
+#source: dummy.s
+#as: --64
+#ld: -m elf_x86_64 -T pr21884.t -b binary
+#objdump: -b binary -s
+#notarget: x86_64-*-nacl*
+
+.*: file format binary
+
+Contents of section .data:
+#pass
diff --git a/ld/testsuite/ld-x86-64/pr21884.t b/ld/testsuite/ld-x86-64/pr21884.t
new file mode 100644
index 0000000..edd2070
--- /dev/null
+++ b/ld/testsuite/ld-x86-64/pr21884.t
@@ -0,0 +1,11 @@
+OUTPUT_FORMAT("elf64-x86-64");
+OUTPUT_ARCH(i386:x86-64);
+
+ENTRY(_start);
+SECTIONS {
+ . = 0x10000;
+ _start = . ;
+ .data : {
+ *(.data)
+ }
+}
diff --git a/ld/testsuite/ld-x86-64/x86-64.exp b/ld/testsuite/ld-x86-64/x86-64.exp
index c582582..13c68b8 100644
--- a/ld/testsuite/ld-x86-64/x86-64.exp
+++ b/ld/testsuite/ld-x86-64/x86-64.exp
@@ -365,6 +365,8 @@ run_dump_test "property-x86-shstk4"
run_dump_test "property-x86-shstk4-x32"
run_dump_test "property-x86-shstk5"
run_dump_test "property-x86-shstk5-x32"
+run_dump_test "pr21884"
+run_dump_test "pr21884-nacl"
if { ![istarget "x86_64-*-linux*"] && ![istarget "x86_64-*-nacl*"]} {
return
diff --git a/opcodes/ChangeLog b/opcodes/ChangeLog
index f48c01e..f13e503 100644
--- a/opcodes/ChangeLog
+++ b/opcodes/ChangeLog
@@ -1,3 +1,22 @@
+2017-08-09 Jiong Wang <jiong.wang@arm.com>
+
+ * arm-dis.c (thumb32_opcodes): Use format 'R' instead of 'S' for
+ register operands in CRC instructions.
+ (print_insn_thumb32): Remove "<bitfield>S" support. Updated the
+ comments.
+
+2017-08-01 Andreas Krebbel <krebbel@linux.vnet.ibm.com>
+
+ Backport from mainline
+ 2017-07-21 Andreas Krebbel <krebbel@linux.vnet.ibm.com>
+
+ * s390-mkopc.c (main): Enable z14 as CPU string in the opcode
+ table.
+
+2017-07-24 Tristan Gingold <gingold@adacore.com>
+
+ * configure: Regenerate.
+
2017-07-24 Tristan Gingold <gingold@adacore.com>
* configure: Regenerate.
diff --git a/opcodes/arm-dis.c b/opcodes/arm-dis.c
index 2500004..59a5978 100644
--- a/opcodes/arm-dis.c
+++ b/opcodes/arm-dis.c
@@ -2699,7 +2699,6 @@ static const struct opcode16 thumb_opcodes[] =
%<bitfield>W print bitfield*4 in decimal
%<bitfield>r print bitfield as an ARM register
%<bitfield>R as %<>r but r15 is UNPREDICTABLE
- %<bitfield>S as %<>R but r13 is UNPREDICTABLE
%<bitfield>c print bitfield as a condition code
%<bitfield>'c print specified char iff bitfield is all ones
@@ -2767,17 +2766,17 @@ static const struct opcode32 thumb32_opcodes[] =
/* CRC32 instructions. */
{ARM_FEATURE_COPROC (CRC_EXT_ARMV8),
- 0xfac0f080, 0xfff0f0f0, "crc32b\t%8-11S, %16-19S, %0-3S"},
+ 0xfac0f080, 0xfff0f0f0, "crc32b\t%8-11R, %16-19R, %0-3R"},
{ARM_FEATURE_COPROC (CRC_EXT_ARMV8),
- 0xfac0f090, 0xfff0f0f0, "crc32h\t%9-11S, %16-19S, %0-3S"},
+ 0xfac0f090, 0xfff0f0f0, "crc32h\t%9-11R, %16-19R, %0-3R"},
{ARM_FEATURE_COPROC (CRC_EXT_ARMV8),
- 0xfac0f0a0, 0xfff0f0f0, "crc32w\t%8-11S, %16-19S, %0-3S"},
+ 0xfac0f0a0, 0xfff0f0f0, "crc32w\t%8-11R, %16-19R, %0-3R"},
{ARM_FEATURE_COPROC (CRC_EXT_ARMV8),
- 0xfad0f080, 0xfff0f0f0, "crc32cb\t%8-11S, %16-19S, %0-3S"},
+ 0xfad0f080, 0xfff0f0f0, "crc32cb\t%8-11R, %16-19R, %0-3R"},
{ARM_FEATURE_COPROC (CRC_EXT_ARMV8),
- 0xfad0f090, 0xfff0f0f0, "crc32ch\t%8-11S, %16-19S, %0-3S"},
+ 0xfad0f090, 0xfff0f0f0, "crc32ch\t%8-11R, %16-19R, %0-3R"},
{ARM_FEATURE_COPROC (CRC_EXT_ARMV8),
- 0xfad0f0a0, 0xfff0f0f0, "crc32cw\t%8-11S, %16-19S, %0-3S"},
+ 0xfad0f0a0, 0xfff0f0f0, "crc32cw\t%8-11R, %16-19R, %0-3R"},
/* V7 instructions. */
{ARM_FEATURE_CORE_LOW (ARM_EXT_V7), 0xf910f000, 0xff70f000, "pli%c\t%a"},
@@ -5987,10 +5986,6 @@ print_insn_thumb32 (bfd_vma pc, struct disassemble_info *info, long given)
value_in_comment = val * 4;
break;
- case 'S':
- if (val == 13)
- is_unpredictable = TRUE;
- /* Fall through. */
case 'R':
if (val == 15)
is_unpredictable = TRUE;
diff --git a/opcodes/configure b/opcodes/configure
index 2bedc8d..fda599a 100755
--- a/opcodes/configure
+++ b/opcodes/configure
@@ -1,6 +1,6 @@
#! /bin/sh
# Guess values for system-dependent variables and create Makefiles.
-# Generated by GNU Autoconf 2.64 for opcodes 2.29.
+# Generated by GNU Autoconf 2.64 for opcodes 2.29.0.
#
# Copyright (C) 1992, 1993, 1994, 1995, 1996, 1998, 1999, 2000, 2001,
# 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009 Free Software
@@ -556,8 +556,8 @@ MAKEFLAGS=
# Identity of this package.
PACKAGE_NAME='opcodes'
PACKAGE_TARNAME='opcodes'
-PACKAGE_VERSION='2.29'
-PACKAGE_STRING='opcodes 2.29'
+PACKAGE_VERSION='2.29.0'
+PACKAGE_STRING='opcodes 2.29.0'
PACKAGE_BUGREPORT=''
PACKAGE_URL=''
@@ -1322,7 +1322,7 @@ if test "$ac_init_help" = "long"; then
# Omit some internal or obsolete options to make the list less imposing.
# This message is too long to be a string in the A/UX 3.1 sh.
cat <<_ACEOF
-\`configure' configures opcodes 2.29 to adapt to many kinds of systems.
+\`configure' configures opcodes 2.29.0 to adapt to many kinds of systems.
Usage: $0 [OPTION]... [VAR=VALUE]...
@@ -1393,7 +1393,7 @@ fi
if test -n "$ac_init_help"; then
case $ac_init_help in
- short | recursive ) echo "Configuration of opcodes 2.29:";;
+ short | recursive ) echo "Configuration of opcodes 2.29.0:";;
esac
cat <<\_ACEOF
@@ -1500,7 +1500,7 @@ fi
test -n "$ac_init_help" && exit $ac_status
if $ac_init_version; then
cat <<\_ACEOF
-opcodes configure 2.29
+opcodes configure 2.29.0
generated by GNU Autoconf 2.64
Copyright (C) 2009 Free Software Foundation, Inc.
@@ -1910,7 +1910,7 @@ cat >config.log <<_ACEOF
This file contains any messages produced by compilers while
running configure, to aid debugging if configure makes a mistake.
-It was created by opcodes $as_me 2.29, which was
+It was created by opcodes $as_me 2.29.0, which was
generated by GNU Autoconf 2.64. Invocation command line was
$ $0 $@
@@ -3719,7 +3719,7 @@ fi
# Define the identity of the package.
PACKAGE='opcodes'
- VERSION='2.29'
+ VERSION='2.29.0'
cat >>confdefs.h <<_ACEOF
@@ -13307,7 +13307,7 @@ cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1
# report actual input values of CONFIG_FILES etc. instead of their
# values after options handling.
ac_log="
-This file was extended by opcodes $as_me 2.29, which was
+This file was extended by opcodes $as_me 2.29.0, which was
generated by GNU Autoconf 2.64. Invocation command line was
CONFIG_FILES = $CONFIG_FILES
@@ -13371,7 +13371,7 @@ Report bugs to the package provider."
_ACEOF
cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1
ac_cs_version="\\
-opcodes config.status 2.29
+opcodes config.status 2.29.0
configured by $0, generated by GNU Autoconf 2.64,
with options \\"`$as_echo "$ac_configure_args" | sed 's/^ //; s/[\\""\`\$]/\\\\&/g'`\\"
diff --git a/opcodes/s390-mkopc.c b/opcodes/s390-mkopc.c
index 0d4c9df..20c1539 100644
--- a/opcodes/s390-mkopc.c
+++ b/opcodes/s390-mkopc.c
@@ -374,7 +374,8 @@ main (void)
else if (strcmp (cpu_string, "z13") == 0
|| strcmp (cpu_string, "arch11") == 0)
min_cpu = S390_OPCODE_Z13;
- else if (strcmp (cpu_string, "arch12") == 0)
+ else if (strcmp (cpu_string, "z14") == 0
+ || strcmp (cpu_string, "arch12") == 0)
min_cpu = S390_OPCODE_ARCH12;
else {
fprintf (stderr, "Couldn't parse cpu string %s\n", cpu_string);