diff options
Diffstat (limited to 'bfd')
130 files changed, 26870 insertions, 13469 deletions
diff --git a/bfd/ChangeLog b/bfd/ChangeLog index f7363ba..1df9691 100644 --- a/bfd/ChangeLog +++ b/bfd/ChangeLog @@ -1,3 +1,1488 @@ +2017-09-22 H.J. Lu <hongjiu.lu@intel.com> + + PR ld/22163 + * elfxx-x86.c (_bfd_x86_elf_get_synthetic_symtab): Also return + -1 if bfd_canonicalize_dynamic_reloc returns 0. + +2017-09-22 Pedro Alves <palves@redhat.com> + Alan Modra <amodra@gmail.com> + + * version.h: Add comment. + +2017-09-21 Andreas Arnez <arnez@linux.vnet.ibm.com> + + * elf.c (elfcore_grok_note): For the cases NT_S390_GS_CB and + NT_S390_GS_BC, correct the previously swapped invocations of + elfcore_grok_s390_gs_bc and elfcore_grok_s390_gs_cb. + +2017-09-19 Alan Modra <amodra@gmail.com> + + PR 21441 + * elf64-ppc.c (ppc64_elf_build_stubs): Don't check glink_eh_frame + size. + +2017-09-19 Alan Modra <amodra@gmail.com> + + PR 22150 + * elflink.c (bfd_elf_size_dynamic_sections): Garbage collect + symbols before calculating verrefs. Don't renumber dynsyms + after gc. Exclude .gnu.version when zero or one dynsym. + Localize some vars and reindent. + +2017-09-18 H.J. Lu <hongjiu.lu@intel.com> + + PR ld/22148 + * elfxx-x86.c (_bfd_x86_elf_get_synthetic_symtab): Check error + return from bfd_canonicalize_dynamic_reloc. + +2017-09-15 Alan Modra <amodra@gmail.com> + + PR 22116 + * archive.c (bfd_ar_hdr_from_filesystem): Detect when status.st_size + overflows bfd_size_type. + +2017-09-14 H.J. Lu <hongjiu.lu@intel.com> + + PR ld/22135 + * elf32-i386.c (elf_i386_convert_load_reloc): Add an argument + to indicate if conversion is performed. + (elf_i386_check_relocs): Cache section contents and relocations + if conversion is performed. + * elf64-x86-64.c (elf_x86_64_check_relocs): Cache section + contents and relocations if conversion is performed. + +2017-09-14 Nick Clifton <nickc@redhat.com> + + PR binutils/22113 + * peXXigen.c (pe_print_idata): Extend check for HintName vector + entries. + +2017-09-13 H.J. Lu <hongjiu.lu@intel.com> + + * elfxx-x86.h: Fix a typo in comments. + +2017-09-09 Kamil Rytarowski <n54@gmx.com> + + * elf32-nds32.c: Rename __BIT() to N32_BIT(). + +2017-09-09 Alan Modra <amodra@gmail.com> + + * elf64-ppp.c (plt_stub_pad): Handle positive and negative + plt_stub_align. + +2017-09-09 H.J. Lu <hongjiu.lu@intel.com> + + * elf32-i386.c (elf_i386_relocate_section): Update usage of + UNDEFINED_WEAK_RESOLVED_TO_ZERO. + (elf_i386_finish_dynamic_symbol): Likewise. + * elf64-x86-64.c (elf_x86_64_relocate_section): Likewise. + (elf_x86_64_finish_dynamic_symbol): Likewise. + * elfxx-x86.c (elf_x86_allocate_dynrelocs): Likewise. + (_bfd_x86_elf_fixup_symbol): Likewise. + +2017-09-09 H.J. Lu <hongjiu.lu@intel.com> + + * elfxx-x86.c (_bfd_x86_elf_link_symbol_references_local): Don't + check has_non_got_reloc. + +2017-09-09 H.J. Lu <hongjiu.lu@intel.com> + + PR ld/22115 + * elf32-i386.c (elf_i386_convert_load_reloc): Check linker_def. + Don't use UNDEFINED_WEAK_RESOLVED_TO_ZERO. + * elf64-x86-64.c (elf_x86_64_convert_load_reloc): Check + linker_def. Don't use UNDEFINED_WEAK_RESOLVED_TO_ZERO. + * elfxx-x86.c (_bfd_x86_elf_link_check_relocs): Set local_ref + and linker_def on __ehdr_start if it is referenced and not + defined. + (_bfd_x86_elf_link_symbol_references_local): Also set local_ref + and return TRUE when building executable, if a symbol has + non-GOT/non-PLT relocations in text section or there is no + dynamic linker. + * elfxx-x86.h (elf_x86_link_hash_entry): Add linker_def. + +2017-09-08 H.J. Lu <hongjiu.lu@intel.com> + + * elfxx-x86.h: Update comments. + +2017-09-08 H.J. Lu <hongjiu.lu@intel.com> + + * elf32-i386.c (elf_i386_link_setup_gnu_properties): Replace + elf_x86_plt_layout_table with elf_x86_init_table. + * elf64-x86-64.c (elf_x86_64_link_setup_gnu_properties): + Likewise. + * elfxx-x86.c (_bfd_x86_elf_link_setup_gnu_properties): + Likewise. + * elfxx-x86.h (elf_x86_plt_layout_table): Renamed to ... + (elf_x86_init_table): This. + (_bfd_x86_elf_link_setup_gnu_properties): Replace + elf_x86_plt_layout_table with elf_x86_init_table. + +2017-09-07 H.J. Lu <hongjiu.lu@intel.com> + + * configure.ac (bfd_backends): Don't add elf64-x86-64.lo nor + elf64.lo together with elfxx-x86.lo for 64-bit BFD. + * configure: Regenerated. + * elf32-i386.c (elf_i386_link_setup_gnu_properties): Set r_info + and r_sym fields of plt_layout. + * elf64-x86-64.c (elf_x86_64_link_setup_gnu_properties): + Likewise. + * elfxx-x86.c (elf_x86_64_is_reloc_section): Remove BFD64 check. + (_bfd_x86_elf_link_hash_table_create): Likewise. Don't set + r_info nor r_sym fields. + (_bfd_x86_elf_link_setup_gnu_properties): Set r_info and r_sym + fields of htab. + * elfxx-x86.h (elf_x86_plt_layout_table): Add r_info and r_sym. + +2017-09-07 Palmer Dabbelt <palmer@dabbelt.com> + + * (_bfd_riscv_relax_align): Call bfd_set_error and + print an error message when unable to relax a .align directive. + +2017-09-07 Palmer Dabbelt <palmer@dabbelt.com> + + * elfnn-riscv.c (riscv_zero_pcrel_hi_reloc): New function. + (riscv_record_pcrel_hi_reloc): Add absolute argument. + (riscv_elf_relocate_section): Call riscv_zero_pcrel_hi_reloc for + R_RISCV_PCREL_HI20 relocs, and pass the result to + riscv_record_pcrel_hi_reloc. + +2017-09-07 H.J. Lu <hongjiu.lu@intel.com> + + * elf32-i386.c (elf_i386_convert_load_reloc): Add an argument, + r_type_p. Remove the converted argument. Replace + SYMBOL_REFERENCES_LOCAL with SYMBOL_REFERENCES_LOCAL_P. Return + the new relocation type via r_type_p. + (elf_i386_relocate_section): Likewise. + (elf_i386_finish_dynamic_symbol): Likewise. + (need_convert_load): Removed. + (check_relocs_failed): Updated. + (elf_i386_check_relocs): Call elf_i386_convert_load_reloc, + instead of setting need_convert_load. + (_bfd_i386_elf_convert_load): Removed. + * elf64-x86-64.c (need_convert_load): Removed. + (check_relocs_failed): Updated. + (elf_x86_64_convert_load_reloc): Add an argument, r_type_p. + Replace SYMBOL_REFERENCES_LOCAL with SYMBOL_REFERENCES_LOCAL_P. + Return the new relocation type via r_type_p. + (elf_x86_64_check_relocs): Call elf_x86_64_convert_load_reloc, + instead of setting need_convert_load. + (elf_x86_64_check_relocs): Don't check PIC if relocation has + been converted. + (_bfd_x86_64_elf_convert_load): Removed. + (elf_x86_64_relocate_section): Replace SYMBOL_REFERENCES_LOCAL + with SYMBOL_REFERENCES_LOCAL_P. + (elf_x86_64_finish_dynamic_symbol): Likewise. + * elfxx-x86.c (_bfd_x86_elf_link_hash_table_create): Don't + set convert_load. + (_bfd_x86_elf_size_dynamic_sections): Don't call convert_load. + (_bfd_x86_elf_link_symbol_references_local): New function. + * elfxx-x86.h (SYMBOL_REFERENCES_LOCAL_P): New. + (UNDEFINED_WEAK_RESOLVED_TO_ZERO): Replace elf.forced_local with + SYMBOL_REFERENCES_LOCAL_P. + (elf_x86_link_hash_entry): Add local_ref. + (elf_x86_link_hash_table): Remove convert_load. + (_bfd_i386_elf_convert_load): Removed. + (_bfd_x86_64_elf_convert_load): Likewise. + (_bfd_x86_elf_link_symbol_references_local): New. + +2017-09-06 H.J. Lu <hongjiu.lu@intel.com> + + * elf64-x86-64.c (R_X86_64_converted_reloc_bit): New. + (elf_x86_64_info_to_howto): Get the real relocation type by + masking out R_X86_64_converted_reloc_bit. + (elf_x86_64_check_tls_transition): Get the real relocation type + by masking out R_X86_64_converted_reloc_bit. + (elf_x86_64_convert_load_reloc): Set R_X86_64_converted_reloc_bit + instead of setting converted_reloc. + (elf_x86_64_relocate_section): Check R_X86_64_converted_reloc_bit + instead of converted_reloc. Get the real relocation type by + masking out R_X86_64_converted_reloc_bit. + (elf_x86_64_link_setup_gnu_properties): Verify that the value of + R_X86_64_converted_reloc_bit is valid. + * elfxx-x86.h (converted_reloc): Removed. + +2017-09-06 H.J. Lu <hongjiu.lu@intel.com> + + * elf32-i386.c (elf_i386_relocate_section): Don't change r_type + when calling elf_i386_tls_transition. Don't use ELF32_R_TYPE + to get the relocation type again. + * elf64-x86-64.c (elf_x86_64_relocate_section): Don't change + r_type when calling elf_x86_64_tls_transition. Don't use + ELF32_R_TYPE to get the relocation type again. + +2017-09-05 H.J. Lu <hongjiu.lu@intel.com> + + * elf64-x86-64.c (elf_x86_64_convert_load_reloc): Properly set + converted_reloc. + +2017-09-05 H.J. Lu <hongjiu.lu@intel.com> + + * elf64-x86-64.c (elf_x86_64_convert_load_reloc): Remove the sec + argument. Don't check relocation overflow. Avoid relocation + overflow if --no-relax is used. Set converted_reloc on symbol + if a GOTPCREL relocation is converted. + (elf_x86_64_relocate_section): Issue a fatal error and suggest + --no-relax if GOTPCREL relocation conversion leads to relocation + overflow. + * elfxx-x86.h (elf_x86_link_hash_entry): Add converted_reloc. + +2017-09-05 Alexander Fedotov <alexander.fedotov@nxp.com> + Edmar Wienskoski <edmar.wienskoski@nxp.com + + * elf32-ppc.c (ppc_elf_howto_raw): Add R_PPC_VLE_ADDR20. + (ppc_elf_check_relocs): Handle it. + (ppc_elf_vle_split20): New function. + (ppc_elf_relocate_section): Handle R_PPC_VLE_ADDR20. + +2017-09-03 H.J. Lu <hongjiu.lu@intel.com> + + PR ld/22071 + * elfxx-x86.c (elf_x86_allocate_dynrelocs): Set tlsdesc_plt + for x86-64 if GOT_TLS_GDESC_P is true. + +2017-09-03 Alan Modra <amodra@gmail.com> + + PR 22067 + * elfxx-x86.h (elf_x86_hash_table): Check is_elf_hash_table first. + +2017-09-02 H.J. Lu <hongjiu.lu@intel.com> + + * elfxx-x86.c (_bfd_x86_elf_link_hash_table_create): Initialize + tls_get_addr for x86-64 in one place. + +2017-09-02 H.J. Lu <hongjiu.lu@intel.com> + + * configure.ac (bfd_backends): Add elf64-x86-64.lo together + with elfxx-x86.lo for 64-bit BFD. + * configure: Regenerated. + +2017-09-02 H.J. Lu <hongjiu.lu@intel.com> + + * elf32-i386.c (elf_i386_convert_load): Renamed to ... + (_bfd_i386_elf_convert_load): This. Remove static. + (elf_i386_size_dynamic_sections): Removed. + (elf_backend_size_dynamic_sections): Likewise. + * elf64-x86-64.c (elf_x86_64_convert_load): Renamed to ... + (_bfd_x86_64_elf_convert_load): This. Remove static. + (elf_x86_64_size_dynamic_sections): Removed. + (elf_backend_size_dynamic_sections): Likewise. + * elfxx-x86.c (_bfd_x86_elf_allocate_dynrelocs): Renamed to ... + (elf_x86_allocate_dynrelocs): This. Make it static. + (_bfd_x86_elf_allocate_local_dynrelocs): Renamed to ... + (elf_x86_allocate_local_dynreloc): This. Make it static. + (elf_i386_is_reloc_section): New function. + (elf_x86_64_is_reloc_section): Likewise. + (_bfd_x86_elf_link_hash_table_create): Initialize convert_load, + is_reloc_section, dt_reloc, dt_reloc_sz and dt_reloc_ent. + Rearrange got_entry_size initialization. + (_bfd_x86_elf_size_dynamic_sections): New function. + * elfxx-x86.h (elf_x86_link_hash_table): Add convert_load, + is_reloc_section, dt_reloc, dt_reloc_sz and dt_reloc_ent. + (_bfd_i386_elf_convert_load): New. + (_bfd_x86_64_elf_convert_load): Likewise. + (_bfd_x86_elf_size_dynamic_sections): Likewise. + (elf_backend_size_dynamic_sections): Likewise. + (_bfd_x86_elf_allocate_dynrelocs): Removed. + (_bfd_x86_elf_allocate_local_dynrelocs): Likewise. + +2017-09-02 H.J. Lu <hongjiu.lu@intel.com> + + * elfxx-x86.h (elf_x86_link_hash_table): Rearrange fields and + update comments. + +2017-09-02 H.J. Lu <hongjiu.lu@intel.com> + + * elf32-i386.c (elf_i386_size_dynamic_sections): Set + sgotplt_jump_table_size with elf_x86_compute_jump_table_size. + +2017-09-02 H.J. Lu <hongjiu.lu@intel.com> + + * elf32-i386.c (PLT_CIE_LENGTH, PLT_FDE_LENGTH, + PLT_FDE_START_OFFSET, PLT_FDE_LEN_OFFSET): Moved to ... + * elfxx-x86.h (PLT_CIE_LENGTH, PLT_FDE_LENGTH, + PLT_FDE_START_OFFSET, PLT_FDE_LEN_OFFSET): Here. + * elf64-x86-64.c (PLT_CIE_LENGTH, PLT_FDE_LENGTH, + PLT_FDE_START_OFFSET, PLT_FDE_LEN_OFFSET): Removed. + +2017-09-02 H.J. Lu <hongjiu.lu@intel.com> + + * elf32-i386.c (elf_i386_allocate_dynrelocs): Removed. + (elf_i386_allocate_local_dynrelocs): Likewise. + (elf_i386_size_dynamic_sections): Replace + elf_i386_allocate_dynrelocs/elf_i386_allocate_local_dynrelocs + with _bfd_x86_elf_allocate_dynrelocs and + _bfd_x86_elf_allocate_local_dynrelocs. + * elf64-x86-64.c (elf_x86_64_allocate_dynrelocs): Removed. + (elf_x86_64_allocate_local_dynrelocs): Likewise. + (elf_x86_64_size_dynamic_sections): Replace + elf_x86_64_allocate_dynrelocs/elf_x86_64_allocate_local_dynrelocs + with _bfd_x86_elf_allocate_dynrelocs and + _bfd_x86_elf_allocate_local_dynrelocs. + * elfxx-x86.c (_bfd_x86_elf_allocate_dynrelocs): New function. + (_bfd_x86_elf_allocate_local_dynrelocs): Likewise. + * elfxx-x86.h (_bfd_x86_elf_allocate_dynrelocs): New prototype. + (_bfd_x86_elf_allocate_local_dynrelocs): Likewise. + +2017-09-02 H.J. Lu <hongjiu.lu@intel.com> + + * elf32-i386.c (is_i386_elf): Removed. + (elf_i386_check_relocs): Replace is_i386_elf with is_x86_elf. + (elf_i386_size_dynamic_sections): Likewise. + (elf_i386_relocate_section): Likewise. + * elf64-x86-64.c (is_x86_64_elf): Removed. + (elf_x86_64_check_relocs): Replace is_x86_64_elf with + is_x86_elf. + (elf_x86_64_size_dynamic_sections): Likewise. + (elf_x86_64_relocate_section): Likewise. + * elfxx-x86.c (_bfd_x86_elf_link_hash_table_create): Initialize + target_id. + * elfxx-x86.h (elf_x86_link_hash_table): Add target_id. + (is_x86_elf): New. + +2017-09-02 H.J. Lu <hongjiu.lu@intel.com> + + * elf32-i386.c (elf_i386_compute_jump_table_size): Removed. + (elf_i386_allocate_dynrelocs): Replace + elf_i386_compute_jump_table_size with + elf_x86_compute_jump_table_size. + (elf_i386_size_dynamic_sections): Likewise. + * elf64-x86-64.c (elf_x86_64_compute_jump_table_size): Removed. + (elf_x86_64_allocate_dynrelocs): Replace + elf_x86_64_compute_jump_table_size with + elf_x86_compute_jump_table_size. + (elf_x86_64_size_dynamic_sections): Likewise. + * elfxx-x86.c (_bfd_x86_elf_link_hash_table_create): Initialize + got_entry_size. + * elfxx-x86.h (elf_x86_link_hash_table): Add got_entry_size. + (elf_x86_compute_jump_table_size): New. + +2017-09-02 H.J. Lu <hongjiu.lu@intel.com> + + * elfxx-x86.c (_bfd_x86_elf_link_hash_table_create): Initialize + sizeof_reloc. + (_bfd_x86_elf_adjust_dynamic_symbol): Use sizeof_reloc. + * elfxx-x86.h (elf_x86_link_hash_table): Add sizeof_reloc. + +2017-09-02 H.J. Lu <hongjiu.lu@intel.com> + + * elf32-i386.c (elf_i386_allocate_dynrelocs): Check VxWorks + with htab->is_vxworks. + (elf_i386_size_dynamic_sections): Likewise. + (elf_i386_relocate_section): Likewise. + (elf_i386_finish_dynamic_symbol): Likewise. + (elf_i386_finish_dynamic_sections): Likewise. + +2017-09-02 H.J. Lu <hongjiu.lu@intel.com> + + * elf32-i386.c (GOT_TLS_IE, GOT_TLS_IE_POS, GOT_TLS_IE_NEG, + GOT_TLS_IE_BOTH, GOT_TLS_GDESC, GOT_TLS_GD_BOTH_P, + GOT_TLS_GD_P, GOT_TLS_GDESC_P, GOT_TLS_GD_ANY_P): Moved to ... + * elfxx-x86.h (GOT_TLS_IE, GOT_TLS_IE_POS, GOT_TLS_IE_NEG, + GOT_TLS_IE_BOTH, GOT_TLS_GDESC, GOT_TLS_GD_BOTH_P, + GOT_TLS_GD_P, GOT_TLS_GDESC_P, GOT_TLS_GD_ANY_P): Here. + * elf64-x86-64.c (GOT_TLS_IE, GOT_TLS_GDESC, GOT_TLS_GD_BOTH_P, + GOT_TLS_GD_P, GOT_TLS_GDESC_P, GOT_TLS_GD_ANY_P): Removed. + +2017-09-01 H.J. Lu <hongjiu.lu@intel.com> + + PR ld/22064 + * elf64-x86-64.c (elf_x86_64_finish_dynamic_symbol): Check + ELF_COMMON_DEF_P for common symbols. + +2017-09-02 Alan Modra <amodra@gmail.com> + + * elf-eh-frame.c (offset_adjust): Avoid false positive gcc warning. + * elflink.c (bfd_elf_size_dynsym_hash_dynstr): Likewise. + * elfnn-aarch64.c (elfNN_aarch64_final_link_relocate): Likewise. + +2017-09-01 H.J. Lu <hongjiu.lu@intel.com> + + * elf32-i386.c (elf_i386_gc_mark_hook): Removed. + (elf_backend_gc_mark_hook): Likewise. + * elf64-x86-64.c (elf_x86_64_gc_mark_hook): Likewise. + (elf_backend_gc_mark_hook): Likewise. + * elfxx-x86.c (_bfd_x86_elf_gc_mark_hook): New function. + * elfxx-x86.h (_bfd_x86_elf_gc_mark_hook): New. + (elf_backend_gc_mark_hook): Likewise. + +2017-09-01 H.J. Lu <hongjiu.lu@intel.com> + + * elf32-i386.c (elf_i386_adjust_dynamic_symbol): Removed. + (elf_backend_adjust_dynamic_symbol): Likewise. + * elf64-x86-64.c (elf_x86_64_adjust_dynamic_symbol): Likewise. + (elf_backend_adjust_dynamic_symbol): Likewise. + * elfxx-x86.c (_bfd_x86_elf_adjust_dynamic_symbol): New function. + (_bfd_x86_elf_link_setup_gnu_properties): Copy is_vxworks. + * elfxx-x86.h (elf_x86_link_hash_table): Add is_vxworks. + (_bfd_x86_elf_adjust_dynamic_symbol): New. + (elf_backend_adjust_dynamic_symbol): Likewise. + +2017-09-01 H.J. Lu <hongjiu.lu@intel.com> + + * elfxx-x86.h (elf_x86_plt_layout_table): Fix a typo in + comments. + +2017-09-01 H.J. Lu <hongjiu.lu@intel.com> + + * elf32-i386.c (elf_i386_mkobject): Removed. + (bfd_elf32_mkobject): Likewise. + * elf64-x86-64.c (elf_x86_64_mkobject): Likewise. + (bfd_elf64_mkobject): Likewise. + (bfd_elf32_mkobject): Likewise. + * elfxx-x86.c (_bfd_x86_elf_mkobject): New function. + * elfxx-x86.h (_bfd_x86_elf_mkobject): New. + (bfd_elf64_mkobject): Likewise. + (bfd_elf32_mkobject): Likewise. + +2017-09-01 H.J. Lu <hongjiu.lu@intel.com> + + * elf32-i386.c (elf_i386_link_setup_gnu_properties): Updated. + Call _bfd_x86_elf_link_setup_gnu_properties. + * elf64-x86-64.c (elf_x86_lazy_plt_layout): Initialize + pic_plt0_entry and pic_plt_entry fields with the non-PIC PLT + entries. + (elf_x86_64_non_lazy_plt): Likewise. + (elf_x86_64_lazy_bnd_plt): Likewise. + (elf_x86_64_non_lazy_bnd_plt): Likewise. + (elf_x86_64_lazy_ibt_plt): Likewise. + (elf_x32_lazy_ibt_plt): Likewise. + (elf_x86_64_non_lazy_ibt_plt): Likewise. + (elf_x32_non_lazy_ibt_plt): Likewise. + (elf_x86_64_nacl_plt): Likewise. + (elf_x86_64_link_setup_gnu_properties): Updated. Call + _bfd_x86_elf_link_setup_gnu_properties. + * elfxx-x86.c: Include elf-vxworks.h". + (_bfd_x86_elf_link_setup_gnu_properties): New function. + * elfxx-x86.h (elf_x86_lazy_plt_layout): Remove "for i386 only" + comments for pic_plt0_entry and pic_plt_entry. + (elf_x86_non_lazy_plt_layout): Likewise. + (elf_x86_plt_layout_table): New. + (_bfd_x86_elf_link_setup_gnu_properties): Likewise. + +2017-09-01 H.J. Lu <hongjiu.lu@intel.com> + + PR ld/22061 + * elf32-i386.c (elf_i386_link_setup_gnu_properties): Create + .eh_frame section for the second PLT. + * elf64-x86-64.c (elf_x86_64_link_setup_gnu_properties): Correct + alignment of .eh_frame section for the second PLT. + +2017-09-01 Nick Clifton <nickc@redhat.com> + + PR 22059 + * dwarf2.c (decode_line_info): Fix test for an overlong line info + structure. + +2017-09-01 Nick Clifton <nickc@redhat.com> + + PR 22058 + * elf-attrs.c (_bfd_elf_parse_attributes): Ensure that the + attribute buffer is NUL terminated. + +2017-08-31 Nick Clifton <nickc@redhat.com> + + PR 22047 + * dwarf2.c (read_section): If necessary add a terminating NUL byte + to dwarf string sections. + +2017-08-31 Alan Modra <amodra@gmail.com> + + * po/SRC-POTFILES.in: Regenerate. + +2017-08-31 Alan Modra <amodra@gmail.com> + + * elf-eh-frame.c (_bfd_elf_parse_eh_frame): Don't exit early + for a section containing just a terminator. Allow multiple + terminators at end of section. + * elflink.c (bfd_elf_discard_info): Iterate over .eh_frame + sections when not adding alignment. Assert on terminator in + the middle of FDEs. + +2017-08-31 Alan Modra <amodra@gmail.com> + + PR 21441 + PR 22048 + * elflink.c (bfd_elf_discard_info): Don't pad embedded zero + terminators. + +2017-08-30 H.J. Lu <hongjiu.lu@intel.com> + + * configure.ac (bfd_backends): Add elf64.lo together with + elfxx-x86.lo for 64-bit BFD. + * configure: Regenerated. + +2017-08-31 James Bowman <james.bowman@ftdichip.com> + + * elf32-ft32.c (ft32_elf_howto_table): Use complain_overflow_dont + for R_FT32_18. + +2017-08-31 Alan Modra <amodra@gmail.com> + + PR binutils/22032 + * opncls.c (bfd_close_all_done): Don't call bfd_cache_close + before _close_and_cleanup. Call iovec->bclose after. + (bfd_close): Remove code common to, and call, bfd_close_all_done. + +2017-08-30 H.J. Lu <hongjiu.lu@intel.com> + + * elf32-i386.c (elf_i386_plt_type): Removed. + (elf_i386_plt): Likewise. + (elf_i386_get_synthetic_symtab): Updated. Call + _bfd_x86_elf_get_synthetic_symtab. + * elf64-x86-64.c (elf_x86_64_plt_type): Removed. + (elf_x86_64_plt): Likewise. + (elf_x86_64_get_synthetic_symtab): Updated. Call + _bfd_x86_elf_get_synthetic_symtab. + * elfxx-x86.c (elf_i386_get_plt_got_vma): New function. + (elf_x86_64_get_plt_got_vma): Likewise. + (elf_i386_valid_plt_reloc_p): Likewise. + (elf_x86_64_valid_plt_reloc_p): Likewise. + (_bfd_x86_elf_get_synthetic_symtab): Likewise. + * elfxx-x86.h (elf_x86_plt_type): New. + (elf_x86_plt): Likewise. + (_bfd_x86_elf_get_synthetic_symtab): Likewise. + +2017-08-30 H.J. Lu <hongjiu.lu@intel.com> + + * elfxx-x86.c (_bfd_x86_elf_link_hash_table_create): Check + target_id instead of elf_machine_code. + +2017-08-30 H.J. Lu <hongjiu.lu@intel.com> + + * elf32-i386.c (ELF_DYNAMIC_INTERPRETER): Removed. + (elf_i386_lazy_plt_layout): Likewise. + (elf_i386_non_lazy_plt_layout): Likewise. + (elf_i386_plt_layout): Likewise. + (elf_i386_link_hash_table): Likewise. + (elf_i386_next_tls_desc_index): Likewise. + (elf_i386_srelplt2): Likewise. + (elf_i386_plt): Likewise. + (elf_i386_lazy_plt): Likewise. + (elf_i386_non_lazy_plt): Likewise. + (elf_i386_link_hash_table_create): Likewise. + (bfd_elf32_bfd_link_hash_table_create): Likewise. + (elf_i386_lazy_plt): Updated. + (elf_i386_non_lazy_plt): Likewise. + (elf_i386_lazy_ibt_plt): Likewise. + (elf_i386_non_lazy_ibt_plt): Likewise. + (elf_i386_allocate_dynrelocs): Likewise. + (elf_i386_size_dynamic_sections): Likewise. + (elf_i386_relocate_section): Likewise. + (elf_i386_finish_dynamic_symbol): Likewise. + (elf_i386_finish_dynamic_sections): Likewise. + (elf_i386_get_synthetic_symtab): Likewise. + (elf_i386_link_setup_gnu_properties): Likewise. + (elf_i386_nacl_plt): Likewise. + * elf64-x86-64.c (ABI_64_P): Removed. + (ELF64_DYNAMIC_INTERPRETER): Likewise. + (ELF32_DYNAMIC_INTERPRETER): Likewise. + (elf_x86_64_lazy_plt_layout): Likewise. + (elf_x86_64_non_lazy_plt_layout): Likewise. + (elf_x86_64_plt_layout): Likewise. + (elf_x86_64_link_hash_table): Likewise. + (elf_x86_64_plt): Likewise. + (elf_x86_64_lazy_plt): Likewise. + (elf_x86_64_non_lazy_plt): Likewise. + (elf_x86_64_link_hash_table_create): Likewise. + (bfd_elf64_bfd_link_hash_table_create): Likewise. + (bfd_elf32_bfd_link_hash_table_create): Likewise. + (elf_x86_64_lazy_plt): Updated. + (elf_x86_64_non_lazy_plt): Likewise. + (elf_x86_64_lazy_bnd_plt): Likewise. + (elf_x86_64_non_lazy_bnd_plt): Likewise. + (elf_x86_64_lazy_ibt_plt): Likewise. + (elf_x32_lazy_ibt_plt): Likewise. + (elf_x86_64_non_lazy_ibt_plt): Likewise. + (elf_x32_non_lazy_ibt_plt): Likewise. + (elf_x86_64_allocate_dynrelocs): Likewise. + (elf_x86_64_size_dynamic_sections): Likewise. + (elf_x86_64_relocate_section): Likewise. + (elf_x86_64_finish_dynamic_symbol): Likewise. + (elf_x86_64_finish_dynamic_sections): Likewise. + (elf_x86_64_get_synthetic_symtab): Likewise. + (elf_x86_64_link_setup_gnu_properties): Likewise. + (elf_x86_64_nacl_plt): Likewise. + * elfxx-x86.c: Include "objalloc.h", "elf/i386.h" and + "elf/x86-64.h". + (ELF32_DYNAMIC_INTERPRETER): New. + (ELF64_DYNAMIC_INTERPRETER): Likewise. + (ELFX32_DYNAMIC_INTERPRETER): Likewise. + (_bfd_x86_elf_link_hash_table_create): Likewise. + (_bfd_x86_elf_link_hash_table_free): Renamed to ... + (elf_x86_link_hash_table_free): This. Make it static. + * elfxx-x86.h: Don't include "objalloc.h". + (ABI_64_P): New. + (elf_x86_lazy_plt_layout): Likewise. + (elf_x86_non_lazy_plt_layout): Likewise. + (elf_x86_plt_layout): Likewise. + (_bfd_x86_elf_link_hash_table_create): Likewise. + (bfd_elf64_bfd_link_hash_table_create): Likewise. + (bfd_elf32_bfd_link_hash_table_create): Likewise. + (elf_x86_link_hash_table): Add plt, lazy_plt, non_lazy_plt, + srelplt2 and next_tls_desc_index. + (_bfd_x86_elf_link_hash_table_free): Removed. + +2017-08-30 Maciej W. Rozycki <macro@imgtec.com> + + * elfxx-mips.c (mips_elf_perform_relocation): Correct microMIPS + branch offset interpretation. + +2017-08-30 H.J. Lu <hongjiu.lu@intel.com> + + PR binutils/22032 + * opncls.c (bfd_close_all_done): Call _close_and_cleanup. + +2017-08-30 H.J. Lu <hongjiu.lu@intel.com> + + * elf64-x86-64.c (elf_x86_64_next_tls_desc_index): Removed. + (elf_x86_64_srelplt2): Likewise. + +2017-08-30 Alan Modra <amodra@gmail.com> + + * elf64-ppc.c (struct ppc_link_hash_table): Add do_tls_opt. + (ppc64_elf_tls_optimize): Set it. + (ppc64_elf_relocate_section): Nop addis on TPREL16_HA, and convert + insn on TPREL16_LO and TPREL16_LO_DS relocs to use r13 when + addis would add zero. + * elf32-ppc.c (struct ppc_elf_link_hash_table): Add do_tls_opt. + (ppc_elf_tls_optimize): Set it. + (ppc_elf_relocate_section): Nop addis on TPREL16_HA, and convert + insn on TPREL16_LO relocs to use r2 when addis would add zero. + +2017-08-30 Alan Modra <amodra@gmail.com> + + * elf64-ppc.c (ppc64_elf_relocate_section): When optimizing + __tls_get_addr call sequences to LE, don't move the addi down + to the nop. Replace the bl with addi and leave the nop alone. + +2017-08-29 H.J. Lu <hongjiu.lu@intel.com> + + * elf32-i386.c (elf_i386_pie_finish_undefweak_symbol): + Re-indent. + * elf64-x86-64.c (elf_x86_64_finish_local_dynamic_symbol): + Likewise. + (elf_x86_64_pie_finish_undefweak_symbol): Likewise. + +2017-08-29 H.J. Lu <hongjiu.lu@intel.com> + + * Makefile.am (BFD32_BACKENDS): Add elfxx-x86.lo. + (BFD64_BACKENDS): Likewise. + (BFD32_BACKENDS_CFILES): Add elfxx-x86.c. + (BFD64_BACKENDS_CFILES): Likewise. + * Makefile.in: Regenerated. + * configure.ac (bfd_backends): Add elfxx-x86.lo together with + elf32-i386.lo and elf64-x86-64.lo. + * configure: Regenerated. + * elf32-i386.c: Include "elfxx-x86.h" instead of "sysdep.h", + "bfd.h", "bfdlink.h", "libbfd.h", "elf-bfd.h", "bfd_stdint.h", + "objalloc.h" and "hashtab.h". + (ELIMINATE_COPY_RELOCS): Removed. + (UNDEFINED_WEAK_RESOLVED_TO_ZERO):Likewise. + (SYMBOL_NO_COPYRELOC): Likewise. + (elf_i386_link_hash_entry): Likewise. + (GOT_UNKNOWN): Likewise. + (GOT_NORMAL): Likewise. + (GOT_TLS_GD): Likewise. + (elf_i386_hash_entry): Likewise. + (elf_i386_obj_tdata): Likewise. + (elf_i386_tdata): Likewise. + (elf_i386_local_got_tls_type): Likewise. + (elf_i386_local_tlsdesc_gotent): Likewise. + (elf_i386_hash_table): Likewise. + (elf_i386_link_hash_newfunc): Likewise. + (elf_i386_local_htab_hash): Likewise. + (elf_i386_local_htab_eq): Likewise. + (elf_i386_get_local_sym_hash): Likewise. + (elf_i386_link_hash_table_free): Likewise. + (elf_i386_copy_indirect_symbol): Likewise. + (elf_i386_fixup_symbol): Likewise. + (elf_i386_readonly_dynrelocs): Likewise. + (elf_i386_always_size_sections): Likewise. + (elf_i386_set_tls_module_base): Likewise. + (elf_i386_dtpoff_base): Likewise. + (compare_relocs): Likewise. + (elf_i386_hash_symbol): Likewise. + (elf_i386_parse_gnu_properties): Likewise. + (elf_i386_merge_gnu_properties): Likewise. + (elf_i386_link_check_relocs): Likewise. + (elf_i386_merge_symbol_attribute): Likewise. + (bfd_elf32_bfd_link_check_relocs): Likewise. + (elf_backend_copy_indirect_symbol): Likewise. + (elf_backend_always_size_sections): Likewise. + (elf_backend_omit_section_dynsym): Likewise. + (elf_backend_hash_symbol): Likewise. + (elf_backend_fixup_symbol): Likewise. + (elf_backend_parse_gnu_properties): Likewise. + (elf_backend_merge_gnu_properties): Likewise. + (elf_backend_merge_symbol_attribute): Likewise. + (elf_i386_mkobject): Updated. + (elf_i386_link_hash_table_create): Likewise. + (elf_i386_check_tls_transition): Likewise. + (elf_i386_tls_transition): Likewise. + (elf_i386_convert_load_reloc): Likewise. + (elf_i386_check_relocs): Likewise. + (elf_i386_adjust_dynamic_symbol): Likewise. + (elf_i386_allocate_dynrelocs): Likewise. + (elf_i386_convert_load): Likewise. + (elf_i386_size_dynamic_sections): Likewise. + (elf_i386_relocate_section): Likewise. + (elf_i386_finish_dynamic_symbol ): Likewise. + (elf_i386_finish_dynamic_sections): Likewise. + (elf_i386_output_arch_local_syms): Likewise. + (elf_i386_get_synthetic_symtab): Likewise. + (elf_i386_link_setup_gnu_properties): Likewise. + (elf_i386_link_hash_table): Use elf_x86_link_hash_table, instead + of elf_link_hash_table, as base. + (elf_i386_next_tls_desc_index): New. + (elf_i386_srelplt2): Likewise. + (elf_i386_plt): Likewise. + (elf_i386_lazy_plt): Likewise. + (elf_i386_non_lazy_plt): Likewise. + * elf32-x86-64.c: Include "elfxx-x86.h" instead of "sysdep.h", + "bfd.h", "bfdlink.h", "libbfd.h", "elf-bfd.h", "bfd_stdint.h", + "objalloc.h" and "hashtab.h". + (ELIMINATE_COPY_RELOCS): Removed. + (UNDEFINED_WEAK_RESOLVED_TO_ZERO):Likewise. + (SYMBOL_NO_COPYRELOC): Likewise. + (elf_x86_64_link_hash_entry): Likewise. + (GOT_UNKNOWN): Likewise. + (GOT_NORMAL): Likewise. + (GOT_TLS_GD): Likewise. + (elf_x86_64_hash_entry): Likewise. + (elf_x86_64_obj_tdata): Likewise. + (elf_x86_64_tdata): Likewise. + (elf_x86_64_local_got_tls_type): Likewise. + (elf_x86_64_local_tlsdesc_gotent): Likewise. + (elf_x86_64_hash_table): Likewise. + (elf_x86_64_link_hash_newfunc): Likewise. + (elf_x86_64_local_htab_hash): Likewise. + (elf_x86_64_local_htab_eq): Likewise. + (elf_x86_64_get_local_sym_hash): Likewise. + (elf_x86_64_link_hash_table_free): Likewise. + (elf_x86_64_copy_indirect_symbol): Likewise. + (elf_x86_64_fixup_symbol): Likewise. + (elf_x86_64_readonly_dynrelocs): Likewise. + (elf_x86_64_always_size_sections): Likewise. + (elf_x86_64_set_tls_module_base): Likewise. + (elf_x86_64_dtpoff_base): Likewise. + (compare_relocs): Likewise. + (elf_x86_64_merge_symbol_attribute): Likewise. + (elf_x86_64_hash_symbol): Likewise. + (elf_x86_64_parse_gnu_properties): Likewise. + (elf_x86_64_merge_gnu_properties): Likewise. + (elf_x86_64_link_check_relocs): Likewise. + (elf_backend_copy_indirect_symbol): Likewise. + (elf_backend_always_size_sections): Likewise. + (bfd_elf64_bfd_link_check_relocs): Likewise. + (elf_backend_merge_symbol_attribute): Likewise. + (elf_backend_hash_symbol): Likewise. + (elf_backend_omit_section_dynsym): Likewise. + (elf_backend_fixup_symbol): Likewise. + (elf_backend_parse_gnu_properties): Likewise. + (elf_backend_merge_gnu_properties): Likewise. + (bfd_elf32_bfd_link_check_relocs): Likewise. + (elf_x86_64_mkobject): Updated. + (elf_x86_64_link_hash_table_create): Likewise. + (elf_x86_64_check_tls_transition): Likewise. + (elf_x86_64_tls_transition): Likewise. + (elf_x86_64_convert_load_reloc): Likewise. + (elf_x86_64_check_relocs): Likewise. + (elf_x86_64_adjust_dynamic_symbol): Likewise. + (elf_x86_64_allocate_dynrelocs): Likewise. + (elf_x86_64_convert_load): Likewise. + (elf_x86_64_size_dynamic_sections): Likewise. + (elf_x86_64_relocate_section): Likewise. + (elf_x86_64_finish_dynamic_symbol ): Likewise. + (elf_x86_64_finish_dynamic_sections): Likewise. + (elf_x86_64_output_arch_local_syms): Likewise. + (elf_x86_64_get_synthetic_symtab): Likewise. + (elf_x86_64_link_setup_gnu_properties): Likewise. + (elf_x86_64_link_hash_table): Use elf_x86_link_hash_table, + instead of elf_link_hash_table, as base. + (elf_x86_64_next_tls_desc_index): New. + (elf_x86_64_srelplt2): Likewise. + (elf_x86_64_plt): Likewise. + (elf_x86_64_lazy_plt): Likewise. + (elf_x86_64_non_lazy_plt): Likewise. + * elfxx-x86.c: New file. + * elfxx-x86.h: Likewise. + +2017-08-29 H.J. Lu <hongjiu.lu@intel.com> + + * elf32-i386.c (elf_i386_get_synthetic_symtab): Simplify bad + return. + * elf64-x86-64.c (elf_x86_64_get_synthetic_symtab): Likewise. + +2017-08-29 H.J. Lu <hongjiu.lu@intel.com> + + * elf32-i386.c (elf_i386_get_synthetic_symtab): Check valid PLT + sections before checking dynamic relocations and free invalid + PLT section contents. + * elf64-x86-64.c (elf_x86_64_get_synthetic_symtab): Likewise. + +2017-08-28 H.J. Lu <hongjiu.lu@intel.com> + + * elf-bfd.h (_bfd_elf_ifunc_get_synthetic_symtab): Removed. + * elf-ifunc.c (_bfd_elf_ifunc_get_synthetic_symtab): Likewise. + +2017-08-28 H.J. Lu <hongjiu.lu@intel.com> + + PR binutils/22018 + * elf32-i386.c (elf_i386_get_synthetic_symtab): Check for valid + PLT section size. + * elf64-x86-64.c (elf_x86_64_get_synthetic_symtab): Likewise. + +2017-08-27 H.J. Lu <hongjiu.lu@intel.com> + + * elf32-i386.c (elf_i386_link_hash_newfunc): Initialize + def_protected. + * elf64-x86-64.c (elf_x86_64_link_hash_newfunc): Likewise. + +2017-08-26 H.J. Lu <hongjiu.lu@intel.com> + + PR ld/21997 + * elf-bfd.h (elf_obj_tdata): Use ENUM_BITFIELD on object_id, + dyn_lib_class and has_gnu_symbols. Change bad_symtab to bitfield. + Add a has_no_copy_on_protected bitfield. + (elf_has_no_copy_on_protected): New. + * elf-properties.c (_bfd_elf_parse_gnu_properties): Set + elf_has_no_copy_on_protected for GNU_PROPERTY_NO_COPY_ON_PROTECTED. + (elf_merge_gnu_property_list): Likewise. + (_bfd_elf_link_setup_gnu_properties): Set extern_protected_data + to FALSE for elf_has_no_copy_on_protected. + * elf32-i386.c (SYMBOL_NO_COPYRELOC): New. + (elf_i386_link_hash_entry): Add def_protected. + (elf_i386_adjust_dynamic_symbol): Also check SYMBOL_NO_COPYRELOC + when checking info->nocopyreloc. + (elf_i386_link_setup_gnu_properties): Don't set + extern_protected_data here. + (elf_i386_merge_symbol_attribute): New function. + (elf_backend_merge_symbol_attribute): New. + * elf64-x86-64.c (SYMBOL_NO_COPYRELOC): New. + (elf_x86_64_link_hash_entry): Add def_protected. + (elf_x86_64_need_pic): Report protected symbol for def_protected. + (elf_x86_64_adjust_dynamic_symbol): Also check SYMBOL_NO_COPYRELOC + when checking info->nocopyreloc. + (elf_x86_64_relocate_section): Also check for R_X86_64_PC32 + relocation run-time overflow and unresolvable R_X86_64_32S + relocation against protected data symbol defined in shared object + with GNU_PROPERTY_NO_COPY_ON_PROTECTED. + (elf_x86_64_link_setup_gnu_properties): Don't set + extern_protected_data here. + (elf_x86_64_merge_symbol_attribute): New function. + (elf_backend_merge_symbol_attribute): New. + +2017-08-26 Alan Modra <amodra@gmail.com> + + * elf32-ppc.c (must_be_dyn_reloc): Use bfd_link_dll. Comment. + (ppc_elf_check_relocs): Only set DF_STATIC_TLS in shared libs. + (ppc_elf_relocate_section): Comment fix. + * elf64-ppc.c (must_be_dyn_reloc): Use bfd_link_dll. Comment. + (ppc64_elf_check_relocs): Only set DF_STATIC_TLS in shared libs. + Support dynamic relocs for TPREL16 when non-pic too. + (dec_dynrel_count): Adjust TPREL16 handling as per check_relocs. + (ppc64_elf_relocate_section): Support dynamic relocs for TPREL16 + when non-pic too. + +2017-08-25 H.J. Lu <hongjiu.lu@intel.com> + + * elf32-i386.c (elf_i386_link_hash_entry): Remove redundant + "symbol" in comments. + * elf64-x86-64.c (elf_x86_64_link_hash_entry): Likewise. + +2017-08-24 H.J. Lu <hongjiu.lu@intel.com> + + PR ld/22001 + * elf64-x86-64.c (elf_x86_64_relocate_section): Check for + R_X86_64_PC32 relocation run-time overflow and unresolvable + R_X86_64_32S relocation with -z nocopyreloc. + +2017-08-24 H.J. Lu <hongjiu.lu@intel.com> + + * elf32-i386.c (elf_i386_check_relocs): Revert the last change. + Undefined symbols may not have a type. + * elf64-x86-64.c (elf_x86_64_check_relocs): Likewise. + +2017-08-23 H.J. Lu <hongjiu.lu@intel.com> + + * elf64-x86-64.c (elf_x86_64_need_pic): Add an argument for + bfd_link_info. Report shared, PIE or PDE object based on + bfd_link_info. + (elf_x86_64_check_relocs): Update elf_x86_64_need_pic call. + (elf_x86_64_relocate_section): Likewise. + +2017-08-23 H.J. Lu <hongjiu.lu@intel.com> + + * elf32-i386.c (elf_i386_check_relocs): Increment PLT count only + for function symbols. + * elf64-x86-64.c (elf_x86_64_check_relocs): Likewise. + +2017-08-23 H.J. Lu <hongjiu.lu@intel.com> + + * elf32-i386.c (elf_i386_link_setup_gnu_properties): Set + extern_protected_data to FALSE if GNU_PROPERTY_NO_COPY_ON_PROTECTED + is set on any input relocatable file. + * elf64-x86-64.c (elf_x86_64_link_setup_gnu_properties): Likewise. + +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-21 Hans-Peter Nilsson <hp@bitrange.com> + + PR ld/20125 + * elf64-mmix.c (mmix_elf_relax_section): Correct handling of + undefined weak symbols. + +2017-08-18 Nick Clifton <nickc@redhat.com> + + 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-14 Nick Clifton <nickc@redhat.com> + + PR 21957 + * elf.c (setup_group): Check for an empty or very small group + section. + * po/bfd.pot: Regenerate. + +2017-08-14 Alan Modra <amodra@gmail.com> + + PR 21441 + * elf-eh-frame.c (_bfd_elf_discard_section_eh_frame): Don't add + alignment padding here. + * elflink.c (bfd_elf_discard_info): Add .eh_frame padding here + in a reverse pass over sections. + +2017-08-11 H.J. Lu <hongjiu.lu@intel.com> + + PR binutils/21943 + * elf32-i386.c (elf_i386_get_synthetic_symtab): Allocate space + for @plt suffixes first. + * elf64-x86-64.c (elf_x86_64_get_synthetic_symtab): Likewise. + +2017-08-08 Nick Clifton <nickc@redhat.com> + + PR 21916 + * elf-attrs.c (_bfd_elf_parse_attributes): Complain about very + small section lengths. + * elf.c (_bfd_elf_setup_sections): Skip empty entries in the group + table. + (elfcore_grok_freebsd_prstatus): Add checks to make sure that + there is enough data present in the note. + +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-07 H.J. Lu <hongjiu.lu@intel.com> + + * elflink.c (elf_link_add_object_symbols): Move common symbol + check after bed->common_definition. + +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-07 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-06 H.J. Lu <hongjiu.lu@intel.com> + + * elf32-i386.c (elf_i386_link_hash_entry): Change tls_get_addr + to 1 bit. + (elf_i386_link_hash_newfunc): Initialize tls_get_addr to 0. + (elf_i386_check_tls_transition): Check tls_get_addr directly. + (elf_i386_convert_load_reloc): Update tls_get_addr check. + (elf_i386_link_check_relocs): New function. + (bfd_elf32_bfd_link_check_relocs): New. + * elf64-x86-64.c (elf_x86_64_link_hash_entry): Change tls_get_addr + to 1 bit. + (elf_x86_64_link_hash_newfunc): Initialize tls_get_addr to 0. + (elf_x86_64_check_tls_transition): Check tls_get_addr directly. + (elf_x86_64_convert_load_reloc): Update tls_get_addr check. + (elf_x86_64_link_check_relocs): New function. + (bfd_elf64_bfd_link_check_relocs): New. + (bfd_elf32_bfd_link_check_relocs): Likewise. + +2017-08-06 H.J. Lu <hongjiu.lu@intel.com> + + PR ld/21903: + * elflink.c (elf_link_add_object_symbols): Treat common symbol + as undefined for --no-define-common. + +2017-08-05 Alan Modra <amodra@gmail.com> + + * elf32-hppa.c (elf32_hppa_set_gp): Don't require an + hppa_link_hash_table. + +2017-08-02 Max Filippov <jcmvbkbc@gmail.com> + + * xtensa-isa.c (xtensa_isa_init): Don't update lookup table + entries for sysregs with negative indices. + +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-07-31 Kuan-Lin Chen <rufus@andestech.com> + + * elfxx-riscv.c (riscv_elf_add_sub_reloc): New function. + * (howto_table) [R_RISCV_ADD8]: Use riscv_elf_add_sub_reloc. + [R_RISCV_ADD16]: Likewise. + [R_RISCV_ADD32]: Likewise. + [R_RISCV_ADD64]: Likewise. + [R_RISCV_SUB6]: Likewise. + [R_RISCV_SUB8]: Likewise. + [R_RISCV_SUB16]: Likewise. + [R_RISCV_SUB32]: Likewise. + [R_RISCV_SUB64]: 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-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-27 Nick Clifton <nickc@redhat.com> + + 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-07-25 Nick Clifton <nickc@redhat.com> + + * po/fr.po: Updated French translation. + +2017-07-25 Benjamin Green <bengreen5mx@gmail.com> + + PR 21824 + * elf32-msp430.c (msp430_elf_relax_section): Allow conversion of + 16-bit absolute branches into 10-bit pc-relative branches on the + MSP430 as well as the MSP430X. + +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-07-24 Nick Clifton <nickc@redhat.com> + + PR 21813 + * mach-o.c (bfd_mach_o_canonicalize_relocs): Pass the base address + of the relocs to the canonicalize_one_reloc routine. + * mach-o.h (struct bfd_mach_o_backend_data): Update the prototype + for the _bfd_mach_o_canonicalize_one_reloc field. + * mach-o-arm.c (bfd_mach_o_arm_canonicalize_one_reloc): Add + res_base parameter. Use to check for corrupt pair relocs. + * mach-o-aarch64.c (bfd_mach_o_arm64_canonicalize_one_reloc): + Likewise. + * mach-o-i386.c (bfd_mach_o_i386_canonicalize_one_reloc): + Likewise. + * mach-o-x86-64.c (bfd_mach_o_x86_64_canonicalize_one_reloc): + Likewise. + + * vms-alpha.c (_bfd_vms_slurp_eihd): Make sure that there is + enough data in the record before attempting to parse it. + (_bfd_vms_slurp_eeom): Likewise. + + (_bfd_vms_slurp_egsd): Check for an invalid section index. + (image_set_ptr): Likewise. + (alpha_vms_slurp_relocs): Likewise. + + (alpha_vms_object_p): Check for a truncated record. + +2017-07-24 Nick Clifton <nickc@redhat.com> + + PR 21803 + * reloc.c (_bfd_unrecognized_reloc): New function. Reports + an unrecognized reloc and sets the bfd_error value. + * libbfd.h: Regenerate. + * elf32-arm.c (elf32_arm_final_link_relocate): Use the new + function. + * elf32-i386.c (elf_i386_relocate_section): Likewise. + * elf32-tilepro.c (tilepro_elf_relocate_section): Likewise. + * elf64-x86-64.c (elf_x86_64_relocate_section): Likewise. + * elfnn-aarch64.c (elfNN_aarch64_relocate_section): Likewise. + * elfxx-tilegx.c (tilegx_elf_relocate_section): Likewise. + +2017-07-23 Alan Modra <amodra@gmail.com> + + * elf64-ppc.c (ppc64_elf_size_stubs): Correct advance to + restore of LR. + +2017-07-19 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-07-19 Nick Clifton <nickc@redhat.com> + + PR 21787 + * archive.c (bfd_generic_archive_p): If the bfd does not have the + correct magic bytes at the start, set the error to wrong format + and clear the format selector before returning NULL. + +2017-07-19 Nick Clifton <nickc@redhat.com> + + PR 21786 + * coff-rs6000.c (_bfd_strntol): New function. + (_bfd_strntoll): New function. + (GET_VALUE_IN_FIELD): New macro. + (EQ_VALUE_IN_FIELD): new macro. + (_bfd_xcoff_slurp_armap): Use new macros. + (_bfd_xcoff_archive_p): Likewise. + (_bfd_xcoff_read_ar_hdr): Likewise. + (_bfd_xcoff_openr_next_archived_file): Likewise. + (_bfd_xcoff_stat_arch_elt): Likewise. + * coff64-rs6000.c (_bfd_strntol): New function. + (_bfd_strntoll): New function. + (GET_VALUE_IN_FIELD): New macro. + (xcoff64_slurp_armap): Use new macros. + +2017-07-19 Claudiu Zissulescu <claziss@synopsys.com> + John Eric Martin <John.Martin@emmicro-us.com> + + * bfd-in2.h: Regenerate. + * libbfd.h: Regenerate. + * elf32-arc.c (JLI): Define. + * reloc.c: Add JLI relocations. + +2017-07-18 Nick Clifton <nickc@redhat.com> + + PR 21775 + * coff-sh.c: Fix spelling typos. + * compress.c: Likewise. + * cpu-pdp11.c: Likewise. + * ecofflink.c: Likewise. + * elf-m10300.c: Likewise. + * elf.c: Likewise. + * elf32-arm.c: Likewise. + * elf32-m68k.c: Likewise. + * elf32-nds32.c: Likewise. + * elf32-ppc.c: Likewise. + * elf32-sh.c: Likewise. + * elf32-v850.c: Likewise. + * elf64-ppc.c: Likewise. + * elf64-x86-64.c: Likewise. + * elflink.c: Likewise. + * elfnn-aarch64.c: Likewise. + * elfxx-mips.c: Likewise. + * som.c: Likewise. + * sunos.c: Likewise. + * vms-alpha.c: Likewise. + * xcofflink.c: Likewise. + +2017-07-18 Nick Clifton <nickc@redhat.com> + + PR binutils/21781 + * coffcode.h (handle_COMDAT): Replace abort with an error message + and return. + +2017-07-17 H.J. Lu <hongjiu.lu@intel.com> + + PR ld/21782 + * elf64-x86-64.c (elf_x86_64_relocate_section): Limit PIC check + to shared library. + +2017-07-17 H.J. Lu <hongjiu.lu@intel.com> + + * elf64-x86-64.c (elf_x86_64_relocate_section): Re-indent. + +2017-07-16 Alan Modra <amodra@gmail.com> + + * elf64-ppc.c (ppc64_elf_relocate_section): Don't optimize + __tls_index GOT entries when using __tls_get_addr_opt stub. + * elf32-ppc.c (ppc_elf_relocate_section): Likewise. + +2017-07-12 Alan Modra <amodra@gmail.com> + + * po/es.po: Update from translationproject.org/latest/bfd/. + * po/fi.po: Likewise. + * po/fr.po: Likewise. + * po/id.po: Likewise. + * po/ja.po: Likewise. + * po/ro.po: Likewise. + * po/ru.po: Likewise. + * po/sr.po: Likewise. + * po/sv.po: Likewise. + * po/tr.po: Likewise. + * po/uk.po: Likewise. + * po/vi.po: Likewise. + * po/zh_CN.po: Likewise. + * po/hr.po: New file from translationproject.org. + * configure.ac (ALL_LINGUAS): Add hr. Sort. + * configure: Regenerate. + +2017-07-12 Nick Clifton <nickc@redhat.com> + + Fix compile time warnings using gcc 7.1.1. + * elf32-xtensa.c (elf_xtensa_get_plt_section): Increase length of + plt_name buffer. + (elf_xtensa_get_gotplt_section): Increase length of got_name + buffer. + * mach-o-arm.c (bfd_mach_o_arm_canonicalize_one_reloc): Add a + default return of FALSE. + * mach-o-i386.c (bfd_mach_o_i386_canonicalize_one_reloc): Add a + default return of FALSE. + +2017-07-12 Alan Modra <amodra@gmail.com> + + * binary.c (binary_set_section_contents): Don't print filepos in + error message. + (coff_write_object_contents): Cast size_t for error message. + (coff_slurp_line_table): Don't use bfd_vma symndx. + (coff_slurp_reloc_table): Remove unneeded cast. + * dwarf2.c (read_section): Cast bfd_int64_t to long long for + error message. + (find_abstract_instance_name): Likewise. + * elf32-arm.c (arm_type_of_stub): Correct error arg order. + (bfd_elf32_arm_stm32l4xx_erratum_scan): Don't cast error arg. + (elf32_arm_check_relocs): Make r_symndx an int. + * elf32-cris.c (cris_elf_check_relocs): Delete extraneous %s in + format string. + * elf32-metag.c (elf_metag_relocate_section): Delete extra error + message arg. + * elf32-nds32.c (nds32_elf_ex9_build_hash_table): Rewrite bogus + error message. + * elf32-i386.c (elf_i386_check_relocs): Make r_symndx an int. + * elf32-s390.c (elf_s390_check_relocs): Likewise. + * elf32-tic6x.c (elf32_tic6x_check_relocs): Likewise. + * elf32-tilepro.c (tilepro_elf_check_relocs): Likewise. + * elf32-xtensa.c (elf_xtensa_check_relocs): Likewise. + * elf64-s390.c (elf_s390_check_relocs): Likewise. + * elf64-x86-64.c (elf_x86_64_check_relocs): Likewise. + * elfnn-aarch64.c (elfNN_aarch64_check_relocs): Likewise. + * elfnn-riscv.c (riscv_elf_check_relocs): Likewise. + * elfxx-sparc.c (_bfd_sparc_elf_check_relocs): Likewise. + * elfxx-tilegx.c (tilegx_elf_check_relocs): Likewise. + * elf64-mmix.c (_bfd_mmix_after_linker_allocation): Cast size_t args + and use %lu for error message. + * elflink.c (elf_link_adjust_relocs): Delete extra error message arg. + * mmo.c (mmo_scan): Make stab_loc a file_ptr. Cast expression for + error message. + + * elf32-arm.c (elf32_arm_tls_relax): Correct format string and args + in error message. + (elf32_arm_final_link_relocate): Likewise. + * coff-arm.c (bfd_arm_process_before_allocation): Likewise. + * coffcode.h (styp_to_sec_flags): Likewise. + * cofflink.c (_bfd_coff_write_global_sym): Likewise. + * ecoff.c (_bfd_ecoff_slurp_symbol_table): Likewise. + * elf32-arc.c (arc_elf_merge_private_bfd_data): Likewise. + * elf32-bfin.c (bfinfdpic_check_relocs): Likewise. + (elf32_bfin_merge_private_bfd_data): Likewise. + * elf32-cris.c (cris_elf_relocate_section): Likewise. + * elf32-frv.c (frv_elf_merge_private_bfd_data): Likewise. + * elf32-i370.c (i370_elf_merge_private_bfd_data): Likewise. + (i370_elf_relocate_section): Likewise. + * elf32-iq2000.c (iq2000_elf_merge_private_bfd_data): Likewise. + * elf32-m32c.c (m32c_elf_merge_private_bfd_data): Likewise. + * elf32-m68hc1x.c (_bfd_m68hc11_elf_merge_private_bfd_data): Likewise. + * elf32-mcore.c (mcore_elf_relocate_section): Likewise. + * elf32-mep.c (mep_elf_merge_private_bfd_data): Likewise. + * elf32-mt.c (mt_elf_merge_private_bfd_data): Likewise. + * elf64-sparc.c (elf64_sparc_merge_private_bfd_data): Likewise. + * elfxx-mips.c (mips_elf_merge_obj_e_flags): Likewise. + (_bfd_mips_elf_merge_private_bfd_data): Likewise. + * ieee.c (ieee_write_id, read_id): Likewise. + * mach-o.c (bfd_mach_o_write_contents): Likewise. + (bfd_mach_o_layout_commands, bfd_mach_o_read_section_32): Likewise. + (bfd_mach_o_read_section_64, bfd_mach_o_read_symtab_symbol): Likewise. + (bfd_mach_o_read_command, bfd_mach_o_header_p): Likewise. + * peXXigen.c (_bfd_XXi_swap_aouthdr_in): Likewise. + * stabs.c (_bfd_link_section_stabs): Likewise. + + * coff-arm.c (coff_arm_relocate_section): Use L modifier in error + format. + * coff-mcore.c (coff_mcore_relocate_section): Likewise. + * coff-ppc.c (coff_ppc_relocate_section): Likewise. + * coff-rs6000.c (xcoff_reloc_type_toc): Likewise. + * coff-sh.c (sh_relax_section): Likewise. + (sh_relax_delete_bytes, sh_swap_insns): Likewise. + * coff-tic80.c (coff_tic80_relocate_section): Likewise. + * coffcode.h (coff_slurp_reloc_table): Likewise. + * coffgen.c (_bfd_coff_get_external_symbols): Likewise. + (_bfd_coff_read_string_table): Likewise. + * cofflink.c (_bfd_coff_generic_relocate_section): Likewise. + * compress.c (bfd_get_full_section_contents): Likewise. + * dwarf2.c (read_formatted_entries, decode_line_info): Likewise. + * elf-m10300.c (mn10300_elf_relocate_section): Likewise. + * elf.c (bfd_elf_string_from_elf_section): Likewise. + * elf32-arc.c (arc_special_overflow_checks): Likewise. + * elf32-arm.c (elf32_arm_tls_relax): Likewise. + (elf32_arm_final_link_relocate, elf32_arm_relocate_section): Likewise. + (elf32_arm_write_section): Likewise. + * elf32-bfin.c (bfin_relocate_section): Likewise. + (bfinfdpic_relocate_section): Likewise. + * elf32-hppa.c (hppa_build_one_stub): Likewise. + (final_link_relocate, elf32_hppa_relocate_section): Likewise. + * elf32-i386.c (elf_i386_tls_transition): Likewise. + (elf_i386_relocate_section): Likewise. + * elf32-ip2k.c (ip2k_final_link_relocate): Likewise. + * elf32-lm32.c (lm32_elf_finish_dynamic_sections): Likewise. + * elf32-m32r.c (m32r_elf_relocate_section): Likewise. + * elf32-m68k.c (elf_m68k_relocate_section): Likewise. + * elf32-metag.c (elf_metag_relocate_section): Likewise. + * elf32-nds32.c (unrecognized_reloc_msg): Likewise. + (nds32_elf_relax_longcall1, nds32_elf_relax_longcall2): Likewise. + (nds32_elf_relax_longcall3, nds32_elf_relax_longjump1): Likewise. + (nds32_elf_relax_longjump2, nds32_elf_relax_longjump3): Likewise. + (nds32_elf_relax_longcall4, nds32_elf_relax_longcall5): Likewise. + (nds32_elf_relax_longcall6, nds32_elf_relax_longjump4): Likewise. + (nds32_elf_relax_longjump5, nds32_elf_relax_longjump6): Likewise. + (nds32_elf_relax_longjump7, nds32_elf_relax_loadstore): Likewise. + (nds32_elf_relax_ptr, nds32_elf_ex9_build_hash_table): Likewise. + * elf32-nios2.c (nios2_elf32_relocate_section): Likewise. + * elf32-rx.c (UNSAFE_FOR_PID): Likewise. + * elf32-s390.c (invalid_tls_insn, elf_s390_relocate_section): Likewise. + * elf32-score.c (s3_bfd_score_elf_check_relocs): Likewise. + * elf32-score7.c (s7_bfd_score_elf_check_relocs): Likewise. + * elf32-sh.c (sh_elf_relax_section): Likewise. + (sh_elf_relax_delete_bytes, sh_elf_swap_insns): Likewise. + (sh_elf_relocate_section): Likewise. + * elf32-sh64.c (shmedia_prepare_reloc): Likewise. + * elf32-spu.c (spu_elf_relocate_section): Likewise. + * elf32-tic6x.c (elf32_tic6x_relocate_section): Likewise. + * elf32-tilepro.c (tilepro_elf_relocate_section): Likewise. + * elf32-v850.c (v850_elf_relax_section): Likewise. + * elf32-vax.c (elf_vax_check_relocs): Likewise. + (elf_vax_relocate_section): Likewise. + * elf32-xtensa.c (elf_xtensa_relocate_section): Likewise. + (extend_ebb_bounds_forward, extend_ebb_bounds_backward): Likewise. + (compute_text_actions, compute_ebb_proposed_actions): Likewise. + (do_fix_for_relocatable_link): Likewise. + * elf64-alpha.c (elf64_alpha_relax_got_load): Likewise. + (elf64_alpha_relax_with_lituse): Likewise. + * elf64-hppa.c (elf64_hppa_finish_dynamic_symbol): Likewise. + (elf_hppa_final_link_relocate): Likewise. + * elf64-ia64-vms.c (elf64_ia64_relax_section): Likewise. + (elf64_ia64_choose_gp, elf64_ia64_relocate_section): Likewise. + (elf64_vms_link_add_object_symbols): Likewise. + * elf64-mmix.c (mmix_elf_perform_relocation): Likewise. + (mmix_final_link_relocate): Likewise. + * elf64-s390.c (invalid_tls_insn): Likewise. + (elf_s390_relocate_section): Likewise. + * elf64-sh64.c (sh_elf64_relocate_section): Likewise. + * elf64-x86-64.c (elf_x86_64_tls_transition): Likewise. + (elf_x86_64_relocate_section): Likewise. + * elfcode.h (elf_slurp_symbol_table): Likewise. + * elfcore.h (elf_core_file_p): Likewise. + * elflink.c (elf_link_read_relocs_from_section): Likewise. + * elfnn-aarch64.c (elfNN_aarch64_final_link_relocate): Likewise. + (elfNN_aarch64_relocate_section): Likewise. + * elfnn-ia64.c (elfNN_ia64_relax_section): Likewise. + (elfNN_ia64_choose_gp, elfNN_ia64_relocate_section): Likewise. + * elfnn-riscv.c (riscv_elf_relocate_section): Likewise. + * elfxx-mips.c (_bfd_mips_elf_check_relocs): Likewise. + (_bfd_mips_elf_relocate_section): Likewise. + (_bfd_mips_elf_finish_dynamic_symbol, mips_finish_exec_plt): Likewise. + * elfxx-sparc.c (_bfd_sparc_elf_relocate_section): Likewise. + * elfxx-tilegx.c (tilegx_elf_relocate_section): Likewise. + * ieee.c (ieee_slurp_external_symbols): Likewise. + * ihex.c (ihex_write_object_content): Likewise. + * mach-o.c (bfd_mach_o_build_exec_seg_command): Likewise. + * merge.c (_bfd_merged_section_offset): Likewise. + * mmo.c (mmo_write_loc_chunk): Likewise. + (mmo_write_object_contents): Likewise. + * peXXigen.c (_bfd_XX_bfd_copy_private_bfd_data_common): Likewise. + * stabs.c (_bfd_link_section_stabs): Likewise. + * xcofflink.c (xcoff_link_add_symbols, xcoff_find_tc0): Likewise. + +2017-07-11 Alan Modra <amodra@gmail.com> + + * elf32-ppc.c (ppc_elf_relocate_section): Fix typo. + +2017-07-11 Alan Modra <amodra@gmail.com> + + * elf32-ppc.c (ppc_elf_relocate_section): Emit "unexpected + instruction" error using _bfd_error_handler, not einfo. + +2017-07-10 Nick Clifton <nickc@redhat.com> + + * coffcode.h (coff_slurp_symbol_table): Do not include an entry + for C_AIX_WEAKEXT if it has the same value as C_WEAKEXT. + +2017-07-07 John Baldwin <jhb@FreeBSD.org> + + * elf.c (elfcore_grok_freebsd_note): Handle NT_FREEBSD_PTLWPINFO. + +2017-07-07 Alan Modra <amodra@gmail.com> + + * coffcode.h (coff_slurp_symbol_table): Handle C_AIX_WEAKEXT. + +2017-07-07 Alan Modra <amodra@gmail.com> + + * bfd.c (_doprnt): Replace "L" with "ll" when printing bfd_vma + as long long. Move code replacing "ll" with "I64", and simplify. + +2017-07-06 H.J. Lu <hongjiu.lu@intel.com> + + * bfd.c (_doprnt): Convert 'L' to 'l' when setting wide_width + to 1. + 2017-07-05 H.J. Lu <hongjiu.lu@intel.com> * dwarf2.c (line_info_add_include_dir_stub): Replace time with diff --git a/bfd/Makefile.am b/bfd/Makefile.am index 97b608c..f7007a7 100644 --- a/bfd/Makefile.am +++ b/bfd/Makefile.am @@ -346,6 +346,7 @@ BFD32_BACKENDS = \ elf32-hppa.lo \ elf32-i370.lo \ elf32-i386.lo \ + elfxx-x86.lo \ elf32-i860.lo \ elf32-i960.lo \ elf32-ip2k.lo \ @@ -542,6 +543,7 @@ BFD32_BACKENDS_CFILES = \ elf32-hppa.c \ elf32-i370.c \ elf32-i386.c \ + elfxx-x86.c \ elf32-i860.c \ elf32-i960.c \ elf32-ip2k.c \ @@ -699,6 +701,7 @@ BFD64_BACKENDS = \ elf64-sparc.lo \ elf64-tilegx.lo \ elf64-x86-64.lo \ + elfxx-x86.lo \ elf64.lo \ mach-o-aarch64.lo \ mach-o-x86-64.lo \ @@ -734,6 +737,7 @@ BFD64_BACKENDS_CFILES = \ elf64-sparc.c \ elf64-tilegx.c \ elf64-x86-64.c \ + elfxx-x86.c \ elf64.c \ elfn32-mips.c \ elfxx-aarch64.c \ diff --git a/bfd/Makefile.in b/bfd/Makefile.in index e48abaf..86f0dc2 100644 --- a/bfd/Makefile.in +++ b/bfd/Makefile.in @@ -680,6 +680,7 @@ BFD32_BACKENDS = \ elf32-hppa.lo \ elf32-i370.lo \ elf32-i386.lo \ + elfxx-x86.lo \ elf32-i860.lo \ elf32-i960.lo \ elf32-ip2k.lo \ @@ -876,6 +877,7 @@ BFD32_BACKENDS_CFILES = \ elf32-hppa.c \ elf32-i370.c \ elf32-i386.c \ + elfxx-x86.c \ elf32-i860.c \ elf32-i960.c \ elf32-ip2k.c \ @@ -1034,6 +1036,7 @@ BFD64_BACKENDS = \ elf64-sparc.lo \ elf64-tilegx.lo \ elf64-x86-64.lo \ + elfxx-x86.lo \ elf64.lo \ mach-o-aarch64.lo \ mach-o-x86-64.lo \ @@ -1069,6 +1072,7 @@ BFD64_BACKENDS_CFILES = \ elf64-sparc.c \ elf64-tilegx.c \ elf64-x86-64.c \ + elfxx-x86.c \ elf64.c \ elfn32-mips.c \ elfxx-aarch64.c \ @@ -1574,6 +1578,7 @@ distclean-compile: @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/elfxx-riscv.Plo@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/elfxx-sparc.Plo@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/elfxx-tilegx.Plo@am__quote@ +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/elfxx-x86.Plo@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/epoc-pe-arm.Plo@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/epoc-pei-arm.Plo@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/format.Plo@am__quote@ diff --git a/bfd/archive.c b/bfd/archive.c index f209bab..3ce3f9e 100644 --- a/bfd/archive.c +++ b/bfd/archive.c @@ -834,7 +834,12 @@ bfd_generic_archive_p (bfd *abfd) if (strncmp (armag, ARMAG, SARMAG) != 0 && strncmp (armag, ARMAGB, SARMAG) != 0 && ! bfd_is_thin_archive (abfd)) - return NULL; + { + bfd_set_error (bfd_error_wrong_format); + if (abfd->format == bfd_archive) + abfd->format = bfd_unknown; + return NULL; + } tdata_hold = bfd_ardata (abfd); @@ -1975,6 +1980,12 @@ bfd_ar_hdr_from_filesystem (bfd *abfd, const char *filename, bfd *member) status.st_gid); _bfd_ar_spacepad (hdr->ar_mode, sizeof (hdr->ar_mode), "%-8lo", status.st_mode); + if (status.st_size - (bfd_size_type) status.st_size != 0) + { + bfd_set_error (bfd_error_file_too_big); + free (ared); + return NULL; + } if (!_bfd_ar_sizepad (hdr->ar_size, sizeof (hdr->ar_size), status.st_size)) { free (ared); diff --git a/bfd/bfd-in2.h b/bfd/bfd-in2.h index 1343780..d126aed 100644 --- a/bfd/bfd-in2.h +++ b/bfd/bfd-in2.h @@ -3800,6 +3800,7 @@ pc-relative or some form of GOT-indirect relocation. */ BFD_RELOC_ARC_S25W_PCREL_PLT, BFD_RELOC_ARC_S21H_PCREL_PLT, BFD_RELOC_ARC_NPS_CMEM16, + BFD_RELOC_ARC_JLI_SECTOFF, /* ADI Blackfin 16 bit immediate absolute reloc. */ BFD_RELOC_BFIN_16_IMM, @@ -725,9 +725,18 @@ _doprnt (FILE *stream, const char *format, va_list ap) { /* L modifier for bfd_vma or bfd_size_type may be either long long or long. */ - if ((BFD_ARCH_SIZE < 64 || BFD_HOST_64BIT_LONG) - && sptr[-2] == 'L') - wide_width = 1; + if (sptr[-2] == 'L') + { + sptr[-2] = 'l'; + if (BFD_ARCH_SIZE < 64 || BFD_HOST_64BIT_LONG) + wide_width = 1; + else + { + sptr[-1] = 'l'; + *sptr++ = ptr[-1]; + *sptr = '\0'; + } + } switch (wide_width) { @@ -739,17 +748,14 @@ _doprnt (FILE *stream, const char *format, va_list ap) break; case 2: default: -#if defined (__GNUC__) || defined (HAVE_LONG_LONG) -# if defined (__MSVCRT__) - sptr--; - while (sptr[-1] == 'L' || sptr[-1] == 'l') - sptr--; - *sptr++ = 'I'; - *sptr++ = '6'; - *sptr++ = '4'; +#if defined (__MSVCRT__) + sptr[-3] = 'I'; + sptr[-2] = '6'; + sptr[-1] = '4'; *sptr++ = ptr[-1]; *sptr = '\0'; -# endif +#endif +#if defined (__GNUC__) || defined (HAVE_LONG_LONG) PRINT_TYPE (long long); #else /* Fake it and hope for the best. */ diff --git a/bfd/binary.c b/bfd/binary.c index 1018d56..4145e11 100644 --- a/bfd/binary.c +++ b/bfd/binary.c @@ -274,8 +274,8 @@ binary_set_section_contents (bfd *abfd, _bfd_error_handler /* xgettext:c-format */ (_("warning: writing section `%A' at huge (ie negative) " - "file offset 0x%lx."), - s, (unsigned long) s->filepos); + "file offset"), + s); } abfd->output_has_begun = TRUE; diff --git a/bfd/coff-arm.c b/bfd/coff-arm.c index b66ebe4..8a2fe1a 100644 --- a/bfd/coff-arm.c +++ b/bfd/coff-arm.c @@ -1743,8 +1743,8 @@ coff_arm_relocate_section (bfd *output_bfd, case bfd_reloc_outofrange: _bfd_error_handler /* xgettext:c-format */ - (_("%B: bad reloc address 0x%lx in section `%A'"), - input_bfd, (unsigned long) rel->r_vaddr, input_section); + (_("%B: bad reloc address %#Lx in section `%A'"), + input_bfd, rel->r_vaddr, input_section); return FALSE; case bfd_reloc_overflow: { @@ -2068,7 +2068,7 @@ bfd_arm_process_before_allocation (bfd * abfd, if (symndx >= obj_conv_table_size (abfd)) { /* xgettext:c-format */ - _bfd_error_handler (_("%B: illegal symbol index in reloc: %d"), + _bfd_error_handler (_("%B: illegal symbol index in reloc: %ld"), abfd, symndx); continue; } diff --git a/bfd/coff-mcore.c b/bfd/coff-mcore.c index 3ede766..e770afd 100644 --- a/bfd/coff-mcore.c +++ b/bfd/coff-mcore.c @@ -479,10 +479,9 @@ coff_mcore_relocate_section (bfd * output_bfd, _bfd_error_handler /* xgettext: c-format */ (_("Warning: unsupported reloc %s <file %B, section %A>\n" - "sym %ld (%s), r_vaddr %ld (%lx)"), + "sym %ld (%s), r_vaddr %Ld (%#Lx)"), howto->name, input_bfd, input_section, - rel->r_symndx, my_name, (long) rel->r_vaddr, - (unsigned long) rel->r_vaddr); + rel->r_symndx, my_name, rel->r_vaddr, rel->r_vaddr); break; case IMAGE_REL_MCORE_PCREL_IMM8BY4: diff --git a/bfd/coff-ppc.c b/bfd/coff-ppc.c index 9dca30c..66a78e7 100644 --- a/bfd/coff-ppc.c +++ b/bfd/coff-ppc.c @@ -1131,10 +1131,9 @@ coff_ppc_relocate_section (bfd *output_bfd, { _bfd_error_handler /* xgettext: c-format */ - (_("%B: Relocation for %s of %lx exceeds " + (_("%B: Relocation for %s of %#Lx exceeds " "Toc size limit"), - input_bfd, name, - (unsigned long) our_toc_offset); + input_bfd, name, our_toc_offset); bfd_set_error (bfd_error_bad_value); return FALSE; } @@ -1186,8 +1185,8 @@ coff_ppc_relocate_section (bfd *output_bfd, { _bfd_error_handler /* xgettext: c-format */ - (_("%B: Relocation exceeds allocated TOC (%lx)"), - input_bfd, (unsigned long) toc_section->size); + (_("%B: Relocation exceeds allocated TOC (%#Lx)"), + input_bfd, toc_section->size); bfd_set_error (bfd_error_bad_value); return FALSE; } @@ -1242,10 +1241,9 @@ coff_ppc_relocate_section (bfd *output_bfd, _bfd_error_handler /* xgettext: c-format */ (_("Warning: unsupported reloc %s <file %B, section %A>\n" - "sym %ld (%s), r_vaddr %ld (%lx)"), + "sym %ld (%s), r_vaddr %Ld (%#Lx)"), howto->name, input_bfd, input_section, - rel->r_symndx, my_name, (long) rel->r_vaddr, - (unsigned long) rel->r_vaddr); + rel->r_symndx, my_name, rel->r_vaddr, rel->r_vaddr); } break; case IMAGE_REL_PPC_IMGLUE: diff --git a/bfd/coff-rs6000.c b/bfd/coff-rs6000.c index 3c5042f..c72d0db 100644 --- a/bfd/coff-rs6000.c +++ b/bfd/coff-rs6000.c @@ -203,7 +203,8 @@ bfd_boolean (*xcoff_complain_overflow[XCOFF_MAX_COMPLAIN_OVERFLOW]) }; /* Information about one member of an archive. */ -struct member_layout { +struct member_layout +{ /* The archive member that this structure describes. */ bfd *member; @@ -237,7 +238,8 @@ struct member_layout { }; /* A structure used for iterating over the members of an archive. */ -struct archive_iterator { +struct archive_iterator +{ /* The archive itself. */ bfd *archive; @@ -654,8 +656,6 @@ _bfd_xcoff_swap_aux_out (bfd *abfd, void * inp, int type, int in_class, end: return bfd_coff_auxesz (abfd); } - - /* The XCOFF reloc table. Actually, XCOFF relocations specify the bitsize and whether they are signed or not, along with a @@ -663,7 +663,6 @@ end: different algorithms for putting in the reloc. Many of these relocs need special_function entries, which I have not written. */ - reloc_howto_type xcoff_howto_table[] = { /* 0x00: Standard 32 bit relocation. */ @@ -1185,6 +1184,51 @@ bfd_xcoff_ar_archive_set_magic (bfd *abfd ATTRIBUTE_UNUSED, /* bfd_xcoff_archive_set_magic (abfd, magic); */ } +/* PR 21786: The PE/COFF standard does not require NUL termination for any of + the ASCII fields in the archive headers. So in order to be able to extract + numerical values we provide our own versions of strtol and strtoll which + take a maximum length as an additional parameter. Also - just to save space, + we omit the endptr return parameter, since we know that it is never used. */ + +static long +_bfd_strntol (const char * nptr, int base, unsigned int maxlen) +{ + char buf[24]; /* Should be enough. */ + + BFD_ASSERT (maxlen < (sizeof (buf) - 1)); + + memcpy (buf, nptr, maxlen); + buf[maxlen] = 0; + return strtol (buf, NULL, base); +} + +static long long +_bfd_strntoll (const char * nptr, int base, unsigned int maxlen) +{ + char buf[32]; /* Should be enough. */ + + BFD_ASSERT (maxlen < (sizeof (buf) - 1)); + + memcpy (buf, nptr, maxlen); + buf[maxlen] = 0; + return strtoll (buf, NULL, base); +} + +/* Macro to read an ASCII value stored in an archive header field. */ +#define GET_VALUE_IN_FIELD(VAR, FIELD) \ + do \ + { \ + (VAR) = sizeof (VAR) > sizeof (long) \ + ? _bfd_strntoll (FIELD, 10, sizeof FIELD) \ + : _bfd_strntol (FIELD, 10, sizeof FIELD); \ + } \ + while (0) + +#define EQ_VALUE_IN_FIELD(VAR, FIELD) \ + (sizeof (VAR) > sizeof (long) \ + ? (VAR) ==_bfd_strntoll (FIELD, 10, sizeof FIELD) \ + : (VAR) == _bfd_strntol (FIELD, 10, sizeof FIELD)) + /* Read in the armap of an XCOFF archive. */ bfd_boolean @@ -1209,7 +1253,7 @@ _bfd_xcoff_slurp_armap (bfd *abfd) /* This is for the old format. */ struct xcoff_ar_hdr hdr; - off = strtol (xcoff_ardata (abfd)->symoff, (char **) NULL, 10); + GET_VALUE_IN_FIELD (off, xcoff_ardata (abfd)->symoff); if (off == 0) { bfd_has_map (abfd) = FALSE; @@ -1225,12 +1269,12 @@ _bfd_xcoff_slurp_armap (bfd *abfd) return FALSE; /* Skip the name (normally empty). */ - namlen = strtol (hdr.namlen, (char **) NULL, 10); + GET_VALUE_IN_FIELD (namlen, hdr.namlen); off = ((namlen + 1) & ~ (size_t) 1) + SXCOFFARFMAG; if (bfd_seek (abfd, off, SEEK_CUR) != 0) return FALSE; - sz = strtol (hdr.size, (char **) NULL, 10); + GET_VALUE_IN_FIELD (sz, hdr.size); /* Read in the entire symbol table. */ contents = (bfd_byte *) bfd_alloc (abfd, sz); @@ -1264,7 +1308,7 @@ _bfd_xcoff_slurp_armap (bfd *abfd) /* This is for the new format. */ struct xcoff_ar_hdr_big hdr; - off = strtol (xcoff_ardata_big (abfd)->symoff, (char **) NULL, 10); + GET_VALUE_IN_FIELD (off, xcoff_ardata_big (abfd)->symoff); if (off == 0) { bfd_has_map (abfd) = FALSE; @@ -1280,15 +1324,12 @@ _bfd_xcoff_slurp_armap (bfd *abfd) return FALSE; /* Skip the name (normally empty). */ - namlen = strtol (hdr.namlen, (char **) NULL, 10); + GET_VALUE_IN_FIELD (namlen, hdr.namlen); off = ((namlen + 1) & ~ (size_t) 1) + SXCOFFARFMAG; if (bfd_seek (abfd, off, SEEK_CUR) != 0) return FALSE; - /* XXX This actually has to be a call to strtoll (at least on 32-bit - machines) since the field width is 20 and there numbers with more - than 32 bits can be represented. */ - sz = strtol (hdr.size, (char **) NULL, 10); + GET_VALUE_IN_FIELD (sz, hdr.size); /* Read in the entire symbol table. */ contents = (bfd_byte *) bfd_alloc (abfd, sz); @@ -1393,8 +1434,8 @@ _bfd_xcoff_archive_p (bfd *abfd) goto error_ret; } - bfd_ardata (abfd)->first_file_filepos = strtol (hdr.firstmemoff, - (char **) NULL, 10); + GET_VALUE_IN_FIELD (bfd_ardata (abfd)->first_file_filepos, + hdr.firstmemoff); amt = SIZEOF_AR_FILE_HDR; bfd_ardata (abfd)->tdata = bfd_zalloc (abfd, amt); @@ -1469,7 +1510,7 @@ _bfd_xcoff_read_ar_hdr (bfd *abfd) return NULL; } - namlen = strtol (hdr.namlen, (char **) NULL, 10); + GET_VALUE_IN_FIELD (namlen, hdr.namlen); amt = SIZEOF_AR_HDR + namlen + 1; hdrp = (struct xcoff_ar_hdr *) bfd_alloc (abfd, amt); if (hdrp == NULL) @@ -1486,7 +1527,7 @@ _bfd_xcoff_read_ar_hdr (bfd *abfd) ((char *) hdrp)[SIZEOF_AR_HDR + namlen] = '\0'; ret->arch_header = (char *) hdrp; - ret->parsed_size = strtol (hdr.size, (char **) NULL, 10); + GET_VALUE_IN_FIELD (ret->parsed_size, hdr.size); ret->filename = (char *) hdrp + SIZEOF_AR_HDR; } else @@ -1501,7 +1542,7 @@ _bfd_xcoff_read_ar_hdr (bfd *abfd) return NULL; } - namlen = strtol (hdr.namlen, (char **) NULL, 10); + GET_VALUE_IN_FIELD (namlen, hdr.namlen); amt = SIZEOF_AR_HDR_BIG + namlen + 1; hdrp = (struct xcoff_ar_hdr_big *) bfd_alloc (abfd, amt); if (hdrp == NULL) @@ -1518,10 +1559,7 @@ _bfd_xcoff_read_ar_hdr (bfd *abfd) ((char *) hdrp)[SIZEOF_AR_HDR_BIG + namlen] = '\0'; ret->arch_header = (char *) hdrp; - /* XXX This actually has to be a call to strtoll (at least on 32-bit - machines) since the field width is 20 and there numbers with more - than 32 bits can be represented. */ - ret->parsed_size = strtol (hdr.size, (char **) NULL, 10); + GET_VALUE_IN_FIELD (ret->parsed_size, hdr.size); ret->filename = (char *) hdrp + SIZEOF_AR_HDR_BIG; } @@ -1550,14 +1588,11 @@ _bfd_xcoff_openr_next_archived_file (bfd *archive, bfd *last_file) if (last_file == NULL) filestart = bfd_ardata (archive)->first_file_filepos; else - filestart = strtol (arch_xhdr (last_file)->nextoff, (char **) NULL, - 10); + GET_VALUE_IN_FIELD (filestart, arch_xhdr (last_file)->nextoff); if (filestart == 0 - || filestart == strtol (xcoff_ardata (archive)->memoff, - (char **) NULL, 10) - || filestart == strtol (xcoff_ardata (archive)->symoff, - (char **) NULL, 10)) + || EQ_VALUE_IN_FIELD (filestart, xcoff_ardata (archive)->memoff) + || EQ_VALUE_IN_FIELD (filestart, xcoff_ardata (archive)->symoff)) { bfd_set_error (bfd_error_no_more_archived_files); return NULL; @@ -1568,20 +1603,11 @@ _bfd_xcoff_openr_next_archived_file (bfd *archive, bfd *last_file) if (last_file == NULL) filestart = bfd_ardata (archive)->first_file_filepos; else - /* XXX These actually have to be a calls to strtoll (at least - on 32-bit machines) since the fields's width is 20 and - there numbers with more than 32 bits can be represented. */ - filestart = strtol (arch_xhdr_big (last_file)->nextoff, (char **) NULL, - 10); - - /* XXX These actually have to be calls to strtoll (at least on 32-bit - machines) since the fields's width is 20 and there numbers with more - than 32 bits can be represented. */ + GET_VALUE_IN_FIELD (filestart, arch_xhdr_big (last_file)->nextoff); + if (filestart == 0 - || filestart == strtol (xcoff_ardata_big (archive)->memoff, - (char **) NULL, 10) - || filestart == strtol (xcoff_ardata_big (archive)->symoff, - (char **) NULL, 10)) + || EQ_VALUE_IN_FIELD (filestart, xcoff_ardata_big (archive)->memoff) + || EQ_VALUE_IN_FIELD (filestart, xcoff_ardata_big (archive)->symoff)) { bfd_set_error (bfd_error_no_more_archived_files); return NULL; @@ -1606,20 +1632,20 @@ _bfd_xcoff_stat_arch_elt (bfd *abfd, struct stat *s) { struct xcoff_ar_hdr *hdrp = arch_xhdr (abfd); - s->st_mtime = strtol (hdrp->date, (char **) NULL, 10); - s->st_uid = strtol (hdrp->uid, (char **) NULL, 10); - s->st_gid = strtol (hdrp->gid, (char **) NULL, 10); - s->st_mode = strtol (hdrp->mode, (char **) NULL, 8); + GET_VALUE_IN_FIELD (s->st_mtime, hdrp->date); + GET_VALUE_IN_FIELD (s->st_uid, hdrp->uid); + GET_VALUE_IN_FIELD (s->st_gid, hdrp->gid); + GET_VALUE_IN_FIELD (s->st_mode, hdrp->mode); s->st_size = arch_eltdata (abfd)->parsed_size; } else { struct xcoff_ar_hdr_big *hdrp = arch_xhdr_big (abfd); - s->st_mtime = strtol (hdrp->date, (char **) NULL, 10); - s->st_uid = strtol (hdrp->uid, (char **) NULL, 10); - s->st_gid = strtol (hdrp->gid, (char **) NULL, 10); - s->st_mode = strtol (hdrp->mode, (char **) NULL, 8); + GET_VALUE_IN_FIELD (s->st_mtime, hdrp->date); + GET_VALUE_IN_FIELD (s->st_uid, hdrp->uid); + GET_VALUE_IN_FIELD (s->st_gid, hdrp->gid); + GET_VALUE_IN_FIELD (s->st_mode, hdrp->mode); s->st_size = arch_eltdata (abfd)->parsed_size; } @@ -2830,7 +2856,7 @@ xcoff_reloc_type_toc (bfd *input_bfd, { _bfd_error_handler /* xgettext: c-format */ - (_("%B: TOC reloc at 0x%x to symbol `%s' with no TOC entry"), + (_("%B: TOC reloc at %#Lx to symbol `%s' with no TOC entry"), input_bfd, rel->r_vaddr, h->root.root.string); bfd_set_error (bfd_error_bad_value); return FALSE; diff --git a/bfd/coff-sh.c b/bfd/coff-sh.c index 26d296b..8170152 100644 --- a/bfd/coff-sh.c +++ b/bfd/coff-sh.c @@ -775,8 +775,8 @@ sh_relax_section (bfd *abfd, if (laddr >= sec->size) { /* xgettext: c-format */ - _bfd_error_handler (_("%B: 0x%lx: warning: bad R_SH_USES offset"), - abfd, (unsigned long) irel->r_vaddr); + _bfd_error_handler (_("%B: %#Lx: warning: bad R_SH_USES offset"), + abfd, irel->r_vaddr); continue; } insn = bfd_get_16 (abfd, contents + laddr); @@ -786,8 +786,8 @@ sh_relax_section (bfd *abfd, { _bfd_error_handler /* xgettext: c-format */ - (_("%B: 0x%lx: warning: R_SH_USES points to unrecognized insn 0x%x"), - abfd, (unsigned long) irel->r_vaddr, insn); + (_("%B: %#Lx: warning: R_SH_USES points to unrecognized insn %#x"), + abfd, irel->r_vaddr, insn); continue; } @@ -804,8 +804,8 @@ sh_relax_section (bfd *abfd, { _bfd_error_handler /* xgettext: c-format */ - (_("%B: 0x%lx: warning: bad R_SH_USES load offset"), - abfd, (unsigned long) irel->r_vaddr); + (_("%B: %#Lx: warning: bad R_SH_USES load offset"), + abfd, irel->r_vaddr); continue; } @@ -829,8 +829,8 @@ sh_relax_section (bfd *abfd, { _bfd_error_handler /* xgettext: c-format */ - (_("%B: 0x%lx: warning: could not find expected reloc"), - abfd, (unsigned long) paddr); + (_("%B: %#Lx: warning: could not find expected reloc"), + abfd, paddr); continue; } @@ -846,8 +846,8 @@ sh_relax_section (bfd *abfd, { _bfd_error_handler /* xgettext: c-format */ - (_("%B: 0x%lx: warning: symbol in unexpected section"), - abfd, (unsigned long) paddr); + (_("%B: %#Lx: warning: symbol in unexpected section"), + abfd, paddr); continue; } @@ -972,8 +972,8 @@ sh_relax_section (bfd *abfd, { _bfd_error_handler /* xgettext: c-format */ - (_("%B: 0x%lx: warning: could not find expected COUNT reloc"), - abfd, (unsigned long) paddr); + (_("%B: %#Lx: warning: could not find expected COUNT reloc"), + abfd, paddr); continue; } @@ -982,8 +982,8 @@ sh_relax_section (bfd *abfd, if (irelcount->r_offset == 0) { /* xgettext: c-format */ - _bfd_error_handler (_("%B: 0x%lx: warning: bad count"), - abfd, (unsigned long) paddr); + _bfd_error_handler (_("%B: %#Lx: warning: bad count"), + abfd, paddr); continue; } @@ -1083,7 +1083,7 @@ sh_relax_delete_bytes (bfd *abfd, contents = coff_section_data (abfd, sec)->contents; - /* The deletion must stop at the next ALIGN reloc for an aligment + /* The deletion must stop at the next ALIGN reloc for an alignment power larger than the number of bytes we are deleting. */ irelalign = NULL; @@ -1354,8 +1354,8 @@ sh_relax_delete_bytes (bfd *abfd, { _bfd_error_handler /* xgettext: c-format */ - (_("%B: 0x%lx: fatal: reloc overflow while relaxing"), - abfd, (unsigned long) irel->r_vaddr); + (_("%B: %#Lx: fatal: reloc overflow while relaxing"), + abfd, irel->r_vaddr); bfd_set_error (bfd_error_bad_value); return FALSE; } @@ -2642,8 +2642,8 @@ sh_swap_insns (bfd * abfd, { _bfd_error_handler /* xgettext: c-format */ - (_("%B: 0x%lx: fatal: reloc overflow while relaxing"), - abfd, (unsigned long) irel->r_vaddr); + (_("%B: %#Lx: fatal: reloc overflow while relaxing"), + abfd, irel->r_vaddr); bfd_set_error (bfd_error_bad_value); return FALSE; } diff --git a/bfd/coff-tic80.c b/bfd/coff-tic80.c index ec1d1fd..253ea94 100644 --- a/bfd/coff-tic80.c +++ b/bfd/coff-tic80.c @@ -667,8 +667,8 @@ coff_tic80_relocate_section (bfd *output_bfd, case bfd_reloc_outofrange: _bfd_error_handler /* xgettext: c-format */ - (_("%B: bad reloc address 0x%lx in section `%A'"), - input_bfd, (unsigned long) rel->r_vaddr, input_section); + (_("%B: bad reloc address %#Lx in section `%A'"), + input_bfd, rel->r_vaddr, input_section); return FALSE; case bfd_reloc_overflow: { diff --git a/bfd/coff64-rs6000.c b/bfd/coff64-rs6000.c index 525b079..460bf49 100644 --- a/bfd/coff64-rs6000.c +++ b/bfd/coff64-rs6000.c @@ -1852,6 +1852,46 @@ xcoff64_reloc_name_lookup (bfd *abfd ATTRIBUTE_UNUSED, return NULL; } +/* PR 21786: The PE/COFF standard does not require NUL termination for any of + the ASCII fields in the archive headers. So in order to be able to extract + numerical values we provide our own versions of strtol and strtoll which + take a maximum length as an additional parameter. Also - just to save space, + we omit the endptr return parameter, since we know that it is never used. */ + +static long +_bfd_strntol (const char * nptr, int base, unsigned int maxlen) +{ + char buf[24]; /* Should be enough. */ + + BFD_ASSERT (maxlen < (sizeof (buf) - 1)); + + memcpy (buf, nptr, maxlen); + buf[maxlen] = 0; + return strtol (buf, NULL, base); +} + +static long long +_bfd_strntoll (const char * nptr, int base, unsigned int maxlen) +{ + char buf[32]; /* Should be enough. */ + + BFD_ASSERT (maxlen < (sizeof (buf) - 1)); + + memcpy (buf, nptr, maxlen); + buf[maxlen] = 0; + return strtoll (buf, NULL, base); +} + +/* Macro to read an ASCII value stored in an archive header field. */ +#define GET_VALUE_IN_FIELD(VAR, FIELD) \ + do \ + { \ + (VAR) = sizeof (VAR) > sizeof (long) \ + ? _bfd_strntoll (FIELD, 10, sizeof FIELD) \ + : _bfd_strntol (FIELD, 10, sizeof FIELD); \ + } \ + while (0) + /* Read in the armap of an XCOFF archive. */ static bfd_boolean @@ -1892,7 +1932,7 @@ xcoff64_slurp_armap (bfd *abfd) return FALSE; /* Skip the name (normally empty). */ - namlen = strtol (hdr.namlen, (char **) NULL, 10); + GET_VALUE_IN_FIELD (namlen, hdr.namlen); pos = ((namlen + 1) & ~(size_t) 1) + SXCOFFARFMAG; if (bfd_seek (abfd, pos, SEEK_CUR) != 0) return FALSE; diff --git a/bfd/coffcode.h b/bfd/coffcode.h index d6388d7..21308de 100644 --- a/bfd/coffcode.h +++ b/bfd/coffcode.h @@ -997,7 +997,13 @@ handle_COMDAT (bfd * abfd, || isym.n_sclass == C_EXT) && BTYPE (isym.n_type) == T_NULL && isym.n_value == 0)) - abort (); + { + /* Malformed input files can trigger this test. + cf PR 21781. */ + _bfd_error_handler (_("%B: error: unexpected symbol '%s' in COMDAT section"), + abfd, symname); + goto breakloop; + } /* FIXME LATER: MSVC generates section names like .text for comdats. Gas generates @@ -1311,7 +1317,7 @@ styp_to_sec_flags (bfd *abfd, { _bfd_error_handler /* xgettext:c-format */ - (_("%B (%s): Section flag %s (0x%x) ignored"), + (_("%B (%s): Section flag %s (%#lx) ignored"), abfd, name, unhandled, flag); result = FALSE; } @@ -3765,7 +3771,7 @@ coff_write_object_contents (bfd * abfd) _bfd_error_handler /* xgettext:c-format */ (_("%B: section %A: string table overflow at offset %ld"), - abfd, current, string_size); + abfd, current, (unsigned long) string_size); return FALSE; } @@ -4607,7 +4613,7 @@ coff_slurp_line_table (bfd *abfd, asection *asect) if (cache_ptr->line_number == 0) { combined_entry_type * ent; - bfd_vma symndx; + unsigned long symndx; coff_symbol_type *sym; have_func = FALSE; @@ -4617,7 +4623,7 @@ coff_slurp_line_table (bfd *abfd, asection *asect) _bfd_error_handler /* xgettext:c-format */ (_("%B: warning: illegal symbol index 0x%lx in line number entry %d"), - abfd, (long) symndx, counter); + abfd, symndx, counter); cache_ptr->line_number = -1; ret = FALSE; continue; @@ -4631,7 +4637,7 @@ coff_slurp_line_table (bfd *abfd, asection *asect) _bfd_error_handler /* xgettext:c-format */ (_("%B: warning: illegal symbol index 0x%lx in line number entry %d"), - abfd, (long) symndx, counter); + abfd, symndx, counter); cache_ptr->line_number = -1; ret = FALSE; continue; @@ -4811,6 +4817,9 @@ coff_slurp_symbol_table (bfd * abfd) #endif #ifdef RS6000COFF_C case C_HIDEXT: +#if ! defined _AIX52 && ! defined AIX_WEAK_SUPPORT + case C_AIX_WEAKEXT: +#endif #endif #ifdef C_SYSTEM case C_SYSTEM: /* System Wide variable. */ @@ -4883,7 +4892,11 @@ coff_slurp_symbol_table (bfd * abfd) && src->u.syment.n_scnum > 0) dst->symbol.flags = BSF_LOCAL; #endif - if (src->u.syment.n_sclass == C_WEAKEXT) + if (src->u.syment.n_sclass == C_WEAKEXT +#ifdef RS6000COFF_C + || src->u.syment.n_sclass == C_AIX_WEAKEXT +#endif + ) dst->symbol.flags |= BSF_WEAK; break; @@ -5312,7 +5325,7 @@ coff_slurp_reloc_table (bfd * abfd, sec_ptr asect, asymbol ** symbols) _bfd_error_handler /* xgettext:c-format */ (_("%B: warning: illegal symbol index %ld in relocs"), - abfd, (long) dst.r_symndx); + abfd, dst.r_symndx); cache_ptr->sym_ptr_ptr = bfd_abs_section_ptr->symbol_ptr_ptr; ptr = NULL; } @@ -5351,8 +5364,8 @@ coff_slurp_reloc_table (bfd * abfd, sec_ptr asect, asymbol ** symbols) { _bfd_error_handler /* xgettext:c-format */ - (_("%B: illegal relocation type %d at address 0x%lx"), - abfd, dst.r_type, (long) dst.r_vaddr); + (_("%B: illegal relocation type %d at address %#Lx"), + abfd, dst.r_type, dst.r_vaddr); bfd_set_error (bfd_error_bad_value); return FALSE; } diff --git a/bfd/coffgen.c b/bfd/coffgen.c index 31c2c5a..d7cdf8f 100644 --- a/bfd/coffgen.c +++ b/bfd/coffgen.c @@ -1645,7 +1645,7 @@ _bfd_coff_get_external_symbols (bfd *abfd) if (syms == NULL) { /* PR 21013: Provide an error message when the alloc fails. */ - _bfd_error_handler (_("%B: Not enough memory to allocate space for %lu symbols"), + _bfd_error_handler (_("%B: Not enough memory to allocate space for %Lu symbols"), abfd, size); return FALSE; } @@ -1713,7 +1713,7 @@ _bfd_coff_read_string_table (bfd *abfd) { _bfd_error_handler /* xgettext: c-format */ - (_("%B: bad string table size %lu"), abfd, (unsigned long) strsize); + (_("%B: bad string table size %Lu"), abfd, strsize); bfd_set_error (bfd_error_bad_value); return NULL; } diff --git a/bfd/cofflink.c b/bfd/cofflink.c index aa84a35..32d62bd 100644 --- a/bfd/cofflink.c +++ b/bfd/cofflink.c @@ -2727,7 +2727,7 @@ _bfd_coff_write_global_sym (struct bfd_hash_entry *bh, void *data) || bfd_link_relocatable (flaginfo->info))) _bfd_error_handler /* xgettext: c-format */ - (_("%B: %A: reloc overflow: 0x%lx > 0xffff"), + (_("%B: %A: reloc overflow: %#x > 0xffff"), output_bfd, sec, sec->reloc_count); if (sec->lineno_count > 0xffff @@ -2735,7 +2735,7 @@ _bfd_coff_write_global_sym (struct bfd_hash_entry *bh, void *data) || bfd_link_relocatable (flaginfo->info))) _bfd_error_handler /* xgettext: c-format */ - (_("%B: warning: %A: line number overflow: 0x%lx > 0xffff"), + (_("%B: warning: %A: line number overflow: %#x > 0xffff"), output_bfd, sec, sec->lineno_count); auxp->x_scn.x_nreloc = sec->reloc_count; @@ -3120,8 +3120,8 @@ _bfd_coff_generic_relocate_section (bfd *output_bfd, case bfd_reloc_outofrange: _bfd_error_handler /* xgettext: c-format */ - (_("%B: bad reloc address 0x%lx in section `%A'"), - input_bfd, (unsigned long) rel->r_vaddr, input_section); + (_("%B: bad reloc address %#Lx in section `%A'"), + input_bfd, rel->r_vaddr, input_section); return FALSE; case bfd_reloc_overflow: { diff --git a/bfd/compress.c b/bfd/compress.c index ef549f9..d06f2fe 100644 --- a/bfd/compress.c +++ b/bfd/compress.c @@ -106,7 +106,7 @@ bfd_compress_section_contents (bfd *abfd, sec_ptr sec, if (orig_compression_header_size == 0) { /* Convert it from .zdebug* section. Get the uncompressed - size first. We need to substract the 12-byte overhead in + size first. We need to subtract the 12-byte overhead in .zdebug* section. Set orig_compression_header_size to the 12-bye overhead. */ orig_compression_header_size = 12; @@ -252,8 +252,8 @@ bfd_get_full_section_contents (bfd *abfd, sec_ptr sec, bfd_byte **ptr) if (bfd_get_error () == bfd_error_no_memory) _bfd_error_handler /* xgettext:c-format */ - (_("error: %B(%A) is too large (%#lx bytes)"), - abfd, sec, (long) sz); + (_("error: %B(%A) is too large (%#Lx bytes)"), + abfd, sec, sz); return FALSE; } } diff --git a/bfd/configure b/bfd/configure index f6bd2e8..32ee062 100755 --- a/bfd/configure +++ b/bfd/configure @@ -12495,7 +12495,7 @@ bfd_default_target_size=32 # host stuff: -ALL_LINGUAS="fr tr ja es sv da zh_CN ro rw vi fi id ru uk sr" +ALL_LINGUAS="da es fi fr hr id ja ro ru rw sr sv tr uk vi zh_CN" # If we haven't got the data from the intl directory, # assume NLS is disabled. USE_NLS=no @@ -14391,17 +14391,17 @@ do i386_coff_go32_vec) tb="$tb coff-go32.lo $coff" ;; i386_coff_go32stubbed_vec) tb="$tb coff-stgo32.lo $coff" ;; i386_coff_lynx_vec) tb="$tb cf-i386lynx.lo lynx-core.lo $coff" ;; - i386_elf32_vec) tb="$tb elf32-i386.lo elf-ifunc.lo elf-nacl.lo elf-vxworks.lo elf32.lo $elf" ;; - i386_elf32_fbsd_vec) tb="$tb elf32-i386.lo elf-ifunc.lo elf-nacl.lo elf-vxworks.lo elf32.lo $elf" ;; - i386_elf32_nacl_vec) tb="$tb elf32-i386.lo elf-ifunc.lo elf-nacl.lo elf-vxworks.lo elf32.lo $elf" ;; - i386_elf32_sol2_vec) tb="$tb elf32-i386.lo elf-ifunc.lo elf-nacl.lo elf-vxworks.lo elf32.lo $elf" ;; - i386_elf32_vxworks_vec) tb="$tb elf32-i386.lo elf-ifunc.lo elf-nacl.lo elf-vxworks.lo elf32.lo $elf" ;; + i386_elf32_vec) tb="$tb elf32-i386.lo elfxx-x86.lo elf-ifunc.lo elf-nacl.lo elf-vxworks.lo elf32.lo $elf" ;; + i386_elf32_fbsd_vec) tb="$tb elf32-i386.lo elfxx-x86.lo elf-ifunc.lo elf-nacl.lo elf-vxworks.lo elf32.lo $elf" ;; + i386_elf32_nacl_vec) tb="$tb elf32-i386.lo elfxx-x86.lo elf-ifunc.lo elf-nacl.lo elf-vxworks.lo elf32.lo $elf" ;; + i386_elf32_sol2_vec) tb="$tb elf32-i386.lo elfxx-x86.lo elf-ifunc.lo elf-nacl.lo elf-vxworks.lo elf32.lo $elf" ;; + i386_elf32_vxworks_vec) tb="$tb elf32-i386.lo elfxx-x86.lo elf-ifunc.lo elf-nacl.lo elf-vxworks.lo elf32.lo $elf" ;; i386_mach_o_vec) tb="$tb mach-o-i386.lo" ;; i386_msdos_vec) tb="$tb i386msdos.lo" ;; i386_nlm32_vec) tb="$tb nlm32-i386.lo nlm32.lo nlm.lo" ;; i386_pe_vec) tb="$tb pe-i386.lo peigen.lo $coff" ;; i386_pei_vec) tb="$tb pei-i386.lo peigen.lo $coff" ;; - iamcu_elf32_vec) tb="$tb elf32-i386.lo elf-ifunc.lo elf-nacl.lo elf-vxworks.lo elf32.lo $elf" ;; + iamcu_elf32_vec) tb="$tb elf32-i386.lo elfxx-x86.lo elf-ifunc.lo elf-nacl.lo elf-vxworks.lo elf32.lo $elf" ;; i860_coff_vec) tb="$tb coff-i860.lo $coff" ;; i860_elf32_vec) tb="$tb elf32-i860.lo elf32.lo $elf" ;; i860_elf32_le_vec) tb="$tb elf32-i860.lo elf32.lo $elf" ;; @@ -14418,10 +14418,10 @@ do ieee_vec) tb="$tb ieee.lo" ;; ip2k_elf32_vec) tb="$tb elf32-ip2k.lo elf32.lo $elf" ;; iq2000_elf32_vec) tb="$tb elf32-iq2000.lo elf32.lo $elf" ;; - k1om_elf64_vec) tb="$tb elf64-x86-64.lo elf-ifunc.lo elf-nacl.lo elf64.lo $elf"; target_size=64 ;; - k1om_elf64_fbsd_vec) tb="$tb elf64-x86-64.lo elf-ifunc.lo elf-nacl.lo elf64.lo $elf"; target_size=64 ;; - l1om_elf64_vec) tb="$tb elf64-x86-64.lo elf-ifunc.lo elf-nacl.lo elf64.lo $elf"; target_size=64 ;; - l1om_elf64_fbsd_vec) tb="$tb elf64-x86-64.lo elf-ifunc.lo elf-nacl.lo elf64.lo $elf"; target_size=64 ;; + k1om_elf64_vec) tb="$tb elf64-x86-64.lo elfxx-x86.lo elf-ifunc.lo elf-nacl.lo elf64.lo $elf"; target_size=64 ;; + k1om_elf64_fbsd_vec) tb="$tb elf64-x86-64.lo elfxx-x86.lo elf-ifunc.lo elf-nacl.lo elf64.lo $elf"; target_size=64 ;; + l1om_elf64_vec) tb="$tb elf64-x86-64.lo elfxx-x86.lo elf-ifunc.lo elf-nacl.lo elf64.lo $elf"; target_size=64 ;; + l1om_elf64_fbsd_vec) tb="$tb elf64-x86-64.lo elfxx-x86.lo elf-ifunc.lo elf-nacl.lo elf64.lo $elf"; target_size=64 ;; lm32_elf32_vec) tb="$tb elf32-lm32.lo elf32.lo $elf" ;; lm32_elf32_fdpic_vec) tb="$tb elf32-lm32.lo elf32.lo $elf" ;; m32c_elf32_vec) tb="$tb elf32-m32c.lo elf32.lo $elf" ;; @@ -14623,13 +14623,13 @@ do wasm32_elf32_vec) tb="$tb elf32-wasm32.lo elf32.lo $elf" ;; we32k_coff_vec) tb="$tb coff-we32k.lo $coffgen" ;; x86_64_coff_vec) tb="$tb coff-x86_64.lo $coff"; target_size=64 ;; - x86_64_elf32_vec) tb="$tb elf64-x86-64.lo elf-ifunc.lo elf-nacl.lo elf64.lo elf32.lo $elf"; target_size=64 ;; - x86_64_elf32_nacl_vec) tb="$tb elf64-x86-64.lo elf-ifunc.lo elf-nacl.lo elf64.lo elf32.lo $elf"; target_size=64 ;; - x86_64_elf64_vec) tb="$tb elf64-x86-64.lo elf-ifunc.lo elf-nacl.lo elf64.lo $elf"; target_size=64 ;; - x86_64_elf64_cloudabi_vec) tb="$tb elf64-x86-64.lo elf-ifunc.lo elf-nacl.lo elf64.lo $elf"; target_size=64 ;; - x86_64_elf64_fbsd_vec) tb="$tb elf64-x86-64.lo elf-ifunc.lo elf-nacl.lo elf64.lo $elf"; target_size=64 ;; - x86_64_elf64_nacl_vec) tb="$tb elf64-x86-64.lo elf-ifunc.lo elf-nacl.lo elf64.lo $elf"; target_size=64 ;; - x86_64_elf64_sol2_vec) tb="$tb elf64-x86-64.lo elf-ifunc.lo elf-nacl.lo elf64.lo $elf"; target_size=64 ;; + x86_64_elf32_vec) tb="$tb elf64-x86-64.lo elfxx-x86.lo elf-ifunc.lo elf-nacl.lo elf64.lo elf32.lo $elf"; target_size=64 ;; + x86_64_elf32_nacl_vec) tb="$tb elf64-x86-64.lo elfxx-x86.lo elf-ifunc.lo elf-nacl.lo elf64.lo elf32.lo $elf"; target_size=64 ;; + x86_64_elf64_vec) tb="$tb elf64-x86-64.lo elfxx-x86.lo elf-ifunc.lo elf-nacl.lo elf64.lo $elf"; target_size=64 ;; + x86_64_elf64_cloudabi_vec) tb="$tb elf64-x86-64.lo elfxx-x86.lo elf-ifunc.lo elf-nacl.lo elf64.lo $elf"; target_size=64 ;; + x86_64_elf64_fbsd_vec) tb="$tb elf64-x86-64.lo elfxx-x86.lo elf-ifunc.lo elf-nacl.lo elf64.lo $elf"; target_size=64 ;; + x86_64_elf64_nacl_vec) tb="$tb elf64-x86-64.lo elfxx-x86.lo elf-ifunc.lo elf-nacl.lo elf64.lo $elf"; target_size=64 ;; + x86_64_elf64_sol2_vec) tb="$tb elf64-x86-64.lo elfxx-x86.lo elf-ifunc.lo elf-nacl.lo elf64.lo $elf"; target_size=64 ;; x86_64_mach_o_vec) tb="$tb mach-o-x86-64.lo" ;; x86_64_pe_vec) tb="$tb pe-x86_64.lo pex64igen.lo $coff"; target_size=64 ;; x86_64_pe_be_vec) tb="$tb pe-x86_64.lo pex64igen.lo $coff"; target_size=64 ;; diff --git a/bfd/configure.ac b/bfd/configure.ac index dfbe3df..0e4c669 100644 --- a/bfd/configure.ac +++ b/bfd/configure.ac @@ -143,7 +143,7 @@ bfd_default_target_size=32 # host stuff: -ALL_LINGUAS="fr tr ja es sv da zh_CN ro rw vi fi id ru uk sr" +ALL_LINGUAS="da es fi fr hr id ja ro ru rw sr sv tr uk vi zh_CN" ZW_GNU_GETTEXT_SISTER_DIR AM_PO_SUBDIRS @@ -473,17 +473,17 @@ do i386_coff_go32_vec) tb="$tb coff-go32.lo $coff" ;; i386_coff_go32stubbed_vec) tb="$tb coff-stgo32.lo $coff" ;; i386_coff_lynx_vec) tb="$tb cf-i386lynx.lo lynx-core.lo $coff" ;; - i386_elf32_vec) tb="$tb elf32-i386.lo elf-ifunc.lo elf-nacl.lo elf-vxworks.lo elf32.lo $elf" ;; - i386_elf32_fbsd_vec) tb="$tb elf32-i386.lo elf-ifunc.lo elf-nacl.lo elf-vxworks.lo elf32.lo $elf" ;; - i386_elf32_nacl_vec) tb="$tb elf32-i386.lo elf-ifunc.lo elf-nacl.lo elf-vxworks.lo elf32.lo $elf" ;; - i386_elf32_sol2_vec) tb="$tb elf32-i386.lo elf-ifunc.lo elf-nacl.lo elf-vxworks.lo elf32.lo $elf" ;; - i386_elf32_vxworks_vec) tb="$tb elf32-i386.lo elf-ifunc.lo elf-nacl.lo elf-vxworks.lo elf32.lo $elf" ;; + i386_elf32_vec) tb="$tb elf32-i386.lo elfxx-x86.lo elf-ifunc.lo elf-nacl.lo elf-vxworks.lo elf32.lo $elf" ;; + i386_elf32_fbsd_vec) tb="$tb elf32-i386.lo elfxx-x86.lo elf-ifunc.lo elf-nacl.lo elf-vxworks.lo elf32.lo $elf" ;; + i386_elf32_nacl_vec) tb="$tb elf32-i386.lo elfxx-x86.lo elf-ifunc.lo elf-nacl.lo elf-vxworks.lo elf32.lo $elf" ;; + i386_elf32_sol2_vec) tb="$tb elf32-i386.lo elfxx-x86.lo elf-ifunc.lo elf-nacl.lo elf-vxworks.lo elf32.lo $elf" ;; + i386_elf32_vxworks_vec) tb="$tb elf32-i386.lo elfxx-x86.lo elf-ifunc.lo elf-nacl.lo elf-vxworks.lo elf32.lo $elf" ;; i386_mach_o_vec) tb="$tb mach-o-i386.lo" ;; i386_msdos_vec) tb="$tb i386msdos.lo" ;; i386_nlm32_vec) tb="$tb nlm32-i386.lo nlm32.lo nlm.lo" ;; i386_pe_vec) tb="$tb pe-i386.lo peigen.lo $coff" ;; i386_pei_vec) tb="$tb pei-i386.lo peigen.lo $coff" ;; - iamcu_elf32_vec) tb="$tb elf32-i386.lo elf-ifunc.lo elf-nacl.lo elf-vxworks.lo elf32.lo $elf" ;; + iamcu_elf32_vec) tb="$tb elf32-i386.lo elfxx-x86.lo elf-ifunc.lo elf-nacl.lo elf-vxworks.lo elf32.lo $elf" ;; i860_coff_vec) tb="$tb coff-i860.lo $coff" ;; i860_elf32_vec) tb="$tb elf32-i860.lo elf32.lo $elf" ;; i860_elf32_le_vec) tb="$tb elf32-i860.lo elf32.lo $elf" ;; @@ -500,10 +500,10 @@ do ieee_vec) tb="$tb ieee.lo" ;; ip2k_elf32_vec) tb="$tb elf32-ip2k.lo elf32.lo $elf" ;; iq2000_elf32_vec) tb="$tb elf32-iq2000.lo elf32.lo $elf" ;; - k1om_elf64_vec) tb="$tb elf64-x86-64.lo elf-ifunc.lo elf-nacl.lo elf64.lo $elf"; target_size=64 ;; - k1om_elf64_fbsd_vec) tb="$tb elf64-x86-64.lo elf-ifunc.lo elf-nacl.lo elf64.lo $elf"; target_size=64 ;; - l1om_elf64_vec) tb="$tb elf64-x86-64.lo elf-ifunc.lo elf-nacl.lo elf64.lo $elf"; target_size=64 ;; - l1om_elf64_fbsd_vec) tb="$tb elf64-x86-64.lo elf-ifunc.lo elf-nacl.lo elf64.lo $elf"; target_size=64 ;; + k1om_elf64_vec) tb="$tb elf64-x86-64.lo elfxx-x86.lo elf-ifunc.lo elf-nacl.lo elf64.lo $elf"; target_size=64 ;; + k1om_elf64_fbsd_vec) tb="$tb elf64-x86-64.lo elfxx-x86.lo elf-ifunc.lo elf-nacl.lo elf64.lo $elf"; target_size=64 ;; + l1om_elf64_vec) tb="$tb elf64-x86-64.lo elfxx-x86.lo elf-ifunc.lo elf-nacl.lo elf64.lo $elf"; target_size=64 ;; + l1om_elf64_fbsd_vec) tb="$tb elf64-x86-64.lo elfxx-x86.lo elf-ifunc.lo elf-nacl.lo elf64.lo $elf"; target_size=64 ;; lm32_elf32_vec) tb="$tb elf32-lm32.lo elf32.lo $elf" ;; lm32_elf32_fdpic_vec) tb="$tb elf32-lm32.lo elf32.lo $elf" ;; m32c_elf32_vec) tb="$tb elf32-m32c.lo elf32.lo $elf" ;; @@ -705,13 +705,13 @@ do wasm32_elf32_vec) tb="$tb elf32-wasm32.lo elf32.lo $elf" ;; we32k_coff_vec) tb="$tb coff-we32k.lo $coffgen" ;; x86_64_coff_vec) tb="$tb coff-x86_64.lo $coff"; target_size=64 ;; - x86_64_elf32_vec) tb="$tb elf64-x86-64.lo elf-ifunc.lo elf-nacl.lo elf64.lo elf32.lo $elf"; target_size=64 ;; - x86_64_elf32_nacl_vec) tb="$tb elf64-x86-64.lo elf-ifunc.lo elf-nacl.lo elf64.lo elf32.lo $elf"; target_size=64 ;; - x86_64_elf64_vec) tb="$tb elf64-x86-64.lo elf-ifunc.lo elf-nacl.lo elf64.lo $elf"; target_size=64 ;; - x86_64_elf64_cloudabi_vec) tb="$tb elf64-x86-64.lo elf-ifunc.lo elf-nacl.lo elf64.lo $elf"; target_size=64 ;; - x86_64_elf64_fbsd_vec) tb="$tb elf64-x86-64.lo elf-ifunc.lo elf-nacl.lo elf64.lo $elf"; target_size=64 ;; - x86_64_elf64_nacl_vec) tb="$tb elf64-x86-64.lo elf-ifunc.lo elf-nacl.lo elf64.lo $elf"; target_size=64 ;; - x86_64_elf64_sol2_vec) tb="$tb elf64-x86-64.lo elf-ifunc.lo elf-nacl.lo elf64.lo $elf"; target_size=64 ;; + x86_64_elf32_vec) tb="$tb elf64-x86-64.lo elfxx-x86.lo elf-ifunc.lo elf-nacl.lo elf64.lo elf32.lo $elf"; target_size=64 ;; + x86_64_elf32_nacl_vec) tb="$tb elf64-x86-64.lo elfxx-x86.lo elf-ifunc.lo elf-nacl.lo elf64.lo elf32.lo $elf"; target_size=64 ;; + x86_64_elf64_vec) tb="$tb elf64-x86-64.lo elfxx-x86.lo elf-ifunc.lo elf-nacl.lo elf64.lo $elf"; target_size=64 ;; + x86_64_elf64_cloudabi_vec) tb="$tb elf64-x86-64.lo elfxx-x86.lo elf-ifunc.lo elf-nacl.lo elf64.lo $elf"; target_size=64 ;; + x86_64_elf64_fbsd_vec) tb="$tb elf64-x86-64.lo elfxx-x86.lo elf-ifunc.lo elf-nacl.lo elf64.lo $elf"; target_size=64 ;; + x86_64_elf64_nacl_vec) tb="$tb elf64-x86-64.lo elfxx-x86.lo elf-ifunc.lo elf-nacl.lo elf64.lo $elf"; target_size=64 ;; + x86_64_elf64_sol2_vec) tb="$tb elf64-x86-64.lo elfxx-x86.lo elf-ifunc.lo elf-nacl.lo elf64.lo $elf"; target_size=64 ;; x86_64_mach_o_vec) tb="$tb mach-o-x86-64.lo" ;; x86_64_pe_vec) tb="$tb pe-x86_64.lo pex64igen.lo $coff"; target_size=64 ;; x86_64_pe_be_vec) tb="$tb pe-x86_64.lo pex64igen.lo $coff"; target_size=64 ;; diff --git a/bfd/cpu-pdp11.c b/bfd/cpu-pdp11.c index 87c6aa9..25e20bb 100644 --- a/bfd/cpu-pdp11.c +++ b/bfd/cpu-pdp11.c @@ -31,7 +31,7 @@ const bfd_arch_info_type bfd_pdp11_arch = 0, /* only 1 machine */ "pdp11", "pdp11", - 1, /* aligment = 16 bit */ + 1, /* alignment = 16 bit */ TRUE, /* the one and only */ bfd_default_compatible, bfd_default_scan, diff --git a/bfd/dwarf2.c b/bfd/dwarf2.c index 04a2585..856c963 100644 --- a/bfd/dwarf2.c +++ b/bfd/dwarf2.c @@ -566,6 +566,29 @@ read_section (bfd * abfd, 0, *section_size)) return FALSE; } + + /* Paranoia - if we are reading in a string section, make sure that it + is NUL terminated. This is to prevent string functions from running + off the end of the buffer. Note - knowing the size of the buffer is + not enough as some functions, eg strchr, do not have a range limited + equivalent. + + FIXME: We ought to use a flag in the dwarf_debug_sections[] table to + determine the nature of a debug section, rather than checking the + section name as we do here. */ + if (*section_size > 0 + && (*section_buffer)[*section_size - 1] != 0 + && (strstr (section_name, "_str") || strstr (section_name, "names"))) + { + bfd_byte * new_buffer = malloc (*section_size + 1); + + _bfd_error_handler (_("warning: dwarf string section '%s' is not NUL terminated"), + section_name); + memcpy (new_buffer, *section_buffer, *section_size); + new_buffer[*section_size] = 0; + free (*section_buffer); + *section_buffer = new_buffer; + } } /* It is possible to get a bad value for the offset into the section @@ -573,9 +596,9 @@ read_section (bfd * abfd, if (offset != 0 && offset >= *section_size) { /* xgettext: c-format */ - _bfd_error_handler (_("Dwarf Error: Offset (%lu)" - " greater than or equal to %s size (%lu)."), - (long) offset, section_name, *section_size); + _bfd_error_handler (_("Dwarf Error: Offset (%llu)" + " greater than or equal to %s size (%Lu)."), + (long long) offset, section_name, *section_size); bfd_set_error (bfd_error_bad_value); return FALSE; } @@ -1943,8 +1966,8 @@ read_formatted_entries (struct comp_unit *unit, bfd_byte **bufp, break; default: _bfd_error_handler - (_("Dwarf Error: Unknown format content type %lu."), - (unsigned long) content_type); + (_("Dwarf Error: Unknown format content type %Lu."), + content_type); bfd_set_error (bfd_error_bad_value); return FALSE; } @@ -2047,8 +2070,8 @@ decode_line_info (struct comp_unit *unit, struct dwarf2_debug *stash) if (stash->dwarf_line_size < 16) { _bfd_error_handler - (_("Dwarf Error: Line info section is too small (%ld)"), - (long) stash->dwarf_line_size); + (_("Dwarf Error: Line info section is too small (%Ld)"), + stash->dwarf_line_size); bfd_set_error (bfd_error_bad_value); return NULL; } @@ -2073,12 +2096,12 @@ decode_line_info (struct comp_unit *unit, struct dwarf2_debug *stash) offset_size = 8; } - if (lh.total_length > stash->dwarf_line_size) + if (unit->line_offset + lh.total_length > stash->dwarf_line_size) { _bfd_error_handler /* xgettext: c-format */ - (_("Dwarf Error: Line info data is bigger (0x%lx) than the section (0x%lx)"), - (long) lh.total_length, (long) stash->dwarf_line_size); + (_("Dwarf Error: Line info data is bigger (%#Lx) than the space remaining in the section (%#Lx)"), + lh.total_length, stash->dwarf_line_size - unit->line_offset); bfd_set_error (bfd_error_bad_value); return NULL; } @@ -2854,7 +2877,8 @@ find_abstract_instance_name (struct comp_unit *unit, if (info_ptr == NULL) { _bfd_error_handler - (_("Dwarf Error: Unable to read alt ref %u."), die_ref); + (_("Dwarf Error: Unable to read alt ref %llu."), + (long long) die_ref); bfd_set_error (bfd_error_bad_value); return NULL; } diff --git a/bfd/ecoff.c b/bfd/ecoff.c index ef5dc5e..4bda9dc 100644 --- a/bfd/ecoff.c +++ b/bfd/ecoff.c @@ -961,7 +961,7 @@ _bfd_ecoff_slurp_symbol_table (bfd *abfd) bfd_get_symcount (abfd) = internal_ptr - internal; _bfd_error_handler /* xgettext:c-format */ - (_("%B: warning: isymMax (%ld) is greater than ifdMax (%d)\n"), + (_("%B: warning: isymMax (%ld) is greater than ifdMax (%ld)"), abfd, ecoff_data (abfd)->debug_info.symbolic_header.isymMax, ecoff_data (abfd)->debug_info.symbolic_header.ifdMax); } diff --git a/bfd/ecofflink.c b/bfd/ecofflink.c index c3c2e94..e1f1804 100644 --- a/bfd/ecofflink.c +++ b/bfd/ecofflink.c @@ -898,7 +898,7 @@ bfd_ecoff_debug_accumulate (void * handle, if (! bfd_link_relocatable (info)) { - /* When are are hashing strings, we lie about the number of + /* When we are hashing strings, we lie about the number of strings attached to each FDR. We need to set cbSs because some versions of dbx apparently use it to decide how much of the string table to read in. */ diff --git a/bfd/elf-attrs.c b/bfd/elf-attrs.c index def1345..761a4ce 100644 --- a/bfd/elf-attrs.c +++ b/bfd/elf-attrs.c @@ -438,7 +438,7 @@ _bfd_elf_parse_attributes (bfd *abfd, Elf_Internal_Shdr * hdr) /* PR 17512: file: 2844a11d. */ if (hdr->sh_size == 0) return; - contents = (bfd_byte *) bfd_malloc (hdr->sh_size); + contents = (bfd_byte *) bfd_malloc (hdr->sh_size + 1); if (!contents) return; if (!bfd_get_section_contents (abfd, hdr->bfd_section, contents, 0, @@ -447,6 +447,8 @@ _bfd_elf_parse_attributes (bfd *abfd, Elf_Internal_Shdr * hdr) free (contents); return; } + /* Ensure that the buffer is NUL terminated. */ + contents[hdr->sh_size] = 0; p = contents; p_end = p + hdr->sh_size; std_sec = get_elf_backend_data (abfd)->obj_attrs_vendor; @@ -468,6 +470,12 @@ _bfd_elf_parse_attributes (bfd *abfd, Elf_Internal_Shdr * hdr) if (section_len > len) section_len = len; len -= section_len; + if (section_len <= 4) + { + _bfd_error_handler (_("%B: error: attribute section length too small: %ld"), + abfd, section_len); + break; + } section_len -= 4; namelen = strnlen ((char *) p, section_len) + 1; if (namelen == 0 || namelen >= section_len) diff --git a/bfd/elf-bfd.h b/bfd/elf-bfd.h index 92a8e02..fd08748 100644 --- a/bfd/elf-bfd.h +++ b/bfd/elf-bfd.h @@ -1887,21 +1887,27 @@ struct elf_obj_tdata /* An identifier used to distinguish different target specific extensions to this structure. */ - enum elf_target_id object_id; + ENUM_BITFIELD (elf_target_id) object_id : 6; /* Whether a dyanmic object was specified normally on the linker command line, or was specified when --as-needed was in effect, or was found via a DT_NEEDED entry. */ - enum dynamic_lib_link_class dyn_lib_class; + ENUM_BITFIELD (dynamic_lib_link_class) dyn_lib_class : 4; + + /* Whether if the bfd contains symbols that have the STT_GNU_IFUNC + symbol type or STB_GNU_UNIQUE binding. */ + ENUM_BITFIELD (elf_gnu_symbols) has_gnu_symbols : 3; + + /* Whether if the bfd contains the GNU_PROPERTY_NO_COPY_ON_PROTECTED + property. */ + unsigned int has_no_copy_on_protected : 1; /* Irix 5 often screws up the symbol table, sorting local symbols after global symbols. This flag is set if the symbol table in this BFD appears to be screwed up. If it is, we ignore the sh_info field in the symbol table header, and always read all the symbols. */ - bfd_boolean bad_symtab; - - enum elf_gnu_symbols has_gnu_symbols; + unsigned int bad_symtab : 1; /* Information grabbed from an elf core file. */ struct core_elf_obj_tdata *core; @@ -1956,6 +1962,8 @@ struct elf_obj_tdata #define elf_other_obj_attributes_proc(bfd) \ (elf_other_obj_attributes (bfd) [OBJ_ATTR_PROC]) #define elf_properties(bfd) (elf_tdata (bfd) -> properties) +#define elf_has_no_copy_on_protected(bfd) \ + (elf_tdata(bfd) -> has_no_copy_on_protected) extern void _bfd_elf_swap_verdef_in (bfd *, const Elf_External_Verdef *, Elf_Internal_Verdef *); @@ -2651,9 +2659,6 @@ extern bfd_boolean _bfd_elf_allocate_ifunc_dyn_relocs (struct bfd_link_info *, struct elf_link_hash_entry *, struct elf_dyn_relocs **, bfd_boolean *, unsigned int, unsigned int, unsigned int, bfd_boolean); -extern long _bfd_elf_ifunc_get_synthetic_symtab - (bfd *, long, asymbol **, long, asymbol **, asymbol **, asection *, - bfd_vma *(*) (bfd *, asymbol **, asection *, asection *)); extern void elf_append_rela (bfd *, asection *, Elf_Internal_Rela *); extern void elf_append_rel (bfd *, asection *, Elf_Internal_Rela *); @@ -2802,7 +2807,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/elf-eh-frame.c b/bfd/elf-eh-frame.c index 52ba9c6..cd81b60 100644 --- a/bfd/elf-eh-frame.c +++ b/bfd/elf-eh-frame.c @@ -619,15 +619,6 @@ _bfd_elf_parse_eh_frame (bfd *abfd, struct bfd_link_info *info, REQUIRE (bfd_malloc_and_get_section (abfd, sec, &ehbuf)); - if (sec->size >= 4 - && bfd_get_32 (abfd, ehbuf) == 0 - && cookie->rel == cookie->relend) - { - /* Empty .eh_frame section. */ - free (ehbuf); - return; - } - /* If .eh_frame section size doesn't fit into int, we cannot handle it (it would need to use 64-bit .eh_frame format anyway). */ REQUIRE (sec->size == (unsigned int) sec->size); @@ -669,8 +660,11 @@ _bfd_elf_parse_eh_frame (bfd *abfd, struct bfd_link_info *info, REQUIRE (sec_info); /* We need to have a "struct cie" for each CIE in this section. */ - local_cies = (struct cie *) bfd_zmalloc (num_cies * sizeof (*local_cies)); - REQUIRE (local_cies); + if (num_cies) + { + local_cies = (struct cie *) bfd_zmalloc (num_cies * sizeof (*local_cies)); + REQUIRE (local_cies); + } /* FIXME: octets_per_byte. */ #define ENSURE_NO_RELOCS(buf) \ @@ -724,7 +718,9 @@ _bfd_elf_parse_eh_frame (bfd *abfd, struct bfd_link_info *info, if (hdr_length == 0) { /* A zero-length CIE should only be found at the end of - the section. */ + the section, but allow multiple terminators. */ + while (skip_bytes (&buf, ehbuf + sec->size, 4)) + REQUIRE (bfd_get_32 (abfd, buf - 4) == 0); REQUIRE ((bfd_size_type) (buf - ehbuf) == sec->size); ENSURE_NO_RELOCS (buf); sec_info->count++; @@ -1339,7 +1335,7 @@ offset_adjust (bfd_vma offset, const asection *sec) struct eh_frame_sec_info *sec_info = (struct eh_frame_sec_info *) elf_section_data (sec)->sec_info; unsigned int lo, hi, mid; - struct eh_cie_fde *ent; + struct eh_cie_fde *ent = NULL; bfd_signed_vma delta; lo = 0; @@ -1594,16 +1590,7 @@ _bfd_elf_discard_section_eh_frame offset += size_of_output_cie_fde (ent); } - /* Pad the last FDE out to the output section alignment if there are - following sections, in order to ensure no padding between this - section and the next. (Relies on the output section alignment - being the maximum of all input sections alignments, which is the - case unless someone is overriding alignment via scripts.) */ eh_alignment = 4; - if (sec->map_head.s != NULL - && (sec->map_head.s->size != 4 - || sec->map_head.s->map_head.s != NULL)) - eh_alignment = 1 << sec->output_section->alignment_power; offset = (offset + eh_alignment - 1) & -eh_alignment; sec->rawsize = sec->size; sec->size = offset; diff --git a/bfd/elf-ifunc.c b/bfd/elf-ifunc.c index 8db7997..4bd64d6 100644 --- a/bfd/elf-ifunc.c +++ b/bfd/elf-ifunc.c @@ -355,128 +355,3 @@ keep: return TRUE; } - -/* Similar to _bfd_elf_get_synthetic_symtab, optimized for unsorted PLT - entries. PLT is the PLT section. PLT_SYM_VAL is a function pointer - which returns an array of PLT entry symbol values. */ - -long -_bfd_elf_ifunc_get_synthetic_symtab - (bfd *abfd, long symcount ATTRIBUTE_UNUSED, - asymbol **syms ATTRIBUTE_UNUSED, long dynsymcount, asymbol **dynsyms, - asymbol **ret, asection *plt, - bfd_vma *(*get_plt_sym_val) (bfd *, asymbol **, asection *, asection *)) -{ - const struct elf_backend_data *bed = get_elf_backend_data (abfd); - asection *relplt; - asymbol *s; - const char *relplt_name; - bfd_boolean (*slurp_relocs) (bfd *, asection *, asymbol **, bfd_boolean); - arelent *p; - long count, i, n; - size_t size; - Elf_Internal_Shdr *hdr; - char *names; - bfd_vma *plt_sym_val; - - *ret = NULL; - - if (plt == NULL) - return 0; - - if ((abfd->flags & (DYNAMIC | EXEC_P)) == 0) - return 0; - - if (dynsymcount <= 0) - return 0; - - relplt_name = bed->relplt_name; - if (relplt_name == NULL) - relplt_name = bed->rela_plts_and_copies_p ? ".rela.plt" : ".rel.plt"; - relplt = bfd_get_section_by_name (abfd, relplt_name); - if (relplt == NULL) - return 0; - - hdr = &elf_section_data (relplt)->this_hdr; - if (hdr->sh_link != elf_dynsymtab (abfd) - || (hdr->sh_type != SHT_REL && hdr->sh_type != SHT_RELA)) - return 0; - - slurp_relocs = get_elf_backend_data (abfd)->s->slurp_reloc_table; - if (! (*slurp_relocs) (abfd, relplt, dynsyms, TRUE)) - return -1; - - count = relplt->size / hdr->sh_entsize; - size = count * sizeof (asymbol); - p = relplt->relocation; - for (i = 0; i < count; i++, p += bed->s->int_rels_per_ext_rel) - { - size += strlen ((*p->sym_ptr_ptr)->name) + sizeof ("@plt"); - if (p->addend != 0) - { -#ifdef BFD64 - size += sizeof ("+0x") - 1 + 8 + 8 * (bed->s->elfclass == ELFCLASS64); -#else - size += sizeof ("+0x") - 1 + 8; -#endif - } - } - - plt_sym_val = get_plt_sym_val (abfd, dynsyms, plt, relplt); - if (plt_sym_val == NULL) - return -1; - - s = *ret = (asymbol *) bfd_malloc (size); - if (s == NULL) - { - free (plt_sym_val); - return -1; - } - - names = (char *) (s + count); - p = relplt->relocation; - n = 0; - for (i = 0; i < count; i++, p += bed->s->int_rels_per_ext_rel) - { - size_t len; - bfd_vma addr; - - addr = plt_sym_val[i]; - if (addr == (bfd_vma) -1) - continue; - - *s = **p->sym_ptr_ptr; - /* Undefined syms won't have BSF_LOCAL or BSF_GLOBAL set. Since - we are defining a symbol, ensure one of them is set. */ - if ((s->flags & BSF_LOCAL) == 0) - s->flags |= BSF_GLOBAL; - s->flags |= BSF_SYNTHETIC; - s->section = plt; - s->value = addr - plt->vma; - s->name = names; - s->udata.p = NULL; - len = strlen ((*p->sym_ptr_ptr)->name); - memcpy (names, (*p->sym_ptr_ptr)->name, len); - names += len; - if (p->addend != 0) - { - char buf[30], *a; - - memcpy (names, "+0x", sizeof ("+0x") - 1); - names += sizeof ("+0x") - 1; - bfd_sprintf_vma (abfd, buf, p->addend); - for (a = buf; *a == '0'; ++a) - ; - len = strlen (a); - memcpy (names, a, len); - names += len; - } - memcpy (names, "@plt", sizeof ("@plt")); - names += sizeof ("@plt"); - ++s, ++n; - } - - free (plt_sym_val); - - return n; -} diff --git a/bfd/elf-m10300.c b/bfd/elf-m10300.c index e59f083..9214a57 100644 --- a/bfd/elf-m10300.c +++ b/bfd/elf-m10300.c @@ -2094,10 +2094,10 @@ mn10300_elf_relocate_section (bfd *output_bfd, _bfd_error_handler /* xgettext:c-format */ - (_("%B(%A+0x%lx): unresolvable %s relocation against symbol `%s'"), + (_("%B(%A+%#Lx): unresolvable %s relocation against symbol `%s'"), input_bfd, input_section, - (long) rel->r_offset, + rel->r_offset, howto->name, h->root.root.root.string); } @@ -2416,7 +2416,7 @@ mn10300_elf_relax_delete_bytes (bfd *abfd, if (ELF32_R_TYPE ((irelend - 1)->r_info) == (int) R_MN10300_ALIGN) --irelend; - /* The deletion must stop at the next ALIGN reloc for an aligment + /* The deletion must stop at the next ALIGN reloc for an alignment power larger than, or not a multiple of, the number of bytes we are deleting. */ for (; irel < irelend; irel++) diff --git a/bfd/elf-properties.c b/bfd/elf-properties.c index 13d620d..f367aa6 100644 --- a/bfd/elf-properties.c +++ b/bfd/elf-properties.c @@ -168,6 +168,7 @@ bad_size: return FALSE; } prop = _bfd_elf_get_property (abfd, type, datasz); + elf_has_no_copy_on_protected (abfd) = TRUE; prop->pr_kind = property_number; goto next; @@ -290,6 +291,9 @@ elf_merge_gnu_property_list (struct bfd_link_info *info, bfd *abfd, for (p = *listp; p != NULL; p = p->next) if (elf_merge_gnu_properties (info, abfd, NULL, &p->property)) { + if (p->property.pr_type == GNU_PROPERTY_NO_COPY_ON_PROTECTED) + elf_has_no_copy_on_protected (abfd) = TRUE; + pr = _bfd_elf_get_property (abfd, p->property.pr_type, p->property.pr_datasz); /* It must be a new property. */ @@ -489,6 +493,11 @@ _bfd_elf_link_setup_gnu_properties (struct bfd_link_info *info) /* Cache the section contents for elf_link_input_bfd. */ elf_section_data (sec)->this_hdr.contents = contents; + + /* If GNU_PROPERTY_NO_COPY_ON_PROTECTED is set, protected data + symbol is defined in the shared object. */ + if (elf_has_no_copy_on_protected (first_pbfd)) + info->extern_protected_data = FALSE; } return first_pbfd; @@ -354,8 +354,8 @@ bfd_elf_string_from_elf_section (bfd *abfd, unsigned int shstrndx = elf_elfheader(abfd)->e_shstrndx; _bfd_error_handler /* xgettext:c-format */ - (_("%B: invalid string offset %u >= %lu for section `%s'"), - abfd, strindex, (unsigned long) hdr->sh_size, + (_("%B: invalid string offset %u >= %Lu for section `%s'"), + abfd, strindex, hdr->sh_size, (shindex == shstrndx && strindex == hdr->sh_name ? ".shstrtab" : bfd_elf_string_from_elf_section (abfd, shstrndx, hdr->sh_name))); @@ -742,12 +742,22 @@ setup_group (bfd *abfd, Elf_Internal_Shdr *hdr, asection *newsect) { Elf_Internal_Shdr *shdr = elf_tdata (abfd)->group_sect_ptr[i]; Elf_Internal_Group *idx; - unsigned int n_elt; + bfd_size_type n_elt; if (shdr == NULL) continue; idx = (Elf_Internal_Group *) shdr->contents; + if (idx == NULL || shdr->sh_size < 4) + { + /* See PR 21957 for a reproducer. */ + /* xgettext:c-format */ + _bfd_error_handler (_("%B: group section '%A' has no contents"), + abfd, shdr->bfd_section); + elf_tdata (abfd)->group_sect_ptr[i] = NULL; + bfd_set_error (bfd_error_bad_value); + return FALSE; + } n_elt = shdr->sh_size / 4; /* Look through this group's sections to see if current @@ -801,7 +811,7 @@ setup_group (bfd *abfd, Elf_Internal_Shdr *hdr, asection *newsect) if (elf_group_name (newsect) == NULL) { /* xgettext:c-format */ - _bfd_error_handler (_("%B: no group info for section %A"), + _bfd_error_handler (_("%B: no group info for section '%A'"), abfd, newsect); return FALSE; } @@ -896,32 +906,39 @@ _bfd_elf_setup_sections (bfd *abfd) n_elt = shdr->sh_size / 4; while (--n_elt != 0) - if ((++idx)->shdr->bfd_section) - elf_sec_group (idx->shdr->bfd_section) = shdr->bfd_section; - else if (idx->shdr->sh_type == SHT_RELA - || idx->shdr->sh_type == SHT_REL) - /* We won't include relocation sections in section groups in - output object files. We adjust the group section size here - so that relocatable link will work correctly when - relocation sections are in section group in input object - files. */ - shdr->bfd_section->size -= 4; - else - { - /* There are some unknown sections in the group. */ - _bfd_error_handler - /* xgettext:c-format */ - (_("%B: unknown type [%#x] section `%s' in group [%A]"), - abfd, - idx->shdr->sh_type, - bfd_elf_string_from_elf_section (abfd, - (elf_elfheader (abfd) - ->e_shstrndx), - idx->shdr->sh_name), - shdr->bfd_section); - result = FALSE; - } + { + ++ idx; + + if (idx->shdr == NULL) + continue; + else if (idx->shdr->bfd_section) + elf_sec_group (idx->shdr->bfd_section) = shdr->bfd_section; + else if (idx->shdr->sh_type == SHT_RELA + || idx->shdr->sh_type == SHT_REL) + /* We won't include relocation sections in section groups in + output object files. We adjust the group section size here + so that relocatable link will work correctly when + relocation sections are in section group in input object + files. */ + shdr->bfd_section->size -= 4; + else + { + /* There are some unknown sections in the group. */ + _bfd_error_handler + /* xgettext:c-format */ + (_("%B: unknown type [%#x] section `%s' in group [%A]"), + abfd, + idx->shdr->sh_type, + bfd_elf_string_from_elf_section (abfd, + (elf_elfheader (abfd) + ->e_shstrndx), + idx->shdr->sh_name), + shdr->bfd_section); + result = FALSE; + } + } } + return result; } @@ -5115,7 +5132,7 @@ elf_sort_sections (const void *arg1, const void *arg2) else adjustment = vma_offset - off_offset; - which can can be collapsed into the expression below. */ + which can be collapsed into the expression below. */ static file_ptr vma_page_aligned_bias (bfd_vma vma, ufile_ptr off, bfd_vma maxpagesize) @@ -8954,7 +8971,7 @@ elfcore_maybe_make_sect (bfd *abfd, char *name, asection *sect) such a section already exists. - For the multi-threaded case, a section named "NAME/PID", where PID is elfcore_make_pid (abfd). - Both pseudosections have identical contents. */ + Both pseudosections have identical contents. */ bfd_boolean _bfd_elfcore_make_pseudosection (bfd *abfd, char *name, @@ -9681,14 +9698,14 @@ elfcore_grok_note (bfd *abfd, Elf_Internal_Note *note) case NT_S390_GS_CB: if (note->namesz == 6 && strcmp (note->namedata, "LINUX") == 0) - return elfcore_grok_s390_gs_bc (abfd, note); + return elfcore_grok_s390_gs_cb (abfd, note); else return TRUE; case NT_S390_GS_BC: if (note->namesz == 6 && strcmp (note->namedata, "LINUX") == 0) - return elfcore_grok_s390_gs_cb (abfd, note); + return elfcore_grok_s390_gs_bc (abfd, note); else return TRUE; @@ -9883,58 +9900,68 @@ elfcore_grok_freebsd_prstatus (bfd *abfd, Elf_Internal_Note *note) { size_t offset; size_t size; + size_t min_size; - /* Check for version 1 in pr_version. */ - if (bfd_h_get_32 (abfd, (bfd_byte *) note->descdata) != 1) - return FALSE; - offset = 4; - - /* Skip over pr_statussz. */ + /* Compute offset of pr_getregsz, skipping over pr_statussz. + Also compute minimum size of this note. */ switch (elf_elfheader (abfd)->e_ident[EI_CLASS]) { case ELFCLASS32: - offset += 4; + offset = 4 + 4; + min_size = offset + (4 * 2) + 4 + 4 + 4; break; case ELFCLASS64: - offset += 4; /* Padding before pr_statussz. */ - offset += 8; + offset = 4 + 4 + 8; /* Includes padding before pr_statussz. */ + min_size = offset + (8 * 2) + 4 + 4 + 4 + 4; break; default: return FALSE; } - /* Extract size of pr_reg from pr_gregsetsz. */ - if (elf_elfheader (abfd)->e_ident[EI_CLASS] == ELFCLASS32) - size = bfd_h_get_32 (abfd, (bfd_byte *) note->descdata + offset); - else - size = bfd_h_get_64 (abfd, (bfd_byte *) note->descdata + offset); + if (note->descsz < min_size) + return FALSE; - /* Skip over pr_gregsetsz and pr_fpregsetsz. */ + /* Check for version 1 in pr_version. */ + if (bfd_h_get_32 (abfd, (bfd_byte *) note->descdata) != 1) + return FALSE; + + /* Extract size of pr_reg from pr_gregsetsz. */ + /* Skip over pr_gregsetsz and pr_fpregsetsz. */ if (elf_elfheader (abfd)->e_ident[EI_CLASS] == ELFCLASS32) - offset += 4 * 2; + { + size = bfd_h_get_32 (abfd, (bfd_byte *) note->descdata + offset); + offset += 4 * 2; + } else - offset += 8 * 2; + { + size = bfd_h_get_64 (abfd, (bfd_byte *) note->descdata + offset); + offset += 8 * 2; + } - /* Skip over pr_osreldate. */ + /* Skip over pr_osreldate. */ offset += 4; - /* Read signal from pr_cursig. */ + /* Read signal from pr_cursig. */ if (elf_tdata (abfd)->core->signal == 0) elf_tdata (abfd)->core->signal = bfd_h_get_32 (abfd, (bfd_byte *) note->descdata + offset); offset += 4; - /* Read TID from pr_pid. */ + /* Read TID from pr_pid. */ elf_tdata (abfd)->core->lwpid = bfd_h_get_32 (abfd, (bfd_byte *) note->descdata + offset); offset += 4; - /* Padding before pr_reg. */ + /* Padding before pr_reg. */ if (elf_elfheader (abfd)->e_ident[EI_CLASS] == ELFCLASS64) offset += 4; + /* Make sure that there is enough data remaining in the note. */ + if ((note->descsz - offset) < size) + return FALSE; + /* Make a ".reg/999" section and a ".reg" section. */ return _bfd_elfcore_make_pseudosection (abfd, ".reg", size, note->descpos + offset); @@ -9980,6 +10007,10 @@ elfcore_grok_freebsd_note (bfd *abfd, Elf_Internal_Note *note) else return TRUE; + case NT_FREEBSD_PTLWPINFO: + return elfcore_make_note_pseudosection (abfd, ".note.freebsdcore.lwpinfo", + note); + default: return TRUE; } @@ -10976,7 +11007,7 @@ elf_read_notes (bfd *abfd, file_ptr offset, bfd_size_type size) { char *buf; - if (size <= 0) + if (size == 0 || (size + 1) == 0) return TRUE; if (bfd_seek (abfd, offset, SEEK_SET) != 0) diff --git a/bfd/elf32-arc.c b/bfd/elf32-arc.c index 6903ad7..cdecdb1 100644 --- a/bfd/elf32-arc.c +++ b/bfd/elf32-arc.c @@ -888,9 +888,9 @@ arc_elf_merge_private_bfd_data (bfd *ibfd, struct bfd_link_info *info) /* Warn if different flags. */ _bfd_error_handler /* xgettext:c-format */ - (_("%B: uses different e_flags (0x%lx) fields than " - "previous modules (0x%lx)"), - ibfd, (long) in_flags, (long) out_flags); + (_("%B: uses different e_flags (%#x) fields than " + "previous modules (%#x)"), + ibfd, in_flags, out_flags); if (in_flags && out_flags) return FALSE; /* MWDT doesnt set the eflags hence make sure we choose the @@ -1116,26 +1116,26 @@ arc_special_overflow_checks (const struct arc_relocation_data reloc_data, if (reloc_data.reloc_addend == 0) _bfd_error_handler /* xgettext:c-format */ - (_("%B(%A+0x%lx): CMEM relocation to `%s' is invalid, " - "16 MSB should be 0x%04x (value is 0x%lx)"), + (_("%B(%A+%#Lx): CMEM relocation to `%s' is invalid, " + "16 MSB should be %#x (value is %#Lx)"), reloc_data.input_section->owner, reloc_data.input_section, reloc_data.reloc_offset, reloc_data.symbol_name, NPS_CMEM_HIGH_VALUE, - (relocation)); + relocation); else _bfd_error_handler /* xgettext:c-format */ - (_("%B(%A+0x%lx): CMEM relocation to `%s+0x%lx' is invalid, " - "16 MSB should be 0x%04x (value is 0x%lx)"), + (_("%B(%A+%#Lx): CMEM relocation to `%s+%#Lx' is invalid, " + "16 MSB should be %#x (value is %#Lx)"), reloc_data.input_section->owner, reloc_data.input_section, reloc_data.reloc_offset, reloc_data.symbol_name, reloc_data.reloc_addend, NPS_CMEM_HIGH_VALUE, - (relocation)); + relocation); return bfd_reloc_overflow; } break; @@ -1182,7 +1182,7 @@ arc_special_overflow_checks (const struct arc_relocation_data reloc_data, + (reloc_data.reloc_offset)))) #define SECTSTART (bfd_signed_vma) (reloc_data.sym_section->output_section->vma \ + reloc_data.sym_section->output_offset) - +#define JLI (bfd_signed_vma) (reloc_data.sym_section->output_section->vma) #define _SDA_BASE_ (bfd_signed_vma) (reloc_data.sdata_begin_symbol_vma) #define TLS_REL (bfd_signed_vma) \ ((elf_hash_table (info))->tls_sec->output_section->vma) @@ -1359,6 +1359,7 @@ arc_do_relocation (bfd_byte * contents, #undef P #undef SECTSTAR #undef SECTSTART +#undef JLI #undef _SDA_BASE_ #undef none diff --git a/bfd/elf32-arm.c b/bfd/elf32-arm.c index b9f5d04..bad8540 100644 --- a/bfd/elf32-arm.c +++ b/bfd/elf32-arm.c @@ -4140,7 +4140,7 @@ arm_type_of_stub (struct bfd_link_info *info, _bfd_error_handler (_("%B(%s): warning: interworking not enabled.\n" " first occurrence: %B: ARM call to Thumb"), - sym_sec->owner, input_bfd, name); + sym_sec->owner, name, input_bfd); } /* We have an extra 2-bytes reach because of @@ -8615,12 +8615,12 @@ bfd_elf32_arm_stm32l4xx_erratum_scan (bfd *abfd, { _bfd_error_handler /* xgettext:c-format */ - (_("%B(%A+0x%lx): error: multiple load detected" + (_("%B(%A+%#x): 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"), - abfd, sec, (long) i); + abfd, sec, i); } else { @@ -9720,8 +9720,8 @@ elf32_arm_tls_relax (struct elf32_arm_link_hash_table *globals, | bfd_get_16 (input_bfd, contents + rel->r_offset + 2); _bfd_error_handler /* xgettext:c-format */ - (_("%B(%A+0x%lx): unexpected Thumb instruction '0x%x' in TLS trampoline"), - input_bfd, input_sec, (unsigned long)rel->r_offset, insn); + (_("%B(%A+%#Lx): unexpected Thumb instruction '%#lx' in TLS trampoline"), + input_bfd, input_sec, rel->r_offset, insn); return bfd_reloc_notsupported; } break; @@ -9760,8 +9760,8 @@ elf32_arm_tls_relax (struct elf32_arm_link_hash_table *globals, { _bfd_error_handler /* xgettext:c-format */ - (_("%B(%A+0x%lx): unexpected ARM instruction '0x%x' in TLS trampoline"), - input_bfd, input_sec, (unsigned long)rel->r_offset, insn); + (_("%B(%A+%#Lx): unexpected ARM instruction '%#lx' in TLS trampoline"), + input_bfd, input_sec, rel->r_offset, insn); return bfd_reloc_notsupported; } break; @@ -9906,6 +9906,7 @@ elf32_arm_final_link_relocate (reloc_howto_type * howto, return bfd_reloc_notsupported; BFD_ASSERT (is_arm_elf (input_bfd)); + BFD_ASSERT (howto != NULL); /* Some relocation types map to different relocations depending on the target. We pick the right one here. */ @@ -11524,9 +11525,8 @@ elf32_arm_final_link_relocate (reloc_howto_type * howto, { _bfd_error_handler /* xgettext:c-format */ - (_("%B(%A+0x%lx): unexpected Thumb instruction '0x%x' referenced by TLS_GOTDESC"), - input_bfd, input_section, - (unsigned long)rel->r_offset, insn); + (_("%B(%A+%#Lx): unexpected Thumb instruction '%#lx' referenced by TLS_GOTDESC"), + input_bfd, input_section, rel->r_offset, insn); return bfd_reloc_notsupported; } } @@ -11548,9 +11548,8 @@ elf32_arm_final_link_relocate (reloc_howto_type * howto, default: _bfd_error_handler /* xgettext:c-format */ - (_("%B(%A+0x%lx): unexpected ARM instruction '0x%x' referenced by TLS_GOTDESC"), - input_bfd, input_section, - (unsigned long)rel->r_offset, insn); + (_("%B(%A+%#Lx): unexpected ARM instruction '%#lx' referenced by TLS_GOTDESC"), + input_bfd, input_section, rel->r_offset, insn); return bfd_reloc_notsupported; } } @@ -11578,9 +11577,8 @@ elf32_arm_final_link_relocate (reloc_howto_type * howto, { _bfd_error_handler /* xgettext:c-format */ - (_("%B(%A+0x%lx): R_ARM_TLS_LE32 relocation not permitted in shared object"), - input_bfd, input_section, - (long) rel->r_offset, howto->name); + (_("%B(%A+%#Lx): %s relocation not permitted in shared object"), + input_bfd, input_section, rel->r_offset, howto->name); return bfd_reloc_notsupported; } else @@ -11792,9 +11790,8 @@ elf32_arm_final_link_relocate (reloc_howto_type * howto, { _bfd_error_handler /* xgettext:c-format */ - (_("%B(%A+0x%lx): Only ADD or SUB instructions are allowed for ALU group relocations"), - input_bfd, input_section, - (long) rel->r_offset, howto->name); + (_("%B(%A+%#Lx): Only ADD or SUB instructions are allowed for ALU group relocations"), + input_bfd, input_section, rel->r_offset); return bfd_reloc_overflow; } @@ -11833,10 +11830,9 @@ elf32_arm_final_link_relocate (reloc_howto_type * howto, { _bfd_error_handler /* xgettext:c-format */ - (_("%B(%A+0x%lx): Overflow whilst splitting 0x%lx for group relocation %s"), - input_bfd, input_section, - (long) rel->r_offset, signed_value < 0 ? - signed_value : signed_value, - howto->name); + (_("%B(%A+%#Lx): Overflow whilst splitting %#Lx for group relocation %s"), + input_bfd, input_section, rel->r_offset, + signed_value < 0 ? -signed_value : signed_value, howto->name); return bfd_reloc_overflow; } @@ -11924,9 +11920,9 @@ elf32_arm_final_link_relocate (reloc_howto_type * howto, { _bfd_error_handler /* xgettext:c-format */ - (_("%B(%A+0x%lx): Overflow whilst splitting 0x%lx for group relocation %s"), - input_bfd, input_section, - (long) rel->r_offset, labs (signed_value), howto->name); + (_("%B(%A+%#Lx): Overflow whilst splitting %#Lx for group relocation %s"), + input_bfd, input_section, rel->r_offset, + signed_value < 0 ? -signed_value : signed_value, howto->name); return bfd_reloc_overflow; } @@ -12010,9 +12006,9 @@ elf32_arm_final_link_relocate (reloc_howto_type * howto, { _bfd_error_handler /* xgettext:c-format */ - (_("%B(%A+0x%lx): Overflow whilst splitting 0x%lx for group relocation %s"), - input_bfd, input_section, - (long) rel->r_offset, labs (signed_value), howto->name); + (_("%B(%A+%#Lx): Overflow whilst splitting %#Lx for group relocation %s"), + input_bfd, input_section, rel->r_offset, + signed_value < 0 ? -signed_value : signed_value, howto->name); return bfd_reloc_overflow; } @@ -12098,9 +12094,9 @@ elf32_arm_final_link_relocate (reloc_howto_type * howto, { _bfd_error_handler /* xgettext:c-format */ - (_("%B(%A+0x%lx): Overflow whilst splitting 0x%lx for group relocation %s"), - input_bfd, input_section, - (long) rel->r_offset, labs (signed_value), howto->name); + (_("%B(%A+%#Lx): Overflow whilst splitting %#Lx for group relocation %s"), + input_bfd, input_section, rel->r_offset, + signed_value < 0 ? -signed_value : signed_value, howto->name); return bfd_reloc_overflow; } @@ -12294,8 +12290,10 @@ elf32_arm_relocate_section (bfd * output_bfd, || r_type == R_ARM_GNU_VTINHERIT) continue; - bfd_reloc.howto = elf32_arm_howto_from_type (r_type); - howto = bfd_reloc.howto; + howto = bfd_reloc.howto = elf32_arm_howto_from_type (r_type); + + if (howto == NULL) + return _bfd_unrecognized_reloc (input_bfd, input_section, r_type); h = NULL; sym = NULL; @@ -12362,9 +12360,9 @@ elf32_arm_relocate_section (bfd * output_bfd, { _bfd_error_handler /* xgettext:c-format */ - (_("%B(%A+0x%lx): %s relocation against SEC_MERGE section"), + (_("%B(%A+%#Lx): %s relocation against SEC_MERGE section"), input_bfd, input_section, - (long) rel->r_offset, howto->name); + rel->r_offset, howto->name); return FALSE; } @@ -12474,12 +12472,12 @@ elf32_arm_relocate_section (bfd * output_bfd, _bfd_error_handler ((sym_type == STT_TLS /* xgettext:c-format */ - ? _("%B(%A+0x%lx): %s used with TLS symbol %s") + ? _("%B(%A+%#Lx): %s used with TLS symbol %s") /* xgettext:c-format */ - : _("%B(%A+0x%lx): %s used with non-TLS symbol %s")), + : _("%B(%A+%#Lx): %s used with non-TLS symbol %s")), input_bfd, input_section, - (long) rel->r_offset, + rel->r_offset, howto->name, name); } @@ -12529,10 +12527,10 @@ elf32_arm_relocate_section (bfd * output_bfd, { _bfd_error_handler /* xgettext:c-format */ - (_("%B(%A+0x%lx): unresolvable %s relocation against symbol `%s'"), + (_("%B(%A+%#Lx): unresolvable %s relocation against symbol `%s'"), input_bfd, input_section, - (long) rel->r_offset, + rel->r_offset, howto->name, h->root.root.string); return FALSE; @@ -14042,7 +14040,7 @@ elf32_arm_merge_eabi_attributes (bfd *ibfd, struct bfd_link_info *info) if (in_attr[Tag_MPextension_use].i != in_attr[i].i) { _bfd_error_handler - (_("%B has has both the current and legacy " + (_("%B has both the current and legacy " "Tag_MPextension_use attributes"), ibfd); result = FALSE; @@ -14541,7 +14539,7 @@ elf32_arm_check_relocs (bfd *abfd, struct bfd_link_info *info, Elf_Internal_Sym *isym; struct elf_link_hash_entry *h; struct elf32_arm_link_hash_entry *eh; - unsigned long r_symndx; + unsigned int r_symndx; int r_type; r_symndx = ELF32_R_SYM (rel->r_info); @@ -18593,11 +18591,11 @@ elf32_arm_write_section (bfd *output_bfd, branch_to_veneer - (1 << 24) : 0; _bfd_error_handler - (_("%B(%#x): error: Cannot create STM32L4XX veneer. " - "Jump out of range by %ld bytes. " + (_("%B(%#Lx): error: Cannot create STM32L4XX veneer. " + "Jump out of range by %Ld bytes. " "Cannot encode branch instruction. "), output_bfd, - (long) (stm32l4xx_errnode->vma - 4), + stm32l4xx_errnode->vma - 4, out_of_range); continue; } diff --git a/bfd/elf32-bfin.c b/bfd/elf32-bfin.c index b3e09bd..09e50ce 100644 --- a/bfd/elf32-bfin.c +++ b/bfd/elf32-bfin.c @@ -1578,9 +1578,9 @@ bfin_relocate_section (bfd * output_bfd, { _bfd_error_handler /* xgettext:c-format */ - (_("%B(%A+0x%lx): unresolvable relocation against symbol `%s'"), + (_("%B(%A+%#Lx): unresolvable relocation against symbol `%s'"), input_bfd, - input_section, (long) rel->r_offset, h->root.root.string); + input_section, rel->r_offset, h->root.root.string); return FALSE; } @@ -1609,9 +1609,8 @@ bfin_relocate_section (bfd * output_bfd, { _bfd_error_handler /* xgettext:c-format */ - (_("%B(%A+0x%lx): reloc against `%s': error %d"), - input_bfd, input_section, - (long) rel->r_offset, name, (int) r); + (_("%B(%A+%#Lx): reloc against `%s': error %d"), + input_bfd, input_section, rel->r_offset, name, (int) r); return FALSE; } } @@ -2703,7 +2702,7 @@ bfinfdpic_relocate_section (bfd * output_bfd, { _bfd_error_handler /* xgettext:c-format */ - (_("%B: relocation at `%A+0x%x' references symbol `%s' with nonzero addend"), + (_("%B: relocation at `%A+%#Lx' references symbol `%s' with nonzero addend"), input_bfd, input_section, rel->r_offset, name); return FALSE; @@ -4874,8 +4873,8 @@ bfinfdpic_check_relocs (bfd *abfd, struct bfd_link_info *info, bad_reloc: _bfd_error_handler /* xgettext:c-format */ - (_("%B: unsupported relocation type %i"), - abfd, ELF32_R_TYPE (rel->r_info)); + (_("%B: unsupported relocation type %d"), + abfd, (int) ELF32_R_TYPE (rel->r_info)); return FALSE; } } @@ -4949,7 +4948,7 @@ elf32_bfin_merge_private_bfd_data (bfd *ibfd, struct bfd_link_info *info) if (0) #endif _bfd_error_handler - ("old_flags = 0x%.8lx, new_flags = 0x%.8lx, init = %s, filename = %B", + ("old_flags = 0x%.8x, new_flags = 0x%.8x, init = %s, filename = %B", old_flags, new_flags, elf_flags_init (obfd) ? "yes" : "no", ibfd); if (!elf_flags_init (obfd)) /* First call, no flags set. */ diff --git a/bfd/elf32-cris.c b/bfd/elf32-cris.c index 83c4101..2661f2b 100644 --- a/bfd/elf32-cris.c +++ b/bfd/elf32-cris.c @@ -1301,7 +1301,7 @@ cris_elf_relocate_section (bfd *output_bfd ATTRIBUTE_UNUSED, if (h == NULL) _bfd_error_handler /* xgettext:c-format */ - (_("%B, section %A: relocation %s with non-zero addend %d" + (_("%B, section %A: relocation %s with non-zero addend %Ld" " against local symbol"), input_bfd, input_section, @@ -1310,7 +1310,7 @@ cris_elf_relocate_section (bfd *output_bfd ATTRIBUTE_UNUSED, else _bfd_error_handler /* xgettext:c-format */ - (_("%B, section %A: relocation %s with non-zero addend %d" + (_("%B, section %A: relocation %s with non-zero addend %Ld" " against symbol `%s'"), input_bfd, input_section, @@ -1657,7 +1657,7 @@ cris_elf_relocate_section (bfd *output_bfd ATTRIBUTE_UNUSED, to pass us these kinds of things. */ _bfd_error_handler /* xgettext:c-format */ - (_("%B, section %A: relocation %s with non-zero addend %d" + (_("%B, section %A: relocation %s with non-zero addend %Ld" " against symbol `%s'"), input_bfd, input_section, @@ -1810,7 +1810,7 @@ cris_elf_relocate_section (bfd *output_bfd ATTRIBUTE_UNUSED, things. */ _bfd_error_handler /* xgettext:c-format */ - (_("%B, section %A: relocation %s with non-zero addend %d" + (_("%B, section %A: relocation %s with non-zero addend %Ld" " against symbol `%s'"), input_bfd, input_section, @@ -3230,7 +3230,7 @@ cris_elf_check_relocs (bfd *abfd, { _bfd_error_handler /* xgettext:c-format */ - (_("%B, section %A:\n v10/v32 compatible object %s" + (_("%B, section %A:\n v10/v32 compatible object" " must not contain a PIC relocation"), abfd, sec); return FALSE; diff --git a/bfd/elf32-frv.c b/bfd/elf32-frv.c index ef609ff..971073c 100644 --- a/bfd/elf32-frv.c +++ b/bfd/elf32-frv.c @@ -6355,7 +6355,7 @@ frv_elf_merge_private_bfd_data (bfd *ibfd, struct bfd_link_info *info) #ifdef DEBUG _bfd_error_handler - ("old_flags = 0x%.8lx, new_flags = 0x%.8lx, init = %s, filename = %s", + ("old_flags = 0x%.8x, new_flags = 0x%.8x, init = %s, filename = %s", old_flags, new_flags, elf_flags_init (obfd) ? "yes" : "no", bfd_get_filename (ibfd)); #endif @@ -6574,9 +6574,9 @@ frv_elf_merge_private_bfd_data (bfd *ibfd, struct bfd_link_info *info) error = TRUE; _bfd_error_handler /* xgettext:c-format */ - (_("%B: uses different unknown e_flags (0x%lx) fields" - " than previous modules (0x%lx)"), - ibfd, (long) new_partial, (long) old_partial); + (_("%B: uses different unknown e_flags (%#x) fields" + " than previous modules (%#x)"), + ibfd, new_partial, old_partial); } } diff --git a/bfd/elf32-ft32.c b/bfd/elf32-ft32.c index 13d5d7b..233c5a1 100644 --- a/bfd/elf32-ft32.c +++ b/bfd/elf32-ft32.c @@ -139,7 +139,7 @@ static reloc_howto_type ft32_elf_howto_table [] = 18, /* bitsize */ FALSE, /* pc_relative */ 0, /* bitpos */ - complain_overflow_signed, /* complain_on_overflow */ + complain_overflow_dont, /* complain_on_overflow */ bfd_elf_generic_reloc, /* special_function */ "R_FT32_18", /* name */ FALSE, /* partial_inplace */ diff --git a/bfd/elf32-hppa.c b/bfd/elf32-hppa.c index 0087c71..3adac6d 100644 --- a/bfd/elf32-hppa.c +++ b/bfd/elf32-hppa.c @@ -836,10 +836,10 @@ hppa_build_one_stub (struct bfd_hash_entry *bh, void *in_arg) { _bfd_error_handler /* xgettext:c-format */ - (_("%B(%A+0x%lx): cannot reach %s, recompile with -ffunction-sections"), + (_("%B(%A+%#Lx): cannot reach %s, recompile with -ffunction-sections"), hsh->target_section->owner, stub_sec, - (long) hsh->stub_offset, + hsh->stub_offset, hsh->bh_root.string); bfd_set_error (bfd_error_bad_value); return FALSE; @@ -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; } @@ -3430,10 +3427,10 @@ final_link_relocate (asection *input_section, error. */ _bfd_error_handler /* xgettext:c-format */ - (_("%B(%A+0x%lx): %s fixup for insn 0x%x is not supported in a non-shared link"), + (_("%B(%A+%#Lx): %s fixup for insn %#x is not supported in a non-shared link"), input_bfd, input_section, - (long) offset, + offset, howto->name, insn); } @@ -3596,10 +3593,10 @@ final_link_relocate (asection *input_section, { _bfd_error_handler /* xgettext:c-format */ - (_("%B(%A+0x%lx): cannot reach %s, recompile with -ffunction-sections"), + (_("%B(%A+%#Lx): cannot reach %s, recompile with -ffunction-sections"), input_bfd, input_section, - (long) offset, + offset, hsh->bh_root.string); bfd_set_error (bfd_error_bad_value); return bfd_reloc_notsupported; @@ -4287,10 +4284,10 @@ elf32_hppa_relocate_section (bfd *output_bfd, { _bfd_error_handler /* xgettext:c-format */ - (_("%B(%A+0x%lx): cannot handle %s for %s"), + (_("%B(%A+%#Lx): cannot handle %s for %s"), input_bfd, input_section, - (long) rela->r_offset, + rela->r_offset, howto->name, sym_name); bfd_set_error (bfd_error_bad_value); diff --git a/bfd/elf32-i370.c b/bfd/elf32-i370.c index 4c40b79..f305515 100644 --- a/bfd/elf32-i370.c +++ b/bfd/elf32-i370.c @@ -356,8 +356,8 @@ i370_elf_merge_private_bfd_data (bfd *ibfd, struct bfd_link_info *info) { _bfd_error_handler /* xgettext:c-format */ - (_("%B: uses different e_flags (0x%lx) fields than previous modules (0x%lx)"), - ibfd, (long) new_flags, (long) old_flags); + (_("%B: uses different e_flags (%#x) fields than previous modules (%#x)"), + ibfd, new_flags, old_flags); bfd_set_error (bfd_error_bad_value); return FALSE; @@ -1053,9 +1053,9 @@ i370_elf_relocate_section (bfd *output_bfd, bfd_boolean ret = TRUE; #ifdef DEBUG - _bfd_error_handler ("i370_elf_relocate_section called for %B section %A, %ld relocations%s", + _bfd_error_handler ("i370_elf_relocate_section called for %B section %A, %u relocations%s", input_bfd, input_section, - (long) input_section->reloc_count, + input_section->reloc_count, (bfd_link_relocatable (info)) ? " (relocatable)" : ""); #endif diff --git a/bfd/elf32-i386.c b/bfd/elf32-i386.c index df16775..d4adaf4 100644 --- a/bfd/elf32-i386.c +++ b/bfd/elf32-i386.c @@ -18,16 +18,9 @@ Foundation, Inc., 51 Franklin Street - Fifth Floor, Boston, MA 02110-1301, USA. */ -#include "sysdep.h" -#include "bfd.h" -#include "bfdlink.h" -#include "libbfd.h" -#include "elf-bfd.h" +#include "elfxx-x86.h" #include "elf-nacl.h" #include "elf-vxworks.h" -#include "bfd_stdint.h" -#include "objalloc.h" -#include "hashtab.h" #include "dwarf2.h" #include "opcode/i386.h" @@ -529,18 +522,6 @@ elf_i386_grok_psinfo (bfd *abfd, Elf_Internal_Note *note) early in the link process, elf_i386_finish_dynamic_sections is one of the last functions. */ - -/* The name of the dynamic interpreter. This is put in the .interp - section. */ - -#define ELF_DYNAMIC_INTERPRETER "/usr/lib/libc.so.1" - -/* If ELIMINATE_COPY_RELOCS is non-zero, the linker will try to avoid - copying dynamic variables from a shared lib into an app's dynbss - section, and instead use a dynamic relocation to point into the - shared lib. */ -#define ELIMINATE_COPY_RELOCS 1 - /* The size in bytes of an entry in the lazy procedure linkage table. */ #define LAZY_PLT_ENTRY_SIZE 16 @@ -675,10 +656,6 @@ static const bfd_byte elf_i386_pic_non_lazy_ibt_plt_entry[LAZY_PLT_ENTRY_SIZE] = static const bfd_byte elf_i386_eh_frame_lazy_plt[] = { -#define PLT_CIE_LENGTH 20 -#define PLT_FDE_LENGTH 36 -#define PLT_FDE_START_OFFSET 4 + PLT_CIE_LENGTH + 8 -#define PLT_FDE_LEN_OFFSET 4 + PLT_CIE_LENGTH + 12 PLT_CIE_LENGTH, 0, 0, 0, /* CIE length */ 0, 0, 0, 0, /* CIE ID */ 1, /* CIE version */ @@ -771,94 +748,21 @@ static const bfd_byte elf_i386_eh_frame_non_lazy_plt[] = DW_CFA_nop, DW_CFA_nop, DW_CFA_nop }; -struct elf_i386_lazy_plt_layout -{ - /* The first entry in an absolute lazy procedure linkage table looks - like this. */ - const bfd_byte *plt0_entry; - unsigned int plt0_entry_size; - - /* Offsets into plt0_entry that are to be replaced with GOT[1] and - GOT[2]. */ - unsigned int plt0_got1_offset; - unsigned int plt0_got2_offset; - - /* Later entries in an absolute lazy procedure linkage table look - like this. */ - const bfd_byte *plt_entry; - unsigned int plt_entry_size; - - /* Offsets into plt_entry that are to be replaced with... */ - unsigned int plt_got_offset; /* ... address of this symbol in .got. */ - unsigned int plt_reloc_offset; /* ... offset into relocation table. */ - unsigned int plt_plt_offset; /* ... offset to start of .plt. */ - - /* Offset into plt_entry where the initial value of the GOT entry - points. */ - unsigned int plt_lazy_offset; - - /* The first entry in a PIC lazy procedure linkage table looks like - this. */ - const bfd_byte *pic_plt0_entry; - - /* Subsequent entries in a PIC lazy procedure linkage table look - like this. */ - const bfd_byte *pic_plt_entry; - - /* .eh_frame covering the lazy .plt section. */ - const bfd_byte *eh_frame_plt; - unsigned int eh_frame_plt_size; -}; - -struct elf_i386_non_lazy_plt_layout -{ - /* Entries in an absolute non-lazy procedure linkage table look like - this. */ - const bfd_byte *plt_entry; - /* Entries in a PIC non-lazy procedure linkage table look like this. */ - const bfd_byte *pic_plt_entry; - - unsigned int plt_entry_size; - - /* Offsets into plt_entry that are to be replaced with... */ - unsigned int plt_got_offset; /* ... address of this symbol in .got. */ - - /* .eh_frame covering the non-lazy .plt section. */ - const bfd_byte *eh_frame_plt; - unsigned int eh_frame_plt_size; -}; - -struct elf_i386_plt_layout -{ - /* The first entry in a lazy procedure linkage table looks like this. */ - const bfd_byte *plt0_entry; - /* Entries in a procedure linkage table look like this. */ - const bfd_byte *plt_entry; - unsigned int plt_entry_size; - - /* 1 has PLT0. */ - unsigned int has_plt0; - - /* Offsets into plt_entry that are to be replaced with... */ - unsigned int plt_got_offset; /* ... address of this symbol in .got. */ - - /* .eh_frame covering the .plt section. */ - const bfd_byte *eh_frame_plt; - unsigned int eh_frame_plt_size; -}; - /* These are the standard parameters. */ -static const struct elf_i386_lazy_plt_layout elf_i386_lazy_plt = +static const struct elf_x86_lazy_plt_layout elf_i386_lazy_plt = { elf_i386_lazy_plt0_entry, /* plt0_entry */ sizeof (elf_i386_lazy_plt0_entry), /* plt0_entry_size */ - 2, /* plt0_got1_offset */ - 8, /* plt0_got2_offset */ elf_i386_lazy_plt_entry, /* plt_entry */ LAZY_PLT_ENTRY_SIZE, /* plt_entry_size */ + 2, /* plt0_got1_offset */ + 8, /* plt0_got2_offset */ + 0, /* plt0_got2_insn_end */ 2, /* plt_got_offset */ 7, /* plt_reloc_offset */ 12, /* plt_plt_offset */ + 0, /* plt_got_insn_size */ + 0, /* plt_plt_insn_end */ 6, /* plt_lazy_offset */ elf_i386_pic_lazy_plt0_entry, /* pic_plt0_entry */ elf_i386_pic_lazy_plt_entry, /* pic_plt_entry */ @@ -866,27 +770,31 @@ static const struct elf_i386_lazy_plt_layout elf_i386_lazy_plt = sizeof (elf_i386_eh_frame_lazy_plt) /* eh_frame_plt_size */ }; -static const struct elf_i386_non_lazy_plt_layout elf_i386_non_lazy_plt = +static const struct elf_x86_non_lazy_plt_layout elf_i386_non_lazy_plt = { elf_i386_non_lazy_plt_entry, /* plt_entry */ elf_i386_pic_non_lazy_plt_entry, /* pic_plt_entry */ NON_LAZY_PLT_ENTRY_SIZE, /* plt_entry_size */ 2, /* plt_got_offset */ + 0, /* plt_got_insn_size */ elf_i386_eh_frame_non_lazy_plt, /* eh_frame_plt */ sizeof (elf_i386_eh_frame_non_lazy_plt) /* eh_frame_plt_size */ }; -static const struct elf_i386_lazy_plt_layout elf_i386_lazy_ibt_plt = +static const struct elf_x86_lazy_plt_layout elf_i386_lazy_ibt_plt = { elf_i386_lazy_ibt_plt0_entry, /* plt0_entry */ sizeof (elf_i386_lazy_ibt_plt0_entry), /* plt0_entry_size */ - 2, /* plt0_got1_offset */ - 8, /* plt0_got2_offset */ elf_i386_lazy_ibt_plt_entry, /* plt_entry */ LAZY_PLT_ENTRY_SIZE, /* plt_entry_size */ + 2, /* plt0_got1_offset */ + 8, /* plt0_got2_offset */ + 0, /* plt0_got2_insn_end */ 4+2, /* plt_got_offset */ 4+1, /* plt_reloc_offset */ 4+6, /* plt_plt_offset */ + 0, /* plt_got_insn_size */ + 0, /* plt_plt_insn_end */ 0, /* plt_lazy_offset */ elf_i386_pic_lazy_ibt_plt0_entry, /* pic_plt0_entry */ elf_i386_lazy_ibt_plt_entry, /* pic_plt_entry */ @@ -894,12 +802,13 @@ static const struct elf_i386_lazy_plt_layout elf_i386_lazy_ibt_plt = sizeof (elf_i386_eh_frame_lazy_ibt_plt) /* eh_frame_plt_size */ }; -static const struct elf_i386_non_lazy_plt_layout elf_i386_non_lazy_ibt_plt = +static const struct elf_x86_non_lazy_plt_layout elf_i386_non_lazy_ibt_plt = { elf_i386_non_lazy_ibt_plt_entry, /* plt_entry */ elf_i386_pic_non_lazy_ibt_plt_entry,/* pic_plt_entry */ LAZY_PLT_ENTRY_SIZE, /* plt_entry_size */ 4+2, /* plt_got_offset */ + 0, /* plt_got_insn_size */ elf_i386_eh_frame_non_lazy_plt, /* eh_frame_plt */ sizeof (elf_i386_eh_frame_non_lazy_plt) /* eh_frame_plt_size */ }; @@ -940,427 +849,6 @@ static const struct elf_i386_backend_data elf_i386_arch_bed = #define elf_backend_arch_data &elf_i386_arch_bed -/* Is a undefined weak symbol which is resolved to 0. Reference to an - undefined weak symbol is resolved to 0 when building executable if - it isn't dynamic and - 1. Has non-GOT/non-PLT relocations in text section. Or - 2. Has no GOT/PLT relocation. - Local undefined weak symbol is always resolved to 0. - */ -#define UNDEFINED_WEAK_RESOLVED_TO_ZERO(INFO, GOT_RELOC, EH) \ - ((EH)->elf.root.type == bfd_link_hash_undefweak \ - && ((EH)->elf.forced_local \ - || (bfd_link_executable (INFO) \ - && (elf_i386_hash_table (INFO)->interp == NULL \ - || !(GOT_RELOC) \ - || (EH)->has_non_got_reloc \ - || !(INFO)->dynamic_undefined_weak)))) - -/* i386 ELF linker hash entry. */ - -struct elf_i386_link_hash_entry -{ - struct elf_link_hash_entry elf; - - /* Track dynamic relocs copied for this symbol. */ - struct elf_dyn_relocs *dyn_relocs; - -#define GOT_UNKNOWN 0 -#define GOT_NORMAL 1 -#define GOT_TLS_GD 2 -#define GOT_TLS_IE 4 -#define GOT_TLS_IE_POS 5 -#define GOT_TLS_IE_NEG 6 -#define GOT_TLS_IE_BOTH 7 -#define GOT_TLS_GDESC 8 -#define GOT_TLS_GD_BOTH_P(type) \ - ((type) == (GOT_TLS_GD | GOT_TLS_GDESC)) -#define GOT_TLS_GD_P(type) \ - ((type) == GOT_TLS_GD || GOT_TLS_GD_BOTH_P (type)) -#define GOT_TLS_GDESC_P(type) \ - ((type) == GOT_TLS_GDESC || GOT_TLS_GD_BOTH_P (type)) -#define GOT_TLS_GD_ANY_P(type) \ - (GOT_TLS_GD_P (type) || GOT_TLS_GDESC_P (type)) - unsigned char tls_type; - - /* Symbol is referenced by R_386_GOTOFF relocation. */ - unsigned int gotoff_ref : 1; - - /* Symbol has GOT or PLT relocations. */ - unsigned int has_got_reloc : 1; - - /* Symbol has non-GOT/non-PLT relocations in text sections. */ - unsigned int has_non_got_reloc : 1; - - /* Don't call finish_dynamic_symbol on this symbol. */ - unsigned int no_finish_dynamic_symbol : 1; - - /* 0: symbol isn't ___tls_get_addr. - 1: symbol is ___tls_get_addr. - 2: symbol is unknown. */ - unsigned int tls_get_addr : 2; - - /* Reference count of C/C++ function pointer relocations in read-write - section which can be resolved at run-time. */ - bfd_signed_vma func_pointer_refcount; - - /* Information about the GOT PLT entry. Filled when there are both - GOT and PLT relocations against the same function. */ - union gotplt_union plt_got; - - /* Information about the second PLT entry. */ - union gotplt_union plt_second; - - /* Offset of the GOTPLT entry reserved for the TLS descriptor, - starting at the end of the jump table. */ - bfd_vma tlsdesc_got; -}; - -#define elf_i386_hash_entry(ent) ((struct elf_i386_link_hash_entry *)(ent)) - -struct elf_i386_obj_tdata -{ - struct elf_obj_tdata root; - - /* tls_type for each local got entry. */ - char *local_got_tls_type; - - /* GOTPLT entries for TLS descriptors. */ - bfd_vma *local_tlsdesc_gotent; -}; - -#define elf_i386_tdata(abfd) \ - ((struct elf_i386_obj_tdata *) (abfd)->tdata.any) - -#define elf_i386_local_got_tls_type(abfd) \ - (elf_i386_tdata (abfd)->local_got_tls_type) - -#define elf_i386_local_tlsdesc_gotent(abfd) \ - (elf_i386_tdata (abfd)->local_tlsdesc_gotent) - -#define is_i386_elf(bfd) \ - (bfd_get_flavour (bfd) == bfd_target_elf_flavour \ - && elf_tdata (bfd) != NULL \ - && elf_object_id (bfd) == I386_ELF_DATA) - -static bfd_boolean -elf_i386_mkobject (bfd *abfd) -{ - return bfd_elf_allocate_object (abfd, sizeof (struct elf_i386_obj_tdata), - I386_ELF_DATA); -} - -/* i386 ELF linker hash table. */ - -struct elf_i386_link_hash_table -{ - struct elf_link_hash_table elf; - - /* Short-cuts to get to dynamic linker sections. */ - asection *interp; - asection *plt_eh_frame; - asection *plt_second; - asection *plt_second_eh_frame; - asection *plt_got; - asection *plt_got_eh_frame; - - /* Parameters describing PLT generation. */ - struct elf_i386_plt_layout plt; - - /* Parameters describing lazy PLT generation. */ - const struct elf_i386_lazy_plt_layout *lazy_plt; - - /* Parameters describing non-lazy PLT generation. */ - const struct elf_i386_non_lazy_plt_layout *non_lazy_plt; - - union - { - bfd_signed_vma refcount; - bfd_vma offset; - } tls_ldm_got; - - /* The amount of space used by the reserved portion of the sgotplt - section, plus whatever space is used by the jump slots. */ - bfd_vma sgotplt_jump_table_size; - - /* Small local sym cache. */ - struct sym_cache sym_cache; - - /* _TLS_MODULE_BASE_ symbol. */ - struct bfd_link_hash_entry *tls_module_base; - - /* Used by local STT_GNU_IFUNC symbols. */ - htab_t loc_hash_table; - void * loc_hash_memory; - - /* The (unloaded but important) .rel.plt.unloaded section on VxWorks. */ - asection *srelplt2; - - /* The index of the next unused R_386_TLS_DESC slot in .rel.plt. */ - bfd_vma next_tls_desc_index; - - /* The index of the next unused R_386_JUMP_SLOT slot in .rel.plt. */ - bfd_vma next_jump_slot_index; - - /* The index of the next unused R_386_IRELATIVE slot in .rel.plt. */ - bfd_vma next_irelative_index; - - /* TRUE if there are dynamic relocs against IFUNC symbols that apply - to read-only sections. */ - bfd_boolean readonly_dynrelocs_against_ifunc; -}; - -/* Get the i386 ELF linker hash table from a link_info structure. */ - -#define elf_i386_hash_table(p) \ - (elf_hash_table_id ((struct elf_link_hash_table *) ((p)->hash)) \ - == I386_ELF_DATA ? ((struct elf_i386_link_hash_table *) ((p)->hash)) : NULL) - -#define elf_i386_compute_jump_table_size(htab) \ - ((htab)->elf.srelplt->reloc_count * 4) - -/* Create an entry in an i386 ELF linker hash table. */ - -static struct bfd_hash_entry * -elf_i386_link_hash_newfunc (struct bfd_hash_entry *entry, - struct bfd_hash_table *table, - const char *string) -{ - /* Allocate the structure if it has not already been allocated by a - subclass. */ - if (entry == NULL) - { - entry = (struct bfd_hash_entry *) - bfd_hash_allocate (table, sizeof (struct elf_i386_link_hash_entry)); - if (entry == NULL) - return entry; - } - - /* Call the allocation method of the superclass. */ - entry = _bfd_elf_link_hash_newfunc (entry, table, string); - if (entry != NULL) - { - struct elf_i386_link_hash_entry *eh; - - eh = (struct elf_i386_link_hash_entry *) entry; - eh->dyn_relocs = NULL; - eh->tls_type = GOT_UNKNOWN; - eh->gotoff_ref = 0; - eh->has_got_reloc = 0; - eh->has_non_got_reloc = 0; - eh->no_finish_dynamic_symbol = 0; - eh->tls_get_addr = 2; - eh->func_pointer_refcount = 0; - eh->plt_got.offset = (bfd_vma) -1; - eh->tlsdesc_got = (bfd_vma) -1; - } - - return entry; -} - -/* Compute a hash of a local hash entry. We use elf_link_hash_entry - for local symbol so that we can handle local STT_GNU_IFUNC symbols - as global symbol. We reuse indx and dynstr_index for local symbol - hash since they aren't used by global symbols in this backend. */ - -static hashval_t -elf_i386_local_htab_hash (const void *ptr) -{ - struct elf_link_hash_entry *h - = (struct elf_link_hash_entry *) ptr; - return ELF_LOCAL_SYMBOL_HASH (h->indx, h->dynstr_index); -} - -/* Compare local hash entries. */ - -static int -elf_i386_local_htab_eq (const void *ptr1, const void *ptr2) -{ - struct elf_link_hash_entry *h1 - = (struct elf_link_hash_entry *) ptr1; - struct elf_link_hash_entry *h2 - = (struct elf_link_hash_entry *) ptr2; - - return h1->indx == h2->indx && h1->dynstr_index == h2->dynstr_index; -} - -/* Find and/or create a hash entry for local symbol. */ - -static struct elf_link_hash_entry * -elf_i386_get_local_sym_hash (struct elf_i386_link_hash_table *htab, - bfd *abfd, const Elf_Internal_Rela *rel, - bfd_boolean create) -{ - struct elf_i386_link_hash_entry e, *ret; - asection *sec = abfd->sections; - hashval_t h = ELF_LOCAL_SYMBOL_HASH (sec->id, - ELF32_R_SYM (rel->r_info)); - void **slot; - - e.elf.indx = sec->id; - e.elf.dynstr_index = ELF32_R_SYM (rel->r_info); - slot = htab_find_slot_with_hash (htab->loc_hash_table, &e, h, - create ? INSERT : NO_INSERT); - - if (!slot) - return NULL; - - if (*slot) - { - ret = (struct elf_i386_link_hash_entry *) *slot; - return &ret->elf; - } - - ret = (struct elf_i386_link_hash_entry *) - objalloc_alloc ((struct objalloc *) htab->loc_hash_memory, - sizeof (struct elf_i386_link_hash_entry)); - if (ret) - { - memset (ret, 0, sizeof (*ret)); - ret->elf.indx = sec->id; - ret->elf.dynstr_index = ELF32_R_SYM (rel->r_info); - ret->elf.dynindx = -1; - ret->func_pointer_refcount = 0; - ret->plt_got.offset = (bfd_vma) -1; - *slot = ret; - } - return &ret->elf; -} - -/* Destroy an i386 ELF linker hash table. */ - -static void -elf_i386_link_hash_table_free (bfd *obfd) -{ - struct elf_i386_link_hash_table *htab - = (struct elf_i386_link_hash_table *) obfd->link.hash; - - if (htab->loc_hash_table) - htab_delete (htab->loc_hash_table); - if (htab->loc_hash_memory) - objalloc_free ((struct objalloc *) htab->loc_hash_memory); - _bfd_elf_link_hash_table_free (obfd); -} - -/* Create an i386 ELF linker hash table. */ - -static struct bfd_link_hash_table * -elf_i386_link_hash_table_create (bfd *abfd) -{ - struct elf_i386_link_hash_table *ret; - bfd_size_type amt = sizeof (struct elf_i386_link_hash_table); - - ret = (struct elf_i386_link_hash_table *) bfd_zmalloc (amt); - if (ret == NULL) - return NULL; - - if (!_bfd_elf_link_hash_table_init (&ret->elf, abfd, - elf_i386_link_hash_newfunc, - sizeof (struct elf_i386_link_hash_entry), - I386_ELF_DATA)) - { - free (ret); - return NULL; - } - - ret->loc_hash_table = htab_try_create (1024, - elf_i386_local_htab_hash, - elf_i386_local_htab_eq, - NULL); - ret->loc_hash_memory = objalloc_create (); - if (!ret->loc_hash_table || !ret->loc_hash_memory) - { - elf_i386_link_hash_table_free (abfd); - return NULL; - } - ret->elf.root.hash_table_free = elf_i386_link_hash_table_free; - - return &ret->elf.root; -} - -/* Copy the extra info we tack onto an elf_link_hash_entry. */ - -static void -elf_i386_copy_indirect_symbol (struct bfd_link_info *info, - struct elf_link_hash_entry *dir, - struct elf_link_hash_entry *ind) -{ - struct elf_i386_link_hash_entry *edir, *eind; - - edir = (struct elf_i386_link_hash_entry *) dir; - eind = (struct elf_i386_link_hash_entry *) ind; - - if (eind->dyn_relocs != NULL) - { - if (edir->dyn_relocs != NULL) - { - struct elf_dyn_relocs **pp; - struct elf_dyn_relocs *p; - - /* Add reloc counts against the indirect sym to the direct sym - list. Merge any entries against the same section. */ - for (pp = &eind->dyn_relocs; (p = *pp) != NULL; ) - { - struct elf_dyn_relocs *q; - - for (q = edir->dyn_relocs; q != NULL; q = q->next) - if (q->sec == p->sec) - { - q->pc_count += p->pc_count; - q->count += p->count; - *pp = p->next; - break; - } - if (q == NULL) - pp = &p->next; - } - *pp = edir->dyn_relocs; - } - - edir->dyn_relocs = eind->dyn_relocs; - eind->dyn_relocs = NULL; - } - - if (ind->root.type == bfd_link_hash_indirect - && dir->got.refcount <= 0) - { - edir->tls_type = eind->tls_type; - eind->tls_type = GOT_UNKNOWN; - } - - /* Copy gotoff_ref so that elf_i386_adjust_dynamic_symbol will - generate a R_386_COPY reloc. */ - edir->gotoff_ref |= eind->gotoff_ref; - - edir->has_got_reloc |= eind->has_got_reloc; - edir->has_non_got_reloc |= eind->has_non_got_reloc; - - if (ELIMINATE_COPY_RELOCS - && ind->root.type != bfd_link_hash_indirect - && dir->dynamic_adjusted) - { - /* If called to transfer flags for a weakdef during processing - of elf_adjust_dynamic_symbol, don't copy non_got_ref. - We clear it ourselves for ELIMINATE_COPY_RELOCS. */ - if (dir->versioned != versioned_hidden) - dir->ref_dynamic |= ind->ref_dynamic; - dir->ref_regular |= ind->ref_regular; - dir->ref_regular_nonweak |= ind->ref_regular_nonweak; - dir->needs_plt |= ind->needs_plt; - dir->pointer_equality_needed |= ind->pointer_equality_needed; - } - else - { - if (eind->func_pointer_refcount > 0) - { - edir->func_pointer_refcount += eind->func_pointer_refcount; - eind->func_pointer_refcount = 0; - } - - _bfd_elf_link_hash_copy_indirect (info, dir, ind); - } -} - /* Return TRUE if the TLS access code sequence support transition from R_TYPE. */ @@ -1378,7 +866,7 @@ elf_i386_check_tls_transition (asection *sec, struct elf_link_hash_entry *h; bfd_vma offset; bfd_byte *call; - bfd_boolean indirect_call, tls_get_addr; + bfd_boolean indirect_call; offset = rel->r_offset; switch (r_type) @@ -1483,29 +971,9 @@ elf_i386_check_tls_transition (asection *sec, if (r_symndx < symtab_hdr->sh_info) return FALSE; - tls_get_addr = FALSE; h = sym_hashes[r_symndx - symtab_hdr->sh_info]; - if (h != NULL && h->root.root.string != NULL) - { - struct elf_i386_link_hash_entry *eh - = (struct elf_i386_link_hash_entry *) h; - tls_get_addr = eh->tls_get_addr == 1; - if (eh->tls_get_addr > 1) - { - /* Use strncmp to check ___tls_get_addr since - ___tls_get_addr may be versioned. */ - if (strncmp (h->root.root.string, "___tls_get_addr", 15) - == 0) - { - eh->tls_get_addr = 1; - tls_get_addr = TRUE; - } - else - eh->tls_get_addr = 0; - } - } - - if (!tls_get_addr) + if (h == NULL + || !((struct elf_x86_link_hash_entry *) h)->tls_get_addr) return FALSE; else if (indirect_call) return (ELF32_R_TYPE (rel[1].r_info) == R_386_GOT32X); @@ -1691,9 +1159,9 @@ elf_i386_tls_transition (struct bfd_link_info *info, bfd *abfd, name = h->root.root.string; else { - struct elf_i386_link_hash_table *htab; + struct elf_x86_link_hash_table *htab; - htab = elf_i386_hash_table (info); + htab = elf_x86_hash_table (info, I386_ELF_DATA); if (htab == NULL) name = "*unknown*"; else @@ -1708,10 +1176,10 @@ elf_i386_tls_transition (struct bfd_link_info *info, bfd *abfd, _bfd_error_handler /* xgettext:c-format */ - (_("%B: TLS transition from %s to %s against `%s' at 0x%lx " + (_("%B: TLS transition from %s to %s against `%s' at %#Lx " "in section `%A' failed"), abfd, from->name, to->name, name, - (unsigned long) rel->r_offset, sec); + rel->r_offset, sec); bfd_set_error (bfd_error_bad_value); return FALSE; } @@ -1743,12 +1211,13 @@ static bfd_boolean elf_i386_convert_load_reloc (bfd *abfd, Elf_Internal_Shdr *symtab_hdr, bfd_byte *contents, + unsigned int *r_type_p, Elf_Internal_Rela *irel, struct elf_link_hash_entry *h, bfd_boolean *converted, struct bfd_link_info *link_info) { - struct elf_i386_link_hash_table *htab; + struct elf_x86_link_hash_table *htab; unsigned int opcode; unsigned int modrm; bfd_boolean baseless; @@ -1761,6 +1230,8 @@ elf_i386_convert_load_reloc (bfd *abfd, Elf_Internal_Shdr *symtab_hdr, unsigned int r_type; unsigned int r_symndx; bfd_vma roff = irel->r_offset; + bfd_boolean local_ref; + struct elf_x86_link_hash_entry *eh; if (roff < 2) return TRUE; @@ -1770,10 +1241,10 @@ elf_i386_convert_load_reloc (bfd *abfd, Elf_Internal_Shdr *symtab_hdr, if (addend != 0) return TRUE; - htab = elf_i386_hash_table (link_info); + htab = elf_x86_hash_table (link_info, I386_ELF_DATA); is_pic = bfd_link_pic (link_info); - r_type = ELF32_R_TYPE (irel->r_info); + r_type = *r_type_p; r_symndx = ELF32_R_SYM (irel->r_info); modrm = bfd_get_8 (abfd, contents + roff - 1); @@ -1808,6 +1279,8 @@ elf_i386_convert_load_reloc (bfd *abfd, Elf_Internal_Shdr *symtab_hdr, register. */ to_reloc_32 = !is_pic || baseless; + eh = elf_x86_hash_entry (h); + /* Try to convert R_386_GOT32X. Get the symbol referred to by the reloc. */ if (h == NULL) @@ -1822,10 +1295,14 @@ elf_i386_convert_load_reloc (bfd *abfd, Elf_Internal_Shdr *symtab_hdr, goto convert_load; } + /* NB: Also set linker_def via SYMBOL_REFERENCES_LOCAL_P. */ + local_ref = SYMBOL_REFERENCES_LOCAL_P (link_info, h); + /* Undefined weak symbol is only bound locally in executable and its reference is resolved as 0. */ - if (UNDEFINED_WEAK_RESOLVED_TO_ZERO (link_info, TRUE, - elf_i386_hash_entry (h))) + if (h->root.type == bfd_link_hash_undefweak + && !eh->linker_def + && local_ref) { if (opcode == 0xff) { @@ -1848,22 +1325,19 @@ elf_i386_convert_load_reloc (bfd *abfd, Elf_Internal_Shdr *symtab_hdr, /* We have "call/jmp *foo@GOT[(%reg)]". */ if ((h->root.type == bfd_link_hash_defined || h->root.type == bfd_link_hash_defweak) - && SYMBOL_REFERENCES_LOCAL (link_info, h)) + && local_ref) { /* The function is locally defined. */ convert_branch: /* Convert R_386_GOT32X to R_386_PC32. */ if (modrm == 0x15 || (modrm & 0xf8) == 0x90) { - struct elf_i386_link_hash_entry *eh - = (struct elf_i386_link_hash_entry *) h; - /* Convert to "nop call foo". ADDR_PREFIX_OPCODE is a nop prefix. */ modrm = 0xe8; /* To support TLS optimization, always use addr32 prefix for "call *___tls_get_addr@GOT(%reg)". */ - if (eh && eh->tls_get_addr == 1) + if (eh && eh->tls_get_addr) { nop = 0x67; nop_offset = irel->r_offset - 2; @@ -1895,7 +1369,7 @@ convert_branch: need to adjust addend by -4. */ bfd_put_32 (abfd, -4, contents + irel->r_offset); irel->r_info = ELF32_R_INFO (r_symndx, R_386_PC32); - + *r_type_p = R_386_PC32; *converted = TRUE; } } @@ -1914,10 +1388,11 @@ convert_branch: bfd_elf_record_link_assignment. start_stop is set on __start_SECNAME/__stop_SECNAME which mark section SECNAME. */ if (h->start_stop + || eh->linker_def || ((h->def_regular || h->root.type == bfd_link_hash_defined || h->root.type == bfd_link_hash_defweak) - && SYMBOL_REFERENCES_LOCAL (link_info, h))) + && local_ref)) { convert_load: if (opcode == 0x8b) @@ -1967,7 +1442,7 @@ convert_load: bfd_put_8 (abfd, opcode, contents + roff - 2); irel->r_info = ELF32_R_INFO (r_symndx, r_type); - + *r_type_p = r_type; *converted = TRUE; } } @@ -1977,8 +1452,7 @@ convert_load: /* Rename some of the generic section flags to better document how they are used here. */ -#define need_convert_load sec_flg0 -#define check_relocs_failed sec_flg1 +#define check_relocs_failed sec_flg0 /* Look through the relocs for a section during the first phase, and calculate needed space in the global offset table, procedure linkage @@ -1990,13 +1464,14 @@ elf_i386_check_relocs (bfd *abfd, asection *sec, const Elf_Internal_Rela *relocs) { - struct elf_i386_link_hash_table *htab; + struct elf_x86_link_hash_table *htab; Elf_Internal_Shdr *symtab_hdr; struct elf_link_hash_entry **sym_hashes; const Elf_Internal_Rela *rel; const Elf_Internal_Rela *rel_end; asection *sreloc; bfd_byte *contents; + bfd_boolean converted; if (bfd_link_relocatable (info)) return TRUE; @@ -2010,15 +1485,15 @@ elf_i386_check_relocs (bfd *abfd, if ((sec->flags & SEC_ALLOC) == 0) return TRUE; - BFD_ASSERT (is_i386_elf (abfd)); - - htab = elf_i386_hash_table (info); + htab = elf_x86_hash_table (info, I386_ELF_DATA); if (htab == NULL) { sec->check_relocs_failed = 1; return FALSE; } + BFD_ASSERT (is_x86_elf (abfd, htab)); + /* Get the section contents. */ if (elf_section_data (sec)->this_hdr.contents != NULL) contents = elf_section_data (sec)->this_hdr.contents; @@ -2031,15 +1506,17 @@ elf_i386_check_relocs (bfd *abfd, symtab_hdr = &elf_symtab_hdr (abfd); sym_hashes = elf_sym_hashes (abfd); + converted = FALSE; + sreloc = NULL; rel_end = relocs + sec->reloc_count; for (rel = relocs; rel < rel_end; rel++) { unsigned int r_type; - unsigned long r_symndx; + unsigned int r_symndx; struct elf_link_hash_entry *h; - struct elf_i386_link_hash_entry *eh; + struct elf_x86_link_hash_entry *eh; Elf_Internal_Sym *isym; const char *name; bfd_boolean size_reloc; @@ -2066,7 +1543,7 @@ elf_i386_check_relocs (bfd *abfd, /* Check relocation against local STT_GNU_IFUNC symbol. */ if (ELF32_ST_TYPE (isym->st_info) == STT_GNU_IFUNC) { - h = elf_i386_get_local_sym_hash (htab, abfd, rel, TRUE); + h = _bfd_elf_x86_get_local_sym_hash (htab, abfd, rel, TRUE); if (h == NULL) goto error_return; @@ -2091,7 +1568,7 @@ elf_i386_check_relocs (bfd *abfd, h = (struct elf_link_hash_entry *) h->root.u.i.link; } - eh = (struct elf_i386_link_hash_entry *) h; + eh = (struct elf_x86_link_hash_entry *) h; if (h != NULL) { if (r_type == R_386_GOTOFF) @@ -2106,6 +1583,16 @@ elf_i386_check_relocs (bfd *abfd, |= elf_gnu_symbol_ifunc; } + if (r_type == R_386_GOT32X + && (h == NULL || h->type != STT_GNU_IFUNC)) + { + Elf_Internal_Rela *irel = (Elf_Internal_Rela *) rel; + if (!elf_i386_convert_load_reloc (abfd, symtab_hdr, contents, + &r_type, irel, h, + &converted, info)) + goto error_return; + } + if (! elf_i386_tls_transition (info, abfd, sec, contents, symtab_hdr, sym_hashes, &r_type, GOT_UNKNOWN, @@ -2115,7 +1602,7 @@ elf_i386_check_relocs (bfd *abfd, switch (r_type) { case R_386_TLS_LDM: - htab->tls_ldm_got.refcount += 1; + htab->tls_ld_or_ldm_got.refcount += 1; goto create_got; case R_386_PLT32: @@ -2183,7 +1670,7 @@ elf_i386_check_relocs (bfd *abfd, if (h != NULL) { h->got.refcount += 1; - old_tls_type = elf_i386_hash_entry(h)->tls_type; + old_tls_type = elf_x86_hash_entry (h)->tls_type; } else { @@ -2203,13 +1690,13 @@ elf_i386_check_relocs (bfd *abfd, if (local_got_refcounts == NULL) goto error_return; elf_local_got_refcounts (abfd) = local_got_refcounts; - elf_i386_local_tlsdesc_gotent (abfd) + elf_x86_local_tlsdesc_gotent (abfd) = (bfd_vma *) (local_got_refcounts + symtab_hdr->sh_info); - elf_i386_local_got_tls_type (abfd) + elf_x86_local_got_tls_type (abfd) = (char *) (local_got_refcounts + 2 * symtab_hdr->sh_info); } local_got_refcounts[r_symndx] += 1; - old_tls_type = elf_i386_local_got_tls_type (abfd) [r_symndx]; + old_tls_type = elf_x86_local_got_tls_type (abfd) [r_symndx]; } if ((old_tls_type & GOT_TLS_IE) && (tls_type & GOT_TLS_IE)) @@ -2245,9 +1732,9 @@ elf_i386_check_relocs (bfd *abfd, if (old_tls_type != tls_type) { if (h != NULL) - elf_i386_hash_entry (h)->tls_type = tls_type; + elf_x86_hash_entry (h)->tls_type = tls_type; else - elf_i386_local_got_tls_type (abfd) [r_symndx] = tls_type; + elf_x86_local_got_tls_type (abfd) [r_symndx] = tls_type; } } /* Fall through */ @@ -2453,23 +1940,24 @@ do_size: default: break; } - - if (r_type == R_386_GOT32X - && (h == NULL || h->type != STT_GNU_IFUNC)) - sec->need_convert_load = 1; } if (elf_section_data (sec)->this_hdr.contents != contents) { - if (!info->keep_memory) + if (!converted && !info->keep_memory) free (contents); else { - /* Cache the section contents for elf_link_input_bfd. */ + /* Cache the section contents for elf_link_input_bfd if any + load is converted or --no-keep-memory isn't used. */ elf_section_data (sec)->this_hdr.contents = contents; } } + /* Cache relocations if any load is converted. */ + if (elf_section_data (sec)->relocs != relocs && converted) + elf_section_data (sec)->relocs = (Elf_Internal_Rela *) relocs; + return TRUE; error_return: @@ -2479,1291 +1967,6 @@ error_return: return FALSE; } -/* Return the section that should be marked against GC for a given - relocation. */ - -static asection * -elf_i386_gc_mark_hook (asection *sec, - struct bfd_link_info *info, - Elf_Internal_Rela *rel, - struct elf_link_hash_entry *h, - Elf_Internal_Sym *sym) -{ - if (h != NULL) - switch (ELF32_R_TYPE (rel->r_info)) - { - case R_386_GNU_VTINHERIT: - case R_386_GNU_VTENTRY: - return NULL; - } - - return _bfd_elf_gc_mark_hook (sec, info, rel, h, sym); -} - -/* Remove undefined weak symbol from the dynamic symbol table if it - is resolved to 0. */ - -static bfd_boolean -elf_i386_fixup_symbol (struct bfd_link_info *info, - struct elf_link_hash_entry *h) -{ - if (h->dynindx != -1 - && UNDEFINED_WEAK_RESOLVED_TO_ZERO (info, - elf_i386_hash_entry (h)->has_got_reloc, - elf_i386_hash_entry (h))) - { - h->dynindx = -1; - _bfd_elf_strtab_delref (elf_hash_table (info)->dynstr, - h->dynstr_index); - } - return TRUE; -} - -/* Adjust a symbol defined by a dynamic object and referenced by a - regular object. The current definition is in some section of the - dynamic object, but we're not including those sections. We have to - change the definition to something the rest of the link can - understand. */ - -static bfd_boolean -elf_i386_adjust_dynamic_symbol (struct bfd_link_info *info, - struct elf_link_hash_entry *h) -{ - struct elf_i386_link_hash_table *htab; - asection *s, *srel; - struct elf_i386_link_hash_entry *eh; - struct elf_dyn_relocs *p; - - /* STT_GNU_IFUNC symbol must go through PLT. */ - if (h->type == STT_GNU_IFUNC) - { - /* All local STT_GNU_IFUNC references must be treate as local - calls via local PLT. */ - if (h->ref_regular - && SYMBOL_CALLS_LOCAL (info, h)) - { - bfd_size_type pc_count = 0, count = 0; - struct elf_dyn_relocs **pp; - - eh = (struct elf_i386_link_hash_entry *) h; - for (pp = &eh->dyn_relocs; (p = *pp) != NULL; ) - { - pc_count += p->pc_count; - p->count -= p->pc_count; - p->pc_count = 0; - count += p->count; - if (p->count == 0) - *pp = p->next; - else - pp = &p->next; - } - - if (pc_count || count) - { - h->non_got_ref = 1; - if (pc_count) - { - /* Increment PLT reference count only for PC-relative - references. */ - h->needs_plt = 1; - if (h->plt.refcount <= 0) - h->plt.refcount = 1; - else - h->plt.refcount += 1; - } - } - } - - if (h->plt.refcount <= 0) - { - h->plt.offset = (bfd_vma) -1; - h->needs_plt = 0; - } - return TRUE; - } - - /* If this is a function, put it in the procedure linkage table. We - will fill in the contents of the procedure linkage table later, - when we know the address of the .got section. */ - if (h->type == STT_FUNC - || h->needs_plt) - { - if (h->plt.refcount <= 0 - || SYMBOL_CALLS_LOCAL (info, h) - || (ELF_ST_VISIBILITY (h->other) != STV_DEFAULT - && h->root.type == bfd_link_hash_undefweak)) - { - /* This case can occur if we saw a PLT32 reloc in an input - file, but the symbol was never referred to by a dynamic - object, or if all references were garbage collected. In - such a case, we don't actually need to build a procedure - linkage table, and we can just do a PC32 reloc instead. */ - h->plt.offset = (bfd_vma) -1; - h->needs_plt = 0; - } - - return TRUE; - } - else - /* It's possible that we incorrectly decided a .plt reloc was - needed for an R_386_PC32 reloc to a non-function sym in - check_relocs. We can't decide accurately between function and - non-function syms in check-relocs; Objects loaded later in - the link may change h->type. So fix it now. */ - h->plt.offset = (bfd_vma) -1; - - /* If this is a weak symbol, and there is a real definition, the - processor independent code will have arranged for us to see the - real definition first, and we can just use the same value. */ - if (h->u.weakdef != NULL) - { - BFD_ASSERT (h->u.weakdef->root.type == bfd_link_hash_defined - || h->u.weakdef->root.type == bfd_link_hash_defweak); - h->root.u.def.section = h->u.weakdef->root.u.def.section; - h->root.u.def.value = h->u.weakdef->root.u.def.value; - if (ELIMINATE_COPY_RELOCS || info->nocopyreloc) - h->non_got_ref = h->u.weakdef->non_got_ref; - return TRUE; - } - - /* This is a reference to a symbol defined by a dynamic object which - is not a function. */ - - /* If we are creating a shared library, we must presume that the - only references to the symbol are via the global offset table. - For such cases we need not do anything here; the relocations will - be handled correctly by relocate_section. */ - if (!bfd_link_executable (info)) - return TRUE; - - /* If there are no references to this symbol that do not use the - GOT nor R_386_GOTOFF relocation, we don't need to generate a copy - reloc. */ - eh = (struct elf_i386_link_hash_entry *) h; - if (!h->non_got_ref && !eh->gotoff_ref) - return TRUE; - - /* If -z nocopyreloc was given, we won't generate them either. */ - if (info->nocopyreloc) - { - h->non_got_ref = 0; - return TRUE; - } - - htab = elf_i386_hash_table (info); - if (htab == NULL) - return FALSE; - - /* If there aren't any dynamic relocs in read-only sections nor - R_386_GOTOFF relocation, then we can keep the dynamic relocs and - avoid the copy reloc. This doesn't work on VxWorks, where we can - not have dynamic relocations (other than copy and jump slot - relocations) in an executable. */ - if (ELIMINATE_COPY_RELOCS - && !eh->gotoff_ref - && get_elf_i386_backend_data (info->output_bfd)->os != is_vxworks) - { - for (p = eh->dyn_relocs; p != NULL; p = p->next) - { - s = p->sec->output_section; - if (s != NULL && (s->flags & SEC_READONLY) != 0) - break; - } - - if (p == NULL) - { - h->non_got_ref = 0; - return TRUE; - } - } - - /* We must allocate the symbol in our .dynbss section, which will - become part of the .bss section of the executable. There will be - an entry for this symbol in the .dynsym section. The dynamic - object will contain position independent code, so all references - from the dynamic object to this symbol will go through the global - offset table. The dynamic linker will use the .dynsym entry to - determine the address it must put in the global offset table, so - both the dynamic object and the regular object will refer to the - same memory location for the variable. */ - - /* We must generate a R_386_COPY reloc to tell the dynamic linker to - copy the initial value out of the dynamic object and into the - runtime process image. */ - if ((h->root.u.def.section->flags & SEC_READONLY) != 0) - { - s = htab->elf.sdynrelro; - srel = htab->elf.sreldynrelro; - } - else - { - s = htab->elf.sdynbss; - srel = htab->elf.srelbss; - } - if ((h->root.u.def.section->flags & SEC_ALLOC) != 0 && h->size != 0) - { - srel->size += sizeof (Elf32_External_Rel); - h->needs_copy = 1; - } - - return _bfd_elf_adjust_dynamic_copy (info, h, s); -} - -/* Allocate space in .plt, .got and associated reloc sections for - dynamic relocs. */ - -static bfd_boolean -elf_i386_allocate_dynrelocs (struct elf_link_hash_entry *h, void *inf) -{ - struct bfd_link_info *info; - struct elf_i386_link_hash_table *htab; - struct elf_i386_link_hash_entry *eh; - struct elf_dyn_relocs *p; - unsigned plt_entry_size; - bfd_boolean resolved_to_zero; - const struct elf_i386_backend_data *bed; - - if (h->root.type == bfd_link_hash_indirect) - return TRUE; - - eh = (struct elf_i386_link_hash_entry *) h; - - info = (struct bfd_link_info *) inf; - htab = elf_i386_hash_table (info); - if (htab == NULL) - return FALSE; - - bed = get_elf_i386_backend_data (info->output_bfd); - - plt_entry_size = htab->plt.plt_entry_size; - - resolved_to_zero = UNDEFINED_WEAK_RESOLVED_TO_ZERO (info, - eh->has_got_reloc, - eh); - - /* Clear the reference count of function pointer relocations if - symbol isn't a normal function. */ - if (h->type != STT_FUNC) - eh->func_pointer_refcount = 0; - - /* We can't use the GOT PLT if pointer equality is needed since - finish_dynamic_symbol won't clear symbol value and the dynamic - linker won't update the GOT slot. We will get into an infinite - loop at run-time. */ - if (htab->plt_got != NULL - && h->type != STT_GNU_IFUNC - && !h->pointer_equality_needed - && h->plt.refcount > 0 - && h->got.refcount > 0) - { - /* Don't use the regular PLT if there are both GOT and GOTPLT - reloctions. */ - h->plt.offset = (bfd_vma) -1; - - /* Use the GOT PLT. */ - eh->plt_got.refcount = 1; - } - - /* Since STT_GNU_IFUNC symbol must go through PLT, we handle it - here if it is defined and referenced in a non-shared object. */ - if (h->type == STT_GNU_IFUNC - && h->def_regular) - { - if (_bfd_elf_allocate_ifunc_dyn_relocs (info, h, &eh->dyn_relocs, - &htab->readonly_dynrelocs_against_ifunc, - plt_entry_size, - (htab->plt.has_plt0 * - plt_entry_size), - 4, TRUE)) - { - asection *s = htab->plt_second; - if (h->plt.offset != (bfd_vma) -1 && s != NULL) - { - /* Use the second PLT section if it is created. */ - eh->plt_second.offset = s->size; - - /* Make room for this entry in the second PLT section. */ - s->size += htab->non_lazy_plt->plt_entry_size; - } - - return TRUE; - } - else - return FALSE; - } - /* Don't create the PLT entry if there are only function pointer - relocations which can be resolved at run-time. */ - else if (htab->elf.dynamic_sections_created - && (h->plt.refcount > eh->func_pointer_refcount - || eh->plt_got.refcount > 0)) - { - bfd_boolean use_plt_got = eh->plt_got.refcount > 0; - - /* Clear the reference count of function pointer relocations - if PLT is used. */ - eh->func_pointer_refcount = 0; - - /* Make sure this symbol is output as a dynamic symbol. - Undefined weak syms won't yet be marked as dynamic. */ - if (h->dynindx == -1 - && !h->forced_local - && !resolved_to_zero - && h->root.type == bfd_link_hash_undefweak) - { - if (! bfd_elf_link_record_dynamic_symbol (info, h)) - return FALSE; - } - - if (bfd_link_pic (info) - || WILL_CALL_FINISH_DYNAMIC_SYMBOL (1, 0, h)) - { - asection *s = htab->elf.splt; - asection *second_s = htab->plt_second; - asection *got_s = htab->plt_got; - - /* If this is the first .plt entry, make room for the special - first entry. The .plt section is used by prelink to undo - prelinking for dynamic relocations. */ - if (s->size == 0) - s->size = htab->plt.has_plt0 * plt_entry_size; - - if (use_plt_got) - eh->plt_got.offset = got_s->size; - else - { - h->plt.offset = s->size; - if (second_s) - eh->plt_second.offset = second_s->size; - } - - /* If this symbol is not defined in a regular file, and we are - not generating a shared library, then set the symbol to this - location in the .plt. This is required to make function - pointers compare as equal between the normal executable and - the shared library. */ - if (! bfd_link_pic (info) - && !h->def_regular) - { - if (use_plt_got) - { - /* We need to make a call to the entry of the GOT PLT - instead of regular PLT entry. */ - h->root.u.def.section = got_s; - h->root.u.def.value = eh->plt_got.offset; - } - else - { - if (second_s) - { - /* We need to make a call to the entry of the - second PLT instead of regular PLT entry. */ - h->root.u.def.section = second_s; - h->root.u.def.value = eh->plt_second.offset; - } - else - { - h->root.u.def.section = s; - h->root.u.def.value = h->plt.offset; - } - } - } - - /* Make room for this entry. */ - if (use_plt_got) - got_s->size += htab->non_lazy_plt->plt_entry_size; - else - { - s->size += plt_entry_size; - if (second_s) - second_s->size += htab->non_lazy_plt->plt_entry_size; - - /* We also need to make an entry in the .got.plt section, - which will be placed in the .got section by the linker - script. */ - htab->elf.sgotplt->size += 4; - - /* There should be no PLT relocation against resolved - undefined weak symbol in executable. */ - if (!resolved_to_zero) - { - /* We also need to make an entry in the .rel.plt - section. */ - htab->elf.srelplt->size += sizeof (Elf32_External_Rel); - htab->elf.srelplt->reloc_count++; - } - } - - if (bed->os == is_vxworks && !bfd_link_pic (info)) - { - /* VxWorks has a second set of relocations for each PLT entry - in executables. They go in a separate relocation section, - which is processed by the kernel loader. */ - - /* There are two relocations for the initial PLT entry: an - R_386_32 relocation for _GLOBAL_OFFSET_TABLE_ + 4 and an - R_386_32 relocation for _GLOBAL_OFFSET_TABLE_ + 8. */ - - if (h->plt.offset == plt_entry_size) - htab->srelplt2->size += (sizeof (Elf32_External_Rel) * 2); - - /* There are two extra relocations for each subsequent PLT entry: - an R_386_32 relocation for the GOT entry, and an R_386_32 - relocation for the PLT entry. */ - - htab->srelplt2->size += (sizeof (Elf32_External_Rel) * 2); - } - } - else - { - eh->plt_got.offset = (bfd_vma) -1; - h->plt.offset = (bfd_vma) -1; - h->needs_plt = 0; - } - } - else - { - eh->plt_got.offset = (bfd_vma) -1; - h->plt.offset = (bfd_vma) -1; - h->needs_plt = 0; - } - - eh->tlsdesc_got = (bfd_vma) -1; - - /* If R_386_TLS_{IE_32,IE,GOTIE} symbol is now local to the binary, - make it a R_386_TLS_LE_32 requiring no TLS entry. */ - if (h->got.refcount > 0 - && bfd_link_executable (info) - && h->dynindx == -1 - && (elf_i386_hash_entry(h)->tls_type & GOT_TLS_IE)) - h->got.offset = (bfd_vma) -1; - else if (h->got.refcount > 0) - { - asection *s; - bfd_boolean dyn; - int tls_type = elf_i386_hash_entry(h)->tls_type; - - /* Make sure this symbol is output as a dynamic symbol. - Undefined weak syms won't yet be marked as dynamic. */ - if (h->dynindx == -1 - && !h->forced_local - && !resolved_to_zero - && h->root.type == bfd_link_hash_undefweak) - { - if (! bfd_elf_link_record_dynamic_symbol (info, h)) - return FALSE; - } - - s = htab->elf.sgot; - if (GOT_TLS_GDESC_P (tls_type)) - { - eh->tlsdesc_got = htab->elf.sgotplt->size - - elf_i386_compute_jump_table_size (htab); - htab->elf.sgotplt->size += 8; - h->got.offset = (bfd_vma) -2; - } - if (! GOT_TLS_GDESC_P (tls_type) - || GOT_TLS_GD_P (tls_type)) - { - h->got.offset = s->size; - s->size += 4; - /* R_386_TLS_GD needs 2 consecutive GOT slots. */ - if (GOT_TLS_GD_P (tls_type) || tls_type == GOT_TLS_IE_BOTH) - s->size += 4; - } - dyn = htab->elf.dynamic_sections_created; - /* R_386_TLS_IE_32 needs one dynamic relocation, - R_386_TLS_IE resp. R_386_TLS_GOTIE needs one dynamic relocation, - (but if both R_386_TLS_IE_32 and R_386_TLS_IE is present, we - need two), R_386_TLS_GD needs one if local symbol and two if - global. No dynamic relocation against resolved undefined weak - symbol in executable. */ - if (tls_type == GOT_TLS_IE_BOTH) - htab->elf.srelgot->size += 2 * sizeof (Elf32_External_Rel); - else if ((GOT_TLS_GD_P (tls_type) && h->dynindx == -1) - || (tls_type & GOT_TLS_IE)) - htab->elf.srelgot->size += sizeof (Elf32_External_Rel); - else if (GOT_TLS_GD_P (tls_type)) - htab->elf.srelgot->size += 2 * sizeof (Elf32_External_Rel); - else if (! GOT_TLS_GDESC_P (tls_type) - && ((ELF_ST_VISIBILITY (h->other) == STV_DEFAULT - && !resolved_to_zero) - || h->root.type != bfd_link_hash_undefweak) - && (bfd_link_pic (info) - || WILL_CALL_FINISH_DYNAMIC_SYMBOL (dyn, 0, h))) - htab->elf.srelgot->size += sizeof (Elf32_External_Rel); - if (GOT_TLS_GDESC_P (tls_type)) - htab->elf.srelplt->size += sizeof (Elf32_External_Rel); - } - else - h->got.offset = (bfd_vma) -1; - - if (eh->dyn_relocs == NULL) - return TRUE; - - /* In the shared -Bsymbolic case, discard space allocated for - dynamic pc-relative relocs against symbols which turn out to be - defined in regular objects. For the normal shared case, discard - space for pc-relative relocs that have become local due to symbol - visibility changes. */ - - if (bfd_link_pic (info)) - { - /* The only reloc that uses pc_count is R_386_PC32, which will - appear on a call or on something like ".long foo - .". We - want calls to protected symbols to resolve directly to the - function rather than going via the plt. If people want - function pointer comparisons to work as expected then they - should avoid writing assembly like ".long foo - .". */ - if (SYMBOL_CALLS_LOCAL (info, h)) - { - struct elf_dyn_relocs **pp; - - for (pp = &eh->dyn_relocs; (p = *pp) != NULL; ) - { - p->count -= p->pc_count; - p->pc_count = 0; - if (p->count == 0) - *pp = p->next; - else - pp = &p->next; - } - } - - if (bed->os == is_vxworks) - { - struct elf_dyn_relocs **pp; - for (pp = &eh->dyn_relocs; (p = *pp) != NULL; ) - { - if (strcmp (p->sec->output_section->name, ".tls_vars") == 0) - *pp = p->next; - else - pp = &p->next; - } - } - - /* Also discard relocs on undefined weak syms with non-default - visibility or in PIE. */ - if (eh->dyn_relocs != NULL - && h->root.type == bfd_link_hash_undefweak) - { - /* Undefined weak symbol is never bound locally in shared - library. */ - if (ELF_ST_VISIBILITY (h->other) != STV_DEFAULT - || resolved_to_zero) - { - if (h->non_got_ref) - { - /* Keep dynamic non-GOT/non-PLT relocation so that we - can branch to 0 without PLT. */ - struct elf_dyn_relocs **pp; - - for (pp = &eh->dyn_relocs; (p = *pp) != NULL; ) - if (p->pc_count == 0) - *pp = p->next; - else - { - /* Remove non-R_386_PC32 relocation. */ - p->count = p->pc_count; - pp = &p->next; - } - - if (eh->dyn_relocs != NULL) - { - /* Make sure undefined weak symbols are output - as dynamic symbols in PIEs for dynamic non-GOT - non-PLT reloations. */ - if (! bfd_elf_link_record_dynamic_symbol (info, h)) - return FALSE; - } - } - else - eh->dyn_relocs = NULL; - } - else if (h->dynindx == -1 - && !h->forced_local) - { - if (! bfd_elf_link_record_dynamic_symbol (info, h)) - return FALSE; - } - } - } - else if (ELIMINATE_COPY_RELOCS) - { - /* For the non-shared case, discard space for relocs against - symbols which turn out to need copy relocs or are not - dynamic. Keep dynamic relocations for run-time function - pointer initialization. */ - - if ((!h->non_got_ref - || eh->func_pointer_refcount > 0 - || (h->root.type == bfd_link_hash_undefweak - && !resolved_to_zero)) - && ((h->def_dynamic - && !h->def_regular) - || (htab->elf.dynamic_sections_created - && (h->root.type == bfd_link_hash_undefweak - || h->root.type == bfd_link_hash_undefined)))) - { - /* Make sure this symbol is output as a dynamic symbol. - Undefined weak syms won't yet be marked as dynamic. */ - if (h->dynindx == -1 - && !h->forced_local - && !resolved_to_zero - && h->root.type == bfd_link_hash_undefweak) - { - if (! bfd_elf_link_record_dynamic_symbol (info, h)) - return FALSE; - } - - /* If that succeeded, we know we'll be keeping all the - relocs. */ - if (h->dynindx != -1) - goto keep; - } - - eh->dyn_relocs = NULL; - eh->func_pointer_refcount = 0; - - keep: ; - } - - /* Finally, allocate space. */ - for (p = eh->dyn_relocs; p != NULL; p = p->next) - { - asection *sreloc; - - sreloc = elf_section_data (p->sec)->sreloc; - - BFD_ASSERT (sreloc != NULL); - sreloc->size += p->count * sizeof (Elf32_External_Rel); - } - - return TRUE; -} - -/* Allocate space in .plt, .got and associated reloc sections for - local dynamic relocs. */ - -static bfd_boolean -elf_i386_allocate_local_dynrelocs (void **slot, void *inf) -{ - struct elf_link_hash_entry *h - = (struct elf_link_hash_entry *) *slot; - - if (h->type != STT_GNU_IFUNC - || !h->def_regular - || !h->ref_regular - || !h->forced_local - || h->root.type != bfd_link_hash_defined) - abort (); - - return elf_i386_allocate_dynrelocs (h, inf); -} - -/* Find any dynamic relocs that apply to read-only sections. */ - -static bfd_boolean -elf_i386_readonly_dynrelocs (struct elf_link_hash_entry *h, void *inf) -{ - struct elf_i386_link_hash_entry *eh; - struct elf_dyn_relocs *p; - - /* Skip local IFUNC symbols. */ - if (h->forced_local && h->type == STT_GNU_IFUNC) - return TRUE; - - eh = (struct elf_i386_link_hash_entry *) h; - for (p = eh->dyn_relocs; p != NULL; p = p->next) - { - asection *s = p->sec->output_section; - - if (s != NULL && (s->flags & SEC_READONLY) != 0) - { - struct bfd_link_info *info = (struct bfd_link_info *) inf; - - info->flags |= DF_TEXTREL; - - if ((info->warn_shared_textrel && bfd_link_pic (info)) - || info->error_textrel) - /* xgettext:c-format */ - info->callbacks->einfo (_("%P: %B: warning: relocation against `%s' in readonly section `%A'\n"), - p->sec->owner, h->root.root.string, - p->sec); - - /* Not an error, just cut short the traversal. */ - return FALSE; - } - } - return TRUE; -} - -/* Convert load via the GOT slot to load immediate. */ - -static bfd_boolean -elf_i386_convert_load (bfd *abfd, asection *sec, - struct bfd_link_info *link_info) -{ - struct elf_i386_link_hash_table *htab; - Elf_Internal_Shdr *symtab_hdr; - Elf_Internal_Rela *internal_relocs; - Elf_Internal_Rela *irel, *irelend; - bfd_byte *contents; - bfd_boolean changed; - bfd_signed_vma *local_got_refcounts; - - /* Don't even try to convert non-ELF outputs. */ - if (!is_elf_hash_table (link_info->hash)) - return FALSE; - - /* Nothing to do if there is no need or no output. */ - if ((sec->flags & (SEC_CODE | SEC_RELOC)) != (SEC_CODE | SEC_RELOC) - || sec->need_convert_load == 0 - || bfd_is_abs_section (sec->output_section)) - return TRUE; - - symtab_hdr = &elf_tdata (abfd)->symtab_hdr; - - /* Load the relocations for this section. */ - internal_relocs = (_bfd_elf_link_read_relocs - (abfd, sec, NULL, (Elf_Internal_Rela *) NULL, - link_info->keep_memory)); - if (internal_relocs == NULL) - return FALSE; - - changed = FALSE; - htab = elf_i386_hash_table (link_info); - local_got_refcounts = elf_local_got_refcounts (abfd); - - /* Get the section contents. */ - if (elf_section_data (sec)->this_hdr.contents != NULL) - contents = elf_section_data (sec)->this_hdr.contents; - else - { - if (!bfd_malloc_and_get_section (abfd, sec, &contents)) - goto error_return; - } - - irelend = internal_relocs + sec->reloc_count; - for (irel = internal_relocs; irel < irelend; irel++) - { - unsigned int r_type = ELF32_R_TYPE (irel->r_info); - unsigned int r_symndx; - struct elf_link_hash_entry *h; - bfd_boolean converted; - - /* Don't convert R_386_GOT32 since we can't tell if it is applied - to "mov $foo@GOT, %reg" which isn't a load via GOT. */ - if (r_type != R_386_GOT32X) - continue; - - r_symndx = ELF32_R_SYM (irel->r_info); - if (r_symndx < symtab_hdr->sh_info) - h = elf_i386_get_local_sym_hash (htab, sec->owner, - (const Elf_Internal_Rela *) irel, - FALSE); - else - { - h = elf_sym_hashes (abfd)[r_symndx - symtab_hdr->sh_info]; - while (h->root.type == bfd_link_hash_indirect - || h->root.type == bfd_link_hash_warning) - h = (struct elf_link_hash_entry *) h->root.u.i.link; - } - - /* STT_GNU_IFUNC must keep GOT32 relocations. */ - if (h != NULL && h->type == STT_GNU_IFUNC) - continue; - - converted = FALSE; - if (!elf_i386_convert_load_reloc (abfd, symtab_hdr, contents, - irel, h, &converted, link_info)) - goto error_return; - - if (converted) - { - changed = converted; - if (h) - { - if (h->got.refcount > 0) - h->got.refcount -= 1; - } - else - { - if (local_got_refcounts != NULL - && local_got_refcounts[r_symndx] > 0) - local_got_refcounts[r_symndx] -= 1; - } - } - } - - if (contents != NULL - && elf_section_data (sec)->this_hdr.contents != contents) - { - if (!changed && !link_info->keep_memory) - free (contents); - else - { - /* Cache the section contents for elf_link_input_bfd. */ - elf_section_data (sec)->this_hdr.contents = contents; - } - } - - if (elf_section_data (sec)->relocs != internal_relocs) - { - if (!changed) - free (internal_relocs); - else - elf_section_data (sec)->relocs = internal_relocs; - } - - return TRUE; - - error_return: - if (contents != NULL - && elf_section_data (sec)->this_hdr.contents != contents) - free (contents); - if (internal_relocs != NULL - && elf_section_data (sec)->relocs != internal_relocs) - free (internal_relocs); - return FALSE; -} - -/* Set the sizes of the dynamic sections. */ - -static bfd_boolean -elf_i386_size_dynamic_sections (bfd *output_bfd, struct bfd_link_info *info) -{ - struct elf_i386_link_hash_table *htab; - bfd *dynobj; - asection *s; - bfd_boolean relocs; - bfd *ibfd; - - htab = elf_i386_hash_table (info); - if (htab == NULL) - return FALSE; - dynobj = htab->elf.dynobj; - if (dynobj == NULL) - abort (); - - /* Set up .got offsets for local syms, and space for local dynamic - relocs. */ - for (ibfd = info->input_bfds; ibfd != NULL; ibfd = ibfd->link.next) - { - bfd_signed_vma *local_got; - bfd_signed_vma *end_local_got; - char *local_tls_type; - bfd_vma *local_tlsdesc_gotent; - bfd_size_type locsymcount; - Elf_Internal_Shdr *symtab_hdr; - asection *srel; - - if (! is_i386_elf (ibfd)) - continue; - - for (s = ibfd->sections; s != NULL; s = s->next) - { - struct elf_dyn_relocs *p; - - if (!elf_i386_convert_load (ibfd, s, info)) - return FALSE; - - for (p = ((struct elf_dyn_relocs *) - elf_section_data (s)->local_dynrel); - p != NULL; - p = p->next) - { - if (!bfd_is_abs_section (p->sec) - && bfd_is_abs_section (p->sec->output_section)) - { - /* Input section has been discarded, either because - it is a copy of a linkonce section or due to - linker script /DISCARD/, so we'll be discarding - the relocs too. */ - } - else if ((get_elf_i386_backend_data (output_bfd)->os - == is_vxworks) - && strcmp (p->sec->output_section->name, - ".tls_vars") == 0) - { - /* Relocations in vxworks .tls_vars sections are - handled specially by the loader. */ - } - else if (p->count != 0) - { - srel = elf_section_data (p->sec)->sreloc; - srel->size += p->count * sizeof (Elf32_External_Rel); - if ((p->sec->output_section->flags & SEC_READONLY) != 0 - && (info->flags & DF_TEXTREL) == 0) - { - info->flags |= DF_TEXTREL; - if ((info->warn_shared_textrel && bfd_link_pic (info)) - || info->error_textrel) - /* xgettext:c-format */ - info->callbacks->einfo (_("%P: %B: warning: relocation in readonly section `%A'\n"), - p->sec->owner, p->sec); - } - } - } - } - - local_got = elf_local_got_refcounts (ibfd); - if (!local_got) - continue; - - symtab_hdr = &elf_symtab_hdr (ibfd); - locsymcount = symtab_hdr->sh_info; - end_local_got = local_got + locsymcount; - local_tls_type = elf_i386_local_got_tls_type (ibfd); - local_tlsdesc_gotent = elf_i386_local_tlsdesc_gotent (ibfd); - s = htab->elf.sgot; - srel = htab->elf.srelgot; - for (; local_got < end_local_got; - ++local_got, ++local_tls_type, ++local_tlsdesc_gotent) - { - *local_tlsdesc_gotent = (bfd_vma) -1; - if (*local_got > 0) - { - if (GOT_TLS_GDESC_P (*local_tls_type)) - { - *local_tlsdesc_gotent = htab->elf.sgotplt->size - - elf_i386_compute_jump_table_size (htab); - htab->elf.sgotplt->size += 8; - *local_got = (bfd_vma) -2; - } - if (! GOT_TLS_GDESC_P (*local_tls_type) - || GOT_TLS_GD_P (*local_tls_type)) - { - *local_got = s->size; - s->size += 4; - if (GOT_TLS_GD_P (*local_tls_type) - || *local_tls_type == GOT_TLS_IE_BOTH) - s->size += 4; - } - if (bfd_link_pic (info) - || GOT_TLS_GD_ANY_P (*local_tls_type) - || (*local_tls_type & GOT_TLS_IE)) - { - if (*local_tls_type == GOT_TLS_IE_BOTH) - srel->size += 2 * sizeof (Elf32_External_Rel); - else if (GOT_TLS_GD_P (*local_tls_type) - || ! GOT_TLS_GDESC_P (*local_tls_type)) - srel->size += sizeof (Elf32_External_Rel); - if (GOT_TLS_GDESC_P (*local_tls_type)) - htab->elf.srelplt->size += sizeof (Elf32_External_Rel); - } - } - else - *local_got = (bfd_vma) -1; - } - } - - if (htab->tls_ldm_got.refcount > 0) - { - /* Allocate 2 got entries and 1 dynamic reloc for R_386_TLS_LDM - relocs. */ - htab->tls_ldm_got.offset = htab->elf.sgot->size; - htab->elf.sgot->size += 8; - htab->elf.srelgot->size += sizeof (Elf32_External_Rel); - } - else - htab->tls_ldm_got.offset = -1; - - /* Allocate global sym .plt and .got entries, and space for global - sym dynamic relocs. */ - elf_link_hash_traverse (&htab->elf, elf_i386_allocate_dynrelocs, info); - - /* Allocate .plt and .got entries, and space for local symbols. */ - htab_traverse (htab->loc_hash_table, - elf_i386_allocate_local_dynrelocs, - info); - - /* For every jump slot reserved in the sgotplt, reloc_count is - incremented. However, when we reserve space for TLS descriptors, - it's not incremented, so in order to compute the space reserved - for them, it suffices to multiply the reloc count by the jump - slot size. - - PR ld/13302: We start next_irelative_index at the end of .rela.plt - so that R_386_IRELATIVE entries come last. */ - if (htab->elf.srelplt) - { - htab->next_tls_desc_index = htab->elf.srelplt->reloc_count; - htab->sgotplt_jump_table_size = htab->next_tls_desc_index * 4; - htab->next_irelative_index = htab->elf.srelplt->reloc_count - 1; - } - else if (htab->elf.irelplt) - htab->next_irelative_index = htab->elf.irelplt->reloc_count - 1; - - - if (htab->elf.sgotplt) - { - /* Don't allocate .got.plt section if there are no GOT nor PLT - entries and there is no reference to _GLOBAL_OFFSET_TABLE_. */ - if ((htab->elf.hgot == NULL - || !htab->elf.hgot->ref_regular_nonweak) - && (htab->elf.sgotplt->size - == get_elf_backend_data (output_bfd)->got_header_size) - && (htab->elf.splt == NULL - || htab->elf.splt->size == 0) - && (htab->elf.sgot == NULL - || htab->elf.sgot->size == 0) - && (htab->elf.iplt == NULL - || htab->elf.iplt->size == 0) - && (htab->elf.igotplt == NULL - || htab->elf.igotplt->size == 0)) - htab->elf.sgotplt->size = 0; - } - - if (_bfd_elf_eh_frame_present (info)) - { - if (htab->plt_eh_frame != NULL - && htab->elf.splt != NULL - && htab->elf.splt->size != 0 - && !bfd_is_abs_section (htab->elf.splt->output_section)) - htab->plt_eh_frame->size = htab->plt.eh_frame_plt_size; - - if (htab->plt_got_eh_frame != NULL - && htab->plt_got != NULL - && htab->plt_got->size != 0 - && !bfd_is_abs_section (htab->plt_got->output_section)) - htab->plt_got_eh_frame->size - = htab->non_lazy_plt->eh_frame_plt_size; - - /* Unwind info for the second PLT and .plt.got sections are - identical. */ - if (htab->plt_second_eh_frame != NULL - && htab->plt_second != NULL - && htab->plt_second->size != 0 - && !bfd_is_abs_section (htab->plt_second->output_section)) - htab->plt_second_eh_frame->size - = htab->non_lazy_plt->eh_frame_plt_size; - } - - /* We now have determined the sizes of the various dynamic sections. - Allocate memory for them. */ - relocs = FALSE; - for (s = dynobj->sections; s != NULL; s = s->next) - { - bfd_boolean strip_section = TRUE; - - if ((s->flags & SEC_LINKER_CREATED) == 0) - continue; - - if (s == htab->elf.splt - || s == htab->elf.sgot) - { - /* Strip this section if we don't need it; see the - comment below. */ - /* We'd like to strip these sections if they aren't needed, but if - we've exported dynamic symbols from them we must leave them. - It's too late to tell BFD to get rid of the symbols. */ - - if (htab->elf.hplt != NULL) - strip_section = FALSE; - } - else if (s == htab->elf.sgotplt - || s == htab->elf.iplt - || s == htab->elf.igotplt - || s == htab->plt_second - || s == htab->plt_got - || s == htab->plt_eh_frame - || s == htab->plt_got_eh_frame - || s == htab->plt_second_eh_frame - || s == htab->elf.sdynbss - || s == htab->elf.sdynrelro) - { - /* Strip these too. */ - } - else if (CONST_STRNEQ (bfd_get_section_name (dynobj, s), ".rel")) - { - if (s->size != 0 - && s != htab->elf.srelplt - && s != htab->srelplt2) - relocs = TRUE; - - /* We use the reloc_count field as a counter if we need - to copy relocs into the output file. */ - s->reloc_count = 0; - } - else - { - /* It's not one of our sections, so don't allocate space. */ - continue; - } - - if (s->size == 0) - { - /* If we don't need this section, strip it from the - output file. This is mostly to handle .rel.bss and - .rel.plt. We must create both sections in - create_dynamic_sections, because they must be created - before the linker maps input sections to output - sections. The linker does that before - adjust_dynamic_symbol is called, and it is that - function which decides whether anything needs to go - into these sections. */ - if (strip_section) - s->flags |= SEC_EXCLUDE; - continue; - } - - if ((s->flags & SEC_HAS_CONTENTS) == 0) - continue; - - /* Allocate memory for the section contents. We use bfd_zalloc - here in case unused entries are not reclaimed before the - section's contents are written out. This should not happen, - but this way if it does, we get a R_386_NONE reloc instead - of garbage. */ - s->contents = (unsigned char *) bfd_zalloc (dynobj, s->size); - if (s->contents == NULL) - return FALSE; - } - - if (htab->plt_eh_frame != NULL - && htab->plt_eh_frame->contents != NULL) - { - memcpy (htab->plt_eh_frame->contents, - htab->plt.eh_frame_plt, - htab->plt_eh_frame->size); - bfd_put_32 (dynobj, htab->elf.splt->size, - htab->plt_eh_frame->contents + PLT_FDE_LEN_OFFSET); - } - - if (htab->plt_got_eh_frame != NULL - && htab->plt_got_eh_frame->contents != NULL) - { - memcpy (htab->plt_got_eh_frame->contents, - htab->non_lazy_plt->eh_frame_plt, - htab->plt_got_eh_frame->size); - bfd_put_32 (dynobj, htab->plt_got->size, - (htab->plt_got_eh_frame->contents - + PLT_FDE_LEN_OFFSET)); - } - - if (htab->plt_second_eh_frame != NULL - && htab->plt_second_eh_frame->contents != NULL) - { - memcpy (htab->plt_second_eh_frame->contents, - htab->non_lazy_plt->eh_frame_plt, - htab->plt_second_eh_frame->size); - bfd_put_32 (dynobj, htab->plt_second->size, - (htab->plt_second_eh_frame->contents - + PLT_FDE_LEN_OFFSET)); - } - - if (htab->elf.dynamic_sections_created) - { - /* Add some entries to the .dynamic section. We fill in the - values later, in elf_i386_finish_dynamic_sections, but we - must add the entries now so that we get the correct size for - the .dynamic section. The DT_DEBUG entry is filled in by the - dynamic linker and used by the debugger. */ -#define add_dynamic_entry(TAG, VAL) \ - _bfd_elf_add_dynamic_entry (info, TAG, VAL) - - if (bfd_link_executable (info)) - { - if (!add_dynamic_entry (DT_DEBUG, 0)) - return FALSE; - } - - if (htab->elf.splt->size != 0) - { - /* DT_PLTGOT is used by prelink even if there is no PLT - relocation. */ - if (!add_dynamic_entry (DT_PLTGOT, 0)) - return FALSE; - } - - if (htab->elf.srelplt->size != 0) - { - if (!add_dynamic_entry (DT_PLTRELSZ, 0) - || !add_dynamic_entry (DT_PLTREL, DT_REL) - || !add_dynamic_entry (DT_JMPREL, 0)) - return FALSE; - } - - if (relocs) - { - if (!add_dynamic_entry (DT_REL, 0) - || !add_dynamic_entry (DT_RELSZ, 0) - || !add_dynamic_entry (DT_RELENT, sizeof (Elf32_External_Rel))) - return FALSE; - - /* If any dynamic relocs apply to a read-only section, - then we need a DT_TEXTREL entry. */ - if ((info->flags & DF_TEXTREL) == 0) - elf_link_hash_traverse (&htab->elf, - elf_i386_readonly_dynrelocs, info); - - if ((info->flags & DF_TEXTREL) != 0) - { - if (htab->readonly_dynrelocs_against_ifunc) - { - info->callbacks->einfo - (_("%P%X: read-only segment has dynamic IFUNC relocations; recompile with -fPIC\n")); - bfd_set_error (bfd_error_bad_value); - return FALSE; - } - - if (!add_dynamic_entry (DT_TEXTREL, 0)) - return FALSE; - } - } - if (get_elf_i386_backend_data (output_bfd)->os == is_vxworks - && !elf_vxworks_add_dynamic_entries (output_bfd, info)) - return FALSE; - } -#undef add_dynamic_entry - - return TRUE; -} - -static bfd_boolean -elf_i386_always_size_sections (bfd *output_bfd, - struct bfd_link_info *info) -{ - asection *tls_sec = elf_hash_table (info)->tls_sec; - - if (tls_sec) - { - struct elf_link_hash_entry *tlsbase; - - tlsbase = elf_link_hash_lookup (elf_hash_table (info), - "_TLS_MODULE_BASE_", - FALSE, FALSE, FALSE); - - if (tlsbase && tlsbase->type == STT_TLS) - { - struct elf_i386_link_hash_table *htab; - struct bfd_link_hash_entry *bh = NULL; - const struct elf_backend_data *bed - = get_elf_backend_data (output_bfd); - - htab = elf_i386_hash_table (info); - if (htab == NULL) - return FALSE; - - if (!(_bfd_generic_link_add_one_symbol - (info, output_bfd, "_TLS_MODULE_BASE_", BSF_LOCAL, - tls_sec, 0, NULL, FALSE, - bed->collect, &bh))) - return FALSE; - - htab->tls_module_base = bh; - - tlsbase = (struct elf_link_hash_entry *)bh; - tlsbase->def_regular = 1; - tlsbase->other = STV_HIDDEN; - tlsbase->root.linker_def = 1; - (*bed->elf_backend_hide_symbol) (info, tlsbase, TRUE); - } - } - - return TRUE; -} - /* Set the correct type for an x86 ELF section. We do this by the section name, which is a hack, but ought to work. */ @@ -3798,44 +2001,6 @@ elf_i386_fake_sections (bfd *abfd ATTRIBUTE_UNUSED, return TRUE; } -/* _TLS_MODULE_BASE_ needs to be treated especially when linking - executables. Rather than setting it to the beginning of the TLS - section, we have to set it to the end. This function may be called - multiple times, it is idempotent. */ - -static void -elf_i386_set_tls_module_base (struct bfd_link_info *info) -{ - struct elf_i386_link_hash_table *htab; - struct bfd_link_hash_entry *base; - - if (!bfd_link_executable (info)) - return; - - htab = elf_i386_hash_table (info); - if (htab == NULL) - return; - - base = htab->tls_module_base; - if (base == NULL) - return; - - base->u.def.value = htab->elf.tls_size; -} - -/* Return the base VMA address which should be subtracted from real addresses - when resolving @dtpoff relocation. - This is PT_TLS segment p_vaddr. */ - -static bfd_vma -elf_i386_dtpoff_base (struct bfd_link_info *info) -{ - /* If tls_sec is NULL, we should have signalled an error already. */ - if (elf_hash_table (info)->tls_sec == NULL) - return 0; - return elf_hash_table (info)->tls_sec->vma; -} - /* Return the relocation value for @tpoff relocation if STT_TLS virtual address is ADDRESS. */ @@ -3867,7 +2032,7 @@ elf_i386_relocate_section (bfd *output_bfd, Elf_Internal_Sym *local_syms, asection **local_sections) { - struct elf_i386_link_hash_table *htab; + struct elf_x86_link_hash_table *htab; Elf_Internal_Shdr *symtab_hdr; struct elf_link_hash_entry **sym_hashes; bfd_vma *local_got_offsets; @@ -3878,28 +2043,28 @@ elf_i386_relocate_section (bfd *output_bfd, bfd_boolean is_vxworks_tls; unsigned plt_entry_size; - BFD_ASSERT (is_i386_elf (input_bfd)); - /* Skip if check_relocs failed. */ if (input_section->check_relocs_failed) return FALSE; - htab = elf_i386_hash_table (info); + htab = elf_x86_hash_table (info, I386_ELF_DATA); if (htab == NULL) return FALSE; + + BFD_ASSERT (is_x86_elf (input_bfd, htab)); + symtab_hdr = &elf_symtab_hdr (input_bfd); sym_hashes = elf_sym_hashes (input_bfd); local_got_offsets = elf_local_got_offsets (input_bfd); - local_tlsdesc_gotents = elf_i386_local_tlsdesc_gotent (input_bfd); + local_tlsdesc_gotents = elf_x86_local_tlsdesc_gotent (input_bfd); /* We have to handle relocations in vxworks .tls_vars sections specially, because the dynamic loader is 'weird'. */ - is_vxworks_tls = ((get_elf_i386_backend_data (output_bfd)->os - == is_vxworks) + is_vxworks_tls = (htab->is_vxworks && bfd_link_pic (info) && !strcmp (input_section->output_section->name, ".tls_vars")); - elf_i386_set_tls_module_base (info); + _bfd_x86_elf_set_tls_module_base (info); plt_entry_size = htab->plt.plt_entry_size; @@ -3907,11 +2072,11 @@ elf_i386_relocate_section (bfd *output_bfd, relend = relocs + input_section->reloc_count; for (; rel < relend; wrel++, rel++) { - unsigned int r_type; + unsigned int r_type, r_type_tls; reloc_howto_type *howto; unsigned long r_symndx; struct elf_link_hash_entry *h; - struct elf_i386_link_hash_entry *eh; + struct elf_x86_link_hash_entry *eh; Elf_Internal_Sym *sym; asection *sec; bfd_vma off, offplt, plt_offset; @@ -3939,14 +2104,8 @@ elf_i386_relocate_section (bfd *output_bfd, >= R_386_ext - R_386_standard) && ((indx = r_type - R_386_tls_offset) - R_386_ext >= R_386_ext2 - R_386_ext)) - { - _bfd_error_handler - /* xgettext:c-format */ - (_("%B: unrecognized relocation (0x%x) in section `%A'"), - input_bfd, r_type, input_section); - bfd_set_error (bfd_error_bad_value); - return FALSE; - } + return _bfd_unrecognized_reloc (input_bfd, input_section, r_type); + howto = elf_howto_table + indx; r_symndx = ELF32_R_SYM (rel->r_info); @@ -4036,8 +2195,8 @@ elf_i386_relocate_section (bfd *output_bfd, && ELF32_ST_TYPE (sym->st_info) == STT_GNU_IFUNC) { /* Relocate against local STT_GNU_IFUNC symbol. */ - h = elf_i386_get_local_sym_hash (htab, input_bfd, rel, - FALSE); + h = _bfd_elf_x86_get_local_sym_hash (htab, input_bfd, rel, + FALSE); if (h == NULL) abort (); @@ -4083,7 +2242,7 @@ elf_i386_relocate_section (bfd *output_bfd, continue; } - eh = (struct elf_i386_link_hash_entry *) h; + eh = (struct elf_x86_link_hash_entry *) h; /* Since STT_GNU_IFUNC symbol must go through PLT, we handle it here if it is defined in a non-shared object. */ @@ -4319,9 +2478,7 @@ do_ifunc_pointer: } resolved_to_zero = (eh != NULL - && UNDEFINED_WEAK_RESOLVED_TO_ZERO (info, - eh->has_got_reloc, - eh)); + && UNDEFINED_WEAK_RESOLVED_TO_ZERO (info, eh)); switch (r_type) { @@ -4402,7 +2559,7 @@ r_386_got32: bfd_link_pic (info), h) || (bfd_link_pic (info) - && SYMBOL_REFERENCES_LOCAL (info, h)) + && SYMBOL_REFERENCES_LOCAL_P (info, h)) || (ELF_ST_VISIBILITY (h->other) && h->root.type == bfd_link_hash_undefweak)) { @@ -4561,7 +2718,7 @@ disallow_got32: bfd_set_error (bfd_error_bad_value); return FALSE; } - else if (!SYMBOL_REFERENCES_LOCAL (info, h) + else if (!SYMBOL_REFERENCES_LOCAL_P (info, h) && (h->type == STT_FUNC || h->type == STT_OBJECT) && ELF_ST_VISIBILITY (h->other) == STV_PROTECTED) @@ -4753,23 +2910,24 @@ disallow_got32: case R_386_TLS_GOTIE: tls_type = GOT_UNKNOWN; if (h == NULL && local_got_offsets) - tls_type = elf_i386_local_got_tls_type (input_bfd) [r_symndx]; + tls_type = elf_x86_local_got_tls_type (input_bfd) [r_symndx]; else if (h != NULL) - tls_type = elf_i386_hash_entry(h)->tls_type; + tls_type = elf_x86_hash_entry(h)->tls_type; if (tls_type == GOT_TLS_IE) tls_type = GOT_TLS_IE_NEG; + r_type_tls = r_type; if (! elf_i386_tls_transition (info, input_bfd, input_section, contents, symtab_hdr, sym_hashes, - &r_type, tls_type, rel, + &r_type_tls, tls_type, rel, relend, h, r_symndx, TRUE)) return FALSE; - if (r_type == R_386_TLS_LE_32) + if (r_type_tls == R_386_TLS_LE_32) { BFD_ASSERT (! unresolved_reloc); - if (ELF32_R_TYPE (rel->r_info) == R_386_TLS_GD) + if (r_type == R_386_TLS_GD) { unsigned int type; bfd_vma roff; @@ -4812,7 +2970,7 @@ disallow_got32: wrel++; continue; } - else if (ELF32_R_TYPE (rel->r_info) == R_386_TLS_GOTDESC) + else if (r_type == R_386_TLS_GOTDESC) { /* GDesc -> LE transition. It's originally something like: @@ -4837,7 +2995,7 @@ disallow_got32: contents + roff); continue; } - else if (ELF32_R_TYPE (rel->r_info) == R_386_TLS_DESC_CALL) + else if (r_type == R_386_TLS_DESC_CALL) { /* GDesc -> LE transition. It's originally: @@ -4852,7 +3010,7 @@ disallow_got32: bfd_put_8 (output_bfd, 0x90, contents + roff + 1); continue; } - else if (ELF32_R_TYPE (rel->r_info) == R_386_TLS_IE) + else if (r_type == R_386_TLS_IE) { unsigned int val; @@ -4946,7 +3104,7 @@ disallow_got32: } else BFD_FAIL (); - if (ELF32_R_TYPE (rel->r_info) == R_386_TLS_GOTIE) + if (r_type == R_386_TLS_GOTIE) bfd_put_32 (output_bfd, -elf_i386_tpoff (info, relocation), contents + rel->r_offset); else @@ -4962,7 +3120,7 @@ disallow_got32: if (h != NULL) { off = h->got.offset; - offplt = elf_i386_hash_entry (h)->tlsdesc_got; + offplt = elf_x86_hash_entry (h)->tlsdesc_got; } else { @@ -5007,7 +3165,7 @@ disallow_got32: { BFD_ASSERT (! unresolved_reloc); bfd_put_32 (output_bfd, - relocation - elf_i386_dtpoff_base (info), + relocation - _bfd_x86_elf_dtpoff_base (info), htab->elf.sgotplt->contents + offplt + htab->sgotplt_jump_table_size + 4); } @@ -5035,11 +3193,11 @@ disallow_got32: if (dr_type == R_386_TLS_TPOFF && indx == 0) bfd_put_32 (output_bfd, - relocation - elf_i386_dtpoff_base (info), + relocation - _bfd_x86_elf_dtpoff_base (info), htab->elf.sgot->contents + off); else if (dr_type == R_386_TLS_TPOFF32 && indx == 0) bfd_put_32 (output_bfd, - elf_i386_dtpoff_base (info) - relocation, + _bfd_x86_elf_dtpoff_base (info) - relocation, htab->elf.sgot->contents + off); else if (dr_type != R_386_TLS_DESC) bfd_put_32 (output_bfd, 0, @@ -5054,7 +3212,7 @@ disallow_got32: { BFD_ASSERT (! unresolved_reloc); bfd_put_32 (output_bfd, - relocation - elf_i386_dtpoff_base (info), + relocation - _bfd_x86_elf_dtpoff_base (info), htab->elf.sgot->contents + off + 4); } else @@ -5071,7 +3229,7 @@ disallow_got32: { bfd_put_32 (output_bfd, (indx == 0 - ? relocation - elf_i386_dtpoff_base (info) + ? relocation - _bfd_x86_elf_dtpoff_base (info) : 0), htab->elf.sgot->contents + off + 4); outrel.r_info = ELF32_R_INFO (indx, R_386_TLS_TPOFF); @@ -5089,13 +3247,13 @@ disallow_got32: if (off >= (bfd_vma) -2 && ! GOT_TLS_GDESC_P (tls_type)) abort (); - if (r_type == R_386_TLS_GOTDESC - || r_type == R_386_TLS_DESC_CALL) + if (r_type_tls == R_386_TLS_GOTDESC + || r_type_tls == R_386_TLS_DESC_CALL) { relocation = htab->sgotplt_jump_table_size + offplt; unresolved_reloc = FALSE; } - else if (r_type == ELF32_R_TYPE (rel->r_info)) + else if (r_type_tls == r_type) { bfd_vma g_o_t = htab->elf.sgotplt->output_section->vma + htab->elf.sgotplt->output_offset; @@ -5108,7 +3266,7 @@ disallow_got32: relocation += g_o_t; unresolved_reloc = FALSE; } - else if (ELF32_R_TYPE (rel->r_info) == R_386_TLS_GD) + else if (r_type == R_386_TLS_GD) { unsigned int val, type; bfd_vma roff; @@ -5164,7 +3322,7 @@ disallow_got32: wrel++; continue; } - else if (ELF32_R_TYPE (rel->r_info) == R_386_TLS_GOTDESC) + else if (r_type == R_386_TLS_GOTDESC) { /* GDesc -> IE transition. It's originally something like: @@ -5203,7 +3361,7 @@ disallow_got32: contents + roff); continue; } - else if (ELF32_R_TYPE (rel->r_info) == R_386_TLS_DESC_CALL) + else if (r_type == R_386_TLS_DESC_CALL) { /* GDesc -> IE transition. It's originally: @@ -5282,7 +3440,7 @@ disallow_got32: if (htab->elf.sgot == NULL) abort (); - off = htab->tls_ldm_got.offset; + off = htab->tls_ld_or_ldm_got.offset; if (off & 1) off &= ~1; else @@ -5301,7 +3459,7 @@ disallow_got32: htab->elf.sgot->contents + off + 4); outrel.r_info = ELF32_R_INFO (0, R_386_TLS_DTPMOD32); elf_append_rel (output_bfd, htab->elf.srelgot, &outrel); - htab->tls_ldm_got.offset |= 1; + htab->tls_ld_or_ldm_got.offset |= 1; } relocation = htab->elf.sgot->output_section->vma + htab->elf.sgot->output_offset + off @@ -5313,7 +3471,7 @@ disallow_got32: case R_386_TLS_LDO_32: if (!bfd_link_executable (info) || (input_section->flags & SEC_CODE) == 0) - relocation -= elf_i386_dtpoff_base (info); + relocation -= _bfd_x86_elf_dtpoff_base (info); else /* When converting LDO to LE, we must negate. */ relocation = -elf_i386_tpoff (info, relocation); @@ -5344,9 +3502,9 @@ disallow_got32: if (indx) continue; else if (r_type == R_386_TLS_LE_32) - relocation = elf_i386_dtpoff_base (info) - relocation; + relocation = _bfd_x86_elf_dtpoff_base (info) - relocation; else - relocation -= elf_i386_dtpoff_base (info); + relocation -= _bfd_x86_elf_dtpoff_base (info); } else if (r_type == R_386_TLS_LE_32) relocation = elf_i386_tpoff (info, relocation); @@ -5369,10 +3527,10 @@ disallow_got32: { _bfd_error_handler /* xgettext:c-format */ - (_("%B(%A+0x%lx): unresolvable %s relocation against symbol `%s'"), + (_("%B(%A+%#Lx): unresolvable %s relocation against symbol `%s'"), input_bfd, input_section, - (long) rel->r_offset, + rel->r_offset, howto->name, h->root.root.string); return FALSE; @@ -5409,9 +3567,9 @@ check_relocation_error: { _bfd_error_handler /* xgettext:c-format */ - (_("%B(%A+0x%lx): reloc against `%s': error %d"), + (_("%B(%A+%#Lx): reloc against `%s': error %d"), input_bfd, input_section, - (long) rel->r_offset, name, (int) r); + rel->r_offset, name, (int) r); return FALSE; } } @@ -5452,33 +3610,29 @@ elf_i386_finish_dynamic_symbol (bfd *output_bfd, struct elf_link_hash_entry *h, Elf_Internal_Sym *sym) { - struct elf_i386_link_hash_table *htab; + struct elf_x86_link_hash_table *htab; unsigned plt_entry_size; - const struct elf_i386_backend_data *abed; - struct elf_i386_link_hash_entry *eh; + struct elf_x86_link_hash_entry *eh; bfd_boolean local_undefweak; bfd_boolean use_plt_second; - htab = elf_i386_hash_table (info); + htab = elf_x86_hash_table (info, I386_ELF_DATA); if (htab == NULL) return FALSE; - abed = get_elf_i386_backend_data (output_bfd); plt_entry_size = htab->plt.plt_entry_size; /* Use the second PLT section only if there is .plt section. */ use_plt_second = htab->elf.splt != NULL && htab->plt_second != NULL; - eh = (struct elf_i386_link_hash_entry *) h; + eh = (struct elf_x86_link_hash_entry *) h; if (eh->no_finish_dynamic_symbol) abort (); /* We keep PLT/GOT entries without dynamic PLT/GOT relocations for resolved undefined weak symbols in executable so that their references have value 0 at run-time. */ - local_undefweak = UNDEFINED_WEAK_RESOLVED_TO_ZERO (info, - eh->has_got_reloc, - eh); + local_undefweak = UNDEFINED_WEAK_RESOLVED_TO_ZERO (info, eh); if (h->plt.offset != (bfd_vma) -1) { @@ -5572,7 +3726,7 @@ elf_i386_finish_dynamic_symbol (bfd *output_bfd, resolved_plt->contents + plt_offset + htab->plt.plt_got_offset); - if (abed->os == is_vxworks) + if (htab->is_vxworks) { int s, k, reloc_index; @@ -5742,8 +3896,8 @@ elf_i386_finish_dynamic_symbol (bfd *output_bfd, /* Don't generate dynamic GOT relocation against undefined weak symbol in executable. */ if (h->got.offset != (bfd_vma) -1 - && ! GOT_TLS_GD_ANY_P (elf_i386_hash_entry(h)->tls_type) - && (elf_i386_hash_entry(h)->tls_type & GOT_TLS_IE) == 0 + && ! GOT_TLS_GD_ANY_P (elf_x86_hash_entry(h)->tls_type) + && (elf_x86_hash_entry(h)->tls_type & GOT_TLS_IE) == 0 && !local_undefweak) { Elf_Internal_Rela rel; @@ -5776,7 +3930,7 @@ elf_i386_finish_dynamic_symbol (bfd *output_bfd, in static executable. */ relgot = htab->elf.irelplt; } - if (SYMBOL_REFERENCES_LOCAL (info, h)) + if (SYMBOL_REFERENCES_LOCAL_P (info, h)) { info->callbacks->minfo (_("Local IFUNC function `%s' in %B\n"), h->root.root.string, @@ -5826,7 +3980,7 @@ elf_i386_finish_dynamic_symbol (bfd *output_bfd, } } else if (bfd_link_pic (info) - && SYMBOL_REFERENCES_LOCAL (info, h)) + && SYMBOL_REFERENCES_LOCAL_P (info, h)) { BFD_ASSERT((h->got.offset & 1) != 0); rel.r_info = ELF32_R_INFO (0, R_386_RELATIVE); @@ -5902,7 +4056,7 @@ elf_i386_pie_finish_undefweak_symbol (struct bfd_hash_entry *bh, return TRUE; return elf_i386_finish_dynamic_symbol (info->output_bfd, - info, h, NULL); + info, h, NULL); } /* Used to decide how to sort relocs in an optimal manner for the @@ -5958,12 +4112,12 @@ static bfd_boolean elf_i386_finish_dynamic_sections (bfd *output_bfd, struct bfd_link_info *info) { - struct elf_i386_link_hash_table *htab; + struct elf_x86_link_hash_table *htab; bfd *dynobj; asection *sdyn; const struct elf_i386_backend_data *abed; - htab = elf_i386_hash_table (info); + htab = elf_x86_hash_table (info, I386_ELF_DATA); if (htab == NULL) return FALSE; @@ -5990,7 +4144,7 @@ elf_i386_finish_dynamic_sections (bfd *output_bfd, switch (dyn.d_tag) { default: - if (abed->os == is_vxworks + if (htab->is_vxworks && elf_vxworks_finish_dynamic_entry (output_bfd, &dyn)) break; continue; @@ -6045,12 +4199,13 @@ elf_i386_finish_dynamic_sections (bfd *output_bfd, htab->elf.splt->contents + htab->lazy_plt->plt0_got2_offset); - if (abed->os == is_vxworks) + if (htab->is_vxworks) { Elf_Internal_Rela rel; int num_plts = (htab->elf.splt->size / htab->plt.plt_entry_size) - 1; unsigned char *p; + asection *srelplt2 = htab->srelplt2; /* Generate a relocation for _GLOBAL_OFFSET_TABLE_ + 4. On IA32 we use REL relocations so the @@ -6061,7 +4216,7 @@ elf_i386_finish_dynamic_sections (bfd *output_bfd, rel.r_info = ELF32_R_INFO (htab->elf.hgot->indx, R_386_32); bfd_elf32_swap_reloc_out (output_bfd, &rel, - htab->srelplt2->contents); + srelplt2->contents); /* Generate a relocation for _GLOBAL_OFFSET_TABLE_ + 8. */ rel.r_offset = (htab->elf.splt->output_section->vma @@ -6070,10 +4225,10 @@ elf_i386_finish_dynamic_sections (bfd *output_bfd, rel.r_info = ELF32_R_INFO (htab->elf.hgot->indx, R_386_32); bfd_elf32_swap_reloc_out (output_bfd, &rel, - htab->srelplt2->contents + + srelplt2->contents + sizeof (Elf32_External_Rel)); /* Correct the .rel.plt.unloaded relocations. */ - p = htab->srelplt2->contents; + p = srelplt2->contents; if (bfd_link_pic (info)) p += PLTRESOLVE_RELOCS_SHLIB * sizeof (Elf32_External_Rel); else @@ -6238,7 +4393,8 @@ elf_i386_output_arch_local_syms asection *, struct elf_link_hash_entry *) ATTRIBUTE_UNUSED) { - struct elf_i386_link_hash_table *htab = elf_i386_hash_table (info); + struct elf_x86_link_hash_table *htab + = elf_x86_hash_table (info, I386_ELF_DATA); if (htab == NULL) return FALSE; @@ -6250,44 +4406,8 @@ elf_i386_output_arch_local_syms return TRUE; } -/* Sort relocs into address order. */ - -static int -compare_relocs (const void *ap, const void *bp) -{ - const arelent *a = * (const arelent **) ap; - const arelent *b = * (const arelent **) bp; - - if (a->address > b->address) - return 1; - else if (a->address < b->address) - return -1; - else - return 0; -} - -enum elf_i386_plt_type -{ - plt_non_lazy = 0, - plt_lazy = 1 << 0, - plt_pic = 1 << 1, - plt_second = 1 << 2, - plt_unknown = -1 -}; - -struct elf_i386_plt -{ - const char *name; - asection *sec; - bfd_byte *contents; - enum elf_i386_plt_type type; - unsigned int plt_got_offset; - unsigned int plt_entry_size; - long count; -}; - /* Forward declaration. */ -static const struct elf_i386_lazy_plt_layout elf_i386_nacl_plt; +static const struct elf_x86_lazy_plt_layout elf_i386_nacl_plt; /* Similar to _bfd_elf_get_synthetic_symtab. Support PLTs with all dynamic relocations. */ @@ -6300,27 +4420,23 @@ elf_i386_get_synthetic_symtab (bfd *abfd, asymbol **dynsyms, asymbol **ret) { - long size, count, i, n; + long count, i, n; int j; - unsigned int plt_got_offset, plt_entry_size; - asymbol *s; bfd_byte *plt_contents; - long dynrelcount, relsize; - arelent **dynrelbuf; - const struct elf_i386_lazy_plt_layout *lazy_plt; - const struct elf_i386_non_lazy_plt_layout *non_lazy_plt; - const struct elf_i386_lazy_plt_layout *lazy_ibt_plt; - const struct elf_i386_non_lazy_plt_layout *non_lazy_ibt_plt; + long relsize; + const struct elf_x86_lazy_plt_layout *lazy_plt; + const struct elf_x86_non_lazy_plt_layout *non_lazy_plt; + const struct elf_x86_lazy_plt_layout *lazy_ibt_plt; + const struct elf_x86_non_lazy_plt_layout *non_lazy_ibt_plt; asection *plt; bfd_vma got_addr; - char *names; - enum elf_i386_plt_type plt_type; - struct elf_i386_plt plts[] = + enum elf_x86_plt_type plt_type; + struct elf_x86_plt plts[] = { - { ".plt", NULL, NULL, plt_unknown, 0, 0, 0 }, - { ".plt.got", NULL, NULL, plt_non_lazy, 0, 0, 0 }, - { ".plt.sec", NULL, NULL, plt_second, 0, 0, 0 }, - { NULL, NULL, NULL, plt_non_lazy, 0, 0, 0 } + { ".plt", NULL, NULL, plt_unknown, 0, 0, 0, 0 }, + { ".plt.got", NULL, NULL, plt_non_lazy, 0, 0, 0, 0 }, + { ".plt.sec", NULL, NULL, plt_second, 0, 0, 0, 0 }, + { NULL, NULL, NULL, plt_non_lazy, 0, 0, 0, 0 } }; *ret = NULL; @@ -6335,16 +4451,6 @@ elf_i386_get_synthetic_symtab (bfd *abfd, if (relsize <= 0) return -1; - dynrelbuf = (arelent **) bfd_malloc (relsize); - if (dynrelbuf == NULL) - return -1; - - dynrelcount = bfd_canonicalize_dynamic_reloc (abfd, dynrelbuf, - dynsyms); - - /* Sort the relocs by address. */ - qsort (dynrelbuf, dynrelcount, sizeof (arelent *), compare_relocs); - non_lazy_plt = NULL; /* Silence GCC 6. */ lazy_plt = NULL; @@ -6371,7 +4477,7 @@ elf_i386_get_synthetic_symtab (bfd *abfd, for (j = 0; plts[j].name != NULL; j++) { plt = bfd_get_section_by_name (abfd, plts[j].name); - if (plt == NULL) + if (plt == NULL || plt->size == 0) continue; /* Get the PLT section contents. */ @@ -6387,7 +4493,9 @@ elf_i386_get_synthetic_symtab (bfd *abfd, /* Check what kind of PLT it is. */ plt_type = plt_unknown; - if (plts[j].type == plt_unknown) + if (plts[j].type == plt_unknown + && (plt->size >= (lazy_plt->plt0_entry_size + + lazy_plt->plt_entry_size))) { /* Match lazy PLT first. */ if (memcmp (plt_contents, lazy_plt->plt0_entry, @@ -6396,7 +4504,7 @@ elf_i386_get_synthetic_symtab (bfd *abfd, /* The fist entry in the lazy IBT PLT is the same as the normal lazy PLT. */ if (lazy_ibt_plt != NULL - && (memcmp (plt_contents + lazy_ibt_plt->plt_entry_size, + && (memcmp (plt_contents + lazy_ibt_plt->plt0_entry_size, lazy_ibt_plt->plt_entry, lazy_ibt_plt->plt_got_offset) == 0)) plt_type = plt_lazy | plt_second; @@ -6409,7 +4517,7 @@ elf_i386_get_synthetic_symtab (bfd *abfd, /* The fist entry in the PIC lazy IBT PLT is the same as the normal PIC lazy PLT. */ if (lazy_ibt_plt != NULL - && (memcmp (plt_contents + lazy_ibt_plt->plt_entry_size, + && (memcmp (plt_contents + lazy_ibt_plt->plt0_entry_size, lazy_ibt_plt->pic_plt_entry, lazy_ibt_plt->plt_got_offset) == 0)) plt_type = plt_lazy | plt_pic | plt_second; @@ -6419,7 +4527,8 @@ elf_i386_get_synthetic_symtab (bfd *abfd, } if (non_lazy_plt != NULL - && (plt_type == plt_unknown || plt_type == plt_non_lazy)) + && (plt_type == plt_unknown || plt_type == plt_non_lazy) + && plt->size >= non_lazy_plt->plt_entry_size) { /* Match non-lazy PLT. */ if (memcmp (plt_contents, non_lazy_plt->plt_entry, @@ -6431,7 +4540,8 @@ elf_i386_get_synthetic_symtab (bfd *abfd, } if ((non_lazy_ibt_plt != NULL) - && (plt_type == plt_unknown || plt_type == plt_second)) + && (plt_type == plt_unknown || plt_type == plt_second) + && plt->size >= non_lazy_ibt_plt->plt_entry_size) { if (memcmp (plt_contents, non_lazy_ibt_plt->plt_entry, @@ -6452,7 +4562,10 @@ elf_i386_get_synthetic_symtab (bfd *abfd, } if (plt_type == plt_unknown) - continue; + { + free (plt_contents); + continue; + } plts[j].sec = plt; plts[j].type = plt_type; @@ -6489,318 +4602,9 @@ elf_i386_get_synthetic_symtab (bfd *abfd, got_addr = (bfd_vma) -1; } - size = count * sizeof (asymbol); - s = *ret = (asymbol *) bfd_zmalloc (size); - if (s == NULL) - { -bad_return: - for (j = 0; plts[j].name != NULL; j++) - if (plts[j].contents != NULL) - free (plts[j].contents); - free (dynrelbuf); - return -1; - } - - if (got_addr) - { - /* Check .got.plt and then .got to get the _GLOBAL_OFFSET_TABLE_ - address. */ - asection *sec = bfd_get_section_by_name (abfd, ".got.plt"); - if (sec != NULL) - got_addr = sec->vma; - else - { - sec = bfd_get_section_by_name (abfd, ".got"); - if (sec != NULL) - got_addr = sec->vma; - } - - if (got_addr == (bfd_vma) -1) - goto bad_return; - } - - /* Check for each PLT section. */ - size = 0; - n = 0; - for (j = 0; plts[j].name != NULL; j++) - if ((plt_contents = plts[j].contents) != NULL) - { - long k; - bfd_vma offset; - - plt_got_offset = plts[j].plt_got_offset; - plt_entry_size = plts[j].plt_entry_size; - - plt = plts[j].sec; - - if ((plts[j].type & plt_lazy)) - { - /* Skip PLT0 in lazy PLT. */ - k = 1; - offset = plt_entry_size; - } - else - { - k = 0; - offset = 0; - } - - /* Check each PLT entry against dynamic relocations. */ - for (; k < plts[j].count; k++) - { - int off; - bfd_vma got_vma; - long min, max, mid; - arelent *p; - - /* Get the GOT offset, a signed 32-bit integer. */ - off = H_GET_32 (abfd, (plt_contents + offset - + plt_got_offset)); - got_vma = got_addr + off; - - /* Binary search. */ - p = dynrelbuf[0]; - min = 0; - max = dynrelcount; - while ((min + 1) < max) - { - arelent *r; - - mid = (min + max) / 2; - r = dynrelbuf[mid]; - if (got_vma > r->address) - min = mid; - else if (got_vma < r->address) - max = mid; - else - { - p = r; - break; - } - } - - /* Skip unknown relocation. PR 17512: file: bc9d6cf5. */ - if (got_vma == p->address - && p->howto != NULL - && (p->howto->type == R_386_JUMP_SLOT - || p->howto->type == R_386_GLOB_DAT - || p->howto->type == R_386_IRELATIVE)) - { - *s = **p->sym_ptr_ptr; - /* Undefined syms won't have BSF_LOCAL or BSF_GLOBAL - set. Since we are defining a symbol, ensure one - of them is set. */ - if ((s->flags & BSF_LOCAL) == 0) - s->flags |= BSF_GLOBAL; - s->flags |= BSF_SYNTHETIC; - /* This is no longer a section symbol. */ - s->flags &= ~BSF_SECTION_SYM; - s->section = plt; - s->the_bfd = plt->owner; - s->value = offset; - /* Store relocation for later use. */ - s->udata.p = p; - /* Add @plt to function name later. */ - size += strlen (s->name) + sizeof ("@plt"); - if (p->addend != 0) - size += sizeof ("+0x") - 1 + 8; - n++; - s++; - } - offset += plt_entry_size; - } - } - - /* PLT entries with R_386_TLS_DESC relocations are skipped. */ - if (n == 0) - goto bad_return; - - count = n; - - /* Allocate space for @plt suffixes. */ - names = (char *) bfd_malloc (size); - if (s == NULL) - goto bad_return; - - s = *ret; - for (i = 0; i < count; i++) - { - /* Add @plt to function name. */ - arelent *p = (arelent *) s->udata.p; - /* Clear it now. */ - s->udata.p = NULL; - size = strlen (s->name); - memcpy (names, s->name, size); - s->name = names; - names += size; - if (p->addend != 0) - { - char buf[30], *a; - - memcpy (names, "+0x", sizeof ("+0x") - 1); - names += sizeof ("+0x") - 1; - bfd_sprintf_vma (abfd, buf, p->addend); - for (a = buf; *a == '0'; ++a) - ; - size = strlen (a); - memcpy (names, a, size); - names += size; - } - memcpy (names, "@plt", sizeof ("@plt")); - names += sizeof ("@plt"); - s++; - } - - for (j = 0; plts[j].name != NULL; j++) - if (plts[j].contents != NULL) - free (plts[j].contents); - - free (dynrelbuf); - - return count; -} - -/* Return TRUE if symbol should be hashed in the `.gnu.hash' section. */ - -static bfd_boolean -elf_i386_hash_symbol (struct elf_link_hash_entry *h) -{ - if (h->plt.offset != (bfd_vma) -1 - && !h->def_regular - && !h->pointer_equality_needed) - return FALSE; - - return _bfd_elf_hash_symbol (h); -} - -/* Parse i386 GNU properties. */ - -static enum elf_property_kind -elf_i386_parse_gnu_properties (bfd *abfd, unsigned int type, - bfd_byte *ptr, unsigned int datasz) -{ - elf_property *prop; - - switch (type) - { - case GNU_PROPERTY_X86_ISA_1_USED: - case GNU_PROPERTY_X86_ISA_1_NEEDED: - case GNU_PROPERTY_X86_FEATURE_1_AND: - if (datasz != 4) - { - _bfd_error_handler - ((type == GNU_PROPERTY_X86_ISA_1_USED - ? _("error: %B: <corrupt x86 ISA used size: 0x%x>") - : (type == GNU_PROPERTY_X86_ISA_1_NEEDED - ? _("error: %B: <corrupt x86 ISA needed size: 0x%x>") - : _("error: %B: <corrupt x86 feature size: 0x%x>"))), - abfd, datasz); - return property_corrupt; - } - prop = _bfd_elf_get_property (abfd, type, datasz); - /* Combine properties of the same type. */ - prop->u.number |= bfd_h_get_32 (abfd, ptr); - prop->pr_kind = property_number; - break; - - default: - return property_ignored; - } - - return property_number; -} - -/* Merge i386 GNU property BPROP with APROP. If APROP isn't NULL, - return TRUE if APROP is updated. Otherwise, return TRUE if BPROP - should be merged with ABFD. */ - -static bfd_boolean -elf_i386_merge_gnu_properties (struct bfd_link_info *info, - bfd *abfd ATTRIBUTE_UNUSED, - elf_property *aprop, - elf_property *bprop) -{ - unsigned int number, features; - bfd_boolean updated = FALSE; - unsigned int pr_type = aprop != NULL ? aprop->pr_type : bprop->pr_type; - - switch (pr_type) - { - case GNU_PROPERTY_X86_ISA_1_USED: - case GNU_PROPERTY_X86_ISA_1_NEEDED: - if (aprop != NULL && bprop != NULL) - { - number = aprop->u.number; - aprop->u.number = number | bprop->u.number; - updated = number != (unsigned int) aprop->u.number; - } - else - { - /* Return TRUE if APROP is NULL to indicate that BPROP should - be added to ABFD. */ - updated = aprop == NULL; - } - break; - - case GNU_PROPERTY_X86_FEATURE_1_AND: - /* Only one of APROP and BPROP can be NULL: - 1. APROP & BPROP when both APROP and BPROP aren't NULL. - 2. If APROP is NULL, remove x86 feature. - 3. Otherwise, do nothing. - */ - if (aprop != NULL && bprop != NULL) - { - features = 0; - if (info->ibt) - features = GNU_PROPERTY_X86_FEATURE_1_IBT; - if (info->shstk) - features |= GNU_PROPERTY_X86_FEATURE_1_SHSTK; - number = aprop->u.number; - /* Add GNU_PROPERTY_X86_FEATURE_1_IBT and - GNU_PROPERTY_X86_FEATURE_1_SHSTK. */ - aprop->u.number = (number & bprop->u.number) | features; - updated = number != (unsigned int) aprop->u.number; - /* Remove the property if all feature bits are cleared. */ - if (aprop->u.number == 0) - aprop->pr_kind = property_remove; - } - else - { - features = 0; - if (info->ibt) - features = GNU_PROPERTY_X86_FEATURE_1_IBT; - if (info->shstk) - features |= GNU_PROPERTY_X86_FEATURE_1_SHSTK; - if (features) - { - /* Add GNU_PROPERTY_X86_FEATURE_1_IBT and - GNU_PROPERTY_X86_FEATURE_1_SHSTK. */ - if (aprop != NULL) - { - number = aprop->u.number; - aprop->u.number = number | features; - updated = number != (unsigned int) aprop->u.number; - } - else - { - bprop->u.number |= features; - updated = TRUE; - } - } - else if (aprop != NULL) - { - aprop->pr_kind = property_remove; - updated = TRUE; - } - } - break; - - default: - /* Never should happen. */ - abort (); - } - - return updated; + return _bfd_x86_elf_get_synthetic_symtab (abfd, count, relsize, + got_addr, plts, dynsyms, + ret); } /* Set up i386 GNU properties. Return the first relocatable ELF input @@ -6809,349 +4613,38 @@ elf_i386_merge_gnu_properties (struct bfd_link_info *info, static bfd * elf_i386_link_setup_gnu_properties (struct bfd_link_info *info) { - bfd_boolean normal_target; - bfd_boolean lazy_plt; - asection *sec, *pltsec; - bfd *dynobj; - bfd_boolean use_ibt_plt; - unsigned int plt_alignment, features; - struct elf_i386_link_hash_table *htab; - bfd *pbfd; - - features = 0; - if (info->ibt) - features = GNU_PROPERTY_X86_FEATURE_1_IBT; - if (info->shstk) - features |= GNU_PROPERTY_X86_FEATURE_1_SHSTK; - if (features) - { - /* Turn on GNU_PROPERTY_X86_FEATURE_1_IBT and - GNU_PROPERTY_X86_FEATURE_1_SHSTK. */ - bfd *ebfd = NULL; - elf_property *prop; - - for (pbfd = info->input_bfds; - pbfd != NULL; - pbfd = pbfd->link.next) - if (bfd_get_flavour (pbfd) == bfd_target_elf_flavour - && bfd_count_sections (pbfd) != 0) - { - ebfd = pbfd; - - if (elf_properties (pbfd) != NULL) - { - /* Find a normal input file with GNU property note. */ - prop = _bfd_elf_get_property (pbfd, - GNU_PROPERTY_X86_FEATURE_1_AND, - 4); - /* Add GNU_PROPERTY_X86_FEATURE_1_IBT and - GNU_PROPERTY_X86_FEATURE_1_SHSTK. */ - prop->u.number |= features; - prop->pr_kind = property_number; - break; - } - } - - if (pbfd == NULL && ebfd != NULL) - { - /* Create GNU_PROPERTY_X86_FEATURE_1_IBT if needed. */ - prop = _bfd_elf_get_property (ebfd, - GNU_PROPERTY_X86_FEATURE_1_AND, - 4); - prop->u.number = features; - prop->pr_kind = property_number; - - sec = bfd_make_section_with_flags (ebfd, - NOTE_GNU_PROPERTY_SECTION_NAME, - (SEC_ALLOC - | SEC_LOAD - | SEC_IN_MEMORY - | SEC_READONLY - | SEC_HAS_CONTENTS - | SEC_DATA)); - if (sec == NULL) - info->callbacks->einfo (_("%F: failed to create GNU property section\n")); - - if (!bfd_set_section_alignment (ebfd, sec, 2)) - goto error_alignment; - - elf_section_type (sec) = SHT_NOTE; - } - } - - pbfd = _bfd_elf_link_setup_gnu_properties (info); - - if (bfd_link_relocatable (info)) - return pbfd; - - htab = elf_i386_hash_table (info); - if (htab == NULL) - return pbfd; - - use_ibt_plt = info->ibtplt || info->ibt; - if (!use_ibt_plt && pbfd != NULL) - { - /* Check if GNU_PROPERTY_X86_FEATURE_1_IBT is on. */ - elf_property_list *p; - - /* The property list is sorted in order of type. */ - for (p = elf_properties (pbfd); p; p = p->next) - { - if (GNU_PROPERTY_X86_FEATURE_1_AND == p->property.pr_type) - { - use_ibt_plt = !!(p->property.u.number - & GNU_PROPERTY_X86_FEATURE_1_IBT); - break; - } - else if (GNU_PROPERTY_X86_FEATURE_1_AND < p->property.pr_type) - break; - } - } - - dynobj = htab->elf.dynobj; - - /* Set htab->elf.dynobj here so that there is no need to check and - 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; - } - } - - /* Even when lazy binding is disabled by "-z now", the PLT0 entry may - still be used with LD_AUDIT or LD_PROFILE if PLT entry is used for - canonical function address. */ - htab->plt.has_plt0 = 1; - normal_target = FALSE; + struct elf_x86_init_table init_table; + init_table.normal_target = FALSE; + init_table.is_vxworks = FALSE; switch (get_elf_i386_backend_data (info->output_bfd)->os) { case is_normal: - if (use_ibt_plt) - { - htab->lazy_plt = &elf_i386_lazy_ibt_plt; - htab->non_lazy_plt = &elf_i386_non_lazy_ibt_plt; - } - else - { - htab->lazy_plt = &elf_i386_lazy_plt; - htab->non_lazy_plt = &elf_i386_non_lazy_plt; - } - normal_target = TRUE; + init_table.lazy_plt = &elf_i386_lazy_plt; + init_table.non_lazy_plt = &elf_i386_non_lazy_plt; + init_table.lazy_ibt_plt = &elf_i386_lazy_ibt_plt; + init_table.non_lazy_ibt_plt = &elf_i386_non_lazy_ibt_plt; + init_table.normal_target = TRUE; break; case is_vxworks: - htab->lazy_plt = &elf_i386_lazy_plt; - htab->non_lazy_plt = NULL; - if (!elf_vxworks_create_dynamic_sections (dynobj, info, - &htab->srelplt2)) - info->callbacks->einfo (_("%F: failed to create VxWorks dynamic sections\n")); + init_table.lazy_plt = &elf_i386_lazy_plt; + init_table.non_lazy_plt = NULL; + init_table.lazy_ibt_plt = NULL; + init_table.non_lazy_ibt_plt = NULL; + init_table.is_vxworks = TRUE; break; case is_nacl: - htab->lazy_plt = &elf_i386_nacl_plt; - htab->non_lazy_plt = NULL; + init_table.lazy_plt = &elf_i386_nacl_plt; + init_table.non_lazy_plt = NULL; + init_table.lazy_ibt_plt = NULL; + init_table.non_lazy_ibt_plt = NULL; break; } - pltsec = htab->elf.splt; - - /* If the non-lazy PLT is available, use it for all PLT entries if - there are no PLT0 or no .plt section. */ - if (htab->non_lazy_plt != NULL - && (!htab->plt.has_plt0 || pltsec == NULL)) - { - lazy_plt = FALSE; - if (bfd_link_pic (info)) - htab->plt.plt_entry - = htab->non_lazy_plt->pic_plt_entry; - else - htab->plt.plt_entry - = htab->non_lazy_plt->plt_entry; - htab->plt.plt_entry_size - = htab->non_lazy_plt->plt_entry_size; - htab->plt.plt_got_offset - = htab->non_lazy_plt->plt_got_offset; - htab->plt.eh_frame_plt_size - = htab->non_lazy_plt->eh_frame_plt_size; - htab->plt.eh_frame_plt - = htab->non_lazy_plt->eh_frame_plt; - } - else - { - lazy_plt = TRUE; - if (bfd_link_pic (info)) - { - htab->plt.plt0_entry - = htab->lazy_plt->pic_plt0_entry; - htab->plt.plt_entry - = htab->lazy_plt->pic_plt_entry; - } - else - { - htab->plt.plt0_entry - = htab->lazy_plt->plt0_entry; - htab->plt.plt_entry - = htab->lazy_plt->plt_entry; - } - htab->plt.plt_entry_size - = htab->lazy_plt->plt_entry_size; - htab->plt.plt_got_offset - = htab->lazy_plt->plt_got_offset; - htab->plt.eh_frame_plt_size - = htab->lazy_plt->eh_frame_plt_size; - htab->plt.eh_frame_plt - = htab->lazy_plt->eh_frame_plt; - } - - /* Return if there are no normal input files. */ - if (dynobj == NULL) - return pbfd; - - /* Since create_dynamic_sections isn't always called, but GOT - relocations need GOT relocations, 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)) - info->callbacks->einfo (_("%F: failed to create GOT sections\n")); - - /* Create the ifunc sections here so that check_relocs can be - simplified. */ - if (!_bfd_elf_create_ifunc_sections (dynobj, info)) - info->callbacks->einfo (_("%F: failed to create ifunc sections\n")); - - plt_alignment = bfd_log2 (htab->plt.plt_entry_size); - - if (pltsec != NULL) - { - /* Whe creating executable, set the contents of the .interp - section to the interpreter. */ - if (bfd_link_executable (info) && !info->nointerp) - { - asection *s = bfd_get_linker_section (dynobj, ".interp"); - if (s == NULL) - abort (); - s->size = sizeof ELF_DYNAMIC_INTERPRETER; - s->contents = (unsigned char *) ELF_DYNAMIC_INTERPRETER; - htab->interp = s; - } - - /* Don't change PLT section alignment for NaCl since it uses - 64-byte PLT entry and sets PLT section alignment to 32 - bytes. */ - if (normal_target) - { - const struct elf_backend_data *bed - = get_elf_backend_data (dynobj); - flagword pltflags = (bed->dynamic_sec_flags - | SEC_ALLOC - | SEC_CODE - | SEC_LOAD - | SEC_READONLY); - unsigned int non_lazy_plt_alignment - = bfd_log2 (htab->non_lazy_plt->plt_entry_size); - - sec = pltsec; - if (!bfd_set_section_alignment (sec->owner, sec, - plt_alignment)) - goto error_alignment; - - /* Create the GOT procedure linkage table. */ - sec = bfd_make_section_anyway_with_flags (dynobj, - ".plt.got", - pltflags); - if (sec == NULL) - info->callbacks->einfo (_("%F: failed to create GOT PLT section\n")); - - if (!bfd_set_section_alignment (dynobj, sec, - non_lazy_plt_alignment)) - goto error_alignment; - - htab->plt_got = sec; - - if (lazy_plt) - { - sec = NULL; - - if (use_ibt_plt) - { - /* Create the second PLT for Intel IBT support. IBT - PLT is supported only for non-NaCl target and is - is needed only for lazy binding. */ - sec = bfd_make_section_anyway_with_flags (dynobj, - ".plt.sec", - pltflags); - if (sec == NULL) - info->callbacks->einfo (_("%F: failed to create IBT-enabled PLT section\n")); - - if (!bfd_set_section_alignment (dynobj, sec, - plt_alignment)) - goto error_alignment; - } - - htab->plt_second = sec; - } - } - - if (!info->no_ld_generated_unwind_info) - { - flagword flags = (SEC_ALLOC | SEC_LOAD | SEC_READONLY - | SEC_HAS_CONTENTS | SEC_IN_MEMORY - | SEC_LINKER_CREATED); - - sec = bfd_make_section_anyway_with_flags (dynobj, - ".eh_frame", - flags); - if (sec == NULL) - info->callbacks->einfo (_("%F: failed to create PLT .eh_frame section\n")); - - if (!bfd_set_section_alignment (dynobj, sec, 2)) - goto error_alignment; - - htab->plt_eh_frame = sec; - - if (htab->plt_got != NULL) - { - sec = bfd_make_section_anyway_with_flags (dynobj, - ".eh_frame", - flags); - if (sec == NULL) - info->callbacks->einfo (_("%F: failed to create GOT PLT .eh_frame section\n")); - - if (!bfd_set_section_alignment (dynobj, sec, 2)) - goto error_alignment; - - htab->plt_got_eh_frame = sec; - } - } - } - - if (normal_target) - { - /* The .iplt section is used for IFUNC symbols in static - executables. */ - sec = htab->elf.iplt; - if (sec != NULL - && !bfd_set_section_alignment (sec->owner, sec, - plt_alignment)) - { -error_alignment: - info->callbacks->einfo (_("%F%A: failed to align section\n"), - sec); - } - } + init_table.r_info = elf32_r_info; + init_table.r_sym = elf32_r_sym; - return pbfd; + return _bfd_x86_elf_link_setup_gnu_properties (info, &init_table); } #define TARGET_LITTLE_SYM i386_elf32_vec @@ -7177,36 +4670,22 @@ error_alignment: #define elf_info_to_howto elf_i386_info_to_howto_rel #define elf_info_to_howto_rel elf_i386_info_to_howto_rel -#define bfd_elf32_mkobject elf_i386_mkobject - #define bfd_elf32_bfd_is_local_label_name elf_i386_is_local_label_name -#define bfd_elf32_bfd_link_hash_table_create elf_i386_link_hash_table_create #define bfd_elf32_bfd_reloc_type_lookup elf_i386_reloc_type_lookup #define bfd_elf32_bfd_reloc_name_lookup elf_i386_reloc_name_lookup #define bfd_elf32_get_synthetic_symtab elf_i386_get_synthetic_symtab -#define elf_backend_adjust_dynamic_symbol elf_i386_adjust_dynamic_symbol #define elf_backend_relocs_compatible _bfd_elf_relocs_compatible #define elf_backend_check_relocs elf_i386_check_relocs -#define elf_backend_copy_indirect_symbol elf_i386_copy_indirect_symbol #define elf_backend_create_dynamic_sections _bfd_elf_create_dynamic_sections #define elf_backend_fake_sections elf_i386_fake_sections #define elf_backend_finish_dynamic_sections elf_i386_finish_dynamic_sections #define elf_backend_finish_dynamic_symbol elf_i386_finish_dynamic_symbol #define elf_backend_output_arch_local_syms elf_i386_output_arch_local_syms -#define elf_backend_gc_mark_hook elf_i386_gc_mark_hook #define elf_backend_grok_prstatus elf_i386_grok_prstatus #define elf_backend_grok_psinfo elf_i386_grok_psinfo #define elf_backend_reloc_type_class elf_i386_reloc_type_class #define elf_backend_relocate_section elf_i386_relocate_section -#define elf_backend_size_dynamic_sections elf_i386_size_dynamic_sections -#define elf_backend_always_size_sections elf_i386_always_size_sections -#define elf_backend_omit_section_dynsym \ - ((bfd_boolean (*) (bfd *, struct bfd_link_info *, asection *)) bfd_true) -#define elf_backend_hash_symbol elf_i386_hash_symbol -#define elf_backend_fixup_symbol elf_i386_fixup_symbol -#define elf_backend_parse_gnu_properties elf_i386_parse_gnu_properties -#define elf_backend_merge_gnu_properties elf_i386_merge_gnu_properties #define elf_backend_setup_gnu_properties elf_i386_link_setup_gnu_properties #include "elf32-target.h" @@ -7540,17 +5019,20 @@ static const bfd_byte elf_i386_nacl_eh_frame_plt[] = DW_CFA_nop, DW_CFA_nop }; -static const struct elf_i386_lazy_plt_layout elf_i386_nacl_plt = +static const struct elf_x86_lazy_plt_layout elf_i386_nacl_plt = { elf_i386_nacl_plt0_entry, /* plt0_entry */ sizeof (elf_i386_nacl_plt0_entry), /* plt0_entry_size */ - 2, /* plt0_got1_offset */ - 8, /* plt0_got2_offset */ elf_i386_nacl_plt_entry, /* plt_entry */ NACL_PLT_ENTRY_SIZE, /* plt_entry_size */ + 2, /* plt0_got1_offset */ + 8, /* plt0_got2_offset */ + 0, /* plt0_got2_insn_end */ 2, /* plt_got_offset */ 33, /* plt_reloc_offset */ 38, /* plt_plt_offset */ + 0, /* plt_got_insn_size */ + 0, /* plt_plt_insn_end */ 32, /* plt_lazy_offset */ elf_i386_nacl_pic_plt0_entry, /* pic_plt0_entry */ elf_i386_nacl_pic_plt_entry, /* pic_plt_entry */ diff --git a/bfd/elf32-ip2k.c b/bfd/elf32-ip2k.c index 9c37c1c..bf4f5cc 100644 --- a/bfd/elf32-ip2k.c +++ b/bfd/elf32-ip2k.c @@ -1295,7 +1295,7 @@ ip2k_final_link_relocate (reloc_howto_type * howto, ip2k_nominal_page_bits (input_bfd, input_section, rel->r_offset, contents)) /* xgettext:c-format */ - _bfd_error_handler (_("ip2k linker: missing page instruction at 0x%08lx (dest = 0x%08lx)."), + _bfd_error_handler (_("ip2k linker: missing page instruction at %#Lx (dest = %#Lx)"), BASEADDR (input_section) + rel->r_offset, relocation + rel->r_addend); } @@ -1312,7 +1312,7 @@ ip2k_final_link_relocate (reloc_howto_type * howto, ip2k_nominal_page_bits (input_bfd, input_section, rel->r_offset - 2, contents))) /* xgettext:c-format */ - _bfd_error_handler (_("ip2k linker: redundant page instruction at 0x%08lx (dest = 0x%08lx)."), + _bfd_error_handler (_("ip2k linker: redundant page instruction at %#Lx (dest = %#Lx)"), page_addr, relocation + rel->r_addend); } diff --git a/bfd/elf32-iq2000.c b/bfd/elf32-iq2000.c index c17097d..0260cc3 100644 --- a/bfd/elf32-iq2000.c +++ b/bfd/elf32-iq2000.c @@ -843,8 +843,8 @@ iq2000_elf_merge_private_bfd_data (bfd *ibfd, struct bfd_link_info *info) _bfd_error_handler /* xgettext:c-format */ - (_("%B: uses different e_flags (0x%lx) fields than previous modules (0x%lx)"), - ibfd, (long)new_flags, (long)old_flags); + (_("%B: uses different e_flags (%#x) fields than previous modules (%#x)"), + ibfd, new_flags, old_flags); } } diff --git a/bfd/elf32-lm32.c b/bfd/elf32-lm32.c index aabf49f..656f48b 100644 --- a/bfd/elf32-lm32.c +++ b/bfd/elf32-lm32.c @@ -1497,7 +1497,7 @@ lm32_elf_finish_dynamic_sections (bfd *output_bfd, != (lm32fdpic_fixup32_section (info)->reloc_count * 4)) { _bfd_error_handler - ("LINKER BUG: .rofixup section size mismatch: size/4 %d != relocs %d", + ("LINKER BUG: .rofixup section size mismatch: size/4 %Ld != relocs %d", lm32fdpic_fixup32_section (info)->size/4, lm32fdpic_fixup32_section (info)->reloc_count); return FALSE; @@ -1519,7 +1519,7 @@ lm32_elf_finish_dynamic_sections (bfd *output_bfd, if (hend->u.def.value != value) { _bfd_error_handler - ("LINKER BUG: .rofixup section hend->u.def.value != value: %ld != %ld", hend->u.def.value, value); + ("LINKER BUG: .rofixup section hend->u.def.value != value: %Ld != %Ld", hend->u.def.value, value); return FALSE; } } diff --git a/bfd/elf32-m32c.c b/bfd/elf32-m32c.c index 9658d17..2cb28b2 100644 --- a/bfd/elf32-m32c.c +++ b/bfd/elf32-m32c.c @@ -826,7 +826,7 @@ m32c_elf_merge_private_bfd_data (bfd *ibfd, struct bfd_link_info *info) #ifdef DEBUG _bfd_error_handler - ("old_flags = 0x%.8lx, new_flags = 0x%.8lx, init = %s, filename = %s", + ("old_flags = 0x%.8x, new_flags = 0x%.8x, init = %s, filename = %s", old_flags, new_flags, elf_flags_init (obfd) ? "yes" : "no", bfd_get_filename (ibfd)); #endif @@ -887,9 +887,9 @@ m32c_elf_merge_private_bfd_data (bfd *ibfd, struct bfd_link_info *info) error = TRUE; _bfd_error_handler /* xgettext:c-format */ - (_("%B: uses different e_flags (0x%lx) fields" - " than previous modules (0x%lx)"), - ibfd, (long) new_flags, (long) old_flags); + (_("%B: uses different e_flags (%#x) fields" + " than previous modules (%#x)"), + ibfd, new_flags, old_flags); } } diff --git a/bfd/elf32-m32r.c b/bfd/elf32-m32r.c index 9040823..d4e4423 100644 --- a/bfd/elf32-m32r.c +++ b/bfd/elf32-m32r.c @@ -2537,10 +2537,11 @@ m32r_elf_relocate_section (bfd *output_bfd ATTRIBUTE_UNUSED, { _bfd_error_handler /* xgettext:c-format */ - (_("%B(%A+0x%lx): unresolvable %s relocation against symbol `%s'"), + (_("%B(%A+%#Lx): unresolvable %s relocation " + "against symbol `%s'"), input_bfd, input_section, - (long) rel->r_offset, + rel->r_offset, howto->name, h->root.root.string); } diff --git a/bfd/elf32-m68hc1x.c b/bfd/elf32-m68hc1x.c index 96fc96f..cc6eb2d 100644 --- a/bfd/elf32-m68hc1x.c +++ b/bfd/elf32-m68hc1x.c @@ -1385,8 +1385,8 @@ _bfd_m68hc11_elf_merge_private_bfd_data (bfd *ibfd, struct bfd_link_info *info) { _bfd_error_handler /* xgettext:c-format */ - (_("%B: uses different e_flags (0x%lx) fields than previous modules (0x%lx)"), - ibfd, (unsigned long) new_flags, (unsigned long) old_flags); + (_("%B: uses different e_flags (%#x) fields than previous modules (%#x)"), + ibfd, new_flags, old_flags); ok = FALSE; } diff --git a/bfd/elf32-m68k.c b/bfd/elf32-m68k.c index 6f58720..ab122fe 100644 --- a/bfd/elf32-m68k.c +++ b/bfd/elf32-m68k.c @@ -703,7 +703,7 @@ struct elf_m68k_got_entry struct { /* Offset from the start of .got section. To calculate offset relative - to GOT pointer one should substract got->offset from this value. */ + to GOT pointer one should subtract got->offset from this value. */ bfd_vma offset; /* Pointer to the next GOT entry for this global symbol. @@ -3887,9 +3887,8 @@ elf_m68k_relocate_section (bfd *output_bfd, { _bfd_error_handler /* xgettext:c-format */ - (_("%B(%A+0x%lx): R_68K_TLS_LE32 relocation not permitted " - "in shared object"), - input_bfd, input_section, (long) rel->r_offset, howto->name); + (_("%B(%A+%#Lx): %s relocation not permitted in shared object"), + input_bfd, input_section, rel->r_offset, howto->name); return FALSE; } @@ -4081,10 +4080,10 @@ elf_m68k_relocate_section (bfd *output_bfd, { _bfd_error_handler /* xgettext:c-format */ - (_("%B(%A+0x%lx): unresolvable %s relocation against symbol `%s'"), + (_("%B(%A+%#Lx): unresolvable %s relocation against symbol `%s'"), input_bfd, input_section, - (long) rel->r_offset, + rel->r_offset, howto->name, h->root.root.string); return FALSE; @@ -4117,12 +4116,12 @@ elf_m68k_relocate_section (bfd *output_bfd, _bfd_error_handler ((sym_type == STT_TLS /* xgettext:c-format */ - ? _("%B(%A+0x%lx): %s used with TLS symbol %s") + ? _("%B(%A+%#Lx): %s used with TLS symbol %s") /* xgettext:c-format */ - : _("%B(%A+0x%lx): %s used with non-TLS symbol %s")), + : _("%B(%A+%#Lx): %s used with non-TLS symbol %s")), input_bfd, input_section, - (long) rel->r_offset, + rel->r_offset, howto->name, name); } @@ -4157,9 +4156,9 @@ elf_m68k_relocate_section (bfd *output_bfd, { _bfd_error_handler /* xgettext:c-format */ - (_("%B(%A+0x%lx): reloc against `%s': error %d"), + (_("%B(%A+%#Lx): reloc against `%s': error %d"), input_bfd, input_section, - (long) rel->r_offset, name, (int) r); + rel->r_offset, name, (int) r); return FALSE; } } diff --git a/bfd/elf32-mcore.c b/bfd/elf32-mcore.c index 0037129..5ecf1c6 100644 --- a/bfd/elf32-mcore.c +++ b/bfd/elf32-mcore.c @@ -408,10 +408,10 @@ mcore_elf_relocate_section (bfd * output_bfd, #ifdef DEBUG _bfd_error_handler - ("mcore_elf_relocate_section called for %B section %A, %ld relocations%s", + ("mcore_elf_relocate_section called for %B section %A, %u relocations%s", input_bfd, input_section, - (long) input_section->reloc_count, + input_section->reloc_count, (bfd_link_relocatable (info)) ? " (relocatable)" : ""); #endif diff --git a/bfd/elf32-mep.c b/bfd/elf32-mep.c index 32305c5..7d0e454 100644 --- a/bfd/elf32-mep.c +++ b/bfd/elf32-mep.c @@ -585,7 +585,7 @@ mep_elf_merge_private_bfd_data (bfd *ibfd, struct bfd_link_info *info) old_flags = elf_elfheader (obfd)->e_flags; #ifdef DEBUG - _bfd_error_handler ("%B: old_flags = 0x%.8lx, new_flags = 0x%.8lx, init = %s", + _bfd_error_handler ("%B: old_flags = 0x%.8x, new_flags = 0x%.8x, init = %s", ibfd, old_flags, new_flags, elf_flags_init (obfd) ? "yes" : "no"); #endif diff --git a/bfd/elf32-metag.c b/bfd/elf32-metag.c index 94eda953..a62cfa0 100644 --- a/bfd/elf32-metag.c +++ b/bfd/elf32-metag.c @@ -1873,7 +1873,7 @@ elf_metag_relocate_section (bfd *output_bfd, /* PR 20675 */ if (bfd_link_pic (info)) _bfd_error_handler (_("%B(%A): multiple TLS models are not supported"), - input_bfd, input_section, name); + input_bfd, input_section); else _bfd_error_handler (_("%B(%A): shared library symbol %s encountered whilst performing a static link"), input_bfd, input_section, name); @@ -1928,9 +1928,8 @@ elf_metag_relocate_section (bfd *output_bfd, { _bfd_error_handler /* xgettext:c-format */ - (_("%B(%A+0x%lx): R_METAG_TLS_LE/IENONPIC relocation not permitted in shared object"), - input_bfd, input_section, - (long) rel->r_offset, howto->name); + (_("%B(%A+%#Lx): %s relocation not permitted in shared object"), + input_bfd, input_section, rel->r_offset, howto->name); return FALSE; } else 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-msp430.c b/bfd/elf32-msp430.c index 9fae015..e1e6ed0 100644 --- a/bfd/elf32-msp430.c +++ b/bfd/elf32-msp430.c @@ -2227,8 +2227,10 @@ msp430_elf_relax_section (bfd * abfd, asection * sec, /* Try to turn a 16-bit absolute branch into a 10-bit pc-relative branch. */ - if (uses_msp430x_relocs (abfd) - && ELF32_R_TYPE (irel->r_info) == R_MSP430X_ABS16) + if ((uses_msp430x_relocs (abfd) + && ELF32_R_TYPE (irel->r_info) == R_MSP430X_ABS16) + || (! uses_msp430x_relocs (abfd) + && ELF32_R_TYPE (irel->r_info) == R_MSP430_16)) { bfd_vma value = symval; diff --git a/bfd/elf32-mt.c b/bfd/elf32-mt.c index db89f8c..b4625d4 100644 --- a/bfd/elf32-mt.c +++ b/bfd/elf32-mt.c @@ -524,7 +524,7 @@ mt_elf_merge_private_bfd_data (bfd *ibfd, struct bfd_link_info *info) old_flags = elf_elfheader (obfd)->e_flags; #ifdef DEBUG - _bfd_error_handler ("%B: old_flags = 0x%.8lx, new_flags = 0x%.8lx, init = %s", + _bfd_error_handler ("%B: old_flags = 0x%.8x, new_flags = 0x%.8x, init = %s", ibfd, old_flags, new_flags, elf_flags_init (obfd) ? "yes" : "no"); #endif diff --git a/bfd/elf32-nds32.c b/bfd/elf32-nds32.c index 94fb037..0b0de62 100644 --- a/bfd/elf32-nds32.c +++ b/bfd/elf32-nds32.c @@ -7343,7 +7343,7 @@ nds32_convert_32_to_16 (bfd *abfd, uint32_t insn, uint16_t *pinsn16, if (!IS_WITHIN_S (N32_IMM14S (insn), 8)) goto done; - if ((insn & __BIT (14)) == 0) + if ((insn & N32_BIT (14)) == 0) { /* N32_BR1_BEQ */ if (N32_IS_RT3 (insn) && N32_RA5 (insn) == REG_R5 @@ -7411,7 +7411,7 @@ nds32_convert_32_to_16 (bfd *abfd, uint32_t insn, uint16_t *pinsn16, break; case N32_OP6_JI: - if ((insn & __BIT (24)) == 0) + if ((insn & N32_BIT (24)) == 0) { /* N32_JI_J */ if (IS_WITHIN_S (N32_IMM24S (insn), 8)) @@ -7647,7 +7647,7 @@ nds32_convert_16_to_32 (bfd *abfd, uint16_t insn16, uint32_t *pinsn) insn = N32_TYPE2 (SLTI, REG_TA, N16_RT4 (insn16), N16_IMM5U (insn16)); goto done; case 0x34: /* beqzs8, bnezs8 */ - if (insn16 & __BIT (8)) + if (insn16 & N32_BIT (8)) insn = N32_BR2 (BNEZ, REG_TA, N16_IMM8S (insn16)); else insn = N32_BR2 (BEQZ, REG_TA, N16_IMM8S (insn16)); @@ -7747,7 +7747,7 @@ nds32_convert_16_to_32 (bfd *abfd, uint16_t insn16, uint32_t *pinsn) switch (__GF (insn16, 11, 4)) { case 0x7: /* lwi37.fp/swi37.fp */ - if (insn16 & __BIT (7)) /* swi37.fp */ + if (insn16 & N32_BIT (7)) /* swi37.fp */ insn = N32_TYPE2 (SWI, N16_RT38 (insn16), REG_FP, N16_IMM7U (insn16)); else /* lwi37.fp */ insn = N32_TYPE2 (LWI, N16_RT38 (insn16), REG_FP, N16_IMM7U (insn16)); @@ -7850,7 +7850,7 @@ turn_insn_to_sda_access (uint32_t insn, bfd_signed_vma type, uint32_t *pinsn) break; case N32_OP6_LBSI: /* lbsi.gp */ - oinsn = N32_TYPE1 (LBGP, N32_RT5 (insn), __BIT (19)); + oinsn = N32_TYPE1 (LBGP, N32_RT5 (insn), N32_BIT (19)); break; case N32_OP6_SBI: /* sbi.gp */ @@ -7858,7 +7858,7 @@ turn_insn_to_sda_access (uint32_t insn, bfd_signed_vma type, uint32_t *pinsn) break; case N32_OP6_ORI: /* addi.gp */ - oinsn = N32_TYPE1 (SBGP, N32_RT5 (insn), __BIT (19)); + oinsn = N32_TYPE1 (SBGP, N32_RT5 (insn), N32_BIT (19)); break; } break; @@ -7872,11 +7872,11 @@ turn_insn_to_sda_access (uint32_t insn, bfd_signed_vma type, uint32_t *pinsn) break; case N32_OP6_LHSI: /* lhsi.gp */ - oinsn = N32_TYPE1 (HWGP, N32_RT5 (insn), __BIT (18)); + oinsn = N32_TYPE1 (HWGP, N32_RT5 (insn), N32_BIT (18)); break; case N32_OP6_SHI: /* shi.gp */ - oinsn = N32_TYPE1 (HWGP, N32_RT5 (insn), __BIT (19)); + oinsn = N32_TYPE1 (HWGP, N32_RT5 (insn), N32_BIT (19)); break; } break; @@ -8986,7 +8986,7 @@ relax_range_measurement (bfd *abfd) static const char * unrecognized_reloc_msg = /* xgettext:c-format */ - N_("%B: warning: %s points to unrecognized reloc at 0x%lx."); + N_("%B: warning: %s points to unrecognized reloc at %#Lx"); /* Relax LONGCALL1 relocation for nds32_elf_relax_section. */ @@ -9039,7 +9039,7 @@ nds32_elf_relax_longcall1 (bfd *abfd, asection *sec, Elf_Internal_Rela *irel, if (hi_irelfn == irelend || lo_irelfn == irelend) { _bfd_error_handler (unrecognized_reloc_msg, abfd, "R_NDS32_LONGCALL1", - (long) irel->r_offset); + irel->r_offset); return FALSE; } @@ -9120,7 +9120,7 @@ nds32_elf_relax_longcall2 (bfd *abfd, asection *sec, Elf_Internal_Rela *irel, if (i1_irelfn == irelend) { _bfd_error_handler (unrecognized_reloc_msg, abfd, "R_NDS32_LONGCALL2", - (long) irel->r_offset); + irel->r_offset); return FALSE; } @@ -9226,7 +9226,7 @@ nds32_elf_relax_longcall3 (bfd *abfd, asection *sec, Elf_Internal_Rela *irel, if (hi_irelfn == irelend || lo_irelfn == irelend) { _bfd_error_handler (unrecognized_reloc_msg, abfd, "R_NDS32_LONGCALL3", - (long) irel->r_offset); + irel->r_offset); return FALSE; } @@ -9360,7 +9360,7 @@ nds32_elf_relax_longjump1 (bfd *abfd, asection *sec, Elf_Internal_Rela *irel, if (hi_irelfn == irelend || lo_irelfn == irelend) { _bfd_error_handler (unrecognized_reloc_msg, abfd, "R_NDS32_LONGJUMP1", - (long) irel->r_offset); + irel->r_offset); return FALSE; } @@ -9566,7 +9566,7 @@ nds32_elf_relax_longjump2 (bfd *abfd, asection *sec, Elf_Internal_Rela *irel, if (i2_irelfn == irelend || cond_irelfn == irelend) { _bfd_error_handler (unrecognized_reloc_msg, abfd, "R_NDS32_LONGJUMP2", - (long) irel->r_offset); + irel->r_offset); return FALSE; } @@ -9758,7 +9758,7 @@ nds32_elf_relax_longjump3 (bfd *abfd, asection *sec, Elf_Internal_Rela *irel, if (hi_irelfn == irelend || lo_irelfn == irelend || cond_irelfn == irelend) { _bfd_error_handler (unrecognized_reloc_msg, abfd, "R_NDS32_LONGJUMP3", - (long) irel->r_offset); + irel->r_offset); return FALSE; } @@ -9938,7 +9938,7 @@ nds32_elf_relax_longcall4 (bfd *abfd, asection *sec, Elf_Internal_Rela *irel, if (hi_irel == irelend) { _bfd_error_handler (unrecognized_reloc_msg, abfd, "R_NDS32_LONGCALL4", - (long) irel->r_offset); + irel->r_offset); return FALSE; } @@ -9968,7 +9968,7 @@ nds32_elf_relax_longcall4 (bfd *abfd, asection *sec, Elf_Internal_Rela *irel, if (ptr_irel == irelend || em_irel == irelend) { _bfd_error_handler (unrecognized_reloc_msg, abfd, "R_NDS32_LONGCALL4", - (long) irel->r_offset); + irel->r_offset); return FALSE; } /* Check these is enough space to insert jal in R_NDS32_EMPTY. */ @@ -10039,7 +10039,7 @@ nds32_elf_relax_longcall5 (bfd *abfd, asection *sec, Elf_Internal_Rela *irel, if (cond_irel == irelend) { _bfd_error_handler (unrecognized_reloc_msg, abfd, "R_NDS32_LONGCALL5", - (long) irel->r_offset); + irel->r_offset); return FALSE; } @@ -10117,7 +10117,7 @@ nds32_elf_relax_longcall6 (bfd *abfd, asection *sec, Elf_Internal_Rela *irel, if (em_irel == irelend) { _bfd_error_handler (unrecognized_reloc_msg, abfd, "R_NDS32_LONGCALL6", - (long) irel->r_offset); + irel->r_offset); return FALSE; } @@ -10155,7 +10155,7 @@ nds32_elf_relax_longcall6 (bfd *abfd, asection *sec, Elf_Internal_Rela *irel, if (cond_irel == irelend) { _bfd_error_handler (unrecognized_reloc_msg, abfd, - "R_NDS32_LONGCALL6", (long) irel->r_offset); + "R_NDS32_LONGCALL6", irel->r_offset); return FALSE; } cond_irel->r_addend = 1; @@ -10204,7 +10204,7 @@ nds32_elf_relax_longcall6 (bfd *abfd, asection *sec, Elf_Internal_Rela *irel, if (cond_irel == irelend) { _bfd_error_handler (unrecognized_reloc_msg, abfd, - "R_NDS32_LONGCALL6", (long) irel->r_offset); + "R_NDS32_LONGCALL6", irel->r_offset); return FALSE; } cond_irel->r_addend = 1; @@ -10254,7 +10254,7 @@ nds32_elf_relax_longjump4 (bfd *abfd, asection *sec, Elf_Internal_Rela *irel, if (hi_irel == irelend) { _bfd_error_handler (unrecognized_reloc_msg, abfd, "R_NDS32_LONGJUMP4", - (long) irel->r_offset); + irel->r_offset); return FALSE; } @@ -10276,7 +10276,7 @@ nds32_elf_relax_longjump4 (bfd *abfd, asection *sec, Elf_Internal_Rela *irel, if (ptr_irel == irelend || em_irel == irelend) { _bfd_error_handler (unrecognized_reloc_msg, abfd, "R_NDS32_LONGJUMP4", - (long) irel->r_offset); + irel->r_offset); return FALSE; } @@ -10350,7 +10350,7 @@ nds32_elf_relax_longjump5 (bfd *abfd, asection *sec, Elf_Internal_Rela *irel, if (cond_irel == irelend) { _bfd_error_handler (unrecognized_reloc_msg, abfd, "R_NDS32_LONGJUMP5", - (long) irel->r_offset); + irel->r_offset); return FALSE; } @@ -10479,7 +10479,7 @@ nds32_elf_relax_longjump6 (bfd *abfd, asection *sec, Elf_Internal_Rela *irel, if (em_irel == irelend) { _bfd_error_handler (unrecognized_reloc_msg, abfd, "R_NDS32_LONGJUMP6", - (long) irel->r_offset); + irel->r_offset); return FALSE; } @@ -10649,7 +10649,7 @@ nds32_elf_relax_longjump7 (bfd *abfd, asection *sec, Elf_Internal_Rela *irel, if (cond_irel == irelend) { _bfd_error_handler (unrecognized_reloc_msg, abfd, "R_NDS32_LONGJUMP7", - (long) irel->r_offset); + irel->r_offset); return FALSE; } @@ -10754,7 +10754,7 @@ nds32_elf_relax_loadstore (struct bfd_link_info *link_info, bfd *abfd, if (hi_irelfn == irelend) { _bfd_error_handler (unrecognized_reloc_msg, abfd, "R_NDS32_LOADSTORE", - (long) irel->r_offset); + irel->r_offset); return FALSE; } @@ -11228,7 +11228,7 @@ nds32_elf_relax_ptr (bfd *abfd, asection *sec, Elf_Internal_Rela *irel, if (re_irel == irelend) { _bfd_error_handler (unrecognized_reloc_msg, abfd, "R_NDS32_PTR", - (long) irel->r_offset); + irel->r_offset); return FALSE; } @@ -11319,7 +11319,7 @@ nds32_elf_relax_pltgot_suff (struct bfd_link_info *link_info, bfd *abfd, irel->r_info = ELF32_R_INFO (ELF32_R_SYM (irel->r_info), R_NDS32_PLT_GOTREL_LO19); /* addi.gp */ - insn = N32_TYPE1 (SBGP, N32_RT5 (insn), __BIT (19)); + insn = N32_TYPE1 (SBGP, N32_RT5 (insn), N32_BIT (19)); } else if (N32_OP6 (insn) == N32_OP6_JREG && N32_SUB5 (insn) == N32_JREG_JRAL) @@ -11452,12 +11452,12 @@ nds32_elf_relax_gotoff_suff (struct bfd_link_info *link_info, bfd *abfd, ELF32_R_INFO (ELF32_R_SYM (irel->r_info), R_NDS32_SDA18S1_RELA); break; case (N32_OP6_MEM << 8) | N32_MEM_LHS: - insn = N32_TYPE1 (HWGP, N32_RT5 (insn), __BIT (18)); + insn = N32_TYPE1 (HWGP, N32_RT5 (insn), N32_BIT (18)); irel->r_info = ELF32_R_INFO (ELF32_R_SYM (irel->r_info), R_NDS32_SDA18S1_RELA); break; case (N32_OP6_MEM << 8) | N32_MEM_SH: - insn = N32_TYPE1 (HWGP, N32_RT5 (insn), __BIT (19)); + insn = N32_TYPE1 (HWGP, N32_RT5 (insn), N32_BIT (19)); irel->r_info = ELF32_R_INFO (ELF32_R_SYM (irel->r_info), R_NDS32_SDA18S1_RELA); break; @@ -11468,7 +11468,7 @@ nds32_elf_relax_gotoff_suff (struct bfd_link_info *link_info, bfd *abfd, ELF32_R_INFO (ELF32_R_SYM (irel->r_info), R_NDS32_SDA19S0_RELA); break; case (N32_OP6_MEM << 8) | N32_MEM_LBS: - insn = N32_TYPE1 (LBGP, N32_RT5 (insn), __BIT (19)); + insn = N32_TYPE1 (LBGP, N32_RT5 (insn), N32_BIT (19)); irel->r_info = ELF32_R_INFO (ELF32_R_SYM (irel->r_info), R_NDS32_SDA19S0_RELA); break; @@ -11478,7 +11478,7 @@ nds32_elf_relax_gotoff_suff (struct bfd_link_info *link_info, bfd *abfd, ELF32_R_INFO (ELF32_R_SYM (irel->r_info), R_NDS32_SDA19S0_RELA); break; case (N32_OP6_ALU1 << 8) | N32_ALU1_ADD: - insn = N32_TYPE1 (SBGP, N32_RT5 (insn), __BIT (19)); + insn = N32_TYPE1 (SBGP, N32_RT5 (insn), N32_BIT (19)); irel->r_info = ELF32_R_INFO (ELF32_R_SYM (irel->r_info), R_NDS32_SDA19S0_RELA); break; @@ -11509,12 +11509,12 @@ nds32_relax_adjust_label (bfd *abfd, asection *sec, of instruction a time. It recognizes three types of relocations. - 1. R_NDS32_LABEL - a aligment. + 1. R_NDS32_LABEL - a alignment. 2. R_NDS32_INSN16 - relax a 32-bit instruction to 16-bit. 3. is_16bit_NOP () - remove a 16-bit instruction. */ - /* TODO: It seems currently implementation only support 4-byte aligment. - We should handle any-aligment. */ + /* TODO: It seems currently implementation only support 4-byte alignment. + We should handle any-alignment. */ Elf_Internal_Rela *insn_rel = NULL, *label_rel = NULL, *irel; Elf_Internal_Rela *tmp_rel, *tmp2_rel = NULL; @@ -15433,8 +15433,8 @@ nds32_elf_ex9_build_hash_table (bfd *abfd, asection *sec, /* Incorrect alignment. */ _bfd_error_handler /* xgettext:c-format */ - (_("%B: warning: unaligned small data access. " - "For entry: {%d, %d, %d}, addr = 0x%x, align = 0x%x."), + (_("%B: warning: unaligned small data access " + "for entry: {%Ld, %Ld, %Ld}, addr = %#Lx, align = %#x"), abfd, irel->r_offset, irel->r_info, irel->r_addend, relocation, align); off += 4; @@ -15466,7 +15466,7 @@ nds32_elf_ex9_build_hash_table (bfd *abfd, asection *sec, if (entry == NULL) { _bfd_error_handler - (_("%P%F: failed creating ex9.it %s hash table: %E\n"), code); + (_("failed creating ex9.it %s hash table entry"), code); return FALSE; } if (h) diff --git a/bfd/elf32-nios2.c b/bfd/elf32-nios2.c index 50a09ea..860a3d7 100644 --- a/bfd/elf32-nios2.c +++ b/bfd/elf32-nios2.c @@ -4369,10 +4369,10 @@ nios2_elf32_relocate_section (bfd *output_bfd, { _bfd_error_handler /* xgettext:c-format */ - (_("%B(%A+0x%lx): R_NIOS2_TLS_LE16 relocation not " + (_("%B(%A+%#Lx): %s relocation not " "permitted in shared object"), input_bfd, input_section, - (long) rel->r_offset, howto->name); + rel->r_offset, howto->name); return FALSE; } else diff --git a/bfd/elf32-ppc.c b/bfd/elf32-ppc.c index 0e99272..da4adea 100644 --- a/bfd/elf32-ppc.c +++ b/bfd/elf32-ppc.c @@ -134,7 +134,7 @@ static const bfd_vma ppc_elf_vxworks_pic_plt0_entry #define VXWORKS_PLT_NON_JMP_SLOT_RELOCS 3 /* The number of relocations in the PLTResolve slot. */ #define VXWORKS_PLTRESOLVE_RELOCS 2 -/* The number of relocations in the PLTResolve slot when when creating +/* The number of relocations in the PLTResolve slot when creating a shared library. */ #define VXWORKS_PLTRESOLVE_RELOCS_SHLIB 0 @@ -1656,6 +1656,21 @@ static reloc_howto_type ppc_elf_howto_raw[] = { 0x3e007ff, /* dst_mask */ FALSE), /* pcrel_offset */ + /* e_li split20 format. */ + HOWTO (R_PPC_VLE_ADDR20, /* type */ + 16, /* rightshift */ + 2, /* size (0 = byte, 1 = short, 2 = long) */ + 20, /* bitsize */ + FALSE, /* pc_relative */ + 0, /* bitpos */ + complain_overflow_dont, /* complain_on_overflow */ + bfd_elf_generic_reloc, /* special_function */ + "R_PPC_VLE_ADDR20", /* name */ + FALSE, /* partial_inplace */ + 0, /* src_mask */ + 0x1f07ff, /* dst_mask */ + FALSE), /* pcrel_offset */ + HOWTO (R_PPC_IRELATIVE, /* type */ 0, /* rightshift */ 2, /* size (0 = byte, 1 = short, 2 = long) */ @@ -3192,9 +3207,9 @@ struct plt_entry bfd_vma glink_offset; }; -/* Of those relocs that might be copied as dynamic relocs, this function - selects those that must be copied when linking a shared library, - even when the symbol is local. */ +/* Of those relocs that might be copied as dynamic relocs, this + function selects those that must be copied when linking a shared + library or PIE, even when the symbol is local. */ static int must_be_dyn_reloc (struct bfd_link_info *info, @@ -3203,6 +3218,10 @@ must_be_dyn_reloc (struct bfd_link_info *info, switch (r_type) { default: + /* Only relative relocs can be resolved when the object load + address isn't fixed. DTPREL32 is excluded because the + dynamic linker needs to differentiate global dynamic from + local dynamic __tls_index pairs when PPC_OPT_TLS is set. */ return 1; case R_PPC_REL24: @@ -3217,7 +3236,9 @@ must_be_dyn_reloc (struct bfd_link_info *info, case R_PPC_TPREL16_LO: case R_PPC_TPREL16_HI: case R_PPC_TPREL16_HA: - return !bfd_link_executable (info); + /* These relocations are relative but in a shared library the + linker doesn't know the thread pointer base. */ + return bfd_link_dll (info); } } @@ -3339,6 +3360,9 @@ struct ppc_elf_link_hash_table unsigned int local_ifunc_resolver:1; unsigned int maybe_local_ifunc_resolver:1; + /* Set if tls optimization is enabled. */ + unsigned int do_tls_opt:1; + /* The size of PLT entries. */ int plt_entry_size; /* The distance between adjacent PLT slots. */ @@ -4151,7 +4175,7 @@ ppc_elf_check_relocs (bfd *abfd, case R_PPC_GOT_TPREL16_LO: case R_PPC_GOT_TPREL16_HI: case R_PPC_GOT_TPREL16_HA: - if (bfd_link_pic (info)) + if (bfd_link_dll (info)) info->flags |= DF_STATIC_TLS; tls_type = TLS_TLS | TLS_TPREL; goto dogottls; @@ -4259,6 +4283,7 @@ ppc_elf_check_relocs (bfd *abfd, case R_PPC_VLE_HI16D: case R_PPC_VLE_HA16A: case R_PPC_VLE_HA16D: + case R_PPC_VLE_ADDR20: break; case R_PPC_EMB_SDA2REL: @@ -4430,13 +4455,13 @@ ppc_elf_check_relocs (bfd *abfd, return FALSE; break; - /* We shouldn't really be seeing these. */ + /* We shouldn't really be seeing TPREL32. */ case R_PPC_TPREL32: case R_PPC_TPREL16: case R_PPC_TPREL16_LO: case R_PPC_TPREL16_HI: case R_PPC_TPREL16_HA: - if (bfd_link_pic (info)) + if (bfd_link_dll (info)) info->flags |= DF_STATIC_TLS; goto dodyn; @@ -4977,6 +5002,23 @@ ppc_elf_vle_split16 (bfd *input_bfd, insn |= value & 0x7ff; bfd_put_32 (input_bfd, insn, loc); } + +static void +ppc_elf_vle_split20 (bfd *output_bfd, bfd_byte *loc, bfd_vma value) +{ + unsigned int insn; + + insn = bfd_get_32 (output_bfd, loc); + /* We have an li20 field, bits 17..20, 11..15, 21..31. */ + /* Top 4 bits of value to 17..20. */ + insn |= (value & 0xf0000) >> 5; + /* Next 5 bits of the value to 11..15. */ + insn |= (value & 0xf800) << 5; + /* And the final 11 bits of the value to bits 21 to 31. */ + insn |= value & 0x7ff; + bfd_put_32 (output_bfd, insn, loc); +} + /* Choose which PLT scheme to use, and set .plt flags appropriately. Returns -1 on error, 0 for old PLT, 1 for new PLT. */ @@ -5625,6 +5667,7 @@ ppc_elf_tls_optimize (bfd *obfd ATTRIBUTE_UNUSED, symtab_hdr->contents = (unsigned char *) locsyms; } } + htab->do_tls_opt = 1; return TRUE; } @@ -5942,17 +5985,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 +6030,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 +6145,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 +6162,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) @@ -8284,9 +8325,9 @@ ppc_elf_relocate_section (bfd *output_bfd, r_type = R_PPC_GOT16_LO; } else - info->callbacks->einfo + _bfd_error_handler /* xgettext:c-format */ - (_("%H: error: %s with unexpected instruction %x\n"), + (_("%B(%A+%#Lx): error: %s with unexpected instruction %#x"), input_bfd, input_section, rel->r_offset, "R_PPC_ADDR16_HA", insn); } @@ -8319,9 +8360,9 @@ ppc_elf_relocate_section (bfd *output_bfd, rel->r_info = ELF32_R_INFO (0, r_type); } else - info->callbacks->einfo + _bfd_error_handler /* xgettext:c-format */ - (_("%H: error: %s with unexpected instruction %x\n"), + (_("%B(%A+%#Lx): error: %s with unexpected instruction %#x"), input_bfd, input_section, rel->r_offset, "R_PPC_ADDR16_LO", insn); } @@ -8422,10 +8463,44 @@ ppc_elf_relocate_section (bfd *output_bfd, } addend = rel->r_addend; - tls_type = 0; howto = NULL; if (r_type < R_PPC_max) howto = ppc_elf_howto_table[r_type]; + + switch (r_type) + { + default: + break; + + case R_PPC_TPREL16_HA: + if (htab->do_tls_opt && relocation + addend + 0x8000 < 0x10000) + { + bfd_byte *p = contents + (rel->r_offset & ~3); + unsigned int insn = bfd_get_32 (input_bfd, p); + if ((insn & ((0x3f << 26) | 0x1f << 16)) + != ((15u << 26) | (2 << 16)) /* addis rt,2,imm */) + /* xgettext:c-format */ + info->callbacks->minfo + (_("%H: warning: %s unexpected insn %#x.\n"), + input_bfd, input_section, rel->r_offset, howto->name, insn); + else + bfd_put_32 (input_bfd, NOP, p); + } + break; + + case R_PPC_TPREL16_LO: + if (htab->do_tls_opt && relocation + addend + 0x8000 < 0x10000) + { + bfd_byte *p = contents + (rel->r_offset & ~3); + unsigned int insn = bfd_get_32 (input_bfd, p); + insn &= ~(0x1f << 16); + insn |= 2 << 16; + bfd_put_32 (input_bfd, insn, p); + } + break; + } + + tls_type = 0; switch (r_type) { default: @@ -8639,10 +8714,6 @@ ppc_elf_relocate_section (bfd *output_bfd, else { bfd_vma value = relocation; - int tlsopt = (htab->plt_type == PLT_NEW - && !htab->params->no_tls_get_addr_opt - && htab->tls_get_addr != NULL - && htab->tls_get_addr->plt.plist != NULL); if (tls_ty != 0) { @@ -8654,8 +8725,7 @@ ppc_elf_relocate_section (bfd *output_bfd, value = 0; else value -= htab->elf.tls_sec->vma + DTP_OFFSET; - if ((tls_ty & TLS_TPREL) - || (tlsopt && !(tls_ty & TLS_DTPREL))) + if (tls_ty & TLS_TPREL) value += DTP_OFFSET - TP_OFFSET; } @@ -8663,7 +8733,7 @@ ppc_elf_relocate_section (bfd *output_bfd, { bfd_put_32 (input_bfd, value, htab->elf.sgot->contents + off + 4); - value = !tlsopt; + value = 1; } } bfd_put_32 (input_bfd, value, @@ -8790,8 +8860,8 @@ ppc_elf_relocate_section (bfd *output_bfd, if (htab->elf.tls_sec != NULL) addend -= htab->elf.tls_sec->vma + TP_OFFSET; /* The TPREL16 relocs shouldn't really be used in shared - libs as they will result in DT_TEXTREL being set, but - support them anyway. */ + libs or with non-local symbols as that will result in + DT_TEXTREL being set, but support them anyway. */ goto dodyn; case R_PPC_TPREL32: @@ -9008,34 +9078,6 @@ ppc_elf_relocate_section (bfd *output_bfd, break; } } - else if (r_type == R_PPC_DTPMOD32 - && htab->plt_type == PLT_NEW - && !htab->params->no_tls_get_addr_opt - && htab->tls_get_addr != NULL - && htab->tls_get_addr->plt.plist != NULL) - { - /* Set up for __tls_get_addr_opt stub when this entry - does not have dynamic relocs. */ - relocation = 0; - /* Set up the next word for local dynamic. If it turns - out to be global dynamic, the reloc will overwrite - this value. */ - if (rel->r_offset + 8 <= input_section->size) - bfd_put_32 (input_bfd, DTP_OFFSET - TP_OFFSET, - contents + rel->r_offset + 4); - } - else if (r_type == R_PPC_DTPREL32 - && htab->plt_type == PLT_NEW - && !htab->params->no_tls_get_addr_opt - && htab->tls_get_addr != NULL - && htab->tls_get_addr->plt.plist != NULL - && rel > relocs - && rel[-1].r_info == ELF32_R_INFO (r_symndx, R_PPC_DTPMOD32) - && rel[-1].r_offset + 4 == rel->r_offset) - { - /* __tls_get_addr_opt stub value. */ - addend += DTP_OFFSET - TP_OFFSET; - } break; case R_PPC_RELAX_PLT: @@ -9503,6 +9545,10 @@ ppc_elf_relocate_section (bfd *output_bfd, } goto copy_reloc; + case R_PPC_VLE_ADDR20: + ppc_elf_vle_split20 (output_bfd, contents + rel->r_offset, relocation); + continue; + /* Relocate against the beginning of the section. */ case R_PPC_SECTOFF: case R_PPC_SECTOFF_LO: diff --git a/bfd/elf32-rx.c b/bfd/elf32-rx.c index bb2b307..f81988b 100644 --- a/bfd/elf32-rx.c +++ b/bfd/elf32-rx.c @@ -683,7 +683,7 @@ rx_elf_relocate_section && strcmp (name, "__romdatastart") != 0 \ && !saw_subtract) \ /* xgettext:c-format */ \ - _bfd_error_handler (_("%B(%A): unsafe PID relocation %s at 0x%08lx (against %s in %s)"), \ + _bfd_error_handler (_("%B(%A): unsafe PID relocation %s at %#Lx (against %s in %s)"), \ input_bfd, input_section, howto->name, \ input_section->output_section->vma + input_section->output_offset + rel->r_offset, \ name, sec->name); \ diff --git a/bfd/elf32-s390.c b/bfd/elf32-s390.c index c26bdcf..91853ef 100644 --- a/bfd/elf32-s390.c +++ b/bfd/elf32-s390.c @@ -945,7 +945,7 @@ elf_s390_check_relocs (bfd *abfd, for (rel = relocs; rel < rel_end; rel++) { unsigned int r_type; - unsigned long r_symndx; + unsigned int r_symndx; struct elf_link_hash_entry *h; r_symndx = ELF32_R_SYM (rel->r_info); @@ -2307,10 +2307,10 @@ invalid_tls_insn (bfd *input_bfd, howto = elf_howto_table + ELF32_R_TYPE (rel->r_info); _bfd_error_handler /* xgettext:c-format */ - (_("%B(%A+0x%lx): invalid instruction for TLS relocation %s"), + (_("%B(%A+%#Lx): invalid instruction for TLS relocation %s"), input_bfd, input_section, - (long) rel->r_offset, + rel->r_offset, howto->name); bfd_set_error (bfd_error_bad_value); } @@ -3369,10 +3369,10 @@ elf_s390_relocate_section (bfd *output_bfd, rel->r_offset) != (bfd_vma) -1) _bfd_error_handler /* xgettext:c-format */ - (_("%B(%A+0x%lx): unresolvable %s relocation against symbol `%s'"), + (_("%B(%A+%#Lx): unresolvable %s relocation against symbol `%s'"), input_bfd, input_section, - (long) rel->r_offset, + rel->r_offset, howto->name, h->root.root.string); @@ -3426,9 +3426,9 @@ elf_s390_relocate_section (bfd *output_bfd, { _bfd_error_handler /* xgettext:c-format */ - (_("%B(%A+0x%lx): reloc against `%s': error %d"), + (_("%B(%A+%#Lx): reloc against `%s': error %d"), input_bfd, input_section, - (long) rel->r_offset, name, (int) r); + rel->r_offset, name, (int) r); return FALSE; } } @@ -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/elf32-score.c b/bfd/elf32-score.c index 3dfe806..5fc10b3 100644 --- a/bfd/elf32-score.c +++ b/bfd/elf32-score.c @@ -2880,8 +2880,8 @@ s3_bfd_score_elf_check_relocs (bfd *abfd, { _bfd_error_handler /* xgettext:c-format */ - (_("%B: CALL15 reloc at 0x%lx not against global symbol"), - abfd, (unsigned long) rel->r_offset); + (_("%B: CALL15 reloc at %#Lx not against global symbol"), + abfd, rel->r_offset); bfd_set_error (bfd_error_bad_value); return FALSE; } diff --git a/bfd/elf32-score7.c b/bfd/elf32-score7.c index 66e7945..5554ccc 100644 --- a/bfd/elf32-score7.c +++ b/bfd/elf32-score7.c @@ -2685,8 +2685,8 @@ s7_bfd_score_elf_check_relocs (bfd *abfd, { _bfd_error_handler /* xgettext:c-format */ - (_("%B: CALL15 reloc at 0x%lx not against global symbol"), - abfd, (unsigned long) rel->r_offset); + (_("%B: CALL15 reloc at %#Lx not against global symbol"), + abfd, rel->r_offset); bfd_set_error (bfd_error_bad_value); return FALSE; } diff --git a/bfd/elf32-sh.c b/bfd/elf32-sh.c index 3df13b5..8f91579 100644 --- a/bfd/elf32-sh.c +++ b/bfd/elf32-sh.c @@ -577,8 +577,8 @@ sh_elf_relax_section (bfd *abfd, asection *sec, if (laddr >= sec->size) { /* xgettext:c-format */ - _bfd_error_handler (_("%B: 0x%lx: warning: bad R_SH_USES offset"), - abfd, (unsigned long) irel->r_offset); + _bfd_error_handler (_("%B: %#Lx: warning: bad R_SH_USES offset"), + abfd, irel->r_offset); continue; } insn = bfd_get_16 (abfd, contents + laddr); @@ -589,8 +589,8 @@ sh_elf_relax_section (bfd *abfd, asection *sec, { _bfd_error_handler /* xgettext:c-format */ - (_("%B: 0x%lx: warning: R_SH_USES points to unrecognized insn 0x%x"), - abfd, (unsigned long) irel->r_offset, insn); + (_("%B: %#Lx: warning: R_SH_USES points to unrecognized insn 0x%x"), + abfd, irel->r_offset, insn); continue; } @@ -607,8 +607,8 @@ sh_elf_relax_section (bfd *abfd, asection *sec, { _bfd_error_handler /* xgettext:c-format */ - (_("%B: 0x%lx: warning: bad R_SH_USES load offset"), - abfd, (unsigned long) irel->r_offset); + (_("%B: %#Lx: warning: bad R_SH_USES load offset"), + abfd, irel->r_offset); continue; } @@ -623,8 +623,8 @@ sh_elf_relax_section (bfd *abfd, asection *sec, { _bfd_error_handler /* xgettext:c-format */ - (_("%B: 0x%lx: warning: could not find expected reloc"), - abfd, (unsigned long) paddr); + (_("%B: %#Lx: warning: could not find expected reloc"), + abfd, paddr); continue; } @@ -652,8 +652,8 @@ sh_elf_relax_section (bfd *abfd, asection *sec, { _bfd_error_handler /* xgettext:c-format */ - (_("%B: 0x%lx: warning: symbol in unexpected section"), - abfd, (unsigned long) paddr); + (_("%B: %#Lx: warning: symbol in unexpected section"), + abfd, paddr); continue; } @@ -782,8 +782,8 @@ sh_elf_relax_section (bfd *abfd, asection *sec, { _bfd_error_handler /* xgettext:c-format */ - (_("%B: 0x%lx: warning: could not find expected COUNT reloc"), - abfd, (unsigned long) paddr); + (_("%B: %#Lx: warning: could not find expected COUNT reloc"), + abfd, paddr); continue; } @@ -792,8 +792,8 @@ sh_elf_relax_section (bfd *abfd, asection *sec, if (irelcount->r_addend == 0) { /* xgettext:c-format */ - _bfd_error_handler (_("%B: 0x%lx: warning: bad count"), - abfd, (unsigned long) paddr); + _bfd_error_handler (_("%B: %#Lx: warning: bad count"), + abfd, paddr); continue; } @@ -913,7 +913,7 @@ sh_elf_relax_delete_bytes (bfd *abfd, asection *sec, bfd_vma addr, contents = elf_section_data (sec)->this_hdr.contents; - /* The deletion must stop at the next ALIGN reloc for an aligment + /* The deletion must stop at the next ALIGN reloc for an alignment power larger than the number of bytes we are deleting. */ irelalign = NULL; @@ -1196,8 +1196,8 @@ sh_elf_relax_delete_bytes (bfd *abfd, asection *sec, bfd_vma addr, { _bfd_error_handler /* xgettext:c-format */ - (_("%B: 0x%lx: fatal: reloc overflow while relaxing"), - abfd, (unsigned long) irel->r_offset); + (_("%B: %#Lx: fatal: reloc overflow while relaxing"), + abfd, irel->r_offset); bfd_set_error (bfd_error_bad_value); return FALSE; } @@ -1567,8 +1567,8 @@ sh_elf_swap_insns (bfd *abfd, asection *sec, void *relocs, { _bfd_error_handler /* xgettext:c-format */ - (_("%B: 0x%lx: fatal: reloc overflow while relaxing"), - abfd, (unsigned long) irel->r_offset); + (_("%B: %#Lx: fatal: reloc overflow while relaxing"), + abfd, irel->r_offset); bfd_set_error (bfd_error_bad_value); return FALSE; } @@ -4006,9 +4006,9 @@ sh_elf_relocate_section (bfd *output_bfd, struct bfd_link_info *info, { _bfd_error_handler /* xgettext:c-format */ - (_("%B(%A+0x%lx): %s relocation against SEC_MERGE section"), + (_("%B(%A+%#Lx): %s relocation against SEC_MERGE section"), input_bfd, input_section, - (long) rel->r_offset, howto->name); + rel->r_offset, howto->name); return FALSE; } @@ -4124,10 +4124,10 @@ sh_elf_relocate_section (bfd *output_bfd, struct bfd_link_info *info, { _bfd_error_handler /* xgettext:c-format */ - (_("%B(%A+0x%lx): unresolvable %s relocation against symbol `%s'"), + (_("%B(%A+%#Lx): unresolvable %s relocation against symbol `%s'"), input_bfd, input_section, - (long) rel->r_offset, + rel->r_offset, howto->name, h->root.root.string); return FALSE; @@ -4203,9 +4203,9 @@ sh_elf_relocate_section (bfd *output_bfd, struct bfd_link_info *info, { _bfd_error_handler /* xgettext:c-format */ - (_("%B: 0x%lx: fatal: unaligned branch target for relax-support relocation"), + (_("%B: %#Lx: fatal: unaligned branch target for relax-support relocation"), input_section->owner, - (unsigned long) rel->r_offset); + rel->r_offset); bfd_set_error (bfd_error_bad_value); return FALSE; } @@ -4237,10 +4237,10 @@ sh_elf_relocate_section (bfd *output_bfd, struct bfd_link_info *info, { _bfd_error_handler /* xgettext:c-format */ - (_("%B: 0x%lx: fatal: unaligned %s relocation 0x%lx"), + (_("%B: %#Lx: fatal: unaligned %s relocation %#Lx"), input_section->owner, - (unsigned long) rel->r_offset, howto->name, - (unsigned long) relocation); + rel->r_offset, howto->name, + relocation); bfd_set_error (bfd_error_bad_value); return FALSE; } @@ -4253,10 +4253,10 @@ sh_elf_relocate_section (bfd *output_bfd, struct bfd_link_info *info, { _bfd_error_handler /* xgettext:c-format */ - (_("%B: 0x%lx: fatal: unaligned %s relocation 0x%lx"), + (_("%B: %#Lx: fatal: unaligned %s relocation %#Lx"), input_section->owner, - (unsigned long) rel->r_offset, howto->name, - (unsigned long) relocation); + rel->r_offset, howto->name, + relocation); bfd_set_error (bfd_error_bad_value); return FALSE; } @@ -4268,10 +4268,10 @@ sh_elf_relocate_section (bfd *output_bfd, struct bfd_link_info *info, { _bfd_error_handler /* xgettext:c-format */ - (_("%B: 0x%lx: fatal: R_SH_PSHA relocation %d not in range -32..32"), + (_("%B: %#Lx: fatal: R_SH_PSHA relocation %Ld not in range -32..32"), input_section->owner, - (unsigned long) rel->r_offset, - (unsigned long) relocation); + rel->r_offset, + relocation); bfd_set_error (bfd_error_bad_value); return FALSE; } @@ -4283,10 +4283,10 @@ sh_elf_relocate_section (bfd *output_bfd, struct bfd_link_info *info, { _bfd_error_handler /* xgettext:c-format */ - (_("%B: 0x%lx: fatal: R_SH_PSHL relocation %d not in range -32..32"), + (_("%B: %#Lx: fatal: R_SH_PSHL relocation %Ld not in range -32..32"), input_section->owner, - (unsigned long) rel->r_offset, - (unsigned long) relocation); + rel->r_offset, + relocation); bfd_set_error (bfd_error_bad_value); return FALSE; } @@ -4428,10 +4428,10 @@ sh_elf_relocate_section (bfd *output_bfd, struct bfd_link_info *info, { _bfd_error_handler /* xgettext:c-format */ - (_("%B(%A+0x%lx): cannot emit fixup to `%s' in read-only section"), + (_("%B(%A+%#Lx): cannot emit fixup to `%s' in read-only section"), input_bfd, input_section, - (long) rel->r_offset, + rel->r_offset, symname); return FALSE; } @@ -4900,10 +4900,10 @@ sh_elf_relocate_section (bfd *output_bfd, struct bfd_link_info *info, { _bfd_error_handler /* xgettext:c-format */ - (_("%B(%A+0x%lx): cannot emit fixup to `%s' in read-only section"), + (_("%B(%A+%#Lx): cannot emit fixup to `%s' in read-only section"), input_bfd, input_section, - (long) rel->r_offset, + rel->r_offset, symname); return FALSE; } @@ -5002,8 +5002,8 @@ sh_elf_relocate_section (bfd *output_bfd, struct bfd_link_info *info, { _bfd_error_handler /* xgettext:c-format */ - (_("%B(%A+0x%lx): %s relocation against external symbol \"%s\""), - input_bfd, input_section, (long) rel->r_offset, howto->name, + (_("%B(%A+%#Lx): %s relocation against external symbol \"%s\""), + input_bfd, input_section, rel->r_offset, howto->name, h->root.root.string); return FALSE; } diff --git a/bfd/elf32-sh64.c b/bfd/elf32-sh64.c index de7ce95d..87033f7 100644 --- a/bfd/elf32-sh64.c +++ b/bfd/elf32-sh64.c @@ -597,9 +597,9 @@ shmedia_prepare_reloc (struct bfd_link_info *info, bfd *abfd, { _bfd_error_handler /* xgettext:c-format */ - (_("%B: error: unaligned relocation type %d at %08x reloc %p\n"), - input_section->owner, ELF32_R_TYPE (rel->r_info), - (unsigned) rel->r_offset, relocation); + (_("%B: error: unaligned relocation type %d at %#Lx reloc %#Lx"), + input_section->owner, (int) ELF32_R_TYPE (rel->r_info), + rel->r_offset, *relocation); return FALSE; } diff --git a/bfd/elf32-spu.c b/bfd/elf32-spu.c index cbb026e..f7c18d9 100644 --- a/bfd/elf32-spu.c +++ b/bfd/elf32-spu.c @@ -5040,10 +5040,10 @@ spu_elf_relocate_section (bfd *output_bfd, { _bfd_error_handler /* xgettext:c-format */ - (_("%B(%s+0x%lx): unresolvable %s relocation against symbol `%s'"), + (_("%B(%s+%#Lx): unresolvable %s relocation against symbol `%s'"), input_bfd, bfd_get_section_name (input_bfd, input_section), - (long) rel->r_offset, + rel->r_offset, howto->name, sym_name); ret = FALSE; diff --git a/bfd/elf32-tic6x.c b/bfd/elf32-tic6x.c index e2a2961..bcce800 100644 --- a/bfd/elf32-tic6x.c +++ b/bfd/elf32-tic6x.c @@ -2632,7 +2632,7 @@ elf32_tic6x_relocate_section (bfd *output_bfd, if (h == NULL) _bfd_error_handler /* xgettext:c-format */ - (_("%B, section %A: relocation %s with non-zero addend %d" + (_("%B, section %A: relocation %s with non-zero addend %Ld" " against local symbol"), input_bfd, input_section, @@ -2641,7 +2641,7 @@ elf32_tic6x_relocate_section (bfd *output_bfd, else _bfd_error_handler /* xgettext:c-format */ - (_("%B, section %A: relocation %s with non-zero addend %d" + (_("%B, section %A: relocation %s with non-zero addend %Ld" " against symbol `%s'"), input_bfd, input_section, @@ -2801,7 +2801,7 @@ elf32_tic6x_check_relocs (bfd *abfd, struct bfd_link_info *info, for (rel = relocs; rel < rel_end; rel++) { unsigned int r_type; - unsigned long r_symndx; + unsigned int r_symndx; struct elf_link_hash_entry *h; Elf_Internal_Sym *isym; diff --git a/bfd/elf32-tilepro.c b/bfd/elf32-tilepro.c index d333203..13b9bb1 100644 --- a/bfd/elf32-tilepro.c +++ b/bfd/elf32-tilepro.c @@ -1478,7 +1478,7 @@ tilepro_elf_check_relocs (bfd *abfd, struct bfd_link_info *info, for (rel = relocs; rel < rel_end; rel++) { unsigned int r_type; - unsigned long r_symndx; + unsigned int r_symndx; struct elf_link_hash_entry *h; int tls_type; @@ -2861,15 +2861,7 @@ tilepro_elf_relocate_section (bfd *output_bfd, struct bfd_link_info *info, continue; if ((unsigned int)r_type >= NELEMS(tilepro_elf_howto_table)) - { - /* Not clear if we need to check here, but just be paranoid. */ - _bfd_error_handler - /* xgettext:c-format */ - (_("%B: unrecognized relocation (0x%x) in section `%A'"), - input_bfd, r_type, input_section); - bfd_set_error (bfd_error_bad_value); - return FALSE; - } + return _bfd_unrecognized_reloc (input_bfd, input_section, r_type); howto = tilepro_elf_howto_table + r_type; @@ -3566,10 +3558,10 @@ tilepro_elf_relocate_section (bfd *output_bfd, struct bfd_link_info *info, rel->r_offset) != (bfd_vma) -1) _bfd_error_handler /* xgettext:c-format */ - (_("%B(%A+0x%lx): unresolvable %s relocation against symbol `%s'"), + (_("%B(%A+%#Lx): unresolvable %s relocation against symbol `%s'"), input_bfd, input_section, - (long) rel->r_offset, + rel->r_offset, howto->name, h->root.root.string); diff --git a/bfd/elf32-v850.c b/bfd/elf32-v850.c index 8db7507..f33a520 100644 --- a/bfd/elf32-v850.c +++ b/bfd/elf32-v850.c @@ -2525,7 +2525,7 @@ v850_elf_merge_notes (bfd * ibfd, bfd *obfd) { _bfd_error_handler /* xgettext:c-format */ - (_("error: %B needs 8-byte aligment but %B is set for 4-byte alignment"), + (_("error: %B needs 8-byte alignment but %B is set for 4-byte alignment"), ibfd, obfd); result = FALSE; } @@ -3602,9 +3602,9 @@ v850_elf_relax_section (bfd *abfd, { _bfd_error_handler /* xgettext:c-format */ - (_("%B: 0x%lx: warning: R_V850_LONGCALL points to " + (_("%B: %#Lx: warning: R_V850_LONGCALL points to " "unrecognized insns"), - abfd, (unsigned long) irel->r_offset); + abfd, irel->r_offset); continue; } @@ -3612,10 +3612,10 @@ v850_elf_relax_section (bfd *abfd, { _bfd_error_handler /* xgettext:c-format */ - (_("%B: 0x%lx: warning: R_V850_LONGCALL points to " - "unrecognized insn 0x%x"), + (_("%B: %#Lx: warning: R_V850_LONGCALL points to " + "unrecognized insn %#x"), abfd, - (unsigned long) irel->r_offset + no_match, + irel->r_offset + no_match, insn[no_match]); continue; } @@ -3657,9 +3657,9 @@ v850_elf_relax_section (bfd *abfd, { _bfd_error_handler /* xgettext:c-format */ - (_("%B: 0x%lx: warning: R_V850_LONGCALL points to " + (_("%B: %#Lx: warning: R_V850_LONGCALL points to " "unrecognized reloc"), - abfd, (unsigned long) irel->r_offset); + abfd, irel->r_offset); continue; } @@ -3697,9 +3697,9 @@ v850_elf_relax_section (bfd *abfd, { _bfd_error_handler /* xgettext:c-format */ - (_("%B: 0x%lx: warning: R_V850_LONGCALL points to " - "unrecognized reloc 0x%lx"), - abfd, (unsigned long) irel->r_offset, + (_("%B: %#Lx: warning: R_V850_LONGCALL points to " + "unrecognized reloc %#Lx"), + abfd, irel->r_offset, irelcall->r_offset); continue; } @@ -3840,9 +3840,9 @@ v850_elf_relax_section (bfd *abfd, { _bfd_error_handler /* xgettext:c-format */ - (_("%B: 0x%lx: warning: R_V850_LONGJUMP points to " + (_("%B: %#Lx: warning: R_V850_LONGJUMP points to " "unrecognized insns"), - abfd, (unsigned long) irel->r_offset); + abfd, irel->r_offset); continue; } @@ -3850,10 +3850,10 @@ v850_elf_relax_section (bfd *abfd, { _bfd_error_handler /* xgettext:c-format */ - (_("%B: 0x%lx: warning: R_V850_LONGJUMP points to " - "unrecognized insn 0x%x"), + (_("%B: %#Lx: warning: R_V850_LONGJUMP points to " + "unrecognized insn %#x"), abfd, - (unsigned long) irel->r_offset + no_match, + irel->r_offset + no_match, insn[no_match]); continue; } @@ -3884,9 +3884,9 @@ v850_elf_relax_section (bfd *abfd, { _bfd_error_handler /* xgettext:c-format */ - (_("%B: 0x%lx: warning: R_V850_LONGJUMP points to " + (_("%B: %#Lx: warning: R_V850_LONGJUMP points to " "unrecognized reloc"), - abfd, (unsigned long) irel->r_offset); + abfd, irel->r_offset); continue; } diff --git a/bfd/elf32-vax.c b/bfd/elf32-vax.c index 367e415..368de9c 100644 --- a/bfd/elf32-vax.c +++ b/bfd/elf32-vax.c @@ -632,8 +632,8 @@ elf_vax_check_relocs (bfd *abfd, struct bfd_link_info *info, asection *sec, if (eh->got_addend != (bfd_vma) rel->r_addend) _bfd_error_handler /* xgettext:c-format */ - (_("%B: warning: GOT addend of %ld to `%s' does" - " not match previous GOT addend of %ld"), + (_("%B: warning: GOT addend of %Ld to `%s' does" + " not match previous GOT addend of %Ld"), abfd, rel->r_addend, h->root.root.string, eh->got_addend); @@ -1508,7 +1508,7 @@ elf_vax_relocate_section (bfd *output_bfd, else if (rel->r_addend != 0) _bfd_error_handler /* xgettext:c-format */ - (_("%B: warning: PLT addend of %d to `%s'" + (_("%B: warning: PLT addend of %Ld to `%s'" " from %A section ignored"), input_bfd, rel->r_addend, h->root.root.string, input_section); rel->r_addend = 0; @@ -1640,7 +1640,7 @@ elf_vax_relocate_section (bfd *output_bfd, else _bfd_error_handler /* xgettext:c-format */ - (_("%B: warning: %s relocation to 0x%x from %A section"), + (_("%B: warning: %s relocation to %#Lx from %A section"), input_bfd, howto->name, outrel.r_addend, input_section); } diff --git a/bfd/elf32-xtensa.c b/bfd/elf32-xtensa.c index 64e40d3..19a162e 100644 --- a/bfd/elf32-xtensa.c +++ b/bfd/elf32-xtensa.c @@ -1001,7 +1001,7 @@ elf_xtensa_check_relocs (bfd *abfd, for (rel = relocs; rel < rel_end; rel++) { unsigned int r_type; - unsigned long r_symndx; + unsigned r_symndx; struct elf_link_hash_entry *h = NULL; struct elf_xtensa_link_hash_entry *eh; int tls_type, old_tls_type; @@ -2787,7 +2787,7 @@ elf_xtensa_relocate_section (bfd *output_bfd, { _bfd_error_handler /* xgettext:c-format */ - (_("%B(%A+0x%lx): relocation offset out of range (size=0x%x)"), + (_("%B(%A+%#Lx): relocation offset out of range (size=%#Lx)"), input_bfd, input_section, rel->r_offset, input_size); bfd_set_error (bfd_error_bad_value); return FALSE; @@ -2813,12 +2813,12 @@ elf_xtensa_relocate_section (bfd *output_bfd, _bfd_error_handler ((sym_type == STT_TLS /* xgettext:c-format */ - ? _("%B(%A+0x%lx): %s used with TLS symbol %s") + ? _("%B(%A+%#Lx): %s used with TLS symbol %s") /* xgettext:c-format */ - : _("%B(%A+0x%lx): %s used with non-TLS symbol %s")), + : _("%B(%A+%#Lx): %s used with non-TLS symbol %s")), input_bfd, input_section, - (long) rel->r_offset, + rel->r_offset, howto->name, name); } @@ -3071,10 +3071,10 @@ elf_xtensa_relocate_section (bfd *output_bfd, { _bfd_error_handler /* xgettext:c-format */ - (_("%B(%A+0x%lx): unresolvable %s relocation against symbol `%s'"), + (_("%B(%A+%#Lx): unresolvable %s relocation against symbol `%s'"), input_bfd, input_section, - (long) rel->r_offset, + rel->r_offset, howto->name, name); return FALSE; @@ -6549,7 +6549,8 @@ extend_ebb_bounds_forward (ebb_t *ebb) { _bfd_error_handler /* xgettext:c-format */ - (_("%B(%A+0x%lx): could not decode instruction; possible configuration mismatch"), + (_("%B(%A+%#Lx): could not decode instruction; " + "possible configuration mismatch"), ebb->sec->owner, ebb->sec, ebb->end_offset + insn_block_len); return FALSE; } @@ -6626,7 +6627,8 @@ extend_ebb_bounds_backward (ebb_t *ebb) { _bfd_error_handler /* xgettext:c-format */ - (_("%B(%A+0x%lx): could not decode instruction; possible configuration mismatch"), + (_("%B(%A+%#Lx): could not decode instruction; " + "possible configuration mismatch"), ebb->sec->owner, ebb->sec, ebb->end_offset + insn_block_len); return FALSE; } @@ -7740,7 +7742,9 @@ compute_text_actions (bfd *abfd, { _bfd_error_handler /* xgettext:c-format */ - (_("%B(%A+0x%lx): could not decode instruction for XTENSA_ASM_SIMPLIFY relocation; possible configuration mismatch"), + (_("%B(%A+%#Lx): could not decode instruction for " + "XTENSA_ASM_SIMPLIFY relocation; " + "possible configuration mismatch"), sec->owner, sec, r_offset); continue; } @@ -7999,7 +8003,8 @@ compute_ebb_proposed_actions (ebb_constraint *ebb_table) decode_error: _bfd_error_handler /* xgettext:c-format */ - (_("%B(%A+0x%lx): could not decode instruction; possible configuration mismatch"), + (_("%B(%A+%#Lx): could not decode instruction; " + "possible configuration mismatch"), ebb->sec->owner, ebb->sec, offset); return FALSE; } @@ -10776,7 +10781,7 @@ do_fix_for_relocatable_link (Elf_Internal_Rela *rel, { _bfd_error_handler /* xgettext:c-format */ - (_("%B(%A+0x%lx): unexpected fix for %s relocation"), + (_("%B(%A+%#Lx): unexpected fix for %s relocation"), input_bfd, input_section, rel->r_offset, elf_howto_table[r_type].name); return FALSE; @@ -10836,7 +10841,7 @@ static asection * elf_xtensa_get_plt_section (struct bfd_link_info *info, int chunk) { bfd *dynobj; - char plt_name[10]; + char plt_name[17]; if (chunk == 0) return elf_hash_table (info)->splt; @@ -10851,7 +10856,7 @@ static asection * elf_xtensa_get_gotplt_section (struct bfd_link_info *info, int chunk) { bfd *dynobj; - char got_name[14]; + char got_name[21]; if (chunk == 0) return elf_hash_table (info)->sgotplt; diff --git a/bfd/elf64-alpha.c b/bfd/elf64-alpha.c index ada26f5..3e88787 100644 --- a/bfd/elf64-alpha.c +++ b/bfd/elf64-alpha.c @@ -3081,9 +3081,8 @@ elf64_alpha_relax_got_load (struct alpha_relax_info *info, bfd_vma symval, reloc_howto_type *howto = elf64_alpha_howto_table + r_type; _bfd_error_handler /* xgettext:c-format */ - (_("%B: %A+0x%lx: warning: %s relocation against unexpected insn"), - info->abfd, info->sec, - (unsigned long) irel->r_offset, howto->name); + (_("%B: %A+%#Lx: warning: %s relocation against unexpected insn"), + info->abfd, info->sec, irel->r_offset, howto->name); return TRUE; } @@ -3277,9 +3276,8 @@ elf64_alpha_relax_with_lituse (struct alpha_relax_info *info, { _bfd_error_handler /* xgettext:c-format */ - (_("%B: %A+0x%lx: warning: LITERAL relocation against unexpected insn"), - abfd, info->sec, - (unsigned long) irel->r_offset); + (_("%B: %A+%#Lx: warning: LITERAL relocation against unexpected insn"), + abfd, info->sec, irel->r_offset); return TRUE; } diff --git a/bfd/elf64-hppa.c b/bfd/elf64-hppa.c index 834855a..9fefe0e 100644 --- a/bfd/elf64-hppa.c +++ b/bfd/elf64-hppa.c @@ -2079,8 +2079,8 @@ elf64_hppa_finish_dynamic_symbol (bfd *output_bfd, { _bfd_error_handler /* xgettext:c-format */ - (_("stub entry for %s cannot load .plt, dp offset = %ld"), - hh->eh.root.root.string, (long) value); + (_("stub entry for %s cannot load .plt, dp offset = %Ld"), + hh->eh.root.root.string, value); return FALSE; } @@ -3284,7 +3284,7 @@ elf_hppa_final_link_relocate (Elf_Internal_Rela *rel, { _bfd_error_handler /* xgettext:c-format */ - (_("%B(%A+0x%" BFD_VMA_FMT "x): cannot reach %s"), + (_("%B(%A+%#Lx): cannot reach %s"), input_bfd, input_section, offset, diff --git a/bfd/elf64-ia64-vms.c b/bfd/elf64-ia64-vms.c index 4dff255..8140dc5 100644 --- a/bfd/elf64-ia64-vms.c +++ b/bfd/elf64-ia64-vms.c @@ -584,9 +584,9 @@ elf64_ia64_relax_section (bfd *abfd, asection *sec, { _bfd_error_handler /* xgettext:c-format */ - (_("%B: Can't relax br at 0x%lx in section `%A'." + (_("%B: Can't relax br at %#Lx in section `%A'." " Please use brl or indirect branch."), - sec->owner, (unsigned long) roff, sec); + sec->owner, roff, sec); bfd_set_error (bfd_error_bad_value); goto error_return; } @@ -3279,8 +3279,8 @@ elf64_ia64_choose_gp (bfd *abfd, struct bfd_link_info *info, bfd_boolean final) overflow: _bfd_error_handler /* xgettext:c-format */ - (_("%B: short data segment overflowed (0x%lx >= 0x400000)"), - abfd, (unsigned long) (max_short_vma - min_short_vma)); + (_("%B: short data segment overflowed (%#Lx >= 0x400000)"), + abfd, max_short_vma - min_short_vma); return FALSE; } else if ((gp_val > min_short_vma @@ -3948,7 +3948,7 @@ elf64_ia64_relocate_section (bfd *output_bfd, _bfd_error_handler /* xgettext:c-format */ (_("%B: missing TLS section for relocation %s against `%s'" - " at 0x%lx in section `%A'."), + " at %#Lx in section `%A'."), input_bfd, howto->name, name, rel->r_offset, input_section); break; @@ -3964,8 +3964,8 @@ elf64_ia64_relocate_section (bfd *output_bfd, that the section is too big to relax. */ _bfd_error_handler /* xgettext:c-format */ - (_("%B: Can't relax br (%s) to `%s' at 0x%lx in section" - " `%A' with size 0x%lx (> 0x1000000)."), + (_("%B: Can't relax br (%s) to `%s' at %#Lx in section" + " `%A' with size %#Lx (> 0x1000000)."), input_bfd, howto->name, name, rel->r_offset, input_section, input_section->size); break; @@ -5159,9 +5159,8 @@ error_free_dyn: _bfd_error_handler /* xgettext:c-format */ (_("Warning: size of symbol `%s' changed" - " from %lu in %B to %lu in %B"), - name, (unsigned long) h->size, old_bfd, - (unsigned long) isym->st_size, abfd); + " from %Lu in %B to %Lu in %B"), + name, h->size, old_bfd, isym->st_size, abfd); h->size = isym->st_size; } diff --git a/bfd/elf64-mmix.c b/bfd/elf64-mmix.c index b4ff5a3..8d79d39 100644 --- a/bfd/elf64-mmix.c +++ b/bfd/elf64-mmix.c @@ -1193,12 +1193,10 @@ mmix_elf_perform_relocation (asection *isec, reloc_howto_type *howto, _bfd_error_handler /* xgettext:c-format */ (_("%B: Internal inconsistency error for value for\n\ - linker-allocated global register: linked: 0x%lx%08lx != relaxed: 0x%lx%08lx\n"), + linker-allocated global register: linked: %#Lx != relaxed: %#Lx"), isec->owner, - (unsigned long) (value >> 32), (unsigned long) value, - (unsigned long) (gregdata->reloc_request[bpo_index].value - >> 32), - (unsigned long) gregdata->reloc_request[bpo_index].value); + value, + gregdata->reloc_request[bpo_index].value); bfd_set_error (bfd_error_bad_value); return bfd_reloc_overflow; } @@ -1740,9 +1738,9 @@ mmix_final_link_relocate (reloc_howto_type *howto, asection *input_section, /* FIXME: Better error message. */ _bfd_error_handler /* xgettext:c-format */ - (_("%B: LOCAL directive: Register $%ld is not a local register." - " First global register is $%ld."), - input_section->owner, (long) srel, (long) first_global); + (_("%B: LOCAL directive: Register $%Ld is not a local register." + " First global register is $%Ld."), + input_section->owner, srel, first_global); return bfd_reloc_overflow; } @@ -2444,10 +2442,10 @@ _bfd_mmix_after_linker_allocation (bfd *abfd ATTRIBUTE_UNUSED, { _bfd_error_handler /* xgettext:c-format */ - (_("Internal inconsistency: remaining %u != max %u.\n\ + (_("Internal inconsistency: remaining %lu != max %lu.\n\ Please report this bug."), - gregdata->n_remaining_bpo_relocs_this_relaxation_round, - gregdata->n_bpo_relocs); + (unsigned long) gregdata->n_remaining_bpo_relocs_this_relaxation_round, + (unsigned long) gregdata->n_bpo_relocs); return FALSE; } @@ -2712,8 +2710,21 @@ mmix_elf_relax_section (bfd *abfd, indx = ELF64_R_SYM (irel->r_info) - symtab_hdr->sh_info; h = elf_sym_hashes (abfd)[indx]; BFD_ASSERT (h != NULL); - if (h->root.type != bfd_link_hash_defined - && h->root.type != bfd_link_hash_defweak) + if (h->root.type == bfd_link_hash_undefweak) + /* FIXME: for R_MMIX_PUSHJ_STUBBABLE, there are alternatives to + the canonical value 0 for an unresolved weak symbol to + consider: as the debug-friendly approach, resolve to "abort" + (or a port-specific function), or as the space-friendly + approach resolve to the next instruction (like some other + ports, notably ARM and AArch64). These alternatives require + matching code in mmix_elf_perform_relocation or its caller. */ + symval = 0; + else if (h->root.type == bfd_link_hash_defined + || h->root.type == bfd_link_hash_defweak) + symval = (h->root.u.def.value + + h->root.u.def.section->output_section->vma + + h->root.u.def.section->output_offset); + else { /* This appears to be a reference to an undefined symbol. Just ignore it--it will be caught by the regular reloc processing. @@ -2727,10 +2738,6 @@ mmix_elf_relax_section (bfd *abfd, } continue; } - - symval = (h->root.u.def.value - + h->root.u.def.section->output_section->vma - + h->root.u.def.section->output_offset); } if (ELF64_R_TYPE (irel->r_info) == (int) R_MMIX_PUSHJ_STUBBABLE) @@ -2868,6 +2875,8 @@ mmix_elf_relax_section (bfd *abfd, } } + BFD_ASSERT(pjsno == mmix_elf_section_data (sec)->pjs.n_pushj_relocs); + if (internal_relocs != NULL && elf_section_data (sec)->relocs != internal_relocs) free (internal_relocs); diff --git a/bfd/elf64-ppc.c b/bfd/elf64-ppc.c index 319d58f..ea49706 100644 --- a/bfd/elf64-ppc.c +++ b/bfd/elf64-ppc.c @@ -3785,9 +3785,9 @@ ppc64_elf_get_synthetic_symtab (bfd *abfd, calls may use the function descriptor symbol, ie. "bl foo". This behaves exactly as "bl .foo". */ -/* Of those relocs that might be copied as dynamic relocs, this function - selects those that must be copied when linking a shared library, - even when the symbol is local. */ +/* Of those relocs that might be copied as dynamic relocs, this + function selects those that must be copied when linking a shared + library or PIE, even when the symbol is local. */ static int must_be_dyn_reloc (struct bfd_link_info *info, @@ -3796,6 +3796,10 @@ must_be_dyn_reloc (struct bfd_link_info *info, switch (r_type) { default: + /* Only relative relocs can be resolved when the object load + address isn't fixed. DTPREL64 is excluded because the + dynamic linker needs to differentiate global dynamic from + local dynamic __tls_index pairs when PPC64_OPT_TLS is set. */ return 1; case R_PPC64_REL32: @@ -3816,7 +3820,9 @@ must_be_dyn_reloc (struct bfd_link_info *info, case R_PPC64_TPREL16_HIGHEST: case R_PPC64_TPREL16_HIGHESTA: case R_PPC64_TPREL64: - return !bfd_link_executable (info); + /* These relocations are relative but in a shared library the + linker doesn't know the thread pointer base. */ + return bfd_link_dll (info); } } @@ -3919,6 +3925,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 +4019,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. @@ -4107,6 +4120,9 @@ struct ppc_link_hash_table unsigned int second_toc_pass:1; unsigned int do_toc_opt:1; + /* Set if tls optimization is enabled. */ + unsigned int do_tls_opt:1; + /* Set on error. */ unsigned int stub_error:1; @@ -5018,7 +5034,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 +5042,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; } @@ -5487,7 +5505,7 @@ ppc64_elf_check_relocs (bfd *abfd, struct bfd_link_info *info, case R_PPC64_GOT_TPREL16_LO_DS: case R_PPC64_GOT_TPREL16_HI: case R_PPC64_GOT_TPREL16_HA: - if (bfd_link_pic (info)) + if (bfd_link_dll (info)) info->flags |= DF_STATIC_TLS; tls_type = TLS_TLS | TLS_TPREL; goto dogottls; @@ -5749,7 +5767,7 @@ ppc64_elf_check_relocs (bfd *abfd, struct bfd_link_info *info, case R_PPC64_TPREL64: tls_type = TLS_EXPLICIT | TLS_TLS | TLS_TPREL; - if (bfd_link_pic (info)) + if (bfd_link_dll (info)) info->flags |= DF_STATIC_TLS; goto dotlstoc; @@ -5825,12 +5843,9 @@ ppc64_elf_check_relocs (bfd *abfd, struct bfd_link_info *info, case R_PPC64_TPREL16_HIGHERA: case R_PPC64_TPREL16_HIGHEST: case R_PPC64_TPREL16_HIGHESTA: - if (bfd_link_pic (info)) - { - info->flags |= DF_STATIC_TLS; - goto dodyn; - } - break; + if (bfd_link_dll (info)) + info->flags |= DF_STATIC_TLS; + goto dodyn; case R_PPC64_ADDR64: if (opd_sym_map != NULL @@ -6332,6 +6347,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); } @@ -7788,9 +7804,6 @@ dec_dynrel_count (bfd_vma r_info, case R_PPC64_TPREL16_HIGHERA: case R_PPC64_TPREL16_HIGHEST: case R_PPC64_TPREL16_HIGHESTA: - if (!bfd_link_pic (info)) - return TRUE; - case R_PPC64_TPREL64: case R_PPC64_DTPMOD64: case R_PPC64_DTPREL64: @@ -8346,10 +8359,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", @@ -8897,6 +8928,7 @@ ppc64_elf_tls_optimize (struct bfd_link_info *info) if (toc_ref != NULL) free (toc_ref); + htab->do_tls_opt = 1; return TRUE; } @@ -8904,7 +8936,7 @@ ppc64_elf_tls_optimize (struct bfd_link_info *info) the values of any global symbols in a toc section that has been edited. Globals in toc sections should be a rarity, so this function sets a flag if any are found in toc sections other than the one just - edited, so that futher hash table traversals can be avoided. */ + edited, so that further hash table traversals can be avoided. */ struct adjust_toc_info { @@ -9400,7 +9432,7 @@ ppc64_elf_edit_toc (struct bfd_link_info *info) /* Merge the used and skip arrays. Assume that TOC doublewords not appearing as either used or unused belong - to to an entry more than one doubleword in size. */ + to an entry more than one doubleword in size. */ for (drop = skip, keep = used, last = 0, some_unused = 0; drop < skip + (toc->size + 7) / 8; ++drop, ++keep) @@ -9715,17 +9747,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 +9837,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 +9892,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 +9928,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) @@ -10580,17 +10610,30 @@ plt_stub_size (struct ppc_link_hash_table *htab, return size; } -/* If this stub would cross fewer 2**plt_stub_align boundaries if we align, - then return the padding needed to do so. */ +/* Depending on the sign of plt_stub_align: + If positive, return the padding to align to a 2**plt_stub_align + boundary. + If negative, if this stub would cross fewer 2**plt_stub_align + boundaries if we align, then return the padding needed to do so. */ + static inline unsigned int plt_stub_pad (struct ppc_link_hash_table *htab, struct ppc_stub_hash_entry *stub_entry, bfd_vma plt_off) { - int stub_align = 1 << htab->params->plt_stub_align; + int stub_align; unsigned stub_size = plt_stub_size (htab, stub_entry, plt_off); bfd_vma stub_off = stub_entry->group->stub_sec->size; + if (htab->params->plt_stub_align >= 0) + { + stub_align = 1 << htab->params->plt_stub_align; + if ((stub_off & (stub_align - 1)) != 0) + return stub_align - (stub_off & (stub_align - 1)); + return 0; + } + + stub_align = 1 << -htab->params->plt_stub_align; if (((stub_off + stub_size - 1) & -stub_align) - (stub_off & -stub_align) > ((stub_size - 1) & -stub_align)) return stub_align - (stub_off & (stub_align - 1)); @@ -11386,6 +11429,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 +12304,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 +12355,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 +12478,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 +12795,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 +12834,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 +12848,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 +12876,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 +12891,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 +12906,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) { @@ -12871,7 +12968,7 @@ ppc64_elf_size_stubs (struct bfd_link_info *info) *p++ = DW_CFA_register; *p++ = 65; *p++ = htab->opd_abi ? 12 : 0; - *p++ = DW_CFA_advance_loc + 4; + *p++ = DW_CFA_advance_loc + (htab->opd_abi ? 5 : 7); *p++ = DW_CFA_restore_extended; *p++ = 65; p += ((24 + align - 1) & -align) - 24; @@ -13115,10 +13212,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 +13395,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 @@ -13320,12 +13411,7 @@ ppc64_elf_build_stubs (struct bfd_link_info *info, break; } - /* 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 - || (htab->glink_eh_frame != NULL - && htab->glink_eh_frame->rawsize != htab->glink_eh_frame->size)) + if (group != NULL) { htab->stub_error = TRUE; info->callbacks->einfo (_("%P: stubs don't match calculated size\n")); @@ -13842,7 +13928,7 @@ ppc64_elf_relocate_section (bfd *output_bfd, case R_PPC64_GOT_TLSLD16_LO: if (tls_mask != 0 && (tls_mask & TLS_LD) == 0) { - unsigned int insn1, insn2, insn3; + unsigned int insn1, insn2; bfd_vma offset; tls_ldgd_opt: @@ -13921,18 +14007,7 @@ ppc64_elf_relocate_section (bfd *output_bfd, bfd_put_32 (input_bfd, insn1, contents + rel->r_offset - d_offset); if (offset != (bfd_vma) -1) - { - insn3 = bfd_get_32 (input_bfd, - contents + offset + 4); - if (insn3 == NOP - || insn3 == CROR_151515 || insn3 == CROR_313131) - { - rel[1].r_offset += 4; - bfd_put_32 (input_bfd, insn2, contents + offset + 4); - insn2 = NOP; - } - bfd_put_32 (input_bfd, insn2, contents + offset); - } + bfd_put_32 (input_bfd, insn2, contents + offset); if ((tls_mask & tls_gd) == 0 && (tls_gd == 0 || toc_symndx != 0)) { @@ -13946,7 +14021,7 @@ ppc64_elf_relocate_section (bfd *output_bfd, case R_PPC64_TLSGD: if (tls_mask != 0 && (tls_mask & TLS_GD) == 0) { - unsigned int insn2, insn3; + unsigned int insn2; bfd_vma offset = rel->r_offset; if ((tls_mask & TLS_TPRELGD) != 0) @@ -13971,15 +14046,6 @@ ppc64_elf_relocate_section (bfd *output_bfd, /* Zap the reloc on the _tls_get_addr call too. */ BFD_ASSERT (offset == rel[1].r_offset); rel[1].r_info = ELF64_R_INFO (STN_UNDEF, R_PPC64_NONE); - insn3 = bfd_get_32 (input_bfd, - contents + offset + 4); - if (insn3 == NOP - || insn3 == CROR_151515 || insn3 == CROR_313131) - { - rel->r_offset += 4; - bfd_put_32 (input_bfd, insn2, contents + offset + 4); - insn2 = NOP; - } bfd_put_32 (input_bfd, insn2, contents + offset); if ((tls_mask & TLS_TPRELGD) == 0 && toc_symndx != 0) goto again; @@ -13989,7 +14055,7 @@ ppc64_elf_relocate_section (bfd *output_bfd, case R_PPC64_TLSLD: if (tls_mask != 0 && (tls_mask & TLS_LD) == 0) { - unsigned int insn2, insn3; + unsigned int insn2; bfd_vma offset = rel->r_offset; if (toc_symndx) @@ -14014,15 +14080,6 @@ ppc64_elf_relocate_section (bfd *output_bfd, BFD_ASSERT (offset == rel[1].r_offset); rel[1].r_info = ELF64_R_INFO (STN_UNDEF, R_PPC64_NONE); insn2 = 0x38630000; /* addi 3,3,0 */ - insn3 = bfd_get_32 (input_bfd, - contents + offset + 4); - if (insn3 == NOP - || insn3 == CROR_151515 || insn3 == CROR_313131) - { - rel->r_offset += 4; - bfd_put_32 (input_bfd, insn2, contents + offset + 4); - insn2 = NOP; - } bfd_put_32 (input_bfd, insn2, contents + offset); goto again; } @@ -14647,11 +14704,6 @@ ppc64_elf_relocate_section (bfd *output_bfd, emitting a reloc. */ else { - int tlsopt - = (htab->params->tls_get_addr_opt - && htab->tls_get_addr_fd != NULL - && htab->tls_get_addr_fd->elf.plt.plist != NULL); - relocation += addend; if (tls_type != 0) { @@ -14663,8 +14715,7 @@ ppc64_elf_relocate_section (bfd *output_bfd, relocation = 0; else relocation -= htab->elf.tls_sec->vma + DTP_OFFSET; - if ((tls_type & TLS_TPREL) - || (tlsopt && !(tls_type & TLS_DTPREL))) + if (tls_type & TLS_TPREL) relocation += DTP_OFFSET - TP_OFFSET; } @@ -14672,7 +14723,7 @@ ppc64_elf_relocate_section (bfd *output_bfd, { bfd_put_64 (output_bfd, relocation, got->contents + off + 8); - relocation = !tlsopt; + relocation = 1; } } bfd_put_64 (output_bfd, relocation, @@ -14814,12 +14865,10 @@ ppc64_elf_relocate_section (bfd *output_bfd, } if (htab->elf.tls_sec != NULL) addend -= htab->elf.tls_sec->vma + TP_OFFSET; - if (bfd_link_pic (info)) - /* The TPREL16 relocs shouldn't really be used in shared - libs as they will result in DT_TEXTREL being set, but - support them anyway. */ - goto dodyn; - break; + /* The TPREL16 relocs shouldn't really be used in shared + libs or with non-local symbols as that will result in + DT_TEXTREL being set, but support them anyway. */ + goto dodyn; case R_PPC64_DTPREL16: case R_PPC64_DTPREL16_LO: @@ -15080,32 +15129,6 @@ ppc64_elf_relocate_section (bfd *output_bfd, addend = outrel.r_offset; } } - else if (r_type == R_PPC64_DTPMOD64 - && htab->params->tls_get_addr_opt - && htab->tls_get_addr_fd != NULL - && htab->tls_get_addr_fd->elf.plt.plist != NULL) - { - /* Set up for __tls_get_addr_opt stub, when this entry - does not have dynamic relocs. */ - relocation = 0; - /* Set up the next word for local dynamic. If it turns - out to be global dynamic, the reloc will overwrite - this value. */ - if (rel->r_offset + 16 <= input_section->size) - bfd_put_64 (input_bfd, DTP_OFFSET - TP_OFFSET, - contents + rel->r_offset + 8); - } - else if (r_type == R_PPC64_DTPREL64 - && htab->params->tls_get_addr_opt - && htab->tls_get_addr_fd != NULL - && htab->tls_get_addr_fd->elf.plt.plist != NULL - && rel > relocs - && rel[-1].r_info == ELF64_R_INFO (r_symndx, R_PPC64_DTPMOD64) - && rel[-1].r_offset + 8 == rel->r_offset) - { - /* __tls_get_addr_opt stub value. */ - addend += DTP_OFFSET - TP_OFFSET; - } break; case R_PPC64_COPY: @@ -15141,6 +15164,7 @@ ppc64_elf_relocate_section (bfd *output_bfd, /* Multi-instruction sequences that access the TOC can be optimized, eg. addis ra,r2,0; addi rb,ra,x; to nop; addi rb,r2,x; */ + howto = ppc64_elf_howto_table[(int) r_type]; switch (r_type) { default: @@ -15202,10 +15226,37 @@ ppc64_elf_relocate_section (bfd *output_bfd, bfd_put_32 (input_bfd, insn, p); } break; + + case R_PPC64_TPREL16_HA: + if (htab->do_tls_opt && relocation + addend + 0x8000 < 0x10000) + { + bfd_byte *p = contents + (rel->r_offset & ~3); + insn = bfd_get_32 (input_bfd, p); + if ((insn & ((0x3f << 26) | 0x1f << 16)) + != ((15u << 26) | (13 << 16)) /* addis rt,13,imm */) + /* xgettext:c-format */ + info->callbacks->minfo + (_("%H: warning: %s unexpected insn %#x.\n"), + input_bfd, input_section, rel->r_offset, howto->name, insn); + else + bfd_put_32 (input_bfd, NOP, p); + } + break; + + case R_PPC64_TPREL16_LO: + case R_PPC64_TPREL16_LO_DS: + if (htab->do_tls_opt && relocation + addend + 0x8000 < 0x10000) + { + bfd_byte *p = contents + (rel->r_offset & ~3); + insn = bfd_get_32 (input_bfd, p); + insn &= ~(0x1f << 16); + insn |= 13 << 16; + bfd_put_32 (input_bfd, insn, p); + } + break; } /* Do any further special processing. */ - howto = ppc64_elf_howto_table[(int) r_type]; switch (r_type) { default: @@ -15775,55 +15826,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 @@ -15831,15 +15867,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 @@ -15899,4 +15928,3 @@ ppc64_elf_finish_dynamic_sections (bfd *output_bfd, #define elf64_bed elf64_powerpc_fbsd_bed #include "elf64-target.h" - diff --git a/bfd/elf64-s390.c b/bfd/elf64-s390.c index f85f8cd..73d0331 100644 --- a/bfd/elf64-s390.c +++ b/bfd/elf64-s390.c @@ -863,7 +863,7 @@ elf_s390_check_relocs (bfd *abfd, for (rel = relocs; rel < rel_end; rel++) { unsigned int r_type; - unsigned long r_symndx; + unsigned int r_symndx; struct elf_link_hash_entry *h; Elf_Internal_Sym *isym; @@ -2254,10 +2254,10 @@ invalid_tls_insn (bfd *input_bfd, howto = elf_howto_table + ELF64_R_TYPE (rel->r_info); _bfd_error_handler /* xgettext:c-format */ - (_("%B(%A+0x%lx): invalid instruction for TLS relocation %s"), + (_("%B(%A+%#Lx): invalid instruction for TLS relocation %s"), input_bfd, input_section, - (long) rel->r_offset, + rel->r_offset, howto->name); bfd_set_error (bfd_error_bad_value); } @@ -3293,10 +3293,10 @@ elf_s390_relocate_section (bfd *output_bfd, rel->r_offset) != (bfd_vma) -1) _bfd_error_handler /* xgettext:c-format */ - (_("%B(%A+0x%lx): unresolvable %s relocation against symbol `%s'"), + (_("%B(%A+%#Lx): unresolvable %s relocation against symbol `%s'"), input_bfd, input_section, - (long) rel->r_offset, + rel->r_offset, howto->name, h->root.root.string); @@ -3350,9 +3350,9 @@ elf_s390_relocate_section (bfd *output_bfd, { _bfd_error_handler /* xgettext:c-format */ - (_("%B(%A+0x%lx): reloc against `%s': error %d"), + (_("%B(%A+%#Lx): reloc against `%s': error %d"), input_bfd, input_section, - (long) rel->r_offset, name, (int) r); + rel->r_offset, name, (int) r); return FALSE; } } @@ -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-sh64.c b/bfd/elf64-sh64.c index bc8e9e1..1cffb2e 100644 --- a/bfd/elf64-sh64.c +++ b/bfd/elf64-sh64.c @@ -1536,9 +1536,9 @@ sh_elf64_relocate_section (bfd *output_bfd ATTRIBUTE_UNUSED, { _bfd_error_handler /* xgettext:c-format */ - (_("%B(%A+0x%lx): %s relocation against SEC_MERGE section"), + (_("%B(%A+%#Lx): %s relocation against SEC_MERGE section"), input_bfd, input_section, - (long) rel->r_offset, howto->name); + rel->r_offset, howto->name); return FALSE; } @@ -1633,10 +1633,10 @@ sh_elf64_relocate_section (bfd *output_bfd ATTRIBUTE_UNUSED, { _bfd_error_handler /* xgettext:c-format */ - (_("%B(%A+0x%lx): unresolvable %s relocation against symbol `%s'"), + (_("%B(%A+%#Lx): unresolvable %s relocation against symbol `%s'"), input_bfd, input_section, - (long) rel->r_offset, + rel->r_offset, howto->name, h->root.root.string); } @@ -1677,9 +1677,9 @@ sh_elf64_relocate_section (bfd *output_bfd ATTRIBUTE_UNUSED, { _bfd_error_handler /* xgettext:c-format */ - (_("%B: error: unaligned relocation type %d at %08x reloc %08x\n"), - input_bfd, (int) r_type, (unsigned) rel->r_offset, - (unsigned) relocation); + (_("%B: error: unaligned relocation type %d at %08Lx reloc %08Lx"), + input_bfd, (int) r_type, rel->r_offset, + relocation); bfd_set_error (bfd_error_bad_value); return FALSE; } diff --git a/bfd/elf64-sparc.c b/bfd/elf64-sparc.c index 3e0772d..a7ad2bc 100644 --- a/bfd/elf64-sparc.c +++ b/bfd/elf64-sparc.c @@ -724,8 +724,8 @@ elf64_sparc_merge_private_bfd_data (bfd *ibfd, struct bfd_link_info *info) error = TRUE; _bfd_error_handler /* xgettext:c-format */ - (_("%B: uses different e_flags (0x%lx) fields than previous modules (0x%lx)"), - ibfd, (long) new_flags, (long) old_flags); + (_("%B: uses different e_flags (%#x) fields than previous modules (%#x)"), + ibfd, new_flags, old_flags); } elf_elfheader (obfd)->e_flags = old_flags; diff --git a/bfd/elf64-x86-64.c b/bfd/elf64-x86-64.c index 8cef9f5..84a2603 100644 --- a/bfd/elf64-x86-64.c +++ b/bfd/elf64-x86-64.c @@ -19,15 +19,8 @@ Foundation, Inc., 51 Franklin Street - Fifth Floor, Boston, MA 02110-1301, USA. */ -#include "sysdep.h" -#include "bfd.h" -#include "bfdlink.h" -#include "libbfd.h" -#include "elf-bfd.h" +#include "elfxx-x86.h" #include "elf-nacl.h" -#include "bfd_stdint.h" -#include "objalloc.h" -#include "hashtab.h" #include "dwarf2.h" #include "libiberty.h" @@ -47,9 +40,6 @@ relocation type. We also use ELF_ST_TYPE instead of ELF64_ST_TYPE since they are the same. */ -#define ABI_64_P(abfd) \ - (get_elf_backend_data (abfd)->s->elfclass == ELFCLASS64) - /* The relocation "howto" table. Order of fields: type, rightshift, size, bitsize, pc_relative, bitpos, complain_on_overflow, special_function, name, partial_inplace, src_mask, dst_mask, pcrel_offset. */ @@ -206,6 +196,9 @@ static reloc_howto_type x86_64_elf_howto_table[] = FALSE) }; +/* Set if a relocation is converted from a GOTPCREL relocation. */ +#define R_X86_64_converted_reloc_bit (1 << 7) + #define IS_X86_64_PCREL_TYPE(TYPE) \ ( ((TYPE) == R_X86_64_PC8) \ || ((TYPE) == R_X86_64_PC16) \ @@ -347,6 +340,9 @@ elf_x86_64_info_to_howto (bfd *abfd ATTRIBUTE_UNUSED, arelent *cache_ptr, unsigned r_type; r_type = ELF32_R_TYPE (dst->r_info); + if (r_type != (unsigned int) R_X86_64_GNU_VTINHERIT + && r_type != (unsigned int) R_X86_64_GNU_VTENTRY) + r_type &= ~R_X86_64_converted_reloc_bit; cache_ptr->howto = elf_x86_64_rtype_to_howto (abfd, r_type); BFD_ASSERT (r_type == cache_ptr->howto->type); } @@ -528,18 +524,6 @@ elf_x86_64_write_core_note (bfd *abfd, char *buf, int *bufsiz, /* Functions for the x86-64 ELF linker. */ -/* The name of the dynamic interpreter. This is put in the .interp - section. */ - -#define ELF64_DYNAMIC_INTERPRETER "/lib/ld64.so.1" -#define ELF32_DYNAMIC_INTERPRETER "/lib/ldx32.so.1" - -/* If ELIMINATE_COPY_RELOCS is non-zero, the linker will try to avoid - copying dynamic variables from a shared lib into an app's dynbss - section, and instead use a dynamic relocation to point into the - shared lib. */ -#define ELIMINATE_COPY_RELOCS 1 - /* The size in bytes of an entry in the global offset table. */ #define GOT_ENTRY_SIZE 8 @@ -611,7 +595,7 @@ static const bfd_byte elf_x86_64_lazy_ibt_plt_entry[LAZY_PLT_ENTRY_SIZE] = }; /* The first entry in the x32 IBT-enabled lazy procedure linkage table - is the the same as the normal lazy PLT. Subsequent entries for an + is the same as the normal lazy PLT. Subsequent entries for an x32 IBT-enabled lazy procedure linkage table look like this. */ static const bfd_byte elf_x32_lazy_ibt_plt_entry[LAZY_PLT_ENTRY_SIZE] = @@ -669,10 +653,6 @@ static const bfd_byte elf_x32_non_lazy_ibt_plt_entry[LAZY_PLT_ENTRY_SIZE] = static const bfd_byte elf_x86_64_eh_frame_lazy_plt[] = { -#define PLT_CIE_LENGTH 20 -#define PLT_FDE_LENGTH 36 -#define PLT_FDE_START_OFFSET 4 + PLT_CIE_LENGTH + 8 -#define PLT_FDE_LEN_OFFSET 4 + PLT_CIE_LENGTH + 12 PLT_CIE_LENGTH, 0, 0, 0, /* CIE length */ 0, 0, 0, 0, /* CIE ID */ 1, /* CIE version */ @@ -836,77 +816,6 @@ static const bfd_byte elf_x86_64_eh_frame_non_lazy_plt[] = DW_CFA_nop, DW_CFA_nop, DW_CFA_nop }; -struct elf_x86_64_lazy_plt_layout -{ - /* Templates for the initial PLT entry and for subsequent entries. */ - const bfd_byte *plt0_entry; - const bfd_byte *plt_entry; - unsigned int plt_entry_size; /* Size of each PLT entry. */ - - /* Offsets into plt0_entry that are to be replaced with GOT[1] and GOT[2]. */ - unsigned int plt0_got1_offset; - unsigned int plt0_got2_offset; - - /* Offset of the end of the PC-relative instruction containing - plt0_got2_offset. */ - unsigned int plt0_got2_insn_end; - - /* Offsets into plt_entry that are to be replaced with... */ - unsigned int plt_got_offset; /* ... address of this symbol in .got. */ - unsigned int plt_reloc_offset; /* ... offset into relocation table. */ - unsigned int plt_plt_offset; /* ... offset to start of .plt. */ - - /* Length of the PC-relative instruction containing plt_got_offset. */ - unsigned int plt_got_insn_size; - - /* Offset of the end of the PC-relative jump to plt0_entry. */ - unsigned int plt_plt_insn_end; - - /* Offset into plt_entry where the initial value of the GOT entry points. */ - unsigned int plt_lazy_offset; - - /* .eh_frame covering the lazy .plt section. */ - const bfd_byte *eh_frame_plt; - unsigned int eh_frame_plt_size; -}; - -struct elf_x86_64_non_lazy_plt_layout -{ - /* Template for the lazy PLT entries. */ - const bfd_byte *plt_entry; - unsigned int plt_entry_size; /* Size of each PLT entry. */ - - /* Offsets into plt_entry that are to be replaced with... */ - unsigned int plt_got_offset; /* ... address of this symbol in .got. */ - - /* Length of the PC-relative instruction containing plt_got_offset. */ - unsigned int plt_got_insn_size; - - /* .eh_frame covering the non-lazy .plt section. */ - const bfd_byte *eh_frame_plt; - unsigned int eh_frame_plt_size; -}; - -struct elf_x86_64_plt_layout -{ - /* Template for the PLT entries. */ - const bfd_byte *plt_entry; - unsigned int plt_entry_size; /* Size of each PLT entry. */ - - /* 1 has PLT0. */ - unsigned int has_plt0; - - /* Offsets into plt_entry that are to be replaced with... */ - unsigned int plt_got_offset; /* ... address of this symbol in .got. */ - - /* Length of the PC-relative instruction containing plt_got_offset. */ - unsigned int plt_got_insn_size; - - /* .eh_frame covering the .plt section. */ - const bfd_byte *eh_frame_plt; - unsigned int eh_frame_plt_size; -}; - /* Architecture-specific backend data for x86-64. */ struct elf_x86_64_backend_data @@ -926,9 +835,10 @@ struct elf_x86_64_backend_data get_elf_x86_64_arch_data (get_elf_backend_data (abfd)) /* These are the standard parameters. */ -static const struct elf_x86_64_lazy_plt_layout elf_x86_64_lazy_plt = +static const struct elf_x86_lazy_plt_layout elf_x86_64_lazy_plt = { elf_x86_64_lazy_plt0_entry, /* plt0_entry */ + LAZY_PLT_ENTRY_SIZE, /* plt0_entry_size */ elf_x86_64_lazy_plt_entry, /* plt_entry */ LAZY_PLT_ENTRY_SIZE, /* plt_entry_size */ 2, /* plt0_got1_offset */ @@ -940,13 +850,16 @@ static const struct elf_x86_64_lazy_plt_layout elf_x86_64_lazy_plt = 6, /* plt_got_insn_size */ LAZY_PLT_ENTRY_SIZE, /* plt_plt_insn_end */ 6, /* plt_lazy_offset */ + elf_x86_64_lazy_plt0_entry, /* pic_plt0_entry */ + elf_x86_64_lazy_plt_entry, /* pic_plt_entry */ elf_x86_64_eh_frame_lazy_plt, /* eh_frame_plt */ sizeof (elf_x86_64_eh_frame_lazy_plt) /* eh_frame_plt_size */ }; -static const struct elf_x86_64_non_lazy_plt_layout elf_x86_64_non_lazy_plt = +static const struct elf_x86_non_lazy_plt_layout elf_x86_64_non_lazy_plt = { elf_x86_64_non_lazy_plt_entry, /* plt_entry */ + elf_x86_64_non_lazy_plt_entry, /* pic_plt_entry */ NON_LAZY_PLT_ENTRY_SIZE, /* plt_entry_size */ 2, /* plt_got_offset */ 6, /* plt_got_insn_size */ @@ -954,9 +867,10 @@ static const struct elf_x86_64_non_lazy_plt_layout elf_x86_64_non_lazy_plt = sizeof (elf_x86_64_eh_frame_non_lazy_plt) /* eh_frame_plt_size */ }; -static const struct elf_x86_64_lazy_plt_layout elf_x86_64_lazy_bnd_plt = +static const struct elf_x86_lazy_plt_layout elf_x86_64_lazy_bnd_plt = { elf_x86_64_lazy_bnd_plt0_entry, /* plt0_entry */ + LAZY_PLT_ENTRY_SIZE, /* plt0_entry_size */ elf_x86_64_lazy_bnd_plt_entry, /* plt_entry */ LAZY_PLT_ENTRY_SIZE, /* plt_entry_size */ 2, /* plt0_got1_offset */ @@ -968,13 +882,16 @@ static const struct elf_x86_64_lazy_plt_layout elf_x86_64_lazy_bnd_plt = 1+6, /* plt_got_insn_size */ 11, /* plt_plt_insn_end */ 0, /* plt_lazy_offset */ + elf_x86_64_lazy_bnd_plt0_entry, /* pic_plt0_entry */ + elf_x86_64_lazy_bnd_plt_entry, /* pic_plt_entry */ elf_x86_64_eh_frame_lazy_bnd_plt, /* eh_frame_plt */ sizeof (elf_x86_64_eh_frame_lazy_bnd_plt) /* eh_frame_plt_size */ }; -static const struct elf_x86_64_non_lazy_plt_layout elf_x86_64_non_lazy_bnd_plt = +static const struct elf_x86_non_lazy_plt_layout elf_x86_64_non_lazy_bnd_plt = { elf_x86_64_non_lazy_bnd_plt_entry, /* plt_entry */ + elf_x86_64_non_lazy_bnd_plt_entry, /* pic_plt_entry */ NON_LAZY_PLT_ENTRY_SIZE, /* plt_entry_size */ 1+2, /* plt_got_offset */ 1+6, /* plt_got_insn_size */ @@ -982,9 +899,10 @@ static const struct elf_x86_64_non_lazy_plt_layout elf_x86_64_non_lazy_bnd_plt = sizeof (elf_x86_64_eh_frame_non_lazy_plt) /* eh_frame_plt_size */ }; -static const struct elf_x86_64_lazy_plt_layout elf_x86_64_lazy_ibt_plt = +static const struct elf_x86_lazy_plt_layout elf_x86_64_lazy_ibt_plt = { elf_x86_64_lazy_bnd_plt0_entry, /* plt0_entry */ + LAZY_PLT_ENTRY_SIZE, /* plt0_entry_size */ elf_x86_64_lazy_ibt_plt_entry, /* plt_entry */ LAZY_PLT_ENTRY_SIZE, /* plt_entry_size */ 2, /* plt0_got1_offset */ @@ -996,13 +914,16 @@ static const struct elf_x86_64_lazy_plt_layout elf_x86_64_lazy_ibt_plt = 4+1+6, /* plt_got_insn_size */ 4+1+5+5, /* plt_plt_insn_end */ 0, /* plt_lazy_offset */ + elf_x86_64_lazy_bnd_plt0_entry, /* pic_plt0_entry */ + elf_x86_64_lazy_ibt_plt_entry, /* pic_plt_entry */ elf_x86_64_eh_frame_lazy_ibt_plt, /* eh_frame_plt */ sizeof (elf_x86_64_eh_frame_lazy_ibt_plt) /* eh_frame_plt_size */ }; -static const struct elf_x86_64_lazy_plt_layout elf_x32_lazy_ibt_plt = +static const struct elf_x86_lazy_plt_layout elf_x32_lazy_ibt_plt = { elf_x86_64_lazy_plt0_entry, /* plt0_entry */ + LAZY_PLT_ENTRY_SIZE, /* plt0_entry_size */ elf_x32_lazy_ibt_plt_entry, /* plt_entry */ LAZY_PLT_ENTRY_SIZE, /* plt_entry_size */ 2, /* plt0_got1_offset */ @@ -1014,13 +935,16 @@ static const struct elf_x86_64_lazy_plt_layout elf_x32_lazy_ibt_plt = 4+6, /* plt_got_insn_size */ 4+5+5, /* plt_plt_insn_end */ 0, /* plt_lazy_offset */ + elf_x86_64_lazy_plt0_entry, /* pic_plt0_entry */ + elf_x32_lazy_ibt_plt_entry, /* pic_plt_entry */ elf_x32_eh_frame_lazy_ibt_plt, /* eh_frame_plt */ sizeof (elf_x32_eh_frame_lazy_ibt_plt) /* eh_frame_plt_size */ }; -static const struct elf_x86_64_non_lazy_plt_layout elf_x86_64_non_lazy_ibt_plt = +static const struct elf_x86_non_lazy_plt_layout elf_x86_64_non_lazy_ibt_plt = { elf_x86_64_non_lazy_ibt_plt_entry, /* plt_entry */ + elf_x86_64_non_lazy_ibt_plt_entry, /* pic_plt_entry */ LAZY_PLT_ENTRY_SIZE, /* plt_entry_size */ 4+1+2, /* plt_got_offset */ 4+1+6, /* plt_got_insn_size */ @@ -1028,9 +952,10 @@ static const struct elf_x86_64_non_lazy_plt_layout elf_x86_64_non_lazy_ibt_plt = sizeof (elf_x86_64_eh_frame_non_lazy_plt) /* eh_frame_plt_size */ }; -static const struct elf_x86_64_non_lazy_plt_layout elf_x32_non_lazy_ibt_plt = +static const struct elf_x86_non_lazy_plt_layout elf_x32_non_lazy_ibt_plt = { elf_x32_non_lazy_ibt_plt_entry, /* plt_entry */ + elf_x32_non_lazy_ibt_plt_entry, /* pic_plt_entry */ LAZY_PLT_ENTRY_SIZE, /* plt_entry_size */ 4+2, /* plt_got_offset */ 4+6, /* plt_got_insn_size */ @@ -1045,451 +970,6 @@ static const struct elf_x86_64_backend_data elf_x86_64_arch_bed = #define elf_backend_arch_data &elf_x86_64_arch_bed -/* Is a undefined weak symbol which is resolved to 0. Reference to an - undefined weak symbol is resolved to 0 when building executable if - it isn't dynamic and - 1. Has non-GOT/non-PLT relocations in text section. Or - 2. Has no GOT/PLT relocation. - Local undefined weak symbol is always resolved to 0. - */ -#define UNDEFINED_WEAK_RESOLVED_TO_ZERO(INFO, GOT_RELOC, EH) \ - ((EH)->elf.root.type == bfd_link_hash_undefweak \ - && ((EH)->elf.forced_local \ - || (bfd_link_executable (INFO) \ - && (elf_x86_64_hash_table (INFO)->interp == NULL \ - || !(GOT_RELOC) \ - || (EH)->has_non_got_reloc \ - || !(INFO)->dynamic_undefined_weak)))) - -/* x86-64 ELF linker hash entry. */ - -struct elf_x86_64_link_hash_entry -{ - struct elf_link_hash_entry elf; - - /* Track dynamic relocs copied for this symbol. */ - struct elf_dyn_relocs *dyn_relocs; - -#define GOT_UNKNOWN 0 -#define GOT_NORMAL 1 -#define GOT_TLS_GD 2 -#define GOT_TLS_IE 3 -#define GOT_TLS_GDESC 4 -#define GOT_TLS_GD_BOTH_P(type) \ - ((type) == (GOT_TLS_GD | GOT_TLS_GDESC)) -#define GOT_TLS_GD_P(type) \ - ((type) == GOT_TLS_GD || GOT_TLS_GD_BOTH_P (type)) -#define GOT_TLS_GDESC_P(type) \ - ((type) == GOT_TLS_GDESC || GOT_TLS_GD_BOTH_P (type)) -#define GOT_TLS_GD_ANY_P(type) \ - (GOT_TLS_GD_P (type) || GOT_TLS_GDESC_P (type)) - unsigned char tls_type; - - /* TRUE if a weak symbol with a real definition needs a copy reloc. - When there is a weak symbol with a real definition, the processor - independent code will have arranged for us to see the real - definition first. We need to copy the needs_copy bit from the - real definition and check it when allowing copy reloc in PIE. */ - unsigned int needs_copy : 1; - - /* TRUE if symbol has GOT or PLT relocations. */ - unsigned int has_got_reloc : 1; - - /* TRUE if symbol has non-GOT/non-PLT relocations in text sections. */ - unsigned int has_non_got_reloc : 1; - - /* Don't call finish_dynamic_symbol on this symbol. */ - unsigned int no_finish_dynamic_symbol : 1; - - /* 0: symbol isn't __tls_get_addr. - 1: symbol is __tls_get_addr. - 2: symbol is unknown. */ - unsigned int tls_get_addr : 2; - - /* Reference count of C/C++ function pointer relocations in read-write - section which can be resolved at run-time. */ - bfd_signed_vma func_pointer_refcount; - - /* Information about the GOT PLT entry. Filled when there are both - GOT and PLT relocations against the same function. */ - union gotplt_union plt_got; - - /* Information about the second PLT entry. */ - union gotplt_union plt_second; - - /* Offset of the GOTPLT entry reserved for the TLS descriptor, - starting at the end of the jump table. */ - bfd_vma tlsdesc_got; -}; - -#define elf_x86_64_hash_entry(ent) \ - ((struct elf_x86_64_link_hash_entry *)(ent)) - -struct elf_x86_64_obj_tdata -{ - struct elf_obj_tdata root; - - /* tls_type for each local got entry. */ - char *local_got_tls_type; - - /* GOTPLT entries for TLS descriptors. */ - bfd_vma *local_tlsdesc_gotent; -}; - -#define elf_x86_64_tdata(abfd) \ - ((struct elf_x86_64_obj_tdata *) (abfd)->tdata.any) - -#define elf_x86_64_local_got_tls_type(abfd) \ - (elf_x86_64_tdata (abfd)->local_got_tls_type) - -#define elf_x86_64_local_tlsdesc_gotent(abfd) \ - (elf_x86_64_tdata (abfd)->local_tlsdesc_gotent) - -#define is_x86_64_elf(bfd) \ - (bfd_get_flavour (bfd) == bfd_target_elf_flavour \ - && elf_tdata (bfd) != NULL \ - && elf_object_id (bfd) == X86_64_ELF_DATA) - -static bfd_boolean -elf_x86_64_mkobject (bfd *abfd) -{ - return bfd_elf_allocate_object (abfd, sizeof (struct elf_x86_64_obj_tdata), - X86_64_ELF_DATA); -} - -/* x86-64 ELF linker hash table. */ - -struct elf_x86_64_link_hash_table -{ - struct elf_link_hash_table elf; - - /* Short-cuts to get to dynamic linker sections. */ - asection *interp; - asection *plt_eh_frame; - asection *plt_second; - asection *plt_second_eh_frame; - asection *plt_got; - asection *plt_got_eh_frame; - - /* Parameters describing PLT generation, lazy or non-lazy. */ - struct elf_x86_64_plt_layout plt; - - /* Parameters describing lazy PLT generation. */ - const struct elf_x86_64_lazy_plt_layout *lazy_plt; - - /* Parameters describing non-lazy PLT generation. */ - const struct elf_x86_64_non_lazy_plt_layout *non_lazy_plt; - - union - { - bfd_signed_vma refcount; - bfd_vma offset; - } tls_ld_got; - - /* The amount of space used by the jump slots in the GOT. */ - bfd_vma sgotplt_jump_table_size; - - /* Small local sym cache. */ - struct sym_cache sym_cache; - - bfd_vma (*r_info) (bfd_vma, bfd_vma); - bfd_vma (*r_sym) (bfd_vma); - unsigned int pointer_r_type; - const char *dynamic_interpreter; - int dynamic_interpreter_size; - - /* _TLS_MODULE_BASE_ symbol. */ - struct bfd_link_hash_entry *tls_module_base; - - /* Used by local STT_GNU_IFUNC symbols. */ - htab_t loc_hash_table; - void * loc_hash_memory; - - /* The offset into splt of the PLT entry for the TLS descriptor - resolver. Special values are 0, if not necessary (or not found - to be necessary yet), and -1 if needed but not determined - yet. */ - bfd_vma tlsdesc_plt; - /* The offset into sgot of the GOT entry used by the PLT entry - above. */ - bfd_vma tlsdesc_got; - - /* The index of the next R_X86_64_JUMP_SLOT entry in .rela.plt. */ - bfd_vma next_jump_slot_index; - /* The index of the next R_X86_64_IRELATIVE entry in .rela.plt. */ - bfd_vma next_irelative_index; - - /* TRUE if there are dynamic relocs against IFUNC symbols that apply - to read-only sections. */ - bfd_boolean readonly_dynrelocs_against_ifunc; -}; - -/* Get the x86-64 ELF linker hash table from a link_info structure. */ - -#define elf_x86_64_hash_table(p) \ - (elf_hash_table_id ((struct elf_link_hash_table *) ((p)->hash)) \ - == X86_64_ELF_DATA ? ((struct elf_x86_64_link_hash_table *) ((p)->hash)) : NULL) - -#define elf_x86_64_compute_jump_table_size(htab) \ - ((htab)->elf.srelplt->reloc_count * GOT_ENTRY_SIZE) - -/* Create an entry in an x86-64 ELF linker hash table. */ - -static struct bfd_hash_entry * -elf_x86_64_link_hash_newfunc (struct bfd_hash_entry *entry, - struct bfd_hash_table *table, - const char *string) -{ - /* Allocate the structure if it has not already been allocated by a - subclass. */ - if (entry == NULL) - { - entry = (struct bfd_hash_entry *) - bfd_hash_allocate (table, - sizeof (struct elf_x86_64_link_hash_entry)); - if (entry == NULL) - return entry; - } - - /* Call the allocation method of the superclass. */ - entry = _bfd_elf_link_hash_newfunc (entry, table, string); - if (entry != NULL) - { - struct elf_x86_64_link_hash_entry *eh; - - eh = (struct elf_x86_64_link_hash_entry *) entry; - eh->dyn_relocs = NULL; - eh->tls_type = GOT_UNKNOWN; - eh->needs_copy = 0; - eh->has_got_reloc = 0; - eh->has_non_got_reloc = 0; - eh->no_finish_dynamic_symbol = 0; - eh->tls_get_addr = 2; - eh->func_pointer_refcount = 0; - eh->plt_second.offset = (bfd_vma) -1; - eh->plt_got.offset = (bfd_vma) -1; - eh->tlsdesc_got = (bfd_vma) -1; - } - - return entry; -} - -/* Compute a hash of a local hash entry. We use elf_link_hash_entry - for local symbol so that we can handle local STT_GNU_IFUNC symbols - as global symbol. We reuse indx and dynstr_index for local symbol - hash since they aren't used by global symbols in this backend. */ - -static hashval_t -elf_x86_64_local_htab_hash (const void *ptr) -{ - struct elf_link_hash_entry *h - = (struct elf_link_hash_entry *) ptr; - return ELF_LOCAL_SYMBOL_HASH (h->indx, h->dynstr_index); -} - -/* Compare local hash entries. */ - -static int -elf_x86_64_local_htab_eq (const void *ptr1, const void *ptr2) -{ - struct elf_link_hash_entry *h1 - = (struct elf_link_hash_entry *) ptr1; - struct elf_link_hash_entry *h2 - = (struct elf_link_hash_entry *) ptr2; - - return h1->indx == h2->indx && h1->dynstr_index == h2->dynstr_index; -} - -/* Find and/or create a hash entry for local symbol. */ - -static struct elf_link_hash_entry * -elf_x86_64_get_local_sym_hash (struct elf_x86_64_link_hash_table *htab, - bfd *abfd, const Elf_Internal_Rela *rel, - bfd_boolean create) -{ - struct elf_x86_64_link_hash_entry e, *ret; - asection *sec = abfd->sections; - hashval_t h = ELF_LOCAL_SYMBOL_HASH (sec->id, - htab->r_sym (rel->r_info)); - void **slot; - - e.elf.indx = sec->id; - e.elf.dynstr_index = htab->r_sym (rel->r_info); - slot = htab_find_slot_with_hash (htab->loc_hash_table, &e, h, - create ? INSERT : NO_INSERT); - - if (!slot) - return NULL; - - if (*slot) - { - ret = (struct elf_x86_64_link_hash_entry *) *slot; - return &ret->elf; - } - - ret = (struct elf_x86_64_link_hash_entry *) - objalloc_alloc ((struct objalloc *) htab->loc_hash_memory, - sizeof (struct elf_x86_64_link_hash_entry)); - if (ret) - { - memset (ret, 0, sizeof (*ret)); - ret->elf.indx = sec->id; - ret->elf.dynstr_index = htab->r_sym (rel->r_info); - ret->elf.dynindx = -1; - ret->func_pointer_refcount = 0; - ret->plt_got.offset = (bfd_vma) -1; - *slot = ret; - } - return &ret->elf; -} - -/* Destroy an X86-64 ELF linker hash table. */ - -static void -elf_x86_64_link_hash_table_free (bfd *obfd) -{ - struct elf_x86_64_link_hash_table *htab - = (struct elf_x86_64_link_hash_table *) obfd->link.hash; - - if (htab->loc_hash_table) - htab_delete (htab->loc_hash_table); - if (htab->loc_hash_memory) - objalloc_free ((struct objalloc *) htab->loc_hash_memory); - _bfd_elf_link_hash_table_free (obfd); -} - -/* Create an X86-64 ELF linker hash table. */ - -static struct bfd_link_hash_table * -elf_x86_64_link_hash_table_create (bfd *abfd) -{ - struct elf_x86_64_link_hash_table *ret; - bfd_size_type amt = sizeof (struct elf_x86_64_link_hash_table); - - ret = (struct elf_x86_64_link_hash_table *) bfd_zmalloc (amt); - if (ret == NULL) - return NULL; - - if (!_bfd_elf_link_hash_table_init (&ret->elf, abfd, - elf_x86_64_link_hash_newfunc, - sizeof (struct elf_x86_64_link_hash_entry), - X86_64_ELF_DATA)) - { - free (ret); - return NULL; - } - - if (ABI_64_P (abfd)) - { - ret->r_info = elf64_r_info; - ret->r_sym = elf64_r_sym; - ret->pointer_r_type = R_X86_64_64; - ret->dynamic_interpreter = ELF64_DYNAMIC_INTERPRETER; - ret->dynamic_interpreter_size = sizeof ELF64_DYNAMIC_INTERPRETER; - } - else - { - ret->r_info = elf32_r_info; - ret->r_sym = elf32_r_sym; - ret->pointer_r_type = R_X86_64_32; - ret->dynamic_interpreter = ELF32_DYNAMIC_INTERPRETER; - ret->dynamic_interpreter_size = sizeof ELF32_DYNAMIC_INTERPRETER; - } - - ret->loc_hash_table = htab_try_create (1024, - elf_x86_64_local_htab_hash, - elf_x86_64_local_htab_eq, - NULL); - ret->loc_hash_memory = objalloc_create (); - if (!ret->loc_hash_table || !ret->loc_hash_memory) - { - elf_x86_64_link_hash_table_free (abfd); - return NULL; - } - ret->elf.root.hash_table_free = elf_x86_64_link_hash_table_free; - - return &ret->elf.root; -} - -/* Copy the extra info we tack onto an elf_link_hash_entry. */ - -static void -elf_x86_64_copy_indirect_symbol (struct bfd_link_info *info, - struct elf_link_hash_entry *dir, - struct elf_link_hash_entry *ind) -{ - struct elf_x86_64_link_hash_entry *edir, *eind; - - edir = (struct elf_x86_64_link_hash_entry *) dir; - eind = (struct elf_x86_64_link_hash_entry *) ind; - - edir->has_got_reloc |= eind->has_got_reloc; - edir->has_non_got_reloc |= eind->has_non_got_reloc; - - if (eind->dyn_relocs != NULL) - { - if (edir->dyn_relocs != NULL) - { - struct elf_dyn_relocs **pp; - struct elf_dyn_relocs *p; - - /* Add reloc counts against the indirect sym to the direct sym - list. Merge any entries against the same section. */ - for (pp = &eind->dyn_relocs; (p = *pp) != NULL; ) - { - struct elf_dyn_relocs *q; - - for (q = edir->dyn_relocs; q != NULL; q = q->next) - if (q->sec == p->sec) - { - q->pc_count += p->pc_count; - q->count += p->count; - *pp = p->next; - break; - } - if (q == NULL) - pp = &p->next; - } - *pp = edir->dyn_relocs; - } - - edir->dyn_relocs = eind->dyn_relocs; - eind->dyn_relocs = NULL; - } - - if (ind->root.type == bfd_link_hash_indirect - && dir->got.refcount <= 0) - { - edir->tls_type = eind->tls_type; - eind->tls_type = GOT_UNKNOWN; - } - - if (ELIMINATE_COPY_RELOCS - && ind->root.type != bfd_link_hash_indirect - && dir->dynamic_adjusted) - { - /* If called to transfer flags for a weakdef during processing - of elf_adjust_dynamic_symbol, don't copy non_got_ref. - We clear it ourselves for ELIMINATE_COPY_RELOCS. */ - if (dir->versioned != versioned_hidden) - dir->ref_dynamic |= ind->ref_dynamic; - dir->ref_regular |= ind->ref_regular; - dir->ref_regular_nonweak |= ind->ref_regular_nonweak; - dir->needs_plt |= ind->needs_plt; - dir->pointer_equality_needed |= ind->pointer_equality_needed; - } - else - { - if (eind->func_pointer_refcount > 0) - { - edir->func_pointer_refcount += eind->func_pointer_refcount; - eind->func_pointer_refcount = 0; - } - - _bfd_elf_link_hash_copy_indirect (info, dir, ind); - } -} - static bfd_boolean elf64_x86_64_elf_object_p (bfd *abfd) { @@ -1525,11 +1005,11 @@ elf_x86_64_check_tls_transition (bfd *abfd, bfd_boolean largepic = FALSE; struct elf_link_hash_entry *h; bfd_vma offset; - struct elf_x86_64_link_hash_table *htab; + struct elf_x86_link_hash_table *htab; bfd_byte *call; - bfd_boolean indirect_call, tls_get_addr; + bfd_boolean indirect_call; - htab = elf_x86_64_hash_table (info); + htab = elf_x86_hash_table (info, X86_64_ELF_DATA); offset = rel->r_offset; switch (r_type) { @@ -1667,37 +1147,21 @@ elf_x86_64_check_tls_transition (bfd *abfd, if (r_symndx < symtab_hdr->sh_info) return FALSE; - tls_get_addr = FALSE; h = sym_hashes[r_symndx - symtab_hdr->sh_info]; - if (h != NULL && h->root.root.string != NULL) - { - struct elf_x86_64_link_hash_entry *eh - = (struct elf_x86_64_link_hash_entry *) h; - tls_get_addr = eh->tls_get_addr == 1; - if (eh->tls_get_addr > 1) - { - /* Use strncmp to check __tls_get_addr since - __tls_get_addr may be versioned. */ - if (strncmp (h->root.root.string, "__tls_get_addr", 14) - == 0) - { - eh->tls_get_addr = 1; - tls_get_addr = TRUE; - } - else - eh->tls_get_addr = 0; - } - } - - if (!tls_get_addr) + if (h == NULL + || !((struct elf_x86_link_hash_entry *) h)->tls_get_addr) return FALSE; - else if (largepic) - return ELF32_R_TYPE (rel[1].r_info) == R_X86_64_PLTOFF64; - else if (indirect_call) - return ELF32_R_TYPE (rel[1].r_info) == R_X86_64_GOTPCRELX; else - return (ELF32_R_TYPE (rel[1].r_info) == R_X86_64_PC32 - || ELF32_R_TYPE (rel[1].r_info) == R_X86_64_PLT32); + { + r_type = (ELF32_R_TYPE (rel[1].r_info) + & ~R_X86_64_converted_reloc_bit); + if (largepic) + return r_type == R_X86_64_PLTOFF64; + else if (indirect_call) + return r_type == R_X86_64_GOTPCRELX; + else + return (r_type == R_X86_64_PC32 || r_type == R_X86_64_PLT32); + } case R_X86_64_GOTTPOFF: /* Check transition from IE access model: @@ -1868,9 +1332,9 @@ elf_x86_64_tls_transition (struct bfd_link_info *info, bfd *abfd, name = h->root.root.string; else { - struct elf_x86_64_link_hash_table *htab; + struct elf_x86_link_hash_table *htab; - htab = elf_x86_64_hash_table (info); + htab = elf_x86_hash_table (info, X86_64_ELF_DATA); if (htab == NULL) name = "*unknown*"; else @@ -1885,10 +1349,9 @@ elf_x86_64_tls_transition (struct bfd_link_info *info, bfd *abfd, _bfd_error_handler /* xgettext:c-format */ - (_("%B: TLS transition from %s to %s against `%s' at 0x%lx " + (_("%B: TLS transition from %s to %s against `%s' at %#Lx " "in section `%A' failed"), - abfd, from->name, to->name, name, - (unsigned long) rel->r_offset, sec); + abfd, from->name, to->name, name, rel->r_offset, sec); bfd_set_error (bfd_error_bad_value); return FALSE; } @@ -1899,11 +1362,11 @@ elf_x86_64_tls_transition (struct bfd_link_info *info, bfd *abfd, /* Rename some of the generic section flags to better document how they are used here. */ -#define need_convert_load sec_flg0 -#define check_relocs_failed sec_flg1 +#define check_relocs_failed sec_flg0 static bfd_boolean -elf_x86_64_need_pic (bfd *input_bfd, asection *sec, +elf_x86_64_need_pic (struct bfd_link_info *info, + bfd *input_bfd, asection *sec, struct elf_link_hash_entry *h, Elf_Internal_Shdr *symtab_hdr, Elf_Internal_Sym *isym, @@ -1912,6 +1375,7 @@ elf_x86_64_need_pic (bfd *input_bfd, asection *sec, const char *v = ""; const char *und = ""; const char *pic = ""; + const char *object; const char *name; if (h) @@ -1929,7 +1393,10 @@ elf_x86_64_need_pic (bfd *input_bfd, asection *sec, v = _("protected symbol "); break; default: - v = _("symbol "); + if (((struct elf_x86_link_hash_entry *) h)->def_protected) + v = _("protected symbol "); + else + v = _("symbol "); pic = _("; recompile with -fPIC"); break; } @@ -1943,10 +1410,18 @@ elf_x86_64_need_pic (bfd *input_bfd, asection *sec, pic = _("; recompile with -fPIC"); } + if (bfd_link_dll (info)) + object = _("a shared object"); + else if (bfd_link_pie (info)) + object = _("a PIE object"); + else + object = _("a PDE object"); + /* xgettext:c-format */ _bfd_error_handler (_("%B: relocation %s against %s%s`%s' can " - "not be used when making a shared object%s"), - input_bfd, howto->name, und, v, name, pic); + "not be used when making %s%s"), + input_bfd, howto->name, und, v, name, + object, pic); bfd_set_error (bfd_error_bad_value); sec->check_relocs_failed = 1; return FALSE; @@ -1972,26 +1447,25 @@ elf_x86_64_need_pic (bfd *input_bfd, asection *sec, instructions. */ static bfd_boolean -elf_x86_64_convert_load_reloc (bfd *abfd, asection *sec, +elf_x86_64_convert_load_reloc (bfd *abfd, bfd_byte *contents, + unsigned int *r_type_p, Elf_Internal_Rela *irel, struct elf_link_hash_entry *h, bfd_boolean *converted, struct bfd_link_info *link_info) { - struct elf_x86_64_link_hash_table *htab; + struct elf_x86_link_hash_table *htab; bfd_boolean is_pic; - bfd_boolean require_reloc_pc32; + bfd_boolean no_overflow; bfd_boolean relocx; bfd_boolean to_reloc_pc32; asection *tsec; - char symtype; bfd_signed_vma raddend; unsigned int opcode; unsigned int modrm; - unsigned int r_type = ELF32_R_TYPE (irel->r_info); + unsigned int r_type = *r_type_p; unsigned int r_symndx; - bfd_vma toff; bfd_vma roff = irel->r_offset; if (roff < (r_type == R_X86_64_REX_GOTPCRELX ? 3 : 2)) @@ -2002,16 +1476,14 @@ elf_x86_64_convert_load_reloc (bfd *abfd, asection *sec, if (raddend != -4) return TRUE; - htab = elf_x86_64_hash_table (link_info); + htab = elf_x86_hash_table (link_info, X86_64_ELF_DATA); is_pic = bfd_link_pic (link_info); relocx = (r_type == R_X86_64_GOTPCRELX || r_type == R_X86_64_REX_GOTPCRELX); - /* TRUE if we can convert only to R_X86_64_PC32. Enable it for - --no-relax. */ - require_reloc_pc32 - = link_info->disable_target_specific_optimizations > 1; + /* TRUE if --no-relax is used. */ + no_overflow = link_info->disable_target_specific_optimizations > 1; r_symndx = htab->r_sym (irel->r_info); @@ -2030,12 +1502,12 @@ elf_x86_64_convert_load_reloc (bfd *abfd, asection *sec, /* We convert only to R_X86_64_PC32: 1. Branch. 2. R_X86_64_GOTPCREL since we can't modify REX byte. - 3. require_reloc_pc32 is true. + 3. no_overflow is true. 4. PIC. */ to_reloc_pc32 = (opcode == 0xff || !relocx - || require_reloc_pc32 + || no_overflow || is_pic); /* Get the symbol referred to by the reloc. */ @@ -2048,8 +1520,6 @@ elf_x86_64_convert_load_reloc (bfd *abfd, asection *sec, if (isym->st_shndx == SHN_UNDEF) return TRUE; - symtype = ELF_ST_TYPE (isym->st_info); - if (isym->st_shndx == SHN_ABS) tsec = bfd_abs_section_ptr; else if (isym->st_shndx == SHN_COMMON) @@ -2058,8 +1528,6 @@ elf_x86_64_convert_load_reloc (bfd *abfd, asection *sec, tsec = &_bfd_elf_large_com_section; else tsec = bfd_section_from_elf_index (abfd, isym->st_shndx); - - toff = isym->st_value; } else { @@ -2069,16 +1537,21 @@ elf_x86_64_convert_load_reloc (bfd *abfd, asection *sec, GOTPCRELX relocations since we need to modify REX byte. It is OK convert mov with R_X86_64_GOTPCREL to R_X86_64_PC32. */ + bfd_boolean local_ref; + struct elf_x86_link_hash_entry *eh = elf_x86_hash_entry (h); + + /* NB: Also set linker_def via SYMBOL_REFERENCES_LOCAL_P. */ + local_ref = SYMBOL_REFERENCES_LOCAL_P (link_info, h); if ((relocx || opcode == 0x8b) - && UNDEFINED_WEAK_RESOLVED_TO_ZERO (link_info, - TRUE, - elf_x86_64_hash_entry (h))) + && (h->root.type == bfd_link_hash_undefweak + && !eh->linker_def + && local_ref)) { if (opcode == 0xff) { /* Skip for branch instructions since R_X86_64_PC32 may overflow. */ - if (require_reloc_pc32) + if (no_overflow) return TRUE; } else if (relocx) @@ -2099,11 +1572,12 @@ elf_x86_64_convert_load_reloc (bfd *abfd, asection *sec, /* Avoid optimizing GOTPCREL relocations againt _DYNAMIC since ld.so may use its link-time address. */ else if (h->start_stop + || eh->linker_def || ((h->def_regular || h->root.type == bfd_link_hash_defined || h->root.type == bfd_link_hash_defweak) && h != htab->elf.hdynamic - && SYMBOL_REFERENCES_LOCAL (link_info, h))) + && local_ref)) { /* bfd_link_hash_new or bfd_link_hash_undefined is set by an assignment in a linker script in @@ -2111,6 +1585,7 @@ elf_x86_64_convert_load_reloc (bfd *abfd, asection *sec, on __start_SECNAME/__stop_SECNAME which mark section SECNAME. */ if (h->start_stop + || eh->linker_def || (h->def_regular && (h->root.type == bfd_link_hash_new || h->root.type == bfd_link_hash_undefined @@ -2119,13 +1594,11 @@ elf_x86_64_convert_load_reloc (bfd *abfd, asection *sec, && h->root.u.def.section == bfd_und_section_ptr)))) { /* Skip since R_X86_64_32/R_X86_64_32S may overflow. */ - if (require_reloc_pc32) + if (no_overflow) return TRUE; goto convert; } tsec = h->root.u.def.section; - toff = h->root.u.def.value; - symtype = h->type; } else return TRUE; @@ -2136,92 +1609,9 @@ elf_x86_64_convert_load_reloc (bfd *abfd, asection *sec, && (elf_section_flags (tsec) & SHF_X86_64_LARGE) != 0) return TRUE; - /* We can only estimate relocation overflow for R_X86_64_PC32. */ - if (!to_reloc_pc32) - goto convert; - - if (tsec->sec_info_type == SEC_INFO_TYPE_MERGE) - { - /* At this stage in linking, no SEC_MERGE symbol has been - adjusted, so all references to such symbols need to be - passed through _bfd_merged_section_offset. (Later, in - relocate_section, all SEC_MERGE symbols *except* for - section symbols have been adjusted.) - - gas may reduce relocations against symbols in SEC_MERGE - sections to a relocation against the section symbol when - the original addend was zero. When the reloc is against - a section symbol we should include the addend in the - offset passed to _bfd_merged_section_offset, since the - location of interest is the original symbol. On the - other hand, an access to "sym+addend" where "sym" is not - a section symbol should not include the addend; Such an - access is presumed to be an offset from "sym"; The - location of interest is just "sym". */ - if (symtype == STT_SECTION) - toff += raddend; - - toff = _bfd_merged_section_offset (abfd, &tsec, - elf_section_data (tsec)->sec_info, - toff); - - if (symtype != STT_SECTION) - toff += raddend; - } - else - toff += raddend; - - /* Don't convert if R_X86_64_PC32 relocation overflows. */ - if (tsec->output_section == sec->output_section) - { - if ((toff - roff + 0x80000000) > 0xffffffff) - return TRUE; - } - else - { - bfd_signed_vma distance; - - /* At this point, we don't know the load addresses of TSEC - section nor SEC section. We estimate the distrance between - SEC and TSEC. We store the estimated distances in the - compressed_size field of the output section, which is only - used to decompress the compressed input section. */ - if (sec->output_section->compressed_size == 0) - { - asection *asect; - bfd_size_type size = 0; - for (asect = link_info->output_bfd->sections; - asect != NULL; - asect = asect->next) - /* Skip debug sections since compressed_size is used to - compress debug sections. */ - if ((asect->flags & SEC_DEBUGGING) == 0) - { - asection *i; - for (i = asect->map_head.s; - i != NULL; - i = i->map_head.s) - { - size = align_power (size, i->alignment_power); - size += i->size; - } - asect->compressed_size = size; - } - } - - /* Don't convert GOTPCREL relocations if TSEC isn't placed - after SEC. */ - distance = (tsec->output_section->compressed_size - - sec->output_section->compressed_size); - if (distance < 0) - return TRUE; - - /* Take PT_GNU_RELRO segment into account by adding - maxpagesize. */ - if ((toff + distance + get_elf_backend_data (abfd)->maxpagesize - - roff + 0x80000000) > 0xffffffff) - return TRUE; - } + /* Skip since R_X86_64_PC32/R_X86_64_32/R_X86_64_32S may overflow. */ + if (no_overflow) + return TRUE; convert: if (opcode == 0xff) @@ -2246,15 +1636,15 @@ convert: } else { - struct elf_x86_64_link_hash_entry *eh - = (struct elf_x86_64_link_hash_entry *) h; + struct elf_x86_link_hash_entry *eh + = (struct elf_x86_link_hash_entry *) h; /* Convert to "nop call foo". ADDR_PREFIX_OPCODE is a nop prefix. */ modrm = 0xe8; /* To support TLS optimization, always use addr32 prefix for "call *__tls_get_addr@GOTPCREL(%rip)". */ - if (eh && eh->tls_get_addr == 1) + if (eh && eh->tls_get_addr) { nop = 0x67; nop_offset = irel->r_offset - 2; @@ -2365,7 +1755,9 @@ rewrite_modrm_rex: bfd_put_8 (abfd, opcode, contents + roff - 2); } - irel->r_info = htab->r_info (r_symndx, r_type); + *r_type_p = r_type; + irel->r_info = htab->r_info (r_symndx, + r_type | R_X86_64_converted_reloc_bit); *converted = TRUE; @@ -2381,13 +1773,14 @@ elf_x86_64_check_relocs (bfd *abfd, struct bfd_link_info *info, asection *sec, const Elf_Internal_Rela *relocs) { - struct elf_x86_64_link_hash_table *htab; + struct elf_x86_link_hash_table *htab; Elf_Internal_Shdr *symtab_hdr; struct elf_link_hash_entry **sym_hashes; const Elf_Internal_Rela *rel; const Elf_Internal_Rela *rel_end; asection *sreloc; bfd_byte *contents; + bfd_boolean converted; if (bfd_link_relocatable (info)) return TRUE; @@ -2401,15 +1794,15 @@ elf_x86_64_check_relocs (bfd *abfd, struct bfd_link_info *info, if ((sec->flags & SEC_ALLOC) == 0) return TRUE; - BFD_ASSERT (is_x86_64_elf (abfd)); - - htab = elf_x86_64_hash_table (info); + htab = elf_x86_hash_table (info, X86_64_ELF_DATA); if (htab == NULL) { sec->check_relocs_failed = 1; return FALSE; } + BFD_ASSERT (is_x86_elf (abfd, htab)); + /* Get the section contents. */ if (elf_section_data (sec)->this_hdr.contents != NULL) contents = elf_section_data (sec)->this_hdr.contents; @@ -2422,18 +1815,21 @@ elf_x86_64_check_relocs (bfd *abfd, struct bfd_link_info *info, symtab_hdr = &elf_symtab_hdr (abfd); sym_hashes = elf_sym_hashes (abfd); + converted = FALSE; + sreloc = NULL; rel_end = relocs + sec->reloc_count; for (rel = relocs; rel < rel_end; rel++) { unsigned int r_type; - unsigned long r_symndx; + unsigned int r_symndx; struct elf_link_hash_entry *h; - struct elf_x86_64_link_hash_entry *eh; + struct elf_x86_link_hash_entry *eh; Elf_Internal_Sym *isym; const char *name; bfd_boolean size_reloc; + bfd_boolean converted_reloc; r_symndx = htab->r_sym (rel->r_info); r_type = ELF32_R_TYPE (rel->r_info); @@ -2457,8 +1853,8 @@ elf_x86_64_check_relocs (bfd *abfd, struct bfd_link_info *info, /* Check relocation against local STT_GNU_IFUNC symbol. */ if (ELF_ST_TYPE (isym->st_info) == STT_GNU_IFUNC) { - h = elf_x86_64_get_local_sym_hash (htab, abfd, rel, - TRUE); + h = _bfd_elf_x86_get_local_sym_hash (htab, abfd, rel, + TRUE); if (h == NULL) goto error_return; @@ -2527,22 +1923,38 @@ elf_x86_64_check_relocs (bfd *abfd, struct bfd_link_info *info, |= elf_gnu_symbol_ifunc; } + converted_reloc = FALSE; + if ((r_type == R_X86_64_GOTPCREL + || r_type == R_X86_64_GOTPCRELX + || r_type == R_X86_64_REX_GOTPCRELX) + && (h == NULL || h->type != STT_GNU_IFUNC)) + { + Elf_Internal_Rela *irel = (Elf_Internal_Rela *) rel; + if (!elf_x86_64_convert_load_reloc (abfd, contents, &r_type, + irel, h, &converted_reloc, + info)) + goto error_return; + + if (converted_reloc) + converted = TRUE; + } + if (! elf_x86_64_tls_transition (info, abfd, sec, contents, symtab_hdr, sym_hashes, &r_type, GOT_UNKNOWN, rel, rel_end, h, r_symndx, FALSE)) goto error_return; - eh = (struct elf_x86_64_link_hash_entry *) h; + eh = (struct elf_x86_link_hash_entry *) h; switch (r_type) { case R_X86_64_TLSLD: - htab->tls_ld_got.refcount += 1; + htab->tls_ld_or_ldm_got.refcount += 1; goto create_got; case R_X86_64_TPOFF32: if (!bfd_link_executable (info) && ABI_64_P (abfd)) - return elf_x86_64_need_pic (abfd, sec, h, symtab_hdr, isym, + return elf_x86_64_need_pic (info, abfd, sec, h, symtab_hdr, isym, &x86_64_elf_howto_table[r_type]); if (eh != NULL) eh->has_got_reloc = 1; @@ -2600,14 +2012,14 @@ elf_x86_64_check_relocs (bfd *abfd, struct bfd_link_info *info, if (local_got_refcounts == NULL) goto error_return; elf_local_got_refcounts (abfd) = local_got_refcounts; - elf_x86_64_local_tlsdesc_gotent (abfd) + elf_x86_local_tlsdesc_gotent (abfd) = (bfd_vma *) (local_got_refcounts + symtab_hdr->sh_info); - elf_x86_64_local_got_tls_type (abfd) + elf_x86_local_got_tls_type (abfd) = (char *) (local_got_refcounts + 2 * symtab_hdr->sh_info); } local_got_refcounts[r_symndx] += 1; old_tls_type - = elf_x86_64_local_got_tls_type (abfd) [r_symndx]; + = elf_x86_local_got_tls_type (abfd) [r_symndx]; } /* If a TLS symbol is accessed using IE at least once, @@ -2643,7 +2055,7 @@ elf_x86_64_check_relocs (bfd *abfd, struct bfd_link_info *info, if (eh != NULL) eh->tls_type = tls_type; else - elf_x86_64_local_got_tls_type (abfd) [r_symndx] = tls_type; + elf_x86_local_got_tls_type (abfd) [r_symndx] = tls_type; } } /* Fall through */ @@ -2702,13 +2114,14 @@ elf_x86_64_check_relocs (bfd *abfd, struct bfd_link_info *info, sections we don't care about, such as debug sections or when relocation overflow check is disabled. */ if (!info->no_reloc_overflow_check + && !converted_reloc && (bfd_link_pic (info) || (bfd_link_executable (info) && h != NULL && !h->def_regular && h->def_dynamic && (sec->flags & SEC_READONLY) == 0))) - return elf_x86_64_need_pic (abfd, sec, h, symtab_hdr, isym, + return elf_x86_64_need_pic (info, abfd, sec, h, symtab_hdr, isym, &x86_64_elf_howto_table[r_type]); /* Fall through. */ @@ -2895,25 +2308,24 @@ do_size: default: break; } - - if ((r_type == R_X86_64_GOTPCREL - || r_type == R_X86_64_GOTPCRELX - || r_type == R_X86_64_REX_GOTPCRELX) - && (h == NULL || h->type != STT_GNU_IFUNC)) - sec->need_convert_load = 1; } if (elf_section_data (sec)->this_hdr.contents != contents) { - if (!info->keep_memory) + if (!converted && !info->keep_memory) free (contents); else { - /* Cache the section contents for elf_link_input_bfd. */ + /* Cache the section contents for elf_link_input_bfd if any + load is converted or --no-keep-memory isn't used. */ elf_section_data (sec)->this_hdr.contents = contents; } } + /* Cache relocations if any load is converted. */ + if (elf_section_data (sec)->relocs != relocs && converted) + elf_section_data (sec)->relocs = (Elf_Internal_Rela *) relocs; + return TRUE; error_return: @@ -2923,1291 +2335,6 @@ error_return: return FALSE; } -/* Return the section that should be marked against GC for a given - relocation. */ - -static asection * -elf_x86_64_gc_mark_hook (asection *sec, - struct bfd_link_info *info, - Elf_Internal_Rela *rel, - struct elf_link_hash_entry *h, - Elf_Internal_Sym *sym) -{ - if (h != NULL) - switch (ELF32_R_TYPE (rel->r_info)) - { - case R_X86_64_GNU_VTINHERIT: - case R_X86_64_GNU_VTENTRY: - return NULL; - } - - return _bfd_elf_gc_mark_hook (sec, info, rel, h, sym); -} - -/* Remove undefined weak symbol from the dynamic symbol table if it - is resolved to 0. */ - -static bfd_boolean -elf_x86_64_fixup_symbol (struct bfd_link_info *info, - struct elf_link_hash_entry *h) -{ - if (h->dynindx != -1 - && UNDEFINED_WEAK_RESOLVED_TO_ZERO (info, - elf_x86_64_hash_entry (h)->has_got_reloc, - elf_x86_64_hash_entry (h))) - { - h->dynindx = -1; - _bfd_elf_strtab_delref (elf_hash_table (info)->dynstr, - h->dynstr_index); - } - return TRUE; -} - -/* Adjust a symbol defined by a dynamic object and referenced by a - regular object. The current definition is in some section of the - dynamic object, but we're not including those sections. We have to - change the definition to something the rest of the link can - understand. */ - -static bfd_boolean -elf_x86_64_adjust_dynamic_symbol (struct bfd_link_info *info, - struct elf_link_hash_entry *h) -{ - struct elf_x86_64_link_hash_table *htab; - asection *s, *srel; - struct elf_x86_64_link_hash_entry *eh; - struct elf_dyn_relocs *p; - - /* STT_GNU_IFUNC symbol must go through PLT. */ - if (h->type == STT_GNU_IFUNC) - { - /* All local STT_GNU_IFUNC references must be treate as local - calls via local PLT. */ - if (h->ref_regular - && SYMBOL_CALLS_LOCAL (info, h)) - { - bfd_size_type pc_count = 0, count = 0; - struct elf_dyn_relocs **pp; - - eh = (struct elf_x86_64_link_hash_entry *) h; - for (pp = &eh->dyn_relocs; (p = *pp) != NULL; ) - { - pc_count += p->pc_count; - p->count -= p->pc_count; - p->pc_count = 0; - count += p->count; - if (p->count == 0) - *pp = p->next; - else - pp = &p->next; - } - - if (pc_count || count) - { - h->non_got_ref = 1; - if (pc_count) - { - /* Increment PLT reference count only for PC-relative - references. */ - h->needs_plt = 1; - if (h->plt.refcount <= 0) - h->plt.refcount = 1; - else - h->plt.refcount += 1; - } - } - } - - if (h->plt.refcount <= 0) - { - h->plt.offset = (bfd_vma) -1; - h->needs_plt = 0; - } - return TRUE; - } - - /* If this is a function, put it in the procedure linkage table. We - will fill in the contents of the procedure linkage table later, - when we know the address of the .got section. */ - if (h->type == STT_FUNC - || h->needs_plt) - { - if (h->plt.refcount <= 0 - || SYMBOL_CALLS_LOCAL (info, h) - || (ELF_ST_VISIBILITY (h->other) != STV_DEFAULT - && h->root.type == bfd_link_hash_undefweak)) - { - /* This case can occur if we saw a PLT32 reloc in an input - file, but the symbol was never referred to by a dynamic - object, or if all references were garbage collected. In - such a case, we don't actually need to build a procedure - linkage table, and we can just do a PC32 reloc instead. */ - h->plt.offset = (bfd_vma) -1; - h->needs_plt = 0; - } - - return TRUE; - } - else - /* It's possible that we incorrectly decided a .plt reloc was - needed for an R_X86_64_PC32 reloc to a non-function sym in - check_relocs. We can't decide accurately between function and - non-function syms in check-relocs; Objects loaded later in - the link may change h->type. So fix it now. */ - h->plt.offset = (bfd_vma) -1; - - /* If this is a weak symbol, and there is a real definition, the - processor independent code will have arranged for us to see the - real definition first, and we can just use the same value. */ - if (h->u.weakdef != NULL) - { - BFD_ASSERT (h->u.weakdef->root.type == bfd_link_hash_defined - || h->u.weakdef->root.type == bfd_link_hash_defweak); - h->root.u.def.section = h->u.weakdef->root.u.def.section; - h->root.u.def.value = h->u.weakdef->root.u.def.value; - if (ELIMINATE_COPY_RELOCS || info->nocopyreloc) - { - eh = (struct elf_x86_64_link_hash_entry *) h; - h->non_got_ref = h->u.weakdef->non_got_ref; - eh->needs_copy = h->u.weakdef->needs_copy; - } - return TRUE; - } - - /* This is a reference to a symbol defined by a dynamic object which - is not a function. */ - - /* If we are creating a shared library, we must presume that the - only references to the symbol are via the global offset table. - For such cases we need not do anything here; the relocations will - be handled correctly by relocate_section. */ - if (!bfd_link_executable (info)) - return TRUE; - - /* If there are no references to this symbol that do not use the - GOT, we don't need to generate a copy reloc. */ - if (!h->non_got_ref) - return TRUE; - - /* If -z nocopyreloc was given, we won't generate them either. */ - if (info->nocopyreloc) - { - h->non_got_ref = 0; - return TRUE; - } - - if (ELIMINATE_COPY_RELOCS) - { - eh = (struct elf_x86_64_link_hash_entry *) h; - for (p = eh->dyn_relocs; p != NULL; p = p->next) - { - s = p->sec->output_section; - if (s != NULL && (s->flags & SEC_READONLY) != 0) - break; - } - - /* If we didn't find any dynamic relocs in read-only sections, then - we'll be keeping the dynamic relocs and avoiding the copy reloc. */ - if (p == NULL) - { - h->non_got_ref = 0; - return TRUE; - } - } - - /* We must allocate the symbol in our .dynbss section, which will - become part of the .bss section of the executable. There will be - an entry for this symbol in the .dynsym section. The dynamic - object will contain position independent code, so all references - from the dynamic object to this symbol will go through the global - offset table. The dynamic linker will use the .dynsym entry to - determine the address it must put in the global offset table, so - both the dynamic object and the regular object will refer to the - same memory location for the variable. */ - - htab = elf_x86_64_hash_table (info); - if (htab == NULL) - return FALSE; - - /* We must generate a R_X86_64_COPY reloc to tell the dynamic linker - to copy the initial value out of the dynamic object and into the - runtime process image. */ - if ((h->root.u.def.section->flags & SEC_READONLY) != 0) - { - s = htab->elf.sdynrelro; - srel = htab->elf.sreldynrelro; - } - else - { - s = htab->elf.sdynbss; - srel = htab->elf.srelbss; - } - if ((h->root.u.def.section->flags & SEC_ALLOC) != 0 && h->size != 0) - { - const struct elf_backend_data *bed; - bed = get_elf_backend_data (info->output_bfd); - srel->size += bed->s->sizeof_rela; - h->needs_copy = 1; - } - - return _bfd_elf_adjust_dynamic_copy (info, h, s); -} - -/* Allocate space in .plt, .got and associated reloc sections for - dynamic relocs. */ - -static bfd_boolean -elf_x86_64_allocate_dynrelocs (struct elf_link_hash_entry *h, void * inf) -{ - struct bfd_link_info *info; - struct elf_x86_64_link_hash_table *htab; - struct elf_x86_64_link_hash_entry *eh; - struct elf_dyn_relocs *p; - const struct elf_backend_data *bed; - unsigned int plt_entry_size; - bfd_boolean resolved_to_zero; - - if (h->root.type == bfd_link_hash_indirect) - return TRUE; - - eh = (struct elf_x86_64_link_hash_entry *) h; - - info = (struct bfd_link_info *) inf; - htab = elf_x86_64_hash_table (info); - if (htab == NULL) - return FALSE; - bed = get_elf_backend_data (info->output_bfd); - plt_entry_size = htab->plt.plt_entry_size; - - resolved_to_zero = UNDEFINED_WEAK_RESOLVED_TO_ZERO (info, - eh->has_got_reloc, - eh); - - /* We can't use the GOT PLT if pointer equality is needed since - finish_dynamic_symbol won't clear symbol value and the dynamic - linker won't update the GOT slot. We will get into an infinite - loop at run-time. */ - if (htab->plt_got != NULL - && h->type != STT_GNU_IFUNC - && !h->pointer_equality_needed - && h->plt.refcount > 0 - && h->got.refcount > 0) - { - /* Don't use the regular PLT if there are both GOT and GOTPLT - reloctions. */ - h->plt.offset = (bfd_vma) -1; - - /* Use the GOT PLT. */ - eh->plt_got.refcount = 1; - } - - /* Clear the reference count of function pointer relocations if - symbol isn't a normal function. */ - if (h->type != STT_FUNC) - eh->func_pointer_refcount = 0; - - /* Since STT_GNU_IFUNC symbol must go through PLT, we handle it - here if it is defined and referenced in a non-shared object. */ - if (h->type == STT_GNU_IFUNC - && h->def_regular) - { - if (_bfd_elf_allocate_ifunc_dyn_relocs (info, h, - &eh->dyn_relocs, - &htab->readonly_dynrelocs_against_ifunc, - plt_entry_size, - (htab->plt.has_plt0 - * plt_entry_size), - GOT_ENTRY_SIZE, TRUE)) - { - asection *s = htab->plt_second; - if (h->plt.offset != (bfd_vma) -1 && s != NULL) - { - /* Use the second PLT section if it is created. */ - eh->plt_second.offset = s->size; - - /* Make room for this entry in the second PLT section. */ - s->size += htab->non_lazy_plt->plt_entry_size; - } - - return TRUE; - } - else - return FALSE; - } - /* Don't create the PLT entry if there are only function pointer - relocations which can be resolved at run-time. */ - else if (htab->elf.dynamic_sections_created - && (h->plt.refcount > eh->func_pointer_refcount - || eh->plt_got.refcount > 0)) - { - bfd_boolean use_plt_got = eh->plt_got.refcount > 0; - - /* Clear the reference count of function pointer relocations - if PLT is used. */ - eh->func_pointer_refcount = 0; - - /* Make sure this symbol is output as a dynamic symbol. - Undefined weak syms won't yet be marked as dynamic. */ - if (h->dynindx == -1 - && !h->forced_local - && !resolved_to_zero - && h->root.type == bfd_link_hash_undefweak) - { - if (! bfd_elf_link_record_dynamic_symbol (info, h)) - return FALSE; - } - - if (bfd_link_pic (info) - || WILL_CALL_FINISH_DYNAMIC_SYMBOL (1, 0, h)) - { - asection *s = htab->elf.splt; - asection *second_s = htab->plt_second; - asection *got_s = htab->plt_got; - - /* If this is the first .plt entry, make room for the special - first entry. The .plt section is used by prelink to undo - prelinking for dynamic relocations. */ - if (s->size == 0) - s->size = htab->plt.has_plt0 * plt_entry_size; - - if (use_plt_got) - eh->plt_got.offset = got_s->size; - else - { - h->plt.offset = s->size; - if (second_s) - eh->plt_second.offset = second_s->size; - } - - /* If this symbol is not defined in a regular file, and we are - not generating a shared library, then set the symbol to this - location in the .plt. This is required to make function - pointers compare as equal between the normal executable and - the shared library. */ - if (! bfd_link_pic (info) - && !h->def_regular) - { - if (use_plt_got) - { - /* We need to make a call to the entry of the GOT PLT - instead of regular PLT entry. */ - h->root.u.def.section = got_s; - h->root.u.def.value = eh->plt_got.offset; - } - else - { - if (second_s) - { - /* We need to make a call to the entry of the - second PLT instead of regular PLT entry. */ - h->root.u.def.section = second_s; - h->root.u.def.value = eh->plt_second.offset; - } - else - { - h->root.u.def.section = s; - h->root.u.def.value = h->plt.offset; - } - } - } - - /* Make room for this entry. */ - if (use_plt_got) - got_s->size += htab->non_lazy_plt->plt_entry_size; - else - { - s->size += plt_entry_size; - if (second_s) - second_s->size += htab->non_lazy_plt->plt_entry_size; - - /* We also need to make an entry in the .got.plt section, - which will be placed in the .got section by the linker - script. */ - htab->elf.sgotplt->size += GOT_ENTRY_SIZE; - - /* There should be no PLT relocation against resolved - undefined weak symbol in executable. */ - if (!resolved_to_zero) - { - /* We also need to make an entry in the .rela.plt - section. */ - htab->elf.srelplt->size += bed->s->sizeof_rela; - htab->elf.srelplt->reloc_count++; - } - } - } - else - { - eh->plt_got.offset = (bfd_vma) -1; - h->plt.offset = (bfd_vma) -1; - h->needs_plt = 0; - } - } - else - { - eh->plt_got.offset = (bfd_vma) -1; - h->plt.offset = (bfd_vma) -1; - h->needs_plt = 0; - } - - eh->tlsdesc_got = (bfd_vma) -1; - - /* If R_X86_64_GOTTPOFF symbol is now local to the binary, - make it a R_X86_64_TPOFF32 requiring no GOT entry. */ - if (h->got.refcount > 0 - && bfd_link_executable (info) - && h->dynindx == -1 - && elf_x86_64_hash_entry (h)->tls_type == GOT_TLS_IE) - { - h->got.offset = (bfd_vma) -1; - } - else if (h->got.refcount > 0) - { - asection *s; - bfd_boolean dyn; - int tls_type = elf_x86_64_hash_entry (h)->tls_type; - - /* Make sure this symbol is output as a dynamic symbol. - Undefined weak syms won't yet be marked as dynamic. */ - if (h->dynindx == -1 - && !h->forced_local - && !resolved_to_zero - && h->root.type == bfd_link_hash_undefweak) - { - if (! bfd_elf_link_record_dynamic_symbol (info, h)) - return FALSE; - } - - if (GOT_TLS_GDESC_P (tls_type)) - { - eh->tlsdesc_got = htab->elf.sgotplt->size - - elf_x86_64_compute_jump_table_size (htab); - htab->elf.sgotplt->size += 2 * GOT_ENTRY_SIZE; - h->got.offset = (bfd_vma) -2; - } - if (! GOT_TLS_GDESC_P (tls_type) - || GOT_TLS_GD_P (tls_type)) - { - s = htab->elf.sgot; - h->got.offset = s->size; - s->size += GOT_ENTRY_SIZE; - if (GOT_TLS_GD_P (tls_type)) - s->size += GOT_ENTRY_SIZE; - } - dyn = htab->elf.dynamic_sections_created; - /* R_X86_64_TLSGD needs one dynamic relocation if local symbol - and two if global. R_X86_64_GOTTPOFF needs one dynamic - relocation. No dynamic relocation against resolved undefined - weak symbol in executable. */ - if ((GOT_TLS_GD_P (tls_type) && h->dynindx == -1) - || tls_type == GOT_TLS_IE) - htab->elf.srelgot->size += bed->s->sizeof_rela; - else if (GOT_TLS_GD_P (tls_type)) - htab->elf.srelgot->size += 2 * bed->s->sizeof_rela; - else if (! GOT_TLS_GDESC_P (tls_type) - && ((ELF_ST_VISIBILITY (h->other) == STV_DEFAULT - && !resolved_to_zero) - || h->root.type != bfd_link_hash_undefweak) - && (bfd_link_pic (info) - || WILL_CALL_FINISH_DYNAMIC_SYMBOL (dyn, 0, h))) - htab->elf.srelgot->size += bed->s->sizeof_rela; - if (GOT_TLS_GDESC_P (tls_type)) - { - htab->elf.srelplt->size += bed->s->sizeof_rela; - htab->tlsdesc_plt = (bfd_vma) -1; - } - } - else - h->got.offset = (bfd_vma) -1; - - if (eh->dyn_relocs == NULL) - return TRUE; - - /* In the shared -Bsymbolic case, discard space allocated for - dynamic pc-relative relocs against symbols which turn out to be - defined in regular objects. For the normal shared case, discard - space for pc-relative relocs that have become local due to symbol - visibility changes. */ - - if (bfd_link_pic (info)) - { - /* Relocs that use pc_count are those that appear on a call - insn, or certain REL relocs that can generated via assembly. - We want calls to protected symbols to resolve directly to the - function rather than going via the plt. If people want - function pointer comparisons to work as expected then they - should avoid writing weird assembly. */ - if (SYMBOL_CALLS_LOCAL (info, h)) - { - struct elf_dyn_relocs **pp; - - for (pp = &eh->dyn_relocs; (p = *pp) != NULL; ) - { - p->count -= p->pc_count; - p->pc_count = 0; - if (p->count == 0) - *pp = p->next; - else - pp = &p->next; - } - } - - /* Also discard relocs on undefined weak syms with non-default - visibility or in PIE. */ - if (eh->dyn_relocs != NULL) - { - if (h->root.type == bfd_link_hash_undefweak) - { - /* Undefined weak symbol is never bound locally in shared - library. */ - if (ELF_ST_VISIBILITY (h->other) != STV_DEFAULT - || resolved_to_zero) - eh->dyn_relocs = NULL; - else if (h->dynindx == -1 - && ! h->forced_local - && ! bfd_elf_link_record_dynamic_symbol (info, h)) - return FALSE; - } - /* For PIE, discard space for pc-relative relocs against - symbols which turn out to need copy relocs. */ - else if (bfd_link_executable (info) - && (h->needs_copy || eh->needs_copy) - && h->def_dynamic - && !h->def_regular) - { - struct elf_dyn_relocs **pp; - - for (pp = &eh->dyn_relocs; (p = *pp) != NULL; ) - { - if (p->pc_count != 0) - *pp = p->next; - else - pp = &p->next; - } - } - } - } - else if (ELIMINATE_COPY_RELOCS) - { - /* For the non-shared case, discard space for relocs against - symbols which turn out to need copy relocs or are not - dynamic. Keep dynamic relocations for run-time function - pointer initialization. */ - - if ((!h->non_got_ref - || eh->func_pointer_refcount > 0 - || (h->root.type == bfd_link_hash_undefweak - && !resolved_to_zero)) - && ((h->def_dynamic - && !h->def_regular) - || (htab->elf.dynamic_sections_created - && (h->root.type == bfd_link_hash_undefweak - || h->root.type == bfd_link_hash_undefined)))) - { - /* Make sure this symbol is output as a dynamic symbol. - Undefined weak syms won't yet be marked as dynamic. */ - if (h->dynindx == -1 - && ! h->forced_local - && ! resolved_to_zero - && h->root.type == bfd_link_hash_undefweak - && ! bfd_elf_link_record_dynamic_symbol (info, h)) - return FALSE; - - /* If that succeeded, we know we'll be keeping all the - relocs. */ - if (h->dynindx != -1) - goto keep; - } - - eh->dyn_relocs = NULL; - eh->func_pointer_refcount = 0; - - keep: ; - } - - /* Finally, allocate space. */ - for (p = eh->dyn_relocs; p != NULL; p = p->next) - { - asection * sreloc; - - sreloc = elf_section_data (p->sec)->sreloc; - - BFD_ASSERT (sreloc != NULL); - - sreloc->size += p->count * bed->s->sizeof_rela; - } - - return TRUE; -} - -/* Allocate space in .plt, .got and associated reloc sections for - local dynamic relocs. */ - -static bfd_boolean -elf_x86_64_allocate_local_dynrelocs (void **slot, void *inf) -{ - struct elf_link_hash_entry *h - = (struct elf_link_hash_entry *) *slot; - - if (h->type != STT_GNU_IFUNC - || !h->def_regular - || !h->ref_regular - || !h->forced_local - || h->root.type != bfd_link_hash_defined) - abort (); - - return elf_x86_64_allocate_dynrelocs (h, inf); -} - -/* Find any dynamic relocs that apply to read-only sections. */ - -static bfd_boolean -elf_x86_64_readonly_dynrelocs (struct elf_link_hash_entry *h, - void * inf) -{ - struct elf_x86_64_link_hash_entry *eh; - struct elf_dyn_relocs *p; - - /* Skip local IFUNC symbols. */ - if (h->forced_local && h->type == STT_GNU_IFUNC) - return TRUE; - - eh = (struct elf_x86_64_link_hash_entry *) h; - for (p = eh->dyn_relocs; p != NULL; p = p->next) - { - asection *s = p->sec->output_section; - - if (s != NULL && (s->flags & SEC_READONLY) != 0) - { - struct bfd_link_info *info = (struct bfd_link_info *) inf; - - info->flags |= DF_TEXTREL; - - if ((info->warn_shared_textrel && bfd_link_pic (info)) - || info->error_textrel) - /* xgettext:c-format */ - info->callbacks->einfo (_("%P: %B: warning: relocation against `%s' in readonly section `%A'\n"), - p->sec->owner, h->root.root.string, - p->sec); - - /* Not an error, just cut short the traversal. */ - return FALSE; - } - } - return TRUE; -} - -/* Convert load via the GOT slot to load immediate. */ - -static bfd_boolean -elf_x86_64_convert_load (bfd *abfd, asection *sec, - struct bfd_link_info *link_info) -{ - Elf_Internal_Shdr *symtab_hdr; - Elf_Internal_Rela *internal_relocs; - Elf_Internal_Rela *irel, *irelend; - bfd_byte *contents; - struct elf_x86_64_link_hash_table *htab; - bfd_boolean changed; - bfd_signed_vma *local_got_refcounts; - - /* Don't even try to convert non-ELF outputs. */ - if (!is_elf_hash_table (link_info->hash)) - return FALSE; - - /* Nothing to do if there is no need or no output. */ - if ((sec->flags & (SEC_CODE | SEC_RELOC)) != (SEC_CODE | SEC_RELOC) - || sec->need_convert_load == 0 - || bfd_is_abs_section (sec->output_section)) - return TRUE; - - symtab_hdr = &elf_tdata (abfd)->symtab_hdr; - - /* Load the relocations for this section. */ - internal_relocs = (_bfd_elf_link_read_relocs - (abfd, sec, NULL, (Elf_Internal_Rela *) NULL, - link_info->keep_memory)); - if (internal_relocs == NULL) - return FALSE; - - changed = FALSE; - htab = elf_x86_64_hash_table (link_info); - local_got_refcounts = elf_local_got_refcounts (abfd); - - /* Get the section contents. */ - if (elf_section_data (sec)->this_hdr.contents != NULL) - contents = elf_section_data (sec)->this_hdr.contents; - else - { - if (!bfd_malloc_and_get_section (abfd, sec, &contents)) - goto error_return; - } - - irelend = internal_relocs + sec->reloc_count; - for (irel = internal_relocs; irel < irelend; irel++) - { - unsigned int r_type = ELF32_R_TYPE (irel->r_info); - unsigned int r_symndx; - struct elf_link_hash_entry *h; - bfd_boolean converted; - - if (r_type != R_X86_64_GOTPCRELX - && r_type != R_X86_64_REX_GOTPCRELX - && r_type != R_X86_64_GOTPCREL) - continue; - - r_symndx = htab->r_sym (irel->r_info); - if (r_symndx < symtab_hdr->sh_info) - h = elf_x86_64_get_local_sym_hash (htab, sec->owner, - (const Elf_Internal_Rela *) irel, - FALSE); - else - { - h = elf_sym_hashes (abfd)[r_symndx - symtab_hdr->sh_info]; - while (h->root.type == bfd_link_hash_indirect - || h->root.type == bfd_link_hash_warning) - h = (struct elf_link_hash_entry *) h->root.u.i.link; - } - - /* STT_GNU_IFUNC must keep GOTPCREL relocations. */ - if (h != NULL && h->type == STT_GNU_IFUNC) - continue; - - converted = FALSE; - if (!elf_x86_64_convert_load_reloc (abfd, sec, contents, irel, h, - &converted, link_info)) - goto error_return; - - if (converted) - { - changed = converted; - if (h) - { - if (h->got.refcount > 0) - h->got.refcount -= 1; - } - else - { - if (local_got_refcounts != NULL - && local_got_refcounts[r_symndx] > 0) - local_got_refcounts[r_symndx] -= 1; - } - } - } - - if (contents != NULL - && elf_section_data (sec)->this_hdr.contents != contents) - { - if (!changed && !link_info->keep_memory) - free (contents); - else - { - /* Cache the section contents for elf_link_input_bfd. */ - elf_section_data (sec)->this_hdr.contents = contents; - } - } - - if (elf_section_data (sec)->relocs != internal_relocs) - { - if (!changed) - free (internal_relocs); - else - elf_section_data (sec)->relocs = internal_relocs; - } - - return TRUE; - - error_return: - if (contents != NULL - && elf_section_data (sec)->this_hdr.contents != contents) - free (contents); - if (internal_relocs != NULL - && elf_section_data (sec)->relocs != internal_relocs) - free (internal_relocs); - return FALSE; -} - -/* Set the sizes of the dynamic sections. */ - -static bfd_boolean -elf_x86_64_size_dynamic_sections (bfd *output_bfd, - struct bfd_link_info *info) -{ - struct elf_x86_64_link_hash_table *htab; - bfd *dynobj; - asection *s; - bfd_boolean relocs; - bfd *ibfd; - const struct elf_backend_data *bed; - - htab = elf_x86_64_hash_table (info); - if (htab == NULL) - return FALSE; - bed = get_elf_backend_data (output_bfd); - - dynobj = htab->elf.dynobj; - if (dynobj == NULL) - abort (); - - /* Set up .got offsets for local syms, and space for local dynamic - relocs. */ - for (ibfd = info->input_bfds; ibfd != NULL; ibfd = ibfd->link.next) - { - bfd_signed_vma *local_got; - bfd_signed_vma *end_local_got; - char *local_tls_type; - bfd_vma *local_tlsdesc_gotent; - bfd_size_type locsymcount; - Elf_Internal_Shdr *symtab_hdr; - asection *srel; - - if (! is_x86_64_elf (ibfd)) - continue; - - for (s = ibfd->sections; s != NULL; s = s->next) - { - struct elf_dyn_relocs *p; - - if (!elf_x86_64_convert_load (ibfd, s, info)) - return FALSE; - - for (p = (struct elf_dyn_relocs *) - (elf_section_data (s)->local_dynrel); - p != NULL; - p = p->next) - { - if (!bfd_is_abs_section (p->sec) - && bfd_is_abs_section (p->sec->output_section)) - { - /* Input section has been discarded, either because - it is a copy of a linkonce section or due to - linker script /DISCARD/, so we'll be discarding - the relocs too. */ - } - else if (p->count != 0) - { - srel = elf_section_data (p->sec)->sreloc; - srel->size += p->count * bed->s->sizeof_rela; - if ((p->sec->output_section->flags & SEC_READONLY) != 0 - && (info->flags & DF_TEXTREL) == 0) - { - info->flags |= DF_TEXTREL; - if ((info->warn_shared_textrel && bfd_link_pic (info)) - || info->error_textrel) - /* xgettext:c-format */ - info->callbacks->einfo (_("%P: %B: warning: relocation in readonly section `%A'\n"), - p->sec->owner, p->sec); - } - } - } - } - - local_got = elf_local_got_refcounts (ibfd); - if (!local_got) - continue; - - symtab_hdr = &elf_symtab_hdr (ibfd); - locsymcount = symtab_hdr->sh_info; - end_local_got = local_got + locsymcount; - local_tls_type = elf_x86_64_local_got_tls_type (ibfd); - local_tlsdesc_gotent = elf_x86_64_local_tlsdesc_gotent (ibfd); - s = htab->elf.sgot; - srel = htab->elf.srelgot; - for (; local_got < end_local_got; - ++local_got, ++local_tls_type, ++local_tlsdesc_gotent) - { - *local_tlsdesc_gotent = (bfd_vma) -1; - if (*local_got > 0) - { - if (GOT_TLS_GDESC_P (*local_tls_type)) - { - *local_tlsdesc_gotent = htab->elf.sgotplt->size - - elf_x86_64_compute_jump_table_size (htab); - htab->elf.sgotplt->size += 2 * GOT_ENTRY_SIZE; - *local_got = (bfd_vma) -2; - } - if (! GOT_TLS_GDESC_P (*local_tls_type) - || GOT_TLS_GD_P (*local_tls_type)) - { - *local_got = s->size; - s->size += GOT_ENTRY_SIZE; - if (GOT_TLS_GD_P (*local_tls_type)) - s->size += GOT_ENTRY_SIZE; - } - if (bfd_link_pic (info) - || GOT_TLS_GD_ANY_P (*local_tls_type) - || *local_tls_type == GOT_TLS_IE) - { - if (GOT_TLS_GDESC_P (*local_tls_type)) - { - htab->elf.srelplt->size - += bed->s->sizeof_rela; - htab->tlsdesc_plt = (bfd_vma) -1; - } - if (! GOT_TLS_GDESC_P (*local_tls_type) - || GOT_TLS_GD_P (*local_tls_type)) - srel->size += bed->s->sizeof_rela; - } - } - else - *local_got = (bfd_vma) -1; - } - } - - if (htab->tls_ld_got.refcount > 0) - { - /* Allocate 2 got entries and 1 dynamic reloc for R_X86_64_TLSLD - relocs. */ - htab->tls_ld_got.offset = htab->elf.sgot->size; - htab->elf.sgot->size += 2 * GOT_ENTRY_SIZE; - htab->elf.srelgot->size += bed->s->sizeof_rela; - } - else - htab->tls_ld_got.offset = -1; - - /* Allocate global sym .plt and .got entries, and space for global - sym dynamic relocs. */ - elf_link_hash_traverse (&htab->elf, elf_x86_64_allocate_dynrelocs, - info); - - /* Allocate .plt and .got entries, and space for local symbols. */ - htab_traverse (htab->loc_hash_table, - elf_x86_64_allocate_local_dynrelocs, - info); - - /* For every jump slot reserved in the sgotplt, reloc_count is - incremented. However, when we reserve space for TLS descriptors, - it's not incremented, so in order to compute the space reserved - for them, it suffices to multiply the reloc count by the jump - slot size. - - PR ld/13302: We start next_irelative_index at the end of .rela.plt - so that R_X86_64_IRELATIVE entries come last. */ - if (htab->elf.srelplt) - { - htab->sgotplt_jump_table_size - = elf_x86_64_compute_jump_table_size (htab); - htab->next_irelative_index = htab->elf.srelplt->reloc_count - 1; - } - else if (htab->elf.irelplt) - htab->next_irelative_index = htab->elf.irelplt->reloc_count - 1; - - if (htab->tlsdesc_plt) - { - /* If we're not using lazy TLS relocations, don't generate the - PLT and GOT entries they require. */ - if ((info->flags & DF_BIND_NOW)) - htab->tlsdesc_plt = 0; - else - { - htab->tlsdesc_got = htab->elf.sgot->size; - htab->elf.sgot->size += GOT_ENTRY_SIZE; - /* Reserve room for the initial entry. - FIXME: we could probably do away with it in this case. */ - if (htab->elf.splt->size == 0) - htab->elf.splt->size = htab->plt.plt_entry_size; - htab->tlsdesc_plt = htab->elf.splt->size; - htab->elf.splt->size += htab->plt.plt_entry_size; - } - } - - if (htab->elf.sgotplt) - { - /* Don't allocate .got.plt section if there are no GOT nor PLT - entries and there is no refeence to _GLOBAL_OFFSET_TABLE_. */ - if ((htab->elf.hgot == NULL - || !htab->elf.hgot->ref_regular_nonweak) - && (htab->elf.sgotplt->size - == get_elf_backend_data (output_bfd)->got_header_size) - && (htab->elf.splt == NULL - || htab->elf.splt->size == 0) - && (htab->elf.sgot == NULL - || htab->elf.sgot->size == 0) - && (htab->elf.iplt == NULL - || htab->elf.iplt->size == 0) - && (htab->elf.igotplt == NULL - || htab->elf.igotplt->size == 0)) - htab->elf.sgotplt->size = 0; - } - - if (_bfd_elf_eh_frame_present (info)) - { - if (htab->plt_eh_frame != NULL - && htab->elf.splt != NULL - && htab->elf.splt->size != 0 - && !bfd_is_abs_section (htab->elf.splt->output_section)) - htab->plt_eh_frame->size = htab->plt.eh_frame_plt_size; - - if (htab->plt_got_eh_frame != NULL - && htab->plt_got != NULL - && htab->plt_got->size != 0 - && !bfd_is_abs_section (htab->plt_got->output_section)) - htab->plt_got_eh_frame->size - = htab->non_lazy_plt->eh_frame_plt_size; - - /* Unwind info for the second PLT and .plt.got sections are - identical. */ - if (htab->plt_second_eh_frame != NULL - && htab->plt_second != NULL - && htab->plt_second->size != 0 - && !bfd_is_abs_section (htab->plt_second->output_section)) - htab->plt_second_eh_frame->size - = htab->non_lazy_plt->eh_frame_plt_size; - } - - /* We now have determined the sizes of the various dynamic sections. - Allocate memory for them. */ - relocs = FALSE; - for (s = dynobj->sections; s != NULL; s = s->next) - { - if ((s->flags & SEC_LINKER_CREATED) == 0) - continue; - - if (s == htab->elf.splt - || s == htab->elf.sgot - || s == htab->elf.sgotplt - || s == htab->elf.iplt - || s == htab->elf.igotplt - || s == htab->plt_second - || s == htab->plt_got - || s == htab->plt_eh_frame - || s == htab->plt_got_eh_frame - || s == htab->plt_second_eh_frame - || s == htab->elf.sdynbss - || s == htab->elf.sdynrelro) - { - /* Strip this section if we don't need it; see the - comment below. */ - } - else if (CONST_STRNEQ (bfd_get_section_name (dynobj, s), ".rela")) - { - if (s->size != 0 && s != htab->elf.srelplt) - relocs = TRUE; - - /* We use the reloc_count field as a counter if we need - to copy relocs into the output file. */ - if (s != htab->elf.srelplt) - s->reloc_count = 0; - } - else - { - /* It's not one of our sections, so don't allocate space. */ - continue; - } - - if (s->size == 0) - { - /* If we don't need this section, strip it from the - output file. This is mostly to handle .rela.bss and - .rela.plt. We must create both sections in - create_dynamic_sections, because they must be created - before the linker maps input sections to output - sections. The linker does that before - adjust_dynamic_symbol is called, and it is that - function which decides whether anything needs to go - into these sections. */ - - s->flags |= SEC_EXCLUDE; - continue; - } - - if ((s->flags & SEC_HAS_CONTENTS) == 0) - continue; - - /* Allocate memory for the section contents. We use bfd_zalloc - here in case unused entries are not reclaimed before the - section's contents are written out. This should not happen, - but this way if it does, we get a R_X86_64_NONE reloc instead - of garbage. */ - s->contents = (bfd_byte *) bfd_zalloc (dynobj, s->size); - if (s->contents == NULL) - return FALSE; - } - - if (htab->plt_eh_frame != NULL - && htab->plt_eh_frame->contents != NULL) - { - memcpy (htab->plt_eh_frame->contents, - htab->plt.eh_frame_plt, htab->plt_eh_frame->size); - bfd_put_32 (dynobj, htab->elf.splt->size, - htab->plt_eh_frame->contents + PLT_FDE_LEN_OFFSET); - } - - if (htab->plt_got_eh_frame != NULL - && htab->plt_got_eh_frame->contents != NULL) - { - memcpy (htab->plt_got_eh_frame->contents, - htab->non_lazy_plt->eh_frame_plt, - htab->plt_got_eh_frame->size); - bfd_put_32 (dynobj, htab->plt_got->size, - (htab->plt_got_eh_frame->contents - + PLT_FDE_LEN_OFFSET)); - } - - if (htab->plt_second_eh_frame != NULL - && htab->plt_second_eh_frame->contents != NULL) - { - memcpy (htab->plt_second_eh_frame->contents, - htab->non_lazy_plt->eh_frame_plt, - htab->plt_second_eh_frame->size); - bfd_put_32 (dynobj, htab->plt_second->size, - (htab->plt_second_eh_frame->contents - + PLT_FDE_LEN_OFFSET)); - } - - if (htab->elf.dynamic_sections_created) - { - /* Add some entries to the .dynamic section. We fill in the - values later, in elf_x86_64_finish_dynamic_sections, but we - must add the entries now so that we get the correct size for - the .dynamic section. The DT_DEBUG entry is filled in by the - dynamic linker and used by the debugger. */ -#define add_dynamic_entry(TAG, VAL) \ - _bfd_elf_add_dynamic_entry (info, TAG, VAL) - - if (bfd_link_executable (info)) - { - if (!add_dynamic_entry (DT_DEBUG, 0)) - return FALSE; - } - - if (htab->elf.splt->size != 0) - { - /* DT_PLTGOT is used by prelink even if there is no PLT - relocation. */ - if (!add_dynamic_entry (DT_PLTGOT, 0)) - return FALSE; - } - - if (htab->elf.srelplt->size != 0) - { - if (!add_dynamic_entry (DT_PLTRELSZ, 0) - || !add_dynamic_entry (DT_PLTREL, DT_RELA) - || !add_dynamic_entry (DT_JMPREL, 0)) - return FALSE; - } - - if (htab->tlsdesc_plt - && (!add_dynamic_entry (DT_TLSDESC_PLT, 0) - || !add_dynamic_entry (DT_TLSDESC_GOT, 0))) - return FALSE; - - if (relocs) - { - if (!add_dynamic_entry (DT_RELA, 0) - || !add_dynamic_entry (DT_RELASZ, 0) - || !add_dynamic_entry (DT_RELAENT, bed->s->sizeof_rela)) - return FALSE; - - /* If any dynamic relocs apply to a read-only section, - then we need a DT_TEXTREL entry. */ - if ((info->flags & DF_TEXTREL) == 0) - elf_link_hash_traverse (&htab->elf, - elf_x86_64_readonly_dynrelocs, - info); - - if ((info->flags & DF_TEXTREL) != 0) - { - if (htab->readonly_dynrelocs_against_ifunc) - { - info->callbacks->einfo - (_("%P%X: read-only segment has dynamic IFUNC relocations; recompile with -fPIC\n")); - bfd_set_error (bfd_error_bad_value); - return FALSE; - } - - if (!add_dynamic_entry (DT_TEXTREL, 0)) - return FALSE; - } - } - } -#undef add_dynamic_entry - - return TRUE; -} - -static bfd_boolean -elf_x86_64_always_size_sections (bfd *output_bfd, - struct bfd_link_info *info) -{ - asection *tls_sec = elf_hash_table (info)->tls_sec; - - if (tls_sec) - { - struct elf_link_hash_entry *tlsbase; - - tlsbase = elf_link_hash_lookup (elf_hash_table (info), - "_TLS_MODULE_BASE_", - FALSE, FALSE, FALSE); - - if (tlsbase && tlsbase->type == STT_TLS) - { - struct elf_x86_64_link_hash_table *htab; - struct bfd_link_hash_entry *bh = NULL; - const struct elf_backend_data *bed - = get_elf_backend_data (output_bfd); - - htab = elf_x86_64_hash_table (info); - if (htab == NULL) - return FALSE; - - if (!(_bfd_generic_link_add_one_symbol - (info, output_bfd, "_TLS_MODULE_BASE_", BSF_LOCAL, - tls_sec, 0, NULL, FALSE, - bed->collect, &bh))) - return FALSE; - - htab->tls_module_base = bh; - - tlsbase = (struct elf_link_hash_entry *)bh; - tlsbase->def_regular = 1; - tlsbase->other = STV_HIDDEN; - tlsbase->root.linker_def = 1; - (*bed->elf_backend_hide_symbol) (info, tlsbase, TRUE); - } - } - - return TRUE; -} - -/* _TLS_MODULE_BASE_ needs to be treated especially when linking - executables. Rather than setting it to the beginning of the TLS - section, we have to set it to the end. This function may be called - multiple times, it is idempotent. */ - -static void -elf_x86_64_set_tls_module_base (struct bfd_link_info *info) -{ - struct elf_x86_64_link_hash_table *htab; - struct bfd_link_hash_entry *base; - - if (!bfd_link_executable (info)) - return; - - htab = elf_x86_64_hash_table (info); - if (htab == NULL) - return; - - base = htab->tls_module_base; - if (base == NULL) - return; - - base->u.def.value = htab->elf.tls_size; -} - -/* Return the base VMA address which should be subtracted from real addresses - when resolving @dtpoff relocation. - This is PT_TLS segment p_vaddr. */ - -static bfd_vma -elf_x86_64_dtpoff_base (struct bfd_link_info *info) -{ - /* If tls_sec is NULL, we should have signalled an error already. */ - if (elf_hash_table (info)->tls_sec == NULL) - return 0; - return elf_hash_table (info)->tls_sec->vma; -} - /* Return the relocation value for @tpoff relocation if STT_TLS virtual address is ADDRESS. */ @@ -4257,7 +2384,7 @@ elf_x86_64_relocate_section (bfd *output_bfd, Elf_Internal_Sym *local_syms, asection **local_sections) { - struct elf_x86_64_link_hash_table *htab; + struct elf_x86_link_hash_table *htab; Elf_Internal_Shdr *symtab_hdr; struct elf_link_hash_entry **sym_hashes; bfd_vma *local_got_offsets; @@ -4267,32 +2394,33 @@ elf_x86_64_relocate_section (bfd *output_bfd, Elf_Internal_Rela *relend; unsigned int plt_entry_size; - BFD_ASSERT (is_x86_64_elf (input_bfd)); - /* Skip if check_relocs failed. */ if (input_section->check_relocs_failed) return FALSE; - htab = elf_x86_64_hash_table (info); + htab = elf_x86_hash_table (info, X86_64_ELF_DATA); if (htab == NULL) return FALSE; + + BFD_ASSERT (is_x86_elf (input_bfd, htab)); + plt_entry_size = htab->plt.plt_entry_size; symtab_hdr = &elf_symtab_hdr (input_bfd); sym_hashes = elf_sym_hashes (input_bfd); local_got_offsets = elf_local_got_offsets (input_bfd); - local_tlsdesc_gotents = elf_x86_64_local_tlsdesc_gotent (input_bfd); + local_tlsdesc_gotents = elf_x86_local_tlsdesc_gotent (input_bfd); - elf_x86_64_set_tls_module_base (info); + _bfd_x86_elf_set_tls_module_base (info); rel = wrel = relocs; relend = relocs + input_section->reloc_count; for (; rel < relend; wrel++, rel++) { - unsigned int r_type; + unsigned int r_type, r_type_tls; reloc_howto_type *howto; unsigned long r_symndx; struct elf_link_hash_entry *h; - struct elf_x86_64_link_hash_entry *eh; + struct elf_x86_link_hash_entry *eh; Elf_Internal_Sym *sym; asection *sec; bfd_vma off, offplt, plt_offset; @@ -4304,6 +2432,7 @@ elf_x86_64_relocate_section (bfd *output_bfd, bfd_vma st_size; bfd_boolean resolved_to_zero; bfd_boolean relative_reloc; + bfd_boolean converted_reloc; r_type = ELF32_R_TYPE (rel->r_info); if (r_type == (int) R_X86_64_GNU_VTINHERIT @@ -4314,15 +2443,11 @@ elf_x86_64_relocate_section (bfd *output_bfd, continue; } + converted_reloc = (r_type & R_X86_64_converted_reloc_bit) != 0; + r_type &= ~R_X86_64_converted_reloc_bit; + if (r_type >= (int) R_X86_64_standard) - { - _bfd_error_handler - /* xgettext:c-format */ - (_("%B: unrecognized relocation (0x%x) in section `%A'"), - input_bfd, r_type, input_section); - bfd_set_error (bfd_error_bad_value); - return FALSE; - } + return _bfd_unrecognized_reloc (input_bfd, input_section, r_type); if (r_type != (int) R_X86_64_32 || ABI_64_P (output_bfd)) @@ -4348,8 +2473,8 @@ elf_x86_64_relocate_section (bfd *output_bfd, if (!bfd_link_relocatable (info) && ELF_ST_TYPE (sym->st_info) == STT_GNU_IFUNC) { - h = elf_x86_64_get_local_sym_hash (htab, input_bfd, - rel, FALSE); + h = _bfd_elf_x86_get_local_sym_hash (htab, input_bfd, + rel, FALSE); if (h == NULL) abort (); @@ -4413,7 +2538,7 @@ elf_x86_64_relocate_section (bfd *output_bfd, } } - eh = (struct elf_x86_64_link_hash_entry *) h; + eh = (struct elf_x86_link_hash_entry *) h; /* Since STT_GNU_IFUNC symbol must go through PLT, we handle it here if it is defined in a non-shared object. */ @@ -4574,7 +2699,7 @@ do_ifunc_pointer: _bfd_error_handler /* xgettext:c-format */ (_("%B: relocation %s against STT_GNU_IFUNC " - "symbol `%s' has non-zero addend: %d"), + "symbol `%s' has non-zero addend: %Ld"), input_bfd, howto->name, name, rel->r_addend); bfd_set_error (bfd_error_bad_value); return FALSE; @@ -4652,9 +2777,7 @@ do_ifunc_pointer: } resolved_to_zero = (eh != NULL - && UNDEFINED_WEAK_RESOLVED_TO_ZERO (info, - eh->has_got_reloc, - eh)); + && UNDEFINED_WEAK_RESOLVED_TO_ZERO (info, eh)); /* When generating a shared object, the relocations handled here are copied into the output file to be resolved at run time. */ @@ -4670,7 +2793,7 @@ do_ifunc_pointer: case R_X86_64_GOTPCREL64: /* Use global offset table entry as symbol value. */ case R_X86_64_GOTPLT64: - /* This is obsolete and treated the the same as GOT64. */ + /* This is obsolete and treated the same as GOT64. */ base_got = htab->elf.sgot; if (htab->elf.sgot == NULL) @@ -4700,7 +2823,7 @@ do_ifunc_pointer: if (! WILL_CALL_FINISH_DYNAMIC_SYMBOL (dyn, bfd_link_pic (info), h) || (bfd_link_pic (info) - && SYMBOL_REFERENCES_LOCAL (info, h)) + && SYMBOL_REFERENCES_LOCAL_P (info, h)) || (ELF_ST_VISIBILITY (h->other) && h->root.type == bfd_link_hash_undefweak)) { @@ -4835,7 +2958,7 @@ do_ifunc_pointer: return FALSE; } else if (!bfd_link_executable (info) - && !SYMBOL_REFERENCES_LOCAL (info, h) + && !SYMBOL_REFERENCES_LOCAL_P (info, h) && (h->type == STT_FUNC || h->type == STT_OBJECT) && ELF_ST_VISIBILITY (h->other) == STV_PROTECTED) @@ -4962,16 +3085,20 @@ do_ifunc_pointer: case R_X86_64_PC32: case R_X86_64_PC32_BND: /* Don't complain about -fPIC if the symbol is undefined when - building executable unless it is unresolved weak symbol. */ + building executable unless it is unresolved weak symbol or + -z nocopyreloc is used. */ if ((input_section->flags & SEC_ALLOC) != 0 && (input_section->flags & SEC_READONLY) != 0 && h != NULL && ((bfd_link_executable (info) - && h->root.type == bfd_link_hash_undefweak - && !resolved_to_zero) - || (bfd_link_pic (info) - && !(bfd_link_pie (info) - && h->root.type == bfd_link_hash_undefined)))) + && ((h->root.type == bfd_link_hash_undefweak + && !resolved_to_zero) + || ((info->nocopyreloc + || (eh->def_protected + && elf_has_no_copy_on_protected (h->root.u.def.section->owner))) + && h->def_dynamic + && !(h->root.u.def.section->flags & SEC_CODE)))) + || bfd_link_dll (info))) { bfd_boolean fail = FALSE; bfd_boolean branch @@ -4979,7 +3106,7 @@ do_ifunc_pointer: || r_type == R_X86_64_PC32_BND) && is_32bit_relative_branch (contents, rel->r_offset)); - if (SYMBOL_REFERENCES_LOCAL (info, h)) + if (SYMBOL_REFERENCES_LOCAL_P (info, h)) { /* Symbol is referenced locally. Make sure it is defined locally or for a branch. */ @@ -4997,7 +3124,7 @@ do_ifunc_pointer: } if (fail) - return elf_x86_64_need_pic (input_bfd, input_section, + return elf_x86_64_need_pic (info, input_bfd, input_section, h, NULL, NULL, howto); } /* Fall through. */ @@ -5116,22 +3243,13 @@ direct: else name = bfd_elf_sym_name (input_bfd, symtab_hdr, sym, NULL); - if (addend < 0) - _bfd_error_handler - /* xgettext:c-format */ - (_("%B: addend -0x%x in relocation %s against " - "symbol `%s' at 0x%lx in section `%A' is " - "out of range"), - input_bfd, addend, howto->name, name, - (unsigned long) rel->r_offset, input_section); - else - _bfd_error_handler - /* xgettext:c-format */ - (_("%B: addend 0x%x in relocation %s against " - "symbol `%s' at 0x%lx in section `%A' is " - "out of range"), - input_bfd, addend, howto->name, name, - (unsigned long) rel->r_offset, input_section); + _bfd_error_handler + /* xgettext:c-format */ + (_("%B: addend %s%#x in relocation %s against " + "symbol `%s' at %#Lx in section `%A' is " + "out of range"), + input_bfd, addend < 0 ? "-" : "", addend, + howto->name, name, rel->r_offset, input_section); bfd_set_error (bfd_error_bad_value); return FALSE; } @@ -5197,24 +3315,25 @@ direct: case R_X86_64_GOTTPOFF: tls_type = GOT_UNKNOWN; if (h == NULL && local_got_offsets) - tls_type = elf_x86_64_local_got_tls_type (input_bfd) [r_symndx]; + tls_type = elf_x86_local_got_tls_type (input_bfd) [r_symndx]; else if (h != NULL) - tls_type = elf_x86_64_hash_entry (h)->tls_type; + tls_type = elf_x86_hash_entry (h)->tls_type; + r_type_tls = r_type; if (! elf_x86_64_tls_transition (info, input_bfd, input_section, contents, symtab_hdr, sym_hashes, - &r_type, tls_type, rel, + &r_type_tls, tls_type, rel, relend, h, r_symndx, TRUE)) return FALSE; - if (r_type == R_X86_64_TPOFF32) + if (r_type_tls == R_X86_64_TPOFF32) { bfd_vma roff = rel->r_offset; BFD_ASSERT (! unresolved_reloc); - if (ELF32_R_TYPE (rel->r_info) == R_X86_64_TLSGD) + if (r_type == R_X86_64_TLSGD) { /* GD->LE transition. For 64bit, change .byte 0x66; leaq foo@tlsgd(%rip), %rdi @@ -5277,7 +3396,7 @@ direct: wrel++; continue; } - else if (ELF32_R_TYPE (rel->r_info) == R_X86_64_GOTPC32_TLSDESC) + else if (r_type == R_X86_64_GOTPC32_TLSDESC) { /* GDesc -> LE transition. It's originally something like: @@ -5300,7 +3419,7 @@ direct: contents + roff); continue; } - else if (ELF32_R_TYPE (rel->r_info) == R_X86_64_TLSDESC_CALL) + else if (r_type == R_X86_64_TLSDESC_CALL) { /* GDesc -> LE transition. It's originally: @@ -5311,7 +3430,7 @@ direct: bfd_put_8 (output_bfd, 0x90, contents + roff + 1); continue; } - else if (ELF32_R_TYPE (rel->r_info) == R_X86_64_GOTTPOFF) + else if (r_type == R_X86_64_GOTTPOFF) { /* IE->LE transition: For 64bit, originally it can be one of: @@ -5396,7 +3515,7 @@ direct: if (h != NULL) { off = h->got.offset; - offplt = elf_x86_64_hash_entry (h)->tlsdesc_got; + offplt = elf_x86_hash_entry (h)->tlsdesc_got; } else { @@ -5431,7 +3550,7 @@ direct: + htab->sgotplt_jump_table_size); sreloc = htab->elf.srelplt; if (indx == 0) - outrel.r_addend = relocation - elf_x86_64_dtpoff_base (info); + outrel.r_addend = relocation - _bfd_x86_elf_dtpoff_base (info); else outrel.r_addend = 0; elf_append_rela (output_bfd, sreloc, &outrel); @@ -5453,7 +3572,7 @@ direct: outrel.r_addend = 0; if ((dr_type == R_X86_64_TPOFF64 || dr_type == R_X86_64_TLSDESC) && indx == 0) - outrel.r_addend = relocation - elf_x86_64_dtpoff_base (info); + outrel.r_addend = relocation - _bfd_x86_elf_dtpoff_base (info); outrel.r_info = htab->r_info (indx, dr_type); elf_append_rela (output_bfd, sreloc, &outrel); @@ -5464,7 +3583,7 @@ direct: { BFD_ASSERT (! unresolved_reloc); bfd_put_64 (output_bfd, - relocation - elf_x86_64_dtpoff_base (info), + relocation - _bfd_x86_elf_dtpoff_base (info), htab->elf.sgot->contents + off + GOT_ENTRY_SIZE); } else @@ -5489,7 +3608,7 @@ direct: if (off >= (bfd_vma) -2 && ! GOT_TLS_GDESC_P (tls_type)) abort (); - if (r_type == ELF32_R_TYPE (rel->r_info)) + if (r_type_tls == r_type) { if (r_type == R_X86_64_GOTPC32_TLSDESC || r_type == R_X86_64_TLSDESC_CALL) @@ -5505,7 +3624,7 @@ direct: { bfd_vma roff = rel->r_offset; - if (ELF32_R_TYPE (rel->r_info) == R_X86_64_TLSGD) + if (r_type == R_X86_64_TLSGD) { /* GD->IE transition. For 64bit, change .byte 0x66; leaq foo@tlsgd(%rip), %rdi @@ -5574,7 +3693,7 @@ direct: wrel++; continue; } - else if (ELF32_R_TYPE (rel->r_info) == R_X86_64_GOTPC32_TLSDESC) + else if (r_type == R_X86_64_GOTPC32_TLSDESC) { /* GDesc -> IE transition. It's originally something like: @@ -5599,7 +3718,7 @@ direct: contents + roff); continue; } - else if (ELF32_R_TYPE (rel->r_info) == R_X86_64_TLSDESC_CALL) + else if (r_type == R_X86_64_TLSDESC_CALL) { /* GDesc -> IE transition. It's originally: @@ -5688,7 +3807,7 @@ direct: if (htab->elf.sgot == NULL) abort (); - off = htab->tls_ld_got.offset; + off = htab->tls_ld_or_ldm_got.offset; if (off & 1) off &= ~1; else @@ -5709,7 +3828,7 @@ direct: outrel.r_addend = 0; elf_append_rela (output_bfd, htab->elf.srelgot, &outrel); - htab->tls_ld_got.offset |= 1; + htab->tls_ld_or_ldm_got.offset |= 1; } relocation = htab->elf.sgot->output_section->vma + htab->elf.sgot->output_offset + off; @@ -5719,7 +3838,7 @@ direct: case R_X86_64_DTPOFF32: if (!bfd_link_executable (info) || (input_section->flags & SEC_CODE) == 0) - relocation -= elf_x86_64_dtpoff_base (info); + relocation -= _bfd_x86_elf_dtpoff_base (info); else relocation = elf_x86_64_tpoff (info, relocation); break; @@ -5732,7 +3851,7 @@ direct: case R_X86_64_DTPOFF64: BFD_ASSERT ((input_section->flags & SEC_CODE) == 0); - relocation -= elf_x86_64_dtpoff_base (info); + relocation -= _bfd_x86_elf_dtpoff_base (info); break; default: @@ -5748,15 +3867,29 @@ direct: && _bfd_elf_section_offset (output_bfd, info, input_section, rel->r_offset) != (bfd_vma) -1) { - _bfd_error_handler - /* xgettext:c-format */ - (_("%B(%A+0x%lx): unresolvable %s relocation against symbol `%s'"), - input_bfd, - input_section, - (long) rel->r_offset, - howto->name, - h->root.root.string); - return FALSE; + switch (r_type) + { + case R_X86_64_32S: + sec = h->root.u.def.section; + if ((info->nocopyreloc + || (eh->def_protected + && elf_has_no_copy_on_protected (h->root.u.def.section->owner))) + && !(h->root.u.def.section->flags & SEC_CODE)) + return elf_x86_64_need_pic (info, input_bfd, input_section, + h, NULL, NULL, howto); + /* Fall through. */ + + default: + _bfd_error_handler + /* xgettext:c-format */ + (_("%B(%A+%#Lx): unresolvable %s relocation against symbol `%s'"), + input_bfd, + input_section, + rel->r_offset, + howto->name, + h->root.root.string); + return FALSE; + } } do_relocation: @@ -5783,16 +3916,24 @@ check_relocation_error: } if (r == bfd_reloc_overflow) - (*info->callbacks->reloc_overflow) - (info, (h ? &h->root : NULL), name, howto->name, - (bfd_vma) 0, input_bfd, input_section, rel->r_offset); + { + if (converted_reloc) + { + info->callbacks->einfo + (_("%F%P: failed to convert GOTPCREL relocation; relink with --no-relax\n")); + return FALSE; + } + (*info->callbacks->reloc_overflow) + (info, (h ? &h->root : NULL), name, howto->name, + (bfd_vma) 0, input_bfd, input_section, rel->r_offset); + } else { _bfd_error_handler /* xgettext:c-format */ - (_("%B(%A+0x%lx): reloc against `%s': error %d"), + (_("%B(%A+%#Lx): reloc against `%s': error %d"), input_bfd, input_section, - (long) rel->r_offset, name, (int) r); + rel->r_offset, name, (int) r); return FALSE; } } @@ -5833,28 +3974,26 @@ elf_x86_64_finish_dynamic_symbol (bfd *output_bfd, struct elf_link_hash_entry *h, Elf_Internal_Sym *sym) { - struct elf_x86_64_link_hash_table *htab; + struct elf_x86_link_hash_table *htab; bfd_boolean use_plt_second; - struct elf_x86_64_link_hash_entry *eh; + struct elf_x86_link_hash_entry *eh; bfd_boolean local_undefweak; - htab = elf_x86_64_hash_table (info); + htab = elf_x86_hash_table (info, X86_64_ELF_DATA); if (htab == NULL) return FALSE; /* Use the second PLT section only if there is .plt section. */ use_plt_second = htab->elf.splt != NULL && htab->plt_second != NULL; - eh = (struct elf_x86_64_link_hash_entry *) h; + eh = (struct elf_x86_link_hash_entry *) h; if (eh->no_finish_dynamic_symbol) abort (); /* We keep PLT/GOT entries without dynamic PLT/GOT relocations for resolved undefined weak symbols in executable so that their references have value 0 at run-time. */ - local_undefweak = UNDEFINED_WEAK_RESOLVED_TO_ZERO (info, - eh->has_got_reloc, - eh); + local_undefweak = UNDEFINED_WEAK_RESOLVED_TO_ZERO (info, eh); if (h->plt.offset != (bfd_vma) -1) { @@ -6098,8 +4237,8 @@ elf_x86_64_finish_dynamic_symbol (bfd *output_bfd, /* Don't generate dynamic GOT relocation against undefined weak symbol in executable. */ if (h->got.offset != (bfd_vma) -1 - && ! GOT_TLS_GD_ANY_P (elf_x86_64_hash_entry (h)->tls_type) - && elf_x86_64_hash_entry (h)->tls_type != GOT_TLS_IE + && ! GOT_TLS_GD_ANY_P (elf_x86_hash_entry (h)->tls_type) + && elf_x86_hash_entry (h)->tls_type != GOT_TLS_IE && !local_undefweak) { Elf_Internal_Rela rela; @@ -6131,7 +4270,7 @@ elf_x86_64_finish_dynamic_symbol (bfd *output_bfd, in static executable. */ relgot = htab->elf.irelplt; } - if (SYMBOL_REFERENCES_LOCAL (info, h)) + if (SYMBOL_REFERENCES_LOCAL_P (info, h)) { info->callbacks->minfo (_("Local IFUNC function `%s' in %B\n"), output_bfd, @@ -6181,9 +4320,9 @@ elf_x86_64_finish_dynamic_symbol (bfd *output_bfd, } } else if (bfd_link_pic (info) - && SYMBOL_REFERENCES_LOCAL (info, h)) + && SYMBOL_REFERENCES_LOCAL_P (info, h)) { - if (!h->def_regular) + if (!(h->def_regular || ELF_COMMON_DEF_P (h))) return FALSE; BFD_ASSERT((h->got.offset & 1) != 0); rela.r_info = htab->r_info (0, R_X86_64_RELATIVE); @@ -6245,7 +4384,7 @@ elf_x86_64_finish_local_dynamic_symbol (void **slot, void *inf) = (struct bfd_link_info *) inf; return elf_x86_64_finish_dynamic_symbol (info->output_bfd, - info, h, NULL); + info, h, NULL); } /* Finish up undefined weak symbol handling in PIE. Fill its PLT entry @@ -6264,7 +4403,7 @@ elf_x86_64_pie_finish_undefweak_symbol (struct bfd_hash_entry *bh, return TRUE; return elf_x86_64_finish_dynamic_symbol (info->output_bfd, - info, h, NULL); + info, h, NULL); } /* Used to decide how to sort relocs in an optimal manner for the @@ -6277,7 +4416,8 @@ elf_x86_64_reloc_type_class (const struct bfd_link_info *info, { bfd *abfd = info->output_bfd; const struct elf_backend_data *bed = get_elf_backend_data (abfd); - struct elf_x86_64_link_hash_table *htab = elf_x86_64_hash_table (info); + struct elf_x86_link_hash_table *htab + = elf_x86_hash_table (info, X86_64_ELF_DATA); if (htab->elf.dynsym != NULL && htab->elf.dynsym->contents != NULL) @@ -6321,11 +4461,11 @@ static bfd_boolean elf_x86_64_finish_dynamic_sections (bfd *output_bfd, struct bfd_link_info *info) { - struct elf_x86_64_link_hash_table *htab; + struct elf_x86_link_hash_table *htab; bfd *dynobj; asection *sdyn; - htab = elf_x86_64_hash_table (info); + htab = elf_x86_hash_table (info, X86_64_ELF_DATA); if (htab == NULL) return FALSE; @@ -6398,7 +4538,7 @@ elf_x86_64_finish_dynamic_sections (bfd *output_bfd, table. */ memcpy (htab->elf.splt->contents, htab->lazy_plt->plt0_entry, - htab->lazy_plt->plt_entry_size); + htab->lazy_plt->plt0_entry_size); /* Add offset for pushq GOT+8(%rip), since the instruction uses 6 bytes subtract this value. */ bfd_put_32 (output_bfd, @@ -6430,7 +4570,7 @@ elf_x86_64_finish_dynamic_sections (bfd *output_bfd, memcpy (htab->elf.splt->contents + htab->tlsdesc_plt, htab->lazy_plt->plt0_entry, - htab->lazy_plt->plt_entry_size); + htab->lazy_plt->plt0_entry_size); /* Add offset for pushq GOT+8(%rip), since the instruction uses 6 bytes subtract this value. */ @@ -6463,15 +4603,15 @@ elf_x86_64_finish_dynamic_sections (bfd *output_bfd, } } } - } - if (htab->plt_got != NULL && htab->plt_got->size > 0) - elf_section_data (htab->plt_got->output_section) - ->this_hdr.sh_entsize = htab->non_lazy_plt->plt_entry_size; + if (htab->plt_got != NULL && htab->plt_got->size > 0) + elf_section_data (htab->plt_got->output_section) + ->this_hdr.sh_entsize = htab->non_lazy_plt->plt_entry_size; - if (htab->plt_second != NULL && htab->plt_second->size > 0) - elf_section_data (htab->plt_second->output_section) - ->this_hdr.sh_entsize = htab->non_lazy_plt->plt_entry_size; + if (htab->plt_second != NULL && htab->plt_second->size > 0) + elf_section_data (htab->plt_second->output_section) + ->this_hdr.sh_entsize = htab->non_lazy_plt->plt_entry_size; + } /* GOT is always created in setup_gnu_properties. But it may not be needed. */ @@ -6613,7 +4753,8 @@ elf_x86_64_output_arch_local_syms asection *, struct elf_link_hash_entry *) ATTRIBUTE_UNUSED) { - struct elf_x86_64_link_hash_table *htab = elf_x86_64_hash_table (info); + struct elf_x86_link_hash_table *htab + = elf_x86_hash_table (info, X86_64_ELF_DATA); if (htab == NULL) return FALSE; @@ -6625,44 +4766,8 @@ elf_x86_64_output_arch_local_syms return TRUE; } -/* Sort relocs into address order. */ - -static int -compare_relocs (const void *ap, const void *bp) -{ - const arelent *a = * (const arelent **) ap; - const arelent *b = * (const arelent **) bp; - - if (a->address > b->address) - return 1; - else if (a->address < b->address) - return -1; - else - return 0; -} - -enum elf_x86_64_plt_type -{ - plt_non_lazy = 0, - plt_lazy = 1 << 0, - plt_second = 1 << 1, - plt_unknown = -1 -}; - -struct elf_x86_64_plt -{ - const char *name; - asection *sec; - bfd_byte *contents; - enum elf_x86_64_plt_type type; - unsigned int plt_got_offset; - unsigned int plt_got_insn_size; - unsigned int plt_entry_size; - long count; -}; - /* Forward declaration. */ -static const struct elf_x86_64_lazy_plt_layout elf_x86_64_nacl_plt; +static const struct elf_x86_lazy_plt_layout elf_x86_64_nacl_plt; /* Similar to _bfd_elf_get_synthetic_symtab. Support PLTs with all dynamic relocations. */ @@ -6675,23 +4780,19 @@ elf_x86_64_get_synthetic_symtab (bfd *abfd, asymbol **dynsyms, asymbol **ret) { - long size, count, i, n; + long count, i, n; int j; - unsigned int plt_got_offset, plt_entry_size, plt_got_insn_size; - asymbol *s; bfd_byte *plt_contents; - long dynrelcount, relsize; - arelent **dynrelbuf; - const struct elf_x86_64_lazy_plt_layout *lazy_plt; - const struct elf_x86_64_non_lazy_plt_layout *non_lazy_plt; - const struct elf_x86_64_lazy_plt_layout *lazy_bnd_plt; - const struct elf_x86_64_non_lazy_plt_layout *non_lazy_bnd_plt; - const struct elf_x86_64_lazy_plt_layout *lazy_ibt_plt; - const struct elf_x86_64_non_lazy_plt_layout *non_lazy_ibt_plt; + long relsize; + const struct elf_x86_lazy_plt_layout *lazy_plt; + const struct elf_x86_non_lazy_plt_layout *non_lazy_plt; + const struct elf_x86_lazy_plt_layout *lazy_bnd_plt; + const struct elf_x86_non_lazy_plt_layout *non_lazy_bnd_plt; + const struct elf_x86_lazy_plt_layout *lazy_ibt_plt; + const struct elf_x86_non_lazy_plt_layout *non_lazy_ibt_plt; asection *plt; - char *names; - enum elf_x86_64_plt_type plt_type; - struct elf_x86_64_plt plts[] = + enum elf_x86_plt_type plt_type; + struct elf_x86_plt plts[] = { { ".plt", NULL, NULL, plt_unknown, 0, 0, 0, 0 }, { ".plt.got", NULL, NULL, plt_non_lazy, 0, 0, 0, 0 }, @@ -6712,16 +4813,6 @@ elf_x86_64_get_synthetic_symtab (bfd *abfd, if (relsize <= 0) return -1; - dynrelbuf = (arelent **) bfd_malloc (relsize); - if (dynrelbuf == NULL) - return -1; - - dynrelcount = bfd_canonicalize_dynamic_reloc (abfd, dynrelbuf, - dynsyms); - - /* Sort the relocs by address. */ - qsort (dynrelbuf, dynrelcount, sizeof (arelent *), compare_relocs); - if (get_elf_x86_64_backend_data (abfd)->os == is_normal) { lazy_plt = &elf_x86_64_lazy_plt; @@ -6753,7 +4844,7 @@ elf_x86_64_get_synthetic_symtab (bfd *abfd, for (j = 0; plts[j].name != NULL; j++) { plt = bfd_get_section_by_name (abfd, plts[j].name); - if (plt == NULL) + if (plt == NULL || plt->size == 0) continue; /* Get the PLT section contents. */ @@ -6769,7 +4860,9 @@ elf_x86_64_get_synthetic_symtab (bfd *abfd, /* Check what kind of PLT it is. */ plt_type = plt_unknown; - if (plts[j].type == plt_unknown) + if (plts[j].type == plt_unknown + && (plt->size >= (lazy_plt->plt_entry_size + + lazy_plt->plt_entry_size))) { /* Match lazy PLT first. Need to check the first two instructions. */ @@ -6797,7 +4890,8 @@ elf_x86_64_get_synthetic_symtab (bfd *abfd, } if (non_lazy_plt != NULL - && (plt_type == plt_unknown || plt_type == plt_non_lazy)) + && (plt_type == plt_unknown || plt_type == plt_non_lazy) + && plt->size >= non_lazy_plt->plt_entry_size) { /* Match non-lazy PLT. */ if (memcmp (plt_contents, non_lazy_plt->plt_entry, @@ -6808,6 +4902,7 @@ elf_x86_64_get_synthetic_symtab (bfd *abfd, if (plt_type == plt_unknown || plt_type == plt_second) { if (non_lazy_bnd_plt != NULL + && plt->size >= non_lazy_bnd_plt->plt_entry_size && (memcmp (plt_contents, non_lazy_bnd_plt->plt_entry, non_lazy_bnd_plt->plt_got_offset) == 0)) { @@ -6816,6 +4911,7 @@ elf_x86_64_get_synthetic_symtab (bfd *abfd, non_lazy_plt = non_lazy_bnd_plt; } else if (non_lazy_ibt_plt != NULL + && plt->size >= non_lazy_ibt_plt->plt_entry_size && (memcmp (plt_contents, non_lazy_ibt_plt->plt_entry, non_lazy_ibt_plt->plt_got_offset) == 0)) @@ -6827,7 +4923,10 @@ elf_x86_64_get_synthetic_symtab (bfd *abfd, } if (plt_type == plt_unknown) - continue; + { + free (plt_contents); + continue; + } plts[j].sec = plt; plts[j].type = plt_type; @@ -6861,158 +4960,9 @@ elf_x86_64_get_synthetic_symtab (bfd *abfd, plts[j].contents = plt_contents; } - size = count * sizeof (asymbol); - s = *ret = (asymbol *) bfd_zmalloc (size); - if (s == NULL) - { -bad_return: - for (j = 0; plts[j].name != NULL; j++) - if (plts[j].contents != NULL) - free (plts[j].contents); - free (dynrelbuf); - return -1; - } - - /* Check for each PLT section. */ - size = 0; - n = 0; - for (j = 0; plts[j].name != NULL; j++) - if ((plt_contents = plts[j].contents) != NULL) - { - long k; - bfd_vma offset; - - plt_got_offset = plts[j].plt_got_offset; - plt_got_insn_size = plts[j].plt_got_insn_size; - plt_entry_size = plts[j].plt_entry_size; - - plt = plts[j].sec; - - if ((plts[j].type & plt_lazy)) - { - /* Skip PLT0 in lazy PLT. */ - k = 1; - offset = plt_entry_size; - } - else - { - k = 0; - offset = 0; - } - - /* Check each PLT entry against dynamic relocations. */ - for (; k < plts[j].count; k++) - { - int off; - bfd_vma got_vma; - long min, max, mid; - arelent *p; - - /* Get the PC-relative offset, a signed 32-bit integer. */ - off = H_GET_32 (abfd, (plt_contents + offset - + plt_got_offset)); - got_vma = plt->vma + offset + off + plt_got_insn_size; - - /* Binary search. */ - p = dynrelbuf[0]; - min = 0; - max = dynrelcount; - while ((min + 1) < max) - { - arelent *r; - - mid = (min + max) / 2; - r = dynrelbuf[mid]; - if (got_vma > r->address) - min = mid; - else if (got_vma < r->address) - max = mid; - else - { - p = r; - break; - } - } - - /* Skip unknown relocation. PR 17512: file: bc9d6cf5. */ - if (got_vma == p->address - && p->howto != NULL - && (p->howto->type == R_X86_64_JUMP_SLOT - || p->howto->type == R_X86_64_GLOB_DAT - || p->howto->type == R_X86_64_IRELATIVE)) - { - *s = **p->sym_ptr_ptr; - /* Undefined syms won't have BSF_LOCAL or BSF_GLOBAL - set. Since we are defining a symbol, ensure one - of them is set. */ - if ((s->flags & BSF_LOCAL) == 0) - s->flags |= BSF_GLOBAL; - s->flags |= BSF_SYNTHETIC; - /* This is no longer a section symbol. */ - s->flags &= ~BSF_SECTION_SYM; - s->section = plt; - s->the_bfd = plt->owner; - s->value = offset; - /* Store relocation for later use. */ - s->udata.p = p; - /* Add @plt to function name later. */ - size += strlen (s->name) + sizeof ("@plt"); - if (p->addend != 0) - size += sizeof ("+0x") - 1 + 8 + 8 * ABI_64_P (abfd); - n++; - s++; - } - offset += plt_entry_size; - } - } - - /* PLT entries with R_X86_64_TLSDESC relocations are skipped. */ - if (n == 0) - goto bad_return; - - count = n; - - /* Allocate space for @plt suffixes. */ - names = (char *) bfd_malloc (size); - if (s == NULL) - goto bad_return; - - s = *ret; - for (i = 0; i < count; i++) - { - /* Add @plt to function name. */ - arelent *p = (arelent *) s->udata.p; - /* Clear it now. */ - s->udata.p = NULL; - size = strlen (s->name); - memcpy (names, s->name, size); - s->name = names; - names += size; - if (p->addend != 0) - { - char buf[30], *a; - - memcpy (names, "+0x", sizeof ("+0x") - 1); - names += sizeof ("+0x") - 1; - bfd_sprintf_vma (abfd, buf, p->addend); - for (a = buf; *a == '0'; ++a) - ; - size = strlen (a); - memcpy (names, a, size); - names += size; - } - memcpy (names, "@plt", sizeof ("@plt")); - names += sizeof ("@plt"); - s++; - } - - for (j = 0; plts[j].name != NULL; j++) - if (plts[j].contents != NULL) - free (plts[j].contents); - - free (dynrelbuf); - - return count; + return _bfd_x86_elf_get_synthetic_symtab (abfd, count, relsize, + (bfd_vma) 0, plts, dynsyms, + ret); } /* Handle an x86-64 specific section when reading an object file. This @@ -7184,19 +5134,6 @@ elf_x86_64_additional_program_headers (bfd *abfd, return count; } -/* Return TRUE if symbol should be hashed in the `.gnu.hash' section. */ - -static bfd_boolean -elf_x86_64_hash_symbol (struct elf_link_hash_entry *h) -{ - if (h->plt.offset != (bfd_vma) -1 - && !h->def_regular - && !h->pointer_equality_needed) - return FALSE; - - return _bfd_elf_hash_symbol (h); -} - /* Return TRUE iff relocations for INPUT are compatible with OUTPUT. */ static bfd_boolean @@ -7208,530 +5145,69 @@ elf_x86_64_relocs_compatible (const bfd_target *input, && _bfd_elf_relocs_compatible (input, output)); } -/* Parse x86-64 GNU properties. */ - -static enum elf_property_kind -elf_x86_64_parse_gnu_properties (bfd *abfd, unsigned int type, - bfd_byte *ptr, unsigned int datasz) -{ - elf_property *prop; - - switch (type) - { - case GNU_PROPERTY_X86_ISA_1_USED: - case GNU_PROPERTY_X86_ISA_1_NEEDED: - case GNU_PROPERTY_X86_FEATURE_1_AND: - if (datasz != 4) - { - _bfd_error_handler - ((type == GNU_PROPERTY_X86_ISA_1_USED - ? _("error: %B: <corrupt x86 ISA used size: 0x%x>") - : (type == GNU_PROPERTY_X86_ISA_1_NEEDED - ? _("error: %B: <corrupt x86 ISA needed size: 0x%x>") - : _("error: %B: <corrupt x86 feature size: 0x%x>"))), - abfd, datasz); - return property_corrupt; - } - prop = _bfd_elf_get_property (abfd, type, datasz); - /* Combine properties of the same type. */ - prop->u.number |= bfd_h_get_32 (abfd, ptr); - prop->pr_kind = property_number; - break; - - default: - return property_ignored; - } - - return property_number; -} - -/* Merge x86-64 GNU property BPROP with APROP. If APROP isn't NULL, - return TRUE if APROP is updated. Otherwise, return TRUE if BPROP - should be merged with ABFD. */ - -static bfd_boolean -elf_x86_64_merge_gnu_properties (struct bfd_link_info *info, - bfd *abfd ATTRIBUTE_UNUSED, - elf_property *aprop, - elf_property *bprop) -{ - unsigned int number, features; - bfd_boolean updated = FALSE; - unsigned int pr_type = aprop != NULL ? aprop->pr_type : bprop->pr_type; - - switch (pr_type) - { - case GNU_PROPERTY_X86_ISA_1_USED: - case GNU_PROPERTY_X86_ISA_1_NEEDED: - if (aprop != NULL && bprop != NULL) - { - number = aprop->u.number; - aprop->u.number = number | bprop->u.number; - updated = number != (unsigned int) aprop->u.number; - } - else - { - /* Return TRUE if APROP is NULL to indicate that BPROP should - be added to ABFD. */ - updated = aprop == NULL; - } - break; - - case GNU_PROPERTY_X86_FEATURE_1_AND: - /* Only one of APROP and BPROP can be NULL: - 1. APROP & BPROP when both APROP and BPROP aren't NULL. - 2. If APROP is NULL, remove x86 feature. - 3. Otherwise, do nothing. - */ - if (aprop != NULL && bprop != NULL) - { - features = 0; - if (info->ibt) - features = GNU_PROPERTY_X86_FEATURE_1_IBT; - if (info->shstk) - features |= GNU_PROPERTY_X86_FEATURE_1_SHSTK; - number = aprop->u.number; - /* Add GNU_PROPERTY_X86_FEATURE_1_IBT and - GNU_PROPERTY_X86_FEATURE_1_SHSTK. */ - aprop->u.number = (number & bprop->u.number) | features; - updated = number != (unsigned int) aprop->u.number; - /* Remove the property if all feature bits are cleared. */ - if (aprop->u.number == 0) - aprop->pr_kind = property_remove; - } - else - { - features = 0; - if (info->ibt) - features = GNU_PROPERTY_X86_FEATURE_1_IBT; - if (info->shstk) - features |= GNU_PROPERTY_X86_FEATURE_1_SHSTK; - if (features) - { - /* Add GNU_PROPERTY_X86_FEATURE_1_IBT and - GNU_PROPERTY_X86_FEATURE_1_SHSTK. */ - if (aprop != NULL) - { - number = aprop->u.number; - aprop->u.number = number | features; - updated = number != (unsigned int) aprop->u.number; - } - else - { - bprop->u.number |= features; - updated = TRUE; - } - } - else if (aprop != NULL) - { - aprop->pr_kind = property_remove; - updated = TRUE; - } - } - break; - - default: - /* Never should happen. */ - abort (); - } - - return updated; -} - /* Set up x86-64 GNU properties. Return the first relocatable ELF input with GNU properties if found. Otherwise, return NULL. */ static bfd * elf_x86_64_link_setup_gnu_properties (struct bfd_link_info *info) { - bfd_boolean normal_target; - bfd_boolean lazy_plt; - asection *sec, *pltsec; - bfd *dynobj; - bfd_boolean use_ibt_plt; - unsigned int plt_alignment, features; - struct elf_x86_64_link_hash_table *htab; - bfd *pbfd; - - features = 0; - if (info->ibt) - features = GNU_PROPERTY_X86_FEATURE_1_IBT; - if (info->shstk) - features |= GNU_PROPERTY_X86_FEATURE_1_SHSTK; - if (features) - { - /* Turn on GNU_PROPERTY_X86_FEATURE_1_IBT and - GNU_PROPERTY_X86_FEATURE_1_SHSTK. */ - bfd *ebfd = NULL; - elf_property *prop; - - for (pbfd = info->input_bfds; - pbfd != NULL; - pbfd = pbfd->link.next) - if (bfd_get_flavour (pbfd) == bfd_target_elf_flavour - && bfd_count_sections (pbfd) != 0) - { - ebfd = pbfd; - - if (elf_properties (pbfd) != NULL) - { - /* Find a normal input file with GNU property note. */ - prop = _bfd_elf_get_property (pbfd, - GNU_PROPERTY_X86_FEATURE_1_AND, - 4); - /* Add GNU_PROPERTY_X86_FEATURE_1_IBT and - GNU_PROPERTY_X86_FEATURE_1_SHSTK. */ - prop->u.number |= features; - prop->pr_kind = property_number; - break; - } - } - - if (pbfd == NULL && ebfd != NULL) - { - /* Create GNU_PROPERTY_X86_FEATURE_1_IBT if needed. */ - prop = _bfd_elf_get_property (ebfd, - GNU_PROPERTY_X86_FEATURE_1_AND, - 4); - prop->u.number = features; - prop->pr_kind = property_number; - - sec = bfd_make_section_with_flags (ebfd, - NOTE_GNU_PROPERTY_SECTION_NAME, - (SEC_ALLOC - | SEC_LOAD - | SEC_IN_MEMORY - | SEC_READONLY - | SEC_HAS_CONTENTS - | SEC_DATA)); - if (sec == NULL) - info->callbacks->einfo (_("%F: failed to create GNU property section\n")); - - if (!bfd_set_section_alignment (ebfd, sec, - ABI_64_P (ebfd) ? 3 : 2)) - { -error_alignment: - info->callbacks->einfo (_("%F%A: failed to align section\n"), - sec); - } - - elf_section_type (sec) = SHT_NOTE; - } - } - - pbfd = _bfd_elf_link_setup_gnu_properties (info); - - if (bfd_link_relocatable (info)) - return pbfd; - - htab = elf_x86_64_hash_table (info); - if (htab == NULL) - return pbfd; - - use_ibt_plt = info->ibtplt || info->ibt; - if (!use_ibt_plt && pbfd != NULL) - { - /* Check if GNU_PROPERTY_X86_FEATURE_1_IBT is on. */ - elf_property_list *p; - - /* The property list is sorted in order of type. */ - for (p = elf_properties (pbfd); p; p = p->next) - { - if (GNU_PROPERTY_X86_FEATURE_1_AND == p->property.pr_type) - { - use_ibt_plt = !!(p->property.u.number - & GNU_PROPERTY_X86_FEATURE_1_IBT); - break; - } - else if (GNU_PROPERTY_X86_FEATURE_1_AND < p->property.pr_type) - break; - } - } - - dynobj = htab->elf.dynobj; + struct elf_x86_init_table init_table; + + if ((int) R_X86_64_standard >= (int) R_X86_64_converted_reloc_bit + || (int) R_X86_64_max <= (int) R_X86_64_converted_reloc_bit + || ((int) (R_X86_64_GNU_VTINHERIT | R_X86_64_converted_reloc_bit) + != (int) R_X86_64_GNU_VTINHERIT) + || ((int) (R_X86_64_GNU_VTENTRY | R_X86_64_converted_reloc_bit) + != (int) R_X86_64_GNU_VTENTRY)) + abort (); - /* Set htab->elf.dynobj here so that there is no need to check and - set it in check_relocs. */ - if (dynobj == NULL) + init_table.is_vxworks = FALSE; + if (get_elf_x86_64_backend_data (info->output_bfd)->os == is_normal) { - if (pbfd != NULL) + if (info->bndplt) { - htab->elf.dynobj = pbfd; - dynobj = pbfd; + init_table.lazy_plt = &elf_x86_64_lazy_bnd_plt; + init_table.non_lazy_plt = &elf_x86_64_non_lazy_bnd_plt; } 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 ((abfd->flags - & (DYNAMIC | BFD_LINKER_CREATED | BFD_PLUGIN)) == 0) - { - htab->elf.dynobj = abfd; - dynobj = abfd; - break; - } + init_table.lazy_plt = &elf_x86_64_lazy_plt; + init_table.non_lazy_plt = &elf_x86_64_non_lazy_plt; } - } - /* Even when lazy binding is disabled by "-z now", the PLT0 entry may - still be used with LD_AUDIT or LD_PROFILE if PLT entry is used for - canonical function address. */ - htab->plt.has_plt0 = 1; - - if (get_elf_x86_64_backend_data (info->output_bfd)->os - == is_normal) - { - if (use_ibt_plt) - { - if (ABI_64_P (dynobj)) - { - htab->lazy_plt = &elf_x86_64_lazy_ibt_plt; - htab->non_lazy_plt = &elf_x86_64_non_lazy_ibt_plt; - } - else - { - htab->lazy_plt = &elf_x32_lazy_ibt_plt; - htab->non_lazy_plt = &elf_x32_non_lazy_ibt_plt; - } - } - else if (info->bndplt) + if (ABI_64_P (info->output_bfd)) { - htab->lazy_plt = &elf_x86_64_lazy_bnd_plt; - htab->non_lazy_plt = &elf_x86_64_non_lazy_bnd_plt; + init_table.lazy_ibt_plt = &elf_x86_64_lazy_ibt_plt; + init_table.non_lazy_ibt_plt = &elf_x86_64_non_lazy_ibt_plt; } else { - htab->lazy_plt = &elf_x86_64_lazy_plt; - htab->non_lazy_plt = &elf_x86_64_non_lazy_plt; + init_table.lazy_ibt_plt = &elf_x32_lazy_ibt_plt; + init_table.non_lazy_ibt_plt = &elf_x32_non_lazy_ibt_plt; } - normal_target = TRUE; + init_table.normal_target = TRUE; } else { - htab->lazy_plt = &elf_x86_64_nacl_plt; - htab->non_lazy_plt = NULL; - normal_target = FALSE; + init_table.lazy_plt = &elf_x86_64_nacl_plt; + init_table.non_lazy_plt = NULL; + init_table.lazy_ibt_plt = NULL; + init_table.non_lazy_ibt_plt = NULL; + init_table.normal_target = FALSE; } - pltsec = htab->elf.splt; - - /* If the non-lazy PLT is available, use it for all PLT entries if - there are no PLT0 or no .plt section. */ - if (htab->non_lazy_plt != NULL - && (!htab->plt.has_plt0 || pltsec == NULL)) + if (ABI_64_P (info->output_bfd)) { - lazy_plt = FALSE; - htab->plt.plt_entry - = htab->non_lazy_plt->plt_entry; - htab->plt.plt_entry_size - = htab->non_lazy_plt->plt_entry_size; - htab->plt.plt_got_offset - = htab->non_lazy_plt->plt_got_offset; - htab->plt.plt_got_insn_size - = htab->non_lazy_plt->plt_got_insn_size; - htab->plt.eh_frame_plt_size - = htab->non_lazy_plt->eh_frame_plt_size; - htab->plt.eh_frame_plt - = htab->non_lazy_plt->eh_frame_plt; + init_table.r_info = elf64_r_info; + init_table.r_sym = elf64_r_sym; } else { - lazy_plt = TRUE; - htab->plt.plt_entry - = htab->lazy_plt->plt_entry; - htab->plt.plt_entry_size - = htab->lazy_plt->plt_entry_size; - htab->plt.plt_got_offset - = htab->lazy_plt->plt_got_offset; - htab->plt.plt_got_insn_size - = htab->lazy_plt->plt_got_insn_size; - htab->plt.eh_frame_plt_size - = htab->lazy_plt->eh_frame_plt_size; - htab->plt.eh_frame_plt - = htab->lazy_plt->eh_frame_plt; - } - - /* Return if there are no normal input files. */ - if (dynobj == NULL) - return pbfd; - - /* Since create_dynamic_sections isn't always called, but GOT - relocations need GOT relocations, 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)) - info->callbacks->einfo (_("%F: failed to create GOT sections\n")); - - /* Align .got and .got.plt sections to their entry size. Do it here - instead of in create_dynamic_sections so that they are always - properly aligned even if create_dynamic_sections isn't called. */ - sec = htab->elf.sgot; - if (!bfd_set_section_alignment (dynobj, sec, 3)) - goto error_alignment; - - sec = htab->elf.sgotplt; - if (!bfd_set_section_alignment (dynobj, sec, 3)) - goto error_alignment; - - /* Create the ifunc sections here so that check_relocs can be - simplified. */ - if (!_bfd_elf_create_ifunc_sections (dynobj, info)) - info->callbacks->einfo (_("%F: failed to create ifunc sections\n")); - - plt_alignment = bfd_log2 (htab->plt.plt_entry_size); - - if (pltsec != NULL) - { - /* Whe creating executable, set the contents of the .interp - section to the interpreter. */ - if (bfd_link_executable (info) && !info->nointerp) - { - asection *s = bfd_get_linker_section (dynobj, ".interp"); - if (s == NULL) - abort (); - s->size = htab->dynamic_interpreter_size; - s->contents = (unsigned char *) htab->dynamic_interpreter; - htab->interp = s; - } - - /* Don't change PLT section alignment for NaCl since it uses - 64-byte PLT entry and sets PLT section alignment to 32 - bytes. Don't create additional PLT sections for NaCl. */ - if (normal_target) - { - const struct elf_backend_data *bed - = get_elf_backend_data (dynobj); - flagword pltflags = (bed->dynamic_sec_flags - | SEC_ALLOC - | SEC_CODE - | SEC_LOAD - | SEC_READONLY); - unsigned int non_lazy_plt_alignment - = bfd_log2 (htab->non_lazy_plt->plt_entry_size); - - sec = pltsec; - if (!bfd_set_section_alignment (sec->owner, sec, - plt_alignment)) - goto error_alignment; - - /* Create the GOT procedure linkage table. */ - sec = bfd_make_section_anyway_with_flags (dynobj, - ".plt.got", - pltflags); - if (sec == NULL) - info->callbacks->einfo (_("%F: failed to create GOT PLT section\n")); - - if (!bfd_set_section_alignment (dynobj, sec, - non_lazy_plt_alignment)) - goto error_alignment; - - htab->plt_got = sec; - - if (lazy_plt) - { - sec = NULL; - - if (use_ibt_plt) - { - /* Create the second PLT for Intel IBT support. IBT - PLT is supported only for non-NaCl target and is - is needed only for lazy binding. */ - sec = bfd_make_section_anyway_with_flags (dynobj, - ".plt.sec", - pltflags); - if (sec == NULL) - info->callbacks->einfo (_("%F: failed to create IBT-enabled PLT section\n")); - - if (!bfd_set_section_alignment (dynobj, sec, - plt_alignment)) - goto error_alignment; - } - else if (info->bndplt && ABI_64_P (dynobj)) - { - /* Create the second PLT for Intel MPX support. MPX - PLT is supported only for non-NaCl target in 64-bit - mode and is needed only for lazy binding. */ - sec = bfd_make_section_anyway_with_flags (dynobj, - ".plt.sec", - pltflags); - if (sec == NULL) - info->callbacks->einfo (_("%F: failed to create BND PLT section\n")); - - if (!bfd_set_section_alignment (dynobj, sec, - non_lazy_plt_alignment)) - goto error_alignment; - } - - htab->plt_second = sec; - } - } - - if (!info->no_ld_generated_unwind_info) - { - flagword flags = (SEC_ALLOC | SEC_LOAD | SEC_READONLY - | SEC_HAS_CONTENTS | SEC_IN_MEMORY - | SEC_LINKER_CREATED); - - sec = bfd_make_section_anyway_with_flags (dynobj, - ".eh_frame", - flags); - if (sec == NULL) - info->callbacks->einfo (_("%F: failed to create PLT .eh_frame section\n")); - - if (!bfd_set_section_alignment (dynobj, sec, - ABI_64_P (dynobj) ? 3 : 2)) - goto error_alignment; - - htab->plt_eh_frame = sec; - - if (htab->plt_got != NULL) - { - sec = bfd_make_section_anyway_with_flags (dynobj, - ".eh_frame", - flags); - if (sec == NULL) - info->callbacks->einfo (_("%F: failed to create GOT PLT .eh_frame section\n")); - - if (!bfd_set_section_alignment (dynobj, sec, - ABI_64_P (dynobj) ? 3 : 2)) - goto error_alignment; - - htab->plt_got_eh_frame = sec; - } - - if (htab->plt_second != NULL) - { - sec = bfd_make_section_anyway_with_flags (dynobj, - ".eh_frame", - flags); - if (sec == NULL) - info->callbacks->einfo (_("%F: failed to create BND PLT .eh_frame section\n")); - - if (!bfd_set_section_alignment (dynobj, sec, 3)) - goto error_alignment; - - htab->plt_second_eh_frame = sec; - } - } - } - - if (normal_target) - { - /* The .iplt section is used for IFUNC symbols in static - executables. */ - sec = htab->elf.iplt; - if (sec != NULL - && !bfd_set_section_alignment (sec->owner, sec, - plt_alignment)) - goto error_alignment; + init_table.r_info = elf32_r_info; + init_table.r_sym = elf32_r_sym; } - return pbfd; + return _bfd_x86_elf_link_setup_gnu_properties (info, &init_table); } static const struct bfd_elf_special_section @@ -7770,21 +5246,16 @@ elf_x86_64_special_sections[]= #define elf_info_to_howto elf_x86_64_info_to_howto -#define bfd_elf64_bfd_link_hash_table_create \ - elf_x86_64_link_hash_table_create #define bfd_elf64_bfd_reloc_type_lookup elf_x86_64_reloc_type_lookup #define bfd_elf64_bfd_reloc_name_lookup \ elf_x86_64_reloc_name_lookup -#define elf_backend_adjust_dynamic_symbol elf_x86_64_adjust_dynamic_symbol #define elf_backend_relocs_compatible elf_x86_64_relocs_compatible #define elf_backend_check_relocs elf_x86_64_check_relocs -#define elf_backend_copy_indirect_symbol elf_x86_64_copy_indirect_symbol #define elf_backend_create_dynamic_sections _bfd_elf_create_dynamic_sections #define elf_backend_finish_dynamic_sections elf_x86_64_finish_dynamic_sections #define elf_backend_finish_dynamic_symbol elf_x86_64_finish_dynamic_symbol #define elf_backend_output_arch_local_syms elf_x86_64_output_arch_local_syms -#define elf_backend_gc_mark_hook elf_x86_64_gc_mark_hook #define elf_backend_grok_prstatus elf_x86_64_grok_prstatus #define elf_backend_grok_psinfo elf_x86_64_grok_psinfo #ifdef CORE_HEADER @@ -7792,11 +5263,8 @@ elf_x86_64_special_sections[]= #endif #define elf_backend_reloc_type_class elf_x86_64_reloc_type_class #define elf_backend_relocate_section elf_x86_64_relocate_section -#define elf_backend_size_dynamic_sections elf_x86_64_size_dynamic_sections -#define elf_backend_always_size_sections elf_x86_64_always_size_sections #define elf_backend_init_index_section _bfd_elf_init_1_index_section #define elf_backend_object_p elf64_x86_64_elf_object_p -#define bfd_elf64_mkobject elf_x86_64_mkobject #define bfd_elf64_get_synthetic_symtab elf_x86_64_get_synthetic_symtab #define elf_backend_section_from_shdr \ @@ -7820,16 +5288,6 @@ elf_x86_64_special_sections[]= elf_x86_64_special_sections #define elf_backend_additional_program_headers \ elf_x86_64_additional_program_headers -#define elf_backend_hash_symbol \ - elf_x86_64_hash_symbol -#define elf_backend_omit_section_dynsym \ - ((bfd_boolean (*) (bfd *, struct bfd_link_info *, asection *)) bfd_true) -#define elf_backend_fixup_symbol \ - elf_x86_64_fixup_symbol -#define elf_backend_parse_gnu_properties \ - elf_x86_64_parse_gnu_properties -#define elf_backend_merge_gnu_properties \ - elf_x86_64_merge_gnu_properties #define elf_backend_setup_gnu_properties \ elf_x86_64_link_setup_gnu_properties @@ -8033,9 +5491,10 @@ static const bfd_byte elf_x86_64_nacl_eh_frame_plt[] = DW_CFA_nop, DW_CFA_nop }; -static const struct elf_x86_64_lazy_plt_layout elf_x86_64_nacl_plt = +static const struct elf_x86_lazy_plt_layout elf_x86_64_nacl_plt = { elf_x86_64_nacl_plt0_entry, /* plt0_entry */ + NACL_PLT_ENTRY_SIZE, /* plt0_entry_size */ elf_x86_64_nacl_plt_entry, /* plt_entry */ NACL_PLT_ENTRY_SIZE, /* plt_entry_size */ 2, /* plt0_got1_offset */ @@ -8047,6 +5506,8 @@ static const struct elf_x86_64_lazy_plt_layout elf_x86_64_nacl_plt = 7, /* plt_got_insn_size */ 42, /* plt_plt_insn_end */ 32, /* plt_lazy_offset */ + elf_x86_64_nacl_plt0_entry, /* pic_plt0_entry */ + elf_x86_64_nacl_plt_entry, /* pic_plt_entry */ elf_x86_64_nacl_eh_frame_plt, /* eh_frame_plt */ sizeof (elf_x86_64_nacl_eh_frame_plt) /* eh_frame_plt_size */ }; @@ -8087,14 +5548,10 @@ elf32_x86_64_nacl_elf_object_p (bfd *abfd) #undef elf32_bed #define elf32_bed elf32_x86_64_nacl_bed -#define bfd_elf32_bfd_link_hash_table_create \ - elf_x86_64_link_hash_table_create #define bfd_elf32_bfd_reloc_type_lookup \ elf_x86_64_reloc_type_lookup #define bfd_elf32_bfd_reloc_name_lookup \ elf_x86_64_reloc_name_lookup -#define bfd_elf32_mkobject \ - elf_x86_64_mkobject #define bfd_elf32_get_synthetic_symtab \ elf_x86_64_get_synthetic_symtab diff --git a/bfd/elfcode.h b/bfd/elfcode.h index cbc534f..6114b11 100644 --- a/bfd/elfcode.h +++ b/bfd/elfcode.h @@ -1190,9 +1190,9 @@ elf_slurp_symbol_table (bfd *abfd, asymbol **symptrs, bfd_boolean dynamic) { _bfd_error_handler /* xgettext:c-format */ - (_("%B: version count (%ld) does not match symbol count (%ld)"), + (_("%B: version count (%Ld) does not match symbol count (%ld)"), abfd, - (long) (verhdr->sh_size / sizeof (Elf_External_Versym)), + verhdr->sh_size / sizeof (Elf_External_Versym), symcount); /* Slurp in the symbols without the version information, diff --git a/bfd/elfcore.h b/bfd/elfcore.h index d871bc1..b1b60ec 100644 --- a/bfd/elfcore.h +++ b/bfd/elfcore.h @@ -297,9 +297,9 @@ elf_core_file_p (bfd *abfd) { _bfd_error_handler /* xgettext:c-format */ - (_("Warning: %B is truncated: expected core file " - "size >= %lu, found: %lu."), - abfd, (unsigned long) high, (unsigned long) statbuf.st_size); + (_("warning: %B is truncated: expected core file " + "size >= %Lu, found: %llu"), + abfd, high, (unsigned long long) statbuf.st_size); } } } diff --git a/bfd/elflink.c b/bfd/elflink.c index bb1a30a..ee5c01f 100644 --- a/bfd/elflink.c +++ b/bfd/elflink.c @@ -2394,9 +2394,9 @@ elf_link_read_relocs_from_section (bfd *abfd, { _bfd_error_handler /* xgettext:c-format */ - (_("%B: bad reloc symbol index (%#lx >= %#lx)" + (_("%B: bad reloc symbol index (%#Lx >= %#lx)" " for offset %#Lx in section `%A'"), - abfd, (unsigned long) r_symndx, (unsigned long) nsyms, + abfd, r_symndx, (unsigned long) nsyms, irela->r_offset, sec); bfd_set_error (bfd_error_bad_value); return FALSE; @@ -2406,10 +2406,10 @@ elf_link_read_relocs_from_section (bfd *abfd, { _bfd_error_handler /* xgettext:c-format */ - (_("%B: non-zero symbol index (%#lx)" + (_("%B: non-zero symbol index (%#Lx)" " for offset %#Lx in section `%A'" " when the object file has no symbol table"), - abfd, (unsigned long) r_symndx, (unsigned long) nsyms, + abfd, r_symndx, irela->r_offset, sec); bfd_set_error (bfd_error_bad_value); return FALSE; @@ -2935,7 +2935,7 @@ _bfd_elf_adjust_dynamic_copy (struct bfd_link_info *info, bfd_vma mask; asection *sec = h->root.u.def.section; - /* The section aligment of definition is the maximum alignment + /* The section alignment of the definition is the maximum alignment requirement of symbols defined in the section. Since we don't know the symbol alignment requirement, we start with the maximum alignment and check low bits of the symbol address @@ -4254,6 +4254,12 @@ error_free_dyn: sec = NULL; value = isym->st_value; common = bed->common_definition (isym); + if (common && info->inhibit_common_definition) + { + /* Treat common symbol as undefined for --no-define-common. */ + isym->st_shndx = SHN_UNDEF; + common = FALSE; + } discarded = FALSE; bind = ELF_ST_BIND (isym->st_info); @@ -6000,19 +6006,18 @@ bfd_elf_size_dynamic_sections (bfd *output_bfd, struct elf_info_failed asvinfo; struct bfd_elf_version_tree *t; struct bfd_elf_version_expr *d; - struct elf_info_failed eif; - bfd_boolean all_defined; asection *s; size_t soname_indx; - eif.info = info; - eif.failed = FALSE; - /* If we are supposed to export all symbols into the dynamic symbol table (this is not the normal case), then do so. */ if (info->export_dynamic || (bfd_link_executable (info) && info->dynamic)) { + struct elf_info_failed eif; + + eif.info = info; + eif.failed = FALSE; elf_link_hash_traverse (elf_hash_table (info), _bfd_elf_export_symbol, &eif); @@ -6096,7 +6101,7 @@ bfd_elf_size_dynamic_sections (bfd *output_bfd, if (!info->allow_undefined_version) { /* Check if all global versions have a definition. */ - all_defined = TRUE; + bfd_boolean all_defined = TRUE; for (t = info->version_info; t != NULL; t = t->next) for (d = t->globals.list; d != NULL; d = d->next) if (d->literal && !d->symver && !d->script) @@ -6349,134 +6354,128 @@ bfd_elf_size_dynamic_sections (bfd *output_bfd, elf_tdata (output_bfd)->cverdefs = cdefs; } + } + + bed = get_elf_backend_data (output_bfd); + + if (info->gc_sections && bed->can_gc_sections) + { + struct elf_gc_sweep_symbol_info sweep_info; + + /* Remove the symbols that were in the swept sections from the + dynamic symbol table. */ + sweep_info.info = info; + sweep_info.hide_symbol = bed->elf_backend_hide_symbol; + elf_link_hash_traverse (elf_hash_table (info), elf_gc_sweep_symbol, + &sweep_info); + } + + if (dynobj != NULL && elf_hash_table (info)->dynamic_sections_created) + { + asection *s; + struct elf_find_verdep_info sinfo; /* Work out the size of the version reference section. */ s = bfd_get_linker_section (dynobj, ".gnu.version_r"); BFD_ASSERT (s != NULL); - { - struct elf_find_verdep_info sinfo; - sinfo.info = info; - sinfo.vers = elf_tdata (output_bfd)->cverdefs; - if (sinfo.vers == 0) - sinfo.vers = 1; - sinfo.failed = FALSE; + sinfo.info = info; + sinfo.vers = elf_tdata (output_bfd)->cverdefs; + if (sinfo.vers == 0) + sinfo.vers = 1; + sinfo.failed = FALSE; - elf_link_hash_traverse (elf_hash_table (info), - _bfd_elf_link_find_version_dependencies, - &sinfo); - if (sinfo.failed) - return FALSE; - - if (elf_tdata (output_bfd)->verref == NULL) - s->flags |= SEC_EXCLUDE; - else - { - Elf_Internal_Verneed *vn; - unsigned int size; - unsigned int crefs; - bfd_byte *p; - - /* Build the version dependency section. */ - size = 0; - crefs = 0; - for (vn = elf_tdata (output_bfd)->verref; - vn != NULL; - vn = vn->vn_nextref) - { - Elf_Internal_Vernaux *a; + elf_link_hash_traverse (elf_hash_table (info), + _bfd_elf_link_find_version_dependencies, + &sinfo); + if (sinfo.failed) + return FALSE; - size += sizeof (Elf_External_Verneed); - ++crefs; - for (a = vn->vn_auxptr; a != NULL; a = a->vna_nextptr) - size += sizeof (Elf_External_Vernaux); - } + if (elf_tdata (output_bfd)->verref == NULL) + s->flags |= SEC_EXCLUDE; + else + { + Elf_Internal_Verneed *vn; + unsigned int size; + unsigned int crefs; + bfd_byte *p; - s->size = size; - s->contents = (unsigned char *) bfd_alloc (output_bfd, s->size); - if (s->contents == NULL) - return FALSE; + /* Build the version dependency section. */ + size = 0; + crefs = 0; + for (vn = elf_tdata (output_bfd)->verref; + vn != NULL; + vn = vn->vn_nextref) + { + Elf_Internal_Vernaux *a; - p = s->contents; - for (vn = elf_tdata (output_bfd)->verref; - vn != NULL; - vn = vn->vn_nextref) - { - unsigned int caux; - Elf_Internal_Vernaux *a; - size_t indx; - - caux = 0; - for (a = vn->vn_auxptr; a != NULL; a = a->vna_nextptr) - ++caux; - - vn->vn_version = VER_NEED_CURRENT; - vn->vn_cnt = caux; - indx = _bfd_elf_strtab_add (elf_hash_table (info)->dynstr, - elf_dt_name (vn->vn_bfd) != NULL - ? elf_dt_name (vn->vn_bfd) - : lbasename (vn->vn_bfd->filename), - FALSE); - if (indx == (size_t) -1) - return FALSE; - vn->vn_file = indx; - vn->vn_aux = sizeof (Elf_External_Verneed); - if (vn->vn_nextref == NULL) - vn->vn_next = 0; - else - vn->vn_next = (sizeof (Elf_External_Verneed) - + caux * sizeof (Elf_External_Vernaux)); + size += sizeof (Elf_External_Verneed); + ++crefs; + for (a = vn->vn_auxptr; a != NULL; a = a->vna_nextptr) + size += sizeof (Elf_External_Vernaux); + } - _bfd_elf_swap_verneed_out (output_bfd, vn, - (Elf_External_Verneed *) p); - p += sizeof (Elf_External_Verneed); + s->size = size; + s->contents = (unsigned char *) bfd_alloc (output_bfd, s->size); + if (s->contents == NULL) + return FALSE; - for (a = vn->vn_auxptr; a != NULL; a = a->vna_nextptr) - { - a->vna_hash = bfd_elf_hash (a->vna_nodename); - indx = _bfd_elf_strtab_add (elf_hash_table (info)->dynstr, - a->vna_nodename, FALSE); - if (indx == (size_t) -1) - return FALSE; - a->vna_name = indx; - if (a->vna_nextptr == NULL) - a->vna_next = 0; - else - a->vna_next = sizeof (Elf_External_Vernaux); + p = s->contents; + for (vn = elf_tdata (output_bfd)->verref; + vn != NULL; + vn = vn->vn_nextref) + { + unsigned int caux; + Elf_Internal_Vernaux *a; + size_t indx; - _bfd_elf_swap_vernaux_out (output_bfd, a, - (Elf_External_Vernaux *) p); - p += sizeof (Elf_External_Vernaux); - } - } + caux = 0; + for (a = vn->vn_auxptr; a != NULL; a = a->vna_nextptr) + ++caux; - elf_tdata (output_bfd)->cverrefs = crefs; - } - } - } + vn->vn_version = VER_NEED_CURRENT; + vn->vn_cnt = caux; + indx = _bfd_elf_strtab_add (elf_hash_table (info)->dynstr, + elf_dt_name (vn->vn_bfd) != NULL + ? elf_dt_name (vn->vn_bfd) + : lbasename (vn->vn_bfd->filename), + FALSE); + if (indx == (size_t) -1) + return FALSE; + vn->vn_file = indx; + vn->vn_aux = sizeof (Elf_External_Verneed); + if (vn->vn_nextref == NULL) + vn->vn_next = 0; + else + vn->vn_next = (sizeof (Elf_External_Verneed) + + caux * sizeof (Elf_External_Vernaux)); - bed = get_elf_backend_data (output_bfd); + _bfd_elf_swap_verneed_out (output_bfd, vn, + (Elf_External_Verneed *) p); + p += sizeof (Elf_External_Verneed); - if (info->gc_sections && bed->can_gc_sections) - { - struct elf_gc_sweep_symbol_info sweep_info; - unsigned long section_sym_count; + for (a = vn->vn_auxptr; a != NULL; a = a->vna_nextptr) + { + a->vna_hash = bfd_elf_hash (a->vna_nodename); + indx = _bfd_elf_strtab_add (elf_hash_table (info)->dynstr, + a->vna_nodename, FALSE); + if (indx == (size_t) -1) + return FALSE; + a->vna_name = indx; + if (a->vna_nextptr == NULL) + a->vna_next = 0; + else + a->vna_next = sizeof (Elf_External_Vernaux); - /* Remove the symbols that were in the swept sections from the - dynamic symbol table. GCFIXME: Anyone know how to get them - out of the static symbol table as well? */ - sweep_info.info = info; - sweep_info.hide_symbol = bed->elf_backend_hide_symbol; - elf_link_hash_traverse (elf_hash_table (info), elf_gc_sweep_symbol, - &sweep_info); + _bfd_elf_swap_vernaux_out (output_bfd, a, + (Elf_External_Vernaux *) p); + p += sizeof (Elf_External_Vernaux); + } + } - /* We need to reassign dynsym indices now that symbols may have - been removed. See the call in `bfd_elf_size_dynsym_hash_dynstr' - for the details of the conditions used here. */ - if (elf_hash_table (info)->dynamic_sections_created - || bed->always_renumber_dynsyms) - _bfd_elf_link_renumber_dynsyms (output_bfd, info, §ion_sym_count); + elf_tdata (output_bfd)->cverrefs = crefs; + } } /* Any syms created from now on start with -1 in @@ -6786,7 +6785,7 @@ bfd_elf_size_dynamic_sections (bfd *output_bfd, if ((elf_tdata (output_bfd)->cverrefs == 0 && elf_tdata (output_bfd)->cverdefs == 0) || _bfd_elf_link_renumber_dynsyms (output_bfd, info, - §ion_sym_count) == 0) + §ion_sym_count) <= 1) { asection *s; @@ -6849,7 +6848,7 @@ bfd_elf_size_dynsym_hash_dynstr (bfd *output_bfd, struct bfd_link_info *info) { const struct elf_backend_data *bed; unsigned long section_sym_count; - bfd_size_type dynsymcount; + bfd_size_type dynsymcount = 0; if (!is_elf_hash_table (info->hash)) return TRUE; @@ -8616,8 +8615,7 @@ elf_link_adjust_relocs (bfd *abfd, abfd, sec, (*rel_hash)->root.root.string); _bfd_error_handler (_("%B:%A: error: try relinking with --gc-keep-exported enabled."), - abfd, sec, - (*rel_hash)->root.root.string); + abfd, sec); bfd_set_error (bfd_error_invalid_operation); return FALSE; } @@ -12338,7 +12336,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); @@ -13831,6 +13829,7 @@ bfd_elf_discard_info (bfd *output_bfd, struct bfd_link_info *info) { asection *i; int eh_changed = 0; + unsigned int eh_alignment; for (i = o->map_head.s; i != NULL; i = i->map_head.s) { @@ -13856,6 +13855,36 @@ bfd_elf_discard_info (bfd *output_bfd, struct bfd_link_info *info) fini_reloc_cookie_for_section (&cookie, i); } + + eh_alignment = 1 << o->alignment_power; + /* Skip over zero terminator, and prevent empty sections from + adding alignment padding at the end. */ + for (i = o->map_tail.s; i != NULL; i = i->map_tail.s) + if (i->size == 0) + i->flags |= SEC_EXCLUDE; + else if (i->size > 4) + break; + /* The last non-empty eh_frame section doesn't need padding. */ + if (i != NULL) + i = i->map_tail.s; + /* Any prior sections must pad the last FDE out to the output + section alignment. Otherwise we might have zero padding + between sections, which would be seen as a terminator. */ + for (; i != NULL; i = i->map_tail.s) + if (i->size == 4) + /* All but the last zero terminator should have been removed. */ + BFD_FAIL (); + else + { + bfd_size_type size + = (i->size + eh_alignment - 1) & -eh_alignment; + if (i->size != size) + { + i->size = size; + changed = 1; + eh_changed = 1; + } + } if (eh_changed) elf_link_hash_traverse (elf_hash_table (info), _bfd_elf_adjust_eh_frame_global_symbol, NULL); @@ -14226,18 +14255,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..9297056 100644 --- a/bfd/elfnn-aarch64.c +++ b/bfd/elfnn-aarch64.c @@ -3281,7 +3281,7 @@ aarch64_mem_op_p (uint32_t insn, unsigned int *rt, unsigned int *rt2, uint32_t v = 0; uint32_t opc_v = 0; - /* Bail out quickly if INSN doesn't fall into the the load-store + /* Bail out quickly if INSN doesn't fall into the load-store encoding space. */ if (!AARCH64_LDST (insn)) return FALSE; @@ -4944,7 +4944,7 @@ elfNN_aarch64_final_link_relocate (reloc_howto_type *howto, = elfNN_aarch64_bfd_reloc_from_howto (howto); unsigned long r_symndx; bfd_byte *hit_data = contents + rel->r_offset; - bfd_vma place, off, got_entry_addr; + bfd_vma place, off, got_entry_addr = 0; bfd_signed_vma signed_addend; struct elf_aarch64_link_hash_table *globals; bfd_boolean weak_undef_p; @@ -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 @@ -5016,7 +5035,7 @@ elfNN_aarch64_final_link_relocate (reloc_howto_type *howto, _bfd_error_handler /* xgettext:c-format */ (_("%B: relocation %s against STT_GNU_IFUNC " - "symbol `%s' has non-zero addend: %d"), + "symbol `%s' has non-zero addend: %Ld"), input_bfd, howto->name, name, rel->r_addend); bfd_set_error (bfd_error_bad_value); return FALSE; @@ -6072,17 +6091,11 @@ elfNN_aarch64_relocate_section (bfd *output_bfd, r_symndx = ELFNN_R_SYM (rel->r_info); r_type = ELFNN_R_TYPE (rel->r_info); - bfd_reloc.howto = elfNN_aarch64_howto_from_type (r_type); - howto = bfd_reloc.howto; + howto = bfd_reloc.howto = elfNN_aarch64_howto_from_type (r_type); if (howto == NULL) - { - /* xgettext:c-format */ - _bfd_error_handler - (_("%B: unrecognized relocation (0x%x) in section `%A'"), - input_bfd, r_type, input_section); - return FALSE; - } + return _bfd_unrecognized_reloc (input_bfd, input_section, r_type); + bfd_r_type = elfNN_aarch64_bfd_reloc_from_howto (howto); h = NULL; @@ -6162,11 +6175,11 @@ elfNN_aarch64_relocate_section (bfd *output_bfd, _bfd_error_handler ((sym_type == STT_TLS /* xgettext:c-format */ - ? _("%B(%A+0x%lx): %s used with TLS symbol %s") + ? _("%B(%A+%#Lx): %s used with TLS symbol %s") /* xgettext:c-format */ - : _("%B(%A+0x%lx): %s used with non-TLS symbol %s")), + : _("%B(%A+%#Lx): %s used with non-TLS symbol %s")), input_bfd, - input_section, (long) rel->r_offset, howto->name, name); + input_section, rel->r_offset, howto->name, name); } /* We relax only if we can see that there can be a valid transition @@ -6434,8 +6447,8 @@ elfNN_aarch64_relocate_section (bfd *output_bfd, { _bfd_error_handler /* xgettext:c-format */ - (_("%B(%A+0x%lx): unresolvable %s relocation against symbol `%s'"), - input_bfd, input_section, (long) rel->r_offset, howto->name, + (_("%B(%A+%#Lx): unresolvable %s relocation against symbol `%s'"), + input_bfd, input_section, rel->r_offset, howto->name, h->root.root.string); return FALSE; } @@ -7101,7 +7114,7 @@ elfNN_aarch64_check_relocs (bfd *abfd, struct bfd_link_info *info, for (rel = relocs; rel < rel_end; rel++) { struct elf_link_hash_entry *h; - unsigned long r_symndx; + unsigned int r_symndx; unsigned int r_type; bfd_reloc_code_real_type bfd_r_type; Elf_Internal_Sym *isym; @@ -7634,8 +7647,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/elfnn-ia64.c b/bfd/elfnn-ia64.c index 7f90c93..2e70db6 100644 --- a/bfd/elfnn-ia64.c +++ b/bfd/elfnn-ia64.c @@ -617,9 +617,9 @@ elfNN_ia64_relax_section (bfd *abfd, asection *sec, { _bfd_error_handler /* xgettext:c-format */ - (_("%B: Can't relax br at 0x%lx in section `%A'." + (_("%B: Can't relax br at %#Lx in section `%A'." " Please use brl or indirect branch."), - sec->owner, (unsigned long) roff, sec); + sec->owner, roff, sec); bfd_set_error (bfd_error_bad_value); goto error_return; } @@ -3685,8 +3685,8 @@ elfNN_ia64_choose_gp (bfd *abfd, struct bfd_link_info *info, bfd_boolean final) overflow: _bfd_error_handler /* xgettext:c-format */ - (_("%B: short data segment overflowed (0x%lx >= 0x400000)"), - abfd, (unsigned long) (max_short_vma - min_short_vma)); + (_("%B: short data segment overflowed (%#Lx >= 0x400000)"), + abfd, max_short_vma - min_short_vma); return FALSE; } else if ((gp_val > min_short_vma @@ -4473,7 +4473,7 @@ missing_tls_sec: _bfd_error_handler /* xgettext:c-format */ (_("%B: missing TLS section for relocation %s against `%s'" - " at 0x%lx in section `%A'."), + " at %#Lx in section `%A'."), input_bfd, howto->name, name, rel->r_offset, input_section); break; @@ -4489,8 +4489,8 @@ missing_tls_sec: that the section is too big to relax. */ _bfd_error_handler /* xgettext:c-format */ - (_("%B: Can't relax br (%s) to `%s' at 0x%lx" - " in section `%A' with size 0x%lx (> 0x1000000)."), + (_("%B: Can't relax br (%s) to `%s' at %#Lx" + " in section `%A' with size %#Lx (> 0x1000000)."), input_bfd, howto->name, name, rel->r_offset, input_section, input_section->size); break; diff --git a/bfd/elfnn-riscv.c b/bfd/elfnn-riscv.c index 6d297ce..b4d7b9b 100644 --- a/bfd/elfnn-riscv.c +++ b/bfd/elfnn-riscv.c @@ -515,7 +515,7 @@ riscv_elf_check_relocs (bfd *abfd, struct bfd_link_info *info, for (rel = relocs; rel < relocs + sec->reloc_count; rel++) { unsigned int r_type; - unsigned long r_symndx; + unsigned int r_symndx; struct elf_link_hash_entry *h; r_symndx = ELFNN_R_SYM (rel->r_info); @@ -1651,9 +1651,50 @@ riscv_free_pcrel_relocs (riscv_pcrel_relocs *p) } static bfd_boolean -riscv_record_pcrel_hi_reloc (riscv_pcrel_relocs *p, bfd_vma addr, bfd_vma value) +riscv_zero_pcrel_hi_reloc (Elf_Internal_Rela *rel, + struct bfd_link_info *info, + bfd_vma pc, + bfd_vma addr, + bfd_byte *contents, + const reloc_howto_type *howto, + bfd *input_bfd) { - riscv_pcrel_hi_reloc entry = {addr, value - addr}; + /* We may need to reference low addreses in PC-relative modes even when the + * PC is far away from these addresses. For example, undefweak references + * need to produce the address 0 when linked. As 0 is far from the arbitrary + * addresses that we can link PC-relative programs at, the linker can't + * actually relocate references to those symbols. In order to allow these + * programs to work we simply convert the PC-relative auipc sequences to + * 0-relative lui sequences. */ + if (bfd_link_pic (info)) + return FALSE; + + /* If it's possible to reference the symbol using auipc we do so, as that's + * more in the spirit of the PC-relative relocations we're processing. */ + bfd_vma offset = addr - pc; + if (ARCH_SIZE == 32 || VALID_UTYPE_IMM (RISCV_CONST_HIGH_PART (offset))) + return FALSE; + + /* If it's impossible to reference this with a LUI-based offset then don't + * bother to convert it at all so users still see the PC-relative relocation + * in the truncation message. */ + if (ARCH_SIZE > 32 && !VALID_UTYPE_IMM (RISCV_CONST_HIGH_PART (addr))) + return FALSE; + + rel->r_info = ELFNN_R_INFO(addr, R_RISCV_HI20); + + bfd_vma insn = bfd_get(howto->bitsize, input_bfd, contents + rel->r_offset); + insn = (insn & ~MASK_AUIPC) | MATCH_LUI; + bfd_put(howto->bitsize, input_bfd, insn, contents + rel->r_offset); + return TRUE; +} + +static bfd_boolean +riscv_record_pcrel_hi_reloc (riscv_pcrel_relocs *p, bfd_vma addr, + bfd_vma value, bfd_boolean absolute) +{ + bfd_vma offset = absolute ? value : value - addr; + riscv_pcrel_hi_reloc entry = {addr, offset}; riscv_pcrel_hi_reloc **slot = (riscv_pcrel_hi_reloc **) htab_find_slot (p->hi_relocs, &entry, INSERT); @@ -1758,6 +1799,7 @@ riscv_elf_relocate_section (bfd *output_bfd, Elf_Internal_Shdr *symtab_hdr = &elf_symtab_hdr (input_bfd); struct elf_link_hash_entry **sym_hashes = elf_sym_hashes (input_bfd); bfd_vma *local_got_offsets = elf_local_got_offsets (input_bfd); + bfd_boolean absolute; if (!riscv_init_pcrel_relocs (&pcrel_relocs)) return FALSE; @@ -1931,7 +1973,17 @@ riscv_elf_relocate_section (bfd *output_bfd, } } relocation = sec_addr (htab->elf.sgot) + off; - if (!riscv_record_pcrel_hi_reloc (&pcrel_relocs, pc, relocation)) + absolute = riscv_zero_pcrel_hi_reloc (rel, + info, + pc, + relocation, + contents, + howto, + input_bfd); + r_type = ELFNN_R_TYPE (rel->r_info); + howto = riscv_elf_rtype_to_howto (r_type); + if (!riscv_record_pcrel_hi_reloc (&pcrel_relocs, pc, + relocation, absolute)) r = bfd_reloc_overflow; break; @@ -2017,8 +2069,18 @@ riscv_elf_relocate_section (bfd *output_bfd, } case R_RISCV_PCREL_HI20: + absolute = riscv_zero_pcrel_hi_reloc (rel, + info, + pc, + relocation, + contents, + howto, + input_bfd); + r_type = ELFNN_R_TYPE (rel->r_info); + howto = riscv_elf_rtype_to_howto (r_type); if (!riscv_record_pcrel_hi_reloc (&pcrel_relocs, pc, - relocation + rel->r_addend)) + relocation + rel->r_addend, + absolute)) r = bfd_reloc_overflow; break; @@ -2214,7 +2276,8 @@ riscv_elf_relocate_section (bfd *output_bfd, BFD_ASSERT (off < (bfd_vma) -2); relocation = sec_addr (htab->elf.sgot) + off + (is_ie ? ie_off : 0); - if (!riscv_record_pcrel_hi_reloc (&pcrel_relocs, pc, relocation)) + if (!riscv_record_pcrel_hi_reloc (&pcrel_relocs, pc, + relocation, FALSE)) r = bfd_reloc_overflow; unresolved_reloc = FALSE; break; @@ -2233,10 +2296,10 @@ riscv_elf_relocate_section (bfd *output_bfd, rel->r_offset) != (bfd_vma) -1) { (*_bfd_error_handler) - (_("%B(%A+0x%lx): unresolvable %s relocation against symbol `%s'"), + (_("%B(%A+%#Lx): unresolvable %s relocation against symbol `%s'"), input_bfd, input_section, - (long) rel->r_offset, + rel->r_offset, howto->name, h->root.root.string); continue; @@ -2923,7 +2986,7 @@ _bfd_riscv_relax_tls_le (bfd *abfd, static bfd_boolean _bfd_riscv_relax_align (bfd *abfd, asection *sec, - asection *sym_sec ATTRIBUTE_UNUSED, + asection *sym_sec, struct bfd_link_info *link_info ATTRIBUTE_UNUSED, Elf_Internal_Rela *rel, bfd_vma symval, @@ -2945,7 +3008,14 @@ _bfd_riscv_relax_align (bfd *abfd, asection *sec, /* Make sure there are enough NOPs to actually achieve the alignment. */ if (rel->r_addend < nop_bytes) - return FALSE; + { + (*_bfd_error_handler) + (_("%B(%A+0x%lx): %d bytes required for alignment" + "to %d-byte boundary, but only %d present"), + abfd, sym_sec, rel->r_offset, nop_bytes, alignment, rel->r_addend); + bfd_set_error (bfd_error_bad_value); + return FALSE; + } /* Delete the reloc. */ rel->r_info = ELFNN_R_INFO (0, R_RISCV_NONE); diff --git a/bfd/elfxx-mips.c b/bfd/elfxx-mips.c index 2eb3dd3..6a4d3e1 100644 --- a/bfd/elfxx-mips.c +++ b/bfd/elfxx-mips.c @@ -5456,7 +5456,7 @@ mips_elf_calculate_relocation (bfd *abfd, bfd *input_bfd, { /* If this is a dynamic link, we should have created a _DYNAMIC_LINK symbol or _DYNAMIC_LINKING(for normal mips) symbol - in in _bfd_mips_elf_create_dynamic_sections. + in _bfd_mips_elf_create_dynamic_sections. Otherwise, we should define the symbol with a value of 0. FIXME: It should probably get into the symbol table somehow as well. */ @@ -6414,6 +6414,7 @@ mips_elf_perform_relocation (struct bfd_link_info *info, bfd_boolean ok = FALSE; bfd_vma opcode = x >> 16; bfd_vma jalx_opcode = 0; + bfd_vma sign_bit = 0; bfd_vma addr; bfd_vma dest; @@ -6421,12 +6422,14 @@ mips_elf_perform_relocation (struct bfd_link_info *info, { ok = opcode == 0x4060; jalx_opcode = 0x3c; + sign_bit = 0x10000; value <<= 1; } else if (r_type == R_MIPS_PC16 || r_type == R_MIPS_GNU_REL16_S2) { ok = opcode == 0x411; jalx_opcode = 0x1d; + sign_bit = 0x20000; value <<= 2; } @@ -6436,7 +6439,8 @@ mips_elf_perform_relocation (struct bfd_link_info *info, + input_section->output_offset + relocation->r_offset + 4); - dest = addr + (((value & 0x3ffff) ^ 0x20000) - 0x20000); + dest = (addr + + (((value & ((sign_bit << 1) - 1)) ^ sign_bit) - sign_bit)); if ((addr >> 28) << 28 != (dest >> 28) << 28) { @@ -6955,7 +6959,7 @@ _bfd_mips_elf_symbol_processing (bfd *abfd, asymbol *asym) { asym->section = section; /* MIPS_TEXT is a bit special, the address is not an offset - to the base of the .text section. So substract the section + to the base of the .text section. So subtract the section base address to make it an offset. */ asym->value -= section->vma; } @@ -6970,7 +6974,7 @@ _bfd_mips_elf_symbol_processing (bfd *abfd, asymbol *asym) { asym->section = section; /* MIPS_DATA is a bit special, the address is not an offset - to the base of the .data section. So substract the section + to the base of the .data section. So subtract the section base address to make it an offset. */ asym->value -= section->vma; } @@ -8456,8 +8460,8 @@ _bfd_mips_elf_check_relocs (bfd *abfd, struct bfd_link_info *info, { _bfd_error_handler /* xgettext:c-format */ - (_("%B: GOT reloc at 0x%lx not expected in executables"), - abfd, (unsigned long) rel->r_offset); + (_("%B: GOT reloc at %#Lx not expected in executables"), + abfd, rel->r_offset); bfd_set_error (bfd_error_bad_value); return FALSE; } @@ -8594,8 +8598,8 @@ _bfd_mips_elf_check_relocs (bfd *abfd, struct bfd_link_info *info, { _bfd_error_handler /* xgettext:c-format */ - (_("%B: CALL16 reloc at 0x%lx not against global symbol"), - abfd, (unsigned long) rel->r_offset); + (_("%B: CALL16 reloc at %#Lx not against global symbol"), + abfd, rel->r_offset); bfd_set_error (bfd_error_bad_value); return FALSE; } @@ -10137,7 +10141,7 @@ _bfd_mips_elf_relocate_section (bfd *output_bfd, struct bfd_link_info *info, _bfd_error_handler /* xgettext:c-format */ (_("%B: Can't find matching LO16 reloc against `%s'" - " for %s at 0x%lx in section `%A'"), + " for %s at %#Lx in section `%A'"), input_bfd, name, howto->name, rel->r_offset, input_section); } @@ -10680,11 +10684,11 @@ _bfd_mips_elf_finish_dynamic_symbol (bfd *output_bfd, { _bfd_error_handler /* xgettext:c-format */ - (_("%B: `%A' offset of %ld from `%A' " + (_("%B: `%A' offset of %Ld from `%A' " "beyond the range of ADDIUPC"), output_bfd, htab->root.sgotplt->output_section, - (long) gotpc_offset, + gotpc_offset, htab->root.splt->output_section); bfd_set_error (bfd_error_no_error); return FALSE; @@ -11248,10 +11252,10 @@ mips_finish_exec_plt (bfd *output_bfd, struct bfd_link_info *info) { _bfd_error_handler /* xgettext:c-format */ - (_("%B: `%A' offset of %ld from `%A' beyond the range of ADDIUPC"), + (_("%B: `%A' offset of %Ld from `%A' beyond the range of ADDIUPC"), output_bfd, htab->root.sgotplt->output_section, - (long) gotpc_offset, + gotpc_offset, htab->root.splt->output_section); bfd_set_error (bfd_error_no_error); return FALSE; @@ -15124,10 +15128,9 @@ mips_elf_merge_obj_e_flags (bfd *ibfd, struct bfd_link_info *info) { /* xgettext:c-format */ _bfd_error_handler - (_("%B: uses different e_flags (0x%lx) fields than previous modules " - "(0x%lx)"), - ibfd, (unsigned long) new_flags, - (unsigned long) old_flags); + (_("%B: uses different e_flags (%#x) fields than previous modules " + "(%#x)"), + ibfd, new_flags, old_flags); ok = FALSE; } @@ -15427,7 +15430,7 @@ _bfd_mips_elf_merge_private_bfd_data (bfd *ibfd, struct bfd_link_info *info) _bfd_error_handler (_("%B: warning: Unexpected flag in the flags2 field of " ".MIPS.abiflags (0x%lx)"), ibfd, - (unsigned long) in_abiflags.flags2); + in_abiflags.flags2); } else { diff --git a/bfd/elfxx-riscv.c b/bfd/elfxx-riscv.c index 5fa98f3..55db392 100644 --- a/bfd/elfxx-riscv.c +++ b/bfd/elfxx-riscv.c @@ -32,6 +32,13 @@ #define MINUS_ONE ((bfd_vma)0 - 1) +/* Special handler for ADD/SUB relocations that allows them to be filled out + both in the pre-linked and post-linked file. This is necessary to make + pre-linked debug info work, as due to linker relaxations we need to emit + relocations for the debug info. */ +static bfd_reloc_status_type riscv_elf_add_sub_reloc + (bfd *, arelent *, asymbol *, void *, asection *, bfd *, char **); + /* The relocation table used for SHT_RELA sections. */ static reloc_howto_type howto_table[] = @@ -480,7 +487,7 @@ static reloc_howto_type howto_table[] = FALSE, /* pc_relative */ 0, /* bitpos */ complain_overflow_dont, /* complain_on_overflow */ - bfd_elf_generic_reloc, /* special_function */ + riscv_elf_add_sub_reloc, /* special_function */ "R_RISCV_ADD8", /* name */ FALSE, /* partial_inplace */ 0, /* src_mask */ @@ -495,7 +502,7 @@ static reloc_howto_type howto_table[] = FALSE, /* pc_relative */ 0, /* bitpos */ complain_overflow_dont, /* complain_on_overflow */ - bfd_elf_generic_reloc, /* special_function */ + riscv_elf_add_sub_reloc, /* special_function */ "R_RISCV_ADD16", /* name */ FALSE, /* partial_inplace */ 0, /* src_mask */ @@ -510,7 +517,7 @@ static reloc_howto_type howto_table[] = FALSE, /* pc_relative */ 0, /* bitpos */ complain_overflow_dont, /* complain_on_overflow */ - bfd_elf_generic_reloc, /* special_function */ + riscv_elf_add_sub_reloc, /* special_function */ "R_RISCV_ADD32", /* name */ FALSE, /* partial_inplace */ 0, /* src_mask */ @@ -525,7 +532,7 @@ static reloc_howto_type howto_table[] = FALSE, /* pc_relative */ 0, /* bitpos */ complain_overflow_dont, /* complain_on_overflow */ - bfd_elf_generic_reloc, /* special_function */ + riscv_elf_add_sub_reloc, /* special_function */ "R_RISCV_ADD64", /* name */ FALSE, /* partial_inplace */ 0, /* src_mask */ @@ -540,7 +547,7 @@ static reloc_howto_type howto_table[] = FALSE, /* pc_relative */ 0, /* bitpos */ complain_overflow_dont, /* complain_on_overflow */ - bfd_elf_generic_reloc, /* special_function */ + riscv_elf_add_sub_reloc, /* special_function */ "R_RISCV_SUB8", /* name */ FALSE, /* partial_inplace */ 0, /* src_mask */ @@ -555,7 +562,7 @@ static reloc_howto_type howto_table[] = FALSE, /* pc_relative */ 0, /* bitpos */ complain_overflow_dont, /* complain_on_overflow */ - bfd_elf_generic_reloc, /* special_function */ + riscv_elf_add_sub_reloc, /* special_function */ "R_RISCV_SUB16", /* name */ FALSE, /* partial_inplace */ 0, /* src_mask */ @@ -570,7 +577,7 @@ static reloc_howto_type howto_table[] = FALSE, /* pc_relative */ 0, /* bitpos */ complain_overflow_dont, /* complain_on_overflow */ - bfd_elf_generic_reloc, /* special_function */ + riscv_elf_add_sub_reloc, /* special_function */ "R_RISCV_SUB32", /* name */ FALSE, /* partial_inplace */ 0, /* src_mask */ @@ -585,7 +592,7 @@ static reloc_howto_type howto_table[] = FALSE, /* pc_relative */ 0, /* bitpos */ complain_overflow_dont, /* complain_on_overflow */ - bfd_elf_generic_reloc, /* special_function */ + riscv_elf_add_sub_reloc, /* special_function */ "R_RISCV_SUB64", /* name */ FALSE, /* partial_inplace */ 0, /* src_mask */ @@ -767,7 +774,7 @@ static reloc_howto_type howto_table[] = FALSE, /* pc_relative */ 0, /* bitpos */ complain_overflow_dont, /* complain_on_overflow */ - bfd_elf_generic_reloc, /* special_function */ + riscv_elf_add_sub_reloc, /* special_function */ "R_RISCV_SUB6", /* name */ FALSE, /* partial_inplace */ 0, /* src_mask */ @@ -951,3 +958,54 @@ riscv_elf_rtype_to_howto (unsigned int r_type) } return &howto_table[r_type]; } + +/* Special_function of RISCV_ADD and RISCV_SUB relocations. */ + +static bfd_reloc_status_type +riscv_elf_add_sub_reloc (bfd *abfd, + arelent *reloc_entry, + asymbol *symbol, + void *data, + asection *input_section, + bfd *output_bfd, + char **error_message ATTRIBUTE_UNUSED) +{ + reloc_howto_type *howto = reloc_entry->howto; + bfd_vma relocation; + + if (output_bfd != NULL + && (symbol->flags & BSF_SECTION_SYM) == 0 + && (!reloc_entry->howto->partial_inplace || reloc_entry->addend == 0)) + { + reloc_entry->address += input_section->output_offset; + return bfd_reloc_ok; + } + + if (output_bfd != NULL) + return bfd_reloc_continue; + + relocation = symbol->value + symbol->section->output_section->vma + + symbol->section->output_offset + reloc_entry->addend; + bfd_vma old_value = bfd_get (howto->bitsize, abfd, + data + reloc_entry->address); + + switch (howto->type) + { + case R_RISCV_ADD8: + case R_RISCV_ADD16: + case R_RISCV_ADD32: + case R_RISCV_ADD64: + relocation = old_value + relocation; + break; + case R_RISCV_SUB6: + case R_RISCV_SUB8: + case R_RISCV_SUB16: + case R_RISCV_SUB32: + case R_RISCV_SUB64: + relocation = old_value - relocation; + break; + } + bfd_put (howto->bitsize, abfd, relocation, data + reloc_entry->address); + + return bfd_reloc_ok; +} diff --git a/bfd/elfxx-sparc.c b/bfd/elfxx-sparc.c index b50d34b..ef6e50c 100644 --- a/bfd/elfxx-sparc.c +++ b/bfd/elfxx-sparc.c @@ -1426,7 +1426,7 @@ _bfd_sparc_elf_check_relocs (bfd *abfd, struct bfd_link_info *info, for (rel = relocs; rel < rel_end; rel++) { unsigned int r_type; - unsigned long r_symndx; + unsigned int r_symndx; struct elf_link_hash_entry *h; struct _bfd_sparc_elf_link_hash_entry *eh; Elf_Internal_Sym *isym; @@ -4083,10 +4083,10 @@ _bfd_sparc_elf_relocate_section (bfd *output_bfd, rel->r_offset) != (bfd_vma) -1) _bfd_error_handler /* xgettext:c-format */ - (_("%B(%A+0x%lx): unresolvable %s relocation against symbol `%s'"), + (_("%B(%A+%#Lx): unresolvable %s relocation against symbol `%s'"), input_bfd, input_section, - (long) rel->r_offset, + rel->r_offset, howto->name, h->root.root.string); diff --git a/bfd/elfxx-tilegx.c b/bfd/elfxx-tilegx.c index ec88ab3..390d089 100644 --- a/bfd/elfxx-tilegx.c +++ b/bfd/elfxx-tilegx.c @@ -1695,7 +1695,7 @@ tilegx_elf_check_relocs (bfd *abfd, struct bfd_link_info *info, for (rel = relocs; rel < rel_end; rel++) { unsigned int r_type; - unsigned long r_symndx; + unsigned int r_symndx; struct elf_link_hash_entry *h; int tls_type; @@ -3160,15 +3160,7 @@ tilegx_elf_relocate_section (bfd *output_bfd, struct bfd_link_info *info, continue; if ((unsigned int)r_type >= ARRAY_SIZE (tilegx_elf_howto_table)) - { - /* Not clear if we need to check here, but just be paranoid. */ - _bfd_error_handler - /* xgettext:c-format */ - (_("%B: unrecognized relocation (0x%x) in section `%A'"), - input_bfd, r_type, input_section); - bfd_set_error (bfd_error_bad_value); - return FALSE; - } + return _bfd_unrecognized_reloc (input_bfd, input_section, r_type); howto = tilegx_elf_howto_table + r_type; @@ -3973,10 +3965,10 @@ tilegx_elf_relocate_section (bfd *output_bfd, struct bfd_link_info *info, rel->r_offset) != (bfd_vma) -1) _bfd_error_handler /* xgettext:c-format */ - (_("%B(%A+0x%lx): unresolvable %s relocation against symbol `%s'"), + (_("%B(%A+%#Lx): unresolvable %s relocation against symbol `%s'"), input_bfd, input_section, - (long) rel->r_offset, + rel->r_offset, howto->name, h->root.root.string); diff --git a/bfd/elfxx-x86.c b/bfd/elfxx-x86.c new file mode 100644 index 0000000..11883de --- /dev/null +++ b/bfd/elfxx-x86.c @@ -0,0 +1,2508 @@ +/* x86 specific support for ELF + Copyright (C) 2017 Free Software Foundation, Inc. + + This file is part of BFD, the Binary File Descriptor library. + + This program is free software; you can redistribute it and/or modify + it under the terms of the GNU General Public License as published by + the Free Software Foundation; either version 3 of the License, or + (at your option) any later version. + + This program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License + along with this program; if not, write to the Free Software + Foundation, Inc., 51 Franklin Street - Fifth Floor, Boston, + MA 02110-1301, USA. */ + +#include "elfxx-x86.h" +#include "elf-vxworks.h" +#include "objalloc.h" +#include "elf/i386.h" +#include "elf/x86-64.h" + +/* The name of the dynamic interpreter. This is put in the .interp + section. */ + +#define ELF32_DYNAMIC_INTERPRETER "/usr/lib/libc.so.1" +#define ELF64_DYNAMIC_INTERPRETER "/lib/ld64.so.1" +#define ELFX32_DYNAMIC_INTERPRETER "/lib/ldx32.so.1" + +bfd_boolean +_bfd_x86_elf_mkobject (bfd *abfd) +{ + return bfd_elf_allocate_object (abfd, + sizeof (struct elf_x86_obj_tdata), + get_elf_backend_data (abfd)->target_id); +} + +/* _TLS_MODULE_BASE_ needs to be treated especially when linking + executables. Rather than setting it to the beginning of the TLS + section, we have to set it to the end. This function may be called + multiple times, it is idempotent. */ + +void +_bfd_x86_elf_set_tls_module_base (struct bfd_link_info *info) +{ + struct elf_x86_link_hash_table *htab; + struct bfd_link_hash_entry *base; + const struct elf_backend_data *bed; + + if (!bfd_link_executable (info)) + return; + + bed = get_elf_backend_data (info->output_bfd); + htab = elf_x86_hash_table (info, bed->target_id); + if (htab == NULL) + return; + + base = htab->tls_module_base; + if (base == NULL) + return; + + base->u.def.value = htab->elf.tls_size; +} + +/* Return the base VMA address which should be subtracted from real addresses + when resolving @dtpoff relocation. + This is PT_TLS segment p_vaddr. */ + +bfd_vma +_bfd_x86_elf_dtpoff_base (struct bfd_link_info *info) +{ + /* If tls_sec is NULL, we should have signalled an error already. */ + if (elf_hash_table (info)->tls_sec == NULL) + return 0; + return elf_hash_table (info)->tls_sec->vma; +} + +/* Allocate space in .plt, .got and associated reloc sections for + dynamic relocs. */ + +static bfd_boolean +elf_x86_allocate_dynrelocs (struct elf_link_hash_entry *h, + void *inf) +{ + struct bfd_link_info *info; + struct elf_x86_link_hash_table *htab; + struct elf_x86_link_hash_entry *eh; + struct elf_dyn_relocs *p; + unsigned int plt_entry_size; + bfd_boolean resolved_to_zero; + const struct elf_backend_data *bed; + + if (h->root.type == bfd_link_hash_indirect) + return TRUE; + + eh = (struct elf_x86_link_hash_entry *) h; + + info = (struct bfd_link_info *) inf; + bed = get_elf_backend_data (info->output_bfd); + htab = elf_x86_hash_table (info, bed->target_id); + if (htab == NULL) + return FALSE; + + plt_entry_size = htab->plt.plt_entry_size; + + resolved_to_zero = UNDEFINED_WEAK_RESOLVED_TO_ZERO (info, eh); + + /* Clear the reference count of function pointer relocations if + symbol isn't a normal function. */ + if (h->type != STT_FUNC) + eh->func_pointer_refcount = 0; + + /* We can't use the GOT PLT if pointer equality is needed since + finish_dynamic_symbol won't clear symbol value and the dynamic + linker won't update the GOT slot. We will get into an infinite + loop at run-time. */ + if (htab->plt_got != NULL + && h->type != STT_GNU_IFUNC + && !h->pointer_equality_needed + && h->plt.refcount > 0 + && h->got.refcount > 0) + { + /* Don't use the regular PLT if there are both GOT and GOTPLT + reloctions. */ + h->plt.offset = (bfd_vma) -1; + + /* Use the GOT PLT. */ + eh->plt_got.refcount = 1; + } + + /* Since STT_GNU_IFUNC symbol must go through PLT, we handle it + here if it is defined and referenced in a non-shared object. */ + if (h->type == STT_GNU_IFUNC + && h->def_regular) + { + if (_bfd_elf_allocate_ifunc_dyn_relocs (info, h, &eh->dyn_relocs, + &htab->readonly_dynrelocs_against_ifunc, + plt_entry_size, + (htab->plt.has_plt0 + * plt_entry_size), + htab->got_entry_size, + TRUE)) + { + asection *s = htab->plt_second; + if (h->plt.offset != (bfd_vma) -1 && s != NULL) + { + /* Use the second PLT section if it is created. */ + eh->plt_second.offset = s->size; + + /* Make room for this entry in the second PLT section. */ + s->size += htab->non_lazy_plt->plt_entry_size; + } + + return TRUE; + } + else + return FALSE; + } + /* Don't create the PLT entry if there are only function pointer + relocations which can be resolved at run-time. */ + else if (htab->elf.dynamic_sections_created + && (h->plt.refcount > eh->func_pointer_refcount + || eh->plt_got.refcount > 0)) + { + bfd_boolean use_plt_got = eh->plt_got.refcount > 0; + + /* Clear the reference count of function pointer relocations + if PLT is used. */ + eh->func_pointer_refcount = 0; + + /* Make sure this symbol is output as a dynamic symbol. + Undefined weak syms won't yet be marked as dynamic. */ + if (h->dynindx == -1 + && !h->forced_local + && !resolved_to_zero + && h->root.type == bfd_link_hash_undefweak) + { + if (! bfd_elf_link_record_dynamic_symbol (info, h)) + return FALSE; + } + + if (bfd_link_pic (info) + || WILL_CALL_FINISH_DYNAMIC_SYMBOL (1, 0, h)) + { + asection *s = htab->elf.splt; + asection *second_s = htab->plt_second; + asection *got_s = htab->plt_got; + + /* If this is the first .plt entry, make room for the special + first entry. The .plt section is used by prelink to undo + prelinking for dynamic relocations. */ + if (s->size == 0) + s->size = htab->plt.has_plt0 * plt_entry_size; + + if (use_plt_got) + eh->plt_got.offset = got_s->size; + else + { + h->plt.offset = s->size; + if (second_s) + eh->plt_second.offset = second_s->size; + } + + /* If this symbol is not defined in a regular file, and we are + not generating a shared library, then set the symbol to this + location in the .plt. This is required to make function + pointers compare as equal between the normal executable and + the shared library. */ + if (! bfd_link_pic (info) + && !h->def_regular) + { + if (use_plt_got) + { + /* We need to make a call to the entry of the GOT PLT + instead of regular PLT entry. */ + h->root.u.def.section = got_s; + h->root.u.def.value = eh->plt_got.offset; + } + else + { + if (second_s) + { + /* We need to make a call to the entry of the + second PLT instead of regular PLT entry. */ + h->root.u.def.section = second_s; + h->root.u.def.value = eh->plt_second.offset; + } + else + { + h->root.u.def.section = s; + h->root.u.def.value = h->plt.offset; + } + } + } + + /* Make room for this entry. */ + if (use_plt_got) + got_s->size += htab->non_lazy_plt->plt_entry_size; + else + { + s->size += plt_entry_size; + if (second_s) + second_s->size += htab->non_lazy_plt->plt_entry_size; + + /* We also need to make an entry in the .got.plt section, + which will be placed in the .got section by the linker + script. */ + htab->elf.sgotplt->size += htab->got_entry_size; + + /* There should be no PLT relocation against resolved + undefined weak symbol in executable. */ + if (!resolved_to_zero) + { + /* We also need to make an entry in the .rel.plt + section. */ + htab->elf.srelplt->size += htab->sizeof_reloc; + htab->elf.srelplt->reloc_count++; + } + } + + if (htab->is_vxworks && !bfd_link_pic (info)) + { + /* VxWorks has a second set of relocations for each PLT entry + in executables. They go in a separate relocation section, + which is processed by the kernel loader. */ + + /* There are two relocations for the initial PLT entry: an + R_386_32 relocation for _GLOBAL_OFFSET_TABLE_ + 4 and an + R_386_32 relocation for _GLOBAL_OFFSET_TABLE_ + 8. */ + + asection *srelplt2 = htab->srelplt2; + if (h->plt.offset == plt_entry_size) + srelplt2->size += (htab->sizeof_reloc * 2); + + /* There are two extra relocations for each subsequent PLT entry: + an R_386_32 relocation for the GOT entry, and an R_386_32 + relocation for the PLT entry. */ + + srelplt2->size += (htab->sizeof_reloc * 2); + } + } + else + { + eh->plt_got.offset = (bfd_vma) -1; + h->plt.offset = (bfd_vma) -1; + h->needs_plt = 0; + } + } + else + { + eh->plt_got.offset = (bfd_vma) -1; + h->plt.offset = (bfd_vma) -1; + h->needs_plt = 0; + } + + eh->tlsdesc_got = (bfd_vma) -1; + + /* For i386, if R_386_TLS_{IE_32,IE,GOTIE} symbol is now local to the + binary, make it a R_386_TLS_LE_32 requiring no TLS entry. For + x86-64, if R_X86_64_GOTTPOFF symbol is now local to the binary, + make it a R_X86_64_TPOFF32 requiring no GOT entry. */ + if (h->got.refcount > 0 + && bfd_link_executable (info) + && h->dynindx == -1 + && (elf_x86_hash_entry (h)->tls_type & GOT_TLS_IE)) + h->got.offset = (bfd_vma) -1; + else if (h->got.refcount > 0) + { + asection *s; + bfd_boolean dyn; + int tls_type = elf_x86_hash_entry (h)->tls_type; + + /* Make sure this symbol is output as a dynamic symbol. + Undefined weak syms won't yet be marked as dynamic. */ + if (h->dynindx == -1 + && !h->forced_local + && !resolved_to_zero + && h->root.type == bfd_link_hash_undefweak) + { + if (! bfd_elf_link_record_dynamic_symbol (info, h)) + return FALSE; + } + + s = htab->elf.sgot; + if (GOT_TLS_GDESC_P (tls_type)) + { + eh->tlsdesc_got = htab->elf.sgotplt->size + - elf_x86_compute_jump_table_size (htab); + htab->elf.sgotplt->size += 2 * htab->got_entry_size; + h->got.offset = (bfd_vma) -2; + } + if (! GOT_TLS_GDESC_P (tls_type) + || GOT_TLS_GD_P (tls_type)) + { + h->got.offset = s->size; + s->size += htab->got_entry_size; + /* R_386_TLS_GD and R_X86_64_TLSGD need 2 consecutive GOT + slots. */ + if (GOT_TLS_GD_P (tls_type) || tls_type == GOT_TLS_IE_BOTH) + s->size += htab->got_entry_size; + } + dyn = htab->elf.dynamic_sections_created; + /* R_386_TLS_IE_32 needs one dynamic relocation, + R_386_TLS_IE resp. R_386_TLS_GOTIE needs one dynamic relocation, + (but if both R_386_TLS_IE_32 and R_386_TLS_IE is present, we + need two), R_386_TLS_GD and R_X86_64_TLSGD need one if local + symbol and two if global. No dynamic relocation against + resolved undefined weak symbol in executable. */ + if (tls_type == GOT_TLS_IE_BOTH) + htab->elf.srelgot->size += 2 * htab->sizeof_reloc; + else if ((GOT_TLS_GD_P (tls_type) && h->dynindx == -1) + || (tls_type & GOT_TLS_IE)) + htab->elf.srelgot->size += htab->sizeof_reloc; + else if (GOT_TLS_GD_P (tls_type)) + htab->elf.srelgot->size += 2 * htab->sizeof_reloc; + else if (! GOT_TLS_GDESC_P (tls_type) + && ((ELF_ST_VISIBILITY (h->other) == STV_DEFAULT + && !resolved_to_zero) + || h->root.type != bfd_link_hash_undefweak) + && (bfd_link_pic (info) + || WILL_CALL_FINISH_DYNAMIC_SYMBOL (dyn, 0, h))) + htab->elf.srelgot->size += htab->sizeof_reloc; + if (GOT_TLS_GDESC_P (tls_type)) + { + htab->elf.srelplt->size += htab->sizeof_reloc; + if (bed->target_id == X86_64_ELF_DATA) + htab->tlsdesc_plt = (bfd_vma) -1; + } + } + else + h->got.offset = (bfd_vma) -1; + + if (eh->dyn_relocs == NULL) + return TRUE; + + /* In the shared -Bsymbolic case, discard space allocated for + dynamic pc-relative relocs against symbols which turn out to be + defined in regular objects. For the normal shared case, discard + space for pc-relative relocs that have become local due to symbol + visibility changes. */ + + if (bfd_link_pic (info)) + { + /* Relocs that use pc_count are those that appear on a call + insn, or certain REL relocs that can generated via assembly. + We want calls to protected symbols to resolve directly to the + function rather than going via the plt. If people want + function pointer comparisons to work as expected then they + should avoid writing weird assembly. */ + if (SYMBOL_CALLS_LOCAL (info, h)) + { + struct elf_dyn_relocs **pp; + + for (pp = &eh->dyn_relocs; (p = *pp) != NULL; ) + { + p->count -= p->pc_count; + p->pc_count = 0; + if (p->count == 0) + *pp = p->next; + else + pp = &p->next; + } + } + + if (htab->is_vxworks) + { + struct elf_dyn_relocs **pp; + for (pp = &eh->dyn_relocs; (p = *pp) != NULL; ) + { + if (strcmp (p->sec->output_section->name, ".tls_vars") == 0) + *pp = p->next; + else + pp = &p->next; + } + } + + /* Also discard relocs on undefined weak syms with non-default + visibility or in PIE. */ + if (eh->dyn_relocs != NULL) + { + if (h->root.type == bfd_link_hash_undefweak) + { + /* Undefined weak symbol is never bound locally in shared + library. */ + if (ELF_ST_VISIBILITY (h->other) != STV_DEFAULT + || resolved_to_zero) + { + if (bed->target_id == I386_ELF_DATA + && h->non_got_ref) + { + /* Keep dynamic non-GOT/non-PLT relocation so + that we can branch to 0 without PLT. */ + struct elf_dyn_relocs **pp; + + for (pp = &eh->dyn_relocs; (p = *pp) != NULL; ) + if (p->pc_count == 0) + *pp = p->next; + else + { + /* Remove non-R_386_PC32 relocation. */ + p->count = p->pc_count; + pp = &p->next; + } + + /* Make sure undefined weak symbols are output + as dynamic symbols in PIEs for dynamic non-GOT + non-PLT reloations. */ + if (eh->dyn_relocs != NULL + && !bfd_elf_link_record_dynamic_symbol (info, h)) + return FALSE; + } + else + eh->dyn_relocs = NULL; + } + else if (h->dynindx == -1 + && !h->forced_local + && !bfd_elf_link_record_dynamic_symbol (info, h)) + return FALSE; + } + else if (bfd_link_executable (info) + && (h->needs_copy || eh->needs_copy) + && h->def_dynamic + && !h->def_regular) + { + /* NB: needs_copy is set only for x86-64. For PIE, + discard space for pc-relative relocs against symbols + which turn out to need copy relocs. */ + struct elf_dyn_relocs **pp; + + for (pp = &eh->dyn_relocs; (p = *pp) != NULL; ) + { + if (p->pc_count != 0) + *pp = p->next; + else + pp = &p->next; + } + } + } + } + else if (ELIMINATE_COPY_RELOCS) + { + /* For the non-shared case, discard space for relocs against + symbols which turn out to need copy relocs or are not + dynamic. Keep dynamic relocations for run-time function + pointer initialization. */ + + if ((!h->non_got_ref + || eh->func_pointer_refcount > 0 + || (h->root.type == bfd_link_hash_undefweak + && !resolved_to_zero)) + && ((h->def_dynamic + && !h->def_regular) + || (htab->elf.dynamic_sections_created + && (h->root.type == bfd_link_hash_undefweak + || h->root.type == bfd_link_hash_undefined)))) + { + /* Make sure this symbol is output as a dynamic symbol. + Undefined weak syms won't yet be marked as dynamic. */ + if (h->dynindx == -1 + && !h->forced_local + && !resolved_to_zero + && h->root.type == bfd_link_hash_undefweak + && ! bfd_elf_link_record_dynamic_symbol (info, h)) + return FALSE; + + /* If that succeeded, we know we'll be keeping all the + relocs. */ + if (h->dynindx != -1) + goto keep; + } + + eh->dyn_relocs = NULL; + eh->func_pointer_refcount = 0; + + keep: ; + } + + /* Finally, allocate space. */ + for (p = eh->dyn_relocs; p != NULL; p = p->next) + { + asection *sreloc; + + sreloc = elf_section_data (p->sec)->sreloc; + + BFD_ASSERT (sreloc != NULL); + sreloc->size += p->count * htab->sizeof_reloc; + } + + return TRUE; +} + +/* Find any dynamic relocs that apply to read-only sections. */ + +bfd_boolean +_bfd_x86_elf_readonly_dynrelocs (struct elf_link_hash_entry *h, + void *inf) +{ + struct elf_x86_link_hash_entry *eh; + struct elf_dyn_relocs *p; + + /* Skip local IFUNC symbols. */ + if (h->forced_local && h->type == STT_GNU_IFUNC) + return TRUE; + + eh = (struct elf_x86_link_hash_entry *) h; + for (p = eh->dyn_relocs; p != NULL; p = p->next) + { + asection *s = p->sec->output_section; + + if (s != NULL && (s->flags & SEC_READONLY) != 0) + { + struct bfd_link_info *info = (struct bfd_link_info *) inf; + + info->flags |= DF_TEXTREL; + + if ((info->warn_shared_textrel && bfd_link_pic (info)) + || info->error_textrel) + /* xgettext:c-format */ + info->callbacks->einfo (_("%P: %B: warning: relocation against `%s' in readonly section `%A'\n"), + p->sec->owner, h->root.root.string, + p->sec); + + /* Not an error, just cut short the traversal. */ + return FALSE; + } + } + return TRUE; +} + +/* Allocate space in .plt, .got and associated reloc sections for + local dynamic relocs. */ + +static bfd_boolean +elf_x86_allocate_local_dynreloc (void **slot, void *inf) +{ + struct elf_link_hash_entry *h + = (struct elf_link_hash_entry *) *slot; + + if (h->type != STT_GNU_IFUNC + || !h->def_regular + || !h->ref_regular + || !h->forced_local + || h->root.type != bfd_link_hash_defined) + abort (); + + return elf_x86_allocate_dynrelocs (h, inf); +} + +/* Find and/or create a hash entry for local symbol. */ + +struct elf_link_hash_entry * +_bfd_elf_x86_get_local_sym_hash (struct elf_x86_link_hash_table *htab, + bfd *abfd, const Elf_Internal_Rela *rel, + bfd_boolean create) +{ + struct elf_x86_link_hash_entry e, *ret; + asection *sec = abfd->sections; + hashval_t h = ELF_LOCAL_SYMBOL_HASH (sec->id, + htab->r_sym (rel->r_info)); + void **slot; + + e.elf.indx = sec->id; + e.elf.dynstr_index = htab->r_sym (rel->r_info); + slot = htab_find_slot_with_hash (htab->loc_hash_table, &e, h, + create ? INSERT : NO_INSERT); + + if (!slot) + return NULL; + + if (*slot) + { + ret = (struct elf_x86_link_hash_entry *) *slot; + return &ret->elf; + } + + ret = (struct elf_x86_link_hash_entry *) + objalloc_alloc ((struct objalloc *) htab->loc_hash_memory, + sizeof (struct elf_x86_link_hash_entry)); + if (ret) + { + memset (ret, 0, sizeof (*ret)); + ret->elf.indx = sec->id; + ret->elf.dynstr_index = htab->r_sym (rel->r_info); + ret->elf.dynindx = -1; + ret->plt_got.offset = (bfd_vma) -1; + *slot = ret; + } + return &ret->elf; +} + +/* Create an entry in a x86 ELF linker hash table. NB: THIS MUST BE IN + SYNC WITH _bfd_elf_link_hash_newfunc. */ + +struct bfd_hash_entry * +_bfd_x86_elf_link_hash_newfunc (struct bfd_hash_entry *entry, + struct bfd_hash_table *table, + const char *string) +{ + /* Allocate the structure if it has not already been allocated by a + subclass. */ + if (entry == NULL) + { + entry = (struct bfd_hash_entry *) + bfd_hash_allocate (table, + sizeof (struct elf_x86_link_hash_entry)); + if (entry == NULL) + return entry; + } + + /* Call the allocation method of the superclass. */ + entry = _bfd_link_hash_newfunc (entry, table, string); + if (entry != NULL) + { + struct elf_x86_link_hash_entry *eh + = (struct elf_x86_link_hash_entry *) entry; + struct elf_link_hash_table *htab + = (struct elf_link_hash_table *) table; + + memset (&eh->elf.size, 0, + (sizeof (struct elf_x86_link_hash_entry) + - offsetof (struct elf_link_hash_entry, size))); + /* Set local fields. */ + eh->elf.indx = -1; + eh->elf.dynindx = -1; + eh->elf.got = htab->init_got_refcount; + eh->elf.plt = htab->init_plt_refcount; + /* Assume that we have been called by a non-ELF symbol reader. + This flag is then reset by the code which reads an ELF input + file. This ensures that a symbol created by a non-ELF symbol + reader will have the flag set correctly. */ + eh->elf.non_elf = 1; + eh->plt_second.offset = (bfd_vma) -1; + eh->plt_got.offset = (bfd_vma) -1; + eh->tlsdesc_got = (bfd_vma) -1; + } + + return entry; +} + +/* Compute a hash of a local hash entry. We use elf_link_hash_entry + for local symbol so that we can handle local STT_GNU_IFUNC symbols + as global symbol. We reuse indx and dynstr_index for local symbol + hash since they aren't used by global symbols in this backend. */ + +hashval_t +_bfd_x86_elf_local_htab_hash (const void *ptr) +{ + struct elf_link_hash_entry *h + = (struct elf_link_hash_entry *) ptr; + return ELF_LOCAL_SYMBOL_HASH (h->indx, h->dynstr_index); +} + +/* Compare local hash entries. */ + +int +_bfd_x86_elf_local_htab_eq (const void *ptr1, const void *ptr2) +{ + struct elf_link_hash_entry *h1 + = (struct elf_link_hash_entry *) ptr1; + struct elf_link_hash_entry *h2 + = (struct elf_link_hash_entry *) ptr2; + + return h1->indx == h2->indx && h1->dynstr_index == h2->dynstr_index; +} + +/* Destroy an x86 ELF linker hash table. */ + +static void +elf_x86_link_hash_table_free (bfd *obfd) +{ + struct elf_x86_link_hash_table *htab + = (struct elf_x86_link_hash_table *) obfd->link.hash; + + if (htab->loc_hash_table) + htab_delete (htab->loc_hash_table); + if (htab->loc_hash_memory) + objalloc_free ((struct objalloc *) htab->loc_hash_memory); + _bfd_elf_link_hash_table_free (obfd); +} + +static bfd_boolean +elf_i386_is_reloc_section (const char *secname) +{ + return CONST_STRNEQ (secname, ".rel"); +} + +static bfd_boolean +elf_x86_64_is_reloc_section (const char *secname) +{ + return CONST_STRNEQ (secname, ".rela"); +} + +/* Create an x86 ELF linker hash table. */ + +struct bfd_link_hash_table * +_bfd_x86_elf_link_hash_table_create (bfd *abfd) +{ + struct elf_x86_link_hash_table *ret; + const struct elf_backend_data *bed; + bfd_size_type amt = sizeof (struct elf_x86_link_hash_table); + + ret = (struct elf_x86_link_hash_table *) bfd_zmalloc (amt); + if (ret == NULL) + return NULL; + + bed = get_elf_backend_data (abfd); + if (!_bfd_elf_link_hash_table_init (&ret->elf, abfd, + _bfd_x86_elf_link_hash_newfunc, + sizeof (struct elf_x86_link_hash_entry), + bed->target_id)) + { + free (ret); + return NULL; + } + + if (bed->target_id == X86_64_ELF_DATA) + { + ret->is_reloc_section = elf_x86_64_is_reloc_section; + ret->dt_reloc = DT_RELA; + ret->dt_reloc_sz = DT_RELASZ; + ret->dt_reloc_ent = DT_RELAENT; + ret->got_entry_size = 8; + ret->tls_get_addr = "__tls_get_addr"; + } + if (ABI_64_P (abfd)) + { + ret->sizeof_reloc = sizeof (Elf64_External_Rela); + ret->pointer_r_type = R_X86_64_64; + ret->dynamic_interpreter = ELF64_DYNAMIC_INTERPRETER; + ret->dynamic_interpreter_size = sizeof ELF64_DYNAMIC_INTERPRETER; + } + else + { + if (bed->target_id == X86_64_ELF_DATA) + { + ret->sizeof_reloc = sizeof (Elf32_External_Rela); + ret->pointer_r_type = R_X86_64_32; + ret->dynamic_interpreter = ELFX32_DYNAMIC_INTERPRETER; + ret->dynamic_interpreter_size + = sizeof ELFX32_DYNAMIC_INTERPRETER; + } + else + { + ret->is_reloc_section = elf_i386_is_reloc_section; + ret->dt_reloc = DT_REL; + ret->dt_reloc_sz = DT_RELSZ; + ret->dt_reloc_ent = DT_RELENT; + ret->sizeof_reloc = sizeof (Elf32_External_Rel); + ret->got_entry_size = 4; + ret->pointer_r_type = R_386_32; + ret->dynamic_interpreter = ELF32_DYNAMIC_INTERPRETER; + ret->dynamic_interpreter_size + = sizeof ELF32_DYNAMIC_INTERPRETER; + ret->tls_get_addr = "___tls_get_addr"; + } + } + ret->target_id = bed->target_id; + + ret->loc_hash_table = htab_try_create (1024, + _bfd_x86_elf_local_htab_hash, + _bfd_x86_elf_local_htab_eq, + NULL); + ret->loc_hash_memory = objalloc_create (); + if (!ret->loc_hash_table || !ret->loc_hash_memory) + { + elf_x86_link_hash_table_free (abfd); + return NULL; + } + ret->elf.root.hash_table_free = elf_x86_link_hash_table_free; + + return &ret->elf.root; +} + +/* Sort relocs into address order. */ + +int +_bfd_x86_elf_compare_relocs (const void *ap, const void *bp) +{ + const arelent *a = * (const arelent **) ap; + const arelent *b = * (const arelent **) bp; + + if (a->address > b->address) + return 1; + else if (a->address < b->address) + return -1; + else + return 0; +} + +bfd_boolean +_bfd_x86_elf_link_check_relocs (bfd *abfd, struct bfd_link_info *info) +{ + if (!bfd_link_relocatable (info)) + { + /* Check for __tls_get_addr reference. */ + struct elf_x86_link_hash_table *htab; + const struct elf_backend_data *bed = get_elf_backend_data (abfd); + htab = elf_x86_hash_table (info, bed->target_id); + if (htab) + { + struct elf_link_hash_entry *h; + + h = elf_link_hash_lookup (elf_hash_table (info), + htab->tls_get_addr, + FALSE, FALSE, FALSE); + if (h != NULL) + elf_x86_hash_entry (h)->tls_get_addr = 1; + + /* "__ehdr_start" will be defined by linker as a hidden symbol + later if it is referenced and not defined. */ + h = elf_link_hash_lookup (elf_hash_table (info), + "__ehdr_start", + FALSE, FALSE, FALSE); + if (h != NULL + && (h->root.type == bfd_link_hash_new + || h->root.type == bfd_link_hash_undefined + || h->root.type == bfd_link_hash_undefweak + || h->root.type == bfd_link_hash_common)) + { + elf_x86_hash_entry (h)->local_ref = 2; + elf_x86_hash_entry (h)->linker_def = 1; + } + } + } + + /* Invoke the regular ELF backend linker to do all the work. */ + return _bfd_elf_link_check_relocs (abfd, info); +} + +/* Set the sizes of the dynamic sections. */ + +bfd_boolean +_bfd_x86_elf_size_dynamic_sections (bfd *output_bfd, + struct bfd_link_info *info) +{ + struct elf_x86_link_hash_table *htab; + bfd *dynobj; + asection *s; + bfd_boolean relocs; + bfd *ibfd; + const struct elf_backend_data *bed + = get_elf_backend_data (output_bfd); + + htab = elf_x86_hash_table (info, bed->target_id); + if (htab == NULL) + return FALSE; + dynobj = htab->elf.dynobj; + if (dynobj == NULL) + abort (); + + /* Set up .got offsets for local syms, and space for local dynamic + relocs. */ + for (ibfd = info->input_bfds; ibfd != NULL; ibfd = ibfd->link.next) + { + bfd_signed_vma *local_got; + bfd_signed_vma *end_local_got; + char *local_tls_type; + bfd_vma *local_tlsdesc_gotent; + bfd_size_type locsymcount; + Elf_Internal_Shdr *symtab_hdr; + asection *srel; + + if (! is_x86_elf (ibfd, htab)) + continue; + + for (s = ibfd->sections; s != NULL; s = s->next) + { + struct elf_dyn_relocs *p; + + for (p = ((struct elf_dyn_relocs *) + elf_section_data (s)->local_dynrel); + p != NULL; + p = p->next) + { + if (!bfd_is_abs_section (p->sec) + && bfd_is_abs_section (p->sec->output_section)) + { + /* Input section has been discarded, either because + it is a copy of a linkonce section or due to + linker script /DISCARD/, so we'll be discarding + the relocs too. */ + } + else if (htab->is_vxworks + && strcmp (p->sec->output_section->name, + ".tls_vars") == 0) + { + /* Relocations in vxworks .tls_vars sections are + handled specially by the loader. */ + } + else if (p->count != 0) + { + srel = elf_section_data (p->sec)->sreloc; + srel->size += p->count * htab->sizeof_reloc; + if ((p->sec->output_section->flags & SEC_READONLY) != 0 + && (info->flags & DF_TEXTREL) == 0) + { + info->flags |= DF_TEXTREL; + if ((info->warn_shared_textrel && bfd_link_pic (info)) + || info->error_textrel) + /* xgettext:c-format */ + info->callbacks->einfo (_("%P: %B: warning: relocation in readonly section `%A'\n"), + p->sec->owner, p->sec); + } + } + } + } + + local_got = elf_local_got_refcounts (ibfd); + if (!local_got) + continue; + + symtab_hdr = &elf_symtab_hdr (ibfd); + locsymcount = symtab_hdr->sh_info; + end_local_got = local_got + locsymcount; + local_tls_type = elf_x86_local_got_tls_type (ibfd); + local_tlsdesc_gotent = elf_x86_local_tlsdesc_gotent (ibfd); + s = htab->elf.sgot; + srel = htab->elf.srelgot; + for (; local_got < end_local_got; + ++local_got, ++local_tls_type, ++local_tlsdesc_gotent) + { + *local_tlsdesc_gotent = (bfd_vma) -1; + if (*local_got > 0) + { + if (GOT_TLS_GDESC_P (*local_tls_type)) + { + *local_tlsdesc_gotent = htab->elf.sgotplt->size + - elf_x86_compute_jump_table_size (htab); + htab->elf.sgotplt->size += 2 * htab->got_entry_size; + *local_got = (bfd_vma) -2; + } + if (! GOT_TLS_GDESC_P (*local_tls_type) + || GOT_TLS_GD_P (*local_tls_type)) + { + *local_got = s->size; + s->size += htab->got_entry_size; + if (GOT_TLS_GD_P (*local_tls_type) + || *local_tls_type == GOT_TLS_IE_BOTH) + s->size += htab->got_entry_size; + } + if (bfd_link_pic (info) + || GOT_TLS_GD_ANY_P (*local_tls_type) + || (*local_tls_type & GOT_TLS_IE)) + { + if (*local_tls_type == GOT_TLS_IE_BOTH) + srel->size += 2 * htab->sizeof_reloc; + else if (GOT_TLS_GD_P (*local_tls_type) + || ! GOT_TLS_GDESC_P (*local_tls_type)) + srel->size += htab->sizeof_reloc; + if (GOT_TLS_GDESC_P (*local_tls_type)) + { + htab->elf.srelplt->size += htab->sizeof_reloc; + if (bed->target_id == X86_64_ELF_DATA) + htab->tlsdesc_plt = (bfd_vma) -1; + } + } + } + else + *local_got = (bfd_vma) -1; + } + } + + if (htab->tls_ld_or_ldm_got.refcount > 0) + { + /* Allocate 2 got entries and 1 dynamic reloc for R_386_TLS_LDM + or R_X86_64_TLSLD relocs. */ + htab->tls_ld_or_ldm_got.offset = htab->elf.sgot->size; + htab->elf.sgot->size += 2 * htab->got_entry_size; + htab->elf.srelgot->size += htab->sizeof_reloc; + } + else + htab->tls_ld_or_ldm_got.offset = -1; + + /* Allocate global sym .plt and .got entries, and space for global + sym dynamic relocs. */ + elf_link_hash_traverse (&htab->elf, elf_x86_allocate_dynrelocs, + info); + + /* Allocate .plt and .got entries, and space for local symbols. */ + htab_traverse (htab->loc_hash_table, elf_x86_allocate_local_dynreloc, + info); + + /* For every jump slot reserved in the sgotplt, reloc_count is + incremented. However, when we reserve space for TLS descriptors, + it's not incremented, so in order to compute the space reserved + for them, it suffices to multiply the reloc count by the jump + slot size. + + PR ld/13302: We start next_irelative_index at the end of .rela.plt + so that R_{386,X86_64}_IRELATIVE entries come last. */ + if (htab->elf.srelplt) + { + htab->next_tls_desc_index = htab->elf.srelplt->reloc_count; + htab->sgotplt_jump_table_size + = elf_x86_compute_jump_table_size (htab); + htab->next_irelative_index = htab->elf.srelplt->reloc_count - 1; + } + else if (htab->elf.irelplt) + htab->next_irelative_index = htab->elf.irelplt->reloc_count - 1; + + if (htab->tlsdesc_plt) + { + /* NB: tlsdesc_plt is set only for x86-64. If we're not using + lazy TLS relocations, don't generate the PLT and GOT entries + they require. */ + if ((info->flags & DF_BIND_NOW)) + htab->tlsdesc_plt = 0; + else + { + htab->tlsdesc_got = htab->elf.sgot->size; + htab->elf.sgot->size += htab->got_entry_size; + /* Reserve room for the initial entry. + FIXME: we could probably do away with it in this case. */ + if (htab->elf.splt->size == 0) + htab->elf.splt->size = htab->plt.plt_entry_size; + htab->tlsdesc_plt = htab->elf.splt->size; + htab->elf.splt->size += htab->plt.plt_entry_size; + } + } + + if (htab->elf.sgotplt) + { + /* Don't allocate .got.plt section if there are no GOT nor PLT + entries and there is no reference to _GLOBAL_OFFSET_TABLE_. */ + if ((htab->elf.hgot == NULL + || !htab->elf.hgot->ref_regular_nonweak) + && (htab->elf.sgotplt->size == bed->got_header_size) + && (htab->elf.splt == NULL + || htab->elf.splt->size == 0) + && (htab->elf.sgot == NULL + || htab->elf.sgot->size == 0) + && (htab->elf.iplt == NULL + || htab->elf.iplt->size == 0) + && (htab->elf.igotplt == NULL + || htab->elf.igotplt->size == 0)) + htab->elf.sgotplt->size = 0; + } + + if (_bfd_elf_eh_frame_present (info)) + { + if (htab->plt_eh_frame != NULL + && htab->elf.splt != NULL + && htab->elf.splt->size != 0 + && !bfd_is_abs_section (htab->elf.splt->output_section)) + htab->plt_eh_frame->size = htab->plt.eh_frame_plt_size; + + if (htab->plt_got_eh_frame != NULL + && htab->plt_got != NULL + && htab->plt_got->size != 0 + && !bfd_is_abs_section (htab->plt_got->output_section)) + htab->plt_got_eh_frame->size + = htab->non_lazy_plt->eh_frame_plt_size; + + /* Unwind info for the second PLT and .plt.got sections are + identical. */ + if (htab->plt_second_eh_frame != NULL + && htab->plt_second != NULL + && htab->plt_second->size != 0 + && !bfd_is_abs_section (htab->plt_second->output_section)) + htab->plt_second_eh_frame->size + = htab->non_lazy_plt->eh_frame_plt_size; + } + + /* We now have determined the sizes of the various dynamic sections. + Allocate memory for them. */ + relocs = FALSE; + for (s = dynobj->sections; s != NULL; s = s->next) + { + bfd_boolean strip_section = TRUE; + + if ((s->flags & SEC_LINKER_CREATED) == 0) + continue; + + if (s == htab->elf.splt + || s == htab->elf.sgot) + { + /* Strip this section if we don't need it; see the + comment below. */ + /* We'd like to strip these sections if they aren't needed, but if + we've exported dynamic symbols from them we must leave them. + It's too late to tell BFD to get rid of the symbols. */ + + if (htab->elf.hplt != NULL) + strip_section = FALSE; + } + else if (s == htab->elf.sgotplt + || s == htab->elf.iplt + || s == htab->elf.igotplt + || s == htab->plt_second + || s == htab->plt_got + || s == htab->plt_eh_frame + || s == htab->plt_got_eh_frame + || s == htab->plt_second_eh_frame + || s == htab->elf.sdynbss + || s == htab->elf.sdynrelro) + { + /* Strip these too. */ + } + else if (htab->is_reloc_section (bfd_get_section_name (dynobj, s))) + { + if (s->size != 0 + && s != htab->elf.srelplt + && s != htab->srelplt2) + relocs = TRUE; + + /* We use the reloc_count field as a counter if we need + to copy relocs into the output file. */ + if (s != htab->elf.srelplt) + s->reloc_count = 0; + } + else + { + /* It's not one of our sections, so don't allocate space. */ + continue; + } + + if (s->size == 0) + { + /* If we don't need this section, strip it from the + output file. This is mostly to handle .rel.bss and + .rel.plt. We must create both sections in + create_dynamic_sections, because they must be created + before the linker maps input sections to output + sections. The linker does that before + adjust_dynamic_symbol is called, and it is that + function which decides whether anything needs to go + into these sections. */ + if (strip_section) + s->flags |= SEC_EXCLUDE; + continue; + } + + if ((s->flags & SEC_HAS_CONTENTS) == 0) + continue; + + /* Allocate memory for the section contents. We use bfd_zalloc + here in case unused entries are not reclaimed before the + section's contents are written out. This should not happen, + but this way if it does, we get a R_386_NONE or R_X86_64_NONE + reloc instead of garbage. */ + s->contents = (unsigned char *) bfd_zalloc (dynobj, s->size); + if (s->contents == NULL) + return FALSE; + } + + if (htab->plt_eh_frame != NULL + && htab->plt_eh_frame->contents != NULL) + { + memcpy (htab->plt_eh_frame->contents, + htab->plt.eh_frame_plt, + htab->plt_eh_frame->size); + bfd_put_32 (dynobj, htab->elf.splt->size, + htab->plt_eh_frame->contents + PLT_FDE_LEN_OFFSET); + } + + if (htab->plt_got_eh_frame != NULL + && htab->plt_got_eh_frame->contents != NULL) + { + memcpy (htab->plt_got_eh_frame->contents, + htab->non_lazy_plt->eh_frame_plt, + htab->plt_got_eh_frame->size); + bfd_put_32 (dynobj, htab->plt_got->size, + (htab->plt_got_eh_frame->contents + + PLT_FDE_LEN_OFFSET)); + } + + if (htab->plt_second_eh_frame != NULL + && htab->plt_second_eh_frame->contents != NULL) + { + memcpy (htab->plt_second_eh_frame->contents, + htab->non_lazy_plt->eh_frame_plt, + htab->plt_second_eh_frame->size); + bfd_put_32 (dynobj, htab->plt_second->size, + (htab->plt_second_eh_frame->contents + + PLT_FDE_LEN_OFFSET)); + } + + if (htab->elf.dynamic_sections_created) + { + /* Add some entries to the .dynamic section. We fill in the + values later, in elf_{i386,x86_64}_finish_dynamic_sections, + but we must add the entries now so that we get the correct + size for the .dynamic section. The DT_DEBUG entry is filled + in by the dynamic linker and used by the debugger. */ +#define add_dynamic_entry(TAG, VAL) \ + _bfd_elf_add_dynamic_entry (info, TAG, VAL) + + if (bfd_link_executable (info)) + { + if (!add_dynamic_entry (DT_DEBUG, 0)) + return FALSE; + } + + if (htab->elf.splt->size != 0) + { + /* DT_PLTGOT is used by prelink even if there is no PLT + relocation. */ + if (!add_dynamic_entry (DT_PLTGOT, 0)) + return FALSE; + } + + if (htab->elf.srelplt->size != 0) + { + if (!add_dynamic_entry (DT_PLTRELSZ, 0) + || !add_dynamic_entry (DT_PLTREL, htab->dt_reloc) + || !add_dynamic_entry (DT_JMPREL, 0)) + return FALSE; + } + + if (htab->tlsdesc_plt + && (!add_dynamic_entry (DT_TLSDESC_PLT, 0) + || !add_dynamic_entry (DT_TLSDESC_GOT, 0))) + return FALSE; + + if (relocs) + { + if (!add_dynamic_entry (htab->dt_reloc, 0) + || !add_dynamic_entry (htab->dt_reloc_sz, 0) + || !add_dynamic_entry (htab->dt_reloc_ent, + htab->sizeof_reloc)) + return FALSE; + + /* If any dynamic relocs apply to a read-only section, + then we need a DT_TEXTREL entry. */ + if ((info->flags & DF_TEXTREL) == 0) + elf_link_hash_traverse (&htab->elf, + _bfd_x86_elf_readonly_dynrelocs, + info); + + if ((info->flags & DF_TEXTREL) != 0) + { + if (htab->readonly_dynrelocs_against_ifunc) + { + info->callbacks->einfo + (_("%P%X: read-only segment has dynamic IFUNC relocations; recompile with -fPIC\n")); + bfd_set_error (bfd_error_bad_value); + return FALSE; + } + + if (!add_dynamic_entry (DT_TEXTREL, 0)) + return FALSE; + } + } + if (htab->is_vxworks + && !elf_vxworks_add_dynamic_entries (output_bfd, info)) + return FALSE; + } +#undef add_dynamic_entry + + return TRUE; +} + +bfd_boolean +_bfd_x86_elf_always_size_sections (bfd *output_bfd, + struct bfd_link_info *info) +{ + asection *tls_sec = elf_hash_table (info)->tls_sec; + + if (tls_sec) + { + struct elf_link_hash_entry *tlsbase; + + tlsbase = elf_link_hash_lookup (elf_hash_table (info), + "_TLS_MODULE_BASE_", + FALSE, FALSE, FALSE); + + if (tlsbase && tlsbase->type == STT_TLS) + { + struct elf_x86_link_hash_table *htab; + struct bfd_link_hash_entry *bh = NULL; + const struct elf_backend_data *bed + = get_elf_backend_data (output_bfd); + + htab = elf_x86_hash_table (info, bed->target_id); + if (htab == NULL) + return FALSE; + + if (!(_bfd_generic_link_add_one_symbol + (info, output_bfd, "_TLS_MODULE_BASE_", BSF_LOCAL, + tls_sec, 0, NULL, FALSE, + bed->collect, &bh))) + return FALSE; + + htab->tls_module_base = bh; + + tlsbase = (struct elf_link_hash_entry *)bh; + tlsbase->def_regular = 1; + tlsbase->other = STV_HIDDEN; + tlsbase->root.linker_def = 1; + (*bed->elf_backend_hide_symbol) (info, tlsbase, TRUE); + } + } + + return TRUE; +} + +void +_bfd_x86_elf_merge_symbol_attribute (struct elf_link_hash_entry *h, + const Elf_Internal_Sym *isym, + bfd_boolean definition, + bfd_boolean dynamic ATTRIBUTE_UNUSED) +{ + if (definition) + { + struct elf_x86_link_hash_entry *eh + = (struct elf_x86_link_hash_entry *) h; + eh->def_protected = (ELF_ST_VISIBILITY (isym->st_other) + == STV_PROTECTED); + } +} + +/* Copy the extra info we tack onto an elf_link_hash_entry. */ + +void +_bfd_x86_elf_copy_indirect_symbol (struct bfd_link_info *info, + struct elf_link_hash_entry *dir, + struct elf_link_hash_entry *ind) +{ + struct elf_x86_link_hash_entry *edir, *eind; + + edir = (struct elf_x86_link_hash_entry *) dir; + eind = (struct elf_x86_link_hash_entry *) ind; + + if (eind->dyn_relocs != NULL) + { + if (edir->dyn_relocs != NULL) + { + struct elf_dyn_relocs **pp; + struct elf_dyn_relocs *p; + + /* Add reloc counts against the indirect sym to the direct sym + list. Merge any entries against the same section. */ + for (pp = &eind->dyn_relocs; (p = *pp) != NULL; ) + { + struct elf_dyn_relocs *q; + + for (q = edir->dyn_relocs; q != NULL; q = q->next) + if (q->sec == p->sec) + { + q->pc_count += p->pc_count; + q->count += p->count; + *pp = p->next; + break; + } + if (q == NULL) + pp = &p->next; + } + *pp = edir->dyn_relocs; + } + + edir->dyn_relocs = eind->dyn_relocs; + eind->dyn_relocs = NULL; + } + + if (ind->root.type == bfd_link_hash_indirect + && dir->got.refcount <= 0) + { + edir->tls_type = eind->tls_type; + eind->tls_type = GOT_UNKNOWN; + } + + /* Copy gotoff_ref so that elf_i386_adjust_dynamic_symbol will + generate a R_386_COPY reloc. */ + edir->gotoff_ref |= eind->gotoff_ref; + + edir->has_got_reloc |= eind->has_got_reloc; + edir->has_non_got_reloc |= eind->has_non_got_reloc; + + if (ELIMINATE_COPY_RELOCS + && ind->root.type != bfd_link_hash_indirect + && dir->dynamic_adjusted) + { + /* If called to transfer flags for a weakdef during processing + of elf_adjust_dynamic_symbol, don't copy non_got_ref. + We clear it ourselves for ELIMINATE_COPY_RELOCS. */ + if (dir->versioned != versioned_hidden) + dir->ref_dynamic |= ind->ref_dynamic; + dir->ref_regular |= ind->ref_regular; + dir->ref_regular_nonweak |= ind->ref_regular_nonweak; + dir->needs_plt |= ind->needs_plt; + dir->pointer_equality_needed |= ind->pointer_equality_needed; + } + else + { + if (eind->func_pointer_refcount > 0) + { + edir->func_pointer_refcount += eind->func_pointer_refcount; + eind->func_pointer_refcount = 0; + } + + _bfd_elf_link_hash_copy_indirect (info, dir, ind); + } +} + +/* Remove undefined weak symbol from the dynamic symbol table if it + is resolved to 0. */ + +bfd_boolean +_bfd_x86_elf_fixup_symbol (struct bfd_link_info *info, + struct elf_link_hash_entry *h) +{ + if (h->dynindx != -1 + && UNDEFINED_WEAK_RESOLVED_TO_ZERO (info, elf_x86_hash_entry (h))) + { + h->dynindx = -1; + _bfd_elf_strtab_delref (elf_hash_table (info)->dynstr, + h->dynstr_index); + } + return TRUE; +} + +/* Return TRUE if symbol should be hashed in the `.gnu.hash' section. */ + +bfd_boolean +_bfd_x86_elf_hash_symbol (struct elf_link_hash_entry *h) +{ + if (h->plt.offset != (bfd_vma) -1 + && !h->def_regular + && !h->pointer_equality_needed) + return FALSE; + + return _bfd_elf_hash_symbol (h); +} + +/* Adjust a symbol defined by a dynamic object and referenced by a + regular object. The current definition is in some section of the + dynamic object, but we're not including those sections. We have to + change the definition to something the rest of the link can + understand. */ + +bfd_boolean +_bfd_x86_elf_adjust_dynamic_symbol (struct bfd_link_info *info, + struct elf_link_hash_entry *h) +{ + struct elf_x86_link_hash_table *htab; + asection *s, *srel; + struct elf_x86_link_hash_entry *eh; + struct elf_dyn_relocs *p; + const struct elf_backend_data *bed + = get_elf_backend_data (info->output_bfd); + + /* STT_GNU_IFUNC symbol must go through PLT. */ + if (h->type == STT_GNU_IFUNC) + { + /* All local STT_GNU_IFUNC references must be treate as local + calls via local PLT. */ + if (h->ref_regular + && SYMBOL_CALLS_LOCAL (info, h)) + { + bfd_size_type pc_count = 0, count = 0; + struct elf_dyn_relocs **pp; + + eh = (struct elf_x86_link_hash_entry *) h; + for (pp = &eh->dyn_relocs; (p = *pp) != NULL; ) + { + pc_count += p->pc_count; + p->count -= p->pc_count; + p->pc_count = 0; + count += p->count; + if (p->count == 0) + *pp = p->next; + else + pp = &p->next; + } + + if (pc_count || count) + { + h->non_got_ref = 1; + if (pc_count) + { + /* Increment PLT reference count only for PC-relative + references. */ + h->needs_plt = 1; + if (h->plt.refcount <= 0) + h->plt.refcount = 1; + else + h->plt.refcount += 1; + } + } + } + + if (h->plt.refcount <= 0) + { + h->plt.offset = (bfd_vma) -1; + h->needs_plt = 0; + } + return TRUE; + } + + /* If this is a function, put it in the procedure linkage table. We + will fill in the contents of the procedure linkage table later, + when we know the address of the .got section. */ + if (h->type == STT_FUNC + || h->needs_plt) + { + if (h->plt.refcount <= 0 + || SYMBOL_CALLS_LOCAL (info, h) + || (ELF_ST_VISIBILITY (h->other) != STV_DEFAULT + && h->root.type == bfd_link_hash_undefweak)) + { + /* This case can occur if we saw a PLT32 reloc in an input + file, but the symbol was never referred to by a dynamic + object, or if all references were garbage collected. In + such a case, we don't actually need to build a procedure + linkage table, and we can just do a PC32 reloc instead. */ + h->plt.offset = (bfd_vma) -1; + h->needs_plt = 0; + } + + return TRUE; + } + else + /* It's possible that we incorrectly decided a .plt reloc was needed + * for an R_386_PC32/R_X86_64_PC32 reloc to a non-function sym in + check_relocs. We can't decide accurately between function and + non-function syms in check-relocs; Objects loaded later in + the link may change h->type. So fix it now. */ + h->plt.offset = (bfd_vma) -1; + + eh = (struct elf_x86_link_hash_entry *) h; + + /* If this is a weak symbol, and there is a real definition, the + processor independent code will have arranged for us to see the + real definition first, and we can just use the same value. */ + if (h->u.weakdef != NULL) + { + BFD_ASSERT (h->u.weakdef->root.type == bfd_link_hash_defined + || h->u.weakdef->root.type == bfd_link_hash_defweak); + h->root.u.def.section = h->u.weakdef->root.u.def.section; + h->root.u.def.value = h->u.weakdef->root.u.def.value; + if (ELIMINATE_COPY_RELOCS + || info->nocopyreloc + || SYMBOL_NO_COPYRELOC (info, eh)) + { + /* NB: needs_copy is always 0 for i386. */ + h->non_got_ref = h->u.weakdef->non_got_ref; + eh->needs_copy = h->u.weakdef->needs_copy; + } + return TRUE; + } + + /* This is a reference to a symbol defined by a dynamic object which + is not a function. */ + + /* If we are creating a shared library, we must presume that the + only references to the symbol are via the global offset table. + For such cases we need not do anything here; the relocations will + be handled correctly by relocate_section. */ + if (!bfd_link_executable (info)) + return TRUE; + + /* If there are no references to this symbol that do not use the + GOT nor R_386_GOTOFF relocation, we don't need to generate a copy + reloc. NB: gotoff_ref is always 0 for x86-64. */ + if (!h->non_got_ref && !eh->gotoff_ref) + return TRUE; + + /* If -z nocopyreloc was given, we won't generate them either. */ + if (info->nocopyreloc || SYMBOL_NO_COPYRELOC (info, eh)) + { + h->non_got_ref = 0; + return TRUE; + } + + htab = elf_x86_hash_table (info, bed->target_id); + if (htab == NULL) + return FALSE; + + /* If there aren't any dynamic relocs in read-only sections nor + R_386_GOTOFF relocation, then we can keep the dynamic relocs and + avoid the copy reloc. This doesn't work on VxWorks, where we can + not have dynamic relocations (other than copy and jump slot + relocations) in an executable. */ + if (ELIMINATE_COPY_RELOCS + && (bed->target_id == X86_64_ELF_DATA + || (!eh->gotoff_ref + && !htab->is_vxworks))) + { + for (p = eh->dyn_relocs; p != NULL; p = p->next) + { + s = p->sec->output_section; + if (s != NULL && (s->flags & SEC_READONLY) != 0) + break; + } + + /* If we didn't find any dynamic relocs in read-only sections, + then we'll be keeping the dynamic relocs and avoiding the copy + reloc. */ + if (p == NULL) + { + h->non_got_ref = 0; + return TRUE; + } + } + + /* We must allocate the symbol in our .dynbss section, which will + become part of the .bss section of the executable. There will be + an entry for this symbol in the .dynsym section. The dynamic + object will contain position independent code, so all references + from the dynamic object to this symbol will go through the global + offset table. The dynamic linker will use the .dynsym entry to + determine the address it must put in the global offset table, so + both the dynamic object and the regular object will refer to the + same memory location for the variable. */ + + /* We must generate a R_386_COPY/R_X86_64_COPY reloc to tell the + dynamic linker to copy the initial value out of the dynamic object + and into the runtime process image. */ + if ((h->root.u.def.section->flags & SEC_READONLY) != 0) + { + s = htab->elf.sdynrelro; + srel = htab->elf.sreldynrelro; + } + else + { + s = htab->elf.sdynbss; + srel = htab->elf.srelbss; + } + if ((h->root.u.def.section->flags & SEC_ALLOC) != 0 && h->size != 0) + { + srel->size += htab->sizeof_reloc; + h->needs_copy = 1; + } + + return _bfd_elf_adjust_dynamic_copy (info, h, s); +} + +/* Return TRUE if a symbol is referenced locally. It is similar to + SYMBOL_REFERENCES_LOCAL, but it also checks version script. It + works in check_relocs. */ + +bfd_boolean +_bfd_x86_elf_link_symbol_references_local (struct bfd_link_info *info, + struct elf_link_hash_entry *h) +{ + struct elf_x86_link_hash_entry *eh = elf_x86_hash_entry (h); + struct elf_x86_link_hash_table *htab + = (struct elf_x86_link_hash_table *) info->hash; + + if (eh->local_ref > 1) + return TRUE; + + if (eh->local_ref == 1) + return FALSE; + + /* Unversioned symbols defined in regular objects can be forced local + by linker version script. A weak undefined symbol is forced local + if + 1. It has non-default visibility. Or + 2. When building executable, there is no dynamic linker. Or + 3. or "-z nodynamic-undefined-weak" is used. + */ + if (SYMBOL_REFERENCES_LOCAL (info, h) + || (h->root.type == bfd_link_hash_undefweak + && (ELF_ST_VISIBILITY (h->other) != STV_DEFAULT + || (bfd_link_executable (info) + && htab->interp == NULL) + || info->dynamic_undefined_weak == 0)) + || ((h->def_regular || ELF_COMMON_DEF_P (h)) + && h->versioned == unversioned + && info->version_info != NULL + && bfd_hide_sym_by_version (info->version_info, + h->root.root.string))) + { + eh->local_ref = 2; + return TRUE; + } + + eh->local_ref = 1; + return FALSE; +} + +/* Return the section that should be marked against GC for a given + relocation. */ + +asection * +_bfd_x86_elf_gc_mark_hook (asection *sec, + struct bfd_link_info *info, + Elf_Internal_Rela *rel, + struct elf_link_hash_entry *h, + Elf_Internal_Sym *sym) +{ + /* Compiler should optimize this out. */ + if (((unsigned int) R_X86_64_GNU_VTINHERIT + != (unsigned int) R_386_GNU_VTINHERIT) + || ((unsigned int) R_X86_64_GNU_VTENTRY + != (unsigned int) R_386_GNU_VTENTRY)) + abort (); + + if (h != NULL) + switch (ELF32_R_TYPE (rel->r_info)) + { + case R_X86_64_GNU_VTINHERIT: + case R_X86_64_GNU_VTENTRY: + return NULL; + } + + return _bfd_elf_gc_mark_hook (sec, info, rel, h, sym); +} + +static bfd_vma +elf_i386_get_plt_got_vma (struct elf_x86_plt *plt_p ATTRIBUTE_UNUSED, + bfd_vma off, + bfd_vma offset ATTRIBUTE_UNUSED, + bfd_vma got_addr) +{ + return got_addr + off; +} + +static bfd_vma +elf_x86_64_get_plt_got_vma (struct elf_x86_plt *plt_p, + bfd_vma off, + bfd_vma offset, + bfd_vma got_addr ATTRIBUTE_UNUSED) +{ + return plt_p->sec->vma + offset + off + plt_p->plt_got_insn_size; +} + +static bfd_boolean +elf_i386_valid_plt_reloc_p (unsigned int type) +{ + return (type == R_386_JUMP_SLOT + || type == R_386_GLOB_DAT + || type == R_386_IRELATIVE); +} + +static bfd_boolean +elf_x86_64_valid_plt_reloc_p (unsigned int type) +{ + return (type == R_X86_64_JUMP_SLOT + || type == R_X86_64_GLOB_DAT + || type == R_X86_64_IRELATIVE); +} + +long +_bfd_x86_elf_get_synthetic_symtab (bfd *abfd, + long count, + long relsize, + bfd_vma got_addr, + struct elf_x86_plt plts[], + asymbol **dynsyms, + asymbol **ret) +{ + long size, i, n, len; + int j; + unsigned int plt_got_offset, plt_entry_size; + asymbol *s; + bfd_byte *plt_contents; + long dynrelcount; + arelent **dynrelbuf, *p; + char *names; + const struct elf_backend_data *bed; + bfd_vma (*get_plt_got_vma) (struct elf_x86_plt *, bfd_vma, bfd_vma, + bfd_vma); + bfd_boolean (*valid_plt_reloc_p) (unsigned int); + + if (count == 0) + return -1; + + dynrelbuf = (arelent **) bfd_malloc (relsize); + if (dynrelbuf == NULL) + return -1; + + dynrelcount = bfd_canonicalize_dynamic_reloc (abfd, dynrelbuf, + dynsyms); + if (dynrelcount <= 0) + return -1; + + /* Sort the relocs by address. */ + qsort (dynrelbuf, dynrelcount, sizeof (arelent *), + _bfd_x86_elf_compare_relocs); + + size = count * sizeof (asymbol); + + /* Allocate space for @plt suffixes. */ + n = 0; + for (i = 0; i < dynrelcount; i++) + { + p = dynrelbuf[i]; + size += strlen ((*p->sym_ptr_ptr)->name) + sizeof ("@plt"); + if (p->addend != 0) + size += sizeof ("+0x") - 1 + 8 + 8 * ABI_64_P (abfd); + } + + s = *ret = (asymbol *) bfd_zmalloc (size); + if (s == NULL) + goto bad_return; + + bed = get_elf_backend_data (abfd); + + if (bed->target_id == X86_64_ELF_DATA) + { + get_plt_got_vma = elf_x86_64_get_plt_got_vma; + valid_plt_reloc_p = elf_x86_64_valid_plt_reloc_p; + } + else + { + get_plt_got_vma = elf_i386_get_plt_got_vma; + valid_plt_reloc_p = elf_i386_valid_plt_reloc_p; + if (got_addr) + { + /* Check .got.plt and then .got to get the _GLOBAL_OFFSET_TABLE_ + address. */ + asection *sec = bfd_get_section_by_name (abfd, ".got.plt"); + if (sec != NULL) + got_addr = sec->vma; + else + { + sec = bfd_get_section_by_name (abfd, ".got"); + if (sec != NULL) + got_addr = sec->vma; + } + + if (got_addr == (bfd_vma) -1) + goto bad_return; + } + } + + /* Check for each PLT section. */ + names = (char *) (s + count); + size = 0; + n = 0; + for (j = 0; plts[j].name != NULL; j++) + if ((plt_contents = plts[j].contents) != NULL) + { + long k; + bfd_vma offset; + asection *plt; + struct elf_x86_plt *plt_p = &plts[j]; + + plt_got_offset = plt_p->plt_got_offset; + plt_entry_size = plt_p->plt_entry_size; + + plt = plt_p->sec; + + if ((plt_p->type & plt_lazy)) + { + /* Skip PLT0 in lazy PLT. */ + k = 1; + offset = plt_entry_size; + } + else + { + k = 0; + offset = 0; + } + + /* Check each PLT entry against dynamic relocations. */ + for (; k < plt_p->count; k++) + { + int off; + bfd_vma got_vma; + long min, max, mid; + + /* Get the GOT offset for i386 or the PC-relative offset + for x86-64, a signed 32-bit integer. */ + off = H_GET_32 (abfd, (plt_contents + offset + + plt_got_offset)); + got_vma = get_plt_got_vma (plt_p, off, offset, got_addr); + + /* Binary search. */ + p = dynrelbuf[0]; + min = 0; + max = dynrelcount; + while ((min + 1) < max) + { + arelent *r; + + mid = (min + max) / 2; + r = dynrelbuf[mid]; + if (got_vma > r->address) + min = mid; + else if (got_vma < r->address) + max = mid; + else + { + p = r; + break; + } + } + + /* Skip unknown relocation. PR 17512: file: bc9d6cf5. */ + if (got_vma == p->address + && p->howto != NULL + && valid_plt_reloc_p (p->howto->type)) + { + *s = **p->sym_ptr_ptr; + /* Undefined syms won't have BSF_LOCAL or BSF_GLOBAL + set. Since we are defining a symbol, ensure one + of them is set. */ + if ((s->flags & BSF_LOCAL) == 0) + s->flags |= BSF_GLOBAL; + s->flags |= BSF_SYNTHETIC; + /* This is no longer a section symbol. */ + s->flags &= ~BSF_SECTION_SYM; + s->section = plt; + s->the_bfd = plt->owner; + s->value = offset; + s->udata.p = NULL; + s->name = names; + len = strlen ((*p->sym_ptr_ptr)->name); + memcpy (names, (*p->sym_ptr_ptr)->name, len); + names += len; + if (p->addend != 0) + { + char buf[30], *a; + + memcpy (names, "+0x", sizeof ("+0x") - 1); + names += sizeof ("+0x") - 1; + bfd_sprintf_vma (abfd, buf, p->addend); + for (a = buf; *a == '0'; ++a) + ; + size = strlen (a); + memcpy (names, a, size); + names += size; + } + memcpy (names, "@plt", sizeof ("@plt")); + names += sizeof ("@plt"); + n++; + s++; + } + offset += plt_entry_size; + } + } + + /* PLT entries with R_386_TLS_DESC relocations are skipped. */ + if (n == 0) + { +bad_return: + count = -1; + } + else + count = n; + + for (j = 0; plts[j].name != NULL; j++) + if (plts[j].contents != NULL) + free (plts[j].contents); + + free (dynrelbuf); + + return count; +} + +/* Parse x86 GNU properties. */ + +enum elf_property_kind +_bfd_x86_elf_parse_gnu_properties (bfd *abfd, unsigned int type, + bfd_byte *ptr, unsigned int datasz) +{ + elf_property *prop; + + switch (type) + { + case GNU_PROPERTY_X86_ISA_1_USED: + case GNU_PROPERTY_X86_ISA_1_NEEDED: + case GNU_PROPERTY_X86_FEATURE_1_AND: + if (datasz != 4) + { + _bfd_error_handler + ((type == GNU_PROPERTY_X86_ISA_1_USED + ? _("error: %B: <corrupt x86 ISA used size: 0x%x>") + : (type == GNU_PROPERTY_X86_ISA_1_NEEDED + ? _("error: %B: <corrupt x86 ISA needed size: 0x%x>") + : _("error: %B: <corrupt x86 feature size: 0x%x>"))), + abfd, datasz); + return property_corrupt; + } + prop = _bfd_elf_get_property (abfd, type, datasz); + /* Combine properties of the same type. */ + prop->u.number |= bfd_h_get_32 (abfd, ptr); + prop->pr_kind = property_number; + break; + + default: + return property_ignored; + } + + return property_number; +} + +/* Merge x86 GNU property BPROP with APROP. If APROP isn't NULL, + return TRUE if APROP is updated. Otherwise, return TRUE if BPROP + should be merged with ABFD. */ + +bfd_boolean +_bfd_x86_elf_merge_gnu_properties (struct bfd_link_info *info, + bfd *abfd ATTRIBUTE_UNUSED, + elf_property *aprop, + elf_property *bprop) +{ + unsigned int number, features; + bfd_boolean updated = FALSE; + unsigned int pr_type = aprop != NULL ? aprop->pr_type : bprop->pr_type; + + switch (pr_type) + { + case GNU_PROPERTY_X86_ISA_1_USED: + case GNU_PROPERTY_X86_ISA_1_NEEDED: + if (aprop != NULL && bprop != NULL) + { + number = aprop->u.number; + aprop->u.number = number | bprop->u.number; + updated = number != (unsigned int) aprop->u.number; + } + else + { + /* Return TRUE if APROP is NULL to indicate that BPROP should + be added to ABFD. */ + updated = aprop == NULL; + } + break; + + case GNU_PROPERTY_X86_FEATURE_1_AND: + /* Only one of APROP and BPROP can be NULL: + 1. APROP & BPROP when both APROP and BPROP aren't NULL. + 2. If APROP is NULL, remove x86 feature. + 3. Otherwise, do nothing. + */ + if (aprop != NULL && bprop != NULL) + { + features = 0; + if (info->ibt) + features = GNU_PROPERTY_X86_FEATURE_1_IBT; + if (info->shstk) + features |= GNU_PROPERTY_X86_FEATURE_1_SHSTK; + number = aprop->u.number; + /* Add GNU_PROPERTY_X86_FEATURE_1_IBT and + GNU_PROPERTY_X86_FEATURE_1_SHSTK. */ + aprop->u.number = (number & bprop->u.number) | features; + updated = number != (unsigned int) aprop->u.number; + /* Remove the property if all feature bits are cleared. */ + if (aprop->u.number == 0) + aprop->pr_kind = property_remove; + } + else + { + features = 0; + if (info->ibt) + features = GNU_PROPERTY_X86_FEATURE_1_IBT; + if (info->shstk) + features |= GNU_PROPERTY_X86_FEATURE_1_SHSTK; + if (features) + { + /* Add GNU_PROPERTY_X86_FEATURE_1_IBT and + GNU_PROPERTY_X86_FEATURE_1_SHSTK. */ + if (aprop != NULL) + { + number = aprop->u.number; + aprop->u.number = number | features; + updated = number != (unsigned int) aprop->u.number; + } + else + { + bprop->u.number |= features; + updated = TRUE; + } + } + else if (aprop != NULL) + { + aprop->pr_kind = property_remove; + updated = TRUE; + } + } + break; + + default: + /* Never should happen. */ + abort (); + } + + return updated; +} + +/* Set up x86 GNU properties. Return the first relocatable ELF input + with GNU properties if found. Otherwise, return NULL. */ + +bfd * +_bfd_x86_elf_link_setup_gnu_properties + (struct bfd_link_info *info, struct elf_x86_init_table *init_table) +{ + bfd_boolean normal_target; + bfd_boolean lazy_plt; + asection *sec, *pltsec; + bfd *dynobj; + bfd_boolean use_ibt_plt; + unsigned int plt_alignment, features; + struct elf_x86_link_hash_table *htab; + bfd *pbfd; + bfd *ebfd = NULL; + elf_property *prop; + const struct elf_backend_data *bed; + unsigned int class_align = ABI_64_P (info->output_bfd) ? 3 : 2; + unsigned int got_align; + + features = 0; + if (info->ibt) + features = GNU_PROPERTY_X86_FEATURE_1_IBT; + if (info->shstk) + features |= GNU_PROPERTY_X86_FEATURE_1_SHSTK; + + /* Find a normal input file with GNU property note. */ + for (pbfd = info->input_bfds; + pbfd != NULL; + pbfd = pbfd->link.next) + if (bfd_get_flavour (pbfd) == bfd_target_elf_flavour + && bfd_count_sections (pbfd) != 0) + { + ebfd = pbfd; + + if (elf_properties (pbfd) != NULL) + break; + } + + if (ebfd != NULL && features) + { + /* If features is set, add GNU_PROPERTY_X86_FEATURE_1_IBT and + GNU_PROPERTY_X86_FEATURE_1_SHSTK. */ + prop = _bfd_elf_get_property (ebfd, + GNU_PROPERTY_X86_FEATURE_1_AND, + 4); + prop->u.number |= features; + prop->pr_kind = property_number; + + /* Create the GNU property note section if needed. */ + if (pbfd == NULL) + { + sec = bfd_make_section_with_flags (ebfd, + NOTE_GNU_PROPERTY_SECTION_NAME, + (SEC_ALLOC + | SEC_LOAD + | SEC_IN_MEMORY + | SEC_READONLY + | SEC_HAS_CONTENTS + | SEC_DATA)); + if (sec == NULL) + info->callbacks->einfo (_("%F: failed to create GNU property section\n")); + + if (!bfd_set_section_alignment (ebfd, sec, class_align)) + { +error_alignment: + info->callbacks->einfo (_("%F%A: failed to align section\n"), + sec); + } + + elf_section_type (sec) = SHT_NOTE; + } + } + + pbfd = _bfd_elf_link_setup_gnu_properties (info); + + bed = get_elf_backend_data (info->output_bfd); + + htab = elf_x86_hash_table (info, bed->target_id); + if (htab == NULL) + return pbfd; + + htab->is_vxworks = init_table->is_vxworks; + htab->r_info = init_table->r_info; + htab->r_sym = init_table->r_sym; + + if (bfd_link_relocatable (info)) + return pbfd; + + use_ibt_plt = info->ibtplt || info->ibt; + if (!use_ibt_plt && pbfd != NULL) + { + /* Check if GNU_PROPERTY_X86_FEATURE_1_IBT is on. */ + elf_property_list *p; + + /* The property list is sorted in order of type. */ + for (p = elf_properties (pbfd); p; p = p->next) + { + if (GNU_PROPERTY_X86_FEATURE_1_AND == p->property.pr_type) + { + use_ibt_plt = !!(p->property.u.number + & GNU_PROPERTY_X86_FEATURE_1_IBT); + break; + } + else if (GNU_PROPERTY_X86_FEATURE_1_AND < p->property.pr_type) + break; + } + } + + dynobj = htab->elf.dynobj; + + /* Set htab->elf.dynobj here so that there is no need to check and + set it in check_relocs. */ + if (dynobj == NULL) + { + 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 + still be used with LD_AUDIT or LD_PROFILE if PLT entry is used for + canonical function address. */ + htab->plt.has_plt0 = 1; + normal_target = init_table->normal_target; + + if (normal_target) + { + if (use_ibt_plt) + { + htab->lazy_plt = init_table->lazy_ibt_plt; + htab->non_lazy_plt = init_table->non_lazy_ibt_plt; + } + else + { + htab->lazy_plt = init_table->lazy_plt; + htab->non_lazy_plt = init_table->non_lazy_plt; + } + } + else + { + htab->lazy_plt = init_table->lazy_plt; + htab->non_lazy_plt = NULL; + } + + pltsec = htab->elf.splt; + + /* If the non-lazy PLT is available, use it for all PLT entries if + there are no PLT0 or no .plt section. */ + if (htab->non_lazy_plt != NULL + && (!htab->plt.has_plt0 || pltsec == NULL)) + { + lazy_plt = FALSE; + if (bfd_link_pic (info)) + htab->plt.plt_entry = htab->non_lazy_plt->pic_plt_entry; + else + htab->plt.plt_entry = htab->non_lazy_plt->plt_entry; + htab->plt.plt_entry_size = htab->non_lazy_plt->plt_entry_size; + htab->plt.plt_got_offset = htab->non_lazy_plt->plt_got_offset; + htab->plt.plt_got_insn_size + = htab->non_lazy_plt->plt_got_insn_size; + htab->plt.eh_frame_plt_size + = htab->non_lazy_plt->eh_frame_plt_size; + htab->plt.eh_frame_plt = htab->non_lazy_plt->eh_frame_plt; + } + else + { + lazy_plt = TRUE; + if (bfd_link_pic (info)) + { + htab->plt.plt0_entry = htab->lazy_plt->pic_plt0_entry; + htab->plt.plt_entry = htab->lazy_plt->pic_plt_entry; + } + else + { + htab->plt.plt0_entry = htab->lazy_plt->plt0_entry; + htab->plt.plt_entry = htab->lazy_plt->plt_entry; + } + htab->plt.plt_entry_size = htab->lazy_plt->plt_entry_size; + htab->plt.plt_got_offset = htab->lazy_plt->plt_got_offset; + htab->plt.plt_got_insn_size + = htab->lazy_plt->plt_got_insn_size; + htab->plt.eh_frame_plt_size + = htab->lazy_plt->eh_frame_plt_size; + htab->plt.eh_frame_plt = htab->lazy_plt->eh_frame_plt; + } + + /* Return if there are no normal input files. */ + if (dynobj == NULL) + return pbfd; + + if (htab->is_vxworks + && !elf_vxworks_create_dynamic_sections (dynobj, info, + &htab->srelplt2)) + { + info->callbacks->einfo (_("%F: failed to create VxWorks dynamic sections\n")); + return pbfd; + } + + /* Since create_dynamic_sections isn't always called, but GOT + relocations need GOT relocations, 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)) + info->callbacks->einfo (_("%F: failed to create GOT sections\n")); + + got_align = (bed->target_id == X86_64_ELF_DATA) ? 3 : 2; + + /* Align .got and .got.plt sections to their entry size. Do it here + instead of in create_dynamic_sections so that they are always + properly aligned even if create_dynamic_sections isn't called. */ + sec = htab->elf.sgot; + if (!bfd_set_section_alignment (dynobj, sec, got_align)) + goto error_alignment; + + sec = htab->elf.sgotplt; + if (!bfd_set_section_alignment (dynobj, sec, got_align)) + goto error_alignment; + + /* Create the ifunc sections here so that check_relocs can be + simplified. */ + if (!_bfd_elf_create_ifunc_sections (dynobj, info)) + info->callbacks->einfo (_("%F: failed to create ifunc sections\n")); + + plt_alignment = bfd_log2 (htab->plt.plt_entry_size); + + if (pltsec != NULL) + { + /* Whe creating executable, set the contents of the .interp + section to the interpreter. */ + if (bfd_link_executable (info) && !info->nointerp) + { + asection *s = bfd_get_linker_section (dynobj, ".interp"); + if (s == NULL) + abort (); + s->size = htab->dynamic_interpreter_size; + s->contents = (unsigned char *) htab->dynamic_interpreter; + htab->interp = s; + } + + /* Don't change PLT section alignment for NaCl since it uses + 64-byte PLT entry and sets PLT section alignment to 32 + bytes. Don't create additional PLT sections for NaCl. */ + if (normal_target) + { + flagword pltflags = (bed->dynamic_sec_flags + | SEC_ALLOC + | SEC_CODE + | SEC_LOAD + | SEC_READONLY); + unsigned int non_lazy_plt_alignment + = bfd_log2 (htab->non_lazy_plt->plt_entry_size); + + sec = pltsec; + if (!bfd_set_section_alignment (sec->owner, sec, + plt_alignment)) + goto error_alignment; + + /* Create the GOT procedure linkage table. */ + sec = bfd_make_section_anyway_with_flags (dynobj, + ".plt.got", + pltflags); + if (sec == NULL) + info->callbacks->einfo (_("%F: failed to create GOT PLT section\n")); + + if (!bfd_set_section_alignment (dynobj, sec, + non_lazy_plt_alignment)) + goto error_alignment; + + htab->plt_got = sec; + + if (lazy_plt) + { + sec = NULL; + + if (use_ibt_plt) + { + /* Create the second PLT for Intel IBT support. IBT + PLT is supported only for non-NaCl target and is + is needed only for lazy binding. */ + sec = bfd_make_section_anyway_with_flags (dynobj, + ".plt.sec", + pltflags); + if (sec == NULL) + info->callbacks->einfo (_("%F: failed to create IBT-enabled PLT section\n")); + + if (!bfd_set_section_alignment (dynobj, sec, + plt_alignment)) + goto error_alignment; + } + else if (info->bndplt && ABI_64_P (dynobj)) + { + /* Create the second PLT for Intel MPX support. MPX + PLT is supported only for non-NaCl target in 64-bit + mode and is needed only for lazy binding. */ + sec = bfd_make_section_anyway_with_flags (dynobj, + ".plt.sec", + pltflags); + if (sec == NULL) + info->callbacks->einfo (_("%F: failed to create BND PLT section\n")); + + if (!bfd_set_section_alignment (dynobj, sec, + non_lazy_plt_alignment)) + goto error_alignment; + } + + htab->plt_second = sec; + } + } + + if (!info->no_ld_generated_unwind_info) + { + flagword flags = (SEC_ALLOC | SEC_LOAD | SEC_READONLY + | SEC_HAS_CONTENTS | SEC_IN_MEMORY + | SEC_LINKER_CREATED); + + sec = bfd_make_section_anyway_with_flags (dynobj, + ".eh_frame", + flags); + if (sec == NULL) + info->callbacks->einfo (_("%F: failed to create PLT .eh_frame section\n")); + + if (!bfd_set_section_alignment (dynobj, sec, class_align)) + goto error_alignment; + + htab->plt_eh_frame = sec; + + if (htab->plt_got != NULL) + { + sec = bfd_make_section_anyway_with_flags (dynobj, + ".eh_frame", + flags); + if (sec == NULL) + info->callbacks->einfo (_("%F: failed to create GOT PLT .eh_frame section\n")); + + if (!bfd_set_section_alignment (dynobj, sec, class_align)) + goto error_alignment; + + htab->plt_got_eh_frame = sec; + } + + if (htab->plt_second != NULL) + { + sec = bfd_make_section_anyway_with_flags (dynobj, + ".eh_frame", + flags); + if (sec == NULL) + info->callbacks->einfo (_("%F: failed to create the second PLT .eh_frame section\n")); + + if (!bfd_set_section_alignment (dynobj, sec, class_align)) + goto error_alignment; + + htab->plt_second_eh_frame = sec; + } + } + } + + if (normal_target) + { + /* The .iplt section is used for IFUNC symbols in static + executables. */ + sec = htab->elf.iplt; + if (sec != NULL + && !bfd_set_section_alignment (sec->owner, sec, + plt_alignment)) + goto error_alignment; + } + + return pbfd; +} diff --git a/bfd/elfxx-x86.h b/bfd/elfxx-x86.h new file mode 100644 index 0000000..17aa10c --- /dev/null +++ b/bfd/elfxx-x86.h @@ -0,0 +1,531 @@ +/* x86 specific support for ELF + Copyright (C) 2017 Free Software Foundation, Inc. + + This file is part of BFD, the Binary File Descriptor library. + + This program is free software; you can redistribute it and/or modify + it under the terms of the GNU General Public License as published by + the Free Software Foundation; either version 3 of the License, or + (at your option) any later version. + + This program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License + along with this program; if not, write to the Free Software + Foundation, Inc., 51 Franklin Street - Fifth Floor, Boston, + MA 02110-1301, USA. */ + +#include "sysdep.h" +#include "bfd.h" +#include "bfdlink.h" +#include "libbfd.h" +#include "elf-bfd.h" +#include "bfd_stdint.h" +#include "hashtab.h" + +#define PLT_CIE_LENGTH 20 +#define PLT_FDE_LENGTH 36 +#define PLT_FDE_START_OFFSET 4 + PLT_CIE_LENGTH + 8 +#define PLT_FDE_LEN_OFFSET 4 + PLT_CIE_LENGTH + 12 + +#define ABI_64_P(abfd) \ + (get_elf_backend_data (abfd)->s->elfclass == ELFCLASS64) + +/* If ELIMINATE_COPY_RELOCS is non-zero, the linker will try to avoid + copying dynamic variables from a shared lib into an app's dynbss + section, and instead use a dynamic relocation to point into the + shared lib. */ +#define ELIMINATE_COPY_RELOCS 1 + +#define elf_x86_hash_table(p, id) \ + (is_elf_hash_table ((p)->hash) \ + && elf_hash_table_id ((struct elf_link_hash_table *) ((p)->hash)) == (id) \ + ? ((struct elf_x86_link_hash_table *) ((p)->hash)) : NULL) + +/* Will references to this symbol always be local in this object? */ +#define SYMBOL_REFERENCES_LOCAL_P(INFO, H) \ + _bfd_x86_elf_link_symbol_references_local ((INFO), (H)) + +/* Is a undefined weak symbol which is resolved to 0. Reference to an + undefined weak symbol is resolved to 0 when building executable if + it isn't dynamic and + 1. Has non-GOT/non-PLT relocations in text section. Or + 2. Has no GOT/PLT relocation. + Local undefined weak symbol is always resolved to 0. + */ +#define UNDEFINED_WEAK_RESOLVED_TO_ZERO(INFO, EH) \ + ((EH)->elf.root.type == bfd_link_hash_undefweak \ + && (SYMBOL_REFERENCES_LOCAL_P ((INFO), &(EH)->elf) \ + || (bfd_link_executable (INFO) \ + && (!(EH)->has_got_reloc \ + || (EH)->has_non_got_reloc)))) + +/* Should copy relocation be generated for a symbol. Don't generate + copy relocation against a protected symbol defined in a shared + object with GNU_PROPERTY_NO_COPY_ON_PROTECTED. */ +#define SYMBOL_NO_COPYRELOC(INFO, EH) \ + ((EH)->def_protected \ + && ((EH)->elf.root.type == bfd_link_hash_defined \ + || (EH)->elf.root.type == bfd_link_hash_defweak) \ + && elf_has_no_copy_on_protected ((EH)->elf.root.u.def.section->owner) \ + && ((EH)->elf.root.u.def.section->owner->flags & DYNAMIC) != 0 \ + && ((EH)->elf.root.u.def.section->flags & SEC_CODE) == 0) + +/* x86 ELF linker hash entry. */ + +struct elf_x86_link_hash_entry +{ + struct elf_link_hash_entry elf; + + /* Track dynamic relocs copied for this symbol. */ + struct elf_dyn_relocs *dyn_relocs; + + unsigned char tls_type; + + /* TRUE if symbol has GOT or PLT relocations. */ + unsigned int has_got_reloc : 1; + + /* TRUE if symbol has non-GOT/non-PLT relocations in text sections. */ + unsigned int has_non_got_reloc : 1; + + /* Don't call finish_dynamic_symbol on this symbol. */ + unsigned int no_finish_dynamic_symbol : 1; + + /* TRUE if symbol is __tls_get_addr. */ + unsigned int tls_get_addr : 1; + + /* TRUE if symbol is defined as a protected symbol. */ + unsigned int def_protected : 1; + + /* 0: Symbol references are unknown. + 1: Symbol references aren't local. + 2: Symbol references are local. + */ + unsigned int local_ref : 2; + + /* TRUE if symbol is defined by linker. */ + unsigned int linker_def : 1; + + /* TRUE if symbol is referenced by R_386_GOTOFF relocation. This is + only used by i386. */ + unsigned int gotoff_ref : 1; + + /* TRUE if a weak symbol with a real definition needs a copy reloc. + When there is a weak symbol with a real definition, the processor + independent code will have arranged for us to see the real + definition first. We need to copy the needs_copy bit from the + real definition and check it when allowing copy reloc in PIE. This + is only used by x86-64. */ + unsigned int needs_copy : 1; + + /* Reference count of C/C++ function pointer relocations in read-write + section which can be resolved at run-time. */ + bfd_signed_vma func_pointer_refcount; + + /* Information about the GOT PLT entry. Filled when there are both + GOT and PLT relocations against the same function. */ + union gotplt_union plt_got; + + /* Information about the second PLT entry. */ + union gotplt_union plt_second; + + /* Offset of the GOTPLT entry reserved for the TLS descriptor, + starting at the end of the jump table. */ + bfd_vma tlsdesc_got; +}; + +struct elf_x86_lazy_plt_layout +{ + /* The first entry in an absolute lazy procedure linkage table looks + like this. */ + const bfd_byte *plt0_entry; + unsigned int plt0_entry_size; /* Size of PLT0 entry. */ + + /* Later entries in an absolute lazy procedure linkage table look + like this. */ + const bfd_byte *plt_entry; + unsigned int plt_entry_size; /* Size of each PLT entry. */ + + /* Offsets into plt0_entry that are to be replaced with GOT[1] and + GOT[2]. */ + unsigned int plt0_got1_offset; + unsigned int plt0_got2_offset; + + /* Offset of the end of the PC-relative instruction containing + plt0_got2_offset. This is for x86-64 only. */ + unsigned int plt0_got2_insn_end; + + /* Offsets into plt_entry that are to be replaced with... */ + unsigned int plt_got_offset; /* ... address of this symbol in .got. */ + unsigned int plt_reloc_offset; /* ... offset into relocation table. */ + unsigned int plt_plt_offset; /* ... offset to start of .plt. */ + + /* Length of the PC-relative instruction containing plt_got_offset. + This is used for x86-64 only. */ + unsigned int plt_got_insn_size; + + /* Offset of the end of the PC-relative jump to plt0_entry. This is + used for x86-64 only. */ + unsigned int plt_plt_insn_end; + + /* Offset into plt_entry where the initial value of the GOT entry + points. */ + unsigned int plt_lazy_offset; + + /* The first entry in a PIC lazy procedure linkage table looks like + this. */ + const bfd_byte *pic_plt0_entry; + + /* Subsequent entries in a PIC lazy procedure linkage table look + like this. */ + const bfd_byte *pic_plt_entry; + + /* .eh_frame covering the lazy .plt section. */ + const bfd_byte *eh_frame_plt; + unsigned int eh_frame_plt_size; +}; + +struct elf_x86_non_lazy_plt_layout +{ + /* Entries in an absolute non-lazy procedure linkage table look like + this. */ + const bfd_byte *plt_entry; + /* Entries in a PIC non-lazy procedure linkage table look like this. */ + const bfd_byte *pic_plt_entry; + + unsigned int plt_entry_size; /* Size of each PLT entry. */ + + /* Offsets into plt_entry that are to be replaced with... */ + unsigned int plt_got_offset; /* ... address of this symbol in .got. */ + + /* Length of the PC-relative instruction containing plt_got_offset. + This is used for x86-64 only. */ + unsigned int plt_got_insn_size; + + /* .eh_frame covering the non-lazy .plt section. */ + const bfd_byte *eh_frame_plt; + unsigned int eh_frame_plt_size; +}; + +struct elf_x86_plt_layout +{ + /* The first entry in a lazy procedure linkage table looks like this. + This is only used for i386 where absolute PLT0 and PIC PLT0 are + different. */ + const bfd_byte *plt0_entry; + /* Entries in a procedure linkage table look like this. */ + const bfd_byte *plt_entry; + unsigned int plt_entry_size; /* Size of each PLT entry. */ + + /* 1 has PLT0. */ + unsigned int has_plt0; + + /* Offsets into plt_entry that are to be replaced with... */ + unsigned int plt_got_offset; /* ... address of this symbol in .got. */ + + /* Length of the PC-relative instruction containing plt_got_offset. + This is only used for x86-64. */ + unsigned int plt_got_insn_size; + + /* .eh_frame covering the .plt section. */ + const bfd_byte *eh_frame_plt; + unsigned int eh_frame_plt_size; +}; + +/* Values in tls_type of x86 ELF linker hash entry. */ +#define GOT_UNKNOWN 0 +#define GOT_NORMAL 1 +#define GOT_TLS_GD 2 +#define GOT_TLS_IE 4 +#define GOT_TLS_IE_POS 5 +#define GOT_TLS_IE_NEG 6 +#define GOT_TLS_IE_BOTH 7 +#define GOT_TLS_GDESC 8 +#define GOT_TLS_GD_BOTH_P(type) \ + ((type) == (GOT_TLS_GD | GOT_TLS_GDESC)) +#define GOT_TLS_GD_P(type) \ + ((type) == GOT_TLS_GD || GOT_TLS_GD_BOTH_P (type)) +#define GOT_TLS_GDESC_P(type) \ + ((type) == GOT_TLS_GDESC || GOT_TLS_GD_BOTH_P (type)) +#define GOT_TLS_GD_ANY_P(type) \ + (GOT_TLS_GD_P (type) || GOT_TLS_GDESC_P (type)) + +#define elf_x86_hash_entry(ent) \ + ((struct elf_x86_link_hash_entry *)(ent)) + +/* x86 ELF linker hash table. */ + +struct elf_x86_link_hash_table +{ + struct elf_link_hash_table elf; + + /* Short-cuts to get to dynamic linker sections. */ + asection *interp; + asection *plt_eh_frame; + asection *plt_second; + asection *plt_second_eh_frame; + asection *plt_got; + asection *plt_got_eh_frame; + + /* Parameters describing PLT generation, lazy or non-lazy. */ + struct elf_x86_plt_layout plt; + + /* Parameters describing lazy PLT generation. */ + const struct elf_x86_lazy_plt_layout *lazy_plt; + + /* Parameters describing non-lazy PLT generation. */ + const struct elf_x86_non_lazy_plt_layout *non_lazy_plt; + + union + { + bfd_signed_vma refcount; + bfd_vma offset; + } tls_ld_or_ldm_got; + + /* The amount of space used by the jump slots in the GOT. */ + bfd_vma sgotplt_jump_table_size; + + /* Small local sym cache. */ + struct sym_cache sym_cache; + + /* _TLS_MODULE_BASE_ symbol. */ + struct bfd_link_hash_entry *tls_module_base; + + /* Used by local STT_GNU_IFUNC symbols. */ + htab_t loc_hash_table; + void * loc_hash_memory; + + /* The offset into sgot of the GOT entry used by the PLT entry + above. */ + bfd_vma tlsdesc_got; + + /* The index of the next R_X86_64_JUMP_SLOT entry in .rela.plt. */ + bfd_vma next_jump_slot_index; + /* The index of the next R_X86_64_IRELATIVE entry in .rela.plt. */ + bfd_vma next_irelative_index; + + /* TRUE if there are dynamic relocs against IFUNC symbols that apply + to read-only sections. */ + bfd_boolean readonly_dynrelocs_against_ifunc; + + /* TRUE if this is a VxWorks x86 target. This is only used for + i386. */ + bfd_boolean is_vxworks; + + /* The (unloaded but important) .rel.plt.unloaded section on VxWorks. + This is used for i386 only. */ + asection *srelplt2; + + /* The index of the next unused R_386_TLS_DESC slot in .rel.plt. This + is only used for i386. */ + bfd_vma next_tls_desc_index; + + /* The offset into splt of the PLT entry for the TLS descriptor + resolver. Special values are 0, if not necessary (or not found + to be necessary yet), and -1 if needed but not determined + yet. This is only used for x86-64. */ + bfd_vma tlsdesc_plt; + + bfd_vma (*r_info) (bfd_vma, bfd_vma); + bfd_vma (*r_sym) (bfd_vma); + bfd_boolean (*is_reloc_section) (const char *); + enum elf_target_id target_id; + unsigned int sizeof_reloc; + unsigned int dt_reloc; + unsigned int dt_reloc_sz; + unsigned int dt_reloc_ent; + unsigned int got_entry_size; + unsigned int pointer_r_type; + int dynamic_interpreter_size; + const char *dynamic_interpreter; + const char *tls_get_addr; +}; + +struct elf_x86_init_table +{ + /* The lazy PLT layout. */ + const struct elf_x86_lazy_plt_layout *lazy_plt; + + /* The non-lazy PLT layout. */ + const struct elf_x86_non_lazy_plt_layout *non_lazy_plt; + + /* The lazy PLT layout for IBT. */ + const struct elf_x86_lazy_plt_layout *lazy_ibt_plt; + + /* The non-lazy PLT layout for IBT. */ + const struct elf_x86_non_lazy_plt_layout *non_lazy_ibt_plt; + + /* TRUE if this is a normal x86 target. */ + bfd_boolean normal_target; + + /* TRUE if this is a VxWorks x86 target. */ + bfd_boolean is_vxworks; + + bfd_vma (*r_info) (bfd_vma, bfd_vma); + bfd_vma (*r_sym) (bfd_vma); +}; + +struct elf_x86_obj_tdata +{ + struct elf_obj_tdata root; + + /* tls_type for each local got entry. */ + char *local_got_tls_type; + + /* GOTPLT entries for TLS descriptors. */ + bfd_vma *local_tlsdesc_gotent; +}; + +enum elf_x86_plt_type +{ + plt_non_lazy = 0, + plt_lazy = 1 << 0, + plt_pic = 1 << 1, + plt_second = 1 << 2, + plt_unknown = -1 +}; + +struct elf_x86_plt +{ + const char *name; + asection *sec; + bfd_byte *contents; + enum elf_x86_plt_type type; + unsigned int plt_got_offset; + unsigned int plt_entry_size; + unsigned int plt_got_insn_size; /* Only used for x86-64. */ + long count; +}; + +#define elf_x86_tdata(abfd) \ + ((struct elf_x86_obj_tdata *) (abfd)->tdata.any) + +#define elf_x86_local_got_tls_type(abfd) \ + (elf_x86_tdata (abfd)->local_got_tls_type) + +#define elf_x86_local_tlsdesc_gotent(abfd) \ + (elf_x86_tdata (abfd)->local_tlsdesc_gotent) + +#define elf_x86_compute_jump_table_size(htab) \ + ((htab)->elf.srelplt->reloc_count * (htab)->got_entry_size) + +#define is_x86_elf(bfd, htab) \ + (bfd_get_flavour (bfd) == bfd_target_elf_flavour \ + && elf_tdata (bfd) != NULL \ + && elf_object_id (bfd) == (htab)->target_id) + +extern bfd_boolean _bfd_x86_elf_mkobject + (bfd *); + +extern void _bfd_x86_elf_set_tls_module_base + (struct bfd_link_info *); + +extern bfd_vma _bfd_x86_elf_dtpoff_base + (struct bfd_link_info *); + +extern bfd_boolean _bfd_x86_elf_readonly_dynrelocs + (struct elf_link_hash_entry *, void *); + +extern struct elf_link_hash_entry * _bfd_elf_x86_get_local_sym_hash + (struct elf_x86_link_hash_table *, bfd *, const Elf_Internal_Rela *, + bfd_boolean); + +extern hashval_t _bfd_x86_elf_local_htab_hash + (const void *); + +extern int _bfd_x86_elf_local_htab_eq + (const void *, const void *); + +extern struct bfd_hash_entry * _bfd_x86_elf_link_hash_newfunc + (struct bfd_hash_entry *, struct bfd_hash_table *, const char *); + +extern struct bfd_link_hash_table * _bfd_x86_elf_link_hash_table_create + (bfd *); + +extern int _bfd_x86_elf_compare_relocs + (const void *, const void *); + +extern bfd_boolean _bfd_x86_elf_link_check_relocs + (bfd *, struct bfd_link_info *); + +extern bfd_boolean _bfd_x86_elf_size_dynamic_sections + (bfd *, struct bfd_link_info *); + +extern bfd_boolean _bfd_x86_elf_always_size_sections + (bfd *, struct bfd_link_info *); + +extern void _bfd_x86_elf_merge_symbol_attribute + (struct elf_link_hash_entry *, const Elf_Internal_Sym *, + bfd_boolean, bfd_boolean); + +extern void _bfd_x86_elf_copy_indirect_symbol + (struct bfd_link_info *, struct elf_link_hash_entry *, + struct elf_link_hash_entry *); + +extern bfd_boolean _bfd_x86_elf_fixup_symbol + (struct bfd_link_info *, struct elf_link_hash_entry *); + +extern bfd_boolean _bfd_x86_elf_hash_symbol + (struct elf_link_hash_entry *); + +extern bfd_boolean _bfd_x86_elf_adjust_dynamic_symbol + (struct bfd_link_info *, struct elf_link_hash_entry *); + +extern bfd_boolean _bfd_x86_elf_link_symbol_references_local + (struct bfd_link_info *, struct elf_link_hash_entry *); + +extern asection * _bfd_x86_elf_gc_mark_hook + (asection *, struct bfd_link_info *, Elf_Internal_Rela *, + struct elf_link_hash_entry *, Elf_Internal_Sym *); + +extern long _bfd_x86_elf_get_synthetic_symtab + (bfd *, long, long, bfd_vma, struct elf_x86_plt [], asymbol **, + asymbol **); + +extern enum elf_property_kind _bfd_x86_elf_parse_gnu_properties + (bfd *, unsigned int, bfd_byte *, unsigned int); + +extern bfd_boolean _bfd_x86_elf_merge_gnu_properties + (struct bfd_link_info *, bfd *, elf_property *, elf_property *); + +extern bfd * _bfd_x86_elf_link_setup_gnu_properties + (struct bfd_link_info *, struct elf_x86_init_table *); + +#define bfd_elf64_mkobject \ + _bfd_x86_elf_mkobject +#define bfd_elf32_mkobject \ + _bfd_x86_elf_mkobject +#define bfd_elf64_bfd_link_hash_table_create \ + _bfd_x86_elf_link_hash_table_create +#define bfd_elf32_bfd_link_hash_table_create \ + _bfd_x86_elf_link_hash_table_create +#define bfd_elf64_bfd_link_check_relocs \ + _bfd_x86_elf_link_check_relocs +#define bfd_elf32_bfd_link_check_relocs \ + _bfd_x86_elf_link_check_relocs + +#define elf_backend_size_dynamic_sections \ + _bfd_x86_elf_size_dynamic_sections +#define elf_backend_always_size_sections \ + _bfd_x86_elf_always_size_sections +#define elf_backend_merge_symbol_attribute \ + _bfd_x86_elf_merge_symbol_attribute +#define elf_backend_copy_indirect_symbol \ + _bfd_x86_elf_copy_indirect_symbol +#define elf_backend_fixup_symbol \ + _bfd_x86_elf_fixup_symbol +#define elf_backend_hash_symbol \ + _bfd_x86_elf_hash_symbol +#define elf_backend_adjust_dynamic_symbol \ + _bfd_x86_elf_adjust_dynamic_symbol +#define elf_backend_gc_mark_hook \ + _bfd_x86_elf_gc_mark_hook +#define elf_backend_omit_section_dynsym \ + ((bfd_boolean (*) (bfd *, struct bfd_link_info *, asection *)) bfd_true) +#define elf_backend_parse_gnu_properties \ + _bfd_x86_elf_parse_gnu_properties +#define elf_backend_merge_gnu_properties \ + _bfd_x86_elf_merge_gnu_properties @@ -156,7 +156,7 @@ ieee_write_id (bfd *abfd, const char *id) { _bfd_error_handler /* xgettext:c-format */ - (_("%B: string too long (%d chars, max 65535)"), abfd, length); + (_("%B: string too long (%ld chars, max 65535)"), abfd, (long) length); bfd_set_error (bfd_error_invalid_operation); return FALSE; } @@ -224,7 +224,7 @@ read_id (common_header_type *ieee) if (ieee->input_p + length >= ieee->end_p) { _bfd_error_handler (_("IEEE parser: string length: %#lx longer than buffer: %#lx"), - length, (long) (ieee->end_p - ieee->input_p)); + (long) length, (long) (ieee->end_p - ieee->input_p)); bfd_set_error (bfd_error_invalid_operation); return NULL; } @@ -859,8 +859,8 @@ ieee_slurp_external_symbols (bfd *abfd) { _bfd_error_handler /* xgettext:c-format */ - (_("%B: unexpected ATN type %d in external part"), - abfd, (int) value); + (_("%B: unexpected ATN type %Ld in external part"), + abfd, value); bfd_set_error (bfd_error_bad_value); return FALSE; } @@ -825,13 +825,10 @@ ihex_write_object_contents (bfd *abfd) extbase = where & 0xffff0000; if (where > extbase + 0xffff) { - char buf[20]; - - sprintf_vma (buf, where); _bfd_error_handler /* xgettext:c-format */ - (_("%B: address 0x%s out of range for Intel Hex file"), - abfd, buf); + (_("%B: address %#Lx out of range for Intel Hex file"), + abfd, where); bfd_set_error (bfd_error_bad_value); return FALSE; } diff --git a/bfd/libbfd.h b/bfd/libbfd.h index ae9bf76..196e1f0 100644 --- a/bfd/libbfd.h +++ b/bfd/libbfd.h @@ -1752,6 +1752,7 @@ static const char *const bfd_reloc_code_real_names[] = { "@@uninitialized@@", "BFD_RELOC_ARC_S25W_PCREL_PLT", "BFD_RELOC_ARC_S21H_PCREL_PLT", "BFD_RELOC_ARC_NPS_CMEM16", + "BFD_RELOC_ARC_JLI_SECTOFF", "BFD_RELOC_BFIN_16_IMM", "BFD_RELOC_BFIN_16_HIGH", "BFD_RELOC_BFIN_4_PCREL", @@ -3218,6 +3219,11 @@ void _bfd_generic_set_reloc arelent **relptr, unsigned int count); +bfd_boolean _bfd_unrecognized_reloc + (bfd * abfd, + sec_ptr section, + unsigned int r_type); + /* Extracted from archures.c. */ extern const bfd_arch_info_type bfd_default_arch_struct; const bfd_arch_info_type *bfd_default_compatible diff --git a/bfd/mach-o-aarch64.c b/bfd/mach-o-aarch64.c index 12fc47e..5cf3364 100644 --- a/bfd/mach-o-aarch64.c +++ b/bfd/mach-o-aarch64.c @@ -147,9 +147,11 @@ static reloc_howto_type arm64_howto_table[]= }; static bfd_boolean -bfd_mach_o_arm64_canonicalize_one_reloc (bfd *abfd, - struct mach_o_reloc_info_external *raw, - arelent *res, asymbol **syms) +bfd_mach_o_arm64_canonicalize_one_reloc (bfd * abfd, + struct mach_o_reloc_info_external * raw, + arelent * res, + asymbol ** syms, + arelent * res_base ATTRIBUTE_UNUSED) { bfd_mach_o_reloc_info reloc; diff --git a/bfd/mach-o-arm.c b/bfd/mach-o-arm.c index e731522..9eb614c 100644 --- a/bfd/mach-o-arm.c +++ b/bfd/mach-o-arm.c @@ -30,7 +30,7 @@ #define bfd_mach_o_mkobject bfd_mach_o_arm_mkobject #define bfd_mach_o_canonicalize_one_reloc bfd_mach_o_arm_canonicalize_one_reloc -#define bfd_mach_o_swap_reloc_out NULL +#define bfd_mach_o_swap_reloc_out NULL #define bfd_mach_o_bfd_reloc_type_lookup bfd_mach_o_arm_bfd_reloc_type_lookup #define bfd_mach_o_bfd_reloc_name_lookup bfd_mach_o_arm_bfd_reloc_name_lookup @@ -147,10 +147,12 @@ static reloc_howto_type arm_howto_table[]= }; static bfd_boolean -bfd_mach_o_arm_canonicalize_one_reloc (bfd *abfd, - struct mach_o_reloc_info_external *raw, - arelent *res, asymbol **syms) - { +bfd_mach_o_arm_canonicalize_one_reloc (bfd * abfd, + struct mach_o_reloc_info_external * raw, + arelent * res, + asymbol ** syms, + arelent * res_base) +{ bfd_mach_o_reloc_info reloc; if (!bfd_mach_o_pre_canonicalize_one_reloc (abfd, raw, &reloc, res, syms)) @@ -161,6 +163,9 @@ bfd_mach_o_arm_canonicalize_one_reloc (bfd *abfd, switch (reloc.r_type) { case BFD_MACH_O_ARM_RELOC_PAIR: + /* PR 21813: Check for a corrupt PAIR reloc at the start. */ + if (res == res_base) + return FALSE; if (reloc.r_length == 2) { res->howto = &arm_howto_table[7]; @@ -174,6 +179,7 @@ bfd_mach_o_arm_canonicalize_one_reloc (bfd *abfd, return TRUE; } return FALSE; + case BFD_MACH_O_ARM_RELOC_SECTDIFF: if (reloc.r_length == 2) { @@ -186,6 +192,7 @@ bfd_mach_o_arm_canonicalize_one_reloc (bfd *abfd, return TRUE; } return FALSE; + case BFD_MACH_O_ARM_RELOC_LOCAL_SECTDIFF: if (reloc.r_length == 2) { @@ -198,6 +205,7 @@ bfd_mach_o_arm_canonicalize_one_reloc (bfd *abfd, return TRUE; } return FALSE; + case BFD_MACH_O_ARM_RELOC_HALF_SECTDIFF: switch (reloc.r_length) { @@ -209,8 +217,9 @@ bfd_mach_o_arm_canonicalize_one_reloc (bfd *abfd, return TRUE; } return FALSE; + default: - return FALSE; + break; } } else @@ -239,24 +248,23 @@ bfd_mach_o_arm_canonicalize_one_reloc (bfd *abfd, return FALSE; } break; + case BFD_MACH_O_ARM_RELOC_BR24: if (reloc.r_length == 2 && reloc.r_pcrel == 1) { res->howto = &arm_howto_table[11]; return TRUE; } - else - return FALSE; break; + case BFD_MACH_O_THUMB_RELOC_BR22: if (reloc.r_length == 2 && reloc.r_pcrel == 1) { res->howto = &arm_howto_table[16]; return TRUE; } - else - return FALSE; break; + case BFD_MACH_O_ARM_RELOC_HALF: if (reloc.r_pcrel == 0) switch (reloc.r_length) @@ -268,7 +276,8 @@ bfd_mach_o_arm_canonicalize_one_reloc (bfd *abfd, res->howto = &arm_howto_table[14]; return TRUE; } - return FALSE; + break; + case BFD_MACH_O_ARM_RELOC_PAIR: if (res[-1].howto == &arm_howto_table[12] && reloc.r_length == 0) @@ -290,11 +299,14 @@ bfd_mach_o_arm_canonicalize_one_reloc (bfd *abfd, res->address = res[-1].address; return TRUE; } - return FALSE; + break; + default: - return FALSE; + break; } } + + return FALSE; } static reloc_howto_type * diff --git a/bfd/mach-o-i386.c b/bfd/mach-o-i386.c index b2f0241..803af98 100644 --- a/bfd/mach-o-i386.c +++ b/bfd/mach-o-i386.c @@ -112,9 +112,11 @@ static reloc_howto_type i386_howto_table[]= }; static bfd_boolean -bfd_mach_o_i386_canonicalize_one_reloc (bfd *abfd, - struct mach_o_reloc_info_external *raw, - arelent *res, asymbol **syms) +bfd_mach_o_i386_canonicalize_one_reloc (bfd * abfd, + struct mach_o_reloc_info_external * raw, + arelent * res, + asymbol ** syms, + arelent * res_base) { bfd_mach_o_reloc_info reloc; @@ -126,6 +128,9 @@ bfd_mach_o_i386_canonicalize_one_reloc (bfd *abfd, switch (reloc.r_type) { case BFD_MACH_O_GENERIC_RELOC_PAIR: + /* PR 21813: Check for a corrupt PAIR reloc at the start. */ + if (res == res_base) + return FALSE; if (reloc.r_length == 2) { res->howto = &i386_howto_table[7]; @@ -164,7 +169,7 @@ bfd_mach_o_i386_canonicalize_one_reloc (bfd *abfd, } return FALSE; default: - return FALSE; + break; } } else @@ -192,11 +197,11 @@ bfd_mach_o_i386_canonicalize_one_reloc (bfd *abfd, default: return FALSE; } - break; default: - return FALSE; + break; } } + return FALSE; } static bfd_boolean @@ -391,9 +396,9 @@ const mach_o_segment_name_xlat mach_o_i386_segsec_names_xlat[] = { NULL, NULL } }; -#define bfd_mach_o_canonicalize_one_reloc bfd_mach_o_i386_canonicalize_one_reloc -#define bfd_mach_o_swap_reloc_out bfd_mach_o_i386_swap_reloc_out -#define bfd_mach_o_print_thread bfd_mach_o_i386_print_thread +#define bfd_mach_o_canonicalize_one_reloc bfd_mach_o_i386_canonicalize_one_reloc +#define bfd_mach_o_swap_reloc_out bfd_mach_o_i386_swap_reloc_out +#define bfd_mach_o_print_thread bfd_mach_o_i386_print_thread #define bfd_mach_o_tgt_seg_table mach_o_i386_segsec_names_xlat #define bfd_mach_o_section_type_valid_for_tgt NULL diff --git a/bfd/mach-o-x86-64.c b/bfd/mach-o-x86-64.c index 1c83b10..2c50476 100644 --- a/bfd/mach-o-x86-64.c +++ b/bfd/mach-o-x86-64.c @@ -120,9 +120,11 @@ static reloc_howto_type x86_64_howto_table[]= }; static bfd_boolean -bfd_mach_o_x86_64_canonicalize_one_reloc (bfd *abfd, - struct mach_o_reloc_info_external *raw, - arelent *res, asymbol **syms) +bfd_mach_o_x86_64_canonicalize_one_reloc (bfd * abfd, + struct mach_o_reloc_info_external * raw, + arelent * res, + asymbol ** syms, + arelent * res_base ATTRIBUTE_UNUSED) { bfd_mach_o_reloc_info reloc; diff --git a/bfd/mach-o.c b/bfd/mach-o.c index 2c1973c..9fe6326 100644 --- a/bfd/mach-o.c +++ b/bfd/mach-o.c @@ -1496,7 +1496,7 @@ bfd_mach_o_canonicalize_relocs (bfd *abfd, unsigned long filepos, for (i = 0; i < count; i++) { if (!(*bed->_bfd_mach_o_canonicalize_one_reloc)(abfd, &native_relocs[i], - &res[i], syms)) + &res[i], syms, res)) goto err; } free (native_relocs); @@ -2528,8 +2528,8 @@ bfd_mach_o_write_contents (bfd *abfd) break; default: _bfd_error_handler - (_("unable to allocate data for load command 0x%lx"), - (unsigned long) cmd->type); + (_("unable to allocate data for load command %#x"), + cmd->type); break; } @@ -2633,8 +2633,8 @@ bfd_mach_o_write_contents (bfd *abfd) break; default: _bfd_error_handler - (_("unable to write unknown load command 0x%lx"), - (unsigned long) cmd->type); + (_("unable to write unknown load command %#x"), + cmd->type); return FALSE; } } @@ -2817,8 +2817,8 @@ bfd_mach_o_build_exec_seg_command (bfd *abfd, bfd_mach_o_segment_command *seg) { _bfd_error_handler /* xgettext:c-format */ - (_("section address (%lx) below start of segment (%lx)"), - (unsigned long) s->addr, (unsigned long) vma); + (_("section address (%#Lx) below start of segment (%#Lx)"), + s->addr, vma); return FALSE; } @@ -2958,8 +2958,8 @@ bfd_mach_o_layout_commands (bfd_mach_o_data_struct *mdata) break; default: _bfd_error_handler - (_("unable to layout unknown load command 0x%lx"), - (unsigned long) cmd->type); + (_("unable to layout unknown load command %#x"), + cmd->type); ret = FALSE; break; } @@ -3494,7 +3494,7 @@ bfd_mach_o_read_section_32 (bfd *abfd, unsigned long prot) if (section->align > 64) { _bfd_error_handler - (_("bfd_mach_o_read_section_32: overlarge alignment value: 0x%x, " + (_("bfd_mach_o_read_section_32: overlarge alignment value: %#lx, " "using 32 instead"), section->align); section->align = 32; } @@ -3537,7 +3537,7 @@ bfd_mach_o_read_section_64 (bfd *abfd, unsigned long prot) if (section->align > 64) { _bfd_error_handler - (_("bfd_mach_o_read_section_64: overlarge alignment value: 0x%x, " + (_("bfd_mach_o_read_section_64: overlarge alignment value: %#lx, " "using 32 instead"), section->align); section->align = 32; } @@ -3588,8 +3588,8 @@ bfd_mach_o_read_symtab_symbol (bfd *abfd, { _bfd_error_handler /* xgettext:c-format */ - (_("bfd_mach_o_read_symtab_symbol: unable to read %d bytes at %lu"), - symwidth, (unsigned long) symoff); + (_("bfd_mach_o_read_symtab_symbol: unable to read %d bytes at %u"), + symwidth, symoff); return FALSE; } @@ -3607,9 +3607,9 @@ bfd_mach_o_read_symtab_symbol (bfd *abfd, { _bfd_error_handler /* xgettext:c-format */ - (_("bfd_mach_o_read_symtab_symbol: name out of range (%lu >= %lu)"), - (unsigned long) stroff, - (unsigned long) sym->strsize); + (_("bfd_mach_o_read_symtab_symbol: name out of range (%lu >= %u)"), + stroff, + sym->strsize); return FALSE; } @@ -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; @@ -4756,8 +4759,8 @@ bfd_mach_o_read_command (bfd *abfd, bfd_mach_o_load_command *command) break; default: command->len = 0; - _bfd_error_handler (_("%B: unknown load command 0x%lx"), - abfd, (unsigned long) command->type); + _bfd_error_handler (_("%B: unknown load command %#x"), + abfd, command->type); return FALSE; } @@ -5052,8 +5055,8 @@ bfd_mach_o_header_p (bfd *abfd, if (! (header.byteorder == BFD_ENDIAN_BIG || header.byteorder == BFD_ENDIAN_LITTLE)) { - _bfd_error_handler (_("unknown header byte-order value 0x%lx"), - (unsigned long) header.byteorder); + _bfd_error_handler (_("unknown header byte-order value %#x"), + header.byteorder); goto wrong; } diff --git a/bfd/mach-o.h b/bfd/mach-o.h index 83660a4..0719b53 100644 --- a/bfd/mach-o.h +++ b/bfd/mach-o.h @@ -746,7 +746,7 @@ typedef struct bfd_mach_o_backend_data enum bfd_architecture arch; bfd_vma page_size; bfd_boolean (*_bfd_mach_o_canonicalize_one_reloc) - (bfd *, struct mach_o_reloc_info_external *, arelent *, asymbol **); + (bfd *, struct mach_o_reloc_info_external *, arelent *, asymbol **, arelent *); bfd_boolean (*_bfd_mach_o_swap_reloc_out)(arelent *, bfd_mach_o_reloc_info *); bfd_boolean (*_bfd_mach_o_print_thread)(bfd *, bfd_mach_o_thread_flavour *, void *, char *); diff --git a/bfd/merge.c b/bfd/merge.c index 553de8e..a1792a8 100644 --- a/bfd/merge.c +++ b/bfd/merge.c @@ -861,8 +861,8 @@ _bfd_merged_section_offset (bfd *output_bfd ATTRIBUTE_UNUSED, asection **psec, if (offset > sec->rawsize) _bfd_error_handler /* xgettext:c-format */ - (_("%B: access beyond end of merged section (%ld)"), - sec->owner, (long) offset); + (_("%B: access beyond end of merged section (%Ld)"), + sec->owner, offset); return secinfo->first_str ? sec->size : 0; } @@ -956,8 +956,8 @@ mmo_write_loc_chunk (bfd *abfd, bfd_vma vma, const bfd_byte *loc, _bfd_error_handler /* xgettext:c-format */ (_("%B: attempt to emit contents at non-multiple-of-4" - " address 0x%lx\n"), - abfd, (unsigned long) vma); + " address %#Lx"), + abfd, vma); bfd_set_error (bfd_error_bad_value); return FALSE; } @@ -1602,7 +1602,7 @@ mmo_scan (bfd *abfd) bfd_size_type nbytes_read = 0; /* Buffer with room to read a 64-bit value. */ bfd_byte buf[8]; - long stab_loc = -1; + file_ptr stab_loc = -1; char *file_names[256]; abfd->symcount = 0; @@ -2033,7 +2033,7 @@ mmo_scan (bfd *abfd) " not equal to the number of tetras to the preceding" " lop_stab (%ld)\n"), abfd, (long) (y * 256 + z), - (curpos - stab_loc - 4)/4); + (long) (curpos - stab_loc - 4)/4); bfd_set_error (bfd_error_bad_value); goto error_return; } @@ -3239,15 +3239,14 @@ mmo_write_object_contents (bfd *abfd) global registers. */ _bfd_error_handler /* xgettext:c-format */ - (_("%B: too many initialized registers; section length %ld\n"), - abfd, (long) sec->size); + (_("%B: too many initialized registers; section length %Ld"), + abfd, sec->size); else _bfd_error_handler /* xgettext:c-format */ (_("%B: invalid start address for initialized registers of" - " length %ld: 0x%lx%08lx\n"), - abfd, (long) sec->size, - (unsigned long) (sec->vma >> 32), (unsigned long) (sec->vma)); + " length %Ld: %#Lx"), + abfd, sec->size, sec->vma); 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/opncls.c b/bfd/opncls.c index 913341c..fa54986 100644 --- a/bfd/opncls.c +++ b/bfd/opncls.c @@ -726,25 +726,13 @@ RETURNS bfd_boolean bfd_close (bfd *abfd) { - bfd_boolean ret; - if (bfd_write_p (abfd)) { if (! BFD_SEND_FMT (abfd, _bfd_write_contents, (abfd))) return FALSE; } - if (! BFD_SEND (abfd, _close_and_cleanup, (abfd))) - return FALSE; - - ret = abfd->iovec->bclose (abfd) == 0; - - if (ret) - _maybe_make_executable (abfd); - - _bfd_delete_bfd (abfd); - - return ret; + return bfd_close_all_done (abfd); } /* @@ -774,7 +762,10 @@ bfd_close_all_done (bfd *abfd) { bfd_boolean ret; - ret = bfd_cache_close (abfd); + if (! BFD_SEND (abfd, _close_and_cleanup, (abfd))) + return FALSE; + + ret = abfd->iovec->bclose (abfd) == 0; if (ret) _maybe_make_executable (abfd); diff --git a/bfd/peXXigen.c b/bfd/peXXigen.c index a18e0b2..db44053 100644 --- a/bfd/peXXigen.c +++ b/bfd/peXXigen.c @@ -529,7 +529,7 @@ _bfd_XXi_swap_aouthdr_in (bfd * abfd, { /* xgettext:c-format */ _bfd_error_handler - (_("%B: aout header specifies an invalid number of data-directory entries: %d"), + (_("%B: aout header specifies an invalid number of data-directory entries: %ld"), abfd, a->NumberOfRvaAndSizes); bfd_set_error (bfd_error_bad_value); @@ -1514,7 +1514,7 @@ pe_print_idata (bfd * abfd, void * vfile) member_high, member, WithoutHighBit (member_high), member); /* PR binutils/17512: Handle corrupt PE data. */ - else if (amt + 2 >= datasize) + else if (amt >= datasize || amt + 2 >= datasize) fprintf (file, _("\t<corrupt: 0x%04lx>"), member); else { @@ -1548,11 +1548,12 @@ pe_print_idata (bfd * abfd, void * vfile) break; amt = member - adj; + if (HighBitSet (member)) fprintf (file, "\t%04lx\t %4lu <none>", member, WithoutHighBit (member)); /* PR binutils/17512: Handle corrupt PE data. */ - else if (amt + 2 >= datasize) + else if (amt >= datasize || amt + 2 >= datasize) fprintf (file, _("\t<corrupt: 0x%04lx>"), member); else { @@ -2985,7 +2986,7 @@ _bfd_XX_bfd_copy_private_bfd_data_common (bfd * ibfd, bfd * obfd) > bfd_get_section_size (section)) { /* xgettext:c-format */ - _bfd_error_handler (_("%B: Data Directory size (%lx) exceeds space left in section (%lx)"), + _bfd_error_handler (_("%B: Data Directory size (%lx) exceeds space left in section (%Lx)"), obfd, ope->pe_opthdr.DataDirectory[PE_DEBUG_DATA].Size, bfd_get_section_size (section) - (addr - section->vma)); return FALSE; diff --git a/bfd/po/SRC-POTFILES.in b/bfd/po/SRC-POTFILES.in index 510618e..7ea56ca 100644 --- a/bfd/po/SRC-POTFILES.in +++ b/bfd/po/SRC-POTFILES.in @@ -263,6 +263,8 @@ elfxx-mips.c elfxx-riscv.c elfxx-sparc.c elfxx-tilegx.c +elfxx-x86.c +elfxx-x86.c epoc-pe-arm.c epoc-pei-arm.c format.c diff --git a/bfd/po/bfd.pot b/bfd/po/bfd.pot index 76fdc86..dcc9cec 100644 --- a/bfd/po/bfd.pot +++ b/bfd/po/bfd.pot @@ -8,7 +8,7 @@ msgid "" msgstr "" "Project-Id-Version: PACKAGE VERSION\n" "Report-Msgid-Bugs-To: bug-binutils@gnu.org\n" -"POT-Creation-Date: 2017-07-03 16:54+0200\n" +"POT-Creation-Date: 2017-08-14 10:55+0100\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: FULL NAME <EMAIL@ADDRESS>\n" "Language-Team: LANGUAGE <LL@li.org>\n" @@ -48,7 +48,7 @@ msgid "" "%B: can not represent section for symbol `%s' in a.out object file format" msgstr "" -#: aoutx.h:1588 vms-alpha.c:7776 +#: aoutx.h:1588 vms-alpha.c:7853 msgid "*unknown*" msgstr "" @@ -65,19 +65,19 @@ msgstr "" msgid "%B: relocatable link from %s to %s not supported" msgstr "" -#: archive.c:2293 +#: archive.c:2298 msgid "Warning: writing archive was slow: rewriting timestamp\n" msgstr "" -#: archive.c:2405 linker.c:1408 +#: archive.c:2410 linker.c:1408 msgid "%B: plugin needed to handle lto object" msgstr "" -#: archive.c:2634 +#: archive.c:2639 msgid "Reading archive file mod timestamp" msgstr "" -#: archive.c:2658 +#: archive.c:2663 msgid "Writing updated armap timestamp" msgstr "" @@ -170,22 +170,22 @@ msgstr "" msgid "#<Invalid error code>" msgstr "" -#: bfd.c:1138 +#: bfd.c:1144 #, c-format msgid "BFD %s assertion fail %s:%d" msgstr "" -#: bfd.c:1151 +#: bfd.c:1157 #, c-format msgid "BFD %s internal error, aborting at %s:%d in %s\n" msgstr "" -#: bfd.c:1156 +#: bfd.c:1162 #, c-format msgid "BFD %s internal error, aborting at %s:%d\n" msgstr "" -#: bfd.c:1158 +#: bfd.c:1164 msgid "Please report this bug.\n" msgstr "" @@ -201,11 +201,11 @@ msgstr "" #: binary.c:276 #, c-format -msgid "warning: writing section `%A' at huge (ie negative) file offset 0x%lx." +msgid "warning: writing section `%A' at huge (ie negative) file offset" msgstr "" #: 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 +#: elf64-ia64-vms.c:353 elfxx-sparc.c:2989 reloc.c:8020 reloc16.c:156 #: elf32-ia64.c:351 elf64-ia64.c:351 msgid "%P%F: --relax and -r may not be used together\n" msgstr "" @@ -241,9 +241,9 @@ msgstr "" msgid "%B: unsupported relocation: ALPHA_R_GPRELLOW" msgstr "" -#: 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 +#: coff-alpha.c:1518 elf32-i370.c:1085 elf32-m32r.c:2418 elf32-microblaze.c:952 +#: elf64-alpha.c:4165 elf64-alpha.c:4313 elf64-ia64-vms.c:3431 +#: elf32-ia64.c:3839 elf64-ia64.c:3839 #, c-format msgid "%B: unknown relocation type %d" msgstr "" @@ -275,12 +275,12 @@ msgstr "" #: coff-arm.c:1746 coff-tic80.c:670 cofflink.c:3123 #, c-format -msgid "%B: bad reloc address 0x%lx in section `%A'" +msgid "%B: bad reloc address %#Lx in section `%A'" msgstr "" #: coff-arm.c:2071 #, c-format -msgid "%B: illegal symbol index in reloc: %d" +msgid "%B: illegal symbol index in reloc: %ld" msgstr "" #: coff-arm.c:2203 @@ -288,14 +288,14 @@ msgstr "" msgid "error: %B is compiled for APCS-%d, whereas %B is compiled for APCS-%d" msgstr "" -#: coff-arm.c:2216 elf32-arm.c:19756 +#: coff-arm.c:2216 elf32-arm.c:19754 #, c-format msgid "" "error: %B passes floats in float registers, whereas %B passes them in " "integer registers" msgstr "" -#: coff-arm.c:2221 elf32-arm.c:19760 +#: coff-arm.c:2221 elf32-arm.c:19758 #, c-format msgid "" "error: %B passes floats in integer registers, whereas %B passes them in " @@ -316,12 +316,12 @@ msgid "" "position independent" msgstr "" -#: coff-arm.c:2265 elf32-arm.c:19825 +#: coff-arm.c:2265 elf32-arm.c:19823 #, c-format msgid "Warning: %B supports interworking, whereas %B does not" msgstr "" -#: coff-arm.c:2270 elf32-arm.c:19831 +#: coff-arm.c:2270 elf32-arm.c:19829 #, c-format msgid "Warning: %B does not support interworking, whereas %B does" msgstr "" @@ -331,7 +331,7 @@ msgstr "" msgid "private flags = %x:" msgstr "" -#: coff-arm.c:2301 elf32-arm.c:14156 +#: coff-arm.c:2301 elf32-arm.c:14154 #, c-format msgid " [floats passed in float registers]" msgstr "" @@ -341,7 +341,7 @@ msgstr "" msgid " [floats passed in integer registers]" msgstr "" -#: coff-arm.c:2306 elf32-arm.c:14159 +#: coff-arm.c:2306 elf32-arm.c:14157 #, c-format msgid " [position independent]" msgstr "" @@ -366,17 +366,17 @@ msgstr "" msgid " [interworking not supported]" msgstr "" -#: coff-arm.c:2361 elf32-arm.c:13017 +#: coff-arm.c:2361 elf32-arm.c:13015 msgid "" "Warning: Not setting interworking flag of %B since it has already been " "specified as non-interworking" msgstr "" -#: coff-arm.c:2364 elf32-arm.c:13021 +#: coff-arm.c:2364 elf32-arm.c:13019 msgid "Warning: Clearing the interworking flag of %B due to outside request" msgstr "" -#: coff-arm.c:2421 elf32-arm.c:13066 +#: coff-arm.c:2421 elf32-arm.c:13064 #, c-format msgid "" "Warning: Clearing the interworking flag of %B because non-interworking code " @@ -393,7 +393,7 @@ msgstr "" msgid "relocation `%s' not yet implemented" msgstr "" -#: coff-i860.c:608 coff-tic4x.c:227 coff-tic54x.c:365 coffcode.h:5314 +#: coff-i860.c:608 coff-tic4x.c:227 coff-tic54x.c:365 coffcode.h:5327 #, c-format msgid "%B: warning: illegal symbol index %ld in relocs" msgstr "" @@ -402,7 +402,7 @@ msgstr "" msgid "uncertain calling convention for non-COFF symbol" msgstr "" -#: coff-m68k.c:483 elf32-bfin.c:5530 elf32-cr16.c:2817 elf32-m68k.c:4574 +#: coff-m68k.c:483 elf32-bfin.c:5529 elf32-cr16.c:2817 elf32-m68k.c:4573 msgid "unsupported reloc type" msgstr "" @@ -411,17 +411,17 @@ msgstr "" msgid "GP relative relocation when _gp not defined" msgstr "" -#: coff-rs6000.c:2747 +#: coff-rs6000.c:2773 #, c-format msgid "%B: unsupported relocation type 0x%02x" msgstr "" -#: coff-rs6000.c:2833 +#: coff-rs6000.c:2859 #, c-format -msgid "%B: TOC reloc at 0x%x to symbol `%s' with no TOC entry" +msgid "%B: TOC reloc at %#Lx to symbol `%s' with no TOC entry" msgstr "" -#: coff-rs6000.c:3579 coff64-rs6000.c:2110 +#: coff-rs6000.c:3605 coff64-rs6000.c:2150 #, c-format msgid "%B: symbol `%s' has unrecognized smclas %d" msgstr "" @@ -433,42 +433,42 @@ msgstr "" #: coff-sh.c:778 elf32-sh.c:580 #, c-format -msgid "%B: 0x%lx: warning: bad R_SH_USES offset" +msgid "%B: %#Lx: warning: bad R_SH_USES offset" msgstr "" -#: coff-sh.c:789 elf32-sh.c:592 +#: coff-sh.c:789 #, c-format -msgid "%B: 0x%lx: warning: R_SH_USES points to unrecognized insn 0x%x" +msgid "%B: %#Lx: warning: R_SH_USES points to unrecognized insn %#x" msgstr "" #: coff-sh.c:807 elf32-sh.c:610 #, c-format -msgid "%B: 0x%lx: warning: bad R_SH_USES load offset" +msgid "%B: %#Lx: warning: bad R_SH_USES load offset" msgstr "" #: coff-sh.c:832 elf32-sh.c:626 #, c-format -msgid "%B: 0x%lx: warning: could not find expected reloc" +msgid "%B: %#Lx: warning: could not find expected reloc" msgstr "" #: coff-sh.c:849 elf32-sh.c:655 #, c-format -msgid "%B: 0x%lx: warning: symbol in unexpected section" +msgid "%B: %#Lx: warning: symbol in unexpected section" msgstr "" #: coff-sh.c:975 elf32-sh.c:785 #, c-format -msgid "%B: 0x%lx: warning: could not find expected COUNT reloc" +msgid "%B: %#Lx: warning: could not find expected COUNT reloc" msgstr "" #: coff-sh.c:985 elf32-sh.c:795 #, c-format -msgid "%B: 0x%lx: warning: bad count" +msgid "%B: %#Lx: warning: bad count" msgstr "" #: 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" +msgid "%B: %#Lx: fatal: reloc overflow while relaxing" msgstr "" #: coff-sh.c:1452 @@ -494,12 +494,18 @@ msgstr "" msgid "%B: unable to load COMDAT section name" msgstr "" -#: coffcode.h:1009 +#. Malformed input files can trigger this test. +#. cf PR 21781. +#: coffcode.h:1003 +msgid "%B: error: unexpected symbol '%s' in COMDAT section" +msgstr "" + +#: coffcode.h:1015 #, c-format msgid "%B: warning: COMDAT symbol '%s' does not match section name '%s'" msgstr "" -#: coffcode.h:1019 +#: coffcode.h:1025 #, c-format msgid "%B: warning: No symbol for section '%s' found" msgstr "" @@ -507,98 +513,98 @@ msgstr "" #. 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:1245 +#: coffcode.h:1251 #, c-format msgid "" "%B: Warning: Ignoring section flag IMAGE_SCN_MEM_NOT_PAGED in section %s" msgstr "" -#: coffcode.h:1314 +#: coffcode.h:1320 #, c-format -msgid "%B (%s): Section flag %s (0x%x) ignored" +msgid "%B (%s): Section flag %s (%#lx) ignored" msgstr "" -#: coffcode.h:1949 +#: coffcode.h:1955 msgid "%B: warning: claims to have 0xffff relocs, without overflow" msgstr "" -#: coffcode.h:2465 +#: coffcode.h:2471 #, c-format msgid "Unrecognized TI COFF target id '0x%x'" msgstr "" -#: coffcode.h:2783 +#: coffcode.h:2789 #, c-format msgid "%B: reloc against a non-existent symbol index: %ld" msgstr "" -#: coffcode.h:3186 +#: coffcode.h:3192 #, c-format msgid "%B: page size is too large (0x%x)" msgstr "" -#: coffcode.h:3346 +#: coffcode.h:3352 #, c-format msgid "%B: too many sections (%d)" msgstr "" -#: coffcode.h:3767 +#: coffcode.h:3773 #, c-format msgid "%B: section %A: string table overflow at offset %ld" msgstr "" -#: coffcode.h:4585 +#: coffcode.h:4591 msgid "%B: warning: line number table read failed" msgstr "" -#: coffcode.h:4619 coffcode.h:4633 +#: coffcode.h:4625 coffcode.h:4639 #, c-format msgid "%B: warning: illegal symbol index 0x%lx in line number entry %d" msgstr "" -#: coffcode.h:4647 +#: coffcode.h:4653 #, c-format msgid "%B: warning: illegal symbol in line number entry %d" msgstr "" -#: coffcode.h:4660 +#: coffcode.h:4666 #, c-format msgid "%B: warning: duplicate line number information for `%s'" msgstr "" -#: coffcode.h:5074 +#: coffcode.h:5087 #, c-format msgid "%B: Unrecognized storage class %d for %s symbol `%s'" msgstr "" -#: coffcode.h:5207 +#: coffcode.h:5220 #, c-format msgid "warning: %B: local symbol `%s' has no section" msgstr "" -#: coffcode.h:5354 +#: coffcode.h:5367 #, c-format -msgid "%B: illegal relocation type %d at address 0x%lx" +msgid "%B: illegal relocation type %d at address %#Lx" msgstr "" -#: coffgen.c:178 elf.c:1181 +#: coffgen.c:178 elf.c:1198 #, c-format msgid "%B: unable to initialize compress status for section %s" msgstr "" -#: coffgen.c:202 elf.c:1192 +#: coffgen.c:202 elf.c:1209 #, c-format msgid "%B: unable to initialize decompress status for section %s" msgstr "" #. PR 21013: Provide an error message when the alloc fails. #: coffgen.c:1648 -msgid "%B: Not enough memory to allocate space for %lu symbols" +msgid "%B: Not enough memory to allocate space for %Lu symbols" msgstr "" #: coffgen.c:1716 #, c-format -msgid "%B: bad string table size %lu" +msgid "%B: bad string table size %Lu" msgstr "" #: coffgen.c:1885 coffgen.c:1945 coffgen.c:1963 cofflink.c:2041 @@ -611,16 +617,16 @@ msgstr "" msgid "<corrupt info> %s" msgstr "" -#: coffgen.c:2666 elflink.c:14044 linker.c:2931 +#: coffgen.c:2666 elflink.c:14078 linker.c:2931 msgid "%F%P: already_linked_table: %E\n" msgstr "" -#: coffgen.c:3007 elflink.c:13059 +#: coffgen.c:3007 elflink.c:13064 #, c-format msgid "Removing unused section '%A' in file '%B'" msgstr "" -#: coffgen.c:3084 elflink.c:13304 +#: coffgen.c:3084 elflink.c:13309 msgid "Warning: gc-sections option ignored" msgstr "" @@ -629,7 +635,7 @@ msgstr "" msgid "Warning: symbol `%s' is both section and non-section" msgstr "" -#: cofflink.c:450 elf64-ia64-vms.c:5188 elflink.c:4788 +#: cofflink.c:450 elf64-ia64-vms.c:5187 elflink.c:4794 #, c-format msgid "Warning: type of symbol `%s' changed from %d to %d in %B" msgstr "" @@ -639,7 +645,7 @@ msgstr "" msgid "%B: relocs in section `%A', but it has no contents" msgstr "" -#: cofflink.c:2432 elflink.c:10567 +#: cofflink.c:2432 elflink.c:10572 #, c-format msgid "" "%X`%s' referenced in section `%A' of %B: defined in discarded section `%A' " @@ -648,12 +654,12 @@ msgstr "" #: cofflink.c:2730 #, c-format -msgid "%B: %A: reloc overflow: 0x%lx > 0xffff" +msgid "%B: %A: reloc overflow: %#x > 0xffff" msgstr "" #: cofflink.c:2738 #, c-format -msgid "%B: warning: %A: line number overflow: 0x%lx > 0xffff" +msgid "%B: warning: %A: line number overflow: %#x > 0xffff" msgstr "" #: coffswap.h:811 @@ -668,7 +674,7 @@ msgstr "" #: compress.c:255 #, c-format -msgid "error: %B(%A) is too large (%#lx bytes)" +msgid "error: %B(%A) is too large (%#Lx bytes)" msgstr "" #: cpu-arm.c:192 cpu-arm.c:204 @@ -681,92 +687,102 @@ msgstr "" msgid "warning: unable to update contents of %s section in %B" msgstr "" -#: dwarf2.c:532 +#: dwarf2.c:546 #, c-format msgid "Dwarf Error: Can't find %s section." msgstr "" -#: dwarf2.c:562 +#: dwarf2.c:576 #, c-format -msgid "Dwarf Error: Offset (%lu) greater than or equal to %s size (%lu)." +msgid "Dwarf Error: Offset (%llu) greater than or equal to %s size (%Lu)." msgstr "" -#: dwarf2.c:1028 +#: dwarf2.c:1093 msgid "Dwarf Error: Info pointer extends beyond end of attributes" msgstr "" -#: dwarf2.c:1185 +#: dwarf2.c:1265 #, c-format msgid "Dwarf Error: Invalid or unhandled FORM value: %#x." msgstr "" -#: dwarf2.c:1491 +#: dwarf2.c:1572 msgid "Dwarf Error: mangled line number section (bad file number)." msgstr "" -#: dwarf2.c:1779 +#: dwarf2.c:1946 #, c-format -msgid "Dwarf Error: Line info section is too small (%ld)" +msgid "Dwarf Error: Unknown format content type %Lu." msgstr "" -#: dwarf2.c:1809 +#: dwarf2.c:2050 #, c-format -msgid "Dwarf Error: Line info data is bigger (0x%lx) than the section (0x%lx)" +msgid "Dwarf Error: Line info section is too small (%Ld)" msgstr "" -#: dwarf2.c:1821 +#: dwarf2.c:2080 +#, c-format +msgid "Dwarf Error: Line info data is bigger (%#Lx) than the section (%#Lx)" +msgstr "" + +#: dwarf2.c:2092 #, c-format msgid "Dwarf Error: Unhandled .debug_line version %d." msgstr "" -#: dwarf2.c:1830 +#: dwarf2.c:2102 msgid "Dwarf Error: Ran out of room reading prologue" msgstr "" -#: dwarf2.c:1855 +#: dwarf2.c:2120 +#, c-format +msgid "Dwarf Error: Line info unsupported segment selector size %u." +msgstr "" + +#: dwarf2.c:2147 msgid "Dwarf Error: Invalid maximum operations per instruction." msgstr "" -#: dwarf2.c:1874 +#: dwarf2.c:2166 msgid "Dwarf Error: Ran out of room reading opcodes" msgstr "" -#: dwarf2.c:2069 +#: dwarf2.c:2351 msgid "Dwarf Error: mangled line number section." msgstr "" -#: dwarf2.c:2575 +#: dwarf2.c:2857 #, c-format -msgid "Dwarf Error: Unable to read alt ref %u." +msgid "Dwarf Error: Unable to read alt ref %llu." msgstr "" -#: dwarf2.c:2600 dwarf2.c:2750 dwarf2.c:3071 +#: dwarf2.c:2883 dwarf2.c:3033 dwarf2.c:3380 #, c-format msgid "Dwarf Error: Could not find abbrev number %u." msgstr "" -#: dwarf2.c:3023 +#: dwarf2.c:3299 #, c-format msgid "" -"Dwarf Error: found dwarf version '%u', this reader only handles version 2, 3 " -"and 4 information." +"Dwarf Error: found dwarf version '%u', this reader only handles version 2, " +"3, 4 and 5 information." msgstr "" -#: dwarf2.c:3034 +#: dwarf2.c:3343 #, c-format msgid "" "Dwarf Error: found address size '%u', this reader can not handle sizes " "greater than '%u'." msgstr "" -#: dwarf2.c:3137 +#: dwarf2.c:3446 msgid "" "Dwarf Error: DW_AT_comp_dir attribute encountered with a non-string form." msgstr "" #: ecoff.c:964 #, c-format -msgid "%B: warning: isymMax (%ld) is greater than ifdMax (%d)\n" +msgid "%B: warning: isymMax (%ld) is greater than ifdMax (%ld)" msgstr "" #: ecoff.c:1261 @@ -830,14 +846,18 @@ msgid "" " Type: %s" msgstr "" -#: elf-attrs.c:595 +#: elf-attrs.c:473 +msgid "%B: error: attribute section length too small: %ld" +msgstr "" + +#: elf-attrs.c:601 #, c-format msgid "" "error: %B: Object has vendor-specific contents that must be processed by the " "'%s' toolchain" msgstr "" -#: elf-attrs.c:605 +#: elf-attrs.c:611 #, c-format msgid "error: %B: Object tag '%d, %s' is incompatible with tag '%d, %s'" msgstr "" @@ -864,40 +884,40 @@ msgid "" "dropped.\n" msgstr "" -#: elf-eh-frame.c:1879 +#: elf-eh-frame.c:1870 #, c-format msgid "%B: %A not in order" msgstr "" -#: elf-eh-frame.c:1893 +#: elf-eh-frame.c:1884 #, c-format msgid "%B: %A invalid input section size" msgstr "" -#: elf-eh-frame.c:1901 +#: elf-eh-frame.c:1892 #, c-format msgid "%B: %A points past end of text section" msgstr "" -#: elf-eh-frame.c:2150 +#: elf-eh-frame.c:2141 msgid "%P: DW_EH_PE_datarel unspecified for this architecture.\n" msgstr "" -#: elf-eh-frame.c:2320 +#: elf-eh-frame.c:2311 #, c-format msgid "Invalid output section for .eh_frame_entry: %A" msgstr "" -#: elf-eh-frame.c:2343 +#: elf-eh-frame.c:2334 #, c-format msgid "Invalid contents in %A section" msgstr "" -#: elf-eh-frame.c:2499 +#: elf-eh-frame.c:2490 msgid "%P: .eh_frame_hdr entry overflow.\n" msgstr "" -#: elf-eh-frame.c:2502 +#: elf-eh-frame.c:2493 msgid "%P: .eh_frame_hdr refers to overlapping FDEs.\n" msgstr "" @@ -909,53 +929,52 @@ msgid "" "pie\n" msgstr "" -#: elf-m10200.c:425 elf-m10300.c:2149 elf32-avr.c:1502 elf32-bfin.c:3194 +#: elf-m10200.c:425 elf-m10300.c:2149 elf32-avr.c:1502 elf32-bfin.c:3193 #: 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-iq2000.c:693 elf32-lm32.c:1126 elf32-m32c.c:621 elf32-m32r.c:3045 +#: elf32-m68hc1x.c:1269 elf32-mep.c:524 elf32-metag.c:2000 #: 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 +#: elf32-tilepro.c:3657 elf32-v850.c:2287 elf32-visium.c:677 +#: elf32-xstormy16.c:927 elf64-mmix.c:1538 elfxx-tilegx.c:4044 +#: /work/sources/binutils/current/bfd/elfnn-riscv.c:2267 msgid "internal error: out of range error" msgstr "" -#: elf-m10200.c:429 elf-m10300.c:2153 elf32-avr.c:1506 elf32-bfin.c:3198 +#: elf-m10200.c:429 elf-m10300.c:2153 elf32-avr.c:1506 elf32-bfin.c:3197 #: 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-m32c.c:625 elf32-m32r.c:3049 elf32-m68hc1x.c:1273 elf32-mep.c:528 +#: elf32-metag.c:2004 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 +#: elf32-score7.c:2544 elf32-spu.c:5080 elf32-tilepro.c:3661 elf32-v850.c:2291 +#: elf32-visium.c:681 elf32-xstormy16.c:931 elf64-mmix.c:1542 +#: elfxx-mips.c:10258 elfxx-tilegx.c:4048 +#: /work/sources/binutils/current/bfd/elfnn-riscv.c:2271 msgid "internal error: unsupported relocation error" msgstr "" #: 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-d10v.c:521 elf32-h8300.c:530 elf32-lm32.c:1134 elf32-m32r.c:3053 #: 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 "" -#: elf-m10200.c:437 elf-m10300.c:2170 elf32-avr.c:1514 elf32-bfin.c:3206 +#: elf-m10200.c:437 elf-m10300.c:2170 elf32-avr.c:1514 elf32-bfin.c:3205 #: 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 +#: elf32-iq2000.c:705 elf32-lm32.c:1138 elf32-m32c.c:633 elf32-m32r.c:3057 +#: elf32-m68hc1x.c:1281 elf32-mep.c:536 elf32-metag.c:2012 +#: 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:3669 elf32-v850.c:2311 elf32-visium.c:689 +#: elf32-xstormy16.c:939 elf64-mmix.c:1550 elfxx-tilegx.c:4056 +#: /work/sources/binutils/current/bfd/elfnn-riscv.c:2279 msgid "internal error: unknown error" msgstr "" @@ -974,14 +993,14 @@ msgstr "" msgid "%B: %s' accessed both as normal and thread local symbol" msgstr "" -#: 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 +#: elf-m10300.c:2097 elf32-arm.c:12530 elf32-i386.c:5344 elf32-m32r.c:2540 +#: elf32-m68k.c:4083 elf32-s390.c:3372 elf32-sh.c:4127 elf32-tilepro.c:3561 +#: elf32-xtensa.c:3074 elf64-s390.c:3296 elf64-sh64.c:1636 elf64-x86-64.c:5712 +#: elfxx-sparc.c:4086 elfxx-tilegx.c:3968 +#: /work/sources/binutils/current/bfd/elfnn-aarch64.c:6431 +#: /work/sources/binutils/current/bfd/elfnn-riscv.c:2236 #, c-format -msgid "%B(%A+0x%lx): unresolvable %s relocation against symbol `%s'" +msgid "%B(%A+%#Lx): unresolvable %s relocation against symbol `%s'" msgstr "" #: elf-m10300.c:2158 @@ -1033,10 +1052,10 @@ msgstr "" #: elf.c:357 #, c-format -msgid "%B: invalid string offset %u >= %lu for section `%s'" +msgid "%B: invalid string offset %u >= %Lu for section `%s'" msgstr "" -#: elf.c:496 +#: elf.c:496 /work/sources/binutils/current/bfd/elfnn-aarch64.c:7650 #, c-format msgid "%B symbol number %lu references nonexistent SHT_SYMTAB_SHNDX section" msgstr "" @@ -1059,181 +1078,187 @@ msgstr "" msgid "%B: no valid group sections found" msgstr "" -#: elf.c:804 +#. See PR 21957 for a reproducer. +#: elf.c:755 #, c-format -msgid "%B: no group info for section %A" +msgid "%B: group section '%A' has no contents" msgstr "" -#: elf.c:835 elf.c:3819 elflink.c:11155 +#: elf.c:814 +#, c-format +msgid "%B: no group info for section '%A'" +msgstr "" + +#: elf.c:845 elf.c:3836 elflink.c:11160 #, c-format msgid "%B: warning: sh_link not set for section `%A'" msgstr "" -#: elf.c:855 +#: elf.c:865 #, c-format msgid "%B: sh_link [%d] in section `%A' is incorrect" msgstr "" -#: elf.c:868 +#: elf.c:878 #, c-format msgid "%B: SHT_GROUP section [index %d] has no SHF_GROUP sections" msgstr "" -#: elf.c:889 +#: elf.c:899 #, c-format msgid "%B: section group entry number %u is corrupt" msgstr "" -#: elf.c:914 +#: elf.c:929 #, c-format msgid "%B: unknown type [%#x] section `%s' in group [%A]" msgstr "" -#: elf.c:1373 +#: elf.c:1390 #, c-format msgid "%B: Invalid sh_link field (%d) in section number %d" msgstr "" -#: elf.c:1389 +#: elf.c:1406 #, c-format msgid "%B: Failed to find link section for section %d" msgstr "" -#: elf.c:1416 +#: elf.c:1433 #, c-format msgid "%B: Failed to find info section for section %d" msgstr "" -#: elf.c:1588 +#: elf.c:1605 #, c-format msgid "" "\n" "Program Header:\n" msgstr "" -#: elf.c:1630 +#: elf.c:1647 #, c-format msgid "" "\n" "Dynamic Section:\n" msgstr "" -#: elf.c:1771 +#: elf.c:1788 #, c-format msgid "" "\n" "Version definitions:\n" msgstr "" -#: elf.c:1796 +#: elf.c:1813 #, c-format msgid "" "\n" "Version References:\n" msgstr "" -#: elf.c:1801 +#: elf.c:1818 #, c-format msgid " required from %s:\n" msgstr "" -#: elf.c:1999 +#: elf.c:2016 msgid "%B: warning: loop in section dependencies detected" msgstr "" -#: elf.c:2107 +#: elf.c:2124 #, c-format msgid "" "%B: warning: multiple symbol tables detected - ignoring the table in section " "%u" msgstr "" -#: elf.c:2191 +#: elf.c:2208 #, c-format msgid "" "%B: warning: multiple dynamic symbol tables detected - ignoring the table in " "section %u" msgstr "" -#: elf.c:2304 +#: elf.c:2321 #, c-format msgid "%B: invalid link %u for reloc section %s (index %u)" msgstr "" -#: elf.c:2463 elf.c:2478 elf.c:2489 elf.c:2502 +#: elf.c:2480 elf.c:2495 elf.c:2506 elf.c:2519 #, c-format msgid "%B: unknown type [%#x] section `%s'" msgstr "" -#: elf.c:3206 +#: elf.c:3223 #, c-format msgid "%B: error: Alignment power %d of section `%A' is too big" msgstr "" -#: elf.c:3236 +#: elf.c:3253 #, c-format msgid "warning: section `%A' type changed to PROGBITS" msgstr "" -#: elf.c:3687 +#: elf.c:3704 #, c-format msgid "%B: too many sections: %u" msgstr "" -#: elf.c:3772 +#: elf.c:3789 #, c-format msgid "%B: sh_link of section `%A' points to discarded section `%A' of `%B'" msgstr "" -#: elf.c:3797 +#: elf.c:3814 #, c-format msgid "%B: sh_link of section `%A' points to removed section `%A' of `%B'" msgstr "" -#: elf.c:4349 +#: elf.c:4366 #, c-format msgid "%B: GNU_MBIN section `%A' has invalid sh_info field: %d" msgstr "" -#: elf.c:4891 +#: elf.c:4908 msgid "%B: TLS sections are not adjacent:" msgstr "" -#: elf.c:4898 +#: elf.c:4915 #, c-format msgid "\t TLS: %A" msgstr "" -#: elf.c:4902 +#: elf.c:4919 #, c-format msgid "\tnon-TLS: %A" msgstr "" -#: elf.c:5398 +#: elf.c:5415 msgid "" "%B: The first section in the PT_DYNAMIC segment is not the .dynamic section" msgstr "" -#: elf.c:5426 +#: elf.c:5443 msgid "%B: Not enough room for program headers, try linking with -N" msgstr "" -#: elf.c:5514 +#: elf.c:5531 #, c-format msgid "%B: section %A lma %#Lx adjusted to %#Lx" msgstr "" -#: elf.c:5651 +#: elf.c:5668 #, c-format msgid "%B: section `%A' can't be allocated in segment %d" msgstr "" -#: elf.c:5699 +#: elf.c:5716 #, c-format msgid "%B: warning: allocated section `%s' not in segment" msgstr "" -#: elf.c:5897 +#: elf.c:5914 msgid "" "%B: error: non-load segment %d includes file header and/or program header" msgstr "" @@ -1241,49 +1266,49 @@ msgstr "" #. 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 +#: elf.c:6091 msgid "%B: error: PHDR segment not covered by LOAD segment" msgstr "" -#: elf.c:6418 +#: elf.c:6435 #, c-format msgid "%B: symbol `%s' required but not present" msgstr "" -#: elf.c:6761 +#: elf.c:6778 #, c-format msgid "" "%B: warning: Empty loadable segment detected at vaddr=%#Lx, is this " "intentional?" msgstr "" -#: elf.c:7375 +#: elf.c:7392 #, c-format msgid "%B: warning: segment alignment of %#Lx is too large" msgstr "" -#: elf.c:7856 +#: elf.c:7873 #, c-format msgid "" "Unable to find equivalent output section for symbol '%s' from section '%s'" msgstr "" -#: elf.c:8188 +#: elf.c:8205 msgid "%B: .gnu.version_r invalid entry" msgstr "" -#: elf.c:8315 +#: elf.c:8332 msgid "%B: .gnu.version_d invalid entry" msgstr "" -#: elf.c:8867 +#: elf.c:8884 #, c-format msgid "%B: unsupported relocation type %s" msgstr "" #: 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 +#: elf64-ppc.c:6087 #, c-format msgid "private flags = 0x%lx:" msgstr "" @@ -1322,9 +1347,9 @@ msgid "ERROR: Attempting to link %B with a binary %B of different architecture" msgstr "" #: 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 +#: elf32-m68hc1x.c:1388 elf32-ppc.c:4909 elf64-sparc.c:727 elfxx-mips.c:15127 #, c-format -msgid "%B: uses different e_flags (0x%lx) fields than previous modules (0x%lx)" +msgid "%B: uses different e_flags (%#x) fields than previous modules (%#x)" msgstr "" #: elf32-arc.c:980 @@ -1340,60 +1365,60 @@ msgstr "" #: 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)" +"%B(%A+%#Lx): CMEM relocation to `%s' is invalid, 16 MSB should be %#x (value " +"is %#Lx)" msgstr "" #: 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)" +"%B(%A+%#Lx): CMEM relocation to `%s+%#Lx' is invalid, 16 MSB should be %#x " +"(value is %#Lx)" msgstr "" -#: elf32-arc.c:1835 +#: elf32-arc.c:1836 msgid "GOT and PLT relocations cannot be fixed with a non dynamic linker." msgstr "" -#: elf32-arc.c:1859 elf32-rl78.c:1094 elf32-rx.c:1448 +#: elf32-arc.c:1860 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 "" -#: elf32-arc.c:1864 elf32-rl78.c:1099 elf32-rx.c:1453 +#: elf32-arc.c:1865 elf32-rl78.c:1099 elf32-rx.c:1453 #, c-format msgid "%B(%A): internal error: out of range error" msgstr "" -#: elf32-arc.c:1869 elf32-rl78.c:1104 elf32-rx.c:1458 +#: elf32-arc.c:1870 elf32-rl78.c:1104 elf32-rx.c:1458 #, c-format msgid "%B(%A): internal error: unsupported relocation error" msgstr "" -#: elf32-arc.c:1874 elf32-rl78.c:1109 elf32-rx.c:1463 +#: elf32-arc.c:1875 elf32-rl78.c:1109 elf32-rx.c:1463 #, c-format msgid "%B(%A): internal error: dangerous relocation" msgstr "" -#: elf32-arc.c:1879 elf32-rl78.c:1114 elf32-rx.c:1468 +#: elf32-arc.c:1880 elf32-rl78.c:1114 elf32-rx.c:1468 #, c-format msgid "%B(%A): internal error: unknown error" msgstr "" -#: 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 +#: elf32-arc.c:1968 elf32-arm.c:14712 elf32-metag.c:2271 elfxx-mips.c:8883 +#: /work/sources/binutils/current/bfd/elfnn-aarch64.c:7218 +#: /work/sources/binutils/current/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 "" -#: elf32-arc.c:2859 +#: elf32-arc.c:2860 msgid "%B: Unknown mandatory ARC object attribute %d." msgstr "" -#: elf32-arc.c:2867 +#: elf32-arc.c:2868 msgid "Warning: %B: Unknown ARC object attribute %d." msgstr "" @@ -1423,7 +1448,7 @@ msgstr "" #: 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 +#: /work/sources/binutils/current/bfd/elfnn-aarch64.c:2852 #, c-format msgid "%B: cannot create stub entry %s" msgstr "" @@ -1543,8 +1568,8 @@ msgstr "" #: 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" +"%B(%A+%#x): 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 "" @@ -1561,165 +1586,165 @@ msgstr "" #: elf32-arm.c:9723 #, c-format -msgid "%B(%A+0x%lx): unexpected Thumb instruction '0x%x' in TLS trampoline" +msgid "%B(%A+%#Lx): unexpected Thumb instruction '%#lx' in TLS trampoline" msgstr "" #: elf32-arm.c:9763 #, c-format -msgid "%B(%A+0x%lx): unexpected ARM instruction '0x%x' in TLS trampoline" +msgid "%B(%A+%#Lx): unexpected ARM instruction '%#lx' in TLS trampoline" msgstr "" -#: elf32-arm.c:10097 +#: elf32-arm.c:10098 msgid "shared object" msgstr "" -#: elf32-arm.c:10100 +#: elf32-arm.c:10101 msgid "PIE executable" msgstr "" -#: elf32-arm.c:10103 +#: elf32-arm.c:10104 msgid "" "%B: relocation %s against external or undefined symbol `%s' can not be used " "when making a %s; recompile with -fPIC" msgstr "" -#: elf32-arm.c:10234 -msgid "\\%B: Warning: Arm BLX instruction targets Arm function '%s'." +#: elf32-arm.c:10235 +msgid "%B: Warning: Arm BLX instruction targets Arm function '%s'." msgstr "" -#: elf32-arm.c:10660 +#: elf32-arm.c:10661 msgid "%B: Warning: Thumb BLX instruction targets thumb function '%s'." msgstr "" -#: elf32-arm.c:11527 +#: elf32-arm.c:11528 #, c-format msgid "" -"%B(%A+0x%lx): unexpected Thumb instruction '0x%x' referenced by TLS_GOTDESC" +"%B(%A+%#Lx): unexpected Thumb instruction '%#lx' referenced by TLS_GOTDESC" msgstr "" #: elf32-arm.c:11551 #, c-format msgid "" -"%B(%A+0x%lx): unexpected ARM instruction '0x%x' referenced by TLS_GOTDESC" +"%B(%A+%#Lx): unexpected ARM instruction '%#lx' referenced by TLS_GOTDESC" msgstr "" -#: elf32-arm.c:11581 +#: elf32-arm.c:11580 elf32-m68k.c:3890 elf32-metag.c:1931 elf32-nios2.c:4372 #, c-format -msgid "%B(%A+0x%lx): R_ARM_TLS_LE32 relocation not permitted in shared object" +msgid "%B(%A+%#Lx): %s relocation not permitted in shared object" msgstr "" -#: elf32-arm.c:11795 +#: elf32-arm.c:11793 #, c-format msgid "" -"%B(%A+0x%lx): Only ADD or SUB instructions are allowed for ALU group " +"%B(%A+%#Lx): Only ADD or SUB instructions are allowed for ALU group " "relocations" msgstr "" -#: elf32-arm.c:11836 elf32-arm.c:11927 elf32-arm.c:12013 elf32-arm.c:12101 +#: elf32-arm.c:11833 elf32-arm.c:11923 elf32-arm.c:12009 elf32-arm.c:12097 #, c-format -msgid "%B(%A+0x%lx): Overflow whilst splitting 0x%lx for group relocation %s" +msgid "%B(%A+%#Lx): Overflow whilst splitting %#Lx for group relocation %s" msgstr "" -#: elf32-arm.c:12365 elf32-sh.c:4009 elf64-sh64.c:1539 +#: elf32-arm.c:12363 elf32-sh.c:4009 elf64-sh64.c:1539 #, c-format -msgid "%B(%A+0x%lx): %s relocation against SEC_MERGE section" +msgid "%B(%A+%#Lx): %s relocation against SEC_MERGE section" msgstr "" -#: elf32-arm.c:12477 elf32-m68k.c:4120 elf32-xtensa.c:2816 -#: /Users/gingold/Repositories/fsf/binutils-gdb.git/bfd/elfnn-aarch64.c:6165 +#: elf32-arm.c:12475 elf32-m68k.c:4119 elf32-xtensa.c:2816 +#: /work/sources/binutils/current/bfd/elfnn-aarch64.c:6159 #, c-format -msgid "%B(%A+0x%lx): %s used with TLS symbol %s" +msgid "%B(%A+%#Lx): %s used with TLS symbol %s" msgstr "" -#: elf32-arm.c:12479 elf32-m68k.c:4122 elf32-xtensa.c:2818 -#: /Users/gingold/Repositories/fsf/binutils-gdb.git/bfd/elfnn-aarch64.c:6167 +#: elf32-arm.c:12477 elf32-m68k.c:4121 elf32-xtensa.c:2818 +#: /work/sources/binutils/current/bfd/elfnn-aarch64.c:6161 #, c-format -msgid "%B(%A+0x%lx): %s used with non-TLS symbol %s" +msgid "%B(%A+%#Lx): %s used with non-TLS symbol %s" msgstr "" -#: elf32-arm.c:12561 elf32-tic6x.c:2739 -#: /Users/gingold/Repositories/fsf/binutils-gdb.git/bfd/elfnn-aarch64.c:6500 +#: elf32-arm.c:12559 elf32-tic6x.c:2739 +#: /work/sources/binutils/current/bfd/elfnn-aarch64.c:6494 msgid "out of range" msgstr "" -#: 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 +#: elf32-arm.c:12563 elf32-nios2.c:4505 elf32-pru.c:821 elf32-tic6x.c:2743 +#: /work/sources/binutils/current/bfd/elfnn-aarch64.c:6498 msgid "unsupported relocation" msgstr "" -#: 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 +#: elf32-arm.c:12571 elf32-nios2.c:4515 elf32-pru.c:831 elf32-tic6x.c:2751 +#: /work/sources/binutils/current/bfd/elfnn-aarch64.c:6506 msgid "unknown error" msgstr "" -#: elf32-arm.c:13153 +#: elf32-arm.c:13151 msgid "%B: Unknown mandatory EABI object attribute %d" msgstr "" -#: elf32-arm.c:13161 +#: elf32-arm.c:13159 msgid "Warning: %B: Unknown EABI object attribute %d" msgstr "" -#: elf32-arm.c:13428 +#: elf32-arm.c:13426 msgid "error: %B: Unknown CPU architecture" msgstr "" -#: elf32-arm.c:13466 elf32-nios2.c:2965 +#: elf32-arm.c:13464 elf32-nios2.c:2965 #, c-format msgid "error: %B: Conflicting CPU architectures %d/%d" msgstr "" -#: elf32-arm.c:13563 +#: elf32-arm.c:13561 msgid "" "Error: %B has both the current and legacy Tag_MPextension_use attributes" msgstr "" -#: elf32-arm.c:13592 +#: elf32-arm.c:13590 msgid "error: %B uses VFP register arguments, %B does not" msgstr "" -#: elf32-arm.c:13750 +#: elf32-arm.c:13748 msgid "error: %B: unable to merge virtualization attributes with %B" msgstr "" -#: elf32-arm.c:13776 +#: elf32-arm.c:13774 msgid "error: %B: Conflicting architecture profiles %c/%c" msgstr "" -#: elf32-arm.c:13915 +#: elf32-arm.c:13913 msgid "Warning: %B: Conflicting platform configuration" msgstr "" -#: elf32-arm.c:13924 +#: elf32-arm.c:13922 msgid "error: %B: Conflicting use of R9" msgstr "" -#: elf32-arm.c:13936 +#: elf32-arm.c:13934 msgid "error: %B: SB relative addressing conflicts with use of R9" msgstr "" -#: elf32-arm.c:13949 +#: elf32-arm.c:13947 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 "" -#: elf32-arm.c:13980 +#: elf32-arm.c:13978 msgid "" "warning: %B uses %s enums yet the output is to use %s enums; use of enum " "values across objects may fail" msgstr "" -#: elf32-arm.c:13992 +#: elf32-arm.c:13990 msgid "error: %B uses iWMMXt register arguments, %B does not" msgstr "" -#: elf32-arm.c:14009 +#: elf32-arm.c:14007 msgid "error: fp16 format mismatch between %B and %B" msgstr "" -#: elf32-arm.c:14045 -msgid "%B has has both the current and legacy Tag_MPextension_use attributes" +#: elf32-arm.c:14043 +msgid "%B has both the current and legacy Tag_MPextension_use attributes" msgstr "" #. Ignore init flag - it may not be set, despite the flags field @@ -1727,207 +1752,206 @@ msgstr "" #. 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:14132 elf32-bfin.c:4919 elf32-cris.c:4089 elf32-m68hc1x.c:1413 +#: elf32-arm.c:14130 elf32-bfin.c:4918 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 +#: elf32-xgate.c:669 elfxx-mips.c:15801 +#: /work/sources/binutils/current/bfd/elfnn-aarch64.c:6660 #, c-format msgid "private flags = %lx:" msgstr "" -#: elf32-arm.c:14141 +#: elf32-arm.c:14139 #, c-format msgid " [interworking enabled]" msgstr "" -#: elf32-arm.c:14149 +#: elf32-arm.c:14147 #, c-format msgid " [VFP float format]" msgstr "" -#: elf32-arm.c:14151 +#: elf32-arm.c:14149 #, c-format msgid " [Maverick float format]" msgstr "" -#: elf32-arm.c:14153 +#: elf32-arm.c:14151 #, c-format msgid " [FPA float format]" msgstr "" -#: elf32-arm.c:14162 +#: elf32-arm.c:14160 #, c-format msgid " [new ABI]" msgstr "" -#: elf32-arm.c:14165 +#: elf32-arm.c:14163 #, c-format msgid " [old ABI]" msgstr "" -#: elf32-arm.c:14168 +#: elf32-arm.c:14166 #, c-format msgid " [software FP]" msgstr "" -#: elf32-arm.c:14177 +#: elf32-arm.c:14175 #, c-format msgid " [Version1 EABI]" msgstr "" -#: elf32-arm.c:14180 elf32-arm.c:14191 +#: elf32-arm.c:14178 elf32-arm.c:14189 #, c-format msgid " [sorted symbol table]" msgstr "" -#: elf32-arm.c:14182 elf32-arm.c:14193 +#: elf32-arm.c:14180 elf32-arm.c:14191 #, c-format msgid " [unsorted symbol table]" msgstr "" -#: elf32-arm.c:14188 +#: elf32-arm.c:14186 #, c-format msgid " [Version2 EABI]" msgstr "" -#: elf32-arm.c:14196 +#: elf32-arm.c:14194 #, c-format msgid " [dynamic symbols use segment index]" msgstr "" -#: elf32-arm.c:14199 +#: elf32-arm.c:14197 #, c-format msgid " [mapping symbols precede others]" msgstr "" -#: elf32-arm.c:14206 +#: elf32-arm.c:14204 #, c-format msgid " [Version3 EABI]" msgstr "" -#: elf32-arm.c:14210 +#: elf32-arm.c:14208 #, c-format msgid " [Version4 EABI]" msgstr "" -#: elf32-arm.c:14214 +#: elf32-arm.c:14212 #, c-format msgid " [Version5 EABI]" msgstr "" -#: elf32-arm.c:14217 +#: elf32-arm.c:14215 #, c-format msgid " [soft-float ABI]" msgstr "" -#: elf32-arm.c:14220 +#: elf32-arm.c:14218 #, c-format msgid " [hard-float ABI]" msgstr "" -#: elf32-arm.c:14226 +#: elf32-arm.c:14224 #, c-format msgid " [BE8]" msgstr "" -#: elf32-arm.c:14229 +#: elf32-arm.c:14227 #, c-format msgid " [LE8]" msgstr "" -#: elf32-arm.c:14235 +#: elf32-arm.c:14233 #, c-format msgid " <EABI version unrecognised>" msgstr "" -#: elf32-arm.c:14242 +#: elf32-arm.c:14240 #, c-format msgid " [relocatable executable]" msgstr "" -#: elf32-arm.c:14247 -#: /Users/gingold/Repositories/fsf/binutils-gdb.git/bfd/elfnn-aarch64.c:6669 +#: elf32-arm.c:14245 /work/sources/binutils/current/bfd/elfnn-aarch64.c:6663 #, c-format msgid "<Unrecognised flag bits set>" msgstr "" -#: elf32-arm.c:14557 elf32-i386.c:2053 elf32-s390.c:956 elf32-tic6x.c:2814 +#: elf32-arm.c:14555 elf32-i386.c:2031 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 +#: elf64-x86-64.c:2421 elfxx-sparc.c:1440 elfxx-tilegx.c:1708 +#: /work/sources/binutils/current/bfd/elfnn-aarch64.c:7109 +#: /work/sources/binutils/current/bfd/elfnn-riscv.c:526 #, c-format msgid "%B: bad symbol index: %d" msgstr "" -#: elf32-arm.c:16055 +#: elf32-arm.c:16053 msgid "Errors encountered processing file %B" msgstr "" -#: elf32-arm.c:16493 elflink.c:12297 elflink.c:12344 +#: elf32-arm.c:16491 elflink.c:12302 elflink.c:12349 #, c-format msgid "could not find section %s" msgstr "" -#: elf32-arm.c:17669 +#: elf32-arm.c:17667 msgid "%B: error: Cortex-A8 erratum stub is allocated in unsafe location" msgstr "" #. There's not much we can do apart from complain if this #. happens. -#: elf32-arm.c:17696 +#: elf32-arm.c:17694 msgid "%B: error: Cortex-A8 erratum stub out of range (input file too large)" msgstr "" -#: elf32-arm.c:18523 elf32-arm.c:18545 +#: elf32-arm.c:18521 elf32-arm.c:18543 msgid "%B: error: VFP11 veneer out of range" msgstr "" -#: elf32-arm.c:18596 +#: elf32-arm.c:18594 msgid "" -"%B(%#x): error: Cannot create STM32L4XX veneer. Jump out of range by %ld " +"%B(%#Lx): error: Cannot create STM32L4XX veneer. Jump out of range by %Ld " "bytes. Cannot encode branch instruction. " msgstr "" -#: elf32-arm.c:18634 +#: elf32-arm.c:18632 msgid "%B: error: Cannot create STM32L4XX veneer." msgstr "" -#: elf32-arm.c:19655 +#: elf32-arm.c:19653 msgid "error: %B is already in final BE8 format" msgstr "" -#: elf32-arm.c:19731 +#: elf32-arm.c:19729 msgid "" "error: Source object %B has EABI version %d, but target %B has EABI version " "%d" msgstr "" -#: elf32-arm.c:19746 +#: elf32-arm.c:19744 msgid "error: %B is compiled for APCS-%d, whereas target %B uses APCS-%d" msgstr "" -#: elf32-arm.c:19770 +#: elf32-arm.c:19768 msgid "error: %B uses VFP instructions, whereas %B does not" msgstr "" -#: elf32-arm.c:19774 +#: elf32-arm.c:19772 msgid "error: %B uses FPA instructions, whereas %B does not" msgstr "" -#: elf32-arm.c:19784 +#: elf32-arm.c:19782 msgid "error: %B uses Maverick instructions, whereas %B does not" msgstr "" -#: elf32-arm.c:19788 +#: elf32-arm.c:19786 msgid "error: %B does not use Maverick instructions, whereas %B does" msgstr "" -#: elf32-arm.c:19807 +#: elf32-arm.c:19805 msgid "error: %B uses software FP, whereas %B uses hardware FP" msgstr "" -#: elf32-arm.c:19811 +#: elf32-arm.c:19809 msgid "error: %B uses hardware FP, whereas %B uses software FP" msgstr "" @@ -1936,18 +1960,17 @@ msgstr "" msgid "%B: invalid AVR reloc number: %d" msgstr "" -#: elf32-avr.c:1510 elf32-bfin.c:3202 elf32-cris.c:2033 elf32-epiphany.c:574 +#: elf32-avr.c:1510 elf32-bfin.c:3201 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 +#: elf32-metag.c:2008 elf32-moxie.c:293 elf32-msp430.c:1365 elf32-mt.c:404 +#: elf32-or1k.c:1266 elf32-tilepro.c:3665 elf32-v850.c:2295 elf32-visium.c:685 +#: elf32-xstormy16.c:935 elf64-mmix.c:1546 elfxx-tilegx.c:4052 +#: /work/sources/binutils/current/bfd/elfnn-riscv.c:2275 msgid "internal error: dangerous relocation" msgstr "" -#: elf32-avr.c:3319 -#: /Users/gingold/Repositories/fsf/binutils-gdb.git/bfd/elfnn-aarch64.c:2880 +#: elf32-avr.c:3319 /work/sources/binutils/current/bfd/elfnn-aarch64.c:2880 #, c-format msgid "cannot create stub entry %s" msgstr "" @@ -1958,67 +1981,67 @@ msgstr "" #: elf32-bfin.c:1581 #, c-format -msgid "%B(%A+0x%lx): unresolvable relocation against symbol `%s'" +msgid "%B(%A+%#Lx): unresolvable relocation against symbol `%s'" msgstr "" -#: 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 +#: elf32-bfin.c:1612 elf32-i386.c:5384 elf32-m68k.c:4159 elf32-s390.c:3429 +#: elf64-s390.c:3353 elf64-x86-64.c:5752 #, c-format -msgid "%B(%A+0x%lx): reloc against `%s': error %d" +msgid "%B(%A+%#Lx): reloc against `%s': error %d" msgstr "" -#: elf32-bfin.c:2706 +#: elf32-bfin.c:2705 #, c-format -msgid "%B: relocation at `%A+0x%x' references symbol `%s' with nonzero addend" +msgid "%B: relocation at `%A+%#Lx' references symbol `%s' with nonzero addend" msgstr "" -#: elf32-bfin.c:2722 +#: elf32-bfin.c:2721 msgid "relocation references symbol not defined in the module" msgstr "" -#: elf32-bfin.c:2819 +#: elf32-bfin.c:2818 msgid "R_BFIN_FUNCDESC references dynamic symbol with nonzero addend" msgstr "" -#: elf32-bfin.c:2860 elf32-bfin.c:2983 +#: elf32-bfin.c:2859 elf32-bfin.c:2982 msgid "cannot emit fixups in read-only section" msgstr "" -#: elf32-bfin.c:2891 elf32-bfin.c:3021 elf32-lm32.c:1064 elf32-sh.c:4930 +#: elf32-bfin.c:2890 elf32-bfin.c:3020 elf32-lm32.c:1064 elf32-sh.c:4930 msgid "cannot emit dynamic relocations in read-only section" msgstr "" -#: elf32-bfin.c:2941 +#: elf32-bfin.c:2940 msgid "R_BFIN_FUNCDESC_VALUE references dynamic symbol with nonzero addend" msgstr "" -#: elf32-bfin.c:3106 +#: elf32-bfin.c:3105 msgid "relocations between different segments are not supported" msgstr "" -#: elf32-bfin.c:3107 +#: elf32-bfin.c:3106 msgid "warning: relocation references a different segment" msgstr "" -#: elf32-bfin.c:4877 +#: elf32-bfin.c:4876 #, c-format -msgid "%B: unsupported relocation type %i" +msgid "%B: unsupported relocation type %d" msgstr "" -#: elf32-bfin.c:4966 elf32-frv.c:6599 +#: elf32-bfin.c:4965 elf32-frv.c:6599 msgid "%B: cannot link non-fdpic object file into fdpic executable" msgstr "" -#: elf32-bfin.c:4970 elf32-frv.c:6603 +#: elf32-bfin.c:4969 elf32-frv.c:6603 msgid "%B: cannot link fdpic object file into non-fdpic executable" msgstr "" -#: elf32-bfin.c:5120 +#: elf32-bfin.c:5119 #, c-format msgid "*** check this relocation %s" msgstr "" -#: elf32-bfin.c:5236 +#: elf32-bfin.c:5235 msgid "" "the bfin target does not currently support the generation of copy relocations" msgstr "" @@ -2066,13 +2089,13 @@ msgstr "" #: elf32-cris.c:1304 elf32-tic6x.c:2635 #, c-format msgid "" -"%B, section %A: relocation %s with non-zero addend %d against local symbol" +"%B, section %A: relocation %s with non-zero addend %Ld against local symbol" msgstr "" #: 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'" +"%B, section %A: relocation %s with non-zero addend %Ld against symbol `%s'" msgstr "" #: elf32-cris.c:1340 @@ -2121,7 +2144,7 @@ msgstr "" #, c-format msgid "" "%B, section %A:\n" -" v10/v32 compatible object %s must not contain a PIC relocation" +" v10/v32 compatible object must not contain a PIC relocation" msgstr "" #: elf32-cris.c:3287 @@ -2338,8 +2361,7 @@ msgstr "" #: elf32-frv.c:6577 #, c-format msgid "" -"%B: uses different unknown e_flags (0x%lx) fields than previous modules (0x" -"%lx)" +"%B: uses different unknown e_flags (%#x) fields than previous modules (%#x)" msgstr "" #: elf32-gen.c:69 elf64-gen.c:69 @@ -2347,9 +2369,9 @@ msgstr "" msgid "%B: Relocations in generic ELF (EM: %d)" msgstr "" -#: elf32-hppa.c:839 elf32-hppa.c:3599 +#: elf32-hppa.c:839 elf32-hppa.c:3597 #, c-format -msgid "%B(%A+0x%lx): cannot reach %s, recompile with -ffunction-sections" +msgid "%B(%A+%#Lx): cannot reach %s, recompile with -ffunction-sections" msgstr "" #: elf32-hppa.c:1270 @@ -2364,18 +2386,18 @@ msgstr "" msgid "%B: duplicate export stub %s" msgstr "" -#: elf32-hppa.c:3433 +#: elf32-hppa.c:3431 #, c-format msgid "" -"%B(%A+0x%lx): %s fixup for insn 0x%x is not supported in a non-shared link" +"%B(%A+%#Lx): %s fixup for insn %#x is not supported in a non-shared link" msgstr "" -#: elf32-hppa.c:4290 +#: elf32-hppa.c:4288 #, c-format -msgid "%B(%A+0x%lx): cannot handle %s for %s" +msgid "%B(%A+%#Lx): cannot handle %s for %s" msgstr "" -#: elf32-hppa.c:4588 +#: elf32-hppa.c:4586 msgid ".got section not immediately after .plt section" msgstr "" @@ -2401,162 +2423,153 @@ msgstr "" msgid "%B: invalid relocation type %d" msgstr "" -#: elf32-i386.c:1711 elf64-x86-64.c:1888 +#: elf32-i386.c:1689 elf64-x86-64.c:1866 #, c-format msgid "" -"%B: TLS transition from %s to %s against `%s' at 0x%lx in section `%A' failed" +"%B: TLS transition from %s to %s against `%s' at %#Lx in section `%A' failed" msgstr "" -#: elf32-i386.c:1799 +#: elf32-i386.c:1777 #, 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 "" -#: 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 +#: elf32-i386.c:2215 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 +#: /work/sources/binutils/current/bfd/elfnn-riscv.c:440 #, c-format msgid "%B: `%s' accessed both as normal and thread local symbol" msgstr "" -#: elf32-i386.c:2314 +#: elf32-i386.c:2292 #, c-format msgid "%B: unsupported non-PIC call to IFUNC `%s'" msgstr "" -#: elf32-i386.c:3189 elf64-x86-64.c:3589 +#: elf32-i386.c:3167 elf64-x86-64.c:3566 #, c-format msgid "%P: %B: warning: relocation against `%s' in readonly section `%A'\n" msgstr "" -#: elf32-i386.c:3402 elf64-x86-64.c:3798 +#: elf32-i386.c:3380 elf64-x86-64.c:3775 #, c-format msgid "%P: %B: warning: relocation in readonly section `%A'\n" msgstr "" -#: elf32-i386.c:3705 elf64-x86-64.c:4114 +#: elf32-i386.c:3683 elf64-x86-64.c:4091 msgid "" "%P%X: read-only segment has dynamic IFUNC relocations; recompile with -fPIC\n" msgstr "" -#: 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 "" - -#: elf32-i386.c:4240 elf64-x86-64.c:4550 +#: elf32-i386.c:4212 elf64-x86-64.c:4520 #, c-format msgid "%B: relocation %s against STT_GNU_IFUNC symbol `%s' isn't supported" msgstr "" -#: 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 +#: elf32-i386.c:4247 elf32-i386.c:5614 elf32-i386.c:5753 elf64-x86-64.c:4579 +#: elf64-x86-64.c:5941 elf64-x86-64.c:6095 msgid "Local IFUNC function `%s' in %B\n" msgstr "" -#: elf32-i386.c:4508 +#: elf32-i386.c:4480 #, c-format msgid "" "%B: direct GOT relocation %s against `%s' without base register can not be " "used when making a shared object" msgstr "" -#: elf32-i386.c:4543 elf64-x86-64.c:4816 +#: elf32-i386.c:4515 elf64-x86-64.c:4786 msgid "hidden symbol" msgstr "" -#: elf32-i386.c:4546 elf64-x86-64.c:4819 +#: elf32-i386.c:4518 elf64-x86-64.c:4789 msgid "internal symbol" msgstr "" -#: elf32-i386.c:4549 elf64-x86-64.c:4822 +#: elf32-i386.c:4521 elf64-x86-64.c:4792 msgid "protected symbol" msgstr "" -#: elf32-i386.c:4552 elf64-x86-64.c:4825 +#: elf32-i386.c:4524 elf64-x86-64.c:4795 msgid "symbol" msgstr "" -#: elf32-i386.c:4558 +#: elf32-i386.c:4530 #, c-format msgid "" "%B: relocation R_386_GOTOFF against undefined %s `%s' can not be used when " "making a shared object" msgstr "" -#: elf32-i386.c:4571 +#: elf32-i386.c:4543 #, c-format msgid "" "%B: relocation R_386_GOTOFF against protected %s `%s' can not be used when " "making a shared object" msgstr "" -#: 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 +#: elf32-i386.c:6088 elf32-tilepro.c:3912 elf64-x86-64.c:6442 +#: elfxx-tilegx.c:4319 /work/sources/binutils/current/bfd/elfnn-aarch64.c:9279 +#: /work/sources/binutils/current/bfd/elfnn-riscv.c:2522 #, c-format msgid "discarded output section: `%A'" msgstr "" -#: elf32-i386.c:6693 elf64-x86-64.c:7228 +#: elf32-i386.c:6656 elf64-x86-64.c:7178 msgid "error: %B: <corrupt x86 ISA used size: 0x%x>" msgstr "" -#: elf32-i386.c:6695 elf64-x86-64.c:7230 +#: elf32-i386.c:6658 elf64-x86-64.c:7180 msgid "error: %B: <corrupt x86 ISA needed size: 0x%x>" msgstr "" -#: elf32-i386.c:6696 elf64-x86-64.c:7231 +#: elf32-i386.c:6659 elf64-x86-64.c:7181 msgid "error: %B: <corrupt x86 feature size: 0x%x>" msgstr "" -#: elf32-i386.c:6873 elf64-x86-64.c:7408 +#: elf32-i386.c:6836 elf64-x86-64.c:7358 #, c-format msgid "%F: failed to create GNU property section\n" msgstr "" -#: elf32-i386.c:6959 +#: elf32-i386.c:6931 #, c-format msgid "%F: failed to create VxWorks dynamic sections\n" msgstr "" -#: elf32-i386.c:7026 elf64-x86-64.c:7568 +#: elf32-i386.c:6998 elf64-x86-64.c:7519 #, c-format msgid "%F: failed to create GOT sections\n" msgstr "" -#: elf32-i386.c:7031 elf64-x86-64.c:7584 +#: elf32-i386.c:7003 elf64-x86-64.c:7535 #, c-format msgid "%F: failed to create ifunc sections\n" msgstr "" -#: elf32-i386.c:7074 elf64-x86-64.c:7627 +#: elf32-i386.c:7046 elf64-x86-64.c:7578 #, c-format msgid "%F: failed to create GOT PLT section\n" msgstr "" -#: elf32-i386.c:7095 elf64-x86-64.c:7648 +#: elf32-i386.c:7067 elf64-x86-64.c:7599 #, c-format msgid "%F: failed to create IBT-enabled PLT section\n" msgstr "" -#: elf32-i386.c:7116 elf64-x86-64.c:7684 +#: elf32-i386.c:7088 elf64-x86-64.c:7635 #, c-format msgid "%F: failed to create PLT .eh_frame section\n" msgstr "" -#: elf32-i386.c:7129 elf64-x86-64.c:7698 +#: elf32-i386.c:7101 elf64-x86-64.c:7649 #, c-format msgid "%F: failed to create GOT PLT .eh_frame section\n" msgstr "" -#: elf32-i386.c:7149 elf64-x86-64.c:7414 +#: elf32-i386.c:7121 elf64-x86-64.c:7364 #, c-format msgid "%F%A: failed to align section\n" msgstr "" @@ -2582,12 +2595,12 @@ msgstr "" #: elf32-ip2k.c:1298 #, c-format -msgid "ip2k linker: missing page instruction at 0x%08lx (dest = 0x%08lx)." +msgid "ip2k linker: missing page instruction at %#Lx (dest = %#Lx)" msgstr "" #: elf32-ip2k.c:1315 #, c-format -msgid "ip2k linker: redundant page instruction at 0x%08lx (dest = 0x%08lx)." +msgid "ip2k linker: redundant page instruction at %#Lx (dest = %#Lx)" msgstr "" #: elf32-iq2000.c:441 @@ -2626,31 +2639,31 @@ msgstr "" msgid "SDA relocation when _SDA_BASE_ not defined" msgstr "" -#: elf32-m32r.c:2984 elf32-microblaze.c:1080 elf32-microblaze.c:1128 +#: elf32-m32r.c:2985 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 "" -#: elf32-m32r.c:3486 +#: elf32-m32r.c:3487 msgid "%B: Instruction set mismatch with previous modules" msgstr "" -#: elf32-m32r.c:3507 elf32-nds32.c:6111 +#: elf32-m32r.c:3508 elf32-nds32.c:6111 #, c-format msgid "private flags = %lx" msgstr "" -#: elf32-m32r.c:3512 +#: elf32-m32r.c:3513 #, c-format msgid ": m32r instructions" msgstr "" -#: elf32-m32r.c:3513 +#: elf32-m32r.c:3514 #, c-format msgid ": m32rx instructions" msgstr "" -#: elf32-m32r.c:3514 +#: elf32-m32r.c:3515 #, c-format msgid ": m32r2 instructions" msgstr "" @@ -2766,7 +2779,7 @@ msgstr "" msgid " [XGATE RAM offsetting]" msgstr "" -#: elf32-m68k.c:1215 elf32-m68k.c:1216 vms-alpha.c:7400 vms-alpha.c:7416 +#: elf32-m68k.c:1215 elf32-m68k.c:1216 vms-alpha.c:7477 vms-alpha.c:7493 msgid "unknown" msgstr "" @@ -2780,11 +2793,6 @@ msgstr "" msgid "%B: GOT overflow: Number of relocations with 8- or 16-bit offset > %d" msgstr "" -#: elf32-m68k.c:3890 -#, c-format -msgid "%B(%A+0x%lx): R_68K_TLS_LE32 relocation not permitted in shared object" -msgstr "" - #: elf32-mcore.c:100 elf32-mcore.c:455 #, c-format msgid "%B: Relocation %s (%d) is not currently supported.\n" @@ -2845,20 +2853,13 @@ msgid "" "%B(%A): shared library symbol %s encountered whilst performing a static link" msgstr "" -#: elf32-metag.c:1931 -#, c-format -msgid "" -"%B(%A+0x%lx): R_METAG_TLS_LE/IENONPIC relocation not permitted in shared " -"object" -msgstr "" - #: elf32-microblaze.c:656 #, c-format msgid "%B: unrecognised MicroBlaze reloc number: %d" msgstr "" -#: elf32-microblaze.c:1496 elf32-or1k.c:1072 elf32-tilepro.c:3317 -#: elfxx-sparc.c:3705 elfxx-tilegx.c:3726 +#: elf32-microblaze.c:1496 elf32-or1k.c:1072 elf32-tilepro.c:3309 +#: elfxx-sparc.c:3705 elfxx-tilegx.c:3718 msgid "%B: probably compiled without -fPIC?" msgstr "" @@ -2899,37 +2900,37 @@ msgstr "" msgid "internal error: branch/jump to an odd address detected" msgstr "" -#: elf32-msp430.c:2354 +#: elf32-msp430.c:2356 #, c-format msgid "Warning: %B: Unknown MSPABI object attribute %d" msgstr "" -#: elf32-msp430.c:2447 +#: elf32-msp430.c:2449 #, c-format msgid "error: %B uses %s instructions but %B uses %s" msgstr "" -#: elf32-msp430.c:2459 +#: elf32-msp430.c:2461 #, c-format msgid "error: %B uses the %s code model whereas %B uses the %s code model" msgstr "" -#: elf32-msp430.c:2471 +#: elf32-msp430.c:2473 #, c-format msgid "error: %B uses the large code model but %B uses MSP430 instructions" msgstr "" -#: elf32-msp430.c:2482 +#: elf32-msp430.c:2484 #, c-format msgid "error: %B uses the %s data model whereas %B uses the %s data model" msgstr "" -#: elf32-msp430.c:2494 +#: elf32-msp430.c:2496 #, c-format msgid "error: %B uses the small code model but %B uses the %s data model" msgstr "" -#: elf32-msp430.c:2506 +#: elf32-msp430.c:2508 #, c-format msgid "error: %B uses the %s data model but %B only uses MSP430 instructions" msgstr "" @@ -3024,7 +3025,7 @@ msgstr "" #: elf32-nds32.c:8989 #, c-format -msgid "%B: warning: %s points to unrecognized reloc at 0x%lx." +msgid "%B: warning: %s points to unrecognized reloc at %#Lx" msgstr "" #: elf32-nds32.c:11850 elf32-nds32.c:11867 @@ -3041,7 +3042,7 @@ msgstr "" msgid "%B: Unmatched OMIT_FP in %A." msgstr "" -#: elf32-nds32.c:13026 reloc.c:8231 +#: elf32-nds32.c:13026 reloc.c:8234 #, c-format msgid "%X%P: %B(%A): relocation \"%R\" goes out of range\n" msgstr "" @@ -3057,12 +3058,13 @@ msgstr "" #: elf32-nds32.c:15436 #, c-format msgid "" -"%B: warning: unaligned small data access. For entry: {%d, %d, %d}, addr = 0x" -"%x, align = 0x%x." +"%B: warning: unaligned small data access for entry: {%Ld, %Ld, %Ld}, addr = " +"%#Lx, align = %#x" msgstr "" #: elf32-nds32.c:15469 -msgid "%P%F: failed creating ex9.it %s hash table: %E\n" +#, c-format +msgid "failed creating ex9.it %s hash table entry" msgstr "" #: elf32-nios2.c:2949 @@ -3082,12 +3084,6 @@ msgid "" "the offset (%d) is out of the allowed range, -32678 to 32767.\n" msgstr "" -#: elf32-nios2.c:4372 -#, c-format -msgid "" -"%B(%A+0x%lx): R_NIOS2_TLS_LE16 relocation not permitted in shared object" -msgstr "" - #: elf32-nios2.c:4500 elf32-pru.c:816 msgid "relocation out of range" msgstr "" @@ -3174,7 +3170,7 @@ msgstr "" msgid "%B: relocation %s cannot be used when making a shared object" msgstr "" -#: elf32-ppc.c:4329 elf64-ppc.c:5591 +#: elf32-ppc.c:4329 elf64-ppc.c:5600 #, c-format msgid "%H: %s reloc against local symbol\n" msgstr "" @@ -3221,11 +3217,6 @@ msgid "" "%B: compiled normally and linked with modules compiled with -mrelocatable" msgstr "" -#: elf32-ppc.c:4909 -#, c-format -msgid "%B: uses different e_flags (%#x) fields than previous modules (%#x)" -msgstr "" - #: elf32-ppc.c:4950 #, c-format msgid "%B(%A+0x%lx): expected 16A style relocation on 0x%08x insn" @@ -3248,7 +3239,7 @@ msgstr "" #. could just mark this symbol to exclude it #. from tls optimization but it's safer to skip #. the entire optimization. -#: elf32-ppc.c:5544 elf64-ppc.c:8798 +#: elf32-ppc.c:5544 elf64-ppc.c:8826 #, c-format msgid "%H arg lost __tls_get_addr, TLS optimization disabled\n" msgstr "" @@ -3259,7 +3250,7 @@ msgstr "" #: elf32-ppc.c:8289 elf32-ppc.c:8324 #, c-format -msgid "%H: error: %s with unexpected instruction %x\n" +msgid "%B(%A+%#Lx): error: %s with unexpected instruction %#x" msgstr "" #: elf32-ppc.c:8380 @@ -3272,7 +3263,7 @@ msgstr "" msgid "%P: %B: unknown relocation type %d for symbol %s\n" msgstr "" -#: elf32-ppc.c:8723 +#: elf32-ppc.c:8718 #, c-format msgid "%H: non-zero addend on %s reloc against `%s'\n" msgstr "" @@ -3285,62 +3276,62 @@ msgstr "" #. 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 +#: elf32-ppc.c:8750 #, c-format msgid "%X%H: @local call to ifunc %s\n" msgstr "" -#: elf32-ppc.c:8935 +#: elf32-ppc.c:8930 #, c-format msgid "%H: relocation %s for indirect function %s unsupported\n" msgstr "" -#: elf32-ppc.c:9232 elf32-ppc.c:9263 elf32-ppc.c:9354 +#: elf32-ppc.c:9199 elf32-ppc.c:9230 elf32-ppc.c:9321 #, c-format msgid "" "%P: %B: the target (%s) of a %s relocation is in the wrong output section " "(%s)\n" msgstr "" -#: elf32-ppc.c:9442 +#: elf32-ppc.c:9409 #, c-format msgid "" "%B: the target (%s) of a %s relocation is in the wrong output section (%s)" msgstr "" -#: elf32-ppc.c:9546 +#: elf32-ppc.c:9513 #, c-format msgid "%P: %B: relocation %s is not yet supported for symbol %s\n" msgstr "" -#: elf32-ppc.c:9631 +#: elf32-ppc.c:9598 #, c-format msgid "%H: error: %s against `%s' not a multiple of %u\n" msgstr "" -#: elf32-ppc.c:9660 +#: elf32-ppc.c:9627 #, c-format msgid "%H: unresolvable %s relocation against symbol `%s'\n" msgstr "" -#: elf32-ppc.c:9741 +#: elf32-ppc.c:9708 #, c-format msgid "%H: %s reloc against `%s': error %d\n" msgstr "" -#: elf32-ppc.c:10505 elf64-ppc.c:15719 +#: elf32-ppc.c:10472 elf64-ppc.c:15763 msgid "" "%X%P: text relocations and GNU indirect functions will result in a segfault " "at runtime\n" msgstr "" -#: elf32-ppc.c:10509 elf64-ppc.c:15723 +#: elf32-ppc.c:10476 elf64-ppc.c:15767 msgid "" "%P: warning: text relocations and GNU indirect functions may result in a " "segfault at runtime\n" msgstr "" -#: elf32-ppc.c:10554 +#: elf32-ppc.c:10521 #, c-format msgid "%P: %s not defined in linker created %s\n" msgstr "" @@ -3417,7 +3408,7 @@ msgstr "" #. crt0.o before the PID base address register has been initialised. #: elf32-rx.c:686 #, c-format -msgid "%B(%A): unsafe PID relocation %s at 0x%08lx (against %s in %s)" +msgid "%B(%A): unsafe PID relocation %s at %#Lx (against %s in %s)" msgstr "" #: elf32-rx.c:1266 @@ -3450,7 +3441,7 @@ msgstr "" #: elf32-s390.c:2310 elf64-s390.c:2257 #, c-format -msgid "%B(%A+0x%lx): invalid instruction for TLS relocation %s" +msgid "%B(%A+%#Lx): invalid instruction for TLS relocation %s" msgstr "" #: elf32-score.c:1521 elf32-score7.c:1382 elfxx-mips.c:3756 @@ -3468,7 +3459,7 @@ msgstr "" #: elf32-score.c:2883 elf32-score7.c:2688 #, c-format -msgid "%B: CALL15 reloc at 0x%lx not against global symbol" +msgid "%B: CALL15 reloc at %#Lx not against global symbol" msgstr "" #: elf32-score.c:4005 elf32-score7.c:3810 @@ -3505,38 +3496,43 @@ msgstr "" msgid "%B: unrecognised SH reloc number: %d" msgstr "" +#: elf32-sh.c:592 +#, c-format +msgid "%B: %#Lx: warning: R_SH_USES points to unrecognized insn 0x%x" +msgstr "" + #: elf32-sh.c:3953 elf64-sh64.c:1508 msgid "Unexpected STO_SH5_ISA32 on local symbol is not handled" msgstr "" #: elf32-sh.c:4206 #, c-format -msgid "%B: 0x%lx: fatal: unaligned branch target for relax-support relocation" +msgid "%B: %#Lx: fatal: unaligned branch target for relax-support relocation" msgstr "" #: elf32-sh.c:4240 elf32-sh.c:4256 #, c-format -msgid "%B: 0x%lx: fatal: unaligned %s relocation 0x%lx" +msgid "%B: %#Lx: fatal: unaligned %s relocation %#Lx" msgstr "" #: elf32-sh.c:4271 #, c-format -msgid "%B: 0x%lx: fatal: R_SH_PSHA relocation %d not in range -32..32" +msgid "%B: %#Lx: fatal: R_SH_PSHA relocation %Ld not in range -32..32" msgstr "" #: elf32-sh.c:4286 #, c-format -msgid "%B: 0x%lx: fatal: R_SH_PSHL relocation %d not in range -32..32" +msgid "%B: %#Lx: fatal: R_SH_PSHL relocation %Ld not in range -32..32" msgstr "" #: elf32-sh.c:4431 elf32-sh.c:4903 #, c-format -msgid "%B(%A+0x%lx): cannot emit fixup to `%s' in read-only section" +msgid "%B(%A+%#Lx): cannot emit fixup to `%s' in read-only section" msgstr "" #: elf32-sh.c:5005 #, c-format -msgid "%B(%A+0x%lx): %s relocation against external symbol \"%s\"" +msgid "%B(%A+%#Lx): %s relocation against external symbol \"%s\"" msgstr "" #: elf32-sh.c:5469 @@ -3563,7 +3559,7 @@ msgstr "" msgid "%B: Function descriptor relocation with non-zero addend" msgstr "" -#: elf32-sh.c:6320 elf64-alpha.c:4757 +#: elf32-sh.c:6320 elf64-alpha.c:4755 #, c-format msgid "%B: TLS local exec code cannot be linked into shared objects" msgstr "" @@ -3623,7 +3619,7 @@ msgstr "" #: elf32-sh64.c:600 #, c-format -msgid "%B: error: unaligned relocation type %d at %08x reloc %p\n" +msgid "%B: error: unaligned relocation type %d at %#Lx reloc %#Lx" msgstr "" #: elf32-sh64.c:676 @@ -3784,7 +3780,7 @@ msgstr "" #: elf32-spu.c:5043 #, c-format -msgid "%B(%s+0x%lx): unresolvable %s relocation against symbol `%s'" +msgid "%B(%s+%#Lx): unresolvable %s relocation against symbol `%s'" msgstr "" #: elf32-tic6x.c:1596 @@ -3889,7 +3885,7 @@ msgstr "" #: elf32-v850.c:2528 #, c-format -msgid "error: %B needs 8-byte aligment but %B is set for 4-byte alignment" +msgid "error: %B needs 8-byte alignment but %B is set for 4-byte alignment" msgstr "" #: elf32-v850.c:2544 @@ -4040,37 +4036,37 @@ msgstr "" #: elf32-v850.c:3605 #, c-format -msgid "%B: 0x%lx: warning: R_V850_LONGCALL points to unrecognized insns" +msgid "%B: %#Lx: warning: R_V850_LONGCALL points to unrecognized insns" msgstr "" #: elf32-v850.c:3615 #, c-format -msgid "%B: 0x%lx: warning: R_V850_LONGCALL points to unrecognized insn 0x%x" +msgid "%B: %#Lx: warning: R_V850_LONGCALL points to unrecognized insn %#x" msgstr "" #: elf32-v850.c:3660 #, c-format -msgid "%B: 0x%lx: warning: R_V850_LONGCALL points to unrecognized reloc" +msgid "%B: %#Lx: warning: R_V850_LONGCALL points to unrecognized reloc" msgstr "" #: elf32-v850.c:3700 #, c-format -msgid "%B: 0x%lx: warning: R_V850_LONGCALL points to unrecognized reloc 0x%lx" +msgid "%B: %#Lx: warning: R_V850_LONGCALL points to unrecognized reloc %#Lx" msgstr "" #: elf32-v850.c:3843 #, c-format -msgid "%B: 0x%lx: warning: R_V850_LONGJUMP points to unrecognized insns" +msgid "%B: %#Lx: warning: R_V850_LONGJUMP points to unrecognized insns" msgstr "" #: elf32-v850.c:3853 #, c-format -msgid "%B: 0x%lx: warning: R_V850_LONGJUMP points to unrecognized insn 0x%x" +msgid "%B: %#Lx: warning: R_V850_LONGJUMP points to unrecognized insn %#x" msgstr "" #: elf32-v850.c:3887 #, c-format -msgid "%B: 0x%lx: warning: R_V850_LONGJUMP points to unrecognized reloc" +msgid "%B: %#Lx: warning: R_V850_LONGJUMP points to unrecognized reloc" msgstr "" #: elf32-vax.c:290 @@ -4096,13 +4092,13 @@ msgstr "" #: elf32-vax.c:635 #, c-format msgid "" -"%B: warning: GOT addend of %ld to `%s' does not match previous GOT addend of " -"%ld" +"%B: warning: GOT addend of %Ld to `%s' does not match previous GOT addend of " +"%Ld" msgstr "" #: elf32-vax.c:1511 #, c-format -msgid "%B: warning: PLT addend of %d to `%s' from %A section ignored" +msgid "%B: warning: PLT addend of %Ld to `%s' from %A section ignored" msgstr "" #: elf32-vax.c:1636 @@ -4112,7 +4108,7 @@ msgstr "" #: elf32-vax.c:1643 #, c-format -msgid "%B: warning: %s relocation to 0x%x from %A section" +msgid "%B: warning: %s relocation to %#Lx from %A section" msgstr "" #: elf32-visium.c:481 @@ -4157,7 +4153,7 @@ msgstr "" #: elf32-xtensa.c:2790 #, c-format -msgid "%B(%A+0x%lx): relocation offset out of range (size=0x%x)" +msgid "%B(%A+%#Lx): relocation offset out of range (size=%#Lx)" msgstr "" #: elf32-xtensa.c:2871 elf32-xtensa.c:2990 @@ -4181,30 +4177,30 @@ msgstr "" msgid "Attempt to convert L32R/CALLX to CALL failed" msgstr "" -#: elf32-xtensa.c:6552 elf32-xtensa.c:6629 elf32-xtensa.c:8002 +#: elf32-xtensa.c:6552 elf32-xtensa.c:6630 elf32-xtensa.c:8006 #, c-format msgid "" -"%B(%A+0x%lx): could not decode instruction; possible configuration mismatch" +"%B(%A+%#Lx): could not decode instruction; possible configuration mismatch" msgstr "" -#: elf32-xtensa.c:7743 +#: elf32-xtensa.c:7745 #, c-format msgid "" -"%B(%A+0x%lx): could not decode instruction for XTENSA_ASM_SIMPLIFY " +"%B(%A+%#Lx): could not decode instruction for XTENSA_ASM_SIMPLIFY " "relocation; possible configuration mismatch" msgstr "" -#: elf32-xtensa.c:9585 +#: elf32-xtensa.c:9590 msgid "invalid relocation address" msgstr "" -#: elf32-xtensa.c:9635 +#: elf32-xtensa.c:9640 msgid "overflow after relaxation" msgstr "" -#: elf32-xtensa.c:10779 +#: elf32-xtensa.c:10784 #, c-format -msgid "%B(%A+0x%lx): unexpected fix for %s relocation" +msgid "%B(%A+%#Lx): unexpected fix for %s relocation" msgstr "" #: elf64-alpha.c:472 @@ -4223,72 +4219,72 @@ msgstr "" #: elf64-alpha.c:3084 #, c-format -msgid "%B: %A+0x%lx: warning: %s relocation against unexpected insn" +msgid "%B: %A+%#Lx: warning: %s relocation against unexpected insn" msgstr "" -#: elf64-alpha.c:3280 +#: elf64-alpha.c:3279 #, c-format -msgid "%B: %A+0x%lx: warning: LITERAL relocation against unexpected insn" +msgid "%B: %A+%#Lx: warning: LITERAL relocation against unexpected insn" msgstr "" -#: elf64-alpha.c:4481 elf64-alpha.c:4494 +#: elf64-alpha.c:4479 elf64-alpha.c:4492 #, c-format msgid "%B: gp-relative relocation against dynamic symbol %s" msgstr "" -#: elf64-alpha.c:4521 elf64-alpha.c:4665 +#: elf64-alpha.c:4519 elf64-alpha.c:4663 #, c-format msgid "%B: pc-relative relocation against dynamic symbol %s" msgstr "" -#: elf64-alpha.c:4550 +#: elf64-alpha.c:4548 #, c-format msgid "%B: change in gp: BRSGP %s" msgstr "" -#: elf64-alpha.c:4575 +#: elf64-alpha.c:4573 msgid "<unknown>" msgstr "" -#: elf64-alpha.c:4581 +#: elf64-alpha.c:4579 #, c-format msgid "%B: !samegp reloc against symbol without .prologue: %s" msgstr "" -#: elf64-alpha.c:4639 +#: elf64-alpha.c:4637 #, c-format msgid "%B: unhandled dynamic relocation against %s" msgstr "" -#: elf64-alpha.c:4674 +#: elf64-alpha.c:4672 #, c-format msgid "%B: pc-relative relocation against undefined weak symbol %s" msgstr "" -#: elf64-alpha.c:4740 +#: elf64-alpha.c:4738 #, c-format msgid "%B: dtp-relative relocation against dynamic symbol %s" msgstr "" -#: elf64-alpha.c:4765 +#: elf64-alpha.c:4763 #, c-format msgid "%B: tp-relative relocation against dynamic symbol %s" msgstr "" #: elf64-hppa.c:2082 #, c-format -msgid "stub entry for %s cannot load .plt, dp offset = %ld" +msgid "stub entry for %s cannot load .plt, dp offset = %Ld" msgstr "" #: elf64-hppa.c:3287 #, c-format -msgid "%B(%A+0x%" +msgid "%B(%A+%#Lx): cannot reach %s" msgstr "" #: 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 " +"%B: Can't relax br at %#Lx in section `%A'. Please use brl or indirect " "branch." msgstr "" @@ -4298,7 +4294,7 @@ msgstr "" #: elf64-ia64-vms.c:3282 elf32-ia64.c:3688 elf64-ia64.c:3688 #, c-format -msgid "%B: short data segment overflowed (0x%lx >= 0x400000)" +msgid "%B: short data segment overflowed (%#Lx >= 0x400000)" msgstr "" #: elf64-ia64-vms.c:3292 elf32-ia64.c:3698 elf64-ia64.c:3698 @@ -4341,14 +4337,14 @@ msgstr "" #: 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 `" +"%B: missing TLS section for relocation %s against `%s' at %#Lx in section `" "%A'." msgstr "" #: 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 (> " +"%B: Can't relax br (%s) to `%s' at %#Lx in section `%A' with size %#Lx (> " "0x1000000)." msgstr "" @@ -4372,21 +4368,21 @@ msgstr "" msgid "%B: linking auto-pic files with non-auto-pic files" msgstr "" -#: elf64-ia64-vms.c:5138 elflink.c:4730 +#: elf64-ia64-vms.c:5138 elflink.c:4736 #, c-format msgid "" "Warning: alignment %u of common symbol `%s' in %B is greater than the " "alignment (%u) of its section %A" msgstr "" -#: elf64-ia64-vms.c:5145 elflink.c:4737 +#: elf64-ia64-vms.c:5145 elflink.c:4743 #, c-format msgid "Warning: alignment %u of symbol `%s' in %B is smaller than %u in %B" msgstr "" -#: elf64-ia64-vms.c:5161 +#: elf64-ia64-vms.c:5161 elflink.c:4760 #, c-format -msgid "Warning: size of symbol `%s' changed from %lu in %B to %lu in %B" +msgid "Warning: size of symbol `%s' changed from %Lu in %B to %Lu in %B" msgstr "" #: elf64-mips.c:3615 elfn32-mips.c:3439 @@ -4412,178 +4408,183 @@ msgstr "" #, c-format msgid "" "%B: Internal inconsistency error for value for\n" -" linker-allocated global register: linked: 0x%lx%08lx != relaxed: 0x%lx" -"%08lx\n" +" linker-allocated global register: linked: %#Lx != relaxed: %#Lx" msgstr "" -#: elf64-mmix.c:1266 +#: elf64-mmix.c:1264 #, c-format msgid "%B: invalid MMIX reloc number: %d" msgstr "" -#: elf64-mmix.c:1618 +#: elf64-mmix.c:1616 #, c-format msgid "" "%B: base-plus-offset relocation against register symbol: (unknown) in %A" msgstr "" -#: elf64-mmix.c:1624 +#: elf64-mmix.c:1622 #, c-format msgid "%B: base-plus-offset relocation against register symbol: %s in %A" msgstr "" -#: elf64-mmix.c:1669 +#: elf64-mmix.c:1667 #, c-format msgid "%B: register relocation against non-register symbol: (unknown) in %A" msgstr "" -#: elf64-mmix.c:1675 +#: elf64-mmix.c:1673 #, c-format msgid "%B: register relocation against non-register symbol: %s in %A" msgstr "" -#: elf64-mmix.c:1712 +#: elf64-mmix.c:1710 msgid "%B: directive LOCAL valid only with a register or absolute value" msgstr "" -#: elf64-mmix.c:1743 +#: elf64-mmix.c:1741 #, c-format msgid "" -"%B: LOCAL directive: Register $%ld is not a local register. First global " -"register is $%ld." +"%B: LOCAL directive: Register $%Ld is not a local register. First global " +"register is $%Ld." msgstr "" -#: elf64-mmix.c:2202 +#: elf64-mmix.c:2200 #, c-format msgid "" "%B: Error: multiple definition of `%s'; start of %s is set in a earlier " "linked file\n" msgstr "" -#: elf64-mmix.c:2257 +#: elf64-mmix.c:2255 msgid "Register section has contents\n" msgstr "" -#: elf64-mmix.c:2447 +#: elf64-mmix.c:2445 #, c-format msgid "" -"Internal inconsistency: remaining %u != max %u.\n" +"Internal inconsistency: remaining %lu != max %lu.\n" " Please report this bug." msgstr "" -#: elf64-ppc.c:4625 +#: elf64-ppc.c:4632 #, c-format msgid "%P: %B: cannot create stub entry %s\n" msgstr "" -#: elf64-ppc.c:4993 +#: elf64-ppc.c:5000 msgid "%P: symbol '%s' has invalid st_other for ABI version 1\n" msgstr "" -#: elf64-ppc.c:5163 +#: elf64-ppc.c:5172 #, c-format msgid "%P: %B .opd not allowed in ABI version %d\n" msgstr "" -#: elf64-ppc.c:5639 +#: elf64-ppc.c:5648 #, c-format msgid "%H: %s reloc unsupported in shared libraries and PIEs.\n" msgstr "" -#: elf64-ppc.c:6046 +#: elf64-ppc.c:6055 #, c-format msgid "%B uses unknown e_flags 0x%lx" msgstr "" -#: elf64-ppc.c:6054 +#: elf64-ppc.c:6063 #, c-format msgid "%B: ABI version %ld is not compatible with ABI version %ld output" msgstr "" -#: elf64-ppc.c:6082 +#: elf64-ppc.c:6091 #, c-format msgid " [abiv%ld]" msgstr "" -#: elf64-ppc.c:7413 +#: elf64-ppc.c:7423 msgid "" "%P: copy reloc against `%T' requires lazy plt linking; avoid setting " "LD_BIND_NOW=1 or upgrade gcc\n" msgstr "" -#: elf64-ppc.c:7680 +#: elf64-ppc.c:7690 msgid "%B: undefined symbol on R_PPC64_TOCSAVE relocation" msgstr "" -#: elf64-ppc.c:7910 +#: elf64-ppc.c:7920 #, c-format msgid "%P: dynreloc miscount for %B, section %A\n" msgstr "" -#: elf64-ppc.c:7999 +#: elf64-ppc.c:8009 msgid "%B: .opd is not a regular array of opd entries" msgstr "" -#: elf64-ppc.c:8009 +#: elf64-ppc.c:8019 #, c-format msgid "%B: unexpected reloc type %u in .opd section" msgstr "" -#: elf64-ppc.c:8031 +#: elf64-ppc.c:8041 #, c-format msgid "%B: undefined sym `%s' in .opd section" msgstr "" -#: elf64-ppc.c:8600 +#: elf64-ppc.c:8379 +msgid "" +"%P: warning: --plt-localentry is especially dangerous without ld.so support " +"to detect ABI violations.\n" +msgstr "" + +#: elf64-ppc.c:8628 msgid "%H __tls_get_addr lost arg, TLS optimization disabled\n" msgstr "" -#: elf64-ppc.c:8943 elf64-ppc.c:9580 +#: elf64-ppc.c:8971 elf64-ppc.c:9608 #, c-format msgid "%s defined on removed toc entry" msgstr "" -#: elf64-ppc.c:9308 +#: elf64-ppc.c:9336 #, c-format msgid "%H: toc optimization is not supported for %s instruction.\n" msgstr "" -#: elf64-ppc.c:9537 +#: elf64-ppc.c:9565 #, c-format msgid "%H: %s references optimized away TOC entry\n" msgstr "" -#: elf64-ppc.c:10878 +#: elf64-ppc.c:10906 msgid "%P: cannot find opd entry toc for `%T'\n" msgstr "" -#: elf64-ppc.c:10969 +#: elf64-ppc.c:10997 msgid "%P: long branch stub `%s' offset overflow\n" msgstr "" -#: elf64-ppc.c:11028 +#: elf64-ppc.c:11056 msgid "%P: can't find branch stub `%s'\n" msgstr "" -#: elf64-ppc.c:11092 elf64-ppc.c:11244 elf64-ppc.c:13052 +#: elf64-ppc.c:11120 elf64-ppc.c:11272 elf64-ppc.c:13134 #, c-format msgid "%P: linkage table error against `%T'\n" msgstr "" -#: elf64-ppc.c:11454 +#: elf64-ppc.c:11491 msgid "%P: can't build branch stub `%s'\n" msgstr "" -#: elf64-ppc.c:12227 +#: elf64-ppc.c:12264 #, c-format msgid "%B section %A exceeds stub group size" msgstr "" -#: elf64-ppc.c:13331 +#: elf64-ppc.c:13407 msgid "%P: stubs don't match calculated size\n" msgstr "" -#: elf64-ppc.c:13343 +#: elf64-ppc.c:13419 #, c-format msgid "" "linker stubs in %u group%s\n" @@ -4596,59 +4597,59 @@ msgid "" " global entry %lu" msgstr "" -#: elf64-ppc.c:13665 +#: elf64-ppc.c:13741 #, c-format msgid "%H: %s used with TLS symbol `%T'\n" msgstr "" -#: elf64-ppc.c:13667 +#: elf64-ppc.c:13743 #, c-format msgid "%H: %s used with non-TLS symbol `%T'\n" msgstr "" -#: elf64-ppc.c:14306 +#: elf64-ppc.c:14382 #, c-format msgid "%H: call to `%T' lacks nop, can't restore toc; recompile with -fPIC\n" msgstr "" -#: elf64-ppc.c:14312 +#: elf64-ppc.c:14388 #, c-format msgid "" "%H: call to `%T' lacks nop, can't restore toc; (-mcmodel=small toc adjust " "stub)\n" msgstr "" -#: elf64-ppc.c:14440 +#: elf64-ppc.c:14516 #, c-format msgid "%P: %B: unknown relocation type %d for `%T'\n" msgstr "" -#: elf64-ppc.c:14994 +#: elf64-ppc.c:15064 #, c-format msgid "%H: %s for indirect function `%T' unsupported\n" msgstr "" -#: elf64-ppc.c:15132 +#: elf64-ppc.c:15176 #, c-format msgid "%P: %B: %s is not supported for `%T'\n" msgstr "" -#: elf64-ppc.c:15287 +#: elf64-ppc.c:15331 #, c-format msgid "%H: error: %s not a multiple of %u\n" msgstr "" -#: elf64-ppc.c:15309 +#: elf64-ppc.c:15353 #, c-format msgid "%H: unresolvable %s against `%T'\n" msgstr "" -#: elf64-ppc.c:15406 +#: elf64-ppc.c:15450 #, c-format msgid "%H: %s against `%T': error %d\n" msgstr "" -#: elf64-ppc.c:15801 elf64-ppc.c:15830 +#: elf64-ppc.c:15840 elf64-ppc.c:15859 msgid "%P: %s offset too large for .eh_frame sdata4 encoding" msgstr "" @@ -4660,7 +4661,7 @@ msgstr "" #: elf64-sh64.c:1680 #, c-format -msgid "%B: error: unaligned relocation type %d at %08x reloc %08x\n" +msgid "%B: error: unaligned relocation type %d at %08Lx reloc %08Lx" msgstr "" #: elf64-sparc.c:460 @@ -4686,103 +4687,95 @@ msgstr "" msgid "%B: linking UltraSPARC specific with HAL specific code" msgstr "" -#: elf64-x86-64.c:1923 +#: elf64-x86-64.c:1900 msgid "hidden symbol " msgstr "" -#: elf64-x86-64.c:1926 +#: elf64-x86-64.c:1903 msgid "internal symbol " msgstr "" -#: elf64-x86-64.c:1929 +#: elf64-x86-64.c:1906 msgid "protected symbol " msgstr "" -#: elf64-x86-64.c:1932 +#: elf64-x86-64.c:1909 msgid "symbol " msgstr "" -#: elf64-x86-64.c:1933 elf64-x86-64.c:1943 +#: elf64-x86-64.c:1910 elf64-x86-64.c:1920 msgid "; recompile with -fPIC" msgstr "" -#: elf64-x86-64.c:1938 +#: elf64-x86-64.c:1915 msgid "undefined " msgstr "" -#: elf64-x86-64.c:1947 +#: elf64-x86-64.c:1924 #, c-format msgid "" "%B: relocation %s against %s%s`%s' can not be used when making a shared " "object%s" msgstr "" -#: elf64-x86-64.c:2510 +#: elf64-x86-64.c:2487 #, c-format msgid "%B: relocation %s against symbol `%s' isn't supported in x32 mode" msgstr "" -#: elf64-x86-64.c:2633 +#: elf64-x86-64.c:2610 #, c-format msgid "%B: '%s' accessed both as normal and thread local symbol" msgstr "" -#: elf64-x86-64.c:4576 -#: /Users/gingold/Repositories/fsf/binutils-gdb.git/bfd/elfnn-aarch64.c:5018 +#: elf64-x86-64.c:4546 /work/sources/binutils/current/bfd/elfnn-aarch64.c:5018 #, c-format msgid "" -"%B: relocation %s against STT_GNU_IFUNC symbol `%s' has non-zero addend: %d" +"%B: relocation %s against STT_GNU_IFUNC symbol `%s' has non-zero addend: %Ld" msgstr "" -#: elf64-x86-64.c:4831 +#: elf64-x86-64.c:4801 #, c-format msgid "" "%B: relocation R_X86_64_GOTOFF64 against undefined %s `%s' can not be used " "when making a shared object" msgstr "" -#: elf64-x86-64.c:4845 +#: elf64-x86-64.c:4815 #, c-format msgid "" "%B: relocation R_X86_64_GOTOFF64 against protected %s `%s' can not be used " "when making a shared object" msgstr "" -#: elf64-x86-64.c:5122 +#: elf64-x86-64.c:5089 #, c-format msgid "" -"%B: addend -0x%x in relocation %s against symbol `%s' at 0x%lx in section `" +"%B: addend %s%#x in relocation %s against symbol `%s' at %#Lx in section `" "%A' is out of range" msgstr "" -#: 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 "" - -#: elf64-x86-64.c:5952 +#: elf64-x86-64.c:5911 #, c-format msgid "%F%B: PC-relative offset overflow in PLT entry for `%s'\n" msgstr "" -#: elf64-x86-64.c:6019 +#: elf64-x86-64.c:5978 #, c-format msgid "%F%B: branch displacement overflow in PLT entry for `%s'\n" msgstr "" -#: elf64-x86-64.c:6072 +#: elf64-x86-64.c:6031 #, c-format msgid "%F%B: PC-relative offset overflow in GOT PLT entry for `%s'\n" msgstr "" -#: elf64-x86-64.c:7663 +#: elf64-x86-64.c:7614 #, c-format msgid "%F: failed to create BND PLT section\n" msgstr "" -#: elf64-x86-64.c:7713 +#: elf64-x86-64.c:7664 #, c-format msgid "%F: failed to create BND PLT .eh_frame section\n" msgstr "" @@ -4793,7 +4786,7 @@ msgstr "" #: elfcode.h:1193 #, c-format -msgid "%B: version count (%ld) does not match symbol count (%ld)" +msgid "%B: version count (%Ld) does not match symbol count (%ld)" msgstr "" #: elfcode.h:1448 @@ -4803,7 +4796,7 @@ msgstr "" #: elfcore.h:300 #, c-format -msgid "Warning: %B is truncated: expected core file size >= %lu, found: %lu." +msgid "warning: %B is truncated: expected core file size >= %Lu, found: %llu" msgstr "" #: elflink.c:1336 @@ -4841,13 +4834,13 @@ msgstr "" #: elflink.c:2397 #, c-format msgid "" -"%B: bad reloc symbol index (%#lx >= %#lx) for offset %#Lx in section `%A'" +"%B: bad reloc symbol index (%#Lx >= %#lx) for offset %#Lx in section `%A'" msgstr "" #: elflink.c:2409 #, c-format msgid "" -"%B: non-zero symbol index (%#lx) for offset %#Lx in section `%A' when the " +"%B: non-zero symbol index (%#Lx) for offset %#Lx in section `%A' when the " "object file has no symbol table" msgstr "" @@ -4870,192 +4863,187 @@ msgstr "" msgid "%P: alternate ELF machine code found (%d) in %B, expecting %d\n" msgstr "" -#: elflink.c:4438 +#: elflink.c:4444 #, c-format msgid "%B: %s: invalid version %u (max %d)" msgstr "" -#: elflink.c:4475 +#: elflink.c:4481 #, c-format msgid "%B: %s: invalid needed version %d" msgstr "" -#: elflink.c:4754 -#, c-format -msgid "Warning: size of symbol `%s' changed from %Lu in %B to %Lu in %B" -msgstr "" - -#: elflink.c:4890 +#: elflink.c:4896 #, c-format msgid "%B: undefined reference to symbol '%s'" msgstr "" -#: elflink.c:5903 +#: elflink.c:5909 #, c-format msgid "%B: stack size specified and %s set" msgstr "" -#: elflink.c:5907 +#: elflink.c:5913 #, c-format msgid "%B: %s not absolute" msgstr "" -#: elflink.c:6105 +#: elflink.c:6111 #, c-format msgid "%s: undefined version: %s" msgstr "" -#: elflink.c:6682 +#: elflink.c:6688 msgid "%B: .preinit_array section is not allowed in DSO" msgstr "" -#: elflink.c:8122 +#: elflink.c:8128 #, c-format msgid "undefined %s reference in complex symbol: %s" msgstr "" -#: elflink.c:8277 +#: elflink.c:8283 #, c-format msgid "unknown operator '%c' in complex symbol" msgstr "" #. PR 21524: Let the user know if a symbol was removed by garbage collection. -#: elflink.c:8615 +#: elflink.c:8621 msgid "" "%B:%A: error: relocation references symbol %s which was removed by garbage " "collection." msgstr "" -#: elflink.c:8618 +#: elflink.c:8624 msgid "%B:%A: error: try relinking with --gc-keep-exported enabled." msgstr "" -#: elflink.c:8855 elflink.c:8873 elflink.c:8912 elflink.c:8930 +#: elflink.c:8860 elflink.c:8878 elflink.c:8917 elflink.c:8935 msgid "%B: Unable to sort relocs - they are in more than one size" msgstr "" #. The section size is not divisible by either - #. something is wrong. -#: elflink.c:8889 elflink.c:8946 +#: elflink.c:8894 elflink.c:8951 msgid "%B: Unable to sort relocs - they are of an unknown size" msgstr "" -#: elflink.c:8998 +#: elflink.c:9003 msgid "Not enough memory to sort relocations" msgstr "" -#: elflink.c:9266 +#: elflink.c:9271 #, c-format msgid "%B: Too many sections: %d (>= %d)" msgstr "" -#: elflink.c:9546 +#: elflink.c:9551 #, c-format msgid "%B: internal symbol `%s' in %B is referenced by DSO" msgstr "" -#: elflink.c:9549 +#: elflink.c:9554 #, c-format msgid "%B: hidden symbol `%s' in %B is referenced by DSO" msgstr "" -#: elflink.c:9552 +#: elflink.c:9557 #, c-format msgid "%B: local symbol `%s' in %B is referenced by DSO" msgstr "" -#: elflink.c:9638 +#: elflink.c:9643 #, c-format msgid "%B: could not find output section %A for input section %A" msgstr "" -#: elflink.c:9792 +#: elflink.c:9797 #, c-format msgid "%B: protected symbol `%s' isn't defined" msgstr "" -#: elflink.c:9795 +#: elflink.c:9800 #, c-format msgid "%B: internal symbol `%s' isn't defined" msgstr "" -#: elflink.c:9798 +#: elflink.c:9803 #, c-format msgid "%B: hidden symbol `%s' isn't defined" msgstr "" -#: elflink.c:9829 +#: elflink.c:9834 #, c-format msgid "%B: No symbol version section for versioned symbol `%s'" msgstr "" -#: elflink.c:10436 +#: elflink.c:10441 #, c-format msgid "error: %B: size of section %A is not multiple of address size" msgstr "" -#: elflink.c:10481 +#: elflink.c:10486 #, c-format msgid "" "error: %B contains a reloc (%#Lx) for section %A that references a non-" "existent global symbol" msgstr "" -#: elflink.c:11236 +#: elflink.c:11241 #, c-format msgid "%A has both ordered [`%A' in %B] and unordered [`%A' in %B] sections" msgstr "" -#: elflink.c:11242 +#: elflink.c:11247 #, c-format msgid "%A has both ordered and unordered sections" msgstr "" -#: elflink.c:11344 +#: elflink.c:11349 msgid "%B: no symbol found for import library" msgstr "" -#: elflink.c:11966 +#: elflink.c:11971 #, c-format msgid "%B: file class %s incompatible with %s" msgstr "" -#: elflink.c:12183 +#: elflink.c:12188 msgid "%B: failed to generate import library" msgstr "" -#: elflink.c:12302 +#: elflink.c:12307 #, c-format msgid "warning: %s section has zero size" msgstr "" -#: elflink.c:12350 +#: elflink.c:12355 #, c-format msgid "warning: section '%s' is being made into a note" msgstr "" -#: elflink.c:12442 +#: elflink.c:12447 msgid "%P%X: read-only segment has dynamic relocations.\n" msgstr "" -#: elflink.c:12445 +#: elflink.c:12450 msgid "%P: warning: creating a DT_TEXTREL in a shared object.\n" msgstr "" -#: elflink.c:12570 +#: elflink.c:12575 msgid "%P%X: can not read symbols: %E\n" msgstr "" -#: elflink.c:12732 +#: elflink.c:12737 msgid "%F%P: corrupt input: %B\n" msgstr "" -#: elflink.c:13421 +#: elflink.c:13426 #, c-format msgid "%B: %A+%#Lx: No symbol found for INHERIT" msgstr "" -#: elflink.c:13597 +#: elflink.c:13602 #, c-format msgid "Unrecognized INPUT_SECTION_FLAG %s\n" msgstr "" @@ -5105,12 +5093,12 @@ msgstr "" #: elfxx-mips.c:8459 #, c-format -msgid "%B: GOT reloc at 0x%lx not expected in executables" +msgid "%B: GOT reloc at %#Lx not expected in executables" msgstr "" #: elfxx-mips.c:8597 #, c-format -msgid "%B: CALL16 reloc at 0x%lx not against global symbol" +msgid "%B: CALL16 reloc at %#Lx not against global symbol" msgstr "" #: elfxx-mips.c:9219 @@ -5121,7 +5109,7 @@ msgstr "" #: elfxx-mips.c:10139 #, c-format msgid "" -"%B: Can't find matching LO16 reloc against `%s' for %s at 0x%lx in section `" +"%B: Can't find matching LO16 reloc against `%s' for %s at %#Lx in section `" "%A'" msgstr "" @@ -5156,7 +5144,7 @@ msgstr "" #: elfxx-mips.c:10683 elfxx-mips.c:11251 #, c-format -msgid "%B: `%A' offset of %ld from `%A' beyond the range of ADDIUPC" +msgid "%B: `%A' offset of %Ld from `%A' beyond the range of ADDIUPC" msgstr "" #: elfxx-mips.c:14174 @@ -5192,177 +5180,177 @@ msgstr "" msgid "%B: ASE mismatch: linking %s module with previous %s modules" msgstr "" -#: elfxx-mips.c:15214 +#: elfxx-mips.c:15213 msgid "" "Warning: %B uses unknown floating point ABI %d (set by %B), %B uses unknown " "floating point ABI %d" msgstr "" -#: elfxx-mips.c:15220 +#: elfxx-mips.c:15219 #, c-format msgid "Warning: %B uses unknown floating point ABI %d (set by %B), %B uses %s" msgstr "" -#: elfxx-mips.c:15226 +#: elfxx-mips.c:15225 #, c-format msgid "Warning: %B uses %s (set by %B), %B uses unknown floating point ABI %d" msgstr "" -#: elfxx-mips.c:15240 +#: elfxx-mips.c:15239 #, c-format msgid "Warning: %B uses %s (set by %B), %B uses %s" msgstr "" -#: elfxx-mips.c:15259 +#: elfxx-mips.c:15258 #, c-format msgid "Warning: %B uses %s (set by %B), %B uses unknown MSA ABI %d" msgstr "" -#: elfxx-mips.c:15271 +#: elfxx-mips.c:15270 #, c-format msgid "Warning: %B uses unknown MSA ABI %d (set by %B), %B uses %s" msgstr "" -#: elfxx-mips.c:15280 +#: elfxx-mips.c:15279 #, c-format msgid "" "Warning: %B uses unknown MSA ABI %d (set by %B), %B uses unknown MSA ABI %d" msgstr "" -#: elfxx-mips.c:15342 +#: elfxx-mips.c:15341 msgid "%B: endianness incompatible with that of the selected emulation" msgstr "" -#: elfxx-mips.c:15356 +#: elfxx-mips.c:15355 msgid "%B: ABI is incompatible with that of the selected emulation" msgstr "" -#: elfxx-mips.c:15408 +#: elfxx-mips.c:15407 msgid "%B: warning: Inconsistent ISA between e_flags and .MIPS.abiflags" msgstr "" -#: elfxx-mips.c:15413 +#: elfxx-mips.c:15412 msgid "" "%B: warning: Inconsistent FP ABI between .gnu.attributes and .MIPS.abiflags" msgstr "" -#: elfxx-mips.c:15417 +#: elfxx-mips.c:15416 msgid "%B: warning: Inconsistent ASEs between e_flags and .MIPS.abiflags" msgstr "" -#: elfxx-mips.c:15424 +#: elfxx-mips.c:15423 msgid "" "%B: warning: Inconsistent ISA extensions between e_flags and .MIPS.abiflags" msgstr "" -#: elfxx-mips.c:15428 +#: elfxx-mips.c:15427 msgid "" "%B: warning: Unexpected flag in the flags2 field of .MIPS.abiflags (0x%lx)" msgstr "" -#: elfxx-mips.c:15617 +#: elfxx-mips.c:15616 msgid "-mips32r2 -mfp64 (12 callee-saved)" msgstr "" -#: elfxx-mips.c:15667 elfxx-mips.c:15678 +#: elfxx-mips.c:15666 elfxx-mips.c:15677 msgid "None" msgstr "" -#: elfxx-mips.c:15669 elfxx-mips.c:15741 +#: elfxx-mips.c:15668 elfxx-mips.c:15740 msgid "Unknown" msgstr "" -#: elfxx-mips.c:15752 +#: elfxx-mips.c:15751 #, c-format msgid "Hard or soft float\n" msgstr "" -#: elfxx-mips.c:15755 +#: elfxx-mips.c:15754 #, c-format msgid "Hard float (double precision)\n" msgstr "" -#: elfxx-mips.c:15758 +#: elfxx-mips.c:15757 #, c-format msgid "Hard float (single precision)\n" msgstr "" -#: elfxx-mips.c:15761 +#: elfxx-mips.c:15760 #, c-format msgid "Soft float\n" msgstr "" -#: elfxx-mips.c:15764 +#: elfxx-mips.c:15763 #, c-format msgid "Hard float (MIPS32r2 64-bit FPU 12 callee-saved)\n" msgstr "" -#: elfxx-mips.c:15767 +#: elfxx-mips.c:15766 #, c-format msgid "Hard float (32-bit CPU, Any FPU)\n" msgstr "" -#: elfxx-mips.c:15770 +#: elfxx-mips.c:15769 #, c-format msgid "Hard float (32-bit CPU, 64-bit FPU)\n" msgstr "" -#: elfxx-mips.c:15773 +#: elfxx-mips.c:15772 #, c-format msgid "Hard float compat (32-bit CPU, 64-bit FPU)\n" msgstr "" -#: elfxx-mips.c:15805 +#: elfxx-mips.c:15804 #, c-format msgid " [abi=O32]" msgstr "" -#: elfxx-mips.c:15807 +#: elfxx-mips.c:15806 #, c-format msgid " [abi=O64]" msgstr "" -#: elfxx-mips.c:15809 +#: elfxx-mips.c:15808 #, c-format msgid " [abi=EABI32]" msgstr "" -#: elfxx-mips.c:15811 +#: elfxx-mips.c:15810 #, c-format msgid " [abi=EABI64]" msgstr "" -#: elfxx-mips.c:15813 +#: elfxx-mips.c:15812 #, c-format msgid " [abi unknown]" msgstr "" -#: elfxx-mips.c:15815 +#: elfxx-mips.c:15814 #, c-format msgid " [abi=N32]" msgstr "" -#: elfxx-mips.c:15817 +#: elfxx-mips.c:15816 #, c-format msgid " [abi=64]" msgstr "" -#: elfxx-mips.c:15819 +#: elfxx-mips.c:15818 #, c-format msgid " [no abi set]" msgstr "" -#: elfxx-mips.c:15844 +#: elfxx-mips.c:15843 #, c-format msgid " [unknown ISA]" msgstr "" -#: elfxx-mips.c:15864 +#: elfxx-mips.c:15863 #, c-format msgid " [not 32bitmode]" msgstr "" -#: elfxx-riscv.c:948 +#: elfxx-riscv.c:955 #, c-format msgid "unrecognized relocation (0x%x)" msgstr "" @@ -5372,13 +5360,12 @@ msgstr "" msgid "invalid relocation type %d" msgstr "" -#: elfxx-sparc.c:3301 -#: /Users/gingold/Repositories/fsf/binutils-gdb.git/bfd/elfnn-aarch64.c:5002 +#: elfxx-sparc.c:3301 /work/sources/binutils/current/bfd/elfnn-aarch64.c:5002 #, c-format msgid "%B: relocation %s against STT_GNU_IFUNC symbol `%s' isn't handled by %s" msgstr "" -#: elfxx-tilegx.c:4436 +#: elfxx-tilegx.c:4428 #, c-format msgid "%B: Cannot link together %s and %s objects." msgstr "" @@ -5405,7 +5392,7 @@ msgstr "" #: ieee.c:159 #, c-format -msgid "%B: string too long (%d chars, max 65535)" +msgid "%B: string too long (%ld chars, max 65535)" msgstr "" #: ieee.c:226 @@ -5425,7 +5412,7 @@ msgstr "" #: ieee.c:862 #, c-format -msgid "%B: unexpected ATN type %d in external part" +msgid "%B: unexpected ATN type %Ld in external part" msgstr "" #: ieee.c:884 @@ -5475,9 +5462,9 @@ msgstr "" msgid "%B: bad section length in ihex_read_section" msgstr "" -#: ihex.c:833 +#: ihex.c:830 #, c-format -msgid "%B: address 0x%s out of range for Intel Hex file" +msgid "%B: address %#Lx out of range for Intel Hex file" msgstr "" #: libbfd.c:799 @@ -5550,44 +5537,44 @@ msgstr "" #: mach-o.c:2531 #, c-format -msgid "unable to allocate data for load command 0x%lx" +msgid "unable to allocate data for load command %#x" msgstr "" #: mach-o.c:2636 #, c-format -msgid "unable to write unknown load command 0x%lx" +msgid "unable to write unknown load command %#x" msgstr "" #: mach-o.c:2820 #, c-format -msgid "section address (%lx) below start of segment (%lx)" +msgid "section address (%#Lx) below start of segment (%#Lx)" msgstr "" #: mach-o.c:2961 #, c-format -msgid "unable to layout unknown load command 0x%lx" +msgid "unable to layout unknown load command %#x" msgstr "" #: mach-o.c:3497 #, c-format msgid "" -"bfd_mach_o_read_section_32: overlarge alignment value: 0x%x, using 32 instead" +"bfd_mach_o_read_section_32: overlarge alignment value: %#lx, using 32 instead" msgstr "" #: mach-o.c:3540 #, c-format msgid "" -"bfd_mach_o_read_section_64: overlarge alignment value: 0x%x, using 32 instead" +"bfd_mach_o_read_section_64: overlarge alignment value: %#lx, using 32 instead" msgstr "" #: mach-o.c:3591 #, c-format -msgid "bfd_mach_o_read_symtab_symbol: unable to read %d bytes at %lu" +msgid "bfd_mach_o_read_symtab_symbol: unable to read %d bytes at %u" msgstr "" #: mach-o.c:3610 #, c-format -msgid "bfd_mach_o_read_symtab_symbol: name out of range (%lu >= %lu)" +msgid "bfd_mach_o_read_symtab_symbol: name out of range (%lu >= %u)" msgstr "" #: mach-o.c:3693 @@ -5604,27 +5591,27 @@ msgid "" "%x: setting to undefined" msgstr "" -#: mach-o.c:3786 +#: mach-o.c:3789 msgid "bfd_mach_o_read_symtab_symbols: unable to allocate memory for symbols" msgstr "" -#: mach-o.c:4759 -msgid "%B: unknown load command 0x%lx" +#: mach-o.c:4762 +msgid "%B: unknown load command %#x" msgstr "" -#: mach-o.c:4950 +#: mach-o.c:4953 #, c-format msgid "bfd_mach_o_scan: unknown architecture 0x%lx/0x%lx" msgstr "" -#: mach-o.c:5055 +#: mach-o.c:5058 #, c-format -msgid "unknown header byte-order value 0x%lx" +msgid "unknown header byte-order value %#x" msgstr "" #: merge.c:864 #, c-format -msgid "%B: access beyond end of merged section (%ld)" +msgid "%B: access beyond end of merged section (%Ld)" msgstr "" #: mmo.c:468 @@ -5639,7 +5626,7 @@ msgstr "" #: mmo.c:958 #, c-format -msgid "%B: attempt to emit contents at non-multiple-of-4 address 0x%lx\n" +msgid "%B: attempt to emit contents at non-multiple-of-4 address %#Lx" msgstr "" #: mmo.c:1255 @@ -5762,14 +5749,12 @@ msgstr "" #: mmo.c:3242 #, c-format -msgid "%B: too many initialized registers; section length %ld\n" +msgid "%B: too many initialized registers; section length %Ld" msgstr "" #: mmo.c:3247 #, c-format -msgid "" -"%B: invalid start address for initialized registers of length %ld: 0x%lx" -"%08lx\n" +msgid "%B: invalid start address for initialized registers of length %Ld: %#Lx" msgstr "" #: oasys.c:881 @@ -5952,25 +5937,36 @@ msgstr "" msgid "Partition[%d] length = 0x%.8lx (%ld)\n" msgstr "" -#: reloc.c:8064 +#: reloc.c:8067 msgid "INPUT_SECTION_FLAGS are not supported.\n" msgstr "" -#: reloc.c:8165 +#: reloc.c:8168 #, c-format msgid "%X%P: %B(%A): error: relocation for offset %V has no value\n" msgstr "" -#: reloc.c:8241 +#: reloc.c:8244 #, c-format msgid "%X%P: %B(%A): relocation \"%R\" is not supported\n" msgstr "" -#: reloc.c:8250 +#: reloc.c:8253 #, c-format msgid "%X%P: %B(%A): relocation \"%R\" returns an unrecognized value %x\n" msgstr "" +#: reloc.c:8315 +#, c-format +msgid "%B: unrecognized relocation (%#x) in section `%A'" +msgstr "" + +#. PR 21803: Suggest the most likely cause of this error. +#: reloc.c:8319 +#, c-format +msgid "Is this version of the linker - %s - out of date ?" +msgstr "" + #: rs6000-core.c:471 msgid "%B: warning core file truncated" msgstr "" @@ -6003,67 +5999,76 @@ msgstr "" #: stabs.c:279 #, c-format -msgid "%B(%A+0x%lx): Stabs entry has invalid string index." +msgid "%B(%A+%#lx): Stabs entry has invalid string index." msgstr "" #: syms.c:1079 msgid "Unsupported .stab relocation" msgstr "" -#: vms-alpha.c:652 +#: vms-alpha.c:479 +msgid "Corrupt EIHD record - size is too small" +msgstr "" + +#: vms-alpha.c:660 #, c-format msgid "Unable to read EIHS record at offset %#x" msgstr "" -#: vms-alpha.c:1164 +#: vms-alpha.c:1172 #, c-format msgid "Corrupt EGSD record: its size (%#x) is too small" msgstr "" -#: vms-alpha.c:1188 +#: vms-alpha.c:1196 #, c-format msgid "Corrupt EGSD record: size (%#x) is larger than remaining space (%#x)" msgstr "" -#: vms-alpha.c:1196 +#: vms-alpha.c:1204 #, c-format msgid "Corrupt EGSD record: size (%#x) is too small" msgstr "" -#: vms-alpha.c:1380 +#: vms-alpha.c:1333 vms-alpha.c:1349 vms-alpha.c:1389 +#, c-format +msgid "Corrupt EGSD record: its psindx field is too big (%#lx)" +msgstr "" + +#: vms-alpha.c:1418 #, c-format msgid "Unknown EGSD subtype %d" msgstr "" -#: vms-alpha.c:1413 +#: vms-alpha.c:1451 #, c-format msgid "Stack overflow (%d) in _bfd_vms_push" msgstr "" -#: vms-alpha.c:1426 +#: vms-alpha.c:1464 msgid "Stack underflow in _bfd_vms_pop" msgstr "" #. These names have not yet been added to this switch statement. -#: vms-alpha.c:1665 +#: vms-alpha.c:1706 #, c-format msgid "unknown ETIR command %d" msgstr "" -#: vms-alpha.c:1696 +#: vms-alpha.c:1737 msgid "Corrupt vms value" msgstr "" -#: vms-alpha.c:1824 +#: vms-alpha.c:1865 msgid "Corrupt ETIR record encountered" msgstr "" -#: vms-alpha.c:1881 +#: vms-alpha.c:1922 #, c-format msgid "bad section index in %s" msgstr "" -#: vms-alpha.c:1894 +#: vms-alpha.c:1935 #, c-format msgid "unsupported STA cmd %s" msgstr "" @@ -6073,1924 +6078,1959 @@ msgstr "" #. Rotate. #. Redefine symbol to current location. #. Define a literal. -#: vms-alpha.c:2074 vms-alpha.c:2105 vms-alpha.c:2196 vms-alpha.c:2354 +#: vms-alpha.c:2115 vms-alpha.c:2146 vms-alpha.c:2237 vms-alpha.c:2395 #, c-format msgid "%s: not supported" msgstr "" -#: vms-alpha.c:2080 +#: vms-alpha.c:2121 #, c-format msgid "%s: not implemented" msgstr "" -#: vms-alpha.c:2338 +#: vms-alpha.c:2379 #, c-format msgid "invalid use of %s with contexts" msgstr "" -#: vms-alpha.c:2372 +#: vms-alpha.c:2413 #, c-format msgid "reserved cmd %d" msgstr "" -#: vms-alpha.c:2457 +#: vms-alpha.c:2497 +msgid "Corrupt EEOM record - size is too small" +msgstr "" + +#: vms-alpha.c:2506 msgid "Object module NOT error-free !\n" msgstr "" -#: vms-alpha.c:3778 +#: vms-alpha.c:3830 #, c-format msgid "SEC_RELOC with no relocs in section %A" msgstr "" -#: vms-alpha.c:3830 vms-alpha.c:4043 +#: vms-alpha.c:3882 vms-alpha.c:4095 #, c-format msgid "Size error in section %A" msgstr "" -#: vms-alpha.c:3989 +#: vms-alpha.c:4041 msgid "Spurious ALPHA_R_BSR reloc" msgstr "" -#: vms-alpha.c:4030 +#: vms-alpha.c:4082 #, c-format msgid "Unhandled relocation %s" msgstr "" -#: vms-alpha.c:4323 +#: vms-alpha.c:4375 #, c-format msgid "unknown source command %d" msgstr "" -#: vms-alpha.c:4384 +#: vms-alpha.c:4436 msgid "DST__K_SET_LINUM_INCR not implemented" msgstr "" -#: vms-alpha.c:4390 +#: vms-alpha.c:4442 msgid "DST__K_SET_LINUM_INCR_W not implemented" msgstr "" -#: vms-alpha.c:4396 +#: vms-alpha.c:4448 msgid "DST__K_RESET_LINUM_INCR not implemented" msgstr "" -#: vms-alpha.c:4402 +#: vms-alpha.c:4454 msgid "DST__K_BEG_STMT_MODE not implemented" msgstr "" -#: vms-alpha.c:4408 +#: vms-alpha.c:4460 msgid "DST__K_END_STMT_MODE not implemented" msgstr "" -#: vms-alpha.c:4435 +#: vms-alpha.c:4487 msgid "DST__K_SET_PC not implemented" msgstr "" -#: vms-alpha.c:4441 +#: vms-alpha.c:4493 msgid "DST__K_SET_PC_W not implemented" msgstr "" -#: vms-alpha.c:4447 +#: vms-alpha.c:4499 msgid "DST__K_SET_PC_L not implemented" msgstr "" -#: vms-alpha.c:4453 +#: vms-alpha.c:4505 msgid "DST__K_SET_STMTNUM not implemented" msgstr "" -#: vms-alpha.c:4496 +#: vms-alpha.c:4548 #, c-format msgid "unknown line command %d" msgstr "" -#: 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 +#: vms-alpha.c:5008 vms-alpha.c:5026 vms-alpha.c:5041 vms-alpha.c:5057 +#: vms-alpha.c:5070 vms-alpha.c:5082 vms-alpha.c:5095 #, c-format msgid "Unknown reloc %s + %s" msgstr "" -#: vms-alpha.c:5098 +#: vms-alpha.c:5150 #, c-format msgid "Unknown reloc %s" msgstr "" -#: vms-alpha.c:5111 +#: vms-alpha.c:5163 msgid "Invalid section index in ETIR" msgstr "" -#: vms-alpha.c:5120 +#: vms-alpha.c:5172 msgid "Relocation for non-REL psect" msgstr "" -#: vms-alpha.c:5167 +#: vms-alpha.c:5219 #, c-format msgid "Unknown symbol in command %s" msgstr "" -#: vms-alpha.c:5577 +#: vms-alpha.c:5629 #, c-format msgid "reloc (%d) is *UNKNOWN*" msgstr "" -#: vms-alpha.c:5692 +#: vms-alpha.c:5745 #, c-format msgid " EMH %u (len=%u): " msgstr "" -#: vms-alpha.c:5697 +#: vms-alpha.c:5750 #, c-format msgid " Error: The length is less than the length of an EMH record\n" msgstr "" -#: vms-alpha.c:5708 +#: vms-alpha.c:5767 +#, c-format +msgid "" +" Error: The record length is less than the size of an EMH_MHD record\n" +msgstr "" + +#: vms-alpha.c:5770 #, c-format msgid "Module header\n" msgstr "" -#: vms-alpha.c:5709 +#: vms-alpha.c:5771 #, c-format msgid " structure level: %u\n" msgstr "" -#: vms-alpha.c:5710 +#: vms-alpha.c:5772 #, c-format msgid " max record size: %u\n" msgstr "" -#: vms-alpha.c:5713 +#: vms-alpha.c:5778 +#, c-format +msgid " Error: The module name is missing\n" +msgstr "" + +#: vms-alpha.c:5784 +#, c-format +msgid " Error: The module name is too long\n" +msgstr "" + +#: vms-alpha.c:5787 #, c-format msgid " module name : %.*s\n" msgstr "" -#: vms-alpha.c:5715 +#: vms-alpha.c:5791 +#, c-format +msgid " Error: The module version is missing\n" +msgstr "" + +#: vms-alpha.c:5797 +#, c-format +msgid " Error: The module version is too long\n" +msgstr "" + +#: vms-alpha.c:5800 #, c-format msgid " module version : %.*s\n" msgstr "" -#: vms-alpha.c:5717 +#: vms-alpha.c:5803 +#, c-format +msgid " Error: The compile date is truncated\n" +msgstr "" + +#: vms-alpha.c:5805 #, c-format msgid " compile date : %.17s\n" msgstr "" -#: vms-alpha.c:5722 +#: vms-alpha.c:5810 #, c-format msgid "Language Processor Name\n" msgstr "" -#: vms-alpha.c:5723 +#: vms-alpha.c:5811 #, c-format msgid " language name: %.*s\n" msgstr "" -#: vms-alpha.c:5730 +#: vms-alpha.c:5815 #, c-format msgid "Source Files Header\n" msgstr "" -#: vms-alpha.c:5731 +#: vms-alpha.c:5816 #, c-format msgid " file: %.*s\n" msgstr "" -#: vms-alpha.c:5738 +#: vms-alpha.c:5820 #, c-format msgid "Title Text Header\n" msgstr "" -#: vms-alpha.c:5739 +#: vms-alpha.c:5821 #, c-format msgid " title: %.*s\n" msgstr "" -#: vms-alpha.c:5746 +#: vms-alpha.c:5825 #, c-format msgid "Copyright Header\n" msgstr "" -#: vms-alpha.c:5747 +#: vms-alpha.c:5826 #, c-format msgid " copyright: %.*s\n" msgstr "" -#: vms-alpha.c:5753 +#: vms-alpha.c:5830 #, c-format msgid "unhandled emh subtype %u\n" msgstr "" -#: vms-alpha.c:5763 +#: vms-alpha.c:5840 #, c-format msgid " EEOM (len=%u):\n" msgstr "" -#: vms-alpha.c:5768 +#: vms-alpha.c:5845 #, c-format msgid " Error: The length is less than the length of an EEOM record\n" msgstr "" -#: vms-alpha.c:5772 +#: vms-alpha.c:5849 #, c-format msgid " number of cond linkage pairs: %u\n" msgstr "" -#: vms-alpha.c:5774 +#: vms-alpha.c:5851 #, c-format msgid " completion code: %u\n" msgstr "" -#: vms-alpha.c:5778 +#: vms-alpha.c:5855 #, c-format msgid " transfer addr flags: 0x%02x\n" msgstr "" -#: vms-alpha.c:5779 +#: vms-alpha.c:5856 #, c-format msgid " transfer addr psect: %u\n" msgstr "" -#: vms-alpha.c:5781 +#: vms-alpha.c:5858 #, c-format msgid " transfer address : 0x%08x\n" msgstr "" -#: vms-alpha.c:5790 +#: vms-alpha.c:5867 msgid " WEAK" msgstr "" -#: vms-alpha.c:5792 +#: vms-alpha.c:5869 msgid " DEF" msgstr "" -#: vms-alpha.c:5794 +#: vms-alpha.c:5871 msgid " UNI" msgstr "" -#: vms-alpha.c:5796 vms-alpha.c:5817 +#: vms-alpha.c:5873 vms-alpha.c:5894 msgid " REL" msgstr "" -#: vms-alpha.c:5798 +#: vms-alpha.c:5875 msgid " COMM" msgstr "" -#: vms-alpha.c:5800 +#: vms-alpha.c:5877 msgid " VECEP" msgstr "" -#: vms-alpha.c:5802 +#: vms-alpha.c:5879 msgid " NORM" msgstr "" -#: vms-alpha.c:5804 +#: vms-alpha.c:5881 msgid " QVAL" msgstr "" -#: vms-alpha.c:5811 +#: vms-alpha.c:5888 msgid " PIC" msgstr "" -#: vms-alpha.c:5813 +#: vms-alpha.c:5890 msgid " LIB" msgstr "" -#: vms-alpha.c:5815 +#: vms-alpha.c:5892 msgid " OVR" msgstr "" -#: vms-alpha.c:5819 +#: vms-alpha.c:5896 msgid " GBL" msgstr "" -#: vms-alpha.c:5821 +#: vms-alpha.c:5898 msgid " SHR" msgstr "" -#: vms-alpha.c:5823 +#: vms-alpha.c:5900 msgid " EXE" msgstr "" -#: vms-alpha.c:5825 +#: vms-alpha.c:5902 msgid " RD" msgstr "" -#: vms-alpha.c:5827 +#: vms-alpha.c:5904 msgid " WRT" msgstr "" -#: vms-alpha.c:5829 +#: vms-alpha.c:5906 msgid " VEC" msgstr "" -#: vms-alpha.c:5831 +#: vms-alpha.c:5908 msgid " NOMOD" msgstr "" -#: vms-alpha.c:5833 +#: vms-alpha.c:5910 msgid " COM" msgstr "" -#: vms-alpha.c:5835 +#: vms-alpha.c:5912 msgid " 64B" msgstr "" -#: vms-alpha.c:5844 +#: vms-alpha.c:5921 #, c-format msgid " EGSD (len=%u):\n" msgstr "" -#: vms-alpha.c:5857 +#: vms-alpha.c:5934 #, c-format msgid " EGSD entry %2u (type: %u, len: %u): " msgstr "" -#: vms-alpha.c:5863 vms-alpha.c:6114 +#: vms-alpha.c:5940 vms-alpha.c:6191 #, c-format msgid " Error: length larger than remaining space in record\n" msgstr "" -#: vms-alpha.c:5875 +#: vms-alpha.c:5952 #, c-format msgid "PSC - Program section definition\n" msgstr "" -#: vms-alpha.c:5876 vms-alpha.c:5893 +#: vms-alpha.c:5953 vms-alpha.c:5970 #, c-format msgid " alignment : 2**%u\n" msgstr "" -#: vms-alpha.c:5877 vms-alpha.c:5894 +#: vms-alpha.c:5954 vms-alpha.c:5971 #, c-format msgid " flags : 0x%04x" msgstr "" -#: vms-alpha.c:5881 +#: vms-alpha.c:5958 #, c-format msgid " alloc (len): %u (0x%08x)\n" msgstr "" -#: vms-alpha.c:5882 vms-alpha.c:5939 vms-alpha.c:5988 +#: vms-alpha.c:5959 vms-alpha.c:6016 vms-alpha.c:6065 #, c-format msgid " name : %.*s\n" msgstr "" -#: vms-alpha.c:5892 +#: vms-alpha.c:5969 #, c-format msgid "SPSC - Shared Image Program section def\n" msgstr "" -#: vms-alpha.c:5898 +#: vms-alpha.c:5975 #, c-format msgid " alloc (len) : %u (0x%08x)\n" msgstr "" -#: vms-alpha.c:5899 +#: vms-alpha.c:5976 #, c-format msgid " image offset : 0x%08x\n" msgstr "" -#: vms-alpha.c:5901 +#: vms-alpha.c:5978 #, c-format msgid " symvec offset : 0x%08x\n" msgstr "" -#: vms-alpha.c:5903 +#: vms-alpha.c:5980 #, c-format msgid " name : %.*s\n" msgstr "" -#: vms-alpha.c:5916 +#: vms-alpha.c:5993 #, c-format msgid "SYM - Global symbol definition\n" msgstr "" -#: vms-alpha.c:5917 vms-alpha.c:5977 vms-alpha.c:5998 vms-alpha.c:6017 +#: vms-alpha.c:5994 vms-alpha.c:6054 vms-alpha.c:6075 vms-alpha.c:6094 #, c-format msgid " flags: 0x%04x" msgstr "" -#: vms-alpha.c:5920 +#: vms-alpha.c:5997 #, c-format msgid " psect offset: 0x%08x\n" msgstr "" -#: vms-alpha.c:5924 +#: vms-alpha.c:6001 #, c-format msgid " code address: 0x%08x\n" msgstr "" -#: vms-alpha.c:5926 +#: vms-alpha.c:6003 #, c-format msgid " psect index for entry point : %u\n" msgstr "" -#: vms-alpha.c:5929 vms-alpha.c:6005 vms-alpha.c:6024 +#: vms-alpha.c:6006 vms-alpha.c:6082 vms-alpha.c:6101 #, c-format msgid " psect index : %u\n" msgstr "" -#: vms-alpha.c:5931 vms-alpha.c:6007 vms-alpha.c:6026 +#: vms-alpha.c:6008 vms-alpha.c:6084 vms-alpha.c:6103 #, c-format msgid " name : %.*s\n" msgstr "" -#: vms-alpha.c:5938 +#: vms-alpha.c:6015 #, c-format msgid "SYM - Global symbol reference\n" msgstr "" -#: vms-alpha.c:5950 +#: vms-alpha.c:6027 #, c-format msgid "IDC - Ident Consistency check\n" msgstr "" -#: vms-alpha.c:5951 +#: vms-alpha.c:6028 #, c-format msgid " flags : 0x%08x" msgstr "" -#: vms-alpha.c:5955 +#: vms-alpha.c:6032 #, c-format msgid " id match : %x\n" msgstr "" -#: vms-alpha.c:5957 +#: vms-alpha.c:6034 #, c-format msgid " error severity: %x\n" msgstr "" -#: vms-alpha.c:5960 +#: vms-alpha.c:6037 #, c-format msgid " entity name : %.*s\n" msgstr "" -#: vms-alpha.c:5962 +#: vms-alpha.c:6039 #, c-format msgid " object name : %.*s\n" msgstr "" -#: vms-alpha.c:5965 +#: vms-alpha.c:6042 #, c-format msgid " binary ident : 0x%08x\n" msgstr "" -#: vms-alpha.c:5968 +#: vms-alpha.c:6045 #, c-format msgid " ascii ident : %.*s\n" msgstr "" -#: vms-alpha.c:5976 +#: vms-alpha.c:6053 #, c-format msgid "SYMG - Universal symbol definition\n" msgstr "" -#: vms-alpha.c:5980 +#: vms-alpha.c:6057 #, c-format msgid " symbol vector offset: 0x%08x\n" msgstr "" -#: vms-alpha.c:5982 +#: vms-alpha.c:6059 #, c-format msgid " entry point: 0x%08x\n" msgstr "" -#: vms-alpha.c:5984 +#: vms-alpha.c:6061 #, c-format msgid " proc descr : 0x%08x\n" msgstr "" -#: vms-alpha.c:5986 +#: vms-alpha.c:6063 #, c-format msgid " psect index: %u\n" msgstr "" -#: vms-alpha.c:5997 +#: vms-alpha.c:6074 #, c-format msgid "SYMV - Vectored symbol definition\n" msgstr "" -#: vms-alpha.c:6001 +#: vms-alpha.c:6078 #, c-format msgid " vector : 0x%08x\n" msgstr "" -#: vms-alpha.c:6003 vms-alpha.c:6022 +#: vms-alpha.c:6080 vms-alpha.c:6099 #, c-format msgid " psect offset: %u\n" msgstr "" -#: vms-alpha.c:6016 +#: vms-alpha.c:6093 #, c-format msgid "SYMM - Global symbol definition with version\n" msgstr "" -#: vms-alpha.c:6020 +#: vms-alpha.c:6097 #, c-format msgid " version mask: 0x%08x\n" msgstr "" -#: vms-alpha.c:6031 +#: vms-alpha.c:6108 #, c-format msgid "unhandled egsd entry type %u\n" msgstr "" -#: vms-alpha.c:6066 +#: vms-alpha.c:6143 #, c-format msgid " linkage index: %u, replacement insn: 0x%08x\n" msgstr "" -#: vms-alpha.c:6070 +#: vms-alpha.c:6147 #, c-format msgid " psect idx 1: %u, offset 1: 0x%08x %08x\n" msgstr "" -#: vms-alpha.c:6075 +#: vms-alpha.c:6152 #, c-format msgid " psect idx 2: %u, offset 2: 0x%08x %08x\n" msgstr "" -#: vms-alpha.c:6081 +#: vms-alpha.c:6158 #, c-format msgid " psect idx 3: %u, offset 3: 0x%08x %08x\n" msgstr "" -#: vms-alpha.c:6086 +#: vms-alpha.c:6163 #, c-format msgid " global name: %.*s\n" msgstr "" -#: vms-alpha.c:6097 +#: vms-alpha.c:6174 #, c-format msgid " %s (len=%u+%u):\n" msgstr "" -#: vms-alpha.c:6119 +#: vms-alpha.c:6196 #, c-format msgid " (type: %3u, size: 4+%3u): " msgstr "" -#: vms-alpha.c:6123 +#: vms-alpha.c:6200 #, c-format msgid "STA_GBL (stack global) %.*s\n" msgstr "" -#: vms-alpha.c:6127 +#: vms-alpha.c:6204 #, c-format msgid "STA_LW (stack longword) 0x%08x\n" msgstr "" -#: vms-alpha.c:6131 +#: vms-alpha.c:6208 #, c-format msgid "STA_QW (stack quadword) 0x%08x %08x\n" msgstr "" -#: vms-alpha.c:6136 +#: vms-alpha.c:6213 #, c-format msgid "STA_PQ (stack psect base + offset)\n" msgstr "" -#: vms-alpha.c:6138 +#: vms-alpha.c:6215 #, c-format msgid " psect: %u, offset: 0x%08x %08x\n" msgstr "" -#: vms-alpha.c:6144 +#: vms-alpha.c:6221 #, c-format msgid "STA_LI (stack literal)\n" msgstr "" -#: vms-alpha.c:6147 +#: vms-alpha.c:6224 #, c-format msgid "STA_MOD (stack module)\n" msgstr "" -#: vms-alpha.c:6150 +#: vms-alpha.c:6227 #, c-format msgid "STA_CKARG (compare procedure argument)\n" msgstr "" -#: vms-alpha.c:6154 +#: vms-alpha.c:6231 #, c-format msgid "STO_B (store byte)\n" msgstr "" -#: vms-alpha.c:6157 +#: vms-alpha.c:6234 #, c-format msgid "STO_W (store word)\n" msgstr "" -#: vms-alpha.c:6160 +#: vms-alpha.c:6237 #, c-format msgid "STO_LW (store longword)\n" msgstr "" -#: vms-alpha.c:6163 +#: vms-alpha.c:6240 #, c-format msgid "STO_QW (store quadword)\n" msgstr "" -#: vms-alpha.c:6169 +#: vms-alpha.c:6246 #, c-format msgid "STO_IMMR (store immediate repeat) %u bytes\n" msgstr "" -#: vms-alpha.c:6176 +#: vms-alpha.c:6253 #, c-format msgid "STO_GBL (store global) %.*s\n" msgstr "" -#: vms-alpha.c:6180 +#: vms-alpha.c:6257 #, c-format msgid "STO_CA (store code address) %.*s\n" msgstr "" -#: vms-alpha.c:6184 +#: vms-alpha.c:6261 #, c-format msgid "STO_RB (store relative branch)\n" msgstr "" -#: vms-alpha.c:6187 +#: vms-alpha.c:6264 #, c-format msgid "STO_AB (store absolute branch)\n" msgstr "" -#: vms-alpha.c:6190 +#: vms-alpha.c:6267 #, c-format msgid "STO_OFF (store offset to psect)\n" msgstr "" -#: vms-alpha.c:6196 +#: vms-alpha.c:6273 #, c-format msgid "STO_IMM (store immediate) %u bytes\n" msgstr "" -#: vms-alpha.c:6203 +#: vms-alpha.c:6280 #, c-format msgid "STO_GBL_LW (store global longword) %.*s\n" msgstr "" -#: vms-alpha.c:6207 +#: vms-alpha.c:6284 #, c-format msgid "STO_OFF (store LP with procedure signature)\n" msgstr "" -#: vms-alpha.c:6210 +#: vms-alpha.c:6287 #, c-format msgid "STO_BR_GBL (store branch global) *todo*\n" msgstr "" -#: vms-alpha.c:6213 +#: vms-alpha.c:6290 #, c-format msgid "STO_BR_PS (store branch psect + offset) *todo*\n" msgstr "" -#: vms-alpha.c:6217 +#: vms-alpha.c:6294 #, c-format msgid "OPR_NOP (no-operation)\n" msgstr "" -#: vms-alpha.c:6220 +#: vms-alpha.c:6297 #, c-format msgid "OPR_ADD (add)\n" msgstr "" -#: vms-alpha.c:6223 +#: vms-alpha.c:6300 #, c-format -msgid "OPR_SUB (substract)\n" +msgid "OPR_SUB (subtract)\n" msgstr "" -#: vms-alpha.c:6226 +#: vms-alpha.c:6303 #, c-format msgid "OPR_MUL (multiply)\n" msgstr "" -#: vms-alpha.c:6229 +#: vms-alpha.c:6306 #, c-format msgid "OPR_DIV (divide)\n" msgstr "" -#: vms-alpha.c:6232 +#: vms-alpha.c:6309 #, c-format msgid "OPR_AND (logical and)\n" msgstr "" -#: vms-alpha.c:6235 +#: vms-alpha.c:6312 #, c-format msgid "OPR_IOR (logical inclusive or)\n" msgstr "" -#: vms-alpha.c:6238 +#: vms-alpha.c:6315 #, c-format msgid "OPR_EOR (logical exclusive or)\n" msgstr "" -#: vms-alpha.c:6241 +#: vms-alpha.c:6318 #, c-format msgid "OPR_NEG (negate)\n" msgstr "" -#: vms-alpha.c:6244 +#: vms-alpha.c:6321 #, c-format msgid "OPR_COM (complement)\n" msgstr "" -#: vms-alpha.c:6247 +#: vms-alpha.c:6324 #, c-format msgid "OPR_INSV (insert field)\n" msgstr "" -#: vms-alpha.c:6250 +#: vms-alpha.c:6327 #, c-format msgid "OPR_ASH (arithmetic shift)\n" msgstr "" -#: vms-alpha.c:6253 +#: vms-alpha.c:6330 #, c-format msgid "OPR_USH (unsigned shift)\n" msgstr "" -#: vms-alpha.c:6256 +#: vms-alpha.c:6333 #, c-format msgid "OPR_ROT (rotate)\n" msgstr "" -#: vms-alpha.c:6259 +#: vms-alpha.c:6336 #, c-format msgid "OPR_SEL (select)\n" msgstr "" -#: vms-alpha.c:6262 +#: vms-alpha.c:6339 #, c-format msgid "OPR_REDEF (redefine symbol to curr location)\n" msgstr "" -#: vms-alpha.c:6265 +#: vms-alpha.c:6342 #, c-format msgid "OPR_REDEF (define a literal)\n" msgstr "" -#: vms-alpha.c:6269 +#: vms-alpha.c:6346 #, c-format msgid "STC_LP (store cond linkage pair)\n" msgstr "" -#: vms-alpha.c:6273 +#: vms-alpha.c:6350 #, c-format msgid "STC_LP_PSB (store cond linkage pair + signature)\n" msgstr "" -#: vms-alpha.c:6275 +#: vms-alpha.c:6352 #, c-format msgid " linkage index: %u, procedure: %.*s\n" msgstr "" -#: vms-alpha.c:6278 +#: vms-alpha.c:6355 #, c-format msgid " signature: %.*s\n" msgstr "" -#: vms-alpha.c:6281 +#: vms-alpha.c:6358 #, c-format msgid "STC_GBL (store cond global)\n" msgstr "" -#: vms-alpha.c:6283 +#: vms-alpha.c:6360 #, c-format msgid " linkage index: %u, global: %.*s\n" msgstr "" -#: vms-alpha.c:6287 +#: vms-alpha.c:6364 #, c-format msgid "STC_GCA (store cond code address)\n" msgstr "" -#: vms-alpha.c:6289 +#: vms-alpha.c:6366 #, c-format msgid " linkage index: %u, procedure name: %.*s\n" msgstr "" -#: vms-alpha.c:6293 +#: vms-alpha.c:6370 #, c-format msgid "STC_PS (store cond psect + offset)\n" msgstr "" -#: vms-alpha.c:6296 +#: vms-alpha.c:6373 #, c-format msgid " linkage index: %u, psect: %u, offset: 0x%08x %08x\n" msgstr "" -#: vms-alpha.c:6303 +#: vms-alpha.c:6380 #, c-format msgid "STC_NOP_GBL (store cond NOP at global addr)\n" msgstr "" -#: vms-alpha.c:6307 +#: vms-alpha.c:6384 #, c-format msgid "STC_NOP_PS (store cond NOP at psect + offset)\n" msgstr "" -#: vms-alpha.c:6311 +#: vms-alpha.c:6388 #, c-format msgid "STC_BSR_GBL (store cond BSR at global addr)\n" msgstr "" -#: vms-alpha.c:6315 +#: vms-alpha.c:6392 #, c-format msgid "STC_BSR_PS (store cond BSR at psect + offset)\n" msgstr "" -#: vms-alpha.c:6319 +#: vms-alpha.c:6396 #, c-format msgid "STC_LDA_GBL (store cond LDA at global addr)\n" msgstr "" -#: vms-alpha.c:6323 +#: vms-alpha.c:6400 #, c-format msgid "STC_LDA_PS (store cond LDA at psect + offset)\n" msgstr "" -#: vms-alpha.c:6327 +#: vms-alpha.c:6404 #, c-format msgid "STC_BOH_GBL (store cond BOH at global addr)\n" msgstr "" -#: vms-alpha.c:6331 +#: vms-alpha.c:6408 #, c-format msgid "STC_BOH_PS (store cond BOH at psect + offset)\n" msgstr "" -#: vms-alpha.c:6336 +#: vms-alpha.c:6413 #, c-format msgid "STC_NBH_GBL (store cond or hint at global addr)\n" msgstr "" -#: vms-alpha.c:6340 +#: vms-alpha.c:6417 #, c-format msgid "STC_NBH_PS (store cond or hint at psect + offset)\n" msgstr "" -#: vms-alpha.c:6344 +#: vms-alpha.c:6421 #, c-format msgid "CTL_SETRB (set relocation base)\n" msgstr "" -#: vms-alpha.c:6350 +#: vms-alpha.c:6427 #, c-format msgid "CTL_AUGRB (augment relocation base) %u\n" msgstr "" -#: vms-alpha.c:6354 +#: vms-alpha.c:6431 #, c-format msgid "CTL_DFLOC (define location)\n" msgstr "" -#: vms-alpha.c:6357 +#: vms-alpha.c:6434 #, c-format msgid "CTL_STLOC (set location)\n" msgstr "" -#: vms-alpha.c:6360 +#: vms-alpha.c:6437 #, c-format msgid "CTL_STKDL (stack defined location)\n" msgstr "" -#: vms-alpha.c:6363 vms-alpha.c:6787 vms-alpha.c:6913 +#: vms-alpha.c:6440 vms-alpha.c:6864 vms-alpha.c:6990 #, c-format msgid "*unhandled*\n" msgstr "" -#: vms-alpha.c:6393 vms-alpha.c:6432 +#: vms-alpha.c:6470 vms-alpha.c:6509 #, c-format msgid "cannot read GST record length\n" msgstr "" #. Ill-formed. -#: vms-alpha.c:6414 +#: vms-alpha.c:6491 #, c-format msgid "cannot find EMH in first GST record\n" msgstr "" -#: vms-alpha.c:6440 +#: vms-alpha.c:6517 #, c-format msgid "cannot read GST record header\n" msgstr "" -#: vms-alpha.c:6453 +#: vms-alpha.c:6530 #, c-format msgid " corrupted GST\n" msgstr "" -#: vms-alpha.c:6461 +#: vms-alpha.c:6538 #, c-format msgid "cannot read GST record\n" msgstr "" -#: vms-alpha.c:6490 +#: vms-alpha.c:6567 #, c-format msgid " unhandled EOBJ record type %u\n" msgstr "" -#: vms-alpha.c:6514 +#: vms-alpha.c:6591 #, c-format msgid " bitcount: %u, base addr: 0x%08x\n" msgstr "" -#: vms-alpha.c:6528 +#: vms-alpha.c:6605 #, c-format msgid " bitmap: 0x%08x (count: %u):\n" msgstr "" -#: vms-alpha.c:6535 +#: vms-alpha.c:6612 #, c-format msgid " %08x" msgstr "" -#: vms-alpha.c:6561 +#: vms-alpha.c:6638 #, c-format msgid " image %u (%u entries)\n" msgstr "" -#: vms-alpha.c:6567 +#: vms-alpha.c:6644 #, c-format msgid " offset: 0x%08x, val: 0x%08x\n" msgstr "" -#: vms-alpha.c:6589 +#: vms-alpha.c:6666 #, c-format msgid " image %u (%u entries), offsets:\n" msgstr "" -#: vms-alpha.c:6596 +#: vms-alpha.c:6673 #, c-format msgid " 0x%08x" msgstr "" #. 64 bits. -#: vms-alpha.c:6718 +#: vms-alpha.c:6795 #, c-format msgid "64 bits *unhandled*\n" msgstr "" -#: vms-alpha.c:6723 +#: vms-alpha.c:6800 #, c-format msgid "class: %u, dtype: %u, length: %u, pointer: 0x%08x\n" msgstr "" -#: vms-alpha.c:6734 +#: vms-alpha.c:6811 #, c-format msgid "non-contiguous array of %s\n" msgstr "" -#: vms-alpha.c:6739 +#: vms-alpha.c:6816 #, c-format msgid "dimct: %u, aflags: 0x%02x, digits: %u, scale: %u\n" msgstr "" -#: vms-alpha.c:6744 +#: vms-alpha.c:6821 #, c-format msgid "arsize: %u, a0: 0x%08x\n" msgstr "" -#: vms-alpha.c:6748 +#: vms-alpha.c:6825 #, c-format msgid "Strides:\n" msgstr "" -#: vms-alpha.c:6758 +#: vms-alpha.c:6835 #, c-format msgid "Bounds:\n" msgstr "" -#: vms-alpha.c:6764 +#: vms-alpha.c:6841 #, c-format msgid "[%u]: Lower: %u, upper: %u\n" msgstr "" -#: vms-alpha.c:6776 +#: vms-alpha.c:6853 #, c-format msgid "unaligned bit-string of %s\n" msgstr "" -#: vms-alpha.c:6781 +#: vms-alpha.c:6858 #, c-format msgid "base: %u, pos: %u\n" msgstr "" -#: vms-alpha.c:6802 +#: vms-alpha.c:6879 #, c-format msgid "vflags: 0x%02x, value: 0x%08x " msgstr "" -#: vms-alpha.c:6808 +#: vms-alpha.c:6885 #, c-format msgid "(no value)\n" msgstr "" -#: vms-alpha.c:6811 +#: vms-alpha.c:6888 #, c-format msgid "(not active)\n" msgstr "" -#: vms-alpha.c:6814 +#: vms-alpha.c:6891 #, c-format msgid "(not allocated)\n" msgstr "" -#: vms-alpha.c:6817 +#: vms-alpha.c:6894 #, c-format msgid "(descriptor)\n" msgstr "" -#: vms-alpha.c:6821 +#: vms-alpha.c:6898 #, c-format msgid "(trailing value)\n" msgstr "" -#: vms-alpha.c:6824 +#: vms-alpha.c:6901 #, c-format msgid "(value spec follows)\n" msgstr "" -#: vms-alpha.c:6827 +#: vms-alpha.c:6904 #, c-format msgid "(at bit offset %u)\n" msgstr "" -#: vms-alpha.c:6831 +#: vms-alpha.c:6908 #, c-format msgid "(reg: %u, disp: %u, indir: %u, kind: " msgstr "" -#: vms-alpha.c:6838 +#: vms-alpha.c:6915 msgid "literal" msgstr "" -#: vms-alpha.c:6841 +#: vms-alpha.c:6918 msgid "address" msgstr "" -#: vms-alpha.c:6844 +#: vms-alpha.c:6921 msgid "desc" msgstr "" -#: vms-alpha.c:6847 +#: vms-alpha.c:6924 msgid "reg" msgstr "" -#: vms-alpha.c:6864 +#: vms-alpha.c:6941 #, c-format msgid "len: %2u, kind: %2u " msgstr "" -#: vms-alpha.c:6870 +#: vms-alpha.c:6947 #, c-format msgid "atomic, type=0x%02x %s\n" msgstr "" -#: vms-alpha.c:6874 +#: vms-alpha.c:6951 #, c-format msgid "indirect, defined at 0x%08x\n" msgstr "" -#: vms-alpha.c:6878 +#: vms-alpha.c:6955 #, c-format msgid "typed pointer\n" msgstr "" -#: vms-alpha.c:6882 +#: vms-alpha.c:6959 #, c-format msgid "pointer\n" msgstr "" -#: vms-alpha.c:6890 +#: vms-alpha.c:6967 #, c-format msgid "array, dim: %u, bitmap: " msgstr "" -#: vms-alpha.c:6897 +#: vms-alpha.c:6974 #, c-format msgid "array descriptor:\n" msgstr "" -#: vms-alpha.c:6904 +#: vms-alpha.c:6981 #, c-format msgid "type spec for element:\n" msgstr "" -#: vms-alpha.c:6906 +#: vms-alpha.c:6983 #, c-format msgid "type spec for subscript %u:\n" msgstr "" -#: vms-alpha.c:6924 +#: vms-alpha.c:7001 #, c-format msgid "Debug symbol table:\n" msgstr "" -#: vms-alpha.c:6935 +#: vms-alpha.c:7012 #, c-format msgid "cannot read DST header\n" msgstr "" -#: vms-alpha.c:6941 +#: vms-alpha.c:7018 #, c-format msgid " type: %3u, len: %3u (at 0x%08x): " msgstr "" -#: vms-alpha.c:6955 +#: vms-alpha.c:7032 #, c-format msgid "cannot read DST symbol\n" msgstr "" -#: vms-alpha.c:6998 +#: vms-alpha.c:7075 #, c-format msgid "standard data: %s\n" msgstr "" -#: vms-alpha.c:7001 vms-alpha.c:7089 +#: vms-alpha.c:7078 vms-alpha.c:7166 #, c-format msgid " name: %.*s\n" msgstr "" -#: vms-alpha.c:7008 +#: vms-alpha.c:7085 #, c-format msgid "modbeg\n" msgstr "" -#: vms-alpha.c:7010 +#: vms-alpha.c:7087 #, c-format msgid " flags: %d, language: %u, major: %u, minor: %u\n" msgstr "" -#: vms-alpha.c:7016 vms-alpha.c:7290 +#: vms-alpha.c:7093 vms-alpha.c:7367 #, c-format msgid " module name: %.*s\n" msgstr "" -#: vms-alpha.c:7019 +#: vms-alpha.c:7096 #, c-format msgid " compiler : %.*s\n" msgstr "" -#: vms-alpha.c:7024 +#: vms-alpha.c:7101 #, c-format msgid "modend\n" msgstr "" -#: vms-alpha.c:7031 +#: vms-alpha.c:7108 msgid "rtnbeg\n" msgstr "" -#: vms-alpha.c:7033 +#: vms-alpha.c:7110 #, c-format msgid " flags: %u, address: 0x%08x, pd-address: 0x%08x\n" msgstr "" -#: vms-alpha.c:7038 +#: vms-alpha.c:7115 #, c-format msgid " routine name: %.*s\n" msgstr "" -#: vms-alpha.c:7046 +#: vms-alpha.c:7123 #, c-format msgid "rtnend: size 0x%08x\n" msgstr "" -#: vms-alpha.c:7054 +#: vms-alpha.c:7131 #, c-format msgid "prolog: bkpt address 0x%08x\n" msgstr "" -#: vms-alpha.c:7063 +#: vms-alpha.c:7140 #, c-format msgid "epilog: flags: %u, count: %u\n" msgstr "" -#: vms-alpha.c:7073 +#: vms-alpha.c:7150 #, c-format msgid "blkbeg: address: 0x%08x, name: %.*s\n" msgstr "" -#: vms-alpha.c:7082 +#: vms-alpha.c:7159 #, c-format msgid "blkend: size: 0x%08x\n" msgstr "" -#: vms-alpha.c:7088 +#: vms-alpha.c:7165 #, c-format msgid "typspec (len: %u)\n" msgstr "" -#: vms-alpha.c:7095 +#: vms-alpha.c:7172 #, c-format msgid "septyp, name: %.*s\n" msgstr "" -#: vms-alpha.c:7104 +#: vms-alpha.c:7181 #, c-format msgid "recbeg: name: %.*s\n" msgstr "" -#: vms-alpha.c:7106 +#: vms-alpha.c:7183 #, c-format msgid " len: %u bits\n" msgstr "" -#: vms-alpha.c:7111 +#: vms-alpha.c:7188 #, c-format msgid "recend\n" msgstr "" -#: vms-alpha.c:7115 +#: vms-alpha.c:7192 #, c-format msgid "enumbeg, len: %u, name: %.*s\n" msgstr "" -#: vms-alpha.c:7119 +#: vms-alpha.c:7196 #, c-format msgid "enumelt, name: %.*s\n" msgstr "" -#: vms-alpha.c:7123 +#: vms-alpha.c:7200 #, c-format msgid "enumend\n" msgstr "" -#: vms-alpha.c:7128 +#: vms-alpha.c:7205 #, c-format msgid "label, name: %.*s\n" msgstr "" -#: vms-alpha.c:7130 +#: vms-alpha.c:7207 #, c-format msgid " address: 0x%08x\n" msgstr "" -#: vms-alpha.c:7140 +#: vms-alpha.c:7217 #, c-format msgid "discontiguous range (nbr: %u)\n" msgstr "" -#: vms-alpha.c:7143 +#: vms-alpha.c:7220 #, c-format msgid " address: 0x%08x, size: %u\n" msgstr "" -#: vms-alpha.c:7153 +#: vms-alpha.c:7230 #, c-format msgid "line num (len: %u)\n" msgstr "" -#: vms-alpha.c:7170 +#: vms-alpha.c:7247 #, c-format msgid "delta_pc_w %u\n" msgstr "" -#: vms-alpha.c:7177 +#: vms-alpha.c:7254 #, c-format msgid "incr_linum(b): +%u\n" msgstr "" -#: vms-alpha.c:7183 +#: vms-alpha.c:7260 #, c-format msgid "incr_linum_w: +%u\n" msgstr "" -#: vms-alpha.c:7189 +#: vms-alpha.c:7266 #, c-format msgid "incr_linum_l: +%u\n" msgstr "" -#: vms-alpha.c:7195 +#: vms-alpha.c:7272 #, c-format msgid "set_line_num(w) %u\n" msgstr "" -#: vms-alpha.c:7200 +#: vms-alpha.c:7277 #, c-format msgid "set_line_num_b %u\n" msgstr "" -#: vms-alpha.c:7205 +#: vms-alpha.c:7282 #, c-format msgid "set_line_num_l %u\n" msgstr "" -#: vms-alpha.c:7210 +#: vms-alpha.c:7287 #, c-format msgid "set_abs_pc: 0x%08x\n" msgstr "" -#: vms-alpha.c:7214 +#: vms-alpha.c:7291 #, c-format msgid "delta_pc_l: +0x%08x\n" msgstr "" -#: vms-alpha.c:7219 +#: vms-alpha.c:7296 #, c-format msgid "term(b): 0x%02x" msgstr "" -#: vms-alpha.c:7221 +#: vms-alpha.c:7298 #, c-format msgid " pc: 0x%08x\n" msgstr "" -#: vms-alpha.c:7226 +#: vms-alpha.c:7303 #, c-format msgid "term_w: 0x%04x" msgstr "" -#: vms-alpha.c:7228 +#: vms-alpha.c:7305 #, c-format msgid " pc: 0x%08x\n" msgstr "" -#: vms-alpha.c:7234 +#: vms-alpha.c:7311 #, c-format msgid "delta pc +%-4d" msgstr "" -#: vms-alpha.c:7238 +#: vms-alpha.c:7315 #, c-format msgid " pc: 0x%08x line: %5u\n" msgstr "" -#: vms-alpha.c:7243 +#: vms-alpha.c:7320 #, c-format msgid " *unhandled* cmd %u\n" msgstr "" -#: vms-alpha.c:7258 +#: vms-alpha.c:7335 #, c-format msgid "source (len: %u)\n" msgstr "" -#: vms-alpha.c:7273 +#: vms-alpha.c:7350 #, c-format msgid " declfile: len: %u, flags: %u, fileid: %u\n" msgstr "" -#: vms-alpha.c:7278 +#: vms-alpha.c:7355 #, c-format msgid " rms: cdt: 0x%08x %08x, ebk: 0x%08x, ffb: 0x%04x, rfo: %u\n" msgstr "" -#: vms-alpha.c:7287 +#: vms-alpha.c:7364 #, c-format msgid " filename : %.*s\n" msgstr "" -#: vms-alpha.c:7296 +#: vms-alpha.c:7373 #, c-format msgid " setfile %u\n" msgstr "" -#: vms-alpha.c:7301 vms-alpha.c:7306 +#: vms-alpha.c:7378 vms-alpha.c:7383 #, c-format msgid " setrec %u\n" msgstr "" -#: vms-alpha.c:7311 vms-alpha.c:7316 +#: vms-alpha.c:7388 vms-alpha.c:7393 #, c-format msgid " setlnum %u\n" msgstr "" -#: vms-alpha.c:7321 vms-alpha.c:7326 +#: vms-alpha.c:7398 vms-alpha.c:7403 #, c-format msgid " deflines %u\n" msgstr "" -#: vms-alpha.c:7330 +#: vms-alpha.c:7407 #, c-format msgid " formfeed\n" msgstr "" -#: vms-alpha.c:7334 +#: vms-alpha.c:7411 #, c-format msgid " *unhandled* cmd %u\n" msgstr "" -#: vms-alpha.c:7346 +#: vms-alpha.c:7423 #, c-format msgid "*unhandled* dst type %u\n" msgstr "" -#: vms-alpha.c:7378 +#: vms-alpha.c:7455 #, c-format msgid "cannot read EIHD\n" msgstr "" -#: vms-alpha.c:7382 +#: vms-alpha.c:7459 #, c-format msgid "EIHD: (size: %u, nbr blocks: %u)\n" msgstr "" -#: vms-alpha.c:7386 +#: vms-alpha.c:7463 #, c-format msgid " majorid: %u, minorid: %u\n" msgstr "" -#: vms-alpha.c:7394 +#: vms-alpha.c:7471 msgid "executable" msgstr "" -#: vms-alpha.c:7397 +#: vms-alpha.c:7474 msgid "linkable image" msgstr "" -#: vms-alpha.c:7404 +#: vms-alpha.c:7481 #, c-format msgid " image type: %u (%s)" msgstr "" -#: vms-alpha.c:7410 +#: vms-alpha.c:7487 msgid "native" msgstr "" -#: vms-alpha.c:7413 +#: vms-alpha.c:7490 msgid "CLI" msgstr "" -#: vms-alpha.c:7420 +#: vms-alpha.c:7497 #, c-format msgid ", subtype: %u (%s)\n" msgstr "" -#: vms-alpha.c:7427 +#: vms-alpha.c:7504 #, c-format msgid " offsets: isd: %u, activ: %u, symdbg: %u, imgid: %u, patch: %u\n" msgstr "" -#: vms-alpha.c:7431 +#: vms-alpha.c:7508 #, c-format msgid " fixup info rva: " msgstr "" -#: vms-alpha.c:7433 +#: vms-alpha.c:7510 #, c-format msgid ", symbol vector rva: " msgstr "" -#: vms-alpha.c:7436 +#: vms-alpha.c:7513 #, c-format msgid "" "\n" " version array off: %u\n" msgstr "" -#: vms-alpha.c:7441 +#: vms-alpha.c:7518 #, c-format msgid " img I/O count: %u, nbr channels: %u, req pri: %08x%08x\n" msgstr "" -#: vms-alpha.c:7447 +#: vms-alpha.c:7524 #, c-format msgid " linker flags: %08x:" msgstr "" -#: vms-alpha.c:7478 +#: vms-alpha.c:7555 #, c-format msgid " ident: 0x%08x, sysver: 0x%08x, match ctrl: %u, symvect_size: %u\n" msgstr "" -#: vms-alpha.c:7484 +#: vms-alpha.c:7561 #, c-format msgid " BPAGE: %u" msgstr "" -#: vms-alpha.c:7491 +#: vms-alpha.c:7568 #, c-format msgid ", ext fixup offset: %u, no_opt psect off: %u" msgstr "" -#: vms-alpha.c:7494 +#: vms-alpha.c:7571 #, c-format msgid ", alias: %u\n" msgstr "" -#: vms-alpha.c:7502 +#: vms-alpha.c:7579 #, c-format msgid "system version array information:\n" msgstr "" -#: vms-alpha.c:7506 +#: vms-alpha.c:7583 #, c-format msgid "cannot read EIHVN header\n" msgstr "" -#: vms-alpha.c:7516 +#: vms-alpha.c:7593 #, c-format msgid "cannot read EIHVN version\n" msgstr "" -#: vms-alpha.c:7519 +#: vms-alpha.c:7596 #, c-format msgid " %02u " msgstr "" -#: vms-alpha.c:7523 +#: vms-alpha.c:7600 msgid "BASE_IMAGE " msgstr "" -#: vms-alpha.c:7526 +#: vms-alpha.c:7603 msgid "MEMORY_MANAGEMENT" msgstr "" -#: vms-alpha.c:7529 +#: vms-alpha.c:7606 msgid "IO " msgstr "" -#: vms-alpha.c:7532 +#: vms-alpha.c:7609 msgid "FILES_VOLUMES " msgstr "" -#: vms-alpha.c:7535 +#: vms-alpha.c:7612 msgid "PROCESS_SCHED " msgstr "" -#: vms-alpha.c:7538 +#: vms-alpha.c:7615 msgid "SYSGEN " msgstr "" -#: vms-alpha.c:7541 +#: vms-alpha.c:7618 msgid "CLUSTERS_LOCKMGR " msgstr "" -#: vms-alpha.c:7544 +#: vms-alpha.c:7621 msgid "LOGICAL_NAMES " msgstr "" -#: vms-alpha.c:7547 +#: vms-alpha.c:7624 msgid "SECURITY " msgstr "" -#: vms-alpha.c:7550 +#: vms-alpha.c:7627 msgid "IMAGE_ACTIVATOR " msgstr "" -#: vms-alpha.c:7553 +#: vms-alpha.c:7630 msgid "NETWORKS " msgstr "" -#: vms-alpha.c:7556 +#: vms-alpha.c:7633 msgid "COUNTERS " msgstr "" -#: vms-alpha.c:7559 +#: vms-alpha.c:7636 msgid "STABLE " msgstr "" -#: vms-alpha.c:7562 +#: vms-alpha.c:7639 msgid "MISC " msgstr "" -#: vms-alpha.c:7565 +#: vms-alpha.c:7642 msgid "CPU " msgstr "" -#: vms-alpha.c:7568 +#: vms-alpha.c:7645 msgid "VOLATILE " msgstr "" -#: vms-alpha.c:7571 +#: vms-alpha.c:7648 msgid "SHELL " msgstr "" -#: vms-alpha.c:7574 +#: vms-alpha.c:7651 msgid "POSIX " msgstr "" -#: vms-alpha.c:7577 +#: vms-alpha.c:7654 msgid "MULTI_PROCESSING " msgstr "" -#: vms-alpha.c:7580 +#: vms-alpha.c:7657 msgid "GALAXY " msgstr "" -#: vms-alpha.c:7583 +#: vms-alpha.c:7660 msgid "*unknown* " msgstr "" -#: vms-alpha.c:7599 vms-alpha.c:7874 +#: vms-alpha.c:7676 vms-alpha.c:7951 #, c-format msgid "cannot read EIHA\n" msgstr "" -#: vms-alpha.c:7602 +#: vms-alpha.c:7679 #, c-format msgid "Image activation: (size=%u)\n" msgstr "" -#: vms-alpha.c:7605 +#: vms-alpha.c:7682 #, c-format msgid " First address : 0x%08x 0x%08x\n" msgstr "" -#: vms-alpha.c:7609 +#: vms-alpha.c:7686 #, c-format msgid " Second address: 0x%08x 0x%08x\n" msgstr "" -#: vms-alpha.c:7613 +#: vms-alpha.c:7690 #, c-format msgid " Third address : 0x%08x 0x%08x\n" msgstr "" -#: vms-alpha.c:7617 +#: vms-alpha.c:7694 #, c-format msgid " Fourth address: 0x%08x 0x%08x\n" msgstr "" -#: vms-alpha.c:7621 +#: vms-alpha.c:7698 #, c-format msgid " Shared image : 0x%08x 0x%08x\n" msgstr "" -#: vms-alpha.c:7632 +#: vms-alpha.c:7709 #, c-format msgid "cannot read EIHI\n" msgstr "" -#: vms-alpha.c:7636 +#: vms-alpha.c:7713 #, c-format msgid "Image identification: (major: %u, minor: %u)\n" msgstr "" -#: vms-alpha.c:7639 +#: vms-alpha.c:7716 #, c-format msgid " image name : %.*s\n" msgstr "" -#: vms-alpha.c:7641 +#: vms-alpha.c:7718 #, c-format msgid " link time : %s\n" msgstr "" -#: vms-alpha.c:7643 +#: vms-alpha.c:7720 #, c-format msgid " image ident : %.*s\n" msgstr "" -#: vms-alpha.c:7645 +#: vms-alpha.c:7722 #, c-format msgid " linker ident : %.*s\n" msgstr "" -#: vms-alpha.c:7647 +#: vms-alpha.c:7724 #, c-format msgid " image build ident: %.*s\n" msgstr "" -#: vms-alpha.c:7657 +#: vms-alpha.c:7734 #, c-format msgid "cannot read EIHS\n" msgstr "" -#: vms-alpha.c:7661 +#: vms-alpha.c:7738 #, c-format msgid "Image symbol & debug table: (major: %u, minor: %u)\n" msgstr "" -#: vms-alpha.c:7667 +#: vms-alpha.c:7744 #, c-format msgid " debug symbol table : vbn: %u, size: %u (0x%x)\n" msgstr "" -#: vms-alpha.c:7672 +#: vms-alpha.c:7749 #, c-format msgid " global symbol table: vbn: %u, records: %u\n" msgstr "" -#: vms-alpha.c:7677 +#: vms-alpha.c:7754 #, c-format msgid " debug module table : vbn: %u, size: %u\n" msgstr "" -#: vms-alpha.c:7690 +#: vms-alpha.c:7767 #, c-format msgid "cannot read EISD\n" msgstr "" -#: vms-alpha.c:7701 +#: vms-alpha.c:7778 #, c-format msgid "" "Image section descriptor: (major: %u, minor: %u, size: %u, offset: %u)\n" msgstr "" -#: vms-alpha.c:7709 +#: vms-alpha.c:7786 #, c-format msgid " section: base: 0x%08x%08x size: 0x%08x\n" msgstr "" -#: vms-alpha.c:7714 +#: vms-alpha.c:7791 #, c-format msgid " flags: 0x%04x" msgstr "" -#: vms-alpha.c:7752 +#: vms-alpha.c:7829 #, c-format msgid " vbn: %u, pfc: %u, matchctl: %u type: %u (" msgstr "" -#: vms-alpha.c:7758 +#: vms-alpha.c:7835 msgid "NORMAL" msgstr "" -#: vms-alpha.c:7761 +#: vms-alpha.c:7838 msgid "SHRFXD" msgstr "" -#: vms-alpha.c:7764 +#: vms-alpha.c:7841 msgid "PRVFXD" msgstr "" -#: vms-alpha.c:7767 +#: vms-alpha.c:7844 msgid "SHRPIC" msgstr "" -#: vms-alpha.c:7770 +#: vms-alpha.c:7847 msgid "PRVPIC" msgstr "" -#: vms-alpha.c:7773 +#: vms-alpha.c:7850 msgid "USRSTACK" msgstr "" -#: vms-alpha.c:7779 +#: vms-alpha.c:7856 msgid ")\n" msgstr "" -#: vms-alpha.c:7782 +#: vms-alpha.c:7859 #, c-format msgid " ident: 0x%08x, name: %.*s\n" msgstr "" -#: vms-alpha.c:7792 +#: vms-alpha.c:7869 #, c-format msgid "cannot read DMT\n" msgstr "" -#: vms-alpha.c:7796 +#: vms-alpha.c:7873 #, c-format msgid "Debug module table:\n" msgstr "" -#: vms-alpha.c:7805 +#: vms-alpha.c:7882 #, c-format msgid "cannot read DMT header\n" msgstr "" -#: vms-alpha.c:7811 +#: vms-alpha.c:7888 #, c-format msgid " module offset: 0x%08x, size: 0x%08x, (%u psects)\n" msgstr "" -#: vms-alpha.c:7821 +#: vms-alpha.c:7898 #, c-format msgid "cannot read DMT psect\n" msgstr "" -#: vms-alpha.c:7825 +#: vms-alpha.c:7902 #, c-format msgid " psect start: 0x%08x, length: %u\n" msgstr "" -#: vms-alpha.c:7838 +#: vms-alpha.c:7915 #, c-format msgid "cannot read DST\n" msgstr "" -#: vms-alpha.c:7848 +#: vms-alpha.c:7925 #, c-format msgid "cannot read GST\n" msgstr "" -#: vms-alpha.c:7852 +#: vms-alpha.c:7929 #, c-format msgid "Global symbol table:\n" msgstr "" -#: vms-alpha.c:7881 +#: vms-alpha.c:7958 #, c-format msgid "Image activator fixup: (major: %u, minor: %u)\n" msgstr "" -#: vms-alpha.c:7885 +#: vms-alpha.c:7962 #, c-format msgid " iaflink : 0x%08x %08x\n" msgstr "" -#: vms-alpha.c:7889 +#: vms-alpha.c:7966 #, c-format msgid " fixuplnk: 0x%08x %08x\n" msgstr "" -#: vms-alpha.c:7892 +#: vms-alpha.c:7969 #, c-format msgid " size : %u\n" msgstr "" -#: vms-alpha.c:7894 +#: vms-alpha.c:7971 #, c-format msgid " flags: 0x%08x\n" msgstr "" -#: vms-alpha.c:7899 +#: vms-alpha.c:7976 #, c-format msgid " qrelfixoff: %5u, lrelfixoff: %5u\n" msgstr "" -#: vms-alpha.c:7904 +#: vms-alpha.c:7981 #, c-format msgid " qdotadroff: %5u, ldotadroff: %5u\n" msgstr "" -#: vms-alpha.c:7909 +#: vms-alpha.c:7986 #, c-format msgid " codeadroff: %5u, lpfixoff : %5u\n" msgstr "" -#: vms-alpha.c:7912 +#: vms-alpha.c:7989 #, c-format msgid " chgprtoff : %5u\n" msgstr "" -#: vms-alpha.c:7916 +#: vms-alpha.c:7993 #, c-format msgid " shlstoff : %5u, shrimgcnt : %5u\n" msgstr "" -#: vms-alpha.c:7919 +#: vms-alpha.c:7996 #, c-format msgid " shlextra : %5u, permctx : %5u\n" msgstr "" -#: vms-alpha.c:7922 +#: vms-alpha.c:7999 #, c-format msgid " base_va : 0x%08x\n" msgstr "" -#: vms-alpha.c:7924 +#: vms-alpha.c:8001 #, c-format msgid " lppsbfixoff: %5u\n" msgstr "" -#: vms-alpha.c:7932 +#: vms-alpha.c:8009 #, c-format msgid " Shareable images:\n" msgstr "" -#: vms-alpha.c:7937 +#: vms-alpha.c:8014 #, c-format msgid " %u: size: %u, flags: 0x%02x, name: %.*s\n" msgstr "" -#: vms-alpha.c:7944 +#: vms-alpha.c:8021 #, c-format msgid " quad-word relocation fixups:\n" msgstr "" -#: vms-alpha.c:7949 +#: vms-alpha.c:8026 #, c-format msgid " long-word relocation fixups:\n" msgstr "" -#: vms-alpha.c:7954 +#: vms-alpha.c:8031 #, c-format msgid " quad-word .address reference fixups:\n" msgstr "" -#: vms-alpha.c:7959 +#: vms-alpha.c:8036 #, c-format msgid " long-word .address reference fixups:\n" msgstr "" -#: vms-alpha.c:7964 +#: vms-alpha.c:8041 #, c-format msgid " Code Address Reference Fixups:\n" msgstr "" -#: vms-alpha.c:7969 +#: vms-alpha.c:8046 #, c-format msgid " Linkage Pairs Reference Fixups:\n" msgstr "" -#: vms-alpha.c:7978 +#: vms-alpha.c:8055 #, c-format msgid " Change Protection (%u entries):\n" msgstr "" -#: vms-alpha.c:7984 +#: vms-alpha.c:8061 #, c-format msgid " base: 0x%08x %08x, size: 0x%08x, prot: 0x%08x " msgstr "" #. FIXME: we do not yet support relocatable link. It is not obvious #. how to do it for debug infos. -#: vms-alpha.c:8824 +#: vms-alpha.c:8901 msgid "%P: relocatable link is not supported\n" msgstr "" -#: vms-alpha.c:8895 +#: vms-alpha.c:8972 #, c-format msgid "%P: multiple entry points: in modules %B and %B\n" msgstr "" @@ -8033,12 +8073,12 @@ msgstr "" #: xcofflink.c:1502 #, c-format -msgid "%B: bad XTY_ER symbol `%s': class %d scnum %d scnlen %d" +msgid "%B: bad XTY_ER symbol `%s': class %d scnum %d scnlen %Ld" msgstr "" #: xcofflink.c:1532 #, c-format -msgid "%B: XMC_TC0 symbol `%s' is class %d scnlen %d" +msgid "%B: XMC_TC0 symbol `%s' is class %d scnlen %Ld" msgstr "" #: xcofflink.c:1679 @@ -8053,7 +8093,7 @@ msgstr "" #: xcofflink.c:2108 #, c-format -msgid "%B: reloc %s:%d not in csect" +msgid "%B: reloc %s:%Ld not in csect" msgstr "" #: xcofflink.c:3198 @@ -8087,54 +8127,54 @@ msgstr "" #: xcofflink.c:5115 #, c-format -msgid "TOC overflow: 0x%lx > 0x10000; try -mminimal-toc when compiling" +msgid "TOC overflow: %#Lx > 0x10000; try -mminimal-toc when compiling" msgstr "" -#: /Users/gingold/Repositories/fsf/binutils-gdb.git/bfd/elfnn-aarch64.c:1890 +#: /work/sources/binutils/current/bfd/elfnn-aarch64.c:1890 #, c-format msgid "Invalid AArch64 reloc number: %d" msgstr "" -#: /Users/gingold/Repositories/fsf/binutils-gdb.git/bfd/elfnn-aarch64.c:4777 +#: /work/sources/binutils/current/bfd/elfnn-aarch64.c:4777 msgid "%B: error: Erratum 835769 stub out of range (input file too large)" msgstr "" -#: /Users/gingold/Repositories/fsf/binutils-gdb.git/bfd/elfnn-aarch64.c:4858 +#: /work/sources/binutils/current/bfd/elfnn-aarch64.c:4858 msgid "%B: error: Erratum 843419 stub out of range (input file too large)" msgstr "" -#: /Users/gingold/Repositories/fsf/binutils-gdb.git/bfd/elfnn-aarch64.c:5340 +#: /work/sources/binutils/current/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 "" -#: /Users/gingold/Repositories/fsf/binutils-gdb.git/bfd/elfnn-aarch64.c:5431 +#: /work/sources/binutils/current/bfd/elfnn-aarch64.c:5431 #, c-format msgid "" "%B: Local symbol descriptor table be NULL when applying relocation %s " "against local symbol" msgstr "" -#: /Users/gingold/Repositories/fsf/binutils-gdb.git/bfd/elfnn-aarch64.c:6459 +#: /work/sources/binutils/current/bfd/elfnn-aarch64.c:6453 msgid "Too many GOT entries for -fpic, please recompile with -fPIC" msgstr "" -#: /Users/gingold/Repositories/fsf/binutils-gdb.git/bfd/elfnn-aarch64.c:6487 +#: /work/sources/binutils/current/bfd/elfnn-aarch64.c:6481 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 "" -#: /Users/gingold/Repositories/fsf/binutils-gdb.git/bfd/elfnn-riscv.c:2600 +#: /work/sources/binutils/current/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 "" -#: /Users/gingold/Repositories/fsf/binutils-gdb.git/bfd/elfnn-riscv.c:2620 +#: /work/sources/binutils/current/bfd/elfnn-riscv.c:2620 msgid "%B: can't link hard-float modules with soft-float modules" msgstr "" @@ -8152,7 +8192,7 @@ msgstr "" #: peigen.c:532 pepigen.c:532 pex64igen.c:532 msgid "" -"%B: aout header specifies an invalid number of data-directory entries: %d" +"%B: aout header specifies an invalid number of data-directory entries: %ld" msgstr "" #: peigen.c:1089 pepigen.c:1089 pex64igen.c:1089 @@ -8654,7 +8694,7 @@ msgstr "" #: peigen.c:2988 pepigen.c:2988 pex64igen.c:2988 #, c-format -msgid "%B: Data Directory size (%lx) exceeds space left in section (%lx)" +msgid "%B: Data Directory size (%lx) exceeds space left in section (%Lx)" msgstr "" #: peigen.c:3018 pepigen.c:3018 pex64igen.c:3018 diff --git a/bfd/po/es.po b/bfd/po/es.po index cbdfe90..73e12b5 100644 --- a/bfd/po/es.po +++ b/bfd/po/es.po @@ -12,6 +12,7 @@ msgstr "" "Last-Translator: Cristian Othón MartÃnez Vera <cfuga@cfuga.mx>\n" "Language-Team: Spanish <es@li.org>\n" "Language: es\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" diff --git a/bfd/po/fi.po b/bfd/po/fi.po index 7f2fa2c..14752f4 100644 --- a/bfd/po/fi.po +++ b/bfd/po/fi.po @@ -12,6 +12,7 @@ msgstr "" "Last-Translator: Jorma Karvonen <karvonen.jorma@gmail.com>\n" "Language-Team: Finnish <translation-team-fi@lists.sourceforge.net>\n" "Language: fi\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" diff --git a/bfd/po/fr.po b/bfd/po/fr.po index 83da6dc..fe2855f 100644 --- a/bfd/po/fr.po +++ b/bfd/po/fr.po @@ -1,176 +1,191 @@ # Messages français pour GNU concernant bfd. -# Copyright (C) 2012 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>, 2012. +# Frédéric Marchal <fmarchal@perso.be>, 2017. msgid "" msgstr "" -"Project-Id-Version: bfd-2.22.90\n" +"Project-Id-Version: bfd-2.28.90\n" "Report-Msgid-Bugs-To: bug-binutils@gnu.org\n" -"POT-Creation-Date: 2011-10-25 11:58+0100\n" -"PO-Revision-Date: 2012-07-28 10:47+0200\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" "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-Generator: Lokalize 1.4\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:199 +#: 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:242 +#: 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:253 +#: 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:7671 +#: 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:2203 +#: 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:2491 +#: 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:2515 +#: archive.c:2658 msgid "Writing updated armap timestamp" msgstr "Écriture du cachet date-heure armap mise à jour" -#: bfd.c:398 +#: bfd.c:454 msgid "No error" msgstr "Pas d'erreur" -#: bfd.c:399 +#: bfd.c:455 msgid "System call error" msgstr "Erreur d'appel système" -#: bfd.c:400 +#: bfd.c:456 msgid "Invalid bfd target" msgstr "Cible bfd invalide" -#: bfd.c:401 +#: bfd.c:457 msgid "File in wrong format" msgstr "Fichier dans un mauvais format" -#: bfd.c:402 +#: bfd.c:458 msgid "Archive object file in wrong format" msgstr "Fichier objet d'archive dans un mauvais format" -#: bfd.c:403 +#: bfd.c:459 msgid "Invalid operation" msgstr "Opération invalide" -#: bfd.c:404 +#: bfd.c:460 msgid "Memory exhausted" msgstr "Mémoire épuisée" -#: bfd.c:405 +#: bfd.c:461 msgid "No symbols" msgstr "Aucun symbole" -#: bfd.c:406 +#: 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:407 +#: bfd.c:463 msgid "No more archived files" msgstr "Aucun autre fichier d'archive" -#: bfd.c:408 +#: bfd.c:464 msgid "Malformed archive" msgstr "Archive mal formée" -#: bfd.c:409 +#: bfd.c:465 +msgid "DSO missing from command line" +msgstr "DSO manquant dans la ligne de commande" + +#: bfd.c:466 msgid "File format not recognized" msgstr "Format de fichier non reconnu" -#: bfd.c:410 +#: bfd.c:467 msgid "File format is ambiguous" msgstr "Format de fichier ambigu" -#: bfd.c:411 +#: bfd.c:468 msgid "Section has no contents" msgstr "Section sans contenu" -#: bfd.c:412 +#: bfd.c:469 msgid "Nonrepresentable section on output" msgstr "Section non-représentable sur la sortie" -#: bfd.c:413 +#: 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:414 +#: bfd.c:471 msgid "Bad value" msgstr "Mauvaise valeur" -#: bfd.c:415 +#: bfd.c:472 msgid "File truncated" msgstr "Fichier tronqué" -#: bfd.c:416 +#: bfd.c:473 msgid "File too big" msgstr "Fichier trop gros" -#: bfd.c:417 +#: bfd.c:474 #, c-format msgid "Error reading %s: %s" msgstr "Erreur lors de la lecture de %s: %s" -#: bfd.c:418 +#: bfd.c:475 msgid "#<Invalid error code>" msgstr "#<Code d'erreur invalide>" -#: bfd.c:945 +#: bfd.c:1138 #, c-format msgid "BFD %s assertion fail %s:%d" msgstr "BFD assertion %s a échoué %s:%d" -#: bfd.c:957 +#: 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:961 +#: 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:963 +#: bfd.c:1158 msgid "Please report this bug.\n" msgstr "Merci de rapporter cette anomalie.\n" @@ -184,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:2063 elf32-avr.c:1654 elf32-frv.c:5734 -#: elfxx-sparc.c:2802 reloc.c:6115 reloc16.c:162 elf32-ia64.c:360 -#: elf64-ia64.c:360 +#: 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:227 +#: cache.c:273 +#, c-format msgid "reopening %B: %s\n" msgstr "réouverture de %B: %s\n" -#: coff-alpha.c:491 +#: coff-alpha.c:450 msgid "" "%B: Cannot handle compressed Alpha binaries.\n" " Use compiler flags, or objZ, to generate uncompressed binaries." @@ -207,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:648 +#: 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:900 coff-alpha.c:937 coff-alpha.c:2025 coff-mips.c:1003 +#: 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:1502 +#: coff-alpha.c:1444 msgid "using multiple gp values" msgstr "utilisation de valeurs gp multiples" -#: coff-alpha.c:1561 +#: 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:1568 +#: 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:1575 elf32-m32r.c:2484 elf64-alpha.c:4074 elf64-alpha.c:4224 -#: elf32-ia64.c:3839 elf64-ia64.c:3839 +#: 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:1038 +#: 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:1067 +#: 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:1369 elf32-arm.c:7023 +#: coff-arm.c:1363 elf32-arm.c:8896 #, c-format msgid "" "%B(%s): warning: interworking not enabled.\n" @@ -251,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:1459 +#: coff-arm.c:1453 #, c-format msgid "" "%B(%s): warning: interworking not enabled.\n" @@ -262,317 +280,488 @@ msgstr "" " première occurrence: %B: appel arm au repère\n" " reliez avec --support-old-code activé" -#: coff-arm.c:1754 coff-tic80.c:695 cofflink.c:3081 +#: 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:2079 +#: 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:2210 +#: 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:2226 elf32-arm.c:15621 +#: 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:2229 elf32-arm.c:15625 +#: 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:2243 +#: 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:2246 +#: 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:2274 elf32-arm.c:15690 +#: 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:2277 elf32-arm.c:15696 +#: 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:2301 +#: coff-arm.c:2293 #, c-format msgid "private flags = %x:" msgstr "fanions privés = %x:" -#: coff-arm.c:2309 elf32-arm.c:11806 +#: 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:2311 +#: 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:2314 elf32-arm.c:11809 +#: coff-arm.c:2306 elf32-arm.c:14159 #, c-format msgid " [position independent]" msgstr " [position indépendante]" -#: coff-arm.c:2316 +#: coff-arm.c:2308 #, c-format msgid " [absolute position]" msgstr " [position absolue]" -#: coff-arm.c:2320 +#: 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:2322 +#: coff-arm.c:2314 #, c-format msgid " [interworking supported]" msgstr " [inter-réseautage supporté]" -#: coff-arm.c:2324 +#: coff-arm.c:2316 #, c-format msgid " [interworking not supported]" msgstr " [inter-réseautage non supporté]" -#: coff-arm.c:2370 elf32-arm.c:10841 -#, 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:2374 elf32-arm.c:10845 -#, 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:1122 +#: 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:398 coffcode.h:5198 +#: 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:144 coff-i960.c:507 +#: 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:506 elf32-bfin.c:5690 elf32-cr16.c:2897 elf32-m68k.c:4677 +#: 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:688 elf32-mips.c:1516 elf32-score.c:431 elf32-score7.c:330 -#: elf64-mips.c:2618 elfn32-mips.c:2431 +#: 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:229 -msgid "Unrecognized reloc" -msgstr "Relocalisation non reconnue" - -#: coff-rs6000.c:2720 +#: 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:2805 +#: 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:3556 coff64-rs6000.c:2111 +#: 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:521 +#: 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:195 coff-tic54x.c:299 coff-tic80.c:458 +#: 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:240 +#: 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-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-w65.c:367 +#: 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:997 +#: 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:1221 +#: 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:1288 +#: 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:2430 +#: 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:2744 -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:3302 +#: coffcode.h:3346 +#, c-format msgid "%B: too many sections (%d)" msgstr "%B: trop de sections (%d)" -#: coffcode.h:3718 -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:4523 +#: 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:4553 -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:4567 +#: 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:4967 +#: 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:5093 +#: 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:5237 +#: 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:1595 +#: 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: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" + +#. 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:2500 elflink.c:12689 linker.c:3122 +#: 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 elflink.c:4323 +#: 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:2329 +#: 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:2391 elflink.c:9545 +#: 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:2738 +#, c-format +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:2690 coffswap.h:826 +#: coffswap.h:811 #, c-format -msgid "%s: %s: reloc overflow: 0x%lx > 0xffff" -msgstr "%s: %s: débordement de relocalisation: 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" -#: cofflink.c:2699 coffswap.h:812 +#: coffswap.h:825 #, 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: %s: reloc overflow: 0x%lx > 0xffff" +msgstr "%B: %s: débordement de réadressage: 0x%lx > 0xffff" -#: cpu-arm.c:189 cpu-arm.c:200 +#: 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:333 +#: 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:496 +#: 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:525 +#: 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:949 +#: 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: %u." -msgstr "Erreur DWARF: valeur de FORME invalide ou non supportée: %u" +msgid "Dwarf Error: Invalid or unhandled FORM value: %#x." +msgstr "Erreur Dwarf: valeur de FORM invalide ou non supportée: %#x." -#: dwarf2.c:1200 +#: 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:1453 +#: 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: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:1475 +#: 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:1662 +#: 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: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:2575 +#, c-format +msgid "Dwarf Error: Unable to read alt ref %u." +msgstr "Erreur Dwarf: Impossible de lire la ref alt %u." -#: dwarf2.c:1989 dwarf2.c:2109 dwarf2.c:2394 +#: 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:2355 +#: 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:2362 +#: 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:2385 +#: 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:1239 +#: ecoff.c:1261 #, c-format msgid "Unknown basic type %d" msgstr "Type de base %d inconnu" -#: ecoff.c:1496 +#: ecoff.c:1518 #, c-format msgid "" "\n" @@ -581,7 +770,7 @@ msgstr "" "\n" " Dernier+1 symbole: %ld" -#: ecoff.c:1503 ecoff.c:1506 +#: ecoff.c:1525 ecoff.c:1528 #, c-format msgid "" "\n" @@ -590,7 +779,7 @@ msgstr "" "\n" " Premier symbole: %ld" -#: ecoff.c:1518 +#: ecoff.c:1541 #, c-format msgid "" "\n" @@ -599,7 +788,7 @@ msgstr "" "\n" " Dernier+1 symbole: %-7ld Type: %s" -#: ecoff.c:1525 +#: ecoff.c:1548 #, c-format msgid "" "\n" @@ -608,7 +797,7 @@ msgstr "" "\n" " Symbole local: %ld" -#: ecoff.c:1533 +#: ecoff.c:1556 #, c-format msgid "" "\n" @@ -617,7 +806,7 @@ msgstr "" "\n" " struct; Symbole Fin+1: %ld" -#: ecoff.c:1538 +#: ecoff.c:1561 #, c-format msgid "" "\n" @@ -626,7 +815,7 @@ msgstr "" "\n" " union; Dernier+1 symbole: %ld" -#: ecoff.c:1543 +#: ecoff.c:1566 #, c-format msgid "" "\n" @@ -635,7 +824,7 @@ msgstr "" "\n" " enum; Dernier+1 symbol: %ld" -#: ecoff.c:1549 +#: ecoff.c:1572 #, c-format msgid "" "\n" @@ -644,140 +833,269 @@ msgstr "" "\n" " Type: %s" -#: elf-attrs.c:569 +#: 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:578 +#: 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:917 +#: 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:1189 -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:1605 +#: 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:179 +#: 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:450 elf-m10300.c:1563 elf32-avr.c:1221 elf32-bfin.c:3213 -#: elf32-cr16.c:1482 elf32-cr16c.c:780 elf32-cris.c:2081 elf32-crx.c:922 -#: elf32-d10v.c:509 elf32-epiphany.c:556 elf32-fr30.c:609 elf32-frv.c:4105 -#: elf32-h8300.c:509 elf32-i860.c:1211 elf32-ip2k.c:1468 elf32-iq2000.c:684 -#: elf32-lm32.c:1168 elf32-m32c.c:553 elf32-m32r.c:3106 elf32-m68hc1x.c:1138 -#: elf32-mep.c:535 elf32-microblaze.c:1231 elf32-moxie.c:282 -#: elf32-msp430.c:486 elf32-mt.c:395 elf32-openrisc.c:404 elf32-score.c:2729 -#: elf32-score7.c:2537 elf32-spu.c:5044 elf32-tilepro.c:3214 elf32-v850.c:2143 -#: elf32-xstormy16.c:935 elf64-mmix.c:1590 elfxx-tilegx.c:3577 +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:454 elf-m10300.c:1567 elf32-avr.c:1225 elf32-bfin.c:3217 -#: elf32-cr16.c:1486 elf32-cr16c.c:784 elf32-cris.c:2085 elf32-crx.c:926 -#: elf32-d10v.c:513 elf32-fr30.c:613 elf32-frv.c:4109 elf32-h8300.c:513 -#: elf32-i860.c:1215 elf32-iq2000.c:688 elf32-lm32.c:1172 elf32-m32c.c:557 -#: elf32-m32r.c:3110 elf32-m68hc1x.c:1142 elf32-mep.c:539 -#: elf32-microblaze.c:1235 elf32-moxie.c:286 elf32-msp430.c:490 -#: elf32-openrisc.c:408 elf32-score.c:2733 elf32-score7.c:2541 -#: elf32-spu.c:5048 elf32-tilepro.c:3218 elf32-v850.c:2147 -#: elf32-xstormy16.c:939 elf64-mmix.c:1594 elfxx-mips.c:9465 -#: elfxx-tilegx.c:3581 +#: 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:458 elf32-cr16.c:1490 elf32-cr16c.c:788 elf32-crx.c:930 -#: elf32-d10v.c:517 elf32-h8300.c:517 elf32-lm32.c:1176 elf32-m32r.c:3114 -#: elf32-m68hc1x.c:1146 elf32-microblaze.c:1239 elf32-score.c:2737 -#: elf32-score7.c:2545 elf32-spu.c:5052 +#: 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:462 elf-m10300.c:1580 elf32-avr.c:1233 elf32-bfin.c:3225 -#: elf32-cr16.c:1494 elf32-cr16c.c:792 elf32-cris.c:2093 elf32-crx.c:934 -#: elf32-d10v.c:521 elf32-epiphany.c:571 elf32-fr30.c:621 elf32-frv.c:4117 -#: elf32-h8300.c:521 elf32-i860.c:1223 elf32-ip2k.c:1483 elf32-iq2000.c:696 -#: elf32-lm32.c:1180 elf32-m32c.c:565 elf32-m32r.c:3118 elf32-m68hc1x.c:1150 -#: elf32-mep.c:547 elf32-microblaze.c:1243 elf32-moxie.c:294 -#: elf32-msp430.c:498 elf32-mt.c:403 elf32-openrisc.c:416 elf32-score.c:2746 -#: elf32-score7.c:2549 elf32-spu.c:5056 elf32-tilepro.c:3226 elf32-v850.c:2167 -#: elf32-xstormy16.c:947 elf64-mmix.c:1602 elfxx-tilegx.c:3589 +#: 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:1507 elf32-arm.c:10419 elf32-i386.c:4264 elf32-m32r.c:2599 -#: elf32-m68k.c:4156 elf32-s390.c:3003 elf32-sh.c:4218 elf32-tilepro.c:3117 -#: elf32-xtensa.c:3066 elf64-s390.c:2978 elf64-sh64.c:1640 elf64-x86-64.c:4110 -#: elfxx-sparc.c:3835 elfxx-tilegx.c:3500 +#: elf-m10300.c:812 +#, c-format +msgid "%B: unrecognised MN10300 reloc number: %d" +msgstr "%B: numéro de réadressage MN10300 non reconnu: %d" + +#: 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" + +#: 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:1572 +#: 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:1575 +#: 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: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-m10300.c:4372 elf32-arm.c:12800 elf32-cr16.c:2451 elf32-cris.c:3057 -#: elf32-hppa.c:1894 elf32-i370.c:503 elf32-i386.c:2182 elf32-lm32.c:1868 -#: elf32-m32r.c:1927 elf32-m68k.c:3253 elf32-s390.c:1652 elf32-sh.c:2931 -#: elf32-tic6x.c:2162 elf32-tilepro.c:1940 elf32-vax.c:1041 elf64-s390.c:1635 -#: elf64-sh64.c:3381 elf64-x86-64.c:2176 elfxx-sparc.c:2119 -#: elfxx-tilegx.c:2261 +#: 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 "dynamic variable `%s' is zero size" -msgstr "la variable dynamique «%s» a une taille nulle" +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:334 +#: 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:446 +#: 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:602 -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:638 +#: elf.c:711 msgid "%B: invalid SHT_GROUP entry" msgstr "%B: entrée SHT_GROUP invalide" -#: elf.c:708 +#: 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:737 elf.c:3121 elflink.c:10135 +#: 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:756 +#: 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:791 -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:1041 -msgid "%B: unable to initialize commpress status for section %s" -msgstr "%B: impossible d'initialiser le statut de compression de la section %s" +#: 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:1061 -msgid "%B: unable to initialize decommpress status for section %s" -msgstr "%B: impossible d'initialiser le statut de décompression de la section %s" +#: 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: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:1181 +#: elf.c:1588 #, c-format msgid "" "\n" @@ -786,7 +1104,7 @@ msgstr "" "\n" "En-tête de programme:\n" -#: elf.c:1223 +#: elf.c:1630 #, c-format msgid "" "\n" @@ -795,7 +1113,7 @@ msgstr "" "\n" "Section dynamique:\n" -#: elf.c:1359 +#: elf.c:1771 #, c-format msgid "" "\n" @@ -804,7 +1122,7 @@ msgstr "" "\n" "Définitions des versions:\n" -#: elf.c:1384 +#: elf.c:1796 #, c-format msgid "" "\n" @@ -813,82 +1131,266 @@ msgstr "" "\n" "Références de version:\n" -#: elf.c:1389 +#: elf.c:1801 #, c-format msgid " required from %s:\n" msgstr " requis par %s:\n" -#: elf.c:1796 -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: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:1966 -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: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:1978 -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: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:1989 -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: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:1999 -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: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:2634 +#: 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:3687 +#, c-format +msgid "%B: too many sections: %u" +msgstr "%B: trop de sections: %u" -#: elf.c:3078 +#: 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:3101 +#: 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:4891 +msgid "%B: TLS sections are not adjacent:" +msgstr "%B: Les sections TLS ne sont pas adjacentes:" -#: elf.c:4527 +#: elf.c:4898 +#, c-format +msgid "\t TLS: %A" +msgstr "\t TLS: %A" + +#: elf.c:4902 +#, c-format +msgid "\tnon-TLS: %A" +msgstr "\tnon-TLS: %A" + +#: 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:4554 +#: 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:4641 -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:4776 +#: 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:4824 +#: 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" -#: elf.c:5324 +#. 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: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:5662 -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: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:6692 +#: 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:7692 +#: elf.c:8188 +msgid "%B: .gnu.version_r invalid entry" +msgstr "%B: entrée .gnu.version_r invalide" + +#: 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:3617 +#: 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" @@ -896,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:3664 +#: elf32-arm.c:4141 msgid "" "%B(%s): warning: interworking not enabled.\n" " first occurrence: %B: ARM call to Thumb" @@ -904,492 +1406,679 @@ 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:3878 elf32-arm.c:5315 +#: 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 "%s: cannot create stub entry %s" -msgstr "%s: ne peut créer l'entrée d'ébauche %s" +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:5431 +#: 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 "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: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:5467 +#: 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:6005 +#: 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:6235 +#: 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:6779 elf32-arm.c:6799 +#: 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:6848 +#: elf32-arm.c:8716 #, c-format msgid "Invalid TARGET2 relocation type '%s'." msgstr "Type de réadressage TARGET2 « %s » invalide" -#: elf32-arm.c:6933 -msgid "" -"%B(%s): warning: interworking not enabled.\n" -" first occurrence: %B: thumb call to arm" -msgstr "" -"%B(%s): attention: l'inter-réseautage n'est pas activé.\n" -" première occurrence: %B: appel de repère vers arm" +#. 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:7717 -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:7756 -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:8209 +#: 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:8622 +#: 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:9460 -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:9483 -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:9512 +#: 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:9727 +#: 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:9767 elf32-arm.c:9854 elf32-arm.c:9937 elf32-arm.c:10022 +#: 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:10261 elf32-sh.c:4103 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:10372 elf32-m68k.c:4191 elf32-xtensa.c:2802 +#: 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:10373 elf32-m68k.c:4192 elf32-xtensa.c:2803 +#: 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:10453 elf32-tic6x.c:2753 +#: 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:10457 elf32-tic6x.c:2757 +#: 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:10465 elf32-tic6x.c:2765 +#: 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:10890 -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:10984 +#: 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:10992 +#: elf32-arm.c:13161 msgid "Warning: %B: Unknown EABI object attribute %d" msgstr "Attention: %B: Attribut d'objet EABI %d inconnu" -#: elf32-arm.c:11173 +#: elf32-arm.c:13428 msgid "error: %B: Unknown CPU architecture" msgstr "erreur: %B: Architecture CPU inconnue" -#: elf32-arm.c:11211 +#: 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:11260 +#: 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:11285 +#: 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:11430 +#: 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:11456 +#: elf32-arm.c:13776 msgid "error: %B: Conflicting architecture profiles %c/%c" msgstr "erreur: %B: Profils d'architecture conflictuels %c/%c" -#: elf32-arm.c:11557 +#: elf32-arm.c:13915 msgid "Warning: %B: Conflicting platform configuration" msgstr "Attention: %B: Configuration de platforme conflictuelle" -#: elf32-arm.c:11566 +#: elf32-arm.c:13924 msgid "error: %B: Conflicting use of R9" msgstr "erreur: %B: Utilisation conflictuelle de R9" -#: elf32-arm.c:11578 +#: 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:11591 +#: 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:11622 +#: 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:11634 +#: 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:11651 +#: 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:11675 -msgid "DIV usage mismatch between %B and %B" -msgstr "incohérence d'utilisation de DIV entre %B et %B" - -#: elf32-arm.c:11694 +#: 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é" #. 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:11782 elf32-bfin.c:5079 elf32-cris.c:4169 elf32-m68hc1x.c:1282 -#: elf32-m68k.c:1236 elf32-score.c:3994 elf32-score7.c:3800 elf32-vax.c:529 -#: elfxx-mips.c:14103 +#. Ignore init flag - it may not be set, despite the flags field +#. containing valid data. +#: 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:11791 +#: elf32-arm.c:14141 #, c-format msgid " [interworking enabled]" msgstr " [inter-réseautage autorisé]" -#: elf32-arm.c:11799 +#: elf32-arm.c:14149 #, c-format msgid " [VFP float format]" msgstr " [format flottant VFP]" -#: elf32-arm.c:11801 +#: elf32-arm.c:14151 #, c-format msgid " [Maverick float format]" msgstr " [format flottant Maverick]" -#: elf32-arm.c:11803 +#: elf32-arm.c:14153 #, c-format msgid " [FPA float format]" msgstr " [format flottant FPA]" -#: elf32-arm.c:11812 +#: elf32-arm.c:14162 #, c-format msgid " [new ABI]" msgstr " [nouvel ABI]" -#: elf32-arm.c:11815 +#: elf32-arm.c:14165 #, c-format msgid " [old ABI]" msgstr " [ancien ABI]" -#: elf32-arm.c:11818 +#: elf32-arm.c:14168 #, c-format msgid " [software FP]" msgstr " [virgule flottante logiciel]" -#: elf32-arm.c:11827 +#: elf32-arm.c:14177 #, c-format msgid " [Version1 EABI]" msgstr " [Version1 EABI]" -#: elf32-arm.c:11830 elf32-arm.c:11841 +#: elf32-arm.c:14180 elf32-arm.c:14191 #, c-format msgid " [sorted symbol table]" msgstr " [table des symboles triés]" -#: elf32-arm.c:11832 elf32-arm.c:11843 +#: elf32-arm.c:14182 elf32-arm.c:14193 #, c-format msgid " [unsorted symbol table]" msgstr " [table des symboles non triés]" -#: elf32-arm.c:11838 +#: elf32-arm.c:14188 #, c-format msgid " [Version2 EABI]" msgstr " [Version2 EABI]" -#: elf32-arm.c:11846 +#: elf32-arm.c:14196 #, c-format msgid " [dynamic symbols use segment index]" msgstr " [symboles dynamiques utilisent un index de segment]" -#: elf32-arm.c:11849 +#: elf32-arm.c:14199 #, c-format msgid " [mapping symbols precede others]" msgstr " [mapping de symboles précèdes les autres]" -#: elf32-arm.c:11856 +#: elf32-arm.c:14206 #, c-format msgid " [Version3 EABI]" msgstr " [Version3 EABI]" -#: elf32-arm.c:11860 +#: elf32-arm.c:14210 #, c-format msgid " [Version4 EABI]" msgstr " [Version4 EABI]" -#: elf32-arm.c:11864 +#: elf32-arm.c:14214 #, c-format msgid " [Version5 EABI]" msgstr " [Version5 EABI]" -#: elf32-arm.c:11867 +#: elf32-arm.c:14217 +#, c-format +msgid " [soft-float ABI]" +msgstr " [soft-float ABI]" + +#: elf32-arm.c:14220 +#, c-format +msgid " [hard-float ABI]" +msgstr " [hard-float ABI]" + +#: elf32-arm.c:14226 #, c-format msgid " [BE8]" msgstr " [BE8]" -#: elf32-arm.c:11870 +#: elf32-arm.c:14229 #, c-format msgid " [LE8]" msgstr " [LE8]" -#: elf32-arm.c:11876 +#: elf32-arm.c:14235 #, c-format msgid " <EABI version unrecognised>" msgstr " <Version EABI non reconnue>" -#: elf32-arm.c:11883 +#: elf32-arm.c:14242 #, c-format msgid " [relocatable executable]" msgstr " [exécutables relocalisés]" -#: elf32-arm.c:11886 -#, c-format -msgid " [has entry point]" -msgstr " [a des points d'entrées]" - -#: elf32-arm.c:11891 +#: 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:12189 elf32-i386.c:1461 elf32-s390.c:1000 elf32-tic6x.c:2829 -#: elf32-tilepro.c:1336 elf32-xtensa.c:1009 elf64-s390.c:960 -#: elf64-x86-64.c:1364 elfxx-sparc.c:1371 elfxx-tilegx.c:1586 +#: 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:12337 elf64-x86-64.c:1561 elf64-x86-64.c:1732 elfxx-mips.c:8223 -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:16055 +msgid "Errors encountered processing file %B" +msgstr "Erreurs rencontrées pendant le traitement du fichier %B" -#: elf32-arm.c:13460 +#: elf32-arm.c:16493 elflink.c:12297 elflink.c:12344 #, c-format -msgid "Errors encountered processing file %s" -msgstr "Erreurs rencontrées pendant le traitement du fichier %s" +msgid "could not find section %s" +msgstr "ne peut repérer la section %s" -#: elf32-arm.c:14837 +#: 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:14864 +#: 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:14958 elf32-arm.c:14980 +#: 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:15518 +#: 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:15594 +#: 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:15610 +#: 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:15635 +#: 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:15639 +#: 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:15649 +#: 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:15653 +#: 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:15672 +#: 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:15676 +#: 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:1229 elf32-bfin.c:3221 elf32-cris.c:2089 elf32-epiphany.c:567 -#: elf32-fr30.c:617 elf32-frv.c:4113 elf32-i860.c:1219 elf32-ip2k.c:1479 -#: elf32-iq2000.c:692 elf32-m32c.c:561 elf32-mep.c:543 elf32-moxie.c:290 -#: elf32-msp430.c:494 elf32-mt.c:399 elf32-openrisc.c:412 elf32-tilepro.c:3222 -#: elf32-v850.c:2151 elf32-xstormy16.c:943 elf64-mmix.c:1598 -#: elfxx-tilegx.c:3585 +#: 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:2415 elf32-hppa.c:598 elf32-m68hc1x.c:166 -msgid "%B: cannot create stub entry %s" -msgstr "%B: ne peut créer l'entrée de l'ébauche %s" +#: 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:107 elf32-bfin.c:363 +#: 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:1593 +#: 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:1626 elf32-i386.c:4307 elf32-m68k.c:4233 elf32-s390.c:3055 -#: elf64-s390.c:3030 elf64-x86-64.c:4151 +#: 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:2725 +#: 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:2741 +#: 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:2838 +#: 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:2879 elf32-bfin.c:3002 +#: 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:2910 elf32-bfin.c:3040 elf32-lm32.c:1103 elf32-sh.c:5016 +#: 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:2960 +#: 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:3125 +#: 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:3126 +#: 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:4971 +#: elf32-bfin.c:4877 +#, c-format msgid "%B: unsupported relocation type %i" msgstr "%B: type de réadressage %i non supporté" -#: elf32-bfin.c:5125 elf32-frv.c:6808 -#, 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:5129 elf32-frv.c:6812 -#, 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:5283 +#: elf32-bfin.c:5120 #, c-format msgid "*** check this relocation %s" msgstr "*** vérifiez ce réadressage %s" -#: elf32-cris.c:1176 +#: 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:1238 +#: 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:1240 +#: 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:1246 elf32-cris.c:1379 elf32-cris.c:1639 elf32-cris.c:1722 -#: elf32-cris.c:1875 elf32-tic6x.c:2662 +#: 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:1365 elf32-tic6x.c:2647 +#: 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:1373 elf32-cris.c:1716 elf32-cris.c:1869 elf32-tic6x.c:2655 +#: 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:1399 +#: 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:1415 +#: 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:1630 +#: 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:2002 +#: 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:2055 +#: 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:2062 +#: 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:3261 +#: elf32-cris.c:3233 +#, c-format msgid "" "%B, section %A:\n" " v10/v32 compatible object %s must not contain a PIC relocation" @@ -1397,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:3366 +#: 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" @@ -1405,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:3580 +#: elf32-cris.c:3505 +#, c-format msgid "" "%B, section %A:\n" " relocation %s should not be used in a shared object; recompile with -fPIC" @@ -1413,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:4002 +#: 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:4118 +#: elf32-cris.c:4041 msgid "Unexpected machine number" msgstr "Numéro de machine inattendu" -#: elf32-cris.c:4172 +#: 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:4175 +#: elf32-cris.c:4095 #, c-format msgid " [v10 and v32]" msgstr " [v10 et v32]" -#: elf32-cris.c:4178 +#: elf32-cris.c:4098 #, c-format msgid " [v32]" msgstr " [v32]" -#: elf32-cris.c:4223 +#: 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:4224 +#: 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:4243 +#: 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:4245 +#: 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é" @@ -1466,515 +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:563 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:1509 elf32-frv.c:1658 +#: 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:2888 +#: 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:2905 +#: 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:2981 +#: 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:3022 +#: 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:3093 +#: 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:3130 +#: 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:3177 +#: 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:3261 +#: 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:3315 +#: 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:3345 +#: 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:3374 +#: 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:3404 +#: 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:3449 +#: 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:3476 +#: 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:3597 +#: 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:3638 elf32-frv.c:3760 +#: 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:3669 elf32-frv.c:3803 +#: 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:3718 +#: 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:3974 +#: 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:4124 +#: elf32-frv.c:4061 +#, c-format msgid "%H: reloc against `%s': %s\n" msgstr "%H: réadressage sur « %s »: %s\n" -#: elf32-frv.c:6400 +#: 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:6722 -#, 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" - -#: elf32-frv.c:6775 elf32-iq2000.c:845 elf32-m32c.c:807 +#: elf32-frv.c:6510 #, 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 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:6787 +#: elf32-frv.c:6564 elf32-iq2000.c:832 elf32-m32c.c:877 #, 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)" +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:6837 elf32-iq2000.c:882 elf32-m32c.c:843 elf32-mt.c:576 -#: elf32-rx.c:3001 +#: elf32-frv.c:6577 #, 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:850 elf32-hppa.c:3598 +#: 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:1284 +#: 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:2791 +#: elf32-hppa.c:2778 +#, c-format msgid "%B: duplicate export stub %s" msgstr "%B: ébauche d'exportation en double %s" -#: elf32-hppa.c:3437 +#: 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:4284 +#: 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:4603 +#: 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:373 elf32-m68k.c:384 elf32-ppc.c:1676 elf32-s390.c:379 -#: elf32-tic6x.c:2684 elf64-ppc.c:2300 elf64-s390.c:403 elf64-x86-64.c:265 +#: 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:1404 elf64-x86-64.c:1308 +#: 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:1549 elf32-i386.c:3244 elf64-x86-64.c:1487 elf64-x86-64.c:3125 -#: elfxx-sparc.c:3083 -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: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:1711 elf32-s390.c:1182 elf32-sh.c:6362 elf32-tilepro.c:1434 -#: elf32-xtensa.c:1182 elf64-s390.c:1151 elfxx-sparc.c:1548 -#: elfxx-tilegx.c:1701 +#: 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:2539 elf64-x86-64.c:2506 -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:2629 elf64-x86-64.c:2593 -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: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:3086 elf32-tilepro.c:2557 elfxx-tilegx.c:2871 +#: 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: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: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:3494 elf64-x86-64.c:3513 +#: 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:4543 elf64-x86-64.c:4816 msgid "hidden symbol" msgstr "symbole caché" -#: elf32-i386.c:3497 elf64-x86-64.c:3516 +#: elf32-i386.c:4546 elf64-x86-64.c:4819 msgid "internal symbol" msgstr "symbole interne" -#: elf32-i386.c:3500 elf64-x86-64.c:3519 +#: elf32-i386.c:4549 elf64-x86-64.c:4822 msgid "protected symbol" msgstr "symbole protégé" -#: elf32-i386.c:3503 elf64-x86-64.c:3522 +#: elf32-i386.c:4552 elf64-x86-64.c:4825 msgid "symbol" msgstr "symbole" -#: elf32-i386.c:3508 +#: 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:3518 -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:4839 elf32-tilepro.c:3467 elf64-x86-64.c:4609 -#: elfxx-tilegx.c:3847 +#: 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-ip2k.c:857 elf32-ip2k.c:863 elf32-ip2k.c:930 elf32-ip2k.c:936 +#: 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: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:858 elf32-m32c.c:819 +#: elf32-iq2000.c:441 #, 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 IQ2000 reloc number: %d" +msgstr "%B: numéro de réadressage IQ2000 invalide: %d" -#: elf32-lm32.c:706 +#: elf32-lm32.c:559 +#, c-format +msgid "%B: invalid LM32 reloc number: %d" +msgstr "%B: numéro de réadressage LM32 invalide: %d" + +#: 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:761 +#: 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:1057 +#: 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:3043 +#: 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:3571 +#: 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:3592 +#: elf32-m32r.c:3507 elf32-nds32.c:6111 #, c-format msgid "private flags = %lx" msgstr "fanions privés = %lx" -#: elf32-m32r.c:3597 +#: elf32-m32r.c:3512 #, c-format msgid ": m32r instructions" msgstr ": instructions m32r" -#: elf32-m32r.c:3598 +#: elf32-m32r.c:3513 #, c-format msgid ": m32rx instructions" msgstr ": instruction m32rx" -#: elf32-m32r.c:3599 +#: elf32-m32r.c:3514 #, c-format msgid ": m32r2 instructions" msgstr ": instructions m32r2" -#: elf32-m68hc1x.c:1050 +#: 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:1073 +#: 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: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:1092 +#: 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:1225 +#: 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: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:1232 +#: 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:1241 +#: 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:1257 elf32-ppc.c:4227 elf64-sparc.c:706 elfxx-mips.c:13965 -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:1285 +#: elf32-m68hc1x.c:1416 elf32-xgate.c:672 #, c-format msgid "[abi=32-bit int, " msgstr "[abi=32-bit int, " -#: elf32-m68hc1x.c:1287 +#: elf32-m68hc1x.c:1418 elf32-xgate.c:674 #, c-format msgid "[abi=16-bit int, " msgstr "[abi=16-bit int, " -#: elf32-m68hc1x.c:1290 +#: elf32-m68hc1x.c:1421 elf32-xgate.c:677 #, c-format msgid "64-bit double, " msgstr "double de 64 bits, " -#: elf32-m68hc1x.c:1292 +#: elf32-m68hc1x.c:1423 elf32-xgate.c:679 #, c-format msgid "32-bit double, " msgstr "double de 32 bits, " -#: elf32-m68hc1x.c:1295 +#: elf32-m68hc1x.c:1426 #, c-format msgid "cpu=HC11]" msgstr "cpu=HC11]" -#: elf32-m68hc1x.c:1297 +#: elf32-m68hc1x.c:1428 #, c-format msgid "cpu=HCS12]" msgstr "cpu=HCS12]" -#: elf32-m68hc1x.c:1299 +#: elf32-m68hc1x.c:1430 #, c-format msgid "cpu=HC12]" msgstr "cpu=HC12]" -#: elf32-m68hc1x.c:1302 +#: elf32-m68hc1x.c:1433 #, c-format msgid " [memory=bank-model]" msgstr " [memory=bank-model]" -#: elf32-m68hc1x.c:1304 +#: elf32-m68hc1x.c:1435 #, c-format msgid " [memory=flat]" msgstr " [memory=flat]" -#: elf32-m68k.c:1251 elf32-m68k.c:1252 vms-alpha.c:7314 vms-alpha.c:7329 +#: elf32-m68hc1x.c:1438 +#, c-format +msgid " [XGATE RAM offsetting]" +msgstr " [décalage RAM XGATE]" + +#: elf32-m68k.c:1215 elf32-m68k.c:1216 vms-alpha.c:7400 vms-alpha.c:7416 msgid "unknown" msgstr "inconnu" -#: elf32-m68k.c:1715 +#: 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:1721 +#: 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:3957 +#: 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:648 +#: 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:665 +#: 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:702 +#: elf32-mep.c:677 #, c-format msgid "private flags = 0x%lx" msgstr "fanions privés = 0x%lx" -#: elf32-microblaze.c:742 +#: elf32-metag.c:893 #, c-format -msgid "%s: unknown relocation type %d" -msgstr "%s: type de réadressage %d inconnu" +msgid "%B: invalid METAG reloc number: %d" +msgstr "%B: numéro de réadressage METAG invalide: %d" -#: elf32-microblaze.c:867 elf32-microblaze.c:912 +#: 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-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 "%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: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:1155 elf32-tilepro.c:2891 elfxx-sparc.c:3457 -#: elfxx-tilegx.c:3230 +#: 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-microblaze.c:2074 -msgid "%B: bad relocation section name `%s'" -msgstr "%B: nom de section de réadressage erroné « %s »" - -#: elf32-mips.c:1549 elf64-mips.c:2683 elfn32-mips.c:2487 +#: 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:1596 elf32-score.c:570 elf32-score7.c:469 elf64-mips.c:2726 -#: elfn32-mips.c:2528 +#: 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-ppc.c:1741 +#: 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: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:2354 +#, c-format +msgid "Warning: %B: Unknown MSPABI object attribute %d" +msgstr "Attention: %B: Attribut d'objet MSPBI %d inconnu" + +#: 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: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: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: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: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: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-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: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: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:5106 +msgid "%B: warning: unaligned access to GOT entry." +msgstr "%B: attention: accès non aligné à une entrée GOT." + +#: elf32-nds32.c:5148 +msgid "%B: warning: relocate SDA_BASE failed." +msgstr "%B: attention: réadressage SDA_BASE a échoué." + +#: 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: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: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: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: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: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: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:6117 +#, c-format +msgid ": n1 instructions" +msgstr ": instructions n1" + +#: elf32-nds32.c:6120 +#, c-format +msgid ": n1h instructions" +msgstr ": instructions n1h" + +#: 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: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:11850 elf32-nds32.c:11867 +msgid "error: Jump IFC Fail." +msgstr "erreur: Saut IFC a échoué." + +#: elf32-nds32.c:12724 +#, c-format +msgid "%B: Nested OMIT_FP in %A." +msgstr "%B: OMIT_FP imbriqués dans %A." + +#: elf32-nds32.c:12743 +#, c-format +msgid "%B: Unmatched OMIT_FP in %A." +msgstr "%B: OMIT_FP non apparié dans %A." + +#: 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: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:15436 +#, c-format +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: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: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: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: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:4500 elf32-pru.c:816 +msgid "relocation out of range" +msgstr "réadressage hors limite" + +#: elf32-nios2.c:4510 elf32-pru.c:826 elf32-tic6x.c:2747 +msgid "dangerous relocation" +msgstr "réadressage dangereux" + +#: elf32-nios2.c:5491 +#, c-format +msgid "dynamic variable `%s' is zero size" +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-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:2184 +#: elf32-ppc.c:2781 +#, c-format msgid "corrupt %s section in %B" msgstr "section %s corrompue dans %B" -#: elf32-ppc.c:2203 +#: 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:2244 +#: 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:2294 +#: 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:2313 +#: elf32-ppc.c:2912 msgid "failed to compute new APUinfo section." msgstr "échec d'évaluation de la nouvelle section APUinfo" -#: elf32-ppc.c:2316 +#: elf32-ppc.c:2915 msgid "failed to install new APUinfo section." msgstr "échec d'installation de la nouvelle section APUinfo" -#: elf32-ppc.c:3356 +#: 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:3700 -msgid "%P: %H: %s reloc against local symbol\n" -msgstr "%P: %H: %s réadressé par rapport à un symbole local\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:4039 elf32-ppc.c:4054 elfxx-mips.c:13651 elfxx-mips.c:13677 -#: elfxx-mips.c:13699 elfxx-mips.c:13725 +#: 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:4042 elf32-ppc.c:4046 +#: 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:4050 -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:4057 elf32-ppc.c:4061 elfxx-mips.c:13631 elfxx-mips.c:13635 -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:4103 elf32-ppc.c:4107 -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:4111 -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:4128 elf32-ppc.c:4131 +#: 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:4134 elf32-ppc.c:4138 -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:4192 +#: 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:4200 +#: 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:4309 +#: 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:4312 +#: elf32-ppc.c:5046 msgid "%P: bss-plt forced by profiling\n" msgstr "%P: bss-plt forcé par le profilage\n" @@ -1982,681 +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:4809 elf64-ppc.c:7858 +#: 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:5044 elf64-ppc.c:6528 -msgid "%P: dynamic variable `%s' is zero size\n" -msgstr "%P: la variable dynamique « %s » a une taille nulle\n" +#: elf32-ppc.c:8249 +msgid "%H: fixup branch overflow\n" +msgstr "%H: débordement du branchement de correction\n" -#: elf32-ppc.c:7263 elf64-ppc.c:12675 +#: 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:7524 -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:7720 elf64-ppc.c:13181 -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:7948 elf32-ppc.c:7978 elf32-ppc.c:8025 +#: 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:8097 +#: 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: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:8158 elf64-ppc.c:13467 -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: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: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:8205 elf64-ppc.c:13512 -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:8696 +#: 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-rx.c:563 +#: 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: Réadressage RL78_SYM avec un symbole inconnu" + +#: 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 »" + +#: 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" + +# 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: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: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:1262 +#, c-format +msgid " [64-bit doubles]" +msgstr " [doubles de 64 bits]" + +#: elf32-rx.c:313 +#, c-format +msgid "%B: invalid RX reloc number: %d" +msgstr "%B: numéro de réadressage RX invalide: %d" + +#: elf32-rx.c:594 +#, c-format +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-rx.c:601 +#, c-format +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: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-rx.c:1324 -msgid "%B(%A): error: call to undefined function '%s'" -msgstr "%B(%A): erreur: appel à la fonction non définie «%s»" - -#: 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-rx.c:1342 -msgid "%B(%A): internal error: out of range error" -msgstr "%B(%A): erreur interne: hors limite" - -#: elf32-rx.c:1346 -msgid "%B(%A): internal error: unsupported relocation error" -msgstr "%B(%A): erreur interne: réadressage non supporté" +#: 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:1350 -msgid "%B(%A): internal error: dangerous relocation" -msgstr "%B(%A): erreur interne: réadressage dangereux" +#: 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:1354 -msgid "%B(%A): internal error: unknown error" -msgstr "%B(%A): erreur interne: erreur inconnue" +#: elf32-rx.c:3150 +#, c-format +msgid " the output file's flags: %s" +msgstr " les fanions du fichier de sortie: %s" -#: elf32-rx.c:3004 +#: elf32-rx.c:3757 #, c-format -msgid " [64-bit doubles]" -msgstr " [doubles de 64 bits]" +msgid "%B:%A: table %s missing corresponding %s" +msgstr "%B:%A: la table %s n'a pas de %s correspondant" -#: elf32-rx.c:3006 +#: elf32-rx.c:3765 #, c-format -msgid " [dsp]" -msgstr " [dsp]" +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:2200 elf64-s390.c:2187 +#: 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:3435 +#: 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:2878 elf32-score7.c:2682 +#: 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:3997 elf32-score7.c:3803 +#: elf32-score.c:4005 elf32-score7.c:3810 #, c-format msgid " [pic]" msgstr " [pic]" -#: elf32-score.c:4001 elf32-score7.c:3807 +#: elf32-score.c:4009 elf32-score7.c:3814 #, c-format msgid " [fix dep]" msgstr " [fix dep]" -#: elf32-score.c:4043 elf32-score7.c:3849 +#: 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:504 +#: 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:568 -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:580 -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:597 -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:612 -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:640 -msgid "%B: 0x%lx: warning: symbol in unexpected section" -msgstr "%B: 0x%lx: attention: symbole dans une section inattendue" - -#: elf32-sh.c:766 -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:775 -msgid "%B: 0x%lx: warning: bad count" -msgstr "%B: 0x%lx: attention: mauvais décompte" - -#: elf32-sh.c:1179 elf32-sh.c:1549 -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:4048 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:4299 +#: 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:4332 elf32-sh.c:4347 +#: 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:4361 +#: 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:4375 +#: 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:4519 elf32-sh.c:4989 +#: 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:5096 +#: 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:5569 +#: 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:5575 +#: 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:6353 elf32-sh.c:6436 +#: 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:6358 elf32-sh.c:6440 +#: 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:6388 +#: 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:6624 elf64-alpha.c:4652 +#: 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:223 elf64-sh64.c:2318 +# %s sont « dsp » ou « floating point » non traduits +#: elf32-sh.c:6435 #, 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 "%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 "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:226 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:228 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:451 elf64-sh64.c:2837 +#: 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:528 +#: 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:531 +#: 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:549 -#, 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" +#: elf32-sh64.c:550 +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:598 +#: 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:674 -#, 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:734 -#, c-format -msgid "%s: could not write out sorted .cranges entries" -msgstr "%s: ne peut écrire en sortie des entrées .cranges triées" +#: elf32-sh64.c:735 +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:719 +#: 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:727 +#: 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:747 +#: 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:787 +#: 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:1011 +#: 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:1361 +#: 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:1880 +#: 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:1888 +#: 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:1922 +#: elf32-spu.c:1945 #, c-format msgid "%s in overlay section" msgstr "%s dans une section de recouvrement" -#: elf32-spu.c:1951 +#: elf32-spu.c:1974 msgid "overlay stub relocation overflow" msgstr "débordement du réadressage de l'ébauche de recouvrement" -#: elf32-spu.c:1960 +#: 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:2542 +#: elf32-spu.c:2566 #, c-format msgid "warning: %s overlaps %s\n" msgstr "attention: %s recouvre %s\n" -#: elf32-spu.c:2558 +#: 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:2589 +#: 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:2729 +#: 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:3297 +#: 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:3988 -msgid " %s: 0x%v\n" -msgstr " %s: 0x%v\n" - -#: elf32-spu.c:3989 -msgid "%s: 0x%v 0x%v\n" -msgstr "%s: 0x%v 0x%v\n" - -#: elf32-spu.c:3994 +#: elf32-spu.c:4021 msgid " calls:\n" msgstr " appels:\n" -#: elf32-spu.c:4002 -#, c-format -msgid " %s%s %s\n" -msgstr " %s%s %s\n" - -#: elf32-spu.c:4307 +#: elf32-spu.c:4335 #, c-format msgid "%s duplicated in %s\n" msgstr "%s dupliqué dans %s\n" -#: elf32-spu.c:4311 +#: elf32-spu.c:4339 #, c-format msgid "%s duplicated\n" msgstr "%s dupliqué\n" -#: elf32-spu.c:4318 +#: 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:4359 +#: 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:4514 +#: 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:4676 +#: 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:4677 +#: 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:4687 +#: elf32-spu.c:4717 msgid "Maximum stack required is 0x%v\n" msgstr "Pile maximum requise est 0x%v\n" -#: elf32-spu.c:4778 +#: 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:5008 +#: 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:1602 +#: 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:1607 +#: 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:2541 +#: 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:2761 -msgid "dangerous relocation" -msgstr "réadressage dangereux" - -#: elf32-tic6x.c:3733 +#: 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:3741 +#: 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:3853 elf32-tic6x.c:3861 +#: 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:3871 elf32-tic6x.c:3880 +#: 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:3889 elf32-tic6x.c:3898 +#: 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:3906 elf32-tic6x.c:3913 +#: 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:3935 +#: 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:3953 +#: 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:173 +#: 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:176 +#: 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:179 +#: 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:182 +#: 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:185 +#: 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:483 +#: 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:2155 +#: 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:2159 +#: 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:2163 +#: 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:2341 +#: 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" #. xgettext:c-format. -#: elf32-v850.c:2360 +#: elf32-v850.c:2890 #, c-format msgid "private flags = %lx: " msgstr "fanions privés = %lx: " -#: elf32-v850.c:2365 +#: elf32-v850.c:2895 +#, c-format +msgid "unknown v850 architecture" +msgstr "architecture v850 inconnue" + +#: elf32-v850.c:2897 +#, c-format +msgid "v850 E3 architecture" +msgstr "architecture v850 E3" + +#: elf32-v850.c:2899 elf32-v850.c:2906 #, c-format msgid "v850 architecture" msgstr "architecture v850" -#: elf32-v850.c:2366 +#: elf32-v850.c:2907 #, c-format msgid "v850e architecture" msgstr "architecture v850e" -#: elf32-v850.c:2367 +#: elf32-v850.c:2908 #, c-format msgid "v850e1 architecture" msgstr "architecture v850e1" -#: elf32-v850.c:2368 +#: elf32-v850.c:2909 #, c-format msgid "v850e2 architecture" msgstr "architecture v850e2" -#: elf32-v850.c:2369 +#: elf32-v850.c:2910 #, c-format msgid "v850e2v3 architecture" msgstr "architecture v850e2v3" -#: elf32-vax.c:532 +#: elf32-v850.c:2911 +#, c-format +msgid "v850e3v5 architecture" +msgstr "architecture v850e3v5" + +#: 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:655 +#: 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 "%B: warning: %s relocation to 0x%x from %A section" +msgstr "%B: attention: réadressage %s vers 0x%x de la section %A" + +#: elf32-visium.c:481 +#, c-format +msgid "%B: invalid Visium reloc number: %d" +msgstr "%B: numéro de réadressage Visium invalide: %d" + +# 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: 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: 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:1585 +#: elf32-xgate.c:428 #, 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 XGate reloc number: %d" +msgstr "%B: numéro de réadressage XGate invalide: %d" -#: elf32-vax.c:1712 +#: elf32-xgate.c:681 #, 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 "cpu=XGATE]" +msgstr "cpu=XGATE]" -#: elf32-vax.c:1718 +#: elf32-xgate.c:683 #, 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 "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:451 elf32-ia64.c:2336 elf64-ia64.c:2336 +#: 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:918 +#: 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:926 +#, c-format msgid "%B(%A): invalid property table" msgstr "%B(%A): table de propriété invalide" -#: elf32-xtensa.c:2777 +#: 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:2856 elf32-xtensa.c:2977 +#: 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:2953 +#: elf32-xtensa.c:2967 msgid "TLS relocation invalid without dynamic sections" msgstr "réadressage TLS incorrecte sans section dynamique" -#: elf32-xtensa.c:3172 +#: 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: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:4714 elf32-xtensa.c:4722 +#: 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:6332 elf32-xtensa.c:6408 elf32-xtensa.c:7524 +#: 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:7264 +#: 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:9023 +#: elf32-xtensa.c:9585 msgid "invalid relocation address" msgstr "adresse de réadressage incorrecte" -#: elf32-xtensa.c:9072 +#: elf32-xtensa.c:9635 msgid "overflow after relaxation" msgstr "débordement après la relâche" -#: elf32-xtensa.c:10204 +#: 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:460 +#: 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:2497 +#: 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:4387 elf64-alpha.c:4399 +#: 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:4425 elf64-alpha.c:4565 +#: 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:4453 +#: elf64-alpha.c:4550 +#, c-format msgid "%B: change in gp: BRSGP %s" msgstr "%B: changé dans le GP: BRSGP %s" -#: elf64-alpha.c:4478 +#: elf64-alpha.c:4575 msgid "<unknown>" msgstr "<inconnu>" -#: elf64-alpha.c:4483 +#: 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:4540 +#: 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:4572 +#: 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:4636 +#: 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:4659 +#: 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:2083 +#: 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:3275 -msgid "%B(%A+0x" -msgstr "%B(%A+0x" +#: elf64-hppa.c:3287 +#, c-format +msgid "%B(%A+0x%" +msgstr "%B(%A+0x%" -#: elf64-mmix.c:1034 +#: 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." + +#: elf64-ia64-vms.c:2029 elf32-ia64.c:2282 elf64-ia64.c:2282 +msgid "@pltoff reloc against local symbol" +msgstr "réadressage @pltoff vers un symbole local" + +#: elf64-ia64-vms.c:3282 elf32-ia64.c:3688 elf64-ia64.c:3688 +#, c-format +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: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: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: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: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: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: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: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:3913 elf32-ia64.c:4437 elf64-ia64.c:4437 +msgid "unsupported reloc" +msgstr "réadressage non supportée" + +#: 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: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)." + +#: 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: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: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: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: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: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" + +#: 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" + +#: 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" + +#: 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: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" @@ -2666,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:1218 +#: 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" @@ -2676,137 +4310,178 @@ 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:1244 +#: 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:1670 +#: 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:1675 +#: 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:1719 +#: 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:1724 +#: 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:1761 +#: 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:1789 +#: 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:2253 +#: 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:2311 +#: elf64-mmix.c:2257 msgid "Register section has contents\n" msgstr "Registre de section contient\n" -#: elf64-mmix.c:2503 +#: elf64-mmix.c:2447 #, c-format msgid "" "Internal inconsistency: remaining %u != max %u.\n" " Please report this bug." msgstr "" -"Inconsistence interne: reste %u != max %u.\n" +"Inconsistance interne: reste %u != max %u.\n" " Merci de rapporter cette anomalie." -#: elf64-ppc.c:4185 +#: 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:6518 -msgid "%P: copy reloc against `%s' requires lazy plt linking; avoid setting LD_BIND_NOW=1 or upgrade gcc\n" -msgstr "%P: la copie du réadressage sur « %s » nécessite un lien plt paresseux; évitez de mettre LD_BIND_NOW=1 ou mettez à jour gcc\n" +#: 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: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:6046 +#, c-format +msgid "%B uses unknown e_flags 0x%lx" +msgstr "%B utilise le e_flags 0x%lx inconnu" + +#: 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:6082 +#, c-format +msgid " [abiv%ld]" +msgstr " [abiv%ld]" + +#: 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:6788 +#: 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:6992 +#: 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:7076 +#: 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:7085 +#: 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:7106 +#: 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:7664 +#: 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:8003 elf64-ppc.c:8564 +#: 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:8521 -msgid "%P: %H: %s relocation references optimized away TOC entry\n" -msgstr "%P: %H: le réadressage %s fait référence à une entrée TOC supprimée par l'optimisation\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: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:9598 -msgid "%P: cannot find opd entry toc for %s\n" -msgstr "%P: l'entrée toc de opd non trouvée pour %s\n" +#: 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:9680 +#: 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:9739 +#: 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:9801 elf64-ppc.c:9943 -msgid "%P: linkage table error against `%s'\n" -msgstr "%P: erreur de la table de liaison vers « %s »\n" +#: 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:10126 +#: 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:10941 +#: 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:11666 elf64-ppc.c:11699 -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:11744 +#: 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:11756 +#: elf64-ppc.c:13343 #, c-format msgid "" "linker stubs in %u group%s\n" @@ -2814,923 +4489,1276 @@ msgid "" " toc adjust %lu\n" " long branch %lu\n" " long toc adj %lu\n" -" plt call %lu" +" plt call %lu\n" +" plt call toc %lu\n" +" global entry %lu" msgstr "" "éditeur de liens des ébauches dans %u groupe%s\n" " branchements %lu\n" " ajustements toc %lu\n" " long branchements %lu\n" " long ajustements toc %lu\n" -" appels plt %lu" +" appels plt %lu\n" +" appels plt toc %lu\n" +" entrées globales %lu" + +#: 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:12042 -msgid "%P: %H: %s used with TLS symbol %s\n" -msgstr "%P: %H: %s utilisé avec le symbole TLS %s\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: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: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: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: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:12043 -msgid "%P: %H: %s used with non-TLS symbol %s\n" -msgstr "%P: %H: %s utilisé avec le symbole non-TLS %s\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:12556 -msgid "%P: %H: automatic multiple TOCs not supported using your crt files; recompile with -mminimal-toc or upgrade gcc\n" -msgstr "%P: %H: TOC multiples et automatiques non supportées utilisant votre fichier crt; recompilez avec -mminimal-toc ou mettez à jour gcc\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:12562 -msgid "%P: %H: sibling call optimization to `%s' does not allow automatic multiple TOCs; recompile with -mminimal-toc or -fno-optimize-sibling-calls, or make `%s' extern\n" -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" +#: 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:13286 -msgid "%P: %B: relocation %s is not supported for symbol %s\n" -msgstr "%P: %B: réadressage %s n'est pas supportée pour le symbole %s\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:13446 -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-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:1427 +#: 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:1656 +#: 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:3150 +#: 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:3411 -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: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:3523 -msgid "; recompile with -fPIC" -msgstr "; recompilé avec -fPIC" +# 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: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:3528 -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: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" + +#: 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 "%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" -#: elf64-x86-64.c:3530 -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" +#: elf64-x86-64.c:7663 +#, c-format +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:767 +#: elf64-x86-64.c:7713 #, 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: 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" + +#: 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:1177 +#: elfcode.h:1193 #, 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 "%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:1431 +#: elfcode.h:1448 #, 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 "%B(%A): relocation %d has invalid symbol index %ld" +msgstr "%B(%A): réadressage %d a un index de symbole %ld invalide" -#: elfcore.h:312 +#: 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:1117 +#: 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:1121 +#: 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:1125 +#: 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:1129 +#: 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:1762 +#: 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:2063 +#: 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:2154 -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:2165 -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:2355 +#: 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:2639 +#: 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: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:3391 +#: 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:4037 +#: elflink.c:4438 +#, c-format msgid "%B: %s: invalid version %u (max %d)" msgstr "%B: %s: version invalide %u (max %d)" -#: elflink.c:4073 +#: elflink.c:4475 +#, c-format msgid "%B: %s: invalid needed version %d" msgstr "%B: %s: version requise invalide %d" -#: elflink.c:4269 -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" - -#: elflink.c:4275 -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" - -#: elflink.c:4290 -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: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:4463 +#: 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:4466 -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" +#: 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:5907 +#, c-format +msgid "%B: %s not absolute" +msgstr "%B: %s pas supporté" -#: elflink.c:5781 +#: elflink.c:6105 #, c-format msgid "%s: undefined version: %s" msgstr "%s: version non définie: %s" -#: elflink.c:5849 +#: 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:7604 +#: 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:7758 +#: 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" -#: elflink.c:8097 elflink.c:8114 elflink.c:8151 elflink.c:8168 +#. 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: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:8128 elflink.c:8182 +#. 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:8233 +#: elflink.c:8998 msgid "Not enough memory to sort relocations" msgstr "Pas assez de mémoire pour trier les réadressages" -#: elflink.c:8426 +#: elflink.c:9266 +#, c-format msgid "%B: Too many sections: %d (>= %d)" msgstr "%B: Trop de sections: %d (>= %d)" -#: elflink.c:8675 +#: 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:8677 +#: 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:8679 +#: 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:8776 +#: 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:8899 +#: 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:8901 +#: 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:8903 +#: 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:9432 +#: 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: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:9479 -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:10214 +#: 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:10219 +#: 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:10784 +#: 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:11093 elflink.c:11137 -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:11098 +#: elflink.c:12302 #, c-format msgid "warning: %s section has zero size" msgstr "attention: section %s a une taille nulle" -#: elflink.c:11143 +#: 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:11212 +#: 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:11215 +#: 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:11402 +#: 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:11792 -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:11998 -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:12277 +#: elflink.c:13597 #, c-format msgid "Unrecognized INPUT_SECTION_FLAG %s\n" msgstr "INPUT_SECTION_FLAG %s non reconnu\n" -#: elfxx-mips.c:1234 +#: elfxx-mips.c:1444 msgid "static procedure (no name)" msgstr "procédure statique (sans name)" -#: elfxx-mips.c:5259 +#: 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:5856 -msgid "%B: %A+0x%lx: Direct jumps between ISA modes are not allowed; consider recompiling with interlinking enabled." -msgstr "%B: %A+0x%lx: Les sauts directs entre modes ISA ne sont pas permis; 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: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:6519 elfxx-mips.c:6742 +#: 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:7495 elfxx-mips.c:7620 +#: 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:7749 +#: 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:7801 +#: 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:7930 +#: 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:8645 +#: 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:9347 +#: 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:9486 +#: 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:9505 -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:13266 -#, c-format -msgid "%s: illegal section name `%s'" -msgstr "%s: nom illégal de section «%s»" +#: 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:13645 elfxx-mips.c:13671 -msgid "Warning: %B uses -msingle-float, %B uses -mdouble-float" -msgstr "Attention: %B utilise -msingle-float, %B utilise -mdouble-float" +#: 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:13657 elfxx-mips.c:13713 -msgid "Warning: %B uses -msingle-float, %B uses -mips32r2 -mfp64" -msgstr "Attention: %B utilise -msingle-float, %B utilise -mips32r2 -mfp64" +#: 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:13683 elfxx-mips.c:13719 -msgid "Warning: %B uses -mdouble-float, %B uses -mips32r2 -mfp64" -msgstr "Attention: %B utilise -mdouble-float, %B utilise -mips32r2 -mfp64" +#: 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:13761 -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:10309 +msgid "PC-relative load from unaligned address" +msgstr "Chargement relatif au PC depuis une adresse non alignée" -#: elfxx-mips.c:13772 -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: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:14174 +#, c-format +msgid "%B: Unknown architecture %s" +msgstr "%B: Architecture %s inconnue" + +#: elfxx-mips.c:14704 +#, c-format +msgid "%B: illegal section name `%A'" +msgstr "%B: nom illégal de section « %A »" -#: elfxx-mips.c:13856 +#: 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:13873 +#: 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:13901 +#: 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:13924 +#: 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:13948 +#: 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:14106 +#: 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: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: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: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: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: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: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: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: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: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: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: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:14108 +#: elfxx-mips.c:15807 #, c-format msgid " [abi=O64]" msgstr " [abi=O64]" -#: elfxx-mips.c:14110 +#: elfxx-mips.c:15809 #, c-format msgid " [abi=EABI32]" msgstr " [abi=EABI32]" -#: elfxx-mips.c:14112 +#: elfxx-mips.c:15811 #, c-format msgid " [abi=EABI64]" msgstr " [abi=EABI64]" -#: elfxx-mips.c:14114 +#: elfxx-mips.c:15813 #, c-format msgid " [abi unknown]" msgstr " [abi inconnu]" -#: elfxx-mips.c:14116 +#: elfxx-mips.c:15815 #, c-format msgid " [abi=N32]" msgstr " [abi=N32]" -#: elfxx-mips.c:14118 +#: elfxx-mips.c:15817 #, c-format msgid " [abi=64]" msgstr " [abi=64]" -#: elfxx-mips.c:14120 +#: elfxx-mips.c:15819 #, c-format msgid " [no abi set]" msgstr " [aucun jeu abi]" -#: elfxx-mips.c:14141 +#: elfxx-mips.c:15844 #, c-format msgid " [unknown ISA]" msgstr " [ISA inconnu]" -#: elfxx-mips.c:14155 +#: elfxx-mips.c:15864 #, c-format msgid " [not 32bitmode]" msgstr " [aucun mode 32 bits]" -#: elfxx-sparc.c:596 +#: 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:3952 +#: 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:451 m68klinux.c:456 sparclinux.c:450 +#: 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:459 m68klinux.c:464 sparclinux.c:458 +#: 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:648 i386linux.c:698 m68klinux.c:656 m68klinux.c:704 -#: sparclinux.c:648 sparclinux.c:698 +#: 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:722 m68klinux.c:728 sparclinux.c:722 +#: 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:159 #, c-format -msgid "%s: string too long (%d chars, max 65535)" -msgstr "%s: chaîne trop longue (%d caractères, max 65535)" +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 "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:286 +#: 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:792 +#: 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:816 +#: 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:838 +#: 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:1872 +#: 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:2736 +#: 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:3021 +#: linker.c:2825 +#, c-format msgid "%B: ignoring duplicate section `%A'\n" msgstr "%B: ignore les sections dupliquées « %A »\n" -#: linker.c:3030 linker.c:3039 +#: 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:3047 linker.c:3052 +#: 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:3056 +#: 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:407 +#: 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:1301 +#: 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 "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: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:1789 +#: 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: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:1807 +#: 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:1892 +#: 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:1900 -#, c-format -msgid "bfd_mach_o_read_symtab_symbol: symbol \"%s\" is unsupported 'indirect' reference: setting to undefined" -msgstr "bfd_mach_o_read_symtab_symbol: symbole « %s » a la référence non supportée « indirect »: laissé non défini" - -#: mach-o.c:1906 +#: 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:1979 +#: 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:2014 -#, c-format -msgid "bfd_mach_o_read_dysymtab_symbol: unable to read %lu bytes at %lu" -msgstr "bfd_mach_o_read_dysymtab_symbol: impossible de lire %lu octets à %lu" - -#: mach-o.c:2734 -#, c-format -msgid "unable to read unknown load command 0x%lx" -msgstr "impossible de lire la commande de chargement inconnue 0x%lx" +#: mach-o.c:4759 +msgid "%B: unknown load command 0x%lx" +msgstr "%B: commande de chargement inconnue 0x%lx" -#: mach-o.c:2915 +#: 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:3011 +#: 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" -#: mach-o.c:3577 -msgid "Mach-O header:\n" -msgstr "En-tête Mach-O:\n" - -#: mach-o.c:3578 -#, c-format -msgid " magic : %08lx\n" -msgstr " magique : %08lx\n" - -#: mach-o.c:3579 -#, c-format -msgid " cputype : %08lx (%s)\n" -msgstr " typecpu : %08lx (%s)\n" - -#: mach-o.c:3581 -#, c-format -msgid " cpusubtype: %08lx\n" -msgstr " soustypecpu: %08lx\n" - -#: mach-o.c:3582 -#, c-format -msgid " filetype : %08lx (%s)\n" -msgstr " typefichier: %08lx (%s)\n" - -#: mach-o.c:3585 -#, c-format -msgid " ncmds : %08lx (%lu)\n" -msgstr " ncmds : %08lx (%lu)\n" - -#: mach-o.c:3586 -#, c-format -msgid " sizeofcmds: %08lx\n" -msgstr " taillecmds: %08lx\n" - -#: mach-o.c:3587 -#, c-format -msgid " flags : %08lx (" -msgstr " fanions : %08lx (" - -#: mach-o.c:3589 vms-alpha.c:7674 -msgid ")\n" -msgstr ")\n" - -#: mach-o.c:3590 +#: merge.c:864 #, c-format -msgid " reserved : %08x\n" -msgstr " réservé : %08x\n" +msgid "%B: access beyond end of merged section (%ld)" +msgstr "%B: accès au-delà de la fin de la section fusionnée (%ld)" -#: mach-o.c:3600 -msgid "Segments and Sections:\n" -msgstr "Segments et Sections:\n" - -#: mach-o.c:3601 -msgid " #: Segment name Section name Address\n" -msgstr " #: Nom segment Nom section Adresse\n" - -#: merge.c:832 +#: mmo.c:468 #, 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: No core to allocate section name %s\n" +msgstr "%B: Pas de corps pour allouer un nom de section %s\n" -#: mmo.c:456 +#: mmo.c:544 #, 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 a symbol %d bytes long\n" +msgstr "%B: pas de corps pour allouer un symbole de %d octets de longueur\n" -#: mmo.c:531 +#: mmo.c:958 #, 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: 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:1187 -#, 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" +#: 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:1332 +#: mmo.c:1402 #, 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" +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:1565 +#: mmo.c:1636 #, c-format -msgid "%s: invalid mmo file: unsupported lopcode `%d'\n" -msgstr "%s: fichier mmo invalide: lopcode «%d» non supporté\n" +msgid "%B: invalid mmo file: unsupported lopcode `%d'\n" +msgstr "%B: fichier mmo invalide: lopcode « %d » non supporté\n" -#: mmo.c:1575 +#: mmo.c:1647 #, 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: 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:1611 +#: mmo.c:1685 #, 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 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:1657 +#: mmo.c:1736 #, 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_fixo\n" +msgstr "%B: fichier mmo invalide: attendu z = 1 ou z = 2, obtenu z = %d pour lop_fixo\n" -#: mmo.c:1696 +#: mmo.c:1777 #, 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 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:1705 +#: mmo.c:1788 #, 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 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:1728 +#: mmo.c:1813 #, 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: 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:1751 +#: mmo.c:1838 #, 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: 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:1771 +#: mmo.c:1860 #, 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: 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:1784 +#: mmo.c:1874 #, 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 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:1890 +#: mmo.c:1981 #, 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: 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:1926 +#: mmo.c:2018 #, 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: 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:1939 +#: mmo.c:2032 #, 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: 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:2649 +#: mmo.c:2743 #, c-format -msgid "%s: invalid symbol table: duplicate symbol `%s'\n" -msgstr "%s: table de symboles invalide: symbole «%s» dupliqué\n" +msgid "%B: invalid symbol table: duplicate symbol `%s'\n" +msgstr "%B: table de symboles invalide: symbole « %s » dupliqué\n" -#: mmo.c:2889 +#: mmo.c:2986 #, 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: 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:2981 +#: mmo.c:3085 #, 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: 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:3026 +#: mmo.c:3131 #, 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: 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:3078 +#: mmo.c:3184 #, 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, internal register section %A had contents\n" +msgstr "%B: erreur interne, registre interne de section %A contient quelque chose\n" -#: mmo.c:3129 -#, c-format -msgid "%s: no initialized registers; section length 0\n" -msgstr "%s: pas de registre initialisé; section de longeur 0\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:3135 +#: 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:3140 +#: 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:882 +#: 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:140 +#: 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:520 +#: 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:444 +#. 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: .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 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:448 peigen.c:1618 peigen.c:1801 pepigen.c:1618 pepigen.c:1801 -#: pex64igen.c:1618 pex64igen.c:1801 +#: 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: %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: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:450 +#: 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:751 +#: peicode.h:775 +#, c-format msgid "%B: Unhandled import type; %x" msgstr "%B: type d'importation non traitée; %x" -#: peicode.h:756 +#: peicode.h:781 +#, c-format msgid "%B: Unrecognised import type; %x" msgstr "%B: type d'importation non reconnu; %x" -#: peicode.h:770 +#: peicode.h:796 +#, c-format msgid "%B: Unrecognised import name type; %x" msgstr "%B: type de nom d'importation non reconnu: %x" -#: peicode.h:1166 +#: 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:1178 +#: 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:1196 +#: 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:1227 +#: 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:414 +#: 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" @@ -3739,27 +5767,27 @@ msgstr "" "\n" "En-têtes ppcboot:\n" -#: ppcboot.c:415 +#: 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:417 +#: ppcboot.c:396 #, c-format msgid "Length = 0x%.8lx (%ld)\n" msgstr "Longueur = 0x%.8lx (%ld)\n" -#: ppcboot.c:421 +#: ppcboot.c:400 #, c-format msgid "Flag field = 0x%.2x\n" msgstr "Champ de fanion = 0x%.2x\n" -#: ppcboot.c:427 +#: ppcboot.c:406 #, c-format msgid "Partition name = \"%s\"\n" -msgstr "Nom de partition = «%s»\n" +msgstr "Nom de partition = « %s »\n" -#: ppcboot.c:446 +#: ppcboot.c:426 #, c-format msgid "" "\n" @@ -3768,31 +5796,45 @@ msgstr "" "\n" "Début de partition[%d] = { 0x%.2x, 0x%.2x, 0x%.2x, 0x%.2x }\n" -#: ppcboot.c:452 +#: 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:458 +#: 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:460 +#: 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:6160 +#: reloc.c:8064 msgid "INPUT_SECTION_FLAGS are not supported.\n" msgstr "INPUT_SECTION_FLAGS pas supportés.\n" -#: rs6000-core.c:448 +#: reloc.c:8165 #, c-format -msgid "%s: warning core file truncated" -msgstr "%s: fichier core d'avertissement tronqué" +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" -#: som.c:5471 +#: reloc.c:8241 +#, c-format +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" + +#: 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" @@ -3801,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" @@ -3821,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:1299 +#: 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:1330 +#: 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:1343 +#: 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:1580 +#: vms-alpha.c:1665 #, c-format msgid "unknown ETIR command %d" msgstr "commande ETIR %d inconnue" -#: vms-alpha.c:1767 +#: 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:1780 +#: vms-alpha.c:1894 #, c-format msgid "unsupported STA cmd %s" msgstr "commande STA %s non supportée" @@ -3856,1393 +5934,1463 @@ msgstr "commande STA %s non supportée" #. Rotate. #. Redefine symbol to current location. #. Define a literal. -#: vms-alpha.c:1956 vms-alpha.c:1987 vms-alpha.c:2234 +#: 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:1962 +#: vms-alpha.c:2080 #, c-format msgid "%s: not implemented" msgstr "%s: non implémenté" -#: vms-alpha.c:2218 +#: vms-alpha.c:2338 #, c-format msgid "invalid use of %s with contexts" msgstr "utilisation incorrecte de %s avec des contextes" -#: vms-alpha.c:2252 +#: vms-alpha.c:2372 #, c-format msgid "reserved cmd %d" msgstr "commande %d réservée" -#: vms-alpha.c:2337 +#: vms-alpha.c:2457 msgid "Object module NOT error-free !\n" msgstr "Module objet N'EST PAS sans erreur !\n" -#: vms-alpha.c:2766 -#, c-format -msgid "Symbol %s replaced by %s\n" -msgstr "Symbole %s remplacé par %s\n" - -#: vms-alpha.c:3769 +#: 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:3822 vms-alpha.c:4049 +#: 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:3991 +#: 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:4036 +#: vms-alpha.c:4030 #, c-format msgid "Unhandled relocation %s" msgstr "Réadressage %s non traité" -#: vms-alpha.c:4326 +#: vms-alpha.c:4323 #, c-format msgid "unknown source command %d" msgstr "commande source %d inconnue" -#: vms-alpha.c:4387 +#: vms-alpha.c:4384 msgid "DST__K_SET_LINUM_INCR not implemented" msgstr "DST__K_SET_LINUM_INCR pas implémenté" -#: vms-alpha.c:4393 +#: 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:4399 +#: vms-alpha.c:4396 msgid "DST__K_RESET_LINUM_INCR not implemented" msgstr "DST__K_RESET_LINUM_INCR pas implémenté" -#: vms-alpha.c:4405 +#: vms-alpha.c:4402 msgid "DST__K_BEG_STMT_MODE not implemented" msgstr "DST__K_BEG_STMT_MODE pas implémenté" -#: vms-alpha.c:4411 +#: vms-alpha.c:4408 msgid "DST__K_END_STMT_MODE not implemented" msgstr "DST__K_END_STMT_MODE pas implémenté" -#: vms-alpha.c:4438 +#: vms-alpha.c:4435 msgid "DST__K_SET_PC not implemented" msgstr "DST__K_SET_PC pas implémenté" -#: vms-alpha.c:4444 +#: vms-alpha.c:4441 msgid "DST__K_SET_PC_W not implemented" msgstr "DST__K_SET_PC_W pas implémenté" -#: vms-alpha.c:4450 +#: vms-alpha.c:4447 msgid "DST__K_SET_PC_L not implemented" msgstr "DST__K_SET_PC_L pas implémenté" -#: vms-alpha.c:4456 +#: vms-alpha.c:4453 msgid "DST__K_SET_STMTNUM not implemented" msgstr "DST__K_SET_STMTNUM pas implémenté" -#: vms-alpha.c:4499 +#: vms-alpha.c:4496 #, c-format msgid "unknown line command %d" msgstr "commande de ligne %d inconnue" -#: vms-alpha.c:4953 vms-alpha.c:4970 vms-alpha.c:4984 vms-alpha.c:4999 -#: vms-alpha.c:5011 vms-alpha.c:5022 vms-alpha.c:5034 +#: 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:5089 +#: vms-alpha.c:5098 #, c-format msgid "Unknown reloc %s" -msgstr "Relocalisation %s inconnue" +msgstr "Réadressage %s inconnu" -#: vms-alpha.c:5102 +#: vms-alpha.c:5111 msgid "Invalid section index in ETIR" msgstr "Index de section incorrect dans ETIR" -#: vms-alpha.c:5109 +#: vms-alpha.c:5120 msgid "Relocation for non-REL psect" msgstr "Réadressage pour psect non-REL" -#: vms-alpha.c:5156 +#: vms-alpha.c:5167 #, c-format msgid "Unknown symbol in command %s" msgstr "Symbole inconnu dans la commande %s" -#: vms-alpha.c:5671 +#: 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:5680 +#: 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:5681 +#: vms-alpha.c:5709 #, c-format msgid " structure level: %u\n" msgstr " niveau de structure: %u\n" -#: vms-alpha.c:5682 +#: vms-alpha.c:5710 #, c-format msgid " max record size: %u\n" msgstr " taille max d'enregistrement: %u\n" -#: vms-alpha.c:5685 +#: vms-alpha.c:5713 #, c-format msgid " module name : %.*s\n" msgstr " nom du module : %.*s\n" -#: vms-alpha.c:5687 +#: vms-alpha.c:5715 #, c-format msgid " module version : %.*s\n" msgstr " version du module : %.*s\n" -#: vms-alpha.c:5689 +#: vms-alpha.c:5717 #, c-format msgid " compile date : %.17s\n" msgstr " date de compilation : %.17s\n" -#: vms-alpha.c:5694 +#: vms-alpha.c:5722 #, c-format msgid "Language Processor Name\n" msgstr "Nom du Processeur de Langage\n" -#: vms-alpha.c:5695 +#: vms-alpha.c:5723 #, c-format msgid " language name: %.*s\n" msgstr " nom du language: %.*s\n" -#: vms-alpha.c:5702 +#: vms-alpha.c:5730 #, c-format msgid "Source Files Header\n" msgstr "En-tête des fichiers sources\n" -#: vms-alpha.c:5703 +#: vms-alpha.c:5731 #, c-format msgid " file: %.*s\n" msgstr " fichier: %.*s\n" -#: vms-alpha.c:5710 +#: vms-alpha.c:5738 #, c-format msgid "Title Text Header\n" msgstr "En-tête du texte du titre\n" -#: vms-alpha.c:5711 +#: vms-alpha.c:5739 #, c-format msgid " title: %.*s\n" msgstr " titre: %.*s\n" -#: vms-alpha.c:5718 +#: vms-alpha.c:5746 #, c-format msgid "Copyright Header\n" msgstr "En-tête du copyright\n" -#: vms-alpha.c:5719 +#: vms-alpha.c:5747 #, c-format msgid " copyright: %.*s\n" msgstr " copyright: %.*s\n" -#: vms-alpha.c:5725 +#: 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:5735 +#: vms-alpha.c:5763 #, c-format msgid " EEOM (len=%u):\n" msgstr " EEOM (long=%u):\n" -#: vms-alpha.c:5736 +#: 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:5738 +#: vms-alpha.c:5774 #, c-format msgid " completion code: %u\n" msgstr " code de complétion: %u\n" -#: vms-alpha.c:5742 +#: 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:5743 +#: vms-alpha.c:5779 #, c-format msgid " transfer addr psect: %u\n" msgstr " psect transert adr: %u\n" -#: vms-alpha.c:5745 +#: vms-alpha.c:5781 #, c-format msgid " transfer address : 0x%08x\n" msgstr " adresse de transert: 0x%08x\n" -#: vms-alpha.c:5754 +#: vms-alpha.c:5790 msgid " WEAK" msgstr " FAIBLE" -#: vms-alpha.c:5756 +#: vms-alpha.c:5792 msgid " DEF" msgstr " DEF" -#: vms-alpha.c:5758 +#: vms-alpha.c:5794 msgid " UNI" msgstr " UNI" -#: vms-alpha.c:5760 vms-alpha.c:5781 +#: vms-alpha.c:5796 vms-alpha.c:5817 msgid " REL" msgstr " REL" -#: vms-alpha.c:5762 +#: vms-alpha.c:5798 msgid " COMM" msgstr " COMM" -#: vms-alpha.c:5764 +#: vms-alpha.c:5800 msgid " VECEP" msgstr " VECEP" -#: vms-alpha.c:5766 +#: vms-alpha.c:5802 msgid " NORM" msgstr " NORM" -#: vms-alpha.c:5768 +#: vms-alpha.c:5804 msgid " QVAL" msgstr " QVAL" -#: vms-alpha.c:5775 +#: vms-alpha.c:5811 msgid " PIC" msgstr " PIC" -#: vms-alpha.c:5777 +#: vms-alpha.c:5813 msgid " LIB" msgstr " LIB" -#: vms-alpha.c:5779 +#: vms-alpha.c:5815 msgid " OVR" msgstr " OVR" -#: vms-alpha.c:5783 +#: vms-alpha.c:5819 msgid " GBL" msgstr " GBL" -#: vms-alpha.c:5785 +#: vms-alpha.c:5821 msgid " SHR" msgstr " SHR" -#: vms-alpha.c:5787 +#: vms-alpha.c:5823 msgid " EXE" msgstr " EXE" -#: vms-alpha.c:5789 +#: vms-alpha.c:5825 msgid " RD" msgstr " RD" -#: vms-alpha.c:5791 +#: vms-alpha.c:5827 msgid " WRT" msgstr " WRT" -#: vms-alpha.c:5793 +#: vms-alpha.c:5829 msgid " VEC" msgstr " VEC" -#: vms-alpha.c:5795 +#: vms-alpha.c:5831 msgid " NOMOD" msgstr " NOMOD" -#: vms-alpha.c:5797 +#: vms-alpha.c:5833 msgid " COM" msgstr " COM" -#: vms-alpha.c:5799 +#: vms-alpha.c:5835 msgid " 64B" msgstr " 64B" -#: vms-alpha.c:5808 +#: vms-alpha.c:5844 #, c-format msgid " EGSD (len=%u):\n" msgstr " EGSD (long=%u):\n" -#: vms-alpha.c:5820 +#: 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:5832 +#: 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:5833 vms-alpha.c:5850 +#: vms-alpha.c:5876 vms-alpha.c:5893 #, c-format msgid " alignment : 2**%u\n" msgstr " alignement : 2**%u\n" -#: vms-alpha.c:5834 vms-alpha.c:5851 +#: vms-alpha.c:5877 vms-alpha.c:5894 #, c-format msgid " flags : 0x%04x" msgstr " fanions : 0x%04x" -#: vms-alpha.c:5838 +#: vms-alpha.c:5881 #, c-format msgid " alloc (len): %u (0x%08x)\n" msgstr " alloc (long): %u (0x%08x)\n" -#: vms-alpha.c:5839 vms-alpha.c:5896 vms-alpha.c:5945 +#: 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:5849 +#: 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:5855 +#: vms-alpha.c:5898 #, c-format msgid " alloc (len) : %u (0x%08x)\n" msgstr " alloc (long) : %u (0x%08x)\n" -#: vms-alpha.c:5856 +#: vms-alpha.c:5899 #, c-format msgid " image offset : 0x%08x\n" msgstr " offset d'image: 0x%08x\n" -#: vms-alpha.c:5858 +#: vms-alpha.c:5901 #, c-format msgid " symvec offset : 0x%08x\n" msgstr " offset symvec : 0x%08x\n" -#: vms-alpha.c:5860 +#: vms-alpha.c:5903 #, c-format msgid " name : %.*s\n" msgstr " nom : %.*s\n" -#: vms-alpha.c:5873 +#: vms-alpha.c:5916 #, c-format msgid "SYM - Global symbol definition\n" msgstr "SYM - Définition du symbol global\n" -#: vms-alpha.c:5874 vms-alpha.c:5934 vms-alpha.c:5955 vms-alpha.c:5974 +#: 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:5877 +#: vms-alpha.c:5920 #, c-format msgid " psect offset: 0x%08x\n" msgstr " offset psect: 0x%08x\n" -#: vms-alpha.c:5881 +#: vms-alpha.c:5924 #, c-format msgid " code address: 0x%08x\n" msgstr " adresse code: 0x%08x\n" -#: vms-alpha.c:5883 +#: 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:5886 vms-alpha.c:5962 vms-alpha.c:5981 +#: 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:5888 vms-alpha.c:5964 vms-alpha.c:5983 +#: 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:5895 +#: vms-alpha.c:5938 #, c-format msgid "SYM - Global symbol reference\n" msgstr "SYM - Référence du symbol globaux\n" -#: vms-alpha.c:5907 +#: 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:5908 +#: vms-alpha.c:5951 #, c-format msgid " flags : 0x%08x" msgstr " fanions : 0x%08x" -#: vms-alpha.c:5912 +#: vms-alpha.c:5955 #, c-format msgid " id match : %x\n" msgstr " correspondance id : %x\n" -#: vms-alpha.c:5914 +#: vms-alpha.c:5957 #, c-format msgid " error severity: %x\n" msgstr " sévérité d'erreur: %x\n" -#: vms-alpha.c:5917 +#: vms-alpha.c:5960 #, c-format msgid " entity name : %.*s\n" msgstr " nom d'entité : %.*s\n" -#: vms-alpha.c:5919 +#: vms-alpha.c:5962 #, c-format msgid " object name : %.*s\n" msgstr " nom d'objet : %.*s\n" -#: vms-alpha.c:5922 +#: vms-alpha.c:5965 #, c-format msgid " binary ident : 0x%08x\n" msgstr " ident binaire : 0x%08x\n" -#: vms-alpha.c:5925 +#: vms-alpha.c:5968 #, c-format msgid " ascii ident : %.*s\n" msgstr " ident ascii : %.*s\n" -#: vms-alpha.c:5933 +#: vms-alpha.c:5976 #, c-format msgid "SYMG - Universal symbol definition\n" msgstr "SYMG - Définition de symbole universel\n" -#: vms-alpha.c:5937 +#: vms-alpha.c:5980 #, c-format msgid " symbol vector offset: 0x%08x\n" msgstr " offset vecteur symbole: 0x%08x\n" -#: vms-alpha.c:5939 +#: vms-alpha.c:5982 #, c-format msgid " entry point: 0x%08x\n" msgstr " point d'entrée: 0x%08x\n" -#: vms-alpha.c:5941 +#: vms-alpha.c:5984 #, c-format msgid " proc descr : 0x%08x\n" msgstr " descr proc : 0x%08x\n" -#: vms-alpha.c:5943 +#: vms-alpha.c:5986 #, c-format msgid " psect index: %u\n" msgstr " index psect: %u\n" -#: vms-alpha.c:5954 +#: vms-alpha.c:5997 #, c-format msgid "SYMV - Vectored symbol definition\n" msgstr "SYMV - Définition symbole vectorisé\n" -#: vms-alpha.c:5958 +#: vms-alpha.c:6001 #, c-format msgid " vector : 0x%08x\n" msgstr " vecteur : 0x%08x\n" -#: vms-alpha.c:5960 vms-alpha.c:5979 +#: vms-alpha.c:6003 vms-alpha.c:6022 #, c-format msgid " psect offset: %u\n" msgstr " offset psect: %u\n" -#: vms-alpha.c:5973 +#: 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:5977 +#: vms-alpha.c:6020 #, c-format msgid " version mask: 0x%08x\n" msgstr " masque de version: 0x%08x\n" -#: vms-alpha.c:5988 +#: 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:6022 +#: 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:6025 +#: 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:6029 +#: 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:6034 +#: 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:6039 +#: vms-alpha.c:6086 #, c-format msgid " global name: %.*s\n" msgstr " nom global: %.*s\n" -#: vms-alpha.c:6049 +#: vms-alpha.c:6097 #, c-format msgid " %s (len=%u+%u):\n" msgstr " %s (long=%u+%u):\n" -#: vms-alpha.c:6064 +#: vms-alpha.c:6119 #, c-format msgid " (type: %3u, size: 4+%3u): " msgstr " (type: %3u, taille: 4+%3u): " -#: vms-alpha.c:6068 +#: vms-alpha.c:6123 #, c-format msgid "STA_GBL (stack global) %.*s\n" msgstr "STA_GBL (pile globals) %.*s\n" -#: vms-alpha.c:6072 +#: 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:6076 +#: 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:6081 +#: 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:6082 +#: 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:6088 +#: vms-alpha.c:6144 #, c-format msgid "STA_LI (stack literal)\n" msgstr "STA_LI (pile literale)\n" -#: vms-alpha.c:6091 +#: vms-alpha.c:6147 #, c-format msgid "STA_MOD (stack module)\n" msgstr "STA_MOD (pile module)\n" -#: vms-alpha.c:6094 +#: 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:6098 +#: vms-alpha.c:6154 #, c-format msgid "STO_B (store byte)\n" msgstr "STO_B (stocke octet)\n" -#: vms-alpha.c:6101 +#: vms-alpha.c:6157 #, c-format msgid "STO_W (store word)\n" msgstr "STO_W (stocke mot)\n" -#: vms-alpha.c:6104 +#: vms-alpha.c:6160 #, c-format msgid "STO_LW (store longword)\n" msgstr "STO_LW (stocke mot long)\n" -#: vms-alpha.c:6107 +#: vms-alpha.c:6163 #, c-format msgid "STO_QW (store quadword)\n" msgstr "STO_QW (stocke quad mot)\n" -#: vms-alpha.c:6113 +#: 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:6120 +#: vms-alpha.c:6176 #, c-format msgid "STO_GBL (store global) %.*s\n" msgstr "STO_GBL (stocke globale) %.*s\n" -#: vms-alpha.c:6124 +#: 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:6128 +#: vms-alpha.c:6184 #, c-format msgid "STO_RB (store relative branch)\n" msgstr "STO_RB (stocke branche relative)\n" -#: vms-alpha.c:6131 +#: vms-alpha.c:6187 #, c-format msgid "STO_AB (store absolute branch)\n" msgstr "STO_AB (stocke branche absolue)\n" -#: vms-alpha.c:6134 +#: 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:6140 +#: 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:6147 +#: 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:6151 +#: 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:6154 +#: 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:6157 +#: 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:6161 +#: vms-alpha.c:6217 #, c-format msgid "OPR_NOP (no-operation)\n" msgstr "OPR_NOP (pas d'operation)\n" -#: vms-alpha.c:6164 +#: vms-alpha.c:6220 #, c-format msgid "OPR_ADD (add)\n" msgstr "OPR_ADD (ajout)\n" -#: vms-alpha.c:6167 +#: vms-alpha.c:6223 #, c-format msgid "OPR_SUB (substract)\n" msgstr "OPR_SUB (soustraction)\n" -#: vms-alpha.c:6170 +#: vms-alpha.c:6226 #, c-format msgid "OPR_MUL (multiply)\n" msgstr "OPR_MUL (multiplication)\n" -#: vms-alpha.c:6173 +#: vms-alpha.c:6229 #, c-format msgid "OPR_DIV (divide)\n" msgstr "OPR_DIV (division)\n" -#: vms-alpha.c:6176 +#: vms-alpha.c:6232 #, c-format msgid "OPR_AND (logical and)\n" msgstr "OPR_AND (et logique)\n" -#: vms-alpha.c:6179 +#: vms-alpha.c:6235 #, c-format msgid "OPR_IOR (logical inclusive or)\n" msgstr "OPR_IOR (ou inclusif logique)\n" -#: vms-alpha.c:6182 +#: vms-alpha.c:6238 #, c-format msgid "OPR_EOR (logical exclusive or)\n" msgstr "OPR_EOR (ou exclusif logique)\n" -#: vms-alpha.c:6185 +#: vms-alpha.c:6241 #, c-format msgid "OPR_NEG (negate)\n" msgstr "OPR_NEG (négation)\n" -#: vms-alpha.c:6188 +#: vms-alpha.c:6244 #, c-format msgid "OPR_COM (complement)\n" msgstr "OPR_COM (complément)\n" -#: vms-alpha.c:6191 +#: vms-alpha.c:6247 #, c-format msgid "OPR_INSV (insert field)\n" msgstr "OPR_INSV (insertion champ)\n" -#: vms-alpha.c:6194 +#: vms-alpha.c:6250 #, c-format msgid "OPR_ASH (arithmetic shift)\n" msgstr "OPR_ASH (décalage arithmetique)\n" -#: vms-alpha.c:6197 +#: vms-alpha.c:6253 #, c-format msgid "OPR_USH (unsigned shift)\n" msgstr "OPR_USH (décalage non signé)\n" -#: vms-alpha.c:6200 +#: vms-alpha.c:6256 #, c-format msgid "OPR_ROT (rotate)\n" msgstr "OPR_ROT (rotation)\n" -#: vms-alpha.c:6203 +#: vms-alpha.c:6259 #, c-format msgid "OPR_SEL (select)\n" msgstr "OPR_SEL (selection)\n" -#: vms-alpha.c:6206 +#: 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:6209 +#: 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:6213 +#: 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:6217 +#: 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:6218 +#: vms-alpha.c:6275 #, c-format msgid " linkage index: %u, procedure: %.*s\n" msgstr " index liaison: %u, procédure: %.*s\n" -#: vms-alpha.c:6221 +#: vms-alpha.c:6278 #, c-format msgid " signature: %.*s\n" msgstr " signature: %.*s\n" -#: vms-alpha.c:6224 +#: vms-alpha.c:6281 #, c-format msgid "STC_GBL (store cond global)\n" msgstr "STC_GBL (stocke cond globale)\n" -#: vms-alpha.c:6225 +#: vms-alpha.c:6283 #, c-format msgid " linkage index: %u, global: %.*s\n" msgstr " index liaison: %u, globale: %.*s\n" -#: vms-alpha.c:6229 +#: 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:6230 +#: 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:6234 +#: 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:6236 +#: 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:6243 +#: 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:6247 +#: 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:6251 +#: 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:6255 +#: 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:6259 +#: 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:6263 +#: 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:6267 +#: 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:6271 +#: 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:6276 +#: 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:6280 +#: 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:6284 +#: 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:6290 +#: 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:6294 +#: vms-alpha.c:6354 #, c-format msgid "CTL_DFLOC (define location)\n" msgstr "CTL_DFLOC (définir position)\n" -#: vms-alpha.c:6297 +#: vms-alpha.c:6357 #, c-format msgid "CTL_STLOC (set location)\n" msgstr "CTL_STLOC (fixer position)\n" -#: vms-alpha.c:6300 +#: 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:6303 vms-alpha.c:6717 +#: 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:6333 vms-alpha.c:6372 +#: 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:6354 +#: 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:6380 +#: 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:6393 +#: vms-alpha.c:6453 #, c-format msgid " corrupted GST\n" msgstr " GST corrompu\n" -#: vms-alpha.c:6401 +#: vms-alpha.c:6461 #, c-format msgid "cannot read GST record\n" msgstr "ne peut lire l'enregistrement GST\n" -#: vms-alpha.c:6430 +#: 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:6453 +#: 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:6466 +#: 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:6473 +#: vms-alpha.c:6535 #, c-format msgid " %08x" msgstr " %08x" -#: vms-alpha.c:6498 +#: vms-alpha.c:6561 #, c-format msgid " image %u (%u entries)\n" msgstr " image %u (%u entrées)\n" -#: vms-alpha.c:6503 +#: 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:6524 +#: vms-alpha.c:6589 #, c-format msgid " image %u (%u entries), offsets:\n" msgstr " image %u (%u entrées), offsets:\n" -#: vms-alpha.c:6531 +#: vms-alpha.c:6596 #, c-format msgid " 0x%08x" msgstr " 0x%08x" #. 64 bits. -#: vms-alpha.c:6653 +#: vms-alpha.c:6718 #, c-format msgid "64 bits *unhandled*\n" msgstr "64 bits *non supporté*\n" -#: vms-alpha.c:6657 +#: 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:6668 +#: vms-alpha.c:6734 #, c-format msgid "non-contiguous array of %s\n" msgstr "table de %s non contiguë\n" -#: vms-alpha.c:6672 +#: 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:6676 +#: vms-alpha.c:6744 #, c-format msgid "arsize: %u, a0: 0x%08x\n" msgstr "arsize: %u, a0: 0x%08x\n" -#: vms-alpha.c:6680 +#: vms-alpha.c:6748 #, c-format msgid "Strides:\n" msgstr "Pas:\n" -#: vms-alpha.c:6685 -#, c-format -msgid "[%u]: %u\n" -msgstr "[%u]: %u\n" - -#: vms-alpha.c:6690 +#: vms-alpha.c:6758 #, c-format msgid "Bounds:\n" msgstr "Limites:\n" -#: vms-alpha.c:6695 +#: 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:6707 +#: 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:6711 +#: vms-alpha.c:6781 #, c-format msgid "base: %u, pos: %u\n" msgstr "base: %u, pos: %u\n" -#: vms-alpha.c:6731 +#: vms-alpha.c:6802 #, c-format msgid "vflags: 0x%02x, value: 0x%08x " msgstr "vflags: 0x%02x, valeur: 0x%08x " -#: vms-alpha.c:6737 +#: vms-alpha.c:6808 #, c-format msgid "(no value)\n" msgstr "(pas de valeur)\n" -#: vms-alpha.c:6740 +#: vms-alpha.c:6811 #, c-format msgid "(not active)\n" msgstr "(pas active)\n" -#: vms-alpha.c:6743 +#: vms-alpha.c:6814 #, c-format msgid "(not allocated)\n" msgstr "(pas allouée)\n" -#: vms-alpha.c:6746 +#: vms-alpha.c:6817 #, c-format msgid "(descriptor)\n" msgstr "(descripteur)\n" -#: vms-alpha.c:6750 +#: vms-alpha.c:6821 #, c-format msgid "(trailing value)\n" msgstr "(valeur postérieure)\n" -#: vms-alpha.c:6753 +#: vms-alpha.c:6824 #, c-format msgid "(value spec follows)\n" msgstr "(spécificités de la valeur suivent)\n" -#: vms-alpha.c:6756 +#: vms-alpha.c:6827 #, c-format msgid "(at bit offset %u)\n" msgstr "(à l'offset de bit %u)\n" -#: vms-alpha.c:6759 +#: 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:6766 +#: vms-alpha.c:6838 msgid "literal" msgstr "litérale" -#: vms-alpha.c:6769 +#: vms-alpha.c:6841 msgid "address" msgstr "adresse" -#: vms-alpha.c:6772 +#: vms-alpha.c:6844 msgid "desc" msgstr "desc" -#: vms-alpha.c:6775 +#: vms-alpha.c:6847 msgid "reg" msgstr "reg" -#: vms-alpha.c:6850 +#: 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:6861 +#: 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:6866 +#: vms-alpha.c:6941 #, c-format msgid " type: %3u, len: %3u (at 0x%08x): " msgstr " type: %3u, long: %3u (à 0x%08x): " -#: vms-alpha.c:6880 +#: vms-alpha.c:6955 #, c-format msgid "cannot read DST symbol\n" msgstr "ne peut lire le symbole DST\n" -#: vms-alpha.c:6923 +#: vms-alpha.c:6998 #, c-format msgid "standard data: %s\n" msgstr "données standards: %s\n" -#: vms-alpha.c:6926 vms-alpha.c:7010 +#: vms-alpha.c:7001 vms-alpha.c:7089 #, c-format msgid " name: %.*s\n" msgstr " nom: %.*s\n" -#: vms-alpha.c:6933 +#: vms-alpha.c:7008 #, c-format msgid "modbeg\n" msgstr "début module\n" -#: vms-alpha.c:6934 +#: 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:6940 vms-alpha.c:7206 +#: vms-alpha.c:7016 vms-alpha.c:7290 #, c-format msgid " module name: %.*s\n" msgstr " nom du module: %.*s\n" -#: vms-alpha.c:6943 +#: vms-alpha.c:7019 #, c-format msgid " compiler : %.*s\n" msgstr " compilateur : %.*s\n" -#: vms-alpha.c:6948 +#: vms-alpha.c:7024 #, c-format msgid "modend\n" msgstr "fin module\n" -#: vms-alpha.c:6955 +#: vms-alpha.c:7031 msgid "rtnbeg\n" msgstr "début rtn\n" -#: vms-alpha.c:6956 +#: 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:6961 +#: vms-alpha.c:7038 #, c-format msgid " routine name: %.*s\n" msgstr " nom routine : %.*s\n" -#: vms-alpha.c:6969 +#: vms-alpha.c:7046 #, c-format msgid "rtnend: size 0x%08x\n" msgstr "fin rtn: taille 0x%08x\n" -#: vms-alpha.c:6977 +#: vms-alpha.c:7054 #, c-format msgid "prolog: bkpt address 0x%08x\n" msgstr "prologue: adresse bkpt 0x%08x\n" -#: vms-alpha.c:6985 +#: vms-alpha.c:7063 #, c-format msgid "epilog: flags: %u, count: %u\n" msgstr "épilogue: fanions: %u, nombre: %u\n" -#: vms-alpha.c:6994 +#: 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:7003 +#: vms-alpha.c:7082 #, c-format msgid "blkend: size: 0x%08x\n" msgstr "fin blk: taille: 0x%08x\n" -#: vms-alpha.c:7009 +#: vms-alpha.c:7088 #, c-format msgid "typspec (len: %u)\n" msgstr "typspec (long: %u)\n" -#: vms-alpha.c:7016 +#: vms-alpha.c:7095 #, c-format msgid "septyp, name: %.*s\n" msgstr "septyp, nom: %.*s\n" -#: vms-alpha.c:7025 +#: vms-alpha.c:7104 #, c-format msgid "recbeg: name: %.*s\n" msgstr "début rec: nom: %.*s\n" -#: vms-alpha.c:7032 +#: 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:7035 +#: 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:7039 +#: vms-alpha.c:7119 #, c-format msgid "enumelt, name: %.*s\n" msgstr "énumération éléments, nom: %.*s\n" -#: vms-alpha.c:7043 +#: vms-alpha.c:7123 #, c-format msgid "enumend\n" msgstr "fin énumération\n" -#: vms-alpha.c:7060 +#: 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:7062 +#: vms-alpha.c:7143 #, c-format msgid " address: 0x%08x, size: %u\n" msgstr " adresse: 0x%08x, taille: %u\n" -#: vms-alpha.c:7072 +#: vms-alpha.c:7153 #, c-format msgid "line num (len: %u)\n" msgstr "num ligne (long: %u)\n" -#: vms-alpha.c:7089 +#: vms-alpha.c:7170 #, c-format msgid "delta_pc_w %u\n" msgstr "delta_pc_w %u\n" -#: vms-alpha.c:7096 +#: vms-alpha.c:7177 #, c-format msgid "incr_linum(b): +%u\n" msgstr "incr_linum(b): +%u\n" -#: vms-alpha.c:7102 +#: vms-alpha.c:7183 #, c-format msgid "incr_linum_w: +%u\n" msgstr "incr_linum_w: +%u\n" -#: vms-alpha.c:7108 +#: vms-alpha.c:7189 #, c-format msgid "incr_linum_l: +%u\n" msgstr "incr_linum_l: +%u\n" -#: vms-alpha.c:7114 +#: vms-alpha.c:7195 #, c-format msgid "set_line_num(w) %u\n" msgstr "set_line_num(w) %u\n" -#: vms-alpha.c:7119 +#: vms-alpha.c:7200 #, c-format msgid "set_line_num_b %u\n" msgstr "set_line_num_b %u\n" -#: vms-alpha.c:7124 +#: vms-alpha.c:7205 #, c-format msgid "set_line_num_l %u\n" msgstr "set_line_num_l %u\n" -#: vms-alpha.c:7129 +#: vms-alpha.c:7210 #, c-format msgid "set_abs_pc: 0x%08x\n" msgstr "set_abs_pc: 0x%08x\n" -#: vms-alpha.c:7133 +#: vms-alpha.c:7214 #, c-format msgid "delta_pc_l: +0x%08x\n" msgstr "delta_pc_l: +0x%08x\n" -#: vms-alpha.c:7138 +#: vms-alpha.c:7219 #, c-format msgid "term(b): 0x%02x" msgstr "term(b): 0x%02x" -#: vms-alpha.c:7140 +#: vms-alpha.c:7221 #, c-format msgid " pc: 0x%08x\n" msgstr " pc: 0x%08x\n" -#: vms-alpha.c:7145 +#: vms-alpha.c:7226 #, c-format msgid "term_w: 0x%04x" msgstr "term_w: 0x%04x" -#: vms-alpha.c:7147 +#: vms-alpha.c:7228 #, c-format msgid " pc: 0x%08x\n" msgstr " pc: 0x%08x\n" -#: vms-alpha.c:7153 +#: vms-alpha.c:7234 #, c-format msgid "delta pc +%-4d" msgstr "delta pc +%-4d" -#: vms-alpha.c:7156 +#: vms-alpha.c:7238 #, c-format msgid " pc: 0x%08x line: %5u\n" msgstr " pc: 0x%08x ligne: %5u\n" -#: vms-alpha.c:7161 +#: vms-alpha.c:7243 #, c-format msgid " *unhandled* cmd %u\n" msgstr " cmd %u *non gérée*\n" -#: vms-alpha.c:7176 +#: vms-alpha.c:7258 #, c-format msgid "source (len: %u)\n" msgstr "source (long: %u)\n" -#: vms-alpha.c:7190 +#: 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:7194 +#: 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:7203 +#: vms-alpha.c:7287 #, c-format msgid " filename : %.*s\n" msgstr " nom fichier: %.*s\n" -#: vms-alpha.c:7212 +#: vms-alpha.c:7296 #, c-format msgid " setfile %u\n" msgstr " setfile %u\n" -#: vms-alpha.c:7217 vms-alpha.c:7222 +#: vms-alpha.c:7301 vms-alpha.c:7306 #, c-format msgid " setrec %u\n" msgstr " setrec %u\n" -#: vms-alpha.c:7227 vms-alpha.c:7232 +#: vms-alpha.c:7311 vms-alpha.c:7316 #, c-format msgid " setlnum %u\n" msgstr " setlnum %u\n" -#: vms-alpha.c:7237 vms-alpha.c:7242 +#: vms-alpha.c:7321 vms-alpha.c:7326 #, c-format msgid " deflines %u\n" msgstr " deflines %u\n" -#: vms-alpha.c:7246 +#: vms-alpha.c:7330 #, c-format msgid " formfeed\n" msgstr " formfeed\n" -#: vms-alpha.c:7250 +#: vms-alpha.c:7334 #, c-format msgid " *unhandled* cmd %u\n" msgstr " cmd %u *non gérée*\n" -#: vms-alpha.c:7262 +#: vms-alpha.c:7346 #, c-format msgid "*unhandled* dst type %u\n" msgstr "type dst %u *non géré*\n" -#: vms-alpha.c:7294 +#: vms-alpha.c:7378 #, c-format msgid "cannot read EIHD\n" msgstr "ne peut lire EIHD\n" -#: vms-alpha.c:7297 +#: 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:7300 +#: vms-alpha.c:7386 #, c-format msgid " majorid: %u, minorid: %u\n" msgstr " id majeur: %u, id mineur: %u\n" -#: vms-alpha.c:7308 +#: vms-alpha.c:7394 msgid "executable" msgstr "exécutable" -#: vms-alpha.c:7311 +#: vms-alpha.c:7397 msgid "linkable image" msgstr "image liable" -#: vms-alpha.c:7317 +#: vms-alpha.c:7404 #, c-format msgid " image type: %u (%s)" msgstr " type image: %u (%s)" -#: vms-alpha.c:7323 +#: vms-alpha.c:7410 msgid "native" msgstr "natif" -#: vms-alpha.c:7326 +#: vms-alpha.c:7413 msgid "CLI" msgstr "CLI" -#: vms-alpha.c:7332 +#: vms-alpha.c:7420 #, c-format msgid ", subtype: %u (%s)\n" msgstr ", sous-type: %u (%s)\n" -#: vms-alpha.c:7338 +#: 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:7342 +#: vms-alpha.c:7431 #, c-format msgid " fixup info rva: " msgstr " correctif info rva: " -#: vms-alpha.c:7344 +#: vms-alpha.c:7433 #, c-format msgid ", symbol vector rva: " msgstr ", vecteur de symbol rva: " -#: vms-alpha.c:7347 +#: vms-alpha.c:7436 #, c-format msgid "" "\n" @@ -5251,694 +7399,688 @@ msgstr "" "\n" " offset tableau version: %u\n" -#: vms-alpha.c:7351 +#: 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:7357 +#: vms-alpha.c:7447 #, c-format msgid " linker flags: %08x:" msgstr " fanions lieur: %08x:" -#: vms-alpha.c:7387 +#: 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:7393 +#: vms-alpha.c:7484 #, c-format msgid " BPAGE: %u" msgstr " BPAGE: %u" -#: vms-alpha.c:7399 +#: 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:7402 +#: vms-alpha.c:7494 #, c-format msgid ", alias: %u\n" msgstr ", alias: %u\n" -#: vms-alpha.c:7410 +#: vms-alpha.c:7502 #, c-format msgid "system version array information:\n" msgstr "information sur table de version système:\n" -#: vms-alpha.c:7414 +#: 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:7424 +#: vms-alpha.c:7516 #, c-format msgid "cannot read EIHVN version\n" msgstr "ne peut lire la version EIHVN\n" -#: vms-alpha.c:7427 +#: vms-alpha.c:7519 #, c-format msgid " %02u " msgstr " %02u " -#: vms-alpha.c:7431 +#: vms-alpha.c:7523 msgid "BASE_IMAGE " msgstr "BASE_IMAGE " -#: vms-alpha.c:7434 +#: vms-alpha.c:7526 msgid "MEMORY_MANAGEMENT" msgstr "MEMORY_MANAGEMENT" -#: vms-alpha.c:7437 +#: vms-alpha.c:7529 msgid "IO " msgstr "IO " -#: vms-alpha.c:7440 +#: vms-alpha.c:7532 msgid "FILES_VOLUMES " msgstr "FILES_VOLUMES " -#: vms-alpha.c:7443 +#: vms-alpha.c:7535 msgid "PROCESS_SCHED " msgstr "PROCESS_SCHED " -#: vms-alpha.c:7446 +#: vms-alpha.c:7538 msgid "SYSGEN " msgstr "SYSGEN " -#: vms-alpha.c:7449 +#: vms-alpha.c:7541 msgid "CLUSTERS_LOCKMGR " msgstr "CLUSTERS_LOCKMGR " -#: vms-alpha.c:7452 +#: vms-alpha.c:7544 msgid "LOGICAL_NAMES " msgstr "LOGICAL_NAMES " -#: vms-alpha.c:7455 +#: vms-alpha.c:7547 msgid "SECURITY " msgstr "SECURITY " -#: vms-alpha.c:7458 +#: vms-alpha.c:7550 msgid "IMAGE_ACTIVATOR " msgstr "IMAGE_ACTIVATOR " -#: vms-alpha.c:7461 +#: vms-alpha.c:7553 msgid "NETWORKS " msgstr "NETWORKS " -#: vms-alpha.c:7464 +#: vms-alpha.c:7556 msgid "COUNTERS " msgstr "COUNTERS " -#: vms-alpha.c:7467 +#: vms-alpha.c:7559 msgid "STABLE " msgstr "STABLE " -#: vms-alpha.c:7470 +#: vms-alpha.c:7562 msgid "MISC " msgstr "MISC " -#: vms-alpha.c:7473 +#: vms-alpha.c:7565 msgid "CPU " msgstr "CPU " -#: vms-alpha.c:7476 +#: vms-alpha.c:7568 msgid "VOLATILE " msgstr "VOLATILE " -#: vms-alpha.c:7479 +#: vms-alpha.c:7571 msgid "SHELL " msgstr "SHELL " -#: vms-alpha.c:7482 +#: vms-alpha.c:7574 msgid "POSIX " msgstr "POSIX " -#: vms-alpha.c:7485 +#: vms-alpha.c:7577 msgid "MULTI_PROCESSING " msgstr "MULTI_PROCESSING " -#: vms-alpha.c:7488 +#: vms-alpha.c:7580 msgid "GALAXY " msgstr "GALAXY " -#: vms-alpha.c:7491 +#: vms-alpha.c:7583 msgid "*unknown* " msgstr "*inconnu* " -#: vms-alpha.c:7494 -#, c-format -msgid ": %u.%u\n" -msgstr ": %u.%u\n" - -#: vms-alpha.c:7507 vms-alpha.c:7766 +#: vms-alpha.c:7599 vms-alpha.c:7874 #, c-format msgid "cannot read EIHA\n" msgstr "ne peut lire EIHA\n" -#: vms-alpha.c:7510 +#: vms-alpha.c:7602 #, c-format msgid "Image activation: (size=%u)\n" msgstr "Activation de l'image: (taille=%u)\n" -#: vms-alpha.c:7512 +#: 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:7515 +#: 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:7518 +#: 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:7521 +#: 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:7524 +#: 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:7535 +#: vms-alpha.c:7632 #, c-format msgid "cannot read EIHI\n" msgstr "ne peut lire EIHI\n" -#: vms-alpha.c:7538 +#: 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:7541 +#: vms-alpha.c:7639 #, c-format msgid " image name : %.*s\n" msgstr " nom de l'image : %.*s\n" -#: vms-alpha.c:7543 +#: vms-alpha.c:7641 #, c-format msgid " link time : %s\n" msgstr " heure de liaison : %s\n" -#: vms-alpha.c:7545 +#: vms-alpha.c:7643 #, c-format msgid " image ident : %.*s\n" msgstr " ident image : %.*s\n" -#: vms-alpha.c:7547 +#: vms-alpha.c:7645 #, c-format msgid " linker ident : %.*s\n" msgstr " ident lieur : %.*s\n" -#: vms-alpha.c:7549 +#: vms-alpha.c:7647 #, c-format msgid " image build ident: %.*s\n" msgstr " ident construction image: %.*s\n" -#: vms-alpha.c:7559 +#: vms-alpha.c:7657 #, c-format msgid "cannot read EIHS\n" msgstr "ne peut lire EIHS\n" -#: vms-alpha.c:7562 +#: 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:7567 +#: 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:7571 +#: 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:7575 +#: 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:7588 +#: vms-alpha.c:7690 #, c-format msgid "cannot read EISD\n" msgstr "ne peut lire EISD\n" -#: vms-alpha.c:7598 +#: 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:7605 +#: 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:7610 +#: vms-alpha.c:7714 #, c-format msgid " flags: 0x%04x" msgstr " fanions: 0x%04x" -#: vms-alpha.c:7647 +#: 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:7653 +#: vms-alpha.c:7758 msgid "NORMAL" msgstr "NORMAL" -#: vms-alpha.c:7656 +#: vms-alpha.c:7761 msgid "SHRFXD" msgstr "SHRFXD" -#: vms-alpha.c:7659 +#: vms-alpha.c:7764 msgid "PRVFXD" msgstr "PRVFXD" -#: vms-alpha.c:7662 +#: vms-alpha.c:7767 msgid "SHRPIC" msgstr "SHRPIC" -#: vms-alpha.c:7665 +#: vms-alpha.c:7770 msgid "PRVPIC" msgstr "PRVPIC" -#: vms-alpha.c:7668 +#: vms-alpha.c:7773 msgid "USRSTACK" msgstr "USRSTACK" -#: vms-alpha.c:7676 +#: vms-alpha.c:7779 +msgid ")\n" +msgstr ")\n" + +#: vms-alpha.c:7782 #, c-format msgid " ident: 0x%08x, name: %.*s\n" msgstr " ident: 0x%08x, nom: %.*s\n" -#: vms-alpha.c:7686 +#: vms-alpha.c:7792 #, c-format msgid "cannot read DMT\n" msgstr "ne peut lire DMT\n" -#: vms-alpha.c:7690 +#: vms-alpha.c:7796 #, c-format msgid "Debug module table:\n" msgstr "Table de debug du module:\n" -#: vms-alpha.c:7699 +#: 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:7704 +#: 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:7714 +#: vms-alpha.c:7821 #, c-format msgid "cannot read DMT psect\n" msgstr "ne peut lire le psect DMT\n" -#: vms-alpha.c:7717 +#: 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:7730 +#: vms-alpha.c:7838 #, c-format msgid "cannot read DST\n" msgstr "ne peut lire DST\n" -#: vms-alpha.c:7740 +#: vms-alpha.c:7848 #, c-format msgid "cannot read GST\n" msgstr "ne peut lire GST\n" -#: vms-alpha.c:7744 +#: vms-alpha.c:7852 #, c-format msgid "Global symbol table:\n" msgstr "Table des symboles globaux:\n" -#: vms-alpha.c:7772 +#: 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:7775 +#: vms-alpha.c:7885 #, c-format msgid " iaflink : 0x%08x %08x\n" msgstr " lien iaf : 0x%08x %08x\n" -#: vms-alpha.c:7778 +#: vms-alpha.c:7889 #, c-format msgid " fixuplnk: 0x%08x %08x\n" msgstr " lien correctif: 0x%08x %08x\n" -#: vms-alpha.c:7781 +#: vms-alpha.c:7892 #, c-format msgid " size : %u\n" msgstr " taille : %u\n" -#: vms-alpha.c:7783 +#: vms-alpha.c:7894 #, c-format msgid " flags: 0x%08x\n" msgstr " fanions: 0x%08x\n" -#: vms-alpha.c:7787 +#: vms-alpha.c:7899 #, c-format msgid " qrelfixoff: %5u, lrelfixoff: %5u\n" msgstr " qrelfixoff: %5u, lrelfixoff: %5u\n" -#: vms-alpha.c:7791 +#: vms-alpha.c:7904 #, c-format msgid " qdotadroff: %5u, ldotadroff: %5u\n" msgstr " qdotadroff: %5u, ldotadroff: %5u\n" -#: vms-alpha.c:7795 +#: vms-alpha.c:7909 #, c-format msgid " codeadroff: %5u, lpfixoff : %5u\n" msgstr " codeadroff: %5u, lpfixoff : %5u\n" -#: vms-alpha.c:7798 +#: vms-alpha.c:7912 #, c-format msgid " chgprtoff : %5u\n" msgstr " chgprtoff : %5u\n" -#: vms-alpha.c:7801 +#: vms-alpha.c:7916 #, c-format msgid " shlstoff : %5u, shrimgcnt : %5u\n" msgstr " shlstoff : %5u, shrimgcnt : %5u\n" -#: vms-alpha.c:7803 +#: vms-alpha.c:7919 #, c-format msgid " shlextra : %5u, permctx : %5u\n" msgstr " shlextra : %5u, permctx : %5u\n" -#: vms-alpha.c:7806 +#: vms-alpha.c:7922 #, c-format msgid " base_va : 0x%08x\n" msgstr " base_va : 0x%08x\n" -#: vms-alpha.c:7808 +#: vms-alpha.c:7924 #, c-format msgid " lppsbfixoff: %5u\n" msgstr " lppsbfixoff: %5u\n" -#: vms-alpha.c:7816 +#: vms-alpha.c:7932 #, c-format msgid " Shareable images:\n" msgstr " Images partageables:\n" -#: vms-alpha.c:7820 +#: 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:7827 +#: vms-alpha.c:7944 #, c-format msgid " quad-word relocation fixups:\n" msgstr " correctifs du réadressage des quad-mots:\n" -#: vms-alpha.c:7832 +#: vms-alpha.c:7949 #, c-format msgid " long-word relocation fixups:\n" msgstr " correctifs du réadressage des mots longs:\n" -#: vms-alpha.c:7837 +#: 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:7842 +#: 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:7847 +#: 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:7852 +#: vms-alpha.c:7969 #, c-format -msgid " Linkage Pairs Referece Fixups:\n" +msgid " Linkage Pairs Reference Fixups:\n" msgstr " Correctifs des références des paires de liaison:\n" -#: vms-alpha.c:7861 +#: vms-alpha.c:7978 #, c-format msgid " Change Protection (%u entries):\n" msgstr " Changement de protection (%u entrées):\n" -#: vms-alpha.c:7866 +#: 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:8706 +#: vms-alpha.c:8824 msgid "%P: relocatable link is not supported\n" msgstr "%P: lien relocalisable pas supporté\n" -#: vms-alpha.c:8776 +#: 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:1423 +#: 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:836 -#, 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:857 -#, 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:1416 +#: 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:1468 +#: 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:1490 +#: 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: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:1531 +#: 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:1677 +#: 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:1784 +#: 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:2103 +#: 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:3194 +#: xcofflink.c:3198 #, c-format msgid "%s: no such symbol" msgstr "%s: pas de tel symbole" -#: xcofflink.c:3299 +#: 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:3678 +#: xcofflink.c:3682 msgid "error: undefined symbol __rtinit" msgstr "erreur: symbole __rtinit non défini" -#: xcofflink.c:4057 +#: 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:4068 +#: 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:4084 +#: 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:5106 +#: 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" -#: elf32-ia64.c:628 elf64-ia64.c:628 -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." - -#: elf32-ia64.c:2284 elf64-ia64.c:2284 -msgid "@pltoff reloc against local symbol" -msgstr "relocalisation @pltoff vers un symbole local" - -#: elf32-ia64.c:3687 elf64-ia64.c:3687 +#: /Users/gingold/Repositories/fsf/binutils-gdb.git/bfd/elfnn-aarch64.c:1890 #, c-format -msgid "%s: short data segment overflowed (0x%lx >= 0x400000)" -msgstr "%s: débordement du segment de données court (0x%lx >= 0x400000)" - -#: elf32-ia64.c:3698 elf64-ia64.c:3698 -#, c-format -msgid "%s: __gp does not cover short data segment" -msgstr "%s: __gp ne couvre pas le segment de données court" - -#: elf32-ia64.c:3965 elf64-ia64.c:3965 -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 »" +msgid "Invalid AArch64 reloc number: %d" +msgstr "Numéro de réadressage AArch64 invalide: %d" -#: elf32-ia64.c:4032 elf64-ia64.c:4032 -msgid "%B: @gprel relocation against dynamic symbol %s" -msgstr "%B: réadressage @gprel vers le symbole dynamique %s" +#: /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)" -#: elf32-ia64.c:4095 elf64-ia64.c:4095 -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" +#: /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)" -#: elf32-ia64.c:4232 elf64-ia64.c:4232 -msgid "%B: @internal branch to dynamic symbol %s" -msgstr "%B: branchement @internal vers le symbole dynamique %s" - -#: elf32-ia64.c:4234 elf64-ia64.c:4234 -msgid "%B: speculation fixup to dynamic symbol %s" -msgstr "%B: spéculation d'ajustements vers le symbole dynamique %s" +#: /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" -#: elf32-ia64.c:4236 elf64-ia64.c:4236 -msgid "%B: @pcrel relocation against dynamic symbol %s" -msgstr "%B: réadressage @pcrel vers le symbole dynamique %s" +#: /Users/gingold/Repositories/fsf/binutils-gdb.git/bfd/elfnn-aarch64.c:5431 +#, c-format +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" -#: elf32-ia64.c:4433 elf64-ia64.c:4433 -msgid "unsupported reloc" -msgstr "relocalisation non supportée" +#: /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" -#: elf32-ia64.c:4471 elf64-ia64.c:4471 -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 »." +#: /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." -#: elf32-ia64.c:4486 elf64-ia64.c:4486 -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)." +#: /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 »" -#: elf32-ia64.c:4748 elf64-ia64.c:4748 -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" +#: /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" -#: elf32-ia64.c:4757 elf64-ia64.c:4757 -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" +#: 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" -#: elf32-ia64.c:4766 elf64-ia64.c:4766 -msgid "%B: linking 64-bit files with 32-bit files" -msgstr "%B: édition de liens entre fichiers 64 bits et fichiers 32 bits" +#: 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" -#: elf32-ia64.c:4775 elf64-ia64.c:4775 -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" +#: 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" -#: elf32-ia64.c:4785 elf64-ia64.c:4785 -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" +#: 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:1002 pepigen.c:1002 pex64igen.c:1002 +#: peigen.c:1089 pepigen.c:1089 pex64igen.c:1089 #, c-format -msgid "%s: line number overflow: 0x%lx > 0xffff" -msgstr "%s: débordement du nombre de lignes: 0x%lx > 0xffff" +msgid "%B: line number overflow: 0x%lx > 0xffff" +msgstr "%B: débordement du nombre de lignes: 0x%lx > 0xffff" -#: peigen.c:1029 pepigen.c:1029 pex64igen.c:1029 +#: 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:1030 pepigen.c:1030 pex64igen.c:1030 +#: 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:1031 pepigen.c:1031 pex64igen.c:1031 +#: peigen.c:1235 pepigen.c:1235 pex64igen.c:1235 msgid "Resource Directory [.rsrc]" msgstr "Répertoire des resources [.rsrc]" -#: peigen.c:1032 pepigen.c:1032 pex64igen.c:1032 +#: peigen.c:1236 pepigen.c:1236 pex64igen.c:1236 msgid "Exception Directory [.pdata]" msgstr "Répertoire des exceptions [.pdata]" -#: peigen.c:1033 pepigen.c:1033 pex64igen.c:1033 +#: peigen.c:1237 pepigen.c:1237 pex64igen.c:1237 msgid "Security Directory" msgstr "Répertoire de la sécurité" -#: peigen.c:1034 pepigen.c:1034 pex64igen.c:1034 +#: 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:1035 pepigen.c:1035 pex64igen.c:1035 +#: peigen.c:1239 pepigen.c:1239 pex64igen.c:1239 msgid "Debug Directory" msgstr "Répertoire de débug" -#: peigen.c:1036 pepigen.c:1036 pex64igen.c:1036 +#: peigen.c:1240 pepigen.c:1240 pex64igen.c:1240 msgid "Description Directory" msgstr "Répertoire de description" -#: peigen.c:1037 pepigen.c:1037 pex64igen.c:1037 +#: peigen.c:1241 pepigen.c:1241 pex64igen.c:1241 msgid "Special Directory" msgstr "Répertoire spécial" -#: peigen.c:1038 pepigen.c:1038 pex64igen.c:1038 +#: peigen.c:1242 pepigen.c:1242 pex64igen.c:1242 msgid "Thread Storage Directory [.tls]" msgstr "Répertoire des files de stockage [.tls]" -#: peigen.c:1039 pepigen.c:1039 pex64igen.c:1039 +#: peigen.c:1243 pepigen.c:1243 pex64igen.c:1243 msgid "Load Configuration Directory" msgstr "Répertoire de chargement de configuration" -#: peigen.c:1040 pepigen.c:1040 pex64igen.c:1040 +#: peigen.c:1244 pepigen.c:1244 pex64igen.c:1244 msgid "Bound Import Directory" msgstr "Répertoire des importations limitées" -#: peigen.c:1041 pepigen.c:1041 pex64igen.c:1041 +#: 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:1042 pepigen.c:1042 pex64igen.c:1042 +#: peigen.c:1246 pepigen.c:1246 pex64igen.c:1246 msgid "Delay Import Directory" msgstr "Répertoire des délais d'importation" -#: peigen.c:1043 pepigen.c:1043 pex64igen.c:1043 +#: peigen.c:1247 pepigen.c:1247 pex64igen.c:1247 msgid "CLR Runtime Header" msgstr "En-tête exécutable CLR" -#: peigen.c:1044 pepigen.c:1044 pex64igen.c:1044 +#: peigen.c:1248 pepigen.c:1248 pex64igen.c:1248 msgid "Reserved" msgstr "Réservé" -#: peigen.c:1104 pepigen.c:1104 pex64igen.c:1104 +#: peigen.c:1308 pepigen.c:1308 pex64igen.c:1308 #, c-format msgid "" "\n" @@ -5947,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:1109 pepigen.c:1109 pex64igen.c:1109 +#: 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" @@ -5956,7 +8107,7 @@ msgstr "" "\n" "Il y a une table d'importation dans %s à 0x%lx\n" -#: peigen.c:1151 pepigen.c:1151 pex64igen.c:1151 +#: peigen.c:1363 pepigen.c:1363 pex64igen.c:1363 #, c-format msgid "" "\n" @@ -5965,12 +8116,12 @@ msgstr "" "\n" "Descripteur de fonction localisé à l'adresse de départ: %04lx\n" -#: peigen.c:1154 pepigen.c:1154 pex64igen.c:1154 +#: 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:1162 pepigen.c:1162 pex64igen.c:1162 +#: peigen.c:1375 pepigen.c:1375 pex64igen.c:1375 #, c-format msgid "" "\n" @@ -5979,7 +8130,7 @@ msgstr "" "\n" "Pas de section reldata! Descripteur de fonction pas décodé.\n" -#: peigen.c:1167 pepigen.c:1167 pex64igen.c:1167 +#: peigen.c:1380 pepigen.c:1380 pex64igen.c:1380 #, c-format msgid "" "\n" @@ -5988,7 +8139,7 @@ msgstr "" "\n" "Les tables d'importation (contenus interprété de la section %s)\n" -#: peigen.c:1170 pepigen.c:1170 pex64igen.c:1170 +#: peigen.c:1383 pepigen.c:1383 pex64igen.c:1383 #, c-format msgid "" " vma: Hint Time Forward DLL First\n" @@ -5997,30 +8148,36 @@ msgstr "" " vma: Hint Temps Avant DLL Premier\n" " Table Estampil. Chaîne Nom Thunk\n" -#: peigen.c:1218 pepigen.c:1218 pex64igen.c:1218 +#: 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:1229 pepigen.c:1229 pex64igen.c:1229 +#: 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:1254 pepigen.c:1254 pex64igen.c:1254 +#: 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: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:1415 pepigen.c:1415 pex64igen.c:1415 +#: peigen.c:1649 pepigen.c:1649 pex64igen.c:1649 #, c-format msgid "" "\n" @@ -6029,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:1424 pepigen.c:1424 pex64igen.c:1424 +#: 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" @@ -6038,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:1430 pepigen.c:1430 pex64igen.c:1430 +#: 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" @@ -6047,7 +8222,7 @@ msgstr "" "\n" "Il y a une table d'exportation dans %s à 0x%lx\n" -#: peigen.c:1458 pepigen.c:1458 pex64igen.c:1458 +#: peigen.c:1710 pepigen.c:1710 pex64igen.c:1710 #, c-format msgid "" "\n" @@ -6058,67 +8233,67 @@ msgstr "" "Les tables d'exportation (contenus interprété de la section %s)\n" "\n" -#: peigen.c:1462 pepigen.c:1462 pex64igen.c:1462 +#: 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:1465 pepigen.c:1465 pex64igen.c:1465 +#: 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:1468 pepigen.c:1468 pex64igen.c:1468 +#: 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:1471 pepigen.c:1471 pex64igen.c:1471 +#: 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:1477 pepigen.c:1477 pex64igen.c:1477 +#: 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:1480 pepigen.c:1480 pex64igen.c:1480 +#: peigen.c:1738 pepigen.c:1738 pex64igen.c:1738 #, c-format msgid "Number in:\n" msgstr "Numéro dans:\n" -#: peigen.c:1483 pepigen.c:1483 pex64igen.c:1483 +#: 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:1487 pepigen.c:1487 pex64igen.c:1487 +#: 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:1490 pepigen.c:1490 pex64igen.c:1490 +#: peigen.c:1748 pepigen.c:1748 pex64igen.c:1748 #, c-format msgid "Table Addresses\n" msgstr "Table d'adresses\n" -#: peigen.c:1493 pepigen.c:1493 pex64igen.c:1493 +#: 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:1498 pepigen.c:1498 pex64igen.c:1498 +#: 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:1503 pepigen.c:1503 pex64igen.c:1503 +#: 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:1517 pepigen.c:1517 pex64igen.c:1517 +#: peigen.c:1775 pepigen.c:1775 pex64igen.c:1775 #, c-format msgid "" "\n" @@ -6127,15 +8302,20 @@ msgstr "" "\n" "Table d'adresses d'exportation -- base de nombre ordinal %ld\n" -#: peigen.c:1536 pepigen.c:1536 pex64igen.c:1536 +#: 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:1547 pepigen.c:1547 pex64igen.c:1547 +#: peigen.c:1815 pepigen.c:1815 pex64igen.c:1815 msgid "Export RVA" msgstr "Exportation RVA" -#: peigen.c:1554 pepigen.c:1554 pex64igen.c:1554 +#: peigen.c:1822 pepigen.c:1822 pex64igen.c:1822 #, c-format msgid "" "\n" @@ -6144,18 +8324,43 @@ msgstr "" "\n" "Table [Ordinal/Nom de pointeur]\n" -#: peigen.c:1614 peigen.c:1797 pepigen.c:1614 pepigen.c:1797 pex64igen.c:1614 -#: pex64igen.c:1797 +#: 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:1621 pepigen.c:1621 pex64igen.c:1621 +#: 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:1623 pepigen.c:1623 pex64igen.c:1623 +#: peigen.c:1914 pepigen.c:1914 pex64igen.c:1914 #, c-format msgid "" " vma:\t\tBegin End EH EH PrologEnd Exception\n" @@ -6164,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:1697 pepigen.c:1697 pex64igen.c:1697 +#: 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:1700 pepigen.c:1700 pex64igen.c:1700 +#: peigen.c:2000 pepigen.c:2000 pex64igen.c:2000 #, c-format msgid " Register restore millicode" msgstr " Registre a restauré le millicode" -#: peigen.c:1703 pepigen.c:1703 pex64igen.c:1703 +#: peigen.c:2003 pepigen.c:2003 pex64igen.c:2003 #, c-format msgid " Glue code sequence" msgstr " Séquence du code de liants" -#: peigen.c:1803 pepigen.c:1803 pex64igen.c:1803 +#: peigen.c:2108 pepigen.c:2108 pex64igen.c:2108 #, c-format msgid "" " vma:\t\tBegin Prolog Function Flags Exception EH\n" @@ -6188,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:1929 pepigen.c:1929 pex64igen.c:1929 +#: peigen.c:2230 pepigen.c:2230 pex64igen.c:2230 #, c-format msgid "" "\n" @@ -6199,7 +8409,7 @@ msgstr "" "\n" "Fichier de base des réadressages PE (contenus interprétés de la section .reloc)\n" -#: peigen.c:1958 pepigen.c:1958 pex64igen.c:1958 +#: peigen.c:2260 pepigen.c:2260 pex64igen.c:2260 #, c-format msgid "" "\n" @@ -6208,15 +8418,143 @@ msgstr "" "\n" "Adresse virtuelle: %08lx taille des morceaux %ld (0x%lx) nombre de correctifs %ld\n" -#: peigen.c:1971 pepigen.c:1971 pex64igen.c:1971 +#: 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:2339 pepigen.c:2339 pex64igen.c:2339 +#, c-format +msgid "%03x %*.s Entry: " +msgstr "%03x %*.s Entrée: " + +#: 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:2383 pepigen.c:2383 pex64igen.c:2383 +#, c-format +msgid "<corrupt string length: %#x>\n" +msgstr "<longueur de la chaîne corrompue: %#x>\n" + +#: peigen.c:2393 pepigen.c:2393 pex64igen.c:2393 +#, c-format +msgid "<corrupt string offset: %#lx>\n" +msgstr "<offset de la chaîne corrompue: %#lx>\n" + +#: peigen.c:2398 pepigen.c:2398 pex64igen.c:2398 +#, c-format +msgid "ID: %#08lx" +msgstr "ID: %#08lx" + +#: peigen.c:2401 pepigen.c:2401 pex64igen.c:2401 +#, c-format +msgid ", Value: %#08lx\n" +msgstr ", Valeur: %#08lx\n" + +#: peigen.c:2423 pepigen.c:2423 pex64igen.c:2423 +#, c-format +msgid "%03x %*.s Leaf: Addr: %#08lx, Size: %#08lx, Codepage: %d\n" +msgstr "%03x %*.s Feuilles: Adr: %#08lx, Taille: %#08lx, Codepage: %d\n" + +#: 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: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:2586 pepigen.c:2586 pex64igen.c:2586 +#, c-format +msgid "" +"\n" +"WARNING: Extra data in .rsrc section - it will be ignored by Windows:\n" +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:2010 pepigen.c:2010 pex64igen.c:2010 +#: peigen.c:2753 pepigen.c:2753 pex64igen.c:2753 #, c-format msgid "" "\n" @@ -6225,48 +8563,245 @@ msgstr "" "\n" "Caractéristiques 0x%x\n" -#: peigen.c:2310 pepigen.c:2310 pex64igen.c:2310 +#: 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: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: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: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: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: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: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: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: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:2330 pepigen.c:2330 pex64igen.c:2330 +#: 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:2351 pepigen.c:2351 pex64igen.c:2351 +#: 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:2371 pepigen.c:2371 pex64igen.c:2371 +#: 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:2413 pepigen.c:2413 pex64igen.c:2413 +#: 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:2438 pepigen.c:2438 pex64igen.c:2438 +#: 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 "%B: error: taking the address of protected function '%s' cannot be done when making a shared library" -#~ msgstr "%B: erreur: l'adresse de la fonction protégée « %s » ne peut être prise lors de la création d'une librairie partagée" +#~ 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" +#~ msgstr "" +#~ "%B(%s): attention: l'inter-réseautage n'est pas activé.\n" +#~ " première occurrence: %B: appel de repère vers arm" + +#~ msgid "DIV usage mismatch between %B and %B" +#~ msgstr "incohérence d'utilisation de DIV entre %B et %B" + +#~ msgid "%P: dynamic variable `%s' is zero size\n" +#~ msgstr "%P: la variable dynamique « %s » a une taille nulle\n" + +#~ msgid " [dsp]" +#~ msgstr " [dsp]" + +#~ msgid "%P: %H: automatic multiple TOCs not supported using your crt files; recompile with -mminimal-toc or upgrade gcc\n" +#~ msgstr "%P: %H: TOC multiples et automatiques non supportées utilisant votre fichier crt; recompilez avec -mminimal-toc ou mettez à jour gcc\n" + +#~ msgid "%P: %H: sibling call optimization to `%s' does not allow automatic multiple TOCs; recompile with -mminimal-toc or -fno-optimize-sibling-calls, or make `%s' extern\n" +#~ 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 -mips32r2 -mfp64" +#~ msgstr "Attention: %B utilise -msingle-float, %B utilise -mips32r2 -mfp64" + +#~ msgid "Warning: %B uses -mdouble-float, %B uses -mips32r2 -mfp64" +#~ msgstr "Attention: %B utilise -mdouble-float, %B utilise -mips32r2 -mfp64" + +#~ msgid "bfd_mach_o_read_symtab_symbol: symbol \"%s\" is unsupported 'indirect' reference: setting to undefined" +#~ msgstr "bfd_mach_o_read_symtab_symbol: symbole « %s » a la référence non supportée « indirect »: laissé non défini" + +#~ msgid "bfd_mach_o_read_dysymtab_symbol: unable to read %lu bytes at %lu" +#~ msgstr "bfd_mach_o_read_dysymtab_symbol: impossible de lire %lu octets à %lu" + +#~ msgid "Mach-O header:\n" +#~ msgstr "En-tête Mach-O:\n" + +#~ msgid " magic : %08lx\n" +#~ msgstr " magique : %08lx\n" + +#~ msgid " cputype : %08lx (%s)\n" +#~ msgstr " typecpu : %08lx (%s)\n" + +#~ msgid " filetype : %08lx (%s)\n" +#~ msgstr " typefichier: %08lx (%s)\n" + +#~ msgid " ncmds : %08lx (%lu)\n" +#~ msgstr " ncmds : %08lx (%lu)\n" + +#~ msgid " sizeofcmds: %08lx\n" +#~ msgstr " taillecmds: %08lx\n" + +#~ msgid " flags : %08lx (" +#~ msgstr " fanions : %08lx (" + +#~ msgid " reserved : %08x\n" +#~ msgstr " réservé : %08x\n" + +#~ msgid "Segments and Sections:\n" +#~ msgstr "Segments et Sections:\n" + +#~ msgid " #: Segment name Section name Address\n" +#~ msgstr " #: Nom segment Nom section Adresse\n" + +#~ msgid "Symbol %s replaced by %s\n" +#~ msgstr "Symbole %s remplacé par %s\n" #~ msgid "%B(%A+0x%lx): cannot reach %s" #~ 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" @@ -6292,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/po/hr.po b/bfd/po/hr.po new file mode 100644 index 0000000..66723ae --- /dev/null +++ b/bfd/po/hr.po @@ -0,0 +1,6138 @@ +# Translation of bfd to Croatian. +# Copyright © 2013 Free Software Foundation, Inc. +# This file is distributed under the same license as the binutils package. +# Tomislav Krznar <tomislav.krznar@gmail.com>, 2013. +# +msgid "" +msgstr "" +"Project-Id-Version: bfd 2.22.90\n" +"Report-Msgid-Bugs-To: bug-binutils@gnu.org\n" +"POT-Creation-Date: 2011-10-25 11:58+0100\n" +"PO-Revision-Date: 2013-01-12 00:50+0100\n" +"Last-Translator: Tomislav Krznar <tomislav.krznar@gmail.com>\n" +"Language-Team: Croatian <lokalizacija@linux.hr>\n" +"Language: hr\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=3; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2);\n" +"X-Generator: Gtranslator 2.91.6\n" + +#: aout-adobe.c:127 +msgid "%B: Unknown section type in a.out.adobe file: %x\n" +msgstr "%B: Nepoznata vrsta odlomka u a.out.adobe datoteci: %x\n" + +#: aout-cris.c:199 +#, c-format +msgid "%s: Invalid relocation type exported: %d" +msgstr "" + +#: aout-cris.c:242 +msgid "%B: Invalid relocation type imported: %d" +msgstr "" + +#: aout-cris.c:253 +msgid "%B: Bad relocation record imported: %d" +msgstr "" + +#: aoutx.h:1273 aoutx.h:1611 +#, c-format +msgid "%s: can not represent section `%s' in a.out object file format" +msgstr "" + +#: aoutx.h:1577 +#, c-format +msgid "%s: can not represent section for symbol `%s' in a.out object file format" +msgstr "" + +#: aoutx.h:1579 vms-alpha.c:7671 +msgid "*unknown*" +msgstr "*nepoznato*" + +#: aoutx.h:4018 aoutx.h:4344 +msgid "%P: %B: unexpected relocation type\n" +msgstr "" + +#: aoutx.h:5375 +#, c-format +msgid "%s: relocatable link from %s to %s not supported" +msgstr "" + +#: archive.c:2203 +msgid "Warning: writing archive was slow: rewriting timestamp\n" +msgstr "" + +#: archive.c:2491 +msgid "Reading archive file mod timestamp" +msgstr "" + +#: archive.c:2515 +msgid "Writing updated armap timestamp" +msgstr "" + +#: bfd.c:398 +msgid "No error" +msgstr "Nema greÅ¡ke" + +#: bfd.c:399 +msgid "System call error" +msgstr "" + +#: bfd.c:400 +msgid "Invalid bfd target" +msgstr "" + +#: bfd.c:401 +msgid "File in wrong format" +msgstr "" + +#: bfd.c:402 +msgid "Archive object file in wrong format" +msgstr "" + +#: bfd.c:403 +msgid "Invalid operation" +msgstr "" + +#: bfd.c:404 +msgid "Memory exhausted" +msgstr "Memorija iscrpljena" + +#: bfd.c:405 +msgid "No symbols" +msgstr "" + +#: bfd.c:406 +msgid "Archive has no index; run ranlib to add one" +msgstr "" + +#: bfd.c:407 +msgid "No more archived files" +msgstr "" + +#: bfd.c:408 +msgid "Malformed archive" +msgstr "" + +#: bfd.c:409 +msgid "File format not recognized" +msgstr "" + +#: bfd.c:410 +msgid "File format is ambiguous" +msgstr "" + +#: bfd.c:411 +msgid "Section has no contents" +msgstr "" + +#: bfd.c:412 +msgid "Nonrepresentable section on output" +msgstr "" + +#: bfd.c:413 +msgid "Symbol needs debug section which does not exist" +msgstr "" + +#: bfd.c:414 +msgid "Bad value" +msgstr "Neispravna vrijednost" + +#: bfd.c:415 +msgid "File truncated" +msgstr "" + +#: bfd.c:416 +msgid "File too big" +msgstr "Datoteka je prevelika" + +#: bfd.c:417 +#, c-format +msgid "Error reading %s: %s" +msgstr "GreÅ¡ka pri Äitanju %s: %s" + +#: bfd.c:418 +msgid "#<Invalid error code>" +msgstr "" + +#: bfd.c:945 +#, c-format +msgid "BFD %s assertion fail %s:%d" +msgstr "" + +#: bfd.c:957 +#, c-format +msgid "BFD %s internal error, aborting at %s line %d in %s\n" +msgstr "" + +#: bfd.c:961 +#, c-format +msgid "BFD %s internal error, aborting at %s line %d\n" +msgstr "" + +#: bfd.c:963 +msgid "Please report this bug.\n" +msgstr "Molim prijavite ovu greÅ¡ku.\n" + +#: bfdwin.c:206 +#, c-format +msgid "not mapping: data=%lx mapped=%d\n" +msgstr "" + +#: bfdwin.c:209 +#, c-format +msgid "not mapping: env var not set\n" +msgstr "" + +#: binary.c:271 +#, c-format +msgid "Warning: Writing section `%s' to huge (ie negative) file offset 0x%lx." +msgstr "" + +#: bout.c:1146 elf-m10300.c:2063 elf32-avr.c:1654 elf32-frv.c:5734 +#: elfxx-sparc.c:2802 reloc.c:6115 reloc16.c:162 elf32-ia64.c:360 +#: elf64-ia64.c:360 +msgid "%P%F: --relax and -r may not be used together\n" +msgstr "" + +#: cache.c:227 +msgid "reopening %B: %s\n" +msgstr "" + +#: coff-alpha.c:491 +msgid "" +"%B: Cannot handle compressed Alpha binaries.\n" +" Use compiler flags, or objZ, to generate uncompressed binaries." +msgstr "" + +#: coff-alpha.c:648 +msgid "%B: unknown/unsupported relocation type %d" +msgstr "" + +#: coff-alpha.c:900 coff-alpha.c:937 coff-alpha.c:2025 coff-mips.c:1003 +msgid "GP relative relocation used when GP not defined" +msgstr "" + +#: coff-alpha.c:1502 +msgid "using multiple gp values" +msgstr "" + +#: coff-alpha.c:1561 +msgid "%B: unsupported relocation: ALPHA_R_GPRELHIGH" +msgstr "" + +#: coff-alpha.c:1568 +msgid "%B: unsupported relocation: ALPHA_R_GPRELLOW" +msgstr "" + +#: coff-alpha.c:1575 elf32-m32r.c:2484 elf64-alpha.c:4074 elf64-alpha.c:4224 +#: elf32-ia64.c:3839 elf64-ia64.c:3839 +msgid "%B: unknown relocation type %d" +msgstr "" + +#: coff-arm.c:1038 +#, c-format +msgid "%B: unable to find THUMB glue '%s' for `%s'" +msgstr "" + +#: coff-arm.c:1067 +#, c-format +msgid "%B: unable to find ARM glue '%s' for `%s'" +msgstr "" + +#: coff-arm.c:1369 elf32-arm.c:7023 +#, c-format +msgid "" +"%B(%s): warning: interworking not enabled.\n" +" first occurrence: %B: arm call to thumb" +msgstr "" + +#: coff-arm.c:1459 +#, c-format +msgid "" +"%B(%s): warning: interworking not enabled.\n" +" first occurrence: %B: thumb call to arm\n" +" consider relinking with --support-old-code enabled" +msgstr "" + +#: coff-arm.c:1754 coff-tic80.c:695 cofflink.c:3081 +msgid "%B: bad reloc address 0x%lx in section `%A'" +msgstr "" + +#: coff-arm.c:2079 +msgid "%B: illegal symbol index in reloc: %d" +msgstr "" + +#: coff-arm.c:2210 +#, c-format +msgid "error: %B is compiled for APCS-%d, whereas %B is compiled for APCS-%d" +msgstr "" + +#: coff-arm.c:2226 elf32-arm.c:15621 +#, c-format +msgid "error: %B passes floats in float registers, whereas %B passes them in integer registers" +msgstr "" + +#: coff-arm.c:2229 elf32-arm.c:15625 +#, c-format +msgid "error: %B passes floats in integer registers, whereas %B passes them in float registers" +msgstr "" + +#: coff-arm.c:2243 +#, c-format +msgid "error: %B is compiled as position independent code, whereas target %B is absolute position" +msgstr "" + +#: coff-arm.c:2246 +#, c-format +msgid "error: %B is compiled as absolute position code, whereas target %B is position independent" +msgstr "" + +#: coff-arm.c:2274 elf32-arm.c:15690 +#, c-format +msgid "Warning: %B supports interworking, whereas %B does not" +msgstr "" + +#: coff-arm.c:2277 elf32-arm.c:15696 +#, c-format +msgid "Warning: %B does not support interworking, whereas %B does" +msgstr "" + +#: coff-arm.c:2301 +#, c-format +msgid "private flags = %x:" +msgstr "" + +#: coff-arm.c:2309 elf32-arm.c:11806 +#, c-format +msgid " [floats passed in float registers]" +msgstr "" + +#: coff-arm.c:2311 +#, c-format +msgid " [floats passed in integer registers]" +msgstr "" + +#: coff-arm.c:2314 elf32-arm.c:11809 +#, c-format +msgid " [position independent]" +msgstr "" + +#: coff-arm.c:2316 +#, c-format +msgid " [absolute position]" +msgstr "" + +#: coff-arm.c:2320 +#, c-format +msgid " [interworking flag not initialised]" +msgstr "" + +#: coff-arm.c:2322 +#, c-format +msgid " [interworking supported]" +msgstr "" + +#: coff-arm.c:2324 +#, c-format +msgid " [interworking not supported]" +msgstr "" + +#: coff-arm.c:2370 elf32-arm.c:10841 +#, c-format +msgid "Warning: Not setting interworking flag of %B since it has already been specified as non-interworking" +msgstr "" + +#: coff-arm.c:2374 elf32-arm.c:10845 +#, c-format +msgid "Warning: Clearing the interworking flag of %B due to outside request" +msgstr "" + +#: coff-h8300.c:1122 +#, c-format +msgid "cannot handle R_MEM_INDIRECT reloc when using %s output" +msgstr "" + +#: coff-i860.c:147 +#, c-format +msgid "relocation `%s' not yet implemented" +msgstr "" + +#: coff-i860.c:605 coff-tic54x.c:398 coffcode.h:5198 +msgid "%B: warning: illegal symbol index %ld in relocs" +msgstr "" + +#: coff-i960.c:144 coff-i960.c:507 +msgid "uncertain calling convention for non-COFF symbol" +msgstr "" + +#: coff-m68k.c:506 elf32-bfin.c:5690 elf32-cr16.c:2897 elf32-m68k.c:4677 +msgid "unsupported reloc type" +msgstr "" + +#: coff-mips.c:688 elf32-mips.c:1516 elf32-score.c:431 elf32-score7.c:330 +#: elf64-mips.c:2618 elfn32-mips.c:2431 +msgid "GP relative relocation when _gp not defined" +msgstr "" + +#: coff-or32.c:229 +msgid "Unrecognized reloc" +msgstr "" + +#: coff-rs6000.c:2720 +#, c-format +msgid "%s: unsupported relocation type 0x%02x" +msgstr "" + +#: coff-rs6000.c:2805 +#, c-format +msgid "%s: TOC reloc at 0x%x to symbol `%s' with no TOC entry" +msgstr "" + +#: coff-rs6000.c:3556 coff64-rs6000.c:2111 +msgid "%B: symbol `%s' has unrecognized smclas %d" +msgstr "" + +#: coff-sh.c:521 +#, c-format +msgid "SH Error: unknown reloc type %d" +msgstr "" + +#: coff-tic4x.c:195 coff-tic54x.c:299 coff-tic80.c:458 +#, c-format +msgid "Unrecognized reloc type 0x%x" +msgstr "" + +#: coff-tic4x.c:240 +#, c-format +msgid "%s: warning: illegal symbol index %ld in relocs" +msgstr "" + +#: coff-w65.c:367 +#, c-format +msgid "ignoring reloc %s\n" +msgstr "" + +#: coffcode.h:997 +msgid "%B: warning: COMDAT symbol '%s' does not match section name '%s'" +msgstr "" + +#. 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:1221 +msgid "%B: Warning: Ignoring section flag IMAGE_SCN_MEM_NOT_PAGED in section %s" +msgstr "" + +#: coffcode.h:1288 +msgid "%B (%s): Section flag %s (0x%x) ignored" +msgstr "" + +#: coffcode.h:2430 +#, c-format +msgid "Unrecognized TI COFF target id '0x%x'" +msgstr "" + +#: coffcode.h:2744 +msgid "%B: reloc against a non-existant symbol index: %ld" +msgstr "" + +#: coffcode.h:3302 +msgid "%B: too many sections (%d)" +msgstr "" + +#: coffcode.h:3718 +msgid "%B: section %s: string table overflow at offset %ld" +msgstr "" + +#: coffcode.h:4523 +msgid "%B: warning: line number table read failed" +msgstr "" + +#: coffcode.h:4553 +msgid "%B: warning: illegal symbol index %ld in line numbers" +msgstr "" + +#: coffcode.h:4567 +msgid "%B: warning: duplicate line number information for `%s'" +msgstr "" + +#: coffcode.h:4967 +msgid "%B: Unrecognized storage class %d for %s symbol `%s'" +msgstr "" + +#: coffcode.h:5093 +msgid "warning: %B: local symbol `%s' has no section" +msgstr "" + +#: coffcode.h:5237 +msgid "%B: illegal relocation type %d at address 0x%lx" +msgstr "" + +#: coffgen.c:1595 +msgid "%B: bad string table size %lu" +msgstr "" + +#: coffgen.c:2500 elflink.c:12689 linker.c:3122 +msgid "%F%P: already_linked_table: %E\n" +msgstr "" + +#: cofflink.c:533 elflink.c:4323 +msgid "Warning: type of symbol `%s' changed from %d to %d in %B" +msgstr "" + +#: cofflink.c:2329 +msgid "%B: relocs in section `%A', but it has no contents" +msgstr "" + +#: cofflink.c:2391 elflink.c:9545 +msgid "%X`%s' referenced in section `%A' of %B: defined in discarded section `%A' of %B\n" +msgstr "" + +#: cofflink.c:2690 coffswap.h:826 +#, c-format +msgid "%s: %s: reloc overflow: 0x%lx > 0xffff" +msgstr "" + +#: cofflink.c:2699 coffswap.h:812 +#, c-format +msgid "%s: warning: %s: line number overflow: 0x%lx > 0xffff" +msgstr "" + +#: cpu-arm.c:189 cpu-arm.c:200 +msgid "error: %B is compiled for the EP9312, whereas %B is compiled for XScale" +msgstr "" + +#: cpu-arm.c:333 +#, c-format +msgid "warning: unable to update contents of %s section in %s" +msgstr "" + +#: dwarf2.c:496 +#, c-format +msgid "Dwarf Error: Can't find %s section." +msgstr "" + +#: dwarf2.c:525 +#, c-format +msgid "Dwarf Error: Offset (%lu) greater than or equal to %s size (%lu)." +msgstr "" + +#: dwarf2.c:949 +#, c-format +msgid "Dwarf Error: Invalid or unhandled FORM value: %u." +msgstr "" + +#: dwarf2.c:1200 +msgid "Dwarf Error: mangled line number section (bad file number)." +msgstr "" + +#: dwarf2.c:1453 +#, c-format +msgid "Dwarf Error: Unhandled .debug_line version %d." +msgstr "" + +#: dwarf2.c:1475 +msgid "Dwarf Error: Invalid maximum operations per instruction." +msgstr "" + +#: dwarf2.c:1662 +msgid "Dwarf Error: mangled line number section." +msgstr "" + +#: dwarf2.c:1989 dwarf2.c:2109 dwarf2.c:2394 +#, c-format +msgid "Dwarf Error: Could not find abbrev number %u." +msgstr "" + +#: dwarf2.c:2355 +#, c-format +msgid "Dwarf Error: found dwarf version '%u', this reader only handles version 2, 3 and 4 information." +msgstr "" + +#: dwarf2.c:2362 +#, c-format +msgid "Dwarf Error: found address size '%u', this reader can not handle sizes greater than '%u'." +msgstr "" + +#: dwarf2.c:2385 +#, c-format +msgid "Dwarf Error: Bad abbrev number: %u." +msgstr "" + +#: ecoff.c:1239 +#, c-format +msgid "Unknown basic type %d" +msgstr "Nepoznata osnovna vrsta %d" + +#: ecoff.c:1496 +#, c-format +msgid "" +"\n" +" End+1 symbol: %ld" +msgstr "" + +#: ecoff.c:1503 ecoff.c:1506 +#, c-format +msgid "" +"\n" +" First symbol: %ld" +msgstr "" + +#: ecoff.c:1518 +#, c-format +msgid "" +"\n" +" End+1 symbol: %-7ld Type: %s" +msgstr "" + +#: ecoff.c:1525 +#, c-format +msgid "" +"\n" +" Local symbol: %ld" +msgstr "" + +#: ecoff.c:1533 +#, c-format +msgid "" +"\n" +" struct; End+1 symbol: %ld" +msgstr "" + +#: ecoff.c:1538 +#, c-format +msgid "" +"\n" +" union; End+1 symbol: %ld" +msgstr "" + +#: ecoff.c:1543 +#, c-format +msgid "" +"\n" +" enum; End+1 symbol: %ld" +msgstr "" + +#: ecoff.c:1549 +#, c-format +msgid "" +"\n" +" Type: %s" +msgstr "" +"\n" +" Vrsta: %s" + +#: elf-attrs.c:569 +msgid "error: %B: Object has vendor-specific contents that must be processed by the '%s' toolchain" +msgstr "" + +#: elf-attrs.c:578 +msgid "error: %B: Object tag '%d, %s' is incompatible with tag '%d, %s'" +msgstr "" + +#: elf-eh-frame.c:917 +msgid "%P: error in %B(%A); no .eh_frame_hdr table will be created.\n" +msgstr "" + +#: elf-eh-frame.c:1189 +msgid "%P: fde encoding in %B(%A) prevents .eh_frame_hdr table being created.\n" +msgstr "" + +#: elf-eh-frame.c:1605 +msgid "%P: DW_EH_PE_datarel unspecified for this architecture.\n" +msgstr "" + +#: elf-ifunc.c:179 +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 "" + +#: elf-m10200.c:450 elf-m10300.c:1563 elf32-avr.c:1221 elf32-bfin.c:3213 +#: elf32-cr16.c:1482 elf32-cr16c.c:780 elf32-cris.c:2081 elf32-crx.c:922 +#: elf32-d10v.c:509 elf32-epiphany.c:556 elf32-fr30.c:609 elf32-frv.c:4105 +#: elf32-h8300.c:509 elf32-i860.c:1211 elf32-ip2k.c:1468 elf32-iq2000.c:684 +#: elf32-lm32.c:1168 elf32-m32c.c:553 elf32-m32r.c:3106 elf32-m68hc1x.c:1138 +#: elf32-mep.c:535 elf32-microblaze.c:1231 elf32-moxie.c:282 +#: elf32-msp430.c:486 elf32-mt.c:395 elf32-openrisc.c:404 elf32-score.c:2729 +#: elf32-score7.c:2537 elf32-spu.c:5044 elf32-tilepro.c:3214 elf32-v850.c:2143 +#: elf32-xstormy16.c:935 elf64-mmix.c:1590 elfxx-tilegx.c:3577 +msgid "internal error: out of range error" +msgstr "" + +#: elf-m10200.c:454 elf-m10300.c:1567 elf32-avr.c:1225 elf32-bfin.c:3217 +#: elf32-cr16.c:1486 elf32-cr16c.c:784 elf32-cris.c:2085 elf32-crx.c:926 +#: elf32-d10v.c:513 elf32-fr30.c:613 elf32-frv.c:4109 elf32-h8300.c:513 +#: elf32-i860.c:1215 elf32-iq2000.c:688 elf32-lm32.c:1172 elf32-m32c.c:557 +#: elf32-m32r.c:3110 elf32-m68hc1x.c:1142 elf32-mep.c:539 +#: elf32-microblaze.c:1235 elf32-moxie.c:286 elf32-msp430.c:490 +#: elf32-openrisc.c:408 elf32-score.c:2733 elf32-score7.c:2541 +#: elf32-spu.c:5048 elf32-tilepro.c:3218 elf32-v850.c:2147 +#: elf32-xstormy16.c:939 elf64-mmix.c:1594 elfxx-mips.c:9465 +#: elfxx-tilegx.c:3581 +msgid "internal error: unsupported relocation error" +msgstr "" + +#: elf-m10200.c:458 elf32-cr16.c:1490 elf32-cr16c.c:788 elf32-crx.c:930 +#: elf32-d10v.c:517 elf32-h8300.c:517 elf32-lm32.c:1176 elf32-m32r.c:3114 +#: elf32-m68hc1x.c:1146 elf32-microblaze.c:1239 elf32-score.c:2737 +#: elf32-score7.c:2545 elf32-spu.c:5052 +msgid "internal error: dangerous error" +msgstr "" + +#: elf-m10200.c:462 elf-m10300.c:1580 elf32-avr.c:1233 elf32-bfin.c:3225 +#: elf32-cr16.c:1494 elf32-cr16c.c:792 elf32-cris.c:2093 elf32-crx.c:934 +#: elf32-d10v.c:521 elf32-epiphany.c:571 elf32-fr30.c:621 elf32-frv.c:4117 +#: elf32-h8300.c:521 elf32-i860.c:1223 elf32-ip2k.c:1483 elf32-iq2000.c:696 +#: elf32-lm32.c:1180 elf32-m32c.c:565 elf32-m32r.c:3118 elf32-m68hc1x.c:1150 +#: elf32-mep.c:547 elf32-microblaze.c:1243 elf32-moxie.c:294 +#: elf32-msp430.c:498 elf32-mt.c:403 elf32-openrisc.c:416 elf32-score.c:2746 +#: elf32-score7.c:2549 elf32-spu.c:5056 elf32-tilepro.c:3226 elf32-v850.c:2167 +#: elf32-xstormy16.c:947 elf64-mmix.c:1602 elfxx-tilegx.c:3589 +msgid "internal error: unknown error" +msgstr "" + +#: elf-m10300.c:1507 elf32-arm.c:10419 elf32-i386.c:4264 elf32-m32r.c:2599 +#: elf32-m68k.c:4156 elf32-s390.c:3003 elf32-sh.c:4218 elf32-tilepro.c:3117 +#: elf32-xtensa.c:3066 elf64-s390.c:2978 elf64-sh64.c:1640 elf64-x86-64.c:4110 +#: elfxx-sparc.c:3835 elfxx-tilegx.c:3500 +msgid "%B(%A+0x%lx): unresolvable %s relocation against symbol `%s'" +msgstr "" + +#: elf-m10300.c:1572 +msgid "error: inappropriate relocation type for shared library (did you forget -fpic?)" +msgstr "" + +#: elf-m10300.c:1575 +msgid "internal error: suspicious relocation type used in shared library" +msgstr "" + +#: elf-m10300.c:4372 elf32-arm.c:12800 elf32-cr16.c:2451 elf32-cris.c:3057 +#: elf32-hppa.c:1894 elf32-i370.c:503 elf32-i386.c:2182 elf32-lm32.c:1868 +#: elf32-m32r.c:1927 elf32-m68k.c:3253 elf32-s390.c:1652 elf32-sh.c:2931 +#: elf32-tic6x.c:2162 elf32-tilepro.c:1940 elf32-vax.c:1041 elf64-s390.c:1635 +#: elf64-sh64.c:3381 elf64-x86-64.c:2176 elfxx-sparc.c:2119 +#: elfxx-tilegx.c:2261 +#, c-format +msgid "dynamic variable `%s' is zero size" +msgstr "" + +#: elf.c:334 +msgid "%B: invalid string offset %u >= %lu for section `%s'" +msgstr "" + +#: elf.c:446 +msgid "%B symbol number %lu references nonexistent SHT_SYMTAB_SHNDX section" +msgstr "" + +#: elf.c:602 +msgid "%B: Corrupt size field in group section header: 0x%lx" +msgstr "" + +#: elf.c:638 +msgid "%B: invalid SHT_GROUP entry" +msgstr "" + +#: elf.c:708 +msgid "%B: no group info for section %A" +msgstr "" + +#: elf.c:737 elf.c:3121 elflink.c:10135 +msgid "%B: warning: sh_link not set for section `%A'" +msgstr "" + +#: elf.c:756 +msgid "%B: sh_link [%d] in section `%A' is incorrect" +msgstr "" + +#: elf.c:791 +msgid "%B: unknown [%d] section `%s' in group [%s]" +msgstr "" + +#: elf.c:1041 +msgid "%B: unable to initialize commpress status for section %s" +msgstr "" + +#: elf.c:1061 +msgid "%B: unable to initialize decommpress status for section %s" +msgstr "" + +#: elf.c:1181 +#, c-format +msgid "" +"\n" +"Program Header:\n" +msgstr "" + +#: elf.c:1223 +#, c-format +msgid "" +"\n" +"Dynamic Section:\n" +msgstr "" + +#: elf.c:1359 +#, c-format +msgid "" +"\n" +"Version definitions:\n" +msgstr "" + +#: elf.c:1384 +#, c-format +msgid "" +"\n" +"Version References:\n" +msgstr "" + +#: elf.c:1389 +#, c-format +msgid " required from %s:\n" +msgstr "" + +#: elf.c:1796 +msgid "%B: invalid link %lu for reloc section %s (index %u)" +msgstr "" + +#: elf.c:1966 +msgid "%B: don't know how to handle allocated, application specific section `%s' [0x%8x]" +msgstr "" + +#: elf.c:1978 +msgid "%B: don't know how to handle processor specific section `%s' [0x%8x]" +msgstr "" + +#: elf.c:1989 +msgid "%B: don't know how to handle OS specific section `%s' [0x%8x]" +msgstr "" + +#: elf.c:1999 +msgid "%B: don't know how to handle section `%s' [0x%8x]" +msgstr "" + +#: elf.c:2634 +#, c-format +msgid "warning: section `%A' type changed to PROGBITS" +msgstr "" + +#: elf.c:3078 +msgid "%B: sh_link of section `%A' points to discarded section `%A' of `%B'" +msgstr "" + +#: elf.c:3101 +msgid "%B: sh_link of section `%A' points to removed section `%A' of `%B'" +msgstr "" + +#: elf.c:4527 +msgid "%B: The first section in the PT_DYNAMIC segment is not the .dynamic section" +msgstr "" + +#: elf.c:4554 +msgid "%B: Not enough room for program headers, try linking with -N" +msgstr "" + +#: elf.c:4641 +msgid "%B: section %A lma %#lx adjusted to %#lx" +msgstr "" + +#: elf.c:4776 +msgid "%B: section `%A' can't be allocated in segment %d" +msgstr "" + +#: elf.c:4824 +msgid "%B: warning: allocated section `%s' not in segment" +msgstr "" + +#: elf.c:5324 +msgid "%B: symbol `%s' required but not present" +msgstr "" + +#: elf.c:5662 +msgid "%B: warning: Empty loadable segment detected, is this intentional ?\n" +msgstr "" + +#: elf.c:6692 +#, c-format +msgid "Unable to find equivalent output section for symbol '%s' from section '%s'" +msgstr "" + +#: elf.c:7692 +msgid "%B: unsupported relocation type %s" +msgstr "" + +#: elf32-arm.c:3617 +msgid "" +"%B(%s): warning: interworking not enabled.\n" +" first occurrence: %B: Thumb call to ARM" +msgstr "" + +#: elf32-arm.c:3664 +msgid "" +"%B(%s): warning: interworking not enabled.\n" +" first occurrence: %B: ARM call to Thumb" +msgstr "" + +#: elf32-arm.c:3878 elf32-arm.c:5315 +#, c-format +msgid "%s: cannot create stub entry %s" +msgstr "" + +#: elf32-arm.c:5431 +#, c-format +msgid "unable to find THUMB glue '%s' for '%s'" +msgstr "" + +#: elf32-arm.c:5467 +#, c-format +msgid "unable to find ARM glue '%s' for '%s'" +msgstr "" + +#: elf32-arm.c:6005 +msgid "%B: BE8 images only valid in big-endian mode." +msgstr "" + +#. Give a warning, but do as the user requests anyway. +#: elf32-arm.c:6235 +msgid "%B: warning: selected VFP11 erratum workaround is not necessary for target architecture" +msgstr "" + +#: elf32-arm.c:6779 elf32-arm.c:6799 +msgid "%B: unable to find VFP11 veneer `%s'" +msgstr "" + +#: elf32-arm.c:6848 +#, c-format +msgid "Invalid TARGET2 relocation type '%s'." +msgstr "" + +#: elf32-arm.c:6933 +msgid "" +"%B(%s): warning: interworking not enabled.\n" +" first occurrence: %B: thumb call to arm" +msgstr "" + +#: elf32-arm.c:7717 +msgid "%B(%A+0x%lx):unexpected Thumb instruction '0x%x' in TLS trampoline" +msgstr "" + +#: elf32-arm.c:7756 +msgid "%B(%A+0x%lx):unexpected ARM instruction '0x%x' in TLS trampoline" +msgstr "" + +#: elf32-arm.c:8209 +msgid "\\%B: Warning: Arm BLX instruction targets Arm function '%s'." +msgstr "" + +#: elf32-arm.c:8622 +msgid "%B: Warning: Thumb BLX instruction targets thumb function '%s'." +msgstr "" + +#: elf32-arm.c:9460 +msgid "%B(%A+0x%lx):unexpected Thumb instruction '0x%x' referenced by TLS_GOTDESC" +msgstr "" + +#: elf32-arm.c:9483 +msgid "%B(%A+0x%lx):unexpected ARM instruction '0x%x' referenced by TLS_GOTDESC" +msgstr "" + +#: elf32-arm.c:9512 +msgid "%B(%A+0x%lx): R_ARM_TLS_LE32 relocation not permitted in shared object" +msgstr "" + +#: elf32-arm.c:9727 +msgid "%B(%A+0x%lx): Only ADD or SUB instructions are allowed for ALU group relocations" +msgstr "" + +#: elf32-arm.c:9767 elf32-arm.c:9854 elf32-arm.c:9937 elf32-arm.c:10022 +msgid "%B(%A+0x%lx): Overflow whilst splitting 0x%lx for group relocation %s" +msgstr "" + +#: elf32-arm.c:10261 elf32-sh.c:4103 elf64-sh64.c:1544 +msgid "%B(%A+0x%lx): %s relocation against SEC_MERGE section" +msgstr "" + +#: elf32-arm.c:10372 elf32-m68k.c:4191 elf32-xtensa.c:2802 +msgid "%B(%A+0x%lx): %s used with TLS symbol %s" +msgstr "" + +#: elf32-arm.c:10373 elf32-m68k.c:4192 elf32-xtensa.c:2803 +msgid "%B(%A+0x%lx): %s used with non-TLS symbol %s" +msgstr "" + +#: elf32-arm.c:10453 elf32-tic6x.c:2753 +msgid "out of range" +msgstr "" + +#: elf32-arm.c:10457 elf32-tic6x.c:2757 +msgid "unsupported relocation" +msgstr "" + +#: elf32-arm.c:10465 elf32-tic6x.c:2765 +msgid "unknown error" +msgstr "nepoznata greÅ¡ka" + +#: elf32-arm.c:10890 +msgid "Warning: Clearing the interworking flag of %B because non-interworking code in %B has been linked with it" +msgstr "" + +#: elf32-arm.c:10984 +msgid "%B: Unknown mandatory EABI object attribute %d" +msgstr "" + +#: elf32-arm.c:10992 +msgid "Warning: %B: Unknown EABI object attribute %d" +msgstr "" + +#: elf32-arm.c:11173 +msgid "error: %B: Unknown CPU architecture" +msgstr "" + +#: elf32-arm.c:11211 +msgid "error: %B: Conflicting CPU architectures %d/%d" +msgstr "" + +#: elf32-arm.c:11260 +msgid "Error: %B has both the current and legacy Tag_MPextension_use attributes" +msgstr "" + +#: elf32-arm.c:11285 +msgid "error: %B uses VFP register arguments, %B does not" +msgstr "" + +#: elf32-arm.c:11430 +msgid "error: %B: unable to merge virtualization attributes with %B" +msgstr "" + +#: elf32-arm.c:11456 +msgid "error: %B: Conflicting architecture profiles %c/%c" +msgstr "" + +#: elf32-arm.c:11557 +msgid "Warning: %B: Conflicting platform configuration" +msgstr "" + +#: elf32-arm.c:11566 +msgid "error: %B: Conflicting use of R9" +msgstr "" + +#: elf32-arm.c:11578 +msgid "error: %B: SB relative addressing conflicts with use of R9" +msgstr "" + +#: elf32-arm.c:11591 +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 "" + +#: elf32-arm.c:11622 +msgid "warning: %B uses %s enums yet the output is to use %s enums; use of enum values across objects may fail" +msgstr "" + +#: elf32-arm.c:11634 +msgid "error: %B uses iWMMXt register arguments, %B does not" +msgstr "" + +#: elf32-arm.c:11651 +msgid "error: fp16 format mismatch between %B and %B" +msgstr "" + +#: elf32-arm.c:11675 +msgid "DIV usage mismatch between %B and %B" +msgstr "" + +#: elf32-arm.c:11694 +msgid "%B has has both the current and legacy Tag_MPextension_use attributes" +msgstr "" + +#. 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:11782 elf32-bfin.c:5079 elf32-cris.c:4169 elf32-m68hc1x.c:1282 +#: elf32-m68k.c:1236 elf32-score.c:3994 elf32-score7.c:3800 elf32-vax.c:529 +#: elfxx-mips.c:14103 +#, c-format +msgid "private flags = %lx:" +msgstr "" + +#: elf32-arm.c:11791 +#, c-format +msgid " [interworking enabled]" +msgstr "" + +#: elf32-arm.c:11799 +#, c-format +msgid " [VFP float format]" +msgstr "" + +#: elf32-arm.c:11801 +#, c-format +msgid " [Maverick float format]" +msgstr "" + +#: elf32-arm.c:11803 +#, c-format +msgid " [FPA float format]" +msgstr "" + +#: elf32-arm.c:11812 +#, c-format +msgid " [new ABI]" +msgstr "" + +#: elf32-arm.c:11815 +#, c-format +msgid " [old ABI]" +msgstr "" + +#: elf32-arm.c:11818 +#, c-format +msgid " [software FP]" +msgstr "" + +#: elf32-arm.c:11827 +#, c-format +msgid " [Version1 EABI]" +msgstr "" + +#: elf32-arm.c:11830 elf32-arm.c:11841 +#, c-format +msgid " [sorted symbol table]" +msgstr "" + +#: elf32-arm.c:11832 elf32-arm.c:11843 +#, c-format +msgid " [unsorted symbol table]" +msgstr "" + +#: elf32-arm.c:11838 +#, c-format +msgid " [Version2 EABI]" +msgstr "" + +#: elf32-arm.c:11846 +#, c-format +msgid " [dynamic symbols use segment index]" +msgstr "" + +#: elf32-arm.c:11849 +#, c-format +msgid " [mapping symbols precede others]" +msgstr "" + +#: elf32-arm.c:11856 +#, c-format +msgid " [Version3 EABI]" +msgstr "" + +#: elf32-arm.c:11860 +#, c-format +msgid " [Version4 EABI]" +msgstr "" + +#: elf32-arm.c:11864 +#, c-format +msgid " [Version5 EABI]" +msgstr "" + +#: elf32-arm.c:11867 +#, c-format +msgid " [BE8]" +msgstr "" + +#: elf32-arm.c:11870 +#, c-format +msgid " [LE8]" +msgstr "" + +#: elf32-arm.c:11876 +#, c-format +msgid " <EABI version unrecognised>" +msgstr "" + +#: elf32-arm.c:11883 +#, c-format +msgid " [relocatable executable]" +msgstr "" + +#: elf32-arm.c:11886 +#, c-format +msgid " [has entry point]" +msgstr "" + +#: elf32-arm.c:11891 +#, c-format +msgid "<Unrecognised flag bits set>" +msgstr "" + +#: elf32-arm.c:12189 elf32-i386.c:1461 elf32-s390.c:1000 elf32-tic6x.c:2829 +#: elf32-tilepro.c:1336 elf32-xtensa.c:1009 elf64-s390.c:960 +#: elf64-x86-64.c:1364 elfxx-sparc.c:1371 elfxx-tilegx.c:1586 +msgid "%B: bad symbol index: %d" +msgstr "" + +#: elf32-arm.c:12337 elf64-x86-64.c:1561 elf64-x86-64.c:1732 elfxx-mips.c:8223 +msgid "%B: relocation %s against `%s' can not be used when making a shared object; recompile with -fPIC" +msgstr "" + +#: elf32-arm.c:13460 +#, c-format +msgid "Errors encountered processing file %s" +msgstr "" + +#: elf32-arm.c:14837 +msgid "%B: error: Cortex-A8 erratum stub is allocated in unsafe location" +msgstr "" + +#. There's not much we can do apart from complain if this +#. happens. +#: elf32-arm.c:14864 +msgid "%B: error: Cortex-A8 erratum stub out of range (input file too large)" +msgstr "" + +#: elf32-arm.c:14958 elf32-arm.c:14980 +msgid "%B: error: VFP11 veneer out of range" +msgstr "" + +#: elf32-arm.c:15518 +msgid "error: %B is already in final BE8 format" +msgstr "" + +#: elf32-arm.c:15594 +msgid "error: Source object %B has EABI version %d, but target %B has EABI version %d" +msgstr "" + +#: elf32-arm.c:15610 +msgid "error: %B is compiled for APCS-%d, whereas target %B uses APCS-%d" +msgstr "" + +#: elf32-arm.c:15635 +msgid "error: %B uses VFP instructions, whereas %B does not" +msgstr "" + +#: elf32-arm.c:15639 +msgid "error: %B uses FPA instructions, whereas %B does not" +msgstr "" + +#: elf32-arm.c:15649 +msgid "error: %B uses Maverick instructions, whereas %B does not" +msgstr "" + +#: elf32-arm.c:15653 +msgid "error: %B does not use Maverick instructions, whereas %B does" +msgstr "" + +#: elf32-arm.c:15672 +msgid "error: %B uses software FP, whereas %B uses hardware FP" +msgstr "" + +#: elf32-arm.c:15676 +msgid "error: %B uses hardware FP, whereas %B uses software FP" +msgstr "" + +#: elf32-avr.c:1229 elf32-bfin.c:3221 elf32-cris.c:2089 elf32-epiphany.c:567 +#: elf32-fr30.c:617 elf32-frv.c:4113 elf32-i860.c:1219 elf32-ip2k.c:1479 +#: elf32-iq2000.c:692 elf32-m32c.c:561 elf32-mep.c:543 elf32-moxie.c:290 +#: elf32-msp430.c:494 elf32-mt.c:399 elf32-openrisc.c:412 elf32-tilepro.c:3222 +#: elf32-v850.c:2151 elf32-xstormy16.c:943 elf64-mmix.c:1598 +#: elfxx-tilegx.c:3585 +msgid "internal error: dangerous relocation" +msgstr "" + +#: elf32-avr.c:2415 elf32-hppa.c:598 elf32-m68hc1x.c:166 +msgid "%B: cannot create stub entry %s" +msgstr "" + +#: elf32-bfin.c:107 elf32-bfin.c:363 +msgid "relocation should be even number" +msgstr "" + +#: elf32-bfin.c:1593 +msgid "%B(%A+0x%lx): unresolvable relocation against symbol `%s'" +msgstr "" + +#: elf32-bfin.c:1626 elf32-i386.c:4307 elf32-m68k.c:4233 elf32-s390.c:3055 +#: elf64-s390.c:3030 elf64-x86-64.c:4151 +msgid "%B(%A+0x%lx): reloc against `%s': error %d" +msgstr "" + +#: elf32-bfin.c:2725 +msgid "%B: relocation at `%A+0x%x' references symbol `%s' with nonzero addend" +msgstr "" + +#: elf32-bfin.c:2741 +msgid "relocation references symbol not defined in the module" +msgstr "" + +#: elf32-bfin.c:2838 +msgid "R_BFIN_FUNCDESC references dynamic symbol with nonzero addend" +msgstr "" + +#: elf32-bfin.c:2879 elf32-bfin.c:3002 +msgid "cannot emit fixups in read-only section" +msgstr "" + +#: elf32-bfin.c:2910 elf32-bfin.c:3040 elf32-lm32.c:1103 elf32-sh.c:5016 +msgid "cannot emit dynamic relocations in read-only section" +msgstr "" + +#: elf32-bfin.c:2960 +msgid "R_BFIN_FUNCDESC_VALUE references dynamic symbol with nonzero addend" +msgstr "" + +#: elf32-bfin.c:3125 +msgid "relocations between different segments are not supported" +msgstr "" + +#: elf32-bfin.c:3126 +msgid "warning: relocation references a different segment" +msgstr "" + +#: elf32-bfin.c:4971 +msgid "%B: unsupported relocation type %i" +msgstr "" + +#: elf32-bfin.c:5125 elf32-frv.c:6808 +#, c-format +msgid "%s: cannot link non-fdpic object file into fdpic executable" +msgstr "" + +#: elf32-bfin.c:5129 elf32-frv.c:6812 +#, c-format +msgid "%s: cannot link fdpic object file into non-fdpic executable" +msgstr "" + +#: elf32-bfin.c:5283 +#, c-format +msgid "*** check this relocation %s" +msgstr "" + +#: elf32-cris.c:1176 +msgid "%B, section %A: unresolvable relocation %s against symbol `%s'" +msgstr "" + +#: elf32-cris.c:1238 +msgid "%B, section %A: No PLT nor GOT for relocation %s against symbol `%s'" +msgstr "" + +#: elf32-cris.c:1240 +msgid "%B, section %A: No PLT for relocation %s against symbol `%s'" +msgstr "" + +#: elf32-cris.c:1246 elf32-cris.c:1379 elf32-cris.c:1639 elf32-cris.c:1722 +#: elf32-cris.c:1875 elf32-tic6x.c:2662 +msgid "[whose name is lost]" +msgstr "" + +#: elf32-cris.c:1365 elf32-tic6x.c:2647 +msgid "%B, section %A: relocation %s with non-zero addend %d against local symbol" +msgstr "" + +#: elf32-cris.c:1373 elf32-cris.c:1716 elf32-cris.c:1869 elf32-tic6x.c:2655 +msgid "%B, section %A: relocation %s with non-zero addend %d against symbol `%s'" +msgstr "" + +#: elf32-cris.c:1399 +msgid "%B, section %A: relocation %s is not allowed for global symbol: `%s'" +msgstr "" + +#: elf32-cris.c:1415 +msgid "%B, section %A: relocation %s with no GOT created" +msgstr "" + +#. We shouldn't get here for GCC-emitted code. +#: elf32-cris.c:1630 +msgid "%B, section %A: relocation %s has an undefined reference to `%s', perhaps a declaration mixup?" +msgstr "" + +#: elf32-cris.c:2002 +msgid "%B, section %A: relocation %s is not allowed for symbol: `%s' which is defined outside the program, perhaps a declaration mixup?" +msgstr "" + +#: elf32-cris.c:2055 +msgid "(too many global variables for -fpic: recompile with -fPIC)" +msgstr "" + +#: elf32-cris.c:2062 +msgid "(thread-local data too big for -fpic or -msmall-tls: recompile with -fPIC or -mno-small-tls)" +msgstr "" + +#: elf32-cris.c:3261 +msgid "" +"%B, section %A:\n" +" v10/v32 compatible object %s must not contain a PIC relocation" +msgstr "" + +#: elf32-cris.c:3366 +msgid "" +"%B, section %A:\n" +" relocation %s not valid in a shared object; typically an option mixup, recompile with -fPIC" +msgstr "" + +#: elf32-cris.c:3580 +msgid "" +"%B, section %A:\n" +" relocation %s should not be used in a shared object; recompile with -fPIC" +msgstr "" + +#: elf32-cris.c:4002 +msgid "" +"%B, section `%A', to symbol `%s':\n" +" relocation %s should not be used in a shared object; recompile with -fPIC" +msgstr "" + +#: elf32-cris.c:4118 +msgid "Unexpected machine number" +msgstr "" + +#: elf32-cris.c:4172 +#, c-format +msgid " [symbols have a _ prefix]" +msgstr "" + +#: elf32-cris.c:4175 +#, c-format +msgid " [v10 and v32]" +msgstr " [v10 i v32]" + +#: elf32-cris.c:4178 +#, c-format +msgid " [v32]" +msgstr " [v32]" + +#: elf32-cris.c:4223 +msgid "%B: uses _-prefixed symbols, but writing file with non-prefixed symbols" +msgstr "" + +#: elf32-cris.c:4224 +msgid "%B: uses non-prefixed symbols, but writing file with _-prefixed symbols" +msgstr "" + +#: elf32-cris.c:4243 +msgid "%B contains CRIS v32 code, incompatible with previous objects" +msgstr "" + +#: elf32-cris.c:4245 +msgid "%B contains non-CRIS-v32 code, incompatible with previous objects" +msgstr "" + +#: elf32-dlx.c:142 +#, c-format +msgid "BFD Link Error: branch (PC rel16) to section (%s) not supported" +msgstr "" + +#: elf32-dlx.c:204 +#, c-format +msgid "BFD Link Error: jump (PC rel26) to section (%s) not supported" +msgstr "" + +#. Only if it's not an unresolved symbol. +#: elf32-epiphany.c:563 elf32-ip2k.c:1475 +msgid "unsupported relocation between data/insn address spaces" +msgstr "" + +#: elf32-frv.c:1509 elf32-frv.c:1658 +msgid "relocation requires zero addend" +msgstr "" + +#: elf32-frv.c:2888 +msgid "%H: relocation to `%s+%v' may have caused the error above\n" +msgstr "" + +#: elf32-frv.c:2905 +msgid "%H: relocation references symbol not defined in the module\n" +msgstr "" + +#: elf32-frv.c:2981 +msgid "%H: R_FRV_GETTLSOFF not applied to a call instruction\n" +msgstr "" + +#: elf32-frv.c:3022 +msgid "%H: R_FRV_GOTTLSDESC12 not applied to an lddi instruction\n" +msgstr "" + +#: elf32-frv.c:3093 +msgid "%H: R_FRV_GOTTLSDESCHI not applied to a sethi instruction\n" +msgstr "" + +#: elf32-frv.c:3130 +msgid "%H: R_FRV_GOTTLSDESCLO not applied to a setlo or setlos instruction\n" +msgstr "" + +#: elf32-frv.c:3177 +msgid "%H: R_FRV_TLSDESC_RELAX not applied to an ldd instruction\n" +msgstr "" + +#: elf32-frv.c:3261 +msgid "%H: R_FRV_GETTLSOFF_RELAX not applied to a calll instruction\n" +msgstr "" + +#: elf32-frv.c:3315 +msgid "%H: R_FRV_GOTTLSOFF12 not applied to an ldi instruction\n" +msgstr "" + +#: elf32-frv.c:3345 +msgid "%H: R_FRV_GOTTLSOFFHI not applied to a sethi instruction\n" +msgstr "" + +#: elf32-frv.c:3374 +msgid "%H: R_FRV_GOTTLSOFFLO not applied to a setlo or setlos instruction\n" +msgstr "" + +#: elf32-frv.c:3404 +msgid "%H: R_FRV_TLSOFF_RELAX not applied to an ld instruction\n" +msgstr "" + +#: elf32-frv.c:3449 +msgid "%H: R_FRV_TLSMOFFHI not applied to a sethi instruction\n" +msgstr "" + +#: elf32-frv.c:3476 +msgid "R_FRV_TLSMOFFLO not applied to a setlo or setlos instruction\n" +msgstr "" + +#: elf32-frv.c:3597 +msgid "%H: R_FRV_FUNCDESC references dynamic symbol with nonzero addend\n" +msgstr "" + +#: elf32-frv.c:3638 elf32-frv.c:3760 +msgid "%H: cannot emit fixups in read-only section\n" +msgstr "" + +#: elf32-frv.c:3669 elf32-frv.c:3803 +msgid "%H: cannot emit dynamic relocations in read-only section\n" +msgstr "" + +#: elf32-frv.c:3718 +msgid "%H: R_FRV_FUNCDESC_VALUE references dynamic symbol with nonzero addend\n" +msgstr "" + +#: elf32-frv.c:3974 +msgid "%H: reloc against `%s' references a different segment\n" +msgstr "" + +#: elf32-frv.c:4124 +msgid "%H: reloc against `%s': %s\n" +msgstr "" + +#: elf32-frv.c:6400 +msgid "%B: unsupported relocation type %i\n" +msgstr "" + +#: elf32-frv.c:6722 +#, c-format +msgid "%s: compiled with %s and linked with modules that use non-pic relocations" +msgstr "" + +#: elf32-frv.c:6775 elf32-iq2000.c:845 elf32-m32c.c:807 +#, c-format +msgid "%s: compiled with %s and linked with modules compiled with %s" +msgstr "" + +#: elf32-frv.c:6787 +#, c-format +msgid "%s: uses different unknown e_flags (0x%lx) fields than previous modules (0x%lx)" +msgstr "" + +#: elf32-frv.c:6837 elf32-iq2000.c:882 elf32-m32c.c:843 elf32-mt.c:576 +#: elf32-rx.c:3001 +#, c-format +msgid "private flags = 0x%lx:" +msgstr "" + +#: elf32-gen.c:69 elf64-gen.c:69 +msgid "%B: Relocations in generic ELF (EM: %d)" +msgstr "" + +#: elf32-hppa.c:850 elf32-hppa.c:3598 +msgid "%B(%A+0x%lx): cannot reach %s, recompile with -ffunction-sections" +msgstr "" + +#: elf32-hppa.c:1284 +msgid "%B: relocation %s can not be used when making a shared object; recompile with -fPIC" +msgstr "" + +#: elf32-hppa.c:2791 +msgid "%B: duplicate export stub %s" +msgstr "" + +#: elf32-hppa.c:3437 +msgid "%B(%A+0x%lx): %s fixup for insn 0x%x is not supported in a non-shared link" +msgstr "" + +#: elf32-hppa.c:4284 +msgid "%B(%A+0x%lx): cannot handle %s for %s" +msgstr "" + +#: elf32-hppa.c:4603 +msgid ".got section not immediately after .plt section" +msgstr "" + +#. Unknown relocation. +#: elf32-i386.c:373 elf32-m68k.c:384 elf32-ppc.c:1676 elf32-s390.c:379 +#: elf32-tic6x.c:2684 elf64-ppc.c:2300 elf64-s390.c:403 elf64-x86-64.c:265 +msgid "%B: invalid relocation type %d" +msgstr "" + +#: elf32-i386.c:1404 elf64-x86-64.c:1308 +msgid "%B: TLS transition from %s to %s against `%s' at 0x%lx in section `%A' failed" +msgstr "" + +#: elf32-i386.c:1549 elf32-i386.c:3244 elf64-x86-64.c:1487 elf64-x86-64.c:3125 +#: elfxx-sparc.c:3083 +msgid "%B: relocation %s against STT_GNU_IFUNC symbol `%s' isn't handled by %s" +msgstr "" + +#: elf32-i386.c:1711 elf32-s390.c:1182 elf32-sh.c:6362 elf32-tilepro.c:1434 +#: elf32-xtensa.c:1182 elf64-s390.c:1151 elfxx-sparc.c:1548 +#: elfxx-tilegx.c:1701 +msgid "%B: `%s' accessed both as normal and thread local symbol" +msgstr "" + +#: elf32-i386.c:2539 elf64-x86-64.c:2506 +msgid "%P: %B: warning: relocation against `%s' in readonly section `%A'.\n" +msgstr "" + +#: elf32-i386.c:2629 elf64-x86-64.c:2593 +msgid "%P: %B: warning: relocation in readonly section `%A'.\n" +msgstr "" + +#: elf32-i386.c:3086 elf32-tilepro.c:2557 elfxx-tilegx.c:2871 +msgid "%B: unrecognized relocation (0x%x) in section `%A'" +msgstr "" + +#: elf32-i386.c:3494 elf64-x86-64.c:3513 +msgid "hidden symbol" +msgstr "skriveni simbol" + +#: elf32-i386.c:3497 elf64-x86-64.c:3516 +msgid "internal symbol" +msgstr "interni simbol" + +#: elf32-i386.c:3500 elf64-x86-64.c:3519 +msgid "protected symbol" +msgstr "zaÅ¡tićeni simbol" + +#: elf32-i386.c:3503 elf64-x86-64.c:3522 +msgid "symbol" +msgstr "simbol" + +#: elf32-i386.c:3508 +msgid "%B: relocation R_386_GOTOFF against undefined %s `%s' can not be used when making a shared object" +msgstr "" + +#: elf32-i386.c:3518 +msgid "%B: relocation R_386_GOTOFF against protected function `%s' can not be used when making a shared object" +msgstr "" + +#: elf32-i386.c:4839 elf32-tilepro.c:3467 elf64-x86-64.c:4609 +#: elfxx-tilegx.c:3847 +#, c-format +msgid "discarded output section: `%A'" +msgstr "" + +#: elf32-ip2k.c:857 elf32-ip2k.c:863 elf32-ip2k.c:930 elf32-ip2k.c:936 +msgid "ip2k relaxer: switch table without complete matching relocation information." +msgstr "" + +#: elf32-ip2k.c:880 elf32-ip2k.c:963 +msgid "ip2k relaxer: switch table header corrupt." +msgstr "" + +#: elf32-ip2k.c:1292 +#, c-format +msgid "ip2k linker: missing page instruction at 0x%08lx (dest = 0x%08lx)." +msgstr "" + +#: elf32-ip2k.c:1308 +#, c-format +msgid "ip2k linker: redundant page instruction at 0x%08lx (dest = 0x%08lx)." +msgstr "" + +#: elf32-iq2000.c:858 elf32-m32c.c:819 +#, c-format +msgid "%s: uses different e_flags (0x%lx) fields than previous modules (0x%lx)" +msgstr "" + +#: elf32-lm32.c:706 +msgid "global pointer relative relocation when _gp not defined" +msgstr "" + +#: elf32-lm32.c:761 +msgid "global pointer relative address out of range" +msgstr "" + +#: elf32-lm32.c:1057 +msgid "internal error: addend should be zero for R_LM32_16_GOT" +msgstr "" + +#: elf32-m32r.c:1453 +msgid "SDA relocation when _SDA_BASE_ not defined" +msgstr "" + +#: elf32-m32r.c:3043 +msgid "%B: The target (%s) of an %s relocation is in the wrong section (%A)" +msgstr "" + +#: elf32-m32r.c:3571 +msgid "%B: Instruction set mismatch with previous modules" +msgstr "" + +#: elf32-m32r.c:3592 +#, c-format +msgid "private flags = %lx" +msgstr "" + +#: elf32-m32r.c:3597 +#, c-format +msgid ": m32r instructions" +msgstr ": m32r instrukcije" + +#: elf32-m32r.c:3598 +#, c-format +msgid ": m32rx instructions" +msgstr ": m32rx instrukcije" + +#: elf32-m32r.c:3599 +#, c-format +msgid ": m32r2 instructions" +msgstr ": m32r2 instrukcije" + +#: elf32-m68hc1x.c:1050 +#, c-format +msgid "Reference to the far symbol `%s' using a wrong relocation may result in incorrect execution" +msgstr "" + +#: elf32-m68hc1x.c:1073 +#, c-format +msgid "banked address [%lx:%04lx] (%lx) is not in the same bank as current banked address [%lx:%04lx] (%lx)" +msgstr "" + +#: elf32-m68hc1x.c:1092 +#, c-format +msgid "reference to a banked address [%lx:%04lx] in the normal address space at %04lx" +msgstr "" + +#: elf32-m68hc1x.c:1225 +msgid "%B: linking files compiled for 16-bit integers (-mshort) and others for 32-bit integers" +msgstr "" + +#: elf32-m68hc1x.c:1232 +msgid "%B: linking files compiled for 32-bit double (-fshort-double) and others for 64-bit double" +msgstr "" + +#: elf32-m68hc1x.c:1241 +msgid "%B: linking files compiled for HCS12 with others compiled for HC12" +msgstr "" + +#: elf32-m68hc1x.c:1257 elf32-ppc.c:4227 elf64-sparc.c:706 elfxx-mips.c:13965 +msgid "%B: uses different e_flags (0x%lx) fields than previous modules (0x%lx)" +msgstr "" + +#: elf32-m68hc1x.c:1285 +#, c-format +msgid "[abi=32-bit int, " +msgstr "" + +#: elf32-m68hc1x.c:1287 +#, c-format +msgid "[abi=16-bit int, " +msgstr "" + +#: elf32-m68hc1x.c:1290 +#, c-format +msgid "64-bit double, " +msgstr "" + +#: elf32-m68hc1x.c:1292 +#, c-format +msgid "32-bit double, " +msgstr "" + +#: elf32-m68hc1x.c:1295 +#, c-format +msgid "cpu=HC11]" +msgstr "" + +#: elf32-m68hc1x.c:1297 +#, c-format +msgid "cpu=HCS12]" +msgstr "" + +#: elf32-m68hc1x.c:1299 +#, c-format +msgid "cpu=HC12]" +msgstr "" + +#: elf32-m68hc1x.c:1302 +#, c-format +msgid " [memory=bank-model]" +msgstr "" + +#: elf32-m68hc1x.c:1304 +#, c-format +msgid " [memory=flat]" +msgstr "" + +#: elf32-m68k.c:1251 elf32-m68k.c:1252 vms-alpha.c:7314 vms-alpha.c:7329 +msgid "unknown" +msgstr "nepoznato" + +#: elf32-m68k.c:1715 +msgid "%B: GOT overflow: Number of relocations with 8-bit offset > %d" +msgstr "" + +#: elf32-m68k.c:1721 +msgid "%B: GOT overflow: Number of relocations with 8- or 16-bit offset > %d" +msgstr "" + +#: elf32-m68k.c:3957 +msgid "%B(%A+0x%lx): R_68K_TLS_LE32 relocation not permitted in shared object" +msgstr "" + +#: elf32-mcore.c:99 elf32-mcore.c:442 +msgid "%B: Relocation %s (%d) is not currently supported.\n" +msgstr "" + +#: elf32-mcore.c:428 +msgid "%B: Unknown relocation type %d\n" +msgstr "" + +#. Pacify gcc -Wall. +#: elf32-mep.c:157 +#, c-format +msgid "mep: no reloc for code %d" +msgstr "" + +#: elf32-mep.c:163 +#, c-format +msgid "MeP: howto %d has type %d" +msgstr "" + +#: elf32-mep.c:648 +msgid "%B and %B are for different cores" +msgstr "" + +#: elf32-mep.c:665 +msgid "%B and %B are for different configurations" +msgstr "" + +#: elf32-mep.c:702 +#, c-format +msgid "private flags = 0x%lx" +msgstr "" + +#: elf32-microblaze.c:742 +#, c-format +msgid "%s: unknown relocation type %d" +msgstr "" + +#: elf32-microblaze.c:867 elf32-microblaze.c:912 +#, c-format +msgid "%s: The target (%s) of an %s relocation is in the wrong section (%s)" +msgstr "" + +#: elf32-microblaze.c:1155 elf32-tilepro.c:2891 elfxx-sparc.c:3457 +#: elfxx-tilegx.c:3230 +msgid "%B: probably compiled without -fPIC?" +msgstr "" + +#: elf32-microblaze.c:2074 +msgid "%B: bad relocation section name `%s'" +msgstr "" + +#: elf32-mips.c:1549 elf64-mips.c:2683 elfn32-mips.c:2487 +msgid "literal relocation occurs for an external symbol" +msgstr "" + +#: elf32-mips.c:1596 elf32-score.c:570 elf32-score7.c:469 elf64-mips.c:2726 +#: elfn32-mips.c:2528 +msgid "32bits gp relative relocation occurs for an external symbol" +msgstr "" + +#: elf32-ppc.c:1741 +#, c-format +msgid "generic linker can't handle %s" +msgstr "" + +#: elf32-ppc.c:2184 +msgid "corrupt %s section in %B" +msgstr "" + +#: elf32-ppc.c:2203 +msgid "unable to read in %s section from %B" +msgstr "" + +#: elf32-ppc.c:2244 +msgid "warning: unable to set size of %s section in %B" +msgstr "" + +#: elf32-ppc.c:2294 +msgid "failed to allocate space for new APUinfo section." +msgstr "" + +#: elf32-ppc.c:2313 +msgid "failed to compute new APUinfo section." +msgstr "" + +#: elf32-ppc.c:2316 +msgid "failed to install new APUinfo section." +msgstr "" + +#: elf32-ppc.c:3356 +msgid "%B: relocation %s cannot be used when making a shared object" +msgstr "" + +#. It does not make sense to have a procedure linkage +#. table entry for a local symbol. +#: elf32-ppc.c:3700 +msgid "%P: %H: %s reloc against local symbol\n" +msgstr "" + +#: elf32-ppc.c:4039 elf32-ppc.c:4054 elfxx-mips.c:13651 elfxx-mips.c:13677 +#: elfxx-mips.c:13699 elfxx-mips.c:13725 +msgid "Warning: %B uses hard float, %B uses soft float" +msgstr "" + +#: elf32-ppc.c:4042 elf32-ppc.c:4046 +msgid "Warning: %B uses double-precision hard float, %B uses single-precision hard float" +msgstr "" + +#: elf32-ppc.c:4050 +msgid "Warning: %B uses soft float, %B uses single-precision hard float" +msgstr "" + +#: elf32-ppc.c:4057 elf32-ppc.c:4061 elfxx-mips.c:13631 elfxx-mips.c:13635 +msgid "Warning: %B uses unknown floating point ABI %d" +msgstr "" + +#: elf32-ppc.c:4103 elf32-ppc.c:4107 +msgid "Warning: %B uses unknown vector ABI %d" +msgstr "" + +#: elf32-ppc.c:4111 +msgid "Warning: %B uses vector ABI \"%s\", %B uses \"%s\"" +msgstr "" + +#: elf32-ppc.c:4128 elf32-ppc.c:4131 +msgid "Warning: %B uses r3/r4 for small structure returns, %B uses memory" +msgstr "" + +#: elf32-ppc.c:4134 elf32-ppc.c:4138 +msgid "Warning: %B uses unknown small structure return convention %d" +msgstr "" + +#: elf32-ppc.c:4192 +msgid "%B: compiled with -mrelocatable and linked with modules compiled normally" +msgstr "" + +#: elf32-ppc.c:4200 +msgid "%B: compiled normally and linked with modules compiled with -mrelocatable" +msgstr "" + +#: elf32-ppc.c:4309 +msgid "%P: bss-plt forced due to %B\n" +msgstr "" + +#: elf32-ppc.c:4312 +msgid "%P: bss-plt forced by profiling\n" +msgstr "" + +#. Uh oh, we didn't find the expected call. We +#. could just mark this symbol to exclude it +#. from tls optimization but it's safer to skip +#. the entire optimization. +#: elf32-ppc.c:4809 elf64-ppc.c:7858 +msgid "%H arg lost __tls_get_addr, TLS optimization disabled\n" +msgstr "" + +#: elf32-ppc.c:5044 elf64-ppc.c:6528 +msgid "%P: dynamic variable `%s' is zero size\n" +msgstr "" + +#: elf32-ppc.c:7263 elf64-ppc.c:12675 +msgid "%P: %B: unknown relocation type %d for symbol %s\n" +msgstr "" + +#: elf32-ppc.c:7524 +msgid "%P: %H: non-zero addend on %s reloc against `%s'\n" +msgstr "" + +#: elf32-ppc.c:7720 elf64-ppc.c:13181 +msgid "%P: %H: relocation %s for indirect function %s unsupported\n" +msgstr "" + +#: elf32-ppc.c:7948 elf32-ppc.c:7978 elf32-ppc.c:8025 +msgid "%P: %B: the target (%s) of a %s relocation is in the wrong output section (%s)\n" +msgstr "" + +#: elf32-ppc.c:8097 +msgid "%P: %B: relocation %s is not yet supported for symbol %s\n" +msgstr "" + +#: elf32-ppc.c:8158 elf64-ppc.c:13467 +msgid "%P: %H: unresolvable %s relocation against symbol `%s'\n" +msgstr "" + +#: elf32-ppc.c:8205 elf64-ppc.c:13512 +msgid "%P: %H: %s reloc against `%s': error %d\n" +msgstr "" + +#: elf32-ppc.c:8696 +msgid "%P: %s not defined in linker created %s\n" +msgstr "" + +#: elf32-rx.c:563 +msgid "%B:%A: Warning: deprecated Red Hat reloc " +msgstr "" + +#. 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 +msgid "%B(%A): unsafe PID relocation %s at 0x%08lx (against %s in %s)" +msgstr "" + +#: elf32-rx.c:1157 +msgid "Warning: RX_SYM reloc with an unknown symbol" +msgstr "" + +#: elf32-rx.c:1324 +msgid "%B(%A): error: call to undefined function '%s'" +msgstr "" + +#: elf32-rx.c:1338 +msgid "%B(%A): warning: unaligned access to symbol '%s' in the small data area" +msgstr "" + +#: elf32-rx.c:1342 +msgid "%B(%A): internal error: out of range error" +msgstr "" + +#: elf32-rx.c:1346 +msgid "%B(%A): internal error: unsupported relocation error" +msgstr "" + +#: elf32-rx.c:1350 +msgid "%B(%A): internal error: dangerous relocation" +msgstr "" + +#: elf32-rx.c:1354 +msgid "%B(%A): internal error: unknown error" +msgstr "" + +#: elf32-rx.c:3004 +#, c-format +msgid " [64-bit doubles]" +msgstr "" + +#: elf32-rx.c:3006 +#, c-format +msgid " [dsp]" +msgstr "" + +#: elf32-s390.c:2200 elf64-s390.c:2187 +msgid "%B(%A+0x%lx): invalid instruction for TLS relocation %s" +msgstr "" + +#: elf32-score.c:1520 elf32-score7.c:1379 elfxx-mips.c:3435 +msgid "not enough GOT space for local GOT entries" +msgstr "" + +#: elf32-score.c:2742 +msgid "address not word align" +msgstr "" + +#: elf32-score.c:2827 elf32-score7.c:2631 +#, c-format +msgid "%s: Malformed reloc detected for section %s" +msgstr "" + +#: elf32-score.c:2878 elf32-score7.c:2682 +msgid "%B: CALL15 reloc at 0x%lx not against global symbol" +msgstr "" + +#: elf32-score.c:3997 elf32-score7.c:3803 +#, c-format +msgid " [pic]" +msgstr "" + +#: elf32-score.c:4001 elf32-score7.c:3807 +#, c-format +msgid " [fix dep]" +msgstr "" + +#: elf32-score.c:4043 elf32-score7.c:3849 +msgid "%B: warning: linking PIC files with non-PIC files" +msgstr "" + +#: elf32-sh-symbian.c:130 +msgid "%B: IMPORT AS directive for %s conceals previous IMPORT AS" +msgstr "" + +#: elf32-sh-symbian.c:383 +msgid "%B: Unrecognised .directive command: %s" +msgstr "" + +#: elf32-sh-symbian.c:504 +msgid "%B: Failed to add renamed symbol %s" +msgstr "" + +#: elf32-sh.c:568 +msgid "%B: 0x%lx: warning: bad R_SH_USES offset" +msgstr "" + +#: elf32-sh.c:580 +msgid "%B: 0x%lx: warning: R_SH_USES points to unrecognized insn 0x%x" +msgstr "" + +#: elf32-sh.c:597 +msgid "%B: 0x%lx: warning: bad R_SH_USES load offset" +msgstr "" + +#: elf32-sh.c:612 +msgid "%B: 0x%lx: warning: could not find expected reloc" +msgstr "" + +#: elf32-sh.c:640 +msgid "%B: 0x%lx: warning: symbol in unexpected section" +msgstr "" + +#: elf32-sh.c:766 +msgid "%B: 0x%lx: warning: could not find expected COUNT reloc" +msgstr "" + +#: elf32-sh.c:775 +msgid "%B: 0x%lx: warning: bad count" +msgstr "" + +#: elf32-sh.c:1179 elf32-sh.c:1549 +msgid "%B: 0x%lx: fatal: reloc overflow while relaxing" +msgstr "" + +#: elf32-sh.c:4048 elf64-sh64.c:1514 +msgid "Unexpected STO_SH5_ISA32 on local symbol is not handled" +msgstr "" + +#: elf32-sh.c:4299 +msgid "%B: 0x%lx: fatal: unaligned branch target for relax-support relocation" +msgstr "" + +#: elf32-sh.c:4332 elf32-sh.c:4347 +msgid "%B: 0x%lx: fatal: unaligned %s relocation 0x%lx" +msgstr "" + +#: elf32-sh.c:4361 +msgid "%B: 0x%lx: fatal: R_SH_PSHA relocation %d not in range -32..32" +msgstr "" + +#: elf32-sh.c:4375 +msgid "%B: 0x%lx: fatal: R_SH_PSHL relocation %d not in range -32..32" +msgstr "" + +#: elf32-sh.c:4519 elf32-sh.c:4989 +msgid "%B(%A+0x%lx): cannot emit fixup to `%s' in read-only section" +msgstr "" + +#: elf32-sh.c:5096 +msgid "%B(%A+0x%lx): %s relocation against external symbol \"%s\"" +msgstr "" + +#: elf32-sh.c:5569 +#, c-format +msgid "%X%C: relocation to \"%s\" references a different segment\n" +msgstr "" + +#: elf32-sh.c:5575 +#, c-format +msgid "%C: warning: relocation to \"%s\" references a different segment\n" +msgstr "" + +#: elf32-sh.c:6353 elf32-sh.c:6436 +msgid "%B: `%s' accessed both as normal and FDPIC symbol" +msgstr "" + +#: elf32-sh.c:6358 elf32-sh.c:6440 +msgid "%B: `%s' accessed both as FDPIC and thread local symbol" +msgstr "" + +#: elf32-sh.c:6388 +msgid "%B: Function descriptor relocation with non-zero addend" +msgstr "" + +#: elf32-sh.c:6624 elf64-alpha.c:4652 +msgid "%B: TLS local exec code cannot be linked into shared objects" +msgstr "" + +#: elf32-sh64.c:223 elf64-sh64.c:2318 +#, c-format +msgid "%s: compiled as 32-bit object and %s is 64-bit" +msgstr "" + +#: elf32-sh64.c:226 elf64-sh64.c:2321 +#, c-format +msgid "%s: compiled as 64-bit object and %s is 32-bit" +msgstr "" + +#: elf32-sh64.c:228 elf64-sh64.c:2323 +#, c-format +msgid "%s: object size does not match that of target %s" +msgstr "" + +#: elf32-sh64.c:451 elf64-sh64.c:2837 +#, c-format +msgid "%s: encountered datalabel symbol in input" +msgstr "" + +#: elf32-sh64.c:528 +msgid "PTB mismatch: a SHmedia address (bit 0 == 1)" +msgstr "" + +#: elf32-sh64.c:531 +msgid "PTA mismatch: a SHcompact address (bit 0 == 0)" +msgstr "" + +#: elf32-sh64.c:549 +#, c-format +msgid "%s: GAS error: unexpected PTB insn with R_SH_PT_16" +msgstr "" + +#: elf32-sh64.c:598 +msgid "%B: error: unaligned relocation type %d at %08x reloc %p\n" +msgstr "" + +#: elf32-sh64.c:674 +#, c-format +msgid "%s: could not write out added .cranges entries" +msgstr "" + +#: elf32-sh64.c:734 +#, c-format +msgid "%s: could not write out sorted .cranges entries" +msgstr "" + +#: elf32-sparc.c:90 +msgid "%B: compiled for a 64 bit system and target is 32 bit" +msgstr "" + +#: elf32-sparc.c:103 +msgid "%B: linking little endian files with big endian files" +msgstr "" + +#: elf32-spu.c:719 +msgid "%X%P: overlay section %A does not start on a cache line.\n" +msgstr "" + +#: elf32-spu.c:727 +msgid "%X%P: overlay section %A is larger than a cache line.\n" +msgstr "" + +#: elf32-spu.c:747 +msgid "%X%P: overlay section %A is not in cache area.\n" +msgstr "" + +#: elf32-spu.c:787 +msgid "%X%P: overlay sections %A and %A do not start at the same address.\n" +msgstr "" + +#: elf32-spu.c:1011 +msgid "warning: call to non-function symbol %s defined in %B" +msgstr "" + +#: elf32-spu.c:1361 +msgid "%A:0x%v lrlive .brinfo (%u) differs from analysis (%u)\n" +msgstr "" + +#: elf32-spu.c:1880 +msgid "%B is not allowed to define %s" +msgstr "%B nema dozvolu za definiranje %s" + +#: elf32-spu.c:1888 +#, c-format +msgid "you are not allowed to define %s in a script" +msgstr "nemate dozvolu za definiranje %s u skripti" + +#: elf32-spu.c:1922 +#, c-format +msgid "%s in overlay section" +msgstr "" + +#: elf32-spu.c:1951 +msgid "overlay stub relocation overflow" +msgstr "" + +#: elf32-spu.c:1960 +msgid "stubs don't match calculated size" +msgstr "" + +#: elf32-spu.c:2542 +#, c-format +msgid "warning: %s overlaps %s\n" +msgstr "upozorenje: %s se preklapa sa %s\n" + +#: elf32-spu.c:2558 +#, c-format +msgid "warning: %s exceeds section size\n" +msgstr "" + +#: elf32-spu.c:2589 +msgid "%A:0x%v not found in function table\n" +msgstr "%A:0x%v nije pronaÄ‘en u tablici funkcija\n" + +#: elf32-spu.c:2729 +msgid "%B(%A+0x%v): call to non-code section %B(%A), analysis incomplete\n" +msgstr "" + +#: elf32-spu.c:3297 +#, c-format +msgid "Stack analysis will ignore the call from %s to %s\n" +msgstr "" + +#: elf32-spu.c:3988 +msgid " %s: 0x%v\n" +msgstr " %s: 0x%v\n" + +#: elf32-spu.c:3989 +msgid "%s: 0x%v 0x%v\n" +msgstr "%s: 0x%v 0x%v\n" + +#: elf32-spu.c:3994 +msgid " calls:\n" +msgstr "" + +#: elf32-spu.c:4002 +#, c-format +msgid " %s%s %s\n" +msgstr " %s%s %s\n" + +#: elf32-spu.c:4307 +#, c-format +msgid "%s duplicated in %s\n" +msgstr "" + +#: elf32-spu.c:4311 +#, c-format +msgid "%s duplicated\n" +msgstr "" + +#: elf32-spu.c:4318 +msgid "sorry, no support for duplicate object files in auto-overlay script\n" +msgstr "" + +#: elf32-spu.c:4359 +msgid "non-overlay size of 0x%v plus maximum overlay size of 0x%v exceeds local store\n" +msgstr "" + +#: elf32-spu.c:4514 +msgid "%B:%A%s exceeds overlay size\n" +msgstr "" + +#: elf32-spu.c:4676 +msgid "Stack size for call graph root nodes.\n" +msgstr "" + +#: elf32-spu.c:4677 +msgid "" +"\n" +"Stack size for functions. Annotations: '*' max stack, 't' tail call\n" +msgstr "" + +#: elf32-spu.c:4687 +msgid "Maximum stack required is 0x%v\n" +msgstr "" + +#: elf32-spu.c:4778 +msgid "fatal error while creating .fixup" +msgstr "" + +#: elf32-spu.c:5008 +msgid "%B(%s+0x%lx): unresolvable %s relocation against symbol `%s'" +msgstr "" + +#: elf32-tic6x.c:1602 +msgid "warning: generating a shared library containing non-PIC code" +msgstr "" + +#: elf32-tic6x.c:1607 +msgid "warning: generating a shared library containing non-PID code" +msgstr "" + +#: elf32-tic6x.c:2541 +msgid "%B: SB-relative relocation but __c6xabi_DSBT_BASE not defined" +msgstr "" + +#: elf32-tic6x.c:2761 +msgid "dangerous relocation" +msgstr "opasno premjeÅ¡tanje" + +#: elf32-tic6x.c:3733 +msgid "%B: error: unknown mandatory EABI object attribute %d" +msgstr "" + +#: elf32-tic6x.c:3741 +msgid "%B: warning: unknown EABI object attribute %d" +msgstr "" + +#: elf32-tic6x.c:3853 elf32-tic6x.c:3861 +msgid "error: %B requires more stack alignment than %B preserves" +msgstr "" + +#: elf32-tic6x.c:3871 elf32-tic6x.c:3880 +msgid "error: unknown Tag_ABI_array_object_alignment value in %B" +msgstr "" + +#: elf32-tic6x.c:3889 elf32-tic6x.c:3898 +msgid "error: unknown Tag_ABI_array_object_align_expected value in %B" +msgstr "" + +#: elf32-tic6x.c:3906 elf32-tic6x.c:3913 +msgid "error: %B requires more array alignment than %B preserves" +msgstr "" + +#: elf32-tic6x.c:3935 +msgid "warning: %B and %B differ in wchar_t size" +msgstr "" + +#: elf32-tic6x.c:3953 +msgid "warning: %B and %B differ in whether code is compiled for DSBT" +msgstr "" + +#: elf32-v850.c:173 +#, c-format +msgid "Variable `%s' cannot occupy in multiple small data regions" +msgstr "" + +#: elf32-v850.c:176 +#, c-format +msgid "Variable `%s' can only be in one of the small, zero, and tiny data regions" +msgstr "" + +#: elf32-v850.c:179 +#, c-format +msgid "Variable `%s' cannot be in both small and zero data regions simultaneously" +msgstr "" + +#: elf32-v850.c:182 +#, c-format +msgid "Variable `%s' cannot be in both small and tiny data regions simultaneously" +msgstr "" + +#: elf32-v850.c:185 +#, c-format +msgid "Variable `%s' cannot be in both zero and tiny data regions simultaneously" +msgstr "" + +#: elf32-v850.c:483 +msgid "FAILED to find previous HI16 reloc" +msgstr "" + +#: elf32-v850.c:2155 +msgid "could not locate special linker symbol __gp" +msgstr "" + +#: elf32-v850.c:2159 +msgid "could not locate special linker symbol __ep" +msgstr "" + +#: elf32-v850.c:2163 +msgid "could not locate special linker symbol __ctbp" +msgstr "" + +#: elf32-v850.c:2341 +msgid "%B: Architecture mismatch with previous modules" +msgstr "" + +#. xgettext:c-format. +#: elf32-v850.c:2360 +#, c-format +msgid "private flags = %lx: " +msgstr "" + +#: elf32-v850.c:2365 +#, c-format +msgid "v850 architecture" +msgstr "" + +#: elf32-v850.c:2366 +#, c-format +msgid "v850e architecture" +msgstr "" + +#: elf32-v850.c:2367 +#, c-format +msgid "v850e1 architecture" +msgstr "" + +#: elf32-v850.c:2368 +#, c-format +msgid "v850e2 architecture" +msgstr "" + +#: elf32-v850.c:2369 +#, c-format +msgid "v850e2v3 architecture" +msgstr "" + +#: elf32-vax.c:532 +#, c-format +msgid " [nonpic]" +msgstr "" + +#: elf32-vax.c:535 +#, c-format +msgid " [d-float]" +msgstr "" + +#: elf32-vax.c:538 +#, c-format +msgid " [g-float]" +msgstr "" + +#: elf32-vax.c:655 +#, c-format +msgid "%s: warning: GOT addend of %ld to `%s' does not match previous GOT addend of %ld" +msgstr "" + +#: elf32-vax.c:1585 +#, c-format +msgid "%s: warning: PLT addend of %d to `%s' from %s section ignored" +msgstr "" + +#: elf32-vax.c:1712 +#, c-format +msgid "%s: warning: %s relocation against symbol `%s' from %s section" +msgstr "" + +#: elf32-vax.c:1718 +#, c-format +msgid "%s: warning: %s relocation to 0x%x from %s section" +msgstr "" + +#: elf32-xstormy16.c:451 elf32-ia64.c:2336 elf64-ia64.c:2336 +msgid "non-zero addend in @fptr reloc" +msgstr "" + +#: elf32-xtensa.c:918 +msgid "%B(%A): invalid property table" +msgstr "" + +#: elf32-xtensa.c:2777 +msgid "%B(%A+0x%lx): relocation offset out of range (size=0x%x)" +msgstr "" + +#: elf32-xtensa.c:2856 elf32-xtensa.c:2977 +msgid "dynamic relocation in read-only section" +msgstr "" + +#: elf32-xtensa.c:2953 +msgid "TLS relocation invalid without dynamic sections" +msgstr "" + +#: elf32-xtensa.c:3172 +msgid "internal inconsistency in size of .got.loc section" +msgstr "" + +#: elf32-xtensa.c:3485 +msgid "%B: incompatible machine type. Output is 0x%x. Input is 0x%x" +msgstr "" + +#: elf32-xtensa.c:4714 elf32-xtensa.c:4722 +msgid "Attempt to convert L32R/CALLX to CALL failed" +msgstr "" + +#: elf32-xtensa.c:6332 elf32-xtensa.c:6408 elf32-xtensa.c:7524 +msgid "%B(%A+0x%lx): could not decode instruction; possible configuration mismatch" +msgstr "" + +#: elf32-xtensa.c:7264 +msgid "%B(%A+0x%lx): could not decode instruction for XTENSA_ASM_SIMPLIFY relocation; possible configuration mismatch" +msgstr "" + +#: elf32-xtensa.c:9023 +msgid "invalid relocation address" +msgstr "" + +#: elf32-xtensa.c:9072 +msgid "overflow after relaxation" +msgstr "" + +#: elf32-xtensa.c:10204 +msgid "%B(%A+0x%lx): unexpected fix for %s relocation" +msgstr "" + +#: elf64-alpha.c:460 +msgid "GPDISP relocation did not find ldah and lda instructions" +msgstr "" + +#: elf64-alpha.c:2497 +msgid "%B: .got subsegment exceeds 64K (size %d)" +msgstr "" + +#: elf64-alpha.c:4387 elf64-alpha.c:4399 +msgid "%B: gp-relative relocation against dynamic symbol %s" +msgstr "" + +#: elf64-alpha.c:4425 elf64-alpha.c:4565 +msgid "%B: pc-relative relocation against dynamic symbol %s" +msgstr "" + +#: elf64-alpha.c:4453 +msgid "%B: change in gp: BRSGP %s" +msgstr "" + +#: elf64-alpha.c:4478 +msgid "<unknown>" +msgstr "<nepoznato>" + +#: elf64-alpha.c:4483 +msgid "%B: !samegp reloc against symbol without .prologue: %s" +msgstr "" + +#: elf64-alpha.c:4540 +msgid "%B: unhandled dynamic relocation against %s" +msgstr "" + +#: elf64-alpha.c:4572 +msgid "%B: pc-relative relocation against undefined weak symbol %s" +msgstr "" + +#: elf64-alpha.c:4636 +msgid "%B: dtp-relative relocation against dynamic symbol %s" +msgstr "" + +#: elf64-alpha.c:4659 +msgid "%B: tp-relative relocation against dynamic symbol %s" +msgstr "" + +#: elf64-hppa.c:2083 +#, c-format +msgid "stub entry for %s cannot load .plt, dp offset = %ld" +msgstr "" + +#: elf64-hppa.c:3275 +msgid "%B(%A+0x" +msgstr "%B(%A+0x" + +#: elf64-mmix.c:1034 +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" +" or assemble using \"-no-expand\" (for gcc, \"-Wa,-no-expand\"" +msgstr "" + +#: elf64-mmix.c:1218 +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" +" or compile using the gcc-option \"-mno-base-addresses\"." +msgstr "" + +#: elf64-mmix.c:1244 +#, c-format +msgid "" +"%s: Internal inconsistency error for value for\n" +" linker-allocated global register: linked: 0x%lx%08lx != relaxed: 0x%lx%08lx\n" +msgstr "" + +#: elf64-mmix.c:1670 +#, c-format +msgid "%s: base-plus-offset relocation against register symbol: (unknown) in %s" +msgstr "" + +#: elf64-mmix.c:1675 +#, c-format +msgid "%s: base-plus-offset relocation against register symbol: %s in %s" +msgstr "" + +#: elf64-mmix.c:1719 +#, c-format +msgid "%s: register relocation against non-register symbol: (unknown) in %s" +msgstr "" + +#: elf64-mmix.c:1724 +#, c-format +msgid "%s: register relocation against non-register symbol: %s in %s" +msgstr "" + +#: elf64-mmix.c:1761 +#, c-format +msgid "%s: directive LOCAL valid only with a register or absolute value" +msgstr "" + +#: elf64-mmix.c:1789 +#, c-format +msgid "%s: LOCAL directive: Register $%ld is not a local register. First global register is $%ld." +msgstr "" + +#: elf64-mmix.c:2253 +#, c-format +msgid "%s: Error: multiple definition of `%s'; start of %s is set in a earlier linked file\n" +msgstr "" + +#: elf64-mmix.c:2311 +msgid "Register section has contents\n" +msgstr "" + +#: elf64-mmix.c:2503 +#, c-format +msgid "" +"Internal inconsistency: remaining %u != max %u.\n" +" Please report this bug." +msgstr "" + +#: elf64-ppc.c:4185 +msgid "%P: %B: cannot create stub entry %s\n" +msgstr "" + +#: elf64-ppc.c:6518 +msgid "%P: copy reloc against `%s' requires lazy plt linking; avoid setting LD_BIND_NOW=1 or upgrade gcc\n" +msgstr "" + +#: elf64-ppc.c:6788 +msgid "%B: undefined symbol on R_PPC64_TOCSAVE relocation" +msgstr "" + +#: elf64-ppc.c:6992 +msgid "%P: dynreloc miscount for %B, section %A\n" +msgstr "" + +#: elf64-ppc.c:7076 +msgid "%B: .opd is not a regular array of opd entries" +msgstr "" + +#: elf64-ppc.c:7085 +msgid "%B: unexpected reloc type %u in .opd section" +msgstr "" + +#: elf64-ppc.c:7106 +msgid "%B: undefined sym `%s' in .opd section" +msgstr "" + +#: elf64-ppc.c:7664 +msgid "%H __tls_get_addr lost arg, TLS optimization disabled\n" +msgstr "" + +#: elf64-ppc.c:8003 elf64-ppc.c:8564 +#, c-format +msgid "%s defined on removed toc entry" +msgstr "" + +#: elf64-ppc.c:8521 +msgid "%P: %H: %s relocation references optimized away TOC entry\n" +msgstr "" + +#: elf64-ppc.c:9598 +msgid "%P: cannot find opd entry toc for %s\n" +msgstr "" + +#: elf64-ppc.c:9680 +msgid "%P: long branch stub `%s' offset overflow\n" +msgstr "" + +#: elf64-ppc.c:9739 +msgid "%P: can't find branch stub `%s'\n" +msgstr "" + +#: elf64-ppc.c:9801 elf64-ppc.c:9943 +msgid "%P: linkage table error against `%s'\n" +msgstr "" + +#: elf64-ppc.c:10126 +msgid "%P: can't build branch stub `%s'\n" +msgstr "" + +#: elf64-ppc.c:10941 +msgid "%B section %A exceeds stub group size" +msgstr "" + +#: elf64-ppc.c:11666 elf64-ppc.c:11699 +msgid "%P: %s offset too large for .eh_frame sdata4 encoding" +msgstr "" + +#: elf64-ppc.c:11744 +msgid "%P: stubs don't match calculated size\n" +msgstr "" + +#: elf64-ppc.c:11756 +#, c-format +msgid "" +"linker stubs in %u group%s\n" +" branch %lu\n" +" toc adjust %lu\n" +" long branch %lu\n" +" long toc adj %lu\n" +" plt call %lu" +msgstr "" + +#: elf64-ppc.c:12042 +msgid "%P: %H: %s used with TLS symbol %s\n" +msgstr "" + +#: elf64-ppc.c:12043 +msgid "%P: %H: %s used with non-TLS symbol %s\n" +msgstr "" + +#: elf64-ppc.c:12556 +msgid "%P: %H: automatic multiple TOCs not supported using your crt files; recompile with -mminimal-toc or upgrade gcc\n" +msgstr "" + +#: elf64-ppc.c:12562 +msgid "%P: %H: sibling call optimization to `%s' does not allow automatic multiple TOCs; recompile with -mminimal-toc or -fno-optimize-sibling-calls, or make `%s' extern\n" +msgstr "" + +#: elf64-ppc.c:13286 +msgid "%P: %B: relocation %s is not supported for symbol %s\n" +msgstr "" + +#: elf64-ppc.c:13446 +msgid "%P: %H: error: %s not a multiple of %u\n" +msgstr "" + +#: elf64-sh64.c:1686 +#, c-format +msgid "%s: error: unaligned relocation type %d at %08x reloc %08x\n" +msgstr "" + +#: elf64-sparc.c:446 +msgid "%B: Only registers %%g[2367] can be declared using STT_REGISTER" +msgstr "" + +#: elf64-sparc.c:466 +msgid "Register %%g%d used incompatibly: %s in %B, previously %s in %B" +msgstr "" + +#: elf64-sparc.c:489 +msgid "Symbol `%s' has differing types: REGISTER in %B, previously %s in %B" +msgstr "" + +#: elf64-sparc.c:534 +msgid "Symbol `%s' has differing types: %s in %B, previously REGISTER in %B" +msgstr "" + +#: elf64-sparc.c:687 +msgid "%B: linking UltraSPARC specific with HAL specific code" +msgstr "" + +#: elf64-x86-64.c:1427 +msgid "%B: relocation %s against symbol `%s' isn't supported in x32 mode" +msgstr "" + +#: elf64-x86-64.c:1656 +msgid "%B: '%s' accessed both as normal and thread local symbol" +msgstr "" + +#: elf64-x86-64.c:3150 +msgid "%B: relocation %s against STT_GNU_IFUNC symbol `%s' has non-zero addend: %d" +msgstr "" + +#: elf64-x86-64.c:3411 +msgid "%B: relocation R_X86_64_GOTOFF64 against protected function `%s' can not be used when making a shared object" +msgstr "" + +#: elf64-x86-64.c:3523 +msgid "; recompile with -fPIC" +msgstr "" + +#: elf64-x86-64.c:3528 +msgid "%B: relocation %s against %s `%s' can not be used when making a shared object%s" +msgstr "" + +#: elf64-x86-64.c:3530 +msgid "%B: relocation %s against undefined %s `%s' can not be used when making a shared object%s" +msgstr "" + +#: elfcode.h:767 +#, c-format +msgid "warning: %s has a corrupt string table index - ignoring" +msgstr "" + +#: elfcode.h:1177 +#, c-format +msgid "%s: version count (%ld) does not match symbol count (%ld)" +msgstr "" + +#: elfcode.h:1431 +#, c-format +msgid "%s(%s): relocation %d has invalid symbol index %ld" +msgstr "" + +#: elfcore.h:312 +msgid "Warning: %B is truncated: expected core file size >= %lu, found: %lu." +msgstr "" + +#: elflink.c:1117 +msgid "%s: TLS definition in %B section %A mismatches non-TLS definition in %B section %A" +msgstr "" + +#: elflink.c:1121 +msgid "%s: TLS reference in %B mismatches non-TLS reference in %B" +msgstr "" + +#: elflink.c:1125 +msgid "%s: TLS definition in %B section %A mismatches non-TLS reference in %B" +msgstr "" + +#: elflink.c:1129 +msgid "%s: TLS reference in %B mismatches non-TLS definition in %B section %A" +msgstr "" + +#: elflink.c:1762 +msgid "%B: unexpected redefinition of indirect versioned symbol `%s'" +msgstr "" + +#: elflink.c:2063 +msgid "%B: version node not found for symbol %s" +msgstr "" + +#: elflink.c:2154 +msgid "%B: bad reloc symbol index (0x%lx >= 0x%lx) for offset 0x%lx in section `%A'" +msgstr "" + +#: elflink.c:2165 +msgid "%B: non-zero symbol index (0x%lx) for offset 0x%lx in section `%A' when the object file has no symbol table" +msgstr "" + +#: elflink.c:2355 +msgid "%B: relocation size mismatch in %B section %A" +msgstr "" + +#: elflink.c:2639 +#, c-format +msgid "warning: type and size of dynamic symbol `%s' are not defined" +msgstr "" + +#: elflink.c:3391 +msgid "%P: alternate ELF machine code found (%d) in %B, expecting %d\n" +msgstr "" + +#: elflink.c:4037 +msgid "%B: %s: invalid version %u (max %d)" +msgstr "" + +#: elflink.c:4073 +msgid "%B: %s: invalid needed version %d" +msgstr "" + +#: elflink.c:4269 +msgid "Warning: alignment %u of common symbol `%s' in %B is greater than the alignment (%u) of its section %A" +msgstr "" + +#: elflink.c:4275 +msgid "Warning: alignment %u of symbol `%s' in %B is smaller than %u in %B" +msgstr "" + +#: elflink.c:4290 +msgid "Warning: size of symbol `%s' changed from %lu in %B to %lu in %B" +msgstr "" + +#: elflink.c:4463 +msgid "%B: undefined reference to symbol '%s'" +msgstr "" + +#: elflink.c:4466 +msgid "note: '%s' is defined in DSO %B so try adding it to the linker command line" +msgstr "" + +#: elflink.c:5781 +#, c-format +msgid "%s: undefined version: %s" +msgstr "%s: nedefinirana inaÄica: %s" + +#: elflink.c:5849 +msgid "%B: .preinit_array section is not allowed in DSO" +msgstr "" + +#: elflink.c:7604 +#, c-format +msgid "undefined %s reference in complex symbol: %s" +msgstr "" + +#: elflink.c:7758 +#, c-format +msgid "unknown operator '%c' in complex symbol" +msgstr "" + +#: elflink.c:8097 elflink.c:8114 elflink.c:8151 elflink.c:8168 +msgid "%B: Unable to sort relocs - they are in more than one size" +msgstr "" + +#: elflink.c:8128 elflink.c:8182 +msgid "%B: Unable to sort relocs - they are of an unknown size" +msgstr "" + +#: elflink.c:8233 +msgid "Not enough memory to sort relocations" +msgstr "" + +#: elflink.c:8426 +msgid "%B: Too many sections: %d (>= %d)" +msgstr "" + +#: elflink.c:8675 +msgid "%B: internal symbol `%s' in %B is referenced by DSO" +msgstr "" + +#: elflink.c:8677 +msgid "%B: hidden symbol `%s' in %B is referenced by DSO" +msgstr "" + +#: elflink.c:8679 +msgid "%B: local symbol `%s' in %B is referenced by DSO" +msgstr "" + +#: elflink.c:8776 +msgid "%B: could not find output section %A for input section %A" +msgstr "" + +#: elflink.c:8899 +msgid "%B: protected symbol `%s' isn't defined" +msgstr "" + +#: elflink.c:8901 +msgid "%B: internal symbol `%s' isn't defined" +msgstr "" + +#: elflink.c:8903 +msgid "%B: hidden symbol `%s' isn't defined" +msgstr "" + +#: elflink.c:9432 +msgid "error: %B: size of section %A is not multiple of address size" +msgstr "" + +#: elflink.c:9479 +msgid "error: %B contains a reloc (0x%s) for section %A that references a non-existent global symbol" +msgstr "" + +#: elflink.c:10214 +msgid "%A has both ordered [`%A' in %B] and unordered [`%A' in %B] sections" +msgstr "" + +#: elflink.c:10219 +#, c-format +msgid "%A has both ordered and unordered sections" +msgstr "" + +#: elflink.c:10784 +msgid "%B: file class %s incompatible with %s" +msgstr "" + +#: elflink.c:11093 elflink.c:11137 +msgid "%B: could not find output section %s" +msgstr "" + +#: elflink.c:11098 +#, c-format +msgid "warning: %s section has zero size" +msgstr "" + +#: elflink.c:11143 +#, c-format +msgid "warning: section '%s' is being made into a note" +msgstr "" + +#: elflink.c:11212 +msgid "%P%X: read-only segment has dynamic relocations.\n" +msgstr "" + +#: elflink.c:11215 +msgid "%P: warning: creating a DT_TEXTREL in a shared object.\n" +msgstr "" + +#: elflink.c:11402 +msgid "%P%X: can not read symbols: %E\n" +msgstr "" + +#: elflink.c:11792 +msgid "Removing unused section '%s' in file '%B'" +msgstr "" + +#: elflink.c:11998 +msgid "Warning: gc-sections option ignored" +msgstr "" + +#: elflink.c:12277 +#, c-format +msgid "Unrecognized INPUT_SECTION_FLAG %s\n" +msgstr "" + +#: elfxx-mips.c:1234 +msgid "static procedure (no name)" +msgstr "" + +#: elfxx-mips.c:5259 +msgid "MIPS16 and microMIPS functions cannot call each other" +msgstr "" + +#: elfxx-mips.c:5856 +msgid "%B: %A+0x%lx: Direct jumps between ISA modes are not allowed; consider recompiling with interlinking enabled." +msgstr "" + +#: elfxx-mips.c:6519 elfxx-mips.c:6742 +msgid "%B: Warning: bad `%s' option size %u smaller than its header" +msgstr "" + +#: elfxx-mips.c:7495 elfxx-mips.c:7620 +msgid "%B: Warning: cannot determine the target function for stub section `%s'" +msgstr "" + +#: elfxx-mips.c:7749 +msgid "%B: Malformed reloc detected for section %s" +msgstr "" + +#: elfxx-mips.c:7801 +msgid "%B: GOT reloc at 0x%lx not expected in executables" +msgstr "" + +#: elfxx-mips.c:7930 +msgid "%B: CALL16 reloc at 0x%lx not against global symbol" +msgstr "" + +#: elfxx-mips.c:8645 +#, c-format +msgid "non-dynamic relocations refer to dynamic symbol %s" +msgstr "" + +#: elfxx-mips.c:9347 +msgid "%B: Can't find matching LO16 reloc against `%s' for %s at 0x%lx in section `%A'" +msgstr "" + +#: elfxx-mips.c:9486 +msgid "small-data section exceeds 64KB; lower small-data size limit (see option -G)" +msgstr "" + +#: elfxx-mips.c:9505 +msgid "JALX to a non-word-aligned address" +msgstr "" + +#: elfxx-mips.c:13266 +#, c-format +msgid "%s: illegal section name `%s'" +msgstr "" + +#: elfxx-mips.c:13645 elfxx-mips.c:13671 +msgid "Warning: %B uses -msingle-float, %B uses -mdouble-float" +msgstr "" + +#: elfxx-mips.c:13657 elfxx-mips.c:13713 +msgid "Warning: %B uses -msingle-float, %B uses -mips32r2 -mfp64" +msgstr "" + +#: elfxx-mips.c:13683 elfxx-mips.c:13719 +msgid "Warning: %B uses -mdouble-float, %B uses -mips32r2 -mfp64" +msgstr "" + +#: elfxx-mips.c:13761 +msgid "%B: endianness incompatible with that of the selected emulation" +msgstr "" + +#: elfxx-mips.c:13772 +msgid "%B: ABI is incompatible with that of the selected emulation" +msgstr "" + +#: elfxx-mips.c:13856 +msgid "%B: warning: linking abicalls files with non-abicalls files" +msgstr "" + +#: elfxx-mips.c:13873 +msgid "%B: linking 32-bit code with 64-bit code" +msgstr "" + +#: elfxx-mips.c:13901 +msgid "%B: linking %s module with previous %s modules" +msgstr "" + +#: elfxx-mips.c:13924 +msgid "%B: ABI mismatch: linking %s module with previous %s modules" +msgstr "" + +#: elfxx-mips.c:13948 +msgid "%B: ASE mismatch: linking %s module with previous %s modules" +msgstr "" + +#: elfxx-mips.c:14106 +#, c-format +msgid " [abi=O32]" +msgstr " [abi=O32]" + +#: elfxx-mips.c:14108 +#, c-format +msgid " [abi=O64]" +msgstr " [abi=O64]" + +#: elfxx-mips.c:14110 +#, c-format +msgid " [abi=EABI32]" +msgstr " [abi=EABI32]" + +#: elfxx-mips.c:14112 +#, c-format +msgid " [abi=EABI64]" +msgstr " [abi=EABI64]" + +#: elfxx-mips.c:14114 +#, c-format +msgid " [abi unknown]" +msgstr " [abi nepoznat]" + +#: elfxx-mips.c:14116 +#, c-format +msgid " [abi=N32]" +msgstr " [abi=N32]" + +#: elfxx-mips.c:14118 +#, c-format +msgid " [abi=64]" +msgstr " [abi=64]" + +#: elfxx-mips.c:14120 +#, c-format +msgid " [no abi set]" +msgstr " [abi nije postavljen]" + +#: elfxx-mips.c:14141 +#, c-format +msgid " [unknown ISA]" +msgstr " [nepoznat ISA]" + +#: elfxx-mips.c:14155 +#, c-format +msgid " [not 32bitmode]" +msgstr "" + +#: elfxx-sparc.c:596 +#, c-format +msgid "invalid relocation type %d" +msgstr "" + +#: elfxx-tilegx.c:3952 +msgid "%B: Cannot link together %s and %s objects." +msgstr "" + +#: i386linux.c:451 m68klinux.c:456 sparclinux.c:450 +#, c-format +msgid "Output file requires shared library `%s'\n" +msgstr "" + +#: i386linux.c:459 m68klinux.c:464 sparclinux.c:458 +#, c-format +msgid "Output file requires shared library `%s.so.%s'\n" +msgstr "" + +#: i386linux.c:648 i386linux.c:698 m68klinux.c:656 m68klinux.c:704 +#: sparclinux.c:648 sparclinux.c:698 +#, c-format +msgid "Symbol %s not defined for fixups\n" +msgstr "" + +#: i386linux.c:722 m68klinux.c:728 sparclinux.c:722 +msgid "Warning: fixup count mismatch\n" +msgstr "" + +#: ieee.c:159 +#, c-format +msgid "%s: string too long (%d chars, max 65535)" +msgstr "" + +#: ieee.c:286 +#, c-format +msgid "%s: unrecognized symbol `%s' flags 0x%x" +msgstr "" + +#: ieee.c:792 +msgid "%B: unimplemented ATI record %u for symbol %u" +msgstr "" + +#: ieee.c:816 +msgid "%B: unexpected ATN type %d in external part" +msgstr "" + +#: ieee.c:838 +msgid "%B: unexpected type after ATN" +msgstr "" + +#: ihex.c:230 +msgid "%B:%d: unexpected character `%s' in Intel Hex file" +msgstr "" + +#: ihex.c:337 +msgid "%B:%u: bad checksum in Intel Hex file (expected %u, found %u)" +msgstr "" + +#: ihex.c:392 +msgid "%B:%u: bad extended address record length in Intel Hex file" +msgstr "" + +#: ihex.c:409 +msgid "%B:%u: bad extended start address length in Intel Hex file" +msgstr "" + +#: ihex.c:426 +msgid "%B:%u: bad extended linear address record length in Intel Hex file" +msgstr "" + +#: ihex.c:443 +msgid "%B:%u: bad extended linear start address length in Intel Hex file" +msgstr "" + +#: ihex.c:460 +msgid "%B:%u: unrecognized ihex type %u in Intel Hex file" +msgstr "" + +#: ihex.c:579 +msgid "%B: internal error in ihex_read_section" +msgstr "" + +#: ihex.c:613 +msgid "%B: bad section length in ihex_read_section" +msgstr "" + +#: ihex.c:826 +#, c-format +msgid "%s: address 0x%s out of range for Intel Hex file" +msgstr "" + +#: libbfd.c:863 +msgid "%B: unable to get decompressed section %A" +msgstr "" + +#: libbfd.c:1012 +msgid "%B: compiled for a big endian system and target is little endian" +msgstr "" + +#: libbfd.c:1014 +msgid "%B: compiled for a little endian system and target is big endian" +msgstr "" + +#: libbfd.c:1043 +#, c-format +msgid "Deprecated %s called at %s line %d in %s\n" +msgstr "" + +#: libbfd.c:1046 +#, c-format +msgid "Deprecated %s called\n" +msgstr "" + +#: linker.c:1872 +msgid "%B: indirect symbol `%s' to `%s' is a loop" +msgstr "" + +#: linker.c:2736 +#, c-format +msgid "Attempt to do relocatable link with %s input and %s output" +msgstr "" + +#: linker.c:3021 +msgid "%B: ignoring duplicate section `%A'\n" +msgstr "" + +#: linker.c:3030 linker.c:3039 +msgid "%B: duplicate section `%A' has different size\n" +msgstr "" + +#: linker.c:3047 linker.c:3052 +msgid "%B: could not read contents of section `%A'\n" +msgstr "" + +#: linker.c:3056 +msgid "%B: duplicate section `%A' has different contents\n" +msgstr "" + +#: mach-o.c:407 +msgid "bfd_mach_o_canonicalize_symtab: unable to load symbols" +msgstr "" + +#: mach-o.c:1301 +#, c-format +msgid "unable to write unknown load command 0x%lx" +msgstr "" + +#: mach-o.c:1789 +#, c-format +msgid "bfd_mach_o_read_symtab_symbol: unable to read %d bytes at %lu" +msgstr "" + +#: mach-o.c:1807 +#, c-format +msgid "bfd_mach_o_read_symtab_symbol: name out of range (%lu >= %lu)" +msgstr "" + +#: mach-o.c:1892 +#, c-format +msgid "bfd_mach_o_read_symtab_symbol: symbol \"%s\" specified invalid section %d (max %lu): setting to undefined" +msgstr "" + +#: mach-o.c:1900 +#, c-format +msgid "bfd_mach_o_read_symtab_symbol: symbol \"%s\" is unsupported 'indirect' reference: setting to undefined" +msgstr "" + +#: mach-o.c:1906 +#, c-format +msgid "bfd_mach_o_read_symtab_symbol: symbol \"%s\" specified invalid type field 0x%x: setting to undefined" +msgstr "" + +#: mach-o.c:1979 +msgid "bfd_mach_o_read_symtab_symbols: unable to allocate memory for symbols" +msgstr "" + +#: mach-o.c:2014 +#, c-format +msgid "bfd_mach_o_read_dysymtab_symbol: unable to read %lu bytes at %lu" +msgstr "" + +#: mach-o.c:2734 +#, c-format +msgid "unable to read unknown load command 0x%lx" +msgstr "" + +#: mach-o.c:2915 +#, c-format +msgid "bfd_mach_o_scan: unknown architecture 0x%lx/0x%lx" +msgstr "" + +#: mach-o.c:3011 +#, c-format +msgid "unknown header byte-order value 0x%lx" +msgstr "" + +#: mach-o.c:3577 +msgid "Mach-O header:\n" +msgstr "Mach-O zaglavlje:\n" + +#: mach-o.c:3578 +#, c-format +msgid " magic : %08lx\n" +msgstr "" + +#: mach-o.c:3579 +#, c-format +msgid " cputype : %08lx (%s)\n" +msgstr "" + +#: mach-o.c:3581 +#, c-format +msgid " cpusubtype: %08lx\n" +msgstr "" + +#: mach-o.c:3582 +#, c-format +msgid " filetype : %08lx (%s)\n" +msgstr "" + +#: mach-o.c:3585 +#, c-format +msgid " ncmds : %08lx (%lu)\n" +msgstr "" + +#: mach-o.c:3586 +#, c-format +msgid " sizeofcmds: %08lx\n" +msgstr "" + +#: mach-o.c:3587 +#, c-format +msgid " flags : %08lx (" +msgstr "" + +#: mach-o.c:3589 vms-alpha.c:7674 +msgid ")\n" +msgstr ")\n" + +#: mach-o.c:3590 +#, c-format +msgid " reserved : %08x\n" +msgstr "" + +#: mach-o.c:3600 +msgid "Segments and Sections:\n" +msgstr "" + +#: mach-o.c:3601 +msgid " #: Segment name Section name Address\n" +msgstr "" + +#: merge.c:832 +#, c-format +msgid "%s: access beyond end of merged section (%ld)" +msgstr "" + +#: mmo.c:456 +#, c-format +msgid "%s: No core to allocate section name %s\n" +msgstr "" + +#: mmo.c:531 +#, c-format +msgid "%s: No core to allocate a symbol %d bytes long\n" +msgstr "" + +#: mmo.c:1187 +#, c-format +msgid "%s: invalid mmo file: initialization value for $255 is not `Main'\n" +msgstr "" + +#: mmo.c:1332 +#, c-format +msgid "%s: unsupported wide character sequence 0x%02X 0x%02X after symbol name starting with `%s'\n" +msgstr "" + +#: mmo.c:1565 +#, c-format +msgid "%s: invalid mmo file: unsupported lopcode `%d'\n" +msgstr "" + +#: mmo.c:1575 +#, c-format +msgid "%s: invalid mmo file: expected YZ = 1 got YZ = %d for lop_quote\n" +msgstr "" + +#: mmo.c:1611 +#, c-format +msgid "%s: invalid mmo file: expected z = 1 or z = 2, got z = %d for lop_loc\n" +msgstr "" + +#: mmo.c:1657 +#, c-format +msgid "%s: invalid mmo file: expected z = 1 or z = 2, got z = %d for lop_fixo\n" +msgstr "" + +#: mmo.c:1696 +#, c-format +msgid "%s: invalid mmo file: expected y = 0, got y = %d for lop_fixrx\n" +msgstr "" + +#: mmo.c:1705 +#, c-format +msgid "%s: invalid mmo file: expected z = 16 or z = 24, got z = %d for lop_fixrx\n" +msgstr "" + +#: mmo.c:1728 +#, c-format +msgid "%s: invalid mmo file: leading byte of operand word must be 0 or 1, got %d for lop_fixrx\n" +msgstr "" + +#: mmo.c:1751 +#, c-format +msgid "%s: cannot allocate file name for file number %d, %d bytes\n" +msgstr "" + +#: mmo.c:1771 +#, c-format +msgid "%s: invalid mmo file: file number %d `%s', was already entered as `%s'\n" +msgstr "" + +#: mmo.c:1784 +#, c-format +msgid "%s: invalid mmo file: file name for number %d was not specified before use\n" +msgstr "" + +#: mmo.c:1890 +#, c-format +msgid "%s: invalid mmo file: fields y and z of lop_stab non-zero, y: %d, z: %d\n" +msgstr "" + +#: mmo.c:1926 +#, c-format +msgid "%s: invalid mmo file: lop_end not last item in file\n" +msgstr "" + +#: mmo.c:1939 +#, 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 "" + +#: mmo.c:2649 +#, c-format +msgid "%s: invalid symbol table: duplicate symbol `%s'\n" +msgstr "" + +#: mmo.c:2889 +#, c-format +msgid "%s: Bad symbol definition: `Main' set to %s rather than the start address %s\n" +msgstr "" + +#: mmo.c:2981 +#, 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 "" + +#: mmo.c:3026 +#, c-format +msgid "%s: internal error, symbol table changed size from %d to %d words\n" +msgstr "" + +#: mmo.c:3078 +#, c-format +msgid "%s: internal error, internal register section %s had contents\n" +msgstr "" + +#: mmo.c:3129 +#, c-format +msgid "%s: no initialized registers; section length 0\n" +msgstr "" + +#: mmo.c:3135 +#, c-format +msgid "%s: too many initialized registers; section length %ld\n" +msgstr "" + +#: mmo.c:3140 +#, c-format +msgid "%s: invalid start address for initialized registers of length %ld: 0x%lx%08lx\n" +msgstr "" + +#: oasys.c:882 +#, c-format +msgid "%s: can not represent section `%s' in oasys" +msgstr "" + +#: osf-core.c:140 +#, c-format +msgid "Unhandled OSF/1 core file section type %d\n" +msgstr "" + +#: pe-mips.c:607 +msgid "%B: `ld -r' not supported with PE MIPS objects\n" +msgstr "" + +#. 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 +msgid "%B: unimplemented %s\n" +msgstr "%B: neimplementirani %s\n" + +#: pe-mips.c:745 +msgid "%B: jump too far away\n" +msgstr "" + +#: pe-mips.c:771 +msgid "%B: bad pair/reflo after refhi\n" +msgstr "" + +#: pef.c:520 +#, c-format +msgid "bfd_pef_scan: unknown architecture 0x%lx" +msgstr "" + +#: pei-x86_64.c:444 +#, c-format +msgid "warning: .pdata section size (%ld) is not a multiple of %d\n" +msgstr "" + +#: pei-x86_64.c:448 peigen.c:1618 peigen.c:1801 pepigen.c:1618 pepigen.c:1801 +#: pex64igen.c:1618 pex64igen.c:1801 +#, c-format +msgid "" +"\n" +"The Function Table (interpreted .pdata section contents)\n" +msgstr "" + +#: pei-x86_64.c:450 +#, c-format +msgid "vma:\t\t\tBeginAddress\t EndAddress\t UnwindData\n" +msgstr "" + +#. XXX code yet to be written. +#: peicode.h:751 +msgid "%B: Unhandled import type; %x" +msgstr "" + +#: peicode.h:756 +msgid "%B: Unrecognised import type; %x" +msgstr "" + +#: peicode.h:770 +msgid "%B: Unrecognised import name type; %x" +msgstr "" + +#: peicode.h:1166 +msgid "%B: Unrecognised machine type (0x%x) in Import Library Format archive" +msgstr "" + +#: peicode.h:1178 +msgid "%B: Recognised but unhandled machine type (0x%x) in Import Library Format archive" +msgstr "" + +#: peicode.h:1196 +msgid "%B: size field is zero in Import Library Format header" +msgstr "" + +#: peicode.h:1227 +msgid "%B: string not null terminated in ILF object file." +msgstr "" + +#: ppcboot.c:414 +#, c-format +msgid "" +"\n" +"ppcboot header:\n" +msgstr "" +"\n" +"ppcboot zaglavlje:\n" + +#: ppcboot.c:415 +#, c-format +msgid "Entry offset = 0x%.8lx (%ld)\n" +msgstr "" + +#: ppcboot.c:417 +#, c-format +msgid "Length = 0x%.8lx (%ld)\n" +msgstr "" + +#: ppcboot.c:421 +#, c-format +msgid "Flag field = 0x%.2x\n" +msgstr "" + +#: ppcboot.c:427 +#, c-format +msgid "Partition name = \"%s\"\n" +msgstr "" + +#: ppcboot.c:446 +#, c-format +msgid "" +"\n" +"Partition[%d] start = { 0x%.2x, 0x%.2x, 0x%.2x, 0x%.2x }\n" +msgstr "" + +#: ppcboot.c:452 +#, c-format +msgid "Partition[%d] end = { 0x%.2x, 0x%.2x, 0x%.2x, 0x%.2x }\n" +msgstr "" + +#: ppcboot.c:458 +#, c-format +msgid "Partition[%d] sector = 0x%.8lx (%ld)\n" +msgstr "" + +#: ppcboot.c:460 +#, c-format +msgid "Partition[%d] length = 0x%.8lx (%ld)\n" +msgstr "" + +#: reloc.c:6160 +msgid "INPUT_SECTION_FLAGS are not supported.\n" +msgstr "" + +#: rs6000-core.c:448 +#, c-format +msgid "%s: warning core file truncated" +msgstr "" + +#: som.c:5471 +#, c-format +msgid "" +"\n" +"Exec Auxiliary Header\n" +msgstr "" + +#: som.c:5776 +msgid "som_sizeof_headers unimplemented" +msgstr "" + +#: srec.c:261 +msgid "%B:%d: Unexpected character `%s' in S-record file\n" +msgstr "" + +#: srec.c:567 srec.c:600 +msgid "%B:%d: Bad checksum in S-record file\n" +msgstr "" + +#: stabs.c:279 +msgid "%B(%A+0x%lx): Stabs entry has invalid string index." +msgstr "" + +#: syms.c:1079 +msgid "Unsupported .stab relocation" +msgstr "" + +#: vms-alpha.c:1299 +#, c-format +msgid "Unknown EGSD subtype %d" +msgstr "" + +#: vms-alpha.c:1330 +#, c-format +msgid "Stack overflow (%d) in _bfd_vms_push" +msgstr "" + +#: vms-alpha.c:1343 +msgid "Stack underflow in _bfd_vms_pop" +msgstr "" + +#. These names have not yet been added to this switch statement. +#: vms-alpha.c:1580 +#, c-format +msgid "unknown ETIR command %d" +msgstr "" + +#: vms-alpha.c:1767 +#, c-format +msgid "bad section index in %s" +msgstr "" + +#: vms-alpha.c:1780 +#, c-format +msgid "unsupported STA cmd %s" +msgstr "" + +#. Insert field. +#. Unsigned shift. +#. Rotate. +#. Redefine symbol to current location. +#. Define a literal. +#: vms-alpha.c:1956 vms-alpha.c:1987 vms-alpha.c:2234 +#, c-format +msgid "%s: not supported" +msgstr "%s: nije podržano" + +#: vms-alpha.c:1962 +#, c-format +msgid "%s: not implemented" +msgstr "%s: nije implementirano" + +#: vms-alpha.c:2218 +#, c-format +msgid "invalid use of %s with contexts" +msgstr "neispravno koriÅ¡tenje %s s kontekstima" + +#: vms-alpha.c:2252 +#, c-format +msgid "reserved cmd %d" +msgstr "rezervirana naredba %d" + +#: vms-alpha.c:2337 +msgid "Object module NOT error-free !\n" +msgstr "" + +#: vms-alpha.c:2766 +#, c-format +msgid "Symbol %s replaced by %s\n" +msgstr "Simbol %s je zamijenjen sa %s\n" + +#: vms-alpha.c:3769 +#, c-format +msgid "SEC_RELOC with no relocs in section %s" +msgstr "" + +#: vms-alpha.c:3822 vms-alpha.c:4049 +#, c-format +msgid "Size error in section %s" +msgstr "" + +#: vms-alpha.c:3991 +msgid "Spurious ALPHA_R_BSR reloc" +msgstr "" + +#: vms-alpha.c:4036 +#, c-format +msgid "Unhandled relocation %s" +msgstr "" + +#: vms-alpha.c:4326 +#, c-format +msgid "unknown source command %d" +msgstr "" + +#: vms-alpha.c:4387 +msgid "DST__K_SET_LINUM_INCR not implemented" +msgstr "" + +#: vms-alpha.c:4393 +msgid "DST__K_SET_LINUM_INCR_W not implemented" +msgstr "" + +#: vms-alpha.c:4399 +msgid "DST__K_RESET_LINUM_INCR not implemented" +msgstr "" + +#: vms-alpha.c:4405 +msgid "DST__K_BEG_STMT_MODE not implemented" +msgstr "" + +#: vms-alpha.c:4411 +msgid "DST__K_END_STMT_MODE not implemented" +msgstr "" + +#: vms-alpha.c:4438 +msgid "DST__K_SET_PC not implemented" +msgstr "" + +#: vms-alpha.c:4444 +msgid "DST__K_SET_PC_W not implemented" +msgstr "" + +#: vms-alpha.c:4450 +msgid "DST__K_SET_PC_L not implemented" +msgstr "" + +#: vms-alpha.c:4456 +msgid "DST__K_SET_STMTNUM not implemented" +msgstr "" + +#: vms-alpha.c:4499 +#, c-format +msgid "unknown line command %d" +msgstr "" + +#: vms-alpha.c:4953 vms-alpha.c:4970 vms-alpha.c:4984 vms-alpha.c:4999 +#: vms-alpha.c:5011 vms-alpha.c:5022 vms-alpha.c:5034 +#, c-format +msgid "Unknown reloc %s + %s" +msgstr "" + +#: vms-alpha.c:5089 +#, c-format +msgid "Unknown reloc %s" +msgstr "" + +#: vms-alpha.c:5102 +msgid "Invalid section index in ETIR" +msgstr "" + +#: vms-alpha.c:5109 +msgid "Relocation for non-REL psect" +msgstr "" + +#: vms-alpha.c:5156 +#, c-format +msgid "Unknown symbol in command %s" +msgstr "" + +#: vms-alpha.c:5671 +#, c-format +msgid " EMH %u (len=%u): " +msgstr "" + +#: vms-alpha.c:5680 +#, c-format +msgid "Module header\n" +msgstr "Zaglavlje modula\n" + +#: vms-alpha.c:5681 +#, c-format +msgid " structure level: %u\n" +msgstr "" + +#: vms-alpha.c:5682 +#, c-format +msgid " max record size: %u\n" +msgstr "" + +#: vms-alpha.c:5685 +#, c-format +msgid " module name : %.*s\n" +msgstr "" + +#: vms-alpha.c:5687 +#, c-format +msgid " module version : %.*s\n" +msgstr "" + +#: vms-alpha.c:5689 +#, c-format +msgid " compile date : %.17s\n" +msgstr "" + +#: vms-alpha.c:5694 +#, c-format +msgid "Language Processor Name\n" +msgstr "" + +#: vms-alpha.c:5695 +#, c-format +msgid " language name: %.*s\n" +msgstr "" + +#: vms-alpha.c:5702 +#, c-format +msgid "Source Files Header\n" +msgstr "" + +#: vms-alpha.c:5703 +#, c-format +msgid " file: %.*s\n" +msgstr "" + +#: vms-alpha.c:5710 +#, c-format +msgid "Title Text Header\n" +msgstr "" + +#: vms-alpha.c:5711 +#, c-format +msgid " title: %.*s\n" +msgstr "" + +#: vms-alpha.c:5718 +#, c-format +msgid "Copyright Header\n" +msgstr "" + +#: vms-alpha.c:5719 +#, c-format +msgid " copyright: %.*s\n" +msgstr "" + +#: vms-alpha.c:5725 +#, c-format +msgid "unhandled emh subtype %u\n" +msgstr "" + +#: vms-alpha.c:5735 +#, c-format +msgid " EEOM (len=%u):\n" +msgstr "" + +#: vms-alpha.c:5736 +#, c-format +msgid " number of cond linkage pairs: %u\n" +msgstr "" + +#: vms-alpha.c:5738 +#, c-format +msgid " completion code: %u\n" +msgstr "" + +#: vms-alpha.c:5742 +#, c-format +msgid " transfer addr flags: 0x%02x\n" +msgstr "" + +#: vms-alpha.c:5743 +#, c-format +msgid " transfer addr psect: %u\n" +msgstr "" + +#: vms-alpha.c:5745 +#, c-format +msgid " transfer address : 0x%08x\n" +msgstr "" + +#: vms-alpha.c:5754 +msgid " WEAK" +msgstr "" + +#: vms-alpha.c:5756 +msgid " DEF" +msgstr "" + +#: vms-alpha.c:5758 +msgid " UNI" +msgstr "" + +#: vms-alpha.c:5760 vms-alpha.c:5781 +msgid " REL" +msgstr "" + +#: vms-alpha.c:5762 +msgid " COMM" +msgstr "" + +#: vms-alpha.c:5764 +msgid " VECEP" +msgstr "" + +#: vms-alpha.c:5766 +msgid " NORM" +msgstr "" + +#: vms-alpha.c:5768 +msgid " QVAL" +msgstr "" + +#: vms-alpha.c:5775 +msgid " PIC" +msgstr "" + +#: vms-alpha.c:5777 +msgid " LIB" +msgstr "" + +#: vms-alpha.c:5779 +msgid " OVR" +msgstr "" + +#: vms-alpha.c:5783 +msgid " GBL" +msgstr "" + +#: vms-alpha.c:5785 +msgid " SHR" +msgstr "" + +#: vms-alpha.c:5787 +msgid " EXE" +msgstr "" + +#: vms-alpha.c:5789 +msgid " RD" +msgstr "" + +#: vms-alpha.c:5791 +msgid " WRT" +msgstr "" + +#: vms-alpha.c:5793 +msgid " VEC" +msgstr "" + +#: vms-alpha.c:5795 +msgid " NOMOD" +msgstr "" + +#: vms-alpha.c:5797 +msgid " COM" +msgstr "" + +#: vms-alpha.c:5799 +msgid " 64B" +msgstr "" + +#: vms-alpha.c:5808 +#, c-format +msgid " EGSD (len=%u):\n" +msgstr "" + +#: vms-alpha.c:5820 +#, c-format +msgid " EGSD entry %2u (type: %u, len: %u): " +msgstr "" + +#: vms-alpha.c:5832 +#, c-format +msgid "PSC - Program section definition\n" +msgstr "" + +#: vms-alpha.c:5833 vms-alpha.c:5850 +#, c-format +msgid " alignment : 2**%u\n" +msgstr "" + +#: vms-alpha.c:5834 vms-alpha.c:5851 +#, c-format +msgid " flags : 0x%04x" +msgstr "" + +#: vms-alpha.c:5838 +#, c-format +msgid " alloc (len): %u (0x%08x)\n" +msgstr "" + +#: vms-alpha.c:5839 vms-alpha.c:5896 vms-alpha.c:5945 +#, c-format +msgid " name : %.*s\n" +msgstr "" + +#: vms-alpha.c:5849 +#, c-format +msgid "SPSC - Shared Image Program section def\n" +msgstr "" + +#: vms-alpha.c:5855 +#, c-format +msgid " alloc (len) : %u (0x%08x)\n" +msgstr "" + +#: vms-alpha.c:5856 +#, c-format +msgid " image offset : 0x%08x\n" +msgstr "" + +#: vms-alpha.c:5858 +#, c-format +msgid " symvec offset : 0x%08x\n" +msgstr "" + +#: vms-alpha.c:5860 +#, c-format +msgid " name : %.*s\n" +msgstr "" + +#: vms-alpha.c:5873 +#, c-format +msgid "SYM - Global symbol definition\n" +msgstr "" + +#: vms-alpha.c:5874 vms-alpha.c:5934 vms-alpha.c:5955 vms-alpha.c:5974 +#, c-format +msgid " flags: 0x%04x" +msgstr "" + +#: vms-alpha.c:5877 +#, c-format +msgid " psect offset: 0x%08x\n" +msgstr "" + +#: vms-alpha.c:5881 +#, c-format +msgid " code address: 0x%08x\n" +msgstr "" + +#: vms-alpha.c:5883 +#, c-format +msgid " psect index for entry point : %u\n" +msgstr "" + +#: vms-alpha.c:5886 vms-alpha.c:5962 vms-alpha.c:5981 +#, c-format +msgid " psect index : %u\n" +msgstr "" + +#: vms-alpha.c:5888 vms-alpha.c:5964 vms-alpha.c:5983 +#, c-format +msgid " name : %.*s\n" +msgstr "" + +#: vms-alpha.c:5895 +#, c-format +msgid "SYM - Global symbol reference\n" +msgstr "" + +#: vms-alpha.c:5907 +#, c-format +msgid "IDC - Ident Consistency check\n" +msgstr "" + +#: vms-alpha.c:5908 +#, c-format +msgid " flags : 0x%08x" +msgstr "" + +#: vms-alpha.c:5912 +#, c-format +msgid " id match : %x\n" +msgstr "" + +#: vms-alpha.c:5914 +#, c-format +msgid " error severity: %x\n" +msgstr "" + +#: vms-alpha.c:5917 +#, c-format +msgid " entity name : %.*s\n" +msgstr "" + +#: vms-alpha.c:5919 +#, c-format +msgid " object name : %.*s\n" +msgstr "" + +#: vms-alpha.c:5922 +#, c-format +msgid " binary ident : 0x%08x\n" +msgstr "" + +#: vms-alpha.c:5925 +#, c-format +msgid " ascii ident : %.*s\n" +msgstr "" + +#: vms-alpha.c:5933 +#, c-format +msgid "SYMG - Universal symbol definition\n" +msgstr "" + +#: vms-alpha.c:5937 +#, c-format +msgid " symbol vector offset: 0x%08x\n" +msgstr "" + +#: vms-alpha.c:5939 +#, c-format +msgid " entry point: 0x%08x\n" +msgstr "" + +#: vms-alpha.c:5941 +#, c-format +msgid " proc descr : 0x%08x\n" +msgstr "" + +#: vms-alpha.c:5943 +#, c-format +msgid " psect index: %u\n" +msgstr "" + +#: vms-alpha.c:5954 +#, c-format +msgid "SYMV - Vectored symbol definition\n" +msgstr "" + +#: vms-alpha.c:5958 +#, c-format +msgid " vector : 0x%08x\n" +msgstr "" + +#: vms-alpha.c:5960 vms-alpha.c:5979 +#, c-format +msgid " psect offset: %u\n" +msgstr "" + +#: vms-alpha.c:5973 +#, c-format +msgid "SYMM - Global symbol definition with version\n" +msgstr "" + +#: vms-alpha.c:5977 +#, c-format +msgid " version mask: 0x%08x\n" +msgstr "" + +#: vms-alpha.c:5988 +#, c-format +msgid "unhandled egsd entry type %u\n" +msgstr "" + +#: vms-alpha.c:6022 +#, c-format +msgid " linkage index: %u, replacement insn: 0x%08x\n" +msgstr "" + +#: vms-alpha.c:6025 +#, c-format +msgid " psect idx 1: %u, offset 1: 0x%08x %08x\n" +msgstr "" + +#: vms-alpha.c:6029 +#, c-format +msgid " psect idx 2: %u, offset 2: 0x%08x %08x\n" +msgstr "" + +#: vms-alpha.c:6034 +#, c-format +msgid " psect idx 3: %u, offset 3: 0x%08x %08x\n" +msgstr "" + +#: vms-alpha.c:6039 +#, c-format +msgid " global name: %.*s\n" +msgstr "" + +#: vms-alpha.c:6049 +#, c-format +msgid " %s (len=%u+%u):\n" +msgstr "" + +#: vms-alpha.c:6064 +#, c-format +msgid " (type: %3u, size: 4+%3u): " +msgstr "" + +#: vms-alpha.c:6068 +#, c-format +msgid "STA_GBL (stack global) %.*s\n" +msgstr "" + +#: vms-alpha.c:6072 +#, c-format +msgid "STA_LW (stack longword) 0x%08x\n" +msgstr "" + +#: vms-alpha.c:6076 +#, c-format +msgid "STA_QW (stack quadword) 0x%08x %08x\n" +msgstr "" + +#: vms-alpha.c:6081 +#, c-format +msgid "STA_PQ (stack psect base + offset)\n" +msgstr "" + +#: vms-alpha.c:6082 +#, c-format +msgid " psect: %u, offset: 0x%08x %08x\n" +msgstr "" + +#: vms-alpha.c:6088 +#, c-format +msgid "STA_LI (stack literal)\n" +msgstr "" + +#: vms-alpha.c:6091 +#, c-format +msgid "STA_MOD (stack module)\n" +msgstr "" + +#: vms-alpha.c:6094 +#, c-format +msgid "STA_CKARG (compare procedure argument)\n" +msgstr "" + +#: vms-alpha.c:6098 +#, c-format +msgid "STO_B (store byte)\n" +msgstr "" + +#: vms-alpha.c:6101 +#, c-format +msgid "STO_W (store word)\n" +msgstr "" + +#: vms-alpha.c:6104 +#, c-format +msgid "STO_LW (store longword)\n" +msgstr "" + +#: vms-alpha.c:6107 +#, c-format +msgid "STO_QW (store quadword)\n" +msgstr "" + +#: vms-alpha.c:6113 +#, c-format +msgid "STO_IMMR (store immediate repeat) %u bytes\n" +msgstr "" + +#: vms-alpha.c:6120 +#, c-format +msgid "STO_GBL (store global) %.*s\n" +msgstr "" + +#: vms-alpha.c:6124 +#, c-format +msgid "STO_CA (store code address) %.*s\n" +msgstr "" + +#: vms-alpha.c:6128 +#, c-format +msgid "STO_RB (store relative branch)\n" +msgstr "" + +#: vms-alpha.c:6131 +#, c-format +msgid "STO_AB (store absolute branch)\n" +msgstr "" + +#: vms-alpha.c:6134 +#, c-format +msgid "STO_OFF (store offset to psect)\n" +msgstr "" + +#: vms-alpha.c:6140 +#, c-format +msgid "STO_IMM (store immediate) %u bytes\n" +msgstr "" + +#: vms-alpha.c:6147 +#, c-format +msgid "STO_GBL_LW (store global longword) %.*s\n" +msgstr "" + +#: vms-alpha.c:6151 +#, c-format +msgid "STO_OFF (store LP with procedure signature)\n" +msgstr "" + +#: vms-alpha.c:6154 +#, c-format +msgid "STO_BR_GBL (store branch global) *todo*\n" +msgstr "" + +#: vms-alpha.c:6157 +#, c-format +msgid "STO_BR_PS (store branch psect + offset) *todo*\n" +msgstr "" + +#: vms-alpha.c:6161 +#, c-format +msgid "OPR_NOP (no-operation)\n" +msgstr "" + +#: vms-alpha.c:6164 +#, c-format +msgid "OPR_ADD (add)\n" +msgstr "" + +#: vms-alpha.c:6167 +#, c-format +msgid "OPR_SUB (substract)\n" +msgstr "" + +#: vms-alpha.c:6170 +#, c-format +msgid "OPR_MUL (multiply)\n" +msgstr "" + +#: vms-alpha.c:6173 +#, c-format +msgid "OPR_DIV (divide)\n" +msgstr "" + +#: vms-alpha.c:6176 +#, c-format +msgid "OPR_AND (logical and)\n" +msgstr "" + +#: vms-alpha.c:6179 +#, c-format +msgid "OPR_IOR (logical inclusive or)\n" +msgstr "" + +#: vms-alpha.c:6182 +#, c-format +msgid "OPR_EOR (logical exclusive or)\n" +msgstr "" + +#: vms-alpha.c:6185 +#, c-format +msgid "OPR_NEG (negate)\n" +msgstr "" + +#: vms-alpha.c:6188 +#, c-format +msgid "OPR_COM (complement)\n" +msgstr "" + +#: vms-alpha.c:6191 +#, c-format +msgid "OPR_INSV (insert field)\n" +msgstr "" + +#: vms-alpha.c:6194 +#, c-format +msgid "OPR_ASH (arithmetic shift)\n" +msgstr "" + +#: vms-alpha.c:6197 +#, c-format +msgid "OPR_USH (unsigned shift)\n" +msgstr "" + +#: vms-alpha.c:6200 +#, c-format +msgid "OPR_ROT (rotate)\n" +msgstr "" + +#: vms-alpha.c:6203 +#, c-format +msgid "OPR_SEL (select)\n" +msgstr "" + +#: vms-alpha.c:6206 +#, c-format +msgid "OPR_REDEF (redefine symbol to curr location)\n" +msgstr "" + +#: vms-alpha.c:6209 +#, c-format +msgid "OPR_REDEF (define a literal)\n" +msgstr "" + +#: vms-alpha.c:6213 +#, c-format +msgid "STC_LP (store cond linkage pair)\n" +msgstr "" + +#: vms-alpha.c:6217 +#, c-format +msgid "STC_LP_PSB (store cond linkage pair + signature)\n" +msgstr "" + +#: vms-alpha.c:6218 +#, c-format +msgid " linkage index: %u, procedure: %.*s\n" +msgstr "" + +#: vms-alpha.c:6221 +#, c-format +msgid " signature: %.*s\n" +msgstr "" + +#: vms-alpha.c:6224 +#, c-format +msgid "STC_GBL (store cond global)\n" +msgstr "" + +#: vms-alpha.c:6225 +#, c-format +msgid " linkage index: %u, global: %.*s\n" +msgstr "" + +#: vms-alpha.c:6229 +#, c-format +msgid "STC_GCA (store cond code address)\n" +msgstr "" + +#: vms-alpha.c:6230 +#, c-format +msgid " linkage index: %u, procedure name: %.*s\n" +msgstr "" + +#: vms-alpha.c:6234 +#, c-format +msgid "STC_PS (store cond psect + offset)\n" +msgstr "" + +#: vms-alpha.c:6236 +#, c-format +msgid " linkage index: %u, psect: %u, offset: 0x%08x %08x\n" +msgstr "" + +#: vms-alpha.c:6243 +#, c-format +msgid "STC_NOP_GBL (store cond NOP at global addr)\n" +msgstr "" + +#: vms-alpha.c:6247 +#, c-format +msgid "STC_NOP_PS (store cond NOP at psect + offset)\n" +msgstr "" + +#: vms-alpha.c:6251 +#, c-format +msgid "STC_BSR_GBL (store cond BSR at global addr)\n" +msgstr "" + +#: vms-alpha.c:6255 +#, c-format +msgid "STC_BSR_PS (store cond BSR at psect + offset)\n" +msgstr "" + +#: vms-alpha.c:6259 +#, c-format +msgid "STC_LDA_GBL (store cond LDA at global addr)\n" +msgstr "" + +#: vms-alpha.c:6263 +#, c-format +msgid "STC_LDA_PS (store cond LDA at psect + offset)\n" +msgstr "" + +#: vms-alpha.c:6267 +#, c-format +msgid "STC_BOH_GBL (store cond BOH at global addr)\n" +msgstr "" + +#: vms-alpha.c:6271 +#, c-format +msgid "STC_BOH_PS (store cond BOH at psect + offset)\n" +msgstr "" + +#: vms-alpha.c:6276 +#, c-format +msgid "STC_NBH_GBL (store cond or hint at global addr)\n" +msgstr "" + +#: vms-alpha.c:6280 +#, c-format +msgid "STC_NBH_PS (store cond or hint at psect + offset)\n" +msgstr "" + +#: vms-alpha.c:6284 +#, c-format +msgid "CTL_SETRB (set relocation base)\n" +msgstr "" + +#: vms-alpha.c:6290 +#, c-format +msgid "CTL_AUGRB (augment relocation base) %u\n" +msgstr "" + +#: vms-alpha.c:6294 +#, c-format +msgid "CTL_DFLOC (define location)\n" +msgstr "" + +#: vms-alpha.c:6297 +#, c-format +msgid "CTL_STLOC (set location)\n" +msgstr "" + +#: vms-alpha.c:6300 +#, c-format +msgid "CTL_STKDL (stack defined location)\n" +msgstr "" + +#: vms-alpha.c:6303 vms-alpha.c:6717 +#, c-format +msgid "*unhandled*\n" +msgstr "*nekontrolirano*\n" + +#: vms-alpha.c:6333 vms-alpha.c:6372 +#, c-format +msgid "cannot read GST record length\n" +msgstr "" + +#. Ill-formed. +#: vms-alpha.c:6354 +#, c-format +msgid "cannot find EMH in first GST record\n" +msgstr "" + +#: vms-alpha.c:6380 +#, c-format +msgid "cannot read GST record header\n" +msgstr "" + +#: vms-alpha.c:6393 +#, c-format +msgid " corrupted GST\n" +msgstr " oÅ¡tećeni GST\n" + +#: vms-alpha.c:6401 +#, c-format +msgid "cannot read GST record\n" +msgstr "ne mogu Äitati GST zapis\n" + +#: vms-alpha.c:6430 +#, c-format +msgid " unhandled EOBJ record type %u\n" +msgstr "" + +#: vms-alpha.c:6453 +#, c-format +msgid " bitcount: %u, base addr: 0x%08x\n" +msgstr "" + +#: vms-alpha.c:6466 +#, c-format +msgid " bitmap: 0x%08x (count: %u):\n" +msgstr "" + +#: vms-alpha.c:6473 +#, c-format +msgid " %08x" +msgstr " %08x" + +#: vms-alpha.c:6498 +#, c-format +msgid " image %u (%u entries)\n" +msgstr "" + +#: vms-alpha.c:6503 +#, c-format +msgid " offset: 0x%08x, val: 0x%08x\n" +msgstr "" + +#: vms-alpha.c:6524 +#, c-format +msgid " image %u (%u entries), offsets:\n" +msgstr "" + +#: vms-alpha.c:6531 +#, c-format +msgid " 0x%08x" +msgstr " 0x%08x" + +#. 64 bits. +#: vms-alpha.c:6653 +#, c-format +msgid "64 bits *unhandled*\n" +msgstr "" + +#: vms-alpha.c:6657 +#, c-format +msgid "class: %u, dtype: %u, length: %u, pointer: 0x%08x\n" +msgstr "" + +#: vms-alpha.c:6668 +#, c-format +msgid "non-contiguous array of %s\n" +msgstr "" + +#: vms-alpha.c:6672 +#, c-format +msgid "dimct: %u, aflags: 0x%02x, digits: %u, scale: %u\n" +msgstr "" + +#: vms-alpha.c:6676 +#, c-format +msgid "arsize: %u, a0: 0x%08x\n" +msgstr "" + +#: vms-alpha.c:6680 +#, c-format +msgid "Strides:\n" +msgstr "" + +#: vms-alpha.c:6685 +#, c-format +msgid "[%u]: %u\n" +msgstr "[%u]: %u\n" + +#: vms-alpha.c:6690 +#, c-format +msgid "Bounds:\n" +msgstr "" + +#: vms-alpha.c:6695 +#, c-format +msgid "[%u]: Lower: %u, upper: %u\n" +msgstr "" + +#: vms-alpha.c:6707 +#, c-format +msgid "unaligned bit-string of %s\n" +msgstr "" + +#: vms-alpha.c:6711 +#, c-format +msgid "base: %u, pos: %u\n" +msgstr "" + +#: vms-alpha.c:6731 +#, c-format +msgid "vflags: 0x%02x, value: 0x%08x " +msgstr "" + +#: vms-alpha.c:6737 +#, c-format +msgid "(no value)\n" +msgstr "" + +#: vms-alpha.c:6740 +#, c-format +msgid "(not active)\n" +msgstr "" + +#: vms-alpha.c:6743 +#, c-format +msgid "(not allocated)\n" +msgstr "" + +#: vms-alpha.c:6746 +#, c-format +msgid "(descriptor)\n" +msgstr "" + +#: vms-alpha.c:6750 +#, c-format +msgid "(trailing value)\n" +msgstr "" + +#: vms-alpha.c:6753 +#, c-format +msgid "(value spec follows)\n" +msgstr "" + +#: vms-alpha.c:6756 +#, c-format +msgid "(at bit offset %u)\n" +msgstr "" + +#: vms-alpha.c:6759 +#, c-format +msgid "(reg: %u, disp: %u, indir: %u, kind: " +msgstr "" + +#: vms-alpha.c:6766 +msgid "literal" +msgstr "" + +#: vms-alpha.c:6769 +msgid "address" +msgstr "adresa" + +#: vms-alpha.c:6772 +msgid "desc" +msgstr "opis" + +#: vms-alpha.c:6775 +msgid "reg" +msgstr "reg" + +#: vms-alpha.c:6850 +#, c-format +msgid "Debug symbol table:\n" +msgstr "" + +#: vms-alpha.c:6861 +#, c-format +msgid "cannot read DST header\n" +msgstr "" + +#: vms-alpha.c:6866 +#, c-format +msgid " type: %3u, len: %3u (at 0x%08x): " +msgstr "" + +#: vms-alpha.c:6880 +#, c-format +msgid "cannot read DST symbol\n" +msgstr "" + +#: vms-alpha.c:6923 +#, c-format +msgid "standard data: %s\n" +msgstr "standardni podaci: %s\n" + +#: vms-alpha.c:6926 vms-alpha.c:7010 +#, c-format +msgid " name: %.*s\n" +msgstr " ime: %.*s\n" + +#: vms-alpha.c:6933 +#, c-format +msgid "modbeg\n" +msgstr "" + +#: vms-alpha.c:6934 +#, c-format +msgid " flags: %d, language: %u, major: %u, minor: %u\n" +msgstr "" + +#: vms-alpha.c:6940 vms-alpha.c:7206 +#, c-format +msgid " module name: %.*s\n" +msgstr "" + +#: vms-alpha.c:6943 +#, c-format +msgid " compiler : %.*s\n" +msgstr "" + +#: vms-alpha.c:6948 +#, c-format +msgid "modend\n" +msgstr "" + +#: vms-alpha.c:6955 +msgid "rtnbeg\n" +msgstr "" + +#: vms-alpha.c:6956 +#, c-format +msgid " flags: %u, address: 0x%08x, pd-address: 0x%08x\n" +msgstr "" + +#: vms-alpha.c:6961 +#, c-format +msgid " routine name: %.*s\n" +msgstr "" + +#: vms-alpha.c:6969 +#, c-format +msgid "rtnend: size 0x%08x\n" +msgstr "" + +#: vms-alpha.c:6977 +#, c-format +msgid "prolog: bkpt address 0x%08x\n" +msgstr "" + +#: vms-alpha.c:6985 +#, c-format +msgid "epilog: flags: %u, count: %u\n" +msgstr "" + +#: vms-alpha.c:6994 +#, c-format +msgid "blkbeg: address: 0x%08x, name: %.*s\n" +msgstr "" + +#: vms-alpha.c:7003 +#, c-format +msgid "blkend: size: 0x%08x\n" +msgstr "" + +#: vms-alpha.c:7009 +#, c-format +msgid "typspec (len: %u)\n" +msgstr "" + +#: vms-alpha.c:7016 +#, c-format +msgid "septyp, name: %.*s\n" +msgstr "" + +#: vms-alpha.c:7025 +#, c-format +msgid "recbeg: name: %.*s\n" +msgstr "" + +#: vms-alpha.c:7032 +#, c-format +msgid "recend\n" +msgstr "" + +#: vms-alpha.c:7035 +#, c-format +msgid "enumbeg, len: %u, name: %.*s\n" +msgstr "" + +#: vms-alpha.c:7039 +#, c-format +msgid "enumelt, name: %.*s\n" +msgstr "" + +#: vms-alpha.c:7043 +#, c-format +msgid "enumend\n" +msgstr "" + +#: vms-alpha.c:7060 +#, c-format +msgid "discontiguous range (nbr: %u)\n" +msgstr "" + +#: vms-alpha.c:7062 +#, c-format +msgid " address: 0x%08x, size: %u\n" +msgstr "" + +#: vms-alpha.c:7072 +#, c-format +msgid "line num (len: %u)\n" +msgstr "" + +#: vms-alpha.c:7089 +#, c-format +msgid "delta_pc_w %u\n" +msgstr "delta_pc_w %u\n" + +#: vms-alpha.c:7096 +#, c-format +msgid "incr_linum(b): +%u\n" +msgstr "incr_linum(b): +%u\n" + +#: vms-alpha.c:7102 +#, c-format +msgid "incr_linum_w: +%u\n" +msgstr "incr_linum_w: +%u\n" + +#: vms-alpha.c:7108 +#, c-format +msgid "incr_linum_l: +%u\n" +msgstr "incr_linum_l: +%u\n" + +#: vms-alpha.c:7114 +#, c-format +msgid "set_line_num(w) %u\n" +msgstr "set_line_num(w) %u\n" + +#: vms-alpha.c:7119 +#, c-format +msgid "set_line_num_b %u\n" +msgstr "set_line_num_b %u\n" + +#: vms-alpha.c:7124 +#, c-format +msgid "set_line_num_l %u\n" +msgstr "set_line_num_l %u\n" + +#: vms-alpha.c:7129 +#, c-format +msgid "set_abs_pc: 0x%08x\n" +msgstr "set_abs_pc: 0x%08x\n" + +#: vms-alpha.c:7133 +#, c-format +msgid "delta_pc_l: +0x%08x\n" +msgstr "delta_pc_l: +0x%08x\n" + +#: vms-alpha.c:7138 +#, c-format +msgid "term(b): 0x%02x" +msgstr "" + +#: vms-alpha.c:7140 +#, c-format +msgid " pc: 0x%08x\n" +msgstr "" + +#: vms-alpha.c:7145 +#, c-format +msgid "term_w: 0x%04x" +msgstr "" + +#: vms-alpha.c:7147 +#, c-format +msgid " pc: 0x%08x\n" +msgstr "" + +#: vms-alpha.c:7153 +#, c-format +msgid "delta pc +%-4d" +msgstr "" + +#: vms-alpha.c:7156 +#, c-format +msgid " pc: 0x%08x line: %5u\n" +msgstr "" + +#: vms-alpha.c:7161 +#, c-format +msgid " *unhandled* cmd %u\n" +msgstr "" + +#: vms-alpha.c:7176 +#, c-format +msgid "source (len: %u)\n" +msgstr "" + +#: vms-alpha.c:7190 +#, c-format +msgid " declfile: len: %u, flags: %u, fileid: %u\n" +msgstr "" + +#: vms-alpha.c:7194 +#, c-format +msgid " rms: cdt: 0x%08x %08x, ebk: 0x%08x, ffb: 0x%04x, rfo: %u\n" +msgstr "" + +#: vms-alpha.c:7203 +#, c-format +msgid " filename : %.*s\n" +msgstr "" + +#: vms-alpha.c:7212 +#, c-format +msgid " setfile %u\n" +msgstr "" + +#: vms-alpha.c:7217 vms-alpha.c:7222 +#, c-format +msgid " setrec %u\n" +msgstr "" + +#: vms-alpha.c:7227 vms-alpha.c:7232 +#, c-format +msgid " setlnum %u\n" +msgstr "" + +#: vms-alpha.c:7237 vms-alpha.c:7242 +#, c-format +msgid " deflines %u\n" +msgstr "" + +#: vms-alpha.c:7246 +#, c-format +msgid " formfeed\n" +msgstr "" + +#: vms-alpha.c:7250 +#, c-format +msgid " *unhandled* cmd %u\n" +msgstr "" + +#: vms-alpha.c:7262 +#, c-format +msgid "*unhandled* dst type %u\n" +msgstr "" + +#: vms-alpha.c:7294 +#, c-format +msgid "cannot read EIHD\n" +msgstr "" + +#: vms-alpha.c:7297 +#, c-format +msgid "EIHD: (size: %u, nbr blocks: %u)\n" +msgstr "" + +#: vms-alpha.c:7300 +#, c-format +msgid " majorid: %u, minorid: %u\n" +msgstr "" + +#: vms-alpha.c:7308 +msgid "executable" +msgstr "" + +#: vms-alpha.c:7311 +msgid "linkable image" +msgstr "" + +#: vms-alpha.c:7317 +#, c-format +msgid " image type: %u (%s)" +msgstr "" + +#: vms-alpha.c:7323 +msgid "native" +msgstr "" + +#: vms-alpha.c:7326 +msgid "CLI" +msgstr "" + +#: vms-alpha.c:7332 +#, c-format +msgid ", subtype: %u (%s)\n" +msgstr "" + +#: vms-alpha.c:7338 +#, c-format +msgid " offsets: isd: %u, activ: %u, symdbg: %u, imgid: %u, patch: %u\n" +msgstr "" + +#: vms-alpha.c:7342 +#, c-format +msgid " fixup info rva: " +msgstr "" + +#: vms-alpha.c:7344 +#, c-format +msgid ", symbol vector rva: " +msgstr "" + +#: vms-alpha.c:7347 +#, c-format +msgid "" +"\n" +" version array off: %u\n" +msgstr "" + +#: vms-alpha.c:7351 +#, c-format +msgid " img I/O count: %u, nbr channels: %u, req pri: %08x%08x\n" +msgstr "" + +#: vms-alpha.c:7357 +#, c-format +msgid " linker flags: %08x:" +msgstr "" + +#: vms-alpha.c:7387 +#, c-format +msgid " ident: 0x%08x, sysver: 0x%08x, match ctrl: %u, symvect_size: %u\n" +msgstr "" + +#: vms-alpha.c:7393 +#, c-format +msgid " BPAGE: %u" +msgstr "" + +#: vms-alpha.c:7399 +#, c-format +msgid ", ext fixup offset: %u, no_opt psect off: %u" +msgstr "" + +#: vms-alpha.c:7402 +#, c-format +msgid ", alias: %u\n" +msgstr "" + +#: vms-alpha.c:7410 +#, c-format +msgid "system version array information:\n" +msgstr "" + +#: vms-alpha.c:7414 +#, c-format +msgid "cannot read EIHVN header\n" +msgstr "" + +#: vms-alpha.c:7424 +#, c-format +msgid "cannot read EIHVN version\n" +msgstr "" + +#: vms-alpha.c:7427 +#, c-format +msgid " %02u " +msgstr "" + +#: vms-alpha.c:7431 +msgid "BASE_IMAGE " +msgstr "" + +#: vms-alpha.c:7434 +msgid "MEMORY_MANAGEMENT" +msgstr "UPRAVLJANJE_MEMORIJOM" + +#: vms-alpha.c:7437 +msgid "IO " +msgstr "" + +#: vms-alpha.c:7440 +msgid "FILES_VOLUMES " +msgstr "" + +#: vms-alpha.c:7443 +msgid "PROCESS_SCHED " +msgstr "" + +#: vms-alpha.c:7446 +msgid "SYSGEN " +msgstr "" + +#: vms-alpha.c:7449 +msgid "CLUSTERS_LOCKMGR " +msgstr "" + +#: vms-alpha.c:7452 +msgid "LOGICAL_NAMES " +msgstr "" + +#: vms-alpha.c:7455 +msgid "SECURITY " +msgstr "" + +#: vms-alpha.c:7458 +msgid "IMAGE_ACTIVATOR " +msgstr "" + +#: vms-alpha.c:7461 +msgid "NETWORKS " +msgstr "" + +#: vms-alpha.c:7464 +msgid "COUNTERS " +msgstr "" + +#: vms-alpha.c:7467 +msgid "STABLE " +msgstr "" + +#: vms-alpha.c:7470 +msgid "MISC " +msgstr "" + +#: vms-alpha.c:7473 +msgid "CPU " +msgstr "" + +#: vms-alpha.c:7476 +msgid "VOLATILE " +msgstr "" + +#: vms-alpha.c:7479 +msgid "SHELL " +msgstr "" + +#: vms-alpha.c:7482 +msgid "POSIX " +msgstr "" + +#: vms-alpha.c:7485 +msgid "MULTI_PROCESSING " +msgstr "" + +#: vms-alpha.c:7488 +msgid "GALAXY " +msgstr "" + +#: vms-alpha.c:7491 +msgid "*unknown* " +msgstr "" + +#: vms-alpha.c:7494 +#, c-format +msgid ": %u.%u\n" +msgstr "" + +#: vms-alpha.c:7507 vms-alpha.c:7766 +#, c-format +msgid "cannot read EIHA\n" +msgstr "" + +#: vms-alpha.c:7510 +#, c-format +msgid "Image activation: (size=%u)\n" +msgstr "" + +#: vms-alpha.c:7512 +#, c-format +msgid " First address : 0x%08x 0x%08x\n" +msgstr "" + +#: vms-alpha.c:7515 +#, c-format +msgid " Second address: 0x%08x 0x%08x\n" +msgstr "" + +#: vms-alpha.c:7518 +#, c-format +msgid " Third address : 0x%08x 0x%08x\n" +msgstr "" + +#: vms-alpha.c:7521 +#, c-format +msgid " Fourth address: 0x%08x 0x%08x\n" +msgstr "" + +#: vms-alpha.c:7524 +#, c-format +msgid " Shared image : 0x%08x 0x%08x\n" +msgstr "" + +#: vms-alpha.c:7535 +#, c-format +msgid "cannot read EIHI\n" +msgstr "ne mogu Äitati EIHI\n" + +#: vms-alpha.c:7538 +#, c-format +msgid "Image identification: (major: %u, minor: %u)\n" +msgstr "" + +#: vms-alpha.c:7541 +#, c-format +msgid " image name : %.*s\n" +msgstr "" + +#: vms-alpha.c:7543 +#, c-format +msgid " link time : %s\n" +msgstr "" + +#: vms-alpha.c:7545 +#, c-format +msgid " image ident : %.*s\n" +msgstr "" + +#: vms-alpha.c:7547 +#, c-format +msgid " linker ident : %.*s\n" +msgstr "" + +#: vms-alpha.c:7549 +#, c-format +msgid " image build ident: %.*s\n" +msgstr "" + +#: vms-alpha.c:7559 +#, c-format +msgid "cannot read EIHS\n" +msgstr "" + +#: vms-alpha.c:7562 +#, c-format +msgid "Image symbol & debug table: (major: %u, minor: %u)\n" +msgstr "" + +#: vms-alpha.c:7567 +#, c-format +msgid " debug symbol table : vbn: %u, size: %u (0x%x)\n" +msgstr "" + +#: vms-alpha.c:7571 +#, c-format +msgid " global symbol table: vbn: %u, records: %u\n" +msgstr "" + +#: vms-alpha.c:7575 +#, c-format +msgid " debug module table : vbn: %u, size: %u\n" +msgstr "" + +#: vms-alpha.c:7588 +#, c-format +msgid "cannot read EISD\n" +msgstr "ne mogu Äitati EISD\n" + +#: vms-alpha.c:7598 +#, c-format +msgid "Image section descriptor: (major: %u, minor: %u, size: %u, offset: %u)\n" +msgstr "" + +#: vms-alpha.c:7605 +#, c-format +msgid " section: base: 0x%08x%08x size: 0x%08x\n" +msgstr "" + +#: vms-alpha.c:7610 +#, c-format +msgid " flags: 0x%04x" +msgstr "" + +#: vms-alpha.c:7647 +#, c-format +msgid " vbn: %u, pfc: %u, matchctl: %u type: %u (" +msgstr "" + +#: vms-alpha.c:7653 +msgid "NORMAL" +msgstr "" + +#: vms-alpha.c:7656 +msgid "SHRFXD" +msgstr "" + +#: vms-alpha.c:7659 +msgid "PRVFXD" +msgstr "" + +#: vms-alpha.c:7662 +msgid "SHRPIC" +msgstr "" + +#: vms-alpha.c:7665 +msgid "PRVPIC" +msgstr "" + +#: vms-alpha.c:7668 +msgid "USRSTACK" +msgstr "" + +#: vms-alpha.c:7676 +#, c-format +msgid " ident: 0x%08x, name: %.*s\n" +msgstr "" + +#: vms-alpha.c:7686 +#, c-format +msgid "cannot read DMT\n" +msgstr "" + +#: vms-alpha.c:7690 +#, c-format +msgid "Debug module table:\n" +msgstr "" + +#: vms-alpha.c:7699 +#, c-format +msgid "cannot read DMT header\n" +msgstr "" + +#: vms-alpha.c:7704 +#, c-format +msgid " module offset: 0x%08x, size: 0x%08x, (%u psects)\n" +msgstr "" + +#: vms-alpha.c:7714 +#, c-format +msgid "cannot read DMT psect\n" +msgstr "" + +#: vms-alpha.c:7717 +#, c-format +msgid " psect start: 0x%08x, length: %u\n" +msgstr "" + +#: vms-alpha.c:7730 +#, c-format +msgid "cannot read DST\n" +msgstr "ne mogu Äitati DST\n" + +#: vms-alpha.c:7740 +#, c-format +msgid "cannot read GST\n" +msgstr "ne mogu Äitati GST\n" + +#: vms-alpha.c:7744 +#, c-format +msgid "Global symbol table:\n" +msgstr "" + +#: vms-alpha.c:7772 +#, c-format +msgid "Image activator fixup: (major: %u, minor: %u)\n" +msgstr "" + +#: vms-alpha.c:7775 +#, c-format +msgid " iaflink : 0x%08x %08x\n" +msgstr "" + +#: vms-alpha.c:7778 +#, c-format +msgid " fixuplnk: 0x%08x %08x\n" +msgstr "" + +#: vms-alpha.c:7781 +#, c-format +msgid " size : %u\n" +msgstr "" + +#: vms-alpha.c:7783 +#, c-format +msgid " flags: 0x%08x\n" +msgstr "" + +#: vms-alpha.c:7787 +#, c-format +msgid " qrelfixoff: %5u, lrelfixoff: %5u\n" +msgstr "" + +#: vms-alpha.c:7791 +#, c-format +msgid " qdotadroff: %5u, ldotadroff: %5u\n" +msgstr "" + +#: vms-alpha.c:7795 +#, c-format +msgid " codeadroff: %5u, lpfixoff : %5u\n" +msgstr "" + +#: vms-alpha.c:7798 +#, c-format +msgid " chgprtoff : %5u\n" +msgstr "" + +#: vms-alpha.c:7801 +#, c-format +msgid " shlstoff : %5u, shrimgcnt : %5u\n" +msgstr "" + +#: vms-alpha.c:7803 +#, c-format +msgid " shlextra : %5u, permctx : %5u\n" +msgstr "" + +#: vms-alpha.c:7806 +#, c-format +msgid " base_va : 0x%08x\n" +msgstr "" + +#: vms-alpha.c:7808 +#, c-format +msgid " lppsbfixoff: %5u\n" +msgstr "" + +#: vms-alpha.c:7816 +#, c-format +msgid " Shareable images:\n" +msgstr "" + +#: vms-alpha.c:7820 +#, c-format +msgid " %u: size: %u, flags: 0x%02x, name: %.*s\n" +msgstr "" + +#: vms-alpha.c:7827 +#, c-format +msgid " quad-word relocation fixups:\n" +msgstr "" + +#: vms-alpha.c:7832 +#, c-format +msgid " long-word relocation fixups:\n" +msgstr "" + +#: vms-alpha.c:7837 +#, c-format +msgid " quad-word .address reference fixups:\n" +msgstr "" + +#: vms-alpha.c:7842 +#, c-format +msgid " long-word .address reference fixups:\n" +msgstr "" + +#: vms-alpha.c:7847 +#, c-format +msgid " Code Address Reference Fixups:\n" +msgstr "" + +#: vms-alpha.c:7852 +#, c-format +msgid " Linkage Pairs Referece Fixups:\n" +msgstr "" + +#: vms-alpha.c:7861 +#, c-format +msgid " Change Protection (%u entries):\n" +msgstr "" + +#: vms-alpha.c:7866 +#, c-format +msgid " base: 0x%08x %08x, size: 0x%08x, prot: 0x%08x " +msgstr "" + +#. FIXME: we do not yet support relocatable link. It is not obvious +#. how to do it for debug infos. +#: vms-alpha.c:8706 +msgid "%P: relocatable link is not supported\n" +msgstr "" + +#: vms-alpha.c:8776 +msgid "%P: multiple entry points: in modules %B and %B\n" +msgstr "" + +#: vms-lib.c:1423 +#, c-format +msgid "could not open shared image '%s' from '%s'" +msgstr "" + +#: vms-misc.c:360 +msgid "_bfd_vms_output_counted called with zero bytes" +msgstr "" + +#: vms-misc.c:365 +msgid "_bfd_vms_output_counted called with too many bytes" +msgstr "" + +#: xcofflink.c:836 +#, c-format +msgid "%s: XCOFF shared object when not producing XCOFF output" +msgstr "" + +#: xcofflink.c:857 +#, c-format +msgid "%s: dynamic object with no .loader section" +msgstr "" + +#: xcofflink.c:1416 +msgid "%B: `%s' has line numbers but no enclosing section" +msgstr "" + +#: xcofflink.c:1468 +msgid "%B: class %d symbol `%s' has no aux entries" +msgstr "" + +#: xcofflink.c:1490 +msgid "%B: symbol `%s' has unrecognized csect type %d" +msgstr "" + +#: xcofflink.c:1502 +msgid "%B: bad XTY_ER symbol `%s': class %d scnum %d scnlen %d" +msgstr "" + +#: xcofflink.c:1531 +msgid "%B: XMC_TC0 symbol `%s' is class %d scnlen %d" +msgstr "" + +#: xcofflink.c:1677 +msgid "%B: csect `%s' not in enclosing section" +msgstr "" + +#: xcofflink.c:1784 +msgid "%B: misplaced XTY_LD `%s'" +msgstr "" + +#: xcofflink.c:2103 +msgid "%B: reloc %s:%d not in csect" +msgstr "" + +#: xcofflink.c:3194 +#, c-format +msgid "%s: no such symbol" +msgstr "%s: nema takvog simbola" + +#: xcofflink.c:3299 +#, c-format +msgid "warning: attempt to export undefined symbol `%s'" +msgstr "" + +#: xcofflink.c:3678 +msgid "error: undefined symbol __rtinit" +msgstr "greÅ¡ka: nedefinirani simbol __rtinit" + +#: xcofflink.c:4057 +msgid "%B: loader reloc in unrecognized section `%s'" +msgstr "" + +#: xcofflink.c:4068 +msgid "%B: `%s' in loader reloc but not loader sym" +msgstr "" + +#: xcofflink.c:4084 +msgid "%B: loader reloc in read-only section %A" +msgstr "" + +#: xcofflink.c:5106 +#, c-format +msgid "TOC overflow: 0x%lx > 0x10000; try -mminimal-toc when compiling" +msgstr "" + +#: elf32-ia64.c:628 elf64-ia64.c:628 +msgid "%B: Can't relax br at 0x%lx in section `%A'. Please use brl or indirect branch." +msgstr "" + +#: elf32-ia64.c:2284 elf64-ia64.c:2284 +msgid "@pltoff reloc against local symbol" +msgstr "" + +#: elf32-ia64.c:3687 elf64-ia64.c:3687 +#, c-format +msgid "%s: short data segment overflowed (0x%lx >= 0x400000)" +msgstr "" + +#: elf32-ia64.c:3698 elf64-ia64.c:3698 +#, c-format +msgid "%s: __gp does not cover short data segment" +msgstr "" + +#: elf32-ia64.c:3965 elf64-ia64.c:3965 +msgid "%B: non-pic code with imm relocation against dynamic symbol `%s'" +msgstr "" + +#: elf32-ia64.c:4032 elf64-ia64.c:4032 +msgid "%B: @gprel relocation against dynamic symbol %s" +msgstr "" + +#: elf32-ia64.c:4095 elf64-ia64.c:4095 +msgid "%B: linking non-pic code in a position independent executable" +msgstr "" + +#: elf32-ia64.c:4232 elf64-ia64.c:4232 +msgid "%B: @internal branch to dynamic symbol %s" +msgstr "" + +#: elf32-ia64.c:4234 elf64-ia64.c:4234 +msgid "%B: speculation fixup to dynamic symbol %s" +msgstr "" + +#: elf32-ia64.c:4236 elf64-ia64.c:4236 +msgid "%B: @pcrel relocation against dynamic symbol %s" +msgstr "" + +#: elf32-ia64.c:4433 elf64-ia64.c:4433 +msgid "unsupported reloc" +msgstr "" + +#: elf32-ia64.c:4471 elf64-ia64.c:4471 +msgid "%B: missing TLS section for relocation %s against `%s' at 0x%lx in section `%A'." +msgstr "" + +#: elf32-ia64.c:4486 elf64-ia64.c:4486 +msgid "%B: Can't relax br (%s) to `%s' at 0x%lx in section `%A' with size 0x%lx (> 0x1000000)." +msgstr "" + +#: elf32-ia64.c:4748 elf64-ia64.c:4748 +msgid "%B: linking trap-on-NULL-dereference with non-trapping files" +msgstr "" + +#: elf32-ia64.c:4757 elf64-ia64.c:4757 +msgid "%B: linking big-endian files with little-endian files" +msgstr "" + +#: elf32-ia64.c:4766 elf64-ia64.c:4766 +msgid "%B: linking 64-bit files with 32-bit files" +msgstr "" + +#: elf32-ia64.c:4775 elf64-ia64.c:4775 +msgid "%B: linking constant-gp files with non-constant-gp files" +msgstr "" + +#: elf32-ia64.c:4785 elf64-ia64.c:4785 +msgid "%B: linking auto-pic files with non-auto-pic files" +msgstr "" + +#: peigen.c:1002 pepigen.c:1002 pex64igen.c:1002 +#, c-format +msgid "%s: line number overflow: 0x%lx > 0xffff" +msgstr "" + +#: peigen.c:1029 pepigen.c:1029 pex64igen.c:1029 +msgid "Export Directory [.edata (or where ever we found it)]" +msgstr "" + +#: peigen.c:1030 pepigen.c:1030 pex64igen.c:1030 +msgid "Import Directory [parts of .idata]" +msgstr "" + +#: peigen.c:1031 pepigen.c:1031 pex64igen.c:1031 +msgid "Resource Directory [.rsrc]" +msgstr "" + +#: peigen.c:1032 pepigen.c:1032 pex64igen.c:1032 +msgid "Exception Directory [.pdata]" +msgstr "" + +#: peigen.c:1033 pepigen.c:1033 pex64igen.c:1033 +msgid "Security Directory" +msgstr "" + +#: peigen.c:1034 pepigen.c:1034 pex64igen.c:1034 +msgid "Base Relocation Directory [.reloc]" +msgstr "" + +#: peigen.c:1035 pepigen.c:1035 pex64igen.c:1035 +msgid "Debug Directory" +msgstr "" + +#: peigen.c:1036 pepigen.c:1036 pex64igen.c:1036 +msgid "Description Directory" +msgstr "" + +#: peigen.c:1037 pepigen.c:1037 pex64igen.c:1037 +msgid "Special Directory" +msgstr "" + +#: peigen.c:1038 pepigen.c:1038 pex64igen.c:1038 +msgid "Thread Storage Directory [.tls]" +msgstr "" + +#: peigen.c:1039 pepigen.c:1039 pex64igen.c:1039 +msgid "Load Configuration Directory" +msgstr "" + +#: peigen.c:1040 pepigen.c:1040 pex64igen.c:1040 +msgid "Bound Import Directory" +msgstr "" + +#: peigen.c:1041 pepigen.c:1041 pex64igen.c:1041 +msgid "Import Address Table Directory" +msgstr "" + +#: peigen.c:1042 pepigen.c:1042 pex64igen.c:1042 +msgid "Delay Import Directory" +msgstr "" + +#: peigen.c:1043 pepigen.c:1043 pex64igen.c:1043 +msgid "CLR Runtime Header" +msgstr "" + +#: peigen.c:1044 pepigen.c:1044 pex64igen.c:1044 +msgid "Reserved" +msgstr "Rezervirano" + +#: peigen.c:1104 pepigen.c:1104 pex64igen.c:1104 +#, c-format +msgid "" +"\n" +"There is an import table, but the section containing it could not be found\n" +msgstr "" + +#: peigen.c:1109 pepigen.c:1109 pex64igen.c:1109 +#, c-format +msgid "" +"\n" +"There is an import table in %s at 0x%lx\n" +msgstr "" + +#: peigen.c:1151 pepigen.c:1151 pex64igen.c:1151 +#, c-format +msgid "" +"\n" +"Function descriptor located at the start address: %04lx\n" +msgstr "" + +#: peigen.c:1154 pepigen.c:1154 pex64igen.c:1154 +#, c-format +msgid "\tcode-base %08lx toc (loadable/actual) %08lx/%08lx\n" +msgstr "" + +#: peigen.c:1162 pepigen.c:1162 pex64igen.c:1162 +#, c-format +msgid "" +"\n" +"No reldata section! Function descriptor not decoded.\n" +msgstr "" + +#: peigen.c:1167 pepigen.c:1167 pex64igen.c:1167 +#, c-format +msgid "" +"\n" +"The Import Tables (interpreted %s section contents)\n" +msgstr "" + +#: peigen.c:1170 pepigen.c:1170 pex64igen.c:1170 +#, c-format +msgid "" +" vma: Hint Time Forward DLL First\n" +" Table Stamp Chain Name Thunk\n" +msgstr "" + +#: peigen.c:1218 pepigen.c:1218 pex64igen.c:1218 +#, c-format +msgid "" +"\n" +"\tDLL Name: %s\n" +msgstr "" + +#: peigen.c:1229 pepigen.c:1229 pex64igen.c:1229 +#, c-format +msgid "\tvma: Hint/Ord Member-Name Bound-To\n" +msgstr "" + +#: peigen.c:1254 pepigen.c:1254 pex64igen.c:1254 +#, c-format +msgid "" +"\n" +"There is a first thunk, but the section containing it could not be found\n" +msgstr "" + +#: peigen.c:1415 pepigen.c:1415 pex64igen.c:1415 +#, c-format +msgid "" +"\n" +"There is an export table, but the section containing it could not be found\n" +msgstr "" + +#: peigen.c:1424 pepigen.c:1424 pex64igen.c:1424 +#, c-format +msgid "" +"\n" +"There is an export table in %s, but it does not fit into that section\n" +msgstr "" + +#: peigen.c:1430 pepigen.c:1430 pex64igen.c:1430 +#, c-format +msgid "" +"\n" +"There is an export table in %s at 0x%lx\n" +msgstr "" + +#: peigen.c:1458 pepigen.c:1458 pex64igen.c:1458 +#, c-format +msgid "" +"\n" +"The Export Tables (interpreted %s section contents)\n" +"\n" +msgstr "" + +#: peigen.c:1462 pepigen.c:1462 pex64igen.c:1462 +#, c-format +msgid "Export Flags \t\t\t%lx\n" +msgstr "" + +#: peigen.c:1465 pepigen.c:1465 pex64igen.c:1465 +#, c-format +msgid "Time/Date stamp \t\t%lx\n" +msgstr "" + +#: peigen.c:1468 pepigen.c:1468 pex64igen.c:1468 +#, c-format +msgid "Major/Minor \t\t\t%d/%d\n" +msgstr "" + +#: peigen.c:1471 pepigen.c:1471 pex64igen.c:1471 +#, c-format +msgid "Name \t\t\t\t" +msgstr "" + +#: peigen.c:1477 pepigen.c:1477 pex64igen.c:1477 +#, c-format +msgid "Ordinal Base \t\t\t%ld\n" +msgstr "" + +#: peigen.c:1480 pepigen.c:1480 pex64igen.c:1480 +#, c-format +msgid "Number in:\n" +msgstr "" + +#: peigen.c:1483 pepigen.c:1483 pex64igen.c:1483 +#, c-format +msgid "\tExport Address Table \t\t%08lx\n" +msgstr "" + +#: peigen.c:1487 pepigen.c:1487 pex64igen.c:1487 +#, c-format +msgid "\t[Name Pointer/Ordinal] Table\t%08lx\n" +msgstr "" + +#: peigen.c:1490 pepigen.c:1490 pex64igen.c:1490 +#, c-format +msgid "Table Addresses\n" +msgstr "" + +#: peigen.c:1493 pepigen.c:1493 pex64igen.c:1493 +#, c-format +msgid "\tExport Address Table \t\t" +msgstr "" + +#: peigen.c:1498 pepigen.c:1498 pex64igen.c:1498 +#, c-format +msgid "\tName Pointer Table \t\t" +msgstr "" + +#: peigen.c:1503 pepigen.c:1503 pex64igen.c:1503 +#, c-format +msgid "\tOrdinal Table \t\t\t" +msgstr "" + +#: peigen.c:1517 pepigen.c:1517 pex64igen.c:1517 +#, c-format +msgid "" +"\n" +"Export Address Table -- Ordinal Base %ld\n" +msgstr "" + +#: peigen.c:1536 pepigen.c:1536 pex64igen.c:1536 +msgid "Forwarder RVA" +msgstr "" + +#: peigen.c:1547 pepigen.c:1547 pex64igen.c:1547 +msgid "Export RVA" +msgstr "" + +#: peigen.c:1554 pepigen.c:1554 pex64igen.c:1554 +#, c-format +msgid "" +"\n" +"[Ordinal/Name Pointer] Table\n" +msgstr "" + +#: peigen.c:1614 peigen.c:1797 pepigen.c:1614 pepigen.c:1797 pex64igen.c:1614 +#: pex64igen.c:1797 +#, c-format +msgid "Warning, .pdata section size (%ld) is not a multiple of %d\n" +msgstr "" + +#: peigen.c:1621 pepigen.c:1621 pex64igen.c:1621 +#, c-format +msgid " vma:\t\t\tBegin Address End Address Unwind Info\n" +msgstr "" + +#: peigen.c:1623 pepigen.c:1623 pex64igen.c:1623 +#, c-format +msgid "" +" vma:\t\tBegin End EH EH PrologEnd Exception\n" +" \t\tAddress Address Handler Data Address Mask\n" +msgstr "" + +#: peigen.c:1697 pepigen.c:1697 pex64igen.c:1697 +#, c-format +msgid " Register save millicode" +msgstr "" + +#: peigen.c:1700 pepigen.c:1700 pex64igen.c:1700 +#, c-format +msgid " Register restore millicode" +msgstr "" + +#: peigen.c:1703 pepigen.c:1703 pex64igen.c:1703 +#, c-format +msgid " Glue code sequence" +msgstr "" + +#: peigen.c:1803 pepigen.c:1803 pex64igen.c:1803 +#, c-format +msgid "" +" vma:\t\tBegin Prolog Function Flags Exception EH\n" +" \t\tAddress Length Length 32b exc Handler Data\n" +msgstr "" + +#: peigen.c:1929 pepigen.c:1929 pex64igen.c:1929 +#, c-format +msgid "" +"\n" +"\n" +"PE File Base Relocations (interpreted .reloc section contents)\n" +msgstr "" + +#: peigen.c:1958 pepigen.c:1958 pex64igen.c:1958 +#, c-format +msgid "" +"\n" +"Virtual Address: %08lx Chunk size %ld (0x%lx) Number of fixups %ld\n" +msgstr "" + +#: peigen.c:1971 pepigen.c:1971 pex64igen.c:1971 +#, c-format +msgid "\treloc %4d offset %4x [%4lx] %s" +msgstr "" + +#. The MS dumpbin program reportedly ands with 0xff0f before +#. printing the characteristics field. Not sure why. No reason to +#. emulate it here. +#: peigen.c:2010 pepigen.c:2010 pex64igen.c:2010 +#, c-format +msgid "" +"\n" +"Characteristics 0x%x\n" +msgstr "" + +#: peigen.c:2310 pepigen.c:2310 pex64igen.c:2310 +msgid "%B: unable to fill in DataDictionary[1] because .idata$2 is missing" +msgstr "" + +#: peigen.c:2330 pepigen.c:2330 pex64igen.c:2330 +msgid "%B: unable to fill in DataDictionary[1] because .idata$4 is missing" +msgstr "" + +#: peigen.c:2351 pepigen.c:2351 pex64igen.c:2351 +msgid "%B: unable to fill in DataDictionary[12] because .idata$5 is missing" +msgstr "" + +#: peigen.c:2371 pepigen.c:2371 pex64igen.c:2371 +msgid "%B: unable to fill in DataDictionary[PE_IMPORT_ADDRESS_TABLE (12)] because .idata$6 is missing" +msgstr "" + +#: peigen.c:2413 pepigen.c:2413 pex64igen.c:2413 +msgid "%B: unable to fill in DataDictionary[PE_IMPORT_ADDRESS_TABLE(12)] because .idata$6 is missing" +msgstr "" + +#: peigen.c:2438 pepigen.c:2438 pex64igen.c:2438 +msgid "%B: unable to fill in DataDictionary[9] because __tls_used is missing" +msgstr "" diff --git a/bfd/po/id.po b/bfd/po/id.po index 018d716..b0acde8 100644 --- a/bfd/po/id.po +++ b/bfd/po/id.po @@ -1,16 +1,18 @@ # Pesan Bahasa Indonesia untuk BFD # Copyright (C) 2008 Free Software Foundation, Inc. # This file is distributed under the same license as the binutils package. -# Arif E. Nugroho <arif_endro@yahoo.com>, 2008, 2009. +# Arif E. Nugroho <arif_endro@yahoo.com>, 2008, 2009, 2010, 2011, 2012, 2013, 2014. # msgid "" msgstr "" -"Project-Id-Version: bfd 2.20\n" +"Project-Id-Version: bfd 2.23.90\n" "Report-Msgid-Bugs-To: bug-binutils@gnu.org\n" -"POT-Creation-Date: 2009-09-07 14:05+0200\n" -"PO-Revision-Date: 2009-11-11 08:00+0700\n" +"POT-Creation-Date: 2011-10-25 11:58+0100\n" +"PO-Revision-Date: 2014-09-16 08:00+0700\n" "Last-Translator: Arif E. Nugroho <arif_endro@yahoo.com>\n" "Language-Team: Indonesian <translation-team-id@lists.sourceforge.net>\n" +"Language: id\n" +"X-Bugs: Report translation errors to the Language-Team address.\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=ISO-8859-1\n" "Content-Transfer-Encoding: 8bit\n" @@ -19,155 +21,155 @@ msgstr "" msgid "%B: Unknown section type in a.out.adobe file: %x\n" msgstr "%B: Tipe bagian tidak diketahui dalam berkas a.out.adobe: %x\n" -#: aout-cris.c:204 +#: aout-cris.c:199 #, c-format msgid "%s: Invalid relocation type exported: %d" msgstr "%s: Tipe relokasi tidak valid terekspor: %d" -#: aout-cris.c:247 +#: aout-cris.c:242 msgid "%B: Invalid relocation type imported: %d" msgstr "%B: Tipe relokasi tidak valid terimpor: %d" -#: aout-cris.c:258 +#: aout-cris.c:253 msgid "%B: Bad relocation record imported: %d" msgstr "%B: Catatan relokasi buruk terimpor: %d" -#: aoutx.h:1271 aoutx.h:1609 +#: aoutx.h:1273 aoutx.h:1611 #, c-format msgid "%s: can not represent section `%s' in a.out object file format" msgstr "%s: tidak dapat merepresentasikan bagian `%s' dalam a.out objek format berkas" -#: aoutx.h:1575 +#: aoutx.h:1577 #, c-format msgid "%s: can not represent section for symbol `%s' in a.out object file format" msgstr "%s: tidak dapat merepresentasikan bagian untuk simbol `%s' dalam format berkas a.out objek" -#: aoutx.h:1577 +#: aoutx.h:1579 vms-alpha.c:7671 msgid "*unknown*" msgstr "*tidak diketahui*" -#: aoutx.h:3994 aoutx.h:4320 +#: aoutx.h:4018 aoutx.h:4344 msgid "%P: %B: unexpected relocation type\n" msgstr "%P: %B: tipe relokasi tidak diduga\n" -#: aoutx.h:5354 +#: aoutx.h:5375 #, c-format msgid "%s: relocatable link from %s to %s not supported" msgstr "%s: link relokasi dari %s ke %s tidak didukung" -#: archive.c:2056 +#: archive.c:2203 msgid "Warning: writing archive was slow: rewriting timestamp\n" msgstr "Peringatan: penulisan archive lambat: menulis ulang timestamp\n" -#: archive.c:2342 +#: archive.c:2491 msgid "Reading archive file mod timestamp" msgstr "Membaca berkas mod timestamp archive" -#: archive.c:2366 +#: archive.c:2515 msgid "Writing updated armap timestamp" msgstr "Menulis armap timestamp terupdate" -#: bfd.c:375 +#: bfd.c:398 msgid "No error" msgstr "Tidak error" -#: bfd.c:376 +#: bfd.c:399 msgid "System call error" msgstr "Pemanggilan sistem error" -#: bfd.c:377 +#: bfd.c:400 msgid "Invalid bfd target" msgstr "Target bfd tidak valid" -#: bfd.c:378 +#: bfd.c:401 msgid "File in wrong format" msgstr "Berkas dalam format salah" -#: bfd.c:379 +#: bfd.c:402 msgid "Archive object file in wrong format" msgstr "Archive berkas objek dalam format salah" -#: bfd.c:380 +#: bfd.c:403 msgid "Invalid operation" msgstr "Operasi tidak valid" -#: bfd.c:381 +#: bfd.c:404 msgid "Memory exhausted" msgstr "Kehabisan memori" -#: bfd.c:382 +#: bfd.c:405 msgid "No symbols" msgstr "Bukan simbol" -#: bfd.c:383 +#: bfd.c:406 msgid "Archive has no index; run ranlib to add one" msgstr "Archive tidak memiliki indek; jalankan ranlib untuk menambahkan satu" -#: bfd.c:384 +#: bfd.c:407 msgid "No more archived files" msgstr "Tidak lagi berkas yang ter-archive" -#: bfd.c:385 +#: bfd.c:408 msgid "Malformed archive" msgstr "Archive tidak terformat" -#: bfd.c:386 +#: bfd.c:409 msgid "File format not recognized" msgstr "Berkas format tidak dikenal" -#: bfd.c:387 +#: bfd.c:410 msgid "File format is ambiguous" msgstr "Berkas format ambigu" -#: bfd.c:388 +#: bfd.c:411 msgid "Section has no contents" msgstr "Bagian tidak memiliki isi" -#: bfd.c:389 +#: bfd.c:412 msgid "Nonrepresentable section on output" msgstr "Bagian tidak dapat direpresentasikan di keluaran" -#: bfd.c:390 +#: bfd.c:413 msgid "Symbol needs debug section which does not exist" msgstr "Simbol membutuhkan bagian debug yang mana bagian tersebut tidak ada" -#: bfd.c:391 +#: bfd.c:414 msgid "Bad value" msgstr "Nilai buruk" -#: bfd.c:392 +#: bfd.c:415 msgid "File truncated" msgstr "Berkas terpotong" -#: bfd.c:393 +#: bfd.c:416 msgid "File too big" msgstr "Berkas terlalu besar" -#: bfd.c:394 +#: bfd.c:417 #, c-format msgid "Error reading %s: %s" msgstr "Error membaca %s: %s" -#: bfd.c:395 +#: bfd.c:418 msgid "#<Invalid error code>" msgstr "#<Kode error tidak valid>" -#: bfd.c:919 +#: bfd.c:945 #, c-format msgid "BFD %s assertion fail %s:%d" msgstr "BFD %s assertion gagal %s:%d" -#: bfd.c:931 +#: bfd.c:957 #, c-format msgid "BFD %s internal error, aborting at %s line %d in %s\n" msgstr "BFD %s error internal, menggagalkan di %s baris %d dalam %s\n" -#: bfd.c:935 +#: bfd.c:961 #, c-format msgid "BFD %s internal error, aborting at %s line %d\n" msgstr "BFD %s error internal, menggagalkan di %s baris %d\n" -#: bfd.c:937 +#: bfd.c:963 msgid "Please report this bug.\n" msgstr "Tolong laporkan bug ini.\n" @@ -181,22 +183,22 @@ msgstr "tidak termap: data=%lx mapped=%d\n" msgid "not mapping: env var not set\n" msgstr "tidak termap; env var tidak terset\n" -#: binary.c:284 +#: binary.c:271 #, c-format msgid "Warning: Writing section `%s' to huge (ie negative) file offset 0x%lx." msgstr "Peringatan: Menulis bagian `%s' terlalu besar (ie negatif) berkas ofset 0x%lx." -#: bout.c:1150 elf-m10300.c:2078 elf32-avr.c:1639 elf32-frv.c:5743 -#: elf32-xtensa.c:6639 elfxx-sparc.c:2456 reloc.c:5386 reloc16.c:162 -#: vms.c:1918 elf32-ia64.c:788 elf64-ia64.c:788 +#: bout.c:1146 elf-m10300.c:2063 elf32-avr.c:1654 elf32-frv.c:5734 +#: elfxx-sparc.c:2802 reloc.c:6115 reloc16.c:162 elf32-ia64.c:360 +#: elf64-ia64.c:360 msgid "%P%F: --relax and -r may not be used together\n" msgstr "%P%F: --relax dan -r tidak boleh digunakan secara bersamaan\n" -#: cache.c:226 +#: cache.c:227 msgid "reopening %B: %s\n" msgstr "membuka kembali %B: %s\n" -#: coff-alpha.c:490 +#: coff-alpha.c:491 msgid "" "%B: Cannot handle compressed Alpha binaries.\n" " Use compiler flags, or objZ, to generate uncompressed binaries." @@ -204,42 +206,42 @@ msgstr "" "%B: Tidak dapat menangani binari yang dikompres Alpha.\n" " Menggunakan tanda kompiler, atau objZ, untuk menghasilkan binari tidak terkompres." -#: coff-alpha.c:647 +#: coff-alpha.c:648 msgid "%B: unknown/unsupported relocation type %d" msgstr "%B; tidak diketahui/tidak didukung tipe relokasi %d" -#: coff-alpha.c:899 coff-alpha.c:936 coff-alpha.c:2024 coff-mips.c:1003 +#: coff-alpha.c:900 coff-alpha.c:937 coff-alpha.c:2025 coff-mips.c:1003 msgid "GP relative relocation used when GP not defined" msgstr "GP relatif relokasi digunakan ketika GP tidak didefinisikan" -#: coff-alpha.c:1501 +#: coff-alpha.c:1502 msgid "using multiple gp values" msgstr "menggunakan nilai gp multiple" -#: coff-alpha.c:1560 +#: coff-alpha.c:1561 msgid "%B: unsupported relocation: ALPHA_R_GPRELHIGH" msgstr "%B: relokasi tidak didukung: ALPHA_R_GPRELHIGH" -#: coff-alpha.c:1567 +#: coff-alpha.c:1568 msgid "%B: unsupported relocation: ALPHA_R_GPRELLOW" msgstr "%B: relokasi tidak didukung: ALPHA_R_GPRELLOW" -#: coff-alpha.c:1574 elf32-m32r.c:2477 elf64-alpha.c:3943 elf64-alpha.c:4098 -#: elf32-ia64.c:4462 elf64-ia64.c:4462 +#: coff-alpha.c:1575 elf32-m32r.c:2484 elf64-alpha.c:4074 elf64-alpha.c:4224 +#: elf32-ia64.c:3839 elf64-ia64.c:3839 msgid "%B: unknown relocation type %d" msgstr "%B: tipe relokasi %d tidak diketahui" -#: coff-arm.c:1039 +#: coff-arm.c:1038 #, c-format msgid "%B: unable to find THUMB glue '%s' for `%s'" msgstr "%B: tidak dapat menemukan lem THUMB '%s' untuk `%s'" -#: coff-arm.c:1068 +#: coff-arm.c:1067 #, c-format msgid "%B: unable to find ARM glue '%s' for `%s'" msgstr "%B: tidak dapat menemukan lem ARM '%s' untuk `%s'" -#: coff-arm.c:1370 elf32-arm.c:6372 +#: coff-arm.c:1369 elf32-arm.c:7023 #, c-format msgid "" "%B(%s): warning: interworking not enabled.\n" @@ -248,7 +250,7 @@ msgstr "" "%B(%s): peringatan: antar-kerja tidak diaktifkan.\n" " pertemuan pertama: %B: arm panggil ke thumb" -#: coff-arm.c:1460 +#: coff-arm.c:1459 #, c-format msgid "" "%B(%s): warning: interworking not enabled.\n" @@ -259,95 +261,95 @@ msgstr "" " pertemuan pertama: %B: panggilan thumb ke arm\n" " pertimbangkan relinking dengan --support-old-code aktif" -#: coff-arm.c:1755 coff-tic80.c:695 cofflink.c:3027 +#: coff-arm.c:1754 coff-tic80.c:695 cofflink.c:3081 msgid "%B: bad reloc address 0x%lx in section `%A'" msgstr "%B: alamat relokasi buruk 0x%lx dalam bagian `%A'" -#: coff-arm.c:2080 +#: coff-arm.c:2079 msgid "%B: illegal symbol index in reloc: %d" msgstr "%B: indek simbol ilegal dalam relokasi: %d" -#: coff-arm.c:2211 +#: coff-arm.c:2210 #, c-format msgid "error: %B is compiled for APCS-%d, whereas %B is compiled for APCS-%d" msgstr "error: %B dikompile untuk APCS-%d, dimana %B dikompile untuk APCS-%d" -#: coff-arm.c:2227 elf32-arm.c:10327 +#: coff-arm.c:2226 elf32-arm.c:15621 #, c-format msgid "error: %B passes floats in float registers, whereas %B passes them in integer registers" msgstr "error: %B melewati float dalam register float, dimana %B melewatinya register integer" -#: coff-arm.c:2230 elf32-arm.c:10331 +#: coff-arm.c:2229 elf32-arm.c:15625 #, c-format msgid "error: %B passes floats in integer registers, whereas %B passes them in float registers" msgstr "error: %B melewati float dalam register integer, dimana %B melewatinya float register" -#: coff-arm.c:2244 +#: coff-arm.c:2243 #, c-format msgid "error: %B is compiled as position independent code, whereas target %B is absolute position" msgstr "error: %B dikompile sebagai kode bebas posisi, dimana target %B yang memiliki posisi absolute" -#: coff-arm.c:2247 +#: coff-arm.c:2246 #, c-format msgid "error: %B is compiled as absolute position code, whereas target %B is position independent" msgstr "error: %B dikompile sebagai kode absolute posisi, dimana target %B adalah bebas posisi" -#: coff-arm.c:2275 elf32-arm.c:10396 +#: coff-arm.c:2274 elf32-arm.c:15690 #, c-format msgid "Warning: %B supports interworking, whereas %B does not" msgstr "Peringatan: %B mendukung antar-kerja, dimana %B tidak" -#: coff-arm.c:2278 elf32-arm.c:10402 +#: coff-arm.c:2277 elf32-arm.c:15696 #, c-format msgid "Warning: %B does not support interworking, whereas %B does" msgstr "Peringatan: %B tidak mendukung antar-kerja, dimana %B ya" -#: coff-arm.c:2302 +#: coff-arm.c:2301 #, c-format msgid "private flags = %x:" msgstr "tanda private = %x:" -#: coff-arm.c:2310 elf32-arm.c:10453 +#: coff-arm.c:2309 elf32-arm.c:11806 #, c-format msgid " [floats passed in float registers]" msgstr " [floats melewati dalam register float]" -#: coff-arm.c:2312 +#: coff-arm.c:2311 #, c-format msgid " [floats passed in integer registers]" msgstr " [float melewati register integer]" -#: coff-arm.c:2315 elf32-arm.c:10456 +#: coff-arm.c:2314 elf32-arm.c:11809 #, c-format msgid " [position independent]" msgstr " [bebas posisi]" -#: coff-arm.c:2317 +#: coff-arm.c:2316 #, c-format msgid " [absolute position]" msgstr " [absolute posisi]" -#: coff-arm.c:2321 +#: coff-arm.c:2320 #, c-format msgid " [interworking flag not initialised]" msgstr " [tanda antar-kerja tidak terinisialisasi]" -#: coff-arm.c:2323 +#: coff-arm.c:2322 #, c-format msgid " [interworking supported]" msgstr " [antar-kerja didukung]" -#: coff-arm.c:2325 +#: coff-arm.c:2324 #, c-format msgid " [interworking not supported]" msgstr " [antar-kerja tidak didukung]" -#: coff-arm.c:2371 elf32-arm.c:9360 +#: coff-arm.c:2370 elf32-arm.c:10841 #, c-format msgid "Warning: Not setting interworking flag of %B since it has already been specified as non-interworking" msgstr "Peringatan: Tidak menset tanda antar-kerja dari %B karena itu telah terspesifikasi sebagai bukan-antar-kerja" -#: coff-arm.c:2375 elf32-arm.c:9364 +#: coff-arm.c:2374 elf32-arm.c:10845 #, c-format msgid "Warning: Clearing the interworking flag of %B due to outside request" msgstr "Peringatan: Menghapus tanda antar-kerja dari %B karena diluar permintaan" @@ -359,43 +361,23 @@ msgstr "tidak dapat menangani R_MEM_INDIRECT relokasi ketika menggunakan keluara #: coff-i860.c:147 #, c-format -msgid "Relocation `%s' not yet implemented\n" -msgstr "Relokasi `%s' belum terimplementasi\n" +msgid "relocation `%s' not yet implemented" +msgstr "relokasi `%s' belum terimplementasi" -#: coff-i860.c:605 coff-tic54x.c:398 coffcode.h:5143 +#: coff-i860.c:605 coff-tic54x.c:398 coffcode.h:5198 msgid "%B: warning: illegal symbol index %ld in relocs" msgstr "%B: peringatan: indek simbol ilegal %ld dalam relokasi" -#: coff-i960.c:143 coff-i960.c:506 +#: coff-i960.c:144 coff-i960.c:507 msgid "uncertain calling convention for non-COFF symbol" msgstr "tidak tentu pemanggilan konvensi untuk non-COFF simbol" -#: coff-m68k.c:506 elf32-bfin.c:5693 elf32-cr16.c:2965 elf32-m68k.c:4615 +#: coff-m68k.c:506 elf32-bfin.c:5690 elf32-cr16.c:2897 elf32-m68k.c:4677 msgid "unsupported reloc type" msgstr "tipe relokasi tidak didukung" -#: coff-maxq.c:126 -msgid "Can't Make it a Short Jump" -msgstr "Tidak dapat membuka ini sebuah lompatan pendek" - -#: coff-maxq.c:191 -msgid "Exceeds Long Jump Range" -msgstr "Melewati jangkauan lompatan panjang" - -#: coff-maxq.c:202 coff-maxq.c:276 -msgid "Absolute address Exceeds 16 bit Range" -msgstr "Alamat absolut melewati jangkauan 16 bit" - -#: coff-maxq.c:240 -msgid "Absolute address Exceeds 8 bit Range" -msgstr "Alamat absolute melewati jangkauan 8 bit" - -#: coff-maxq.c:333 -msgid "Unrecognized Reloc Type" -msgstr "Tipe relokasi tidak dikenal" - -#: coff-mips.c:688 elf32-mips.c:1014 elf32-score.c:441 elf32-score7.c:341 -#: elf64-mips.c:2018 elfn32-mips.c:1832 +#: coff-mips.c:688 elf32-mips.c:1516 elf32-score.c:431 elf32-score7.c:330 +#: elf64-mips.c:2618 elfn32-mips.c:2431 msgid "GP relative relocation when _gp not defined" msgstr "GP relokasi relatif ketika _gp tidak terdefinisi" @@ -403,20 +385,25 @@ msgstr "GP relokasi relatif ketika _gp tidak terdefinisi" msgid "Unrecognized reloc" msgstr "Relokasi tidak dikenal" -#: coff-rs6000.c:2787 +#: coff-rs6000.c:2720 #, c-format msgid "%s: unsupported relocation type 0x%02x" msgstr "%s: tipe relokasi tidak didukung 0x%02x" -#: coff-rs6000.c:2880 +#: coff-rs6000.c:2805 #, c-format msgid "%s: TOC reloc at 0x%x to symbol `%s' with no TOC entry" msgstr "%s: TOC relokasi di 0x%x untuk simbol `%s' dengan tidak ada masukan TOC" -#: coff-rs6000.c:3646 coff64-rs6000.c:2168 +#: coff-rs6000.c:3556 coff64-rs6000.c:2111 msgid "%B: symbol `%s' has unrecognized smclas %d" msgstr "%B: simbol `%s' memiliki smclas tidak dikenal %d" +#: coff-sh.c:521 +#, c-format +msgid "SH Error: unknown reloc type %d" +msgstr "SH Error: tipe relokasi %d tidak diketahui" + #: coff-tic4x.c:195 coff-tic54x.c:299 coff-tic80.c:458 #, c-format msgid "Unrecognized reloc type 0x%x" @@ -432,76 +419,88 @@ msgstr "%s: peringatan: indek simbol ilegal %ld dalam relokasi" msgid "ignoring reloc %s\n" msgstr "mengabaikan relokasi %s\n" -#: coffcode.h:960 +#: coffcode.h:997 msgid "%B: warning: COMDAT symbol '%s' does not match section name '%s'" msgstr "%B: peringatan: COMDAT simbol '%s' tidak cocok dengan nama bagian '%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:1176 +#: coffcode.h:1221 msgid "%B: Warning: Ignoring section flag IMAGE_SCN_MEM_NOT_PAGED in section %s" msgstr "%B: Peringatan: Mengabaikan tanda bagian IMAGE_SCN_MEM_NOT_PAGED dalam bagian %s" -#: coffcode.h:1240 +#: coffcode.h:1288 msgid "%B (%s): Section flag %s (0x%x) ignored" msgstr "%B (%s): Tanda bagian %s (0x%x) diabaikan" -#: coffcode.h:2382 +#: coffcode.h:2430 #, c-format msgid "Unrecognized TI COFF target id '0x%x'" msgstr "Target id '0x%x' TI COFF tidak dikenal" -#: coffcode.h:2696 +#: coffcode.h:2744 msgid "%B: reloc against a non-existant symbol index: %ld" msgstr "%B: relokasi terhadap simbol indek yang tidak ada: %ld" -#: coffcode.h:3669 +#: coffcode.h:3302 +msgid "%B: too many sections (%d)" +msgstr "%B: terlalu banyak bagian (%d)" + +#: coffcode.h:3718 msgid "%B: section %s: string table overflow at offset %ld" msgstr "%B: bagian %s: tabel string overflow di offset %ld" -#: coffcode.h:4477 +#: coffcode.h:4523 msgid "%B: warning: line number table read failed" msgstr "%B: peringatan: pembacaan tabel nomor baris gagal" -#: coffcode.h:4507 +#: coffcode.h:4553 msgid "%B: warning: illegal symbol index %ld in line numbers" msgstr "%B: peringatan: simbol index %ld ilegal dalam nomor baris" -#: coffcode.h:4521 +#: coffcode.h:4567 msgid "%B: warning: duplicate line number information for `%s'" msgstr "%B: peringatan: duplikasi informasi nomor baris untuk `%s'" -#: coffcode.h:4912 +#: coffcode.h:4967 msgid "%B: Unrecognized storage class %d for %s symbol `%s'" msgstr "%B: kelas %d penyimpanan tidak dikenal untuk %s simbol `%s'" -#: coffcode.h:5038 +#: coffcode.h:5093 msgid "warning: %B: local symbol `%s' has no section" msgstr "peringatan: %B: simbol lokal `%s' tidak memiliki bagian" -#: coffcode.h:5181 +#: coffcode.h:5237 msgid "%B: illegal relocation type %d at address 0x%lx" msgstr "%B: tipe relokasi %d ilegal di alamat 0x%lx" -#: coffgen.c:1571 +#: coffgen.c:1595 msgid "%B: bad string table size %lu" msgstr "%B: string buruk ukuran tabel %lu" -#: cofflink.c:513 elflink.c:4307 +#: coffgen.c:2500 elflink.c:12689 linker.c:3122 +msgid "%F%P: already_linked_table: %E\n" +msgstr "%F%P: already_linked_table: %E\n" + +#: cofflink.c:533 elflink.c:4323 msgid "Warning: type of symbol `%s' changed from %d to %d in %B" msgstr "Peringatan: tipe dari simbole `%s' berubah dari %d ke %d dalam %B" -#: cofflink.c:2305 +#: cofflink.c:2329 msgid "%B: relocs in section `%A', but it has no contents" msgstr "%B: relokasi dalam bagian `%A', tetapi ini tidak memiliki isi" -#: cofflink.c:2636 coffswap.h:826 +#: cofflink.c:2391 elflink.c:9545 +msgid "%X`%s' referenced in section `%A' of %B: defined in discarded section `%A' of %B\n" +msgstr "%X`%s' direferensikan dalam daerah `%A' dari %B: didefinisikan dalam daerah diabaikan `%A' dari %B\n" + +#: cofflink.c:2690 coffswap.h:826 #, c-format msgid "%s: %s: reloc overflow: 0x%lx > 0xffff" msgstr "%s: %s: relokasi overflow: 0x%lx > 0xffff" -#: cofflink.c:2645 coffswap.h:812 +#: cofflink.c:2699 coffswap.h:812 #, c-format msgid "%s: warning: %s: line number overflow: 0x%lx > 0xffff" msgstr "%s: peringatan: %s: nomor baris overflow: 0x%lx > 0xffff" @@ -510,65 +509,69 @@ msgstr "%s: peringatan: %s: nomor baris overflow: 0x%lx > 0xffff" msgid "error: %B is compiled for the EP9312, whereas %B is compiled for XScale" msgstr "error: %B dikompile untuk EP9312, dimana %B dikompile untuk XScale" -#: cpu-arm.c:332 +#: cpu-arm.c:333 #, c-format msgid "warning: unable to update contents of %s section in %s" msgstr "peringatan: tidak dapat mengupdate isi dari %s bagian dalam %s" -#: dwarf2.c:430 +#: dwarf2.c:496 #, c-format msgid "Dwarf Error: Can't find %s section." msgstr "Dwarf Error: Tidak dapat menemukan bagian %s." -#: dwarf2.c:457 -#, c-format -msgid "Dwarf Error: unable to decompress %s section." -msgstr "Dwarf Error: tidak dapat mengekstrak bagian %s." - -#: dwarf2.c:468 +#: dwarf2.c:525 #, c-format msgid "Dwarf Error: Offset (%lu) greater than or equal to %s size (%lu)." msgstr "Dwarf Error: Ofset (%lu) lebih besar atau sama dengan %s ukuran (%lu)." -#: dwarf2.c:865 +#: dwarf2.c:949 #, c-format msgid "Dwarf Error: Invalid or unhandled FORM value: %u." msgstr "Dwarf Error: Tidak valid atau nilai FORM tidak tertangani: %u." -#: dwarf2.c:1079 +#: dwarf2.c:1200 msgid "Dwarf Error: mangled line number section (bad file number)." msgstr "Dwarf Error: mangled bagian nomor baris (nomor berkas buruk)." -#: dwarf2.c:1413 +#: dwarf2.c:1453 +#, c-format +msgid "Dwarf Error: Unhandled .debug_line version %d." +msgstr "Dwarf Error: Tidak tertangani .debug_line versi %d." + +#: dwarf2.c:1475 +msgid "Dwarf Error: Invalid maximum operations per instruction." +msgstr "Dwarf Error: Tidak valid jumlah maksimal operasi per instruksi." + +#: dwarf2.c:1662 msgid "Dwarf Error: mangled line number section." msgstr "Dwarf Error: mangled bagian nomor baris." -#: dwarf2.c:1760 dwarf2.c:1867 dwarf2.c:2139 +#: dwarf2.c:1989 dwarf2.c:2109 dwarf2.c:2394 #, c-format msgid "Dwarf Error: Could not find abbrev number %u." msgstr "Dwarf Error: Tidak dapat menemukan nomor singkat %u." -#: dwarf2.c:2100 +#: dwarf2.c:2355 #, c-format -msgid "Dwarf Error: found dwarf version '%u', this reader only handles version 2 and 3 information." -msgstr "Dwarf Error: menemukan versi dwarf '%u', pembaca ini hanya menangani informasi versi 2 dan 3." +msgid "Dwarf Error: found dwarf version '%u', this reader only handles version 2, 3 and 4 information." +msgstr "Dwarf Error: menemukan versi dwarf '%u', pembaca ini hanya menangani informasi versi 2, 3 dan 4." -#: dwarf2.c:2107 +#: dwarf2.c:2362 #, c-format msgid "Dwarf Error: found address size '%u', this reader can not handle sizes greater than '%u'." msgstr "Dwarf Error: menemukan ukuran alamat '%u', pembaca ini tidak dapat menangani ukuran lebih besar dari '%u'." -#: dwarf2.c:2130 +#: dwarf2.c:2385 #, c-format msgid "Dwarf Error: Bad abbrev number: %u." msgstr "Dwarf Error: Nomor singkat buruk: %u." -#: ecoff.c:1238 +#: ecoff.c:1239 #, c-format msgid "Unknown basic type %d" msgstr "Tipe dasar %d tidak diketahui" -#: ecoff.c:1495 +#: ecoff.c:1496 #, c-format msgid "" "\n" @@ -577,7 +580,7 @@ msgstr "" "\n" " Simbol End+1: %ld" -#: ecoff.c:1502 ecoff.c:1505 +#: ecoff.c:1503 ecoff.c:1506 #, c-format msgid "" "\n" @@ -586,7 +589,7 @@ msgstr "" "\n" " Simbol pertama: %ld" -#: ecoff.c:1517 +#: ecoff.c:1518 #, c-format msgid "" "\n" @@ -595,7 +598,7 @@ msgstr "" "\n" " Simbol End+1: %-7ld Tipe: %s" -#: ecoff.c:1524 +#: ecoff.c:1525 #, c-format msgid "" "\n" @@ -604,7 +607,7 @@ msgstr "" "\n" " Simbol lokal: %ld" -#: ecoff.c:1532 +#: ecoff.c:1533 #, c-format msgid "" "\n" @@ -613,7 +616,7 @@ msgstr "" "\n" " struct; simbol End+1: %ld" -#: ecoff.c:1537 +#: ecoff.c:1538 #, c-format msgid "" "\n" @@ -622,7 +625,7 @@ msgstr "" "\n" " union: End+1 simbol: %ld" -#: ecoff.c:1542 +#: ecoff.c:1543 #, c-format msgid "" "\n" @@ -631,7 +634,7 @@ msgstr "" "\n" " enum; End+1 simbol: %ld" -#: ecoff.c:1548 +#: ecoff.c:1549 #, c-format msgid "" "\n" @@ -640,124 +643,140 @@ msgstr "" "\n" " Tipe: %s" -#: elf-attrs.c:567 -msgid "error: %B: Must be processed by '%s' toolchain" -msgstr "error: %B: Harus diproses dengan '%s' toolchain" +#: elf-attrs.c:569 +msgid "error: %B: Object has vendor-specific contents that must be processed by the '%s' toolchain" +msgstr "error: %B: Objek yang memiliki konten vendor-specific harus diproses dengan '%s' toolchain" -#: elf-attrs.c:575 +#: elf-attrs.c:578 msgid "error: %B: Object tag '%d, %s' is incompatible with tag '%d, %s'" msgstr "error: %B: Objek tag '%d, %s' tidak kompatibel dengan tag '%d, %s'" -#: elf-eh-frame.c:884 +#: elf-eh-frame.c:917 msgid "%P: error in %B(%A); no .eh_frame_hdr table will be created.\n" msgstr "%P: error dalam %B(%A); tidak ada .eh_frame_hdr tabel yang akan dibuat.\n" -#: elf-eh-frame.c:1122 +#: elf-eh-frame.c:1189 msgid "%P: fde encoding in %B(%A) prevents .eh_frame_hdr table being created.\n" msgstr "%P: fde enkoding dalam %B(%A) menjaga .eh_frame_hdr tabel untuk dibuat.\n" +#: elf-eh-frame.c:1605 +msgid "%P: DW_EH_PE_datarel unspecified for this architecture.\n" +msgstr "%P: DW_EH_PE_datarel unspecified for this architecture.\n" + #: elf-ifunc.c:179 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 "%F%P: dynamic STT_GNU_IFUNC simbol '%s' dengan penunjuk persamaan dalam `%B' tidak dapat digunakan ketika membuat sebuah pelaksana; rekompilasi dengan -fPIE dan hubungkan kembali dengan -pie\n" -#: elf-m10200.c:456 elf-m10300.c:1575 elf32-avr.c:1251 elf32-bfin.c:3200 -#: elf32-cr16.c:1517 elf32-cr16c.c:790 elf32-cris.c:2089 elf32-crx.c:933 -#: elf32-d10v.c:516 elf32-fr30.c:616 elf32-frv.c:4114 elf32-h8300.c:516 -#: elf32-i860.c:1218 elf32-ip2k.c:1499 elf32-iq2000.c:691 elf32-lm32.c:1171 -#: elf32-m32c.c:560 elf32-m32r.c:3102 elf32-m68hc1x.c:1136 elf32-mep.c:541 -#: elf32-microblaze.c:1226 elf32-moxie.c:291 elf32-msp430.c:493 elf32-mt.c:402 -#: elf32-openrisc.c:411 elf32-score.c:2752 elf32-score7.c:2591 -#: elf32-spu.c:5045 elf32-v850.c:1701 elf32-xstormy16.c:948 elf64-mmix.c:1533 +#: elf-m10200.c:450 elf-m10300.c:1563 elf32-avr.c:1221 elf32-bfin.c:3213 +#: elf32-cr16.c:1482 elf32-cr16c.c:780 elf32-cris.c:2081 elf32-crx.c:922 +#: elf32-d10v.c:509 elf32-epiphany.c:556 elf32-fr30.c:609 elf32-frv.c:4105 +#: elf32-h8300.c:509 elf32-i860.c:1211 elf32-ip2k.c:1468 elf32-iq2000.c:684 +#: elf32-lm32.c:1168 elf32-m32c.c:553 elf32-m32r.c:3106 elf32-m68hc1x.c:1138 +#: elf32-mep.c:535 elf32-microblaze.c:1231 elf32-moxie.c:282 +#: elf32-msp430.c:486 elf32-mt.c:395 elf32-openrisc.c:404 elf32-score.c:2729 +#: elf32-score7.c:2537 elf32-spu.c:5044 elf32-tilepro.c:3214 elf32-v850.c:2143 +#: elf32-xstormy16.c:935 elf64-mmix.c:1590 elfxx-tilegx.c:3577 msgid "internal error: out of range error" msgstr "internal error: diluar jangkauan error" -#: elf-m10200.c:460 elf-m10300.c:1579 elf32-avr.c:1255 elf32-bfin.c:3204 -#: elf32-cr16.c:1521 elf32-cr16c.c:794 elf32-cris.c:2093 elf32-crx.c:937 -#: elf32-d10v.c:520 elf32-fr30.c:620 elf32-frv.c:4118 elf32-h8300.c:520 -#: elf32-i860.c:1222 elf32-iq2000.c:695 elf32-lm32.c:1175 elf32-m32c.c:564 -#: elf32-m32r.c:3106 elf32-m68hc1x.c:1140 elf32-mep.c:545 -#: elf32-microblaze.c:1230 elf32-moxie.c:295 elf32-msp430.c:497 -#: elf32-openrisc.c:415 elf32-score.c:2756 elf32-score7.c:2595 -#: elf32-spu.c:5049 elf32-v850.c:1705 elf32-xstormy16.c:952 elf64-mmix.c:1537 -#: elfxx-mips.c:9103 +#: elf-m10200.c:454 elf-m10300.c:1567 elf32-avr.c:1225 elf32-bfin.c:3217 +#: elf32-cr16.c:1486 elf32-cr16c.c:784 elf32-cris.c:2085 elf32-crx.c:926 +#: elf32-d10v.c:513 elf32-fr30.c:613 elf32-frv.c:4109 elf32-h8300.c:513 +#: elf32-i860.c:1215 elf32-iq2000.c:688 elf32-lm32.c:1172 elf32-m32c.c:557 +#: elf32-m32r.c:3110 elf32-m68hc1x.c:1142 elf32-mep.c:539 +#: elf32-microblaze.c:1235 elf32-moxie.c:286 elf32-msp430.c:490 +#: elf32-openrisc.c:408 elf32-score.c:2733 elf32-score7.c:2541 +#: elf32-spu.c:5048 elf32-tilepro.c:3218 elf32-v850.c:2147 +#: elf32-xstormy16.c:939 elf64-mmix.c:1594 elfxx-mips.c:9465 +#: elfxx-tilegx.c:3581 msgid "internal error: unsupported relocation error" msgstr "internal error: relokasi tidak didukung error" -#: elf-m10200.c:464 elf32-cr16.c:1525 elf32-cr16c.c:798 elf32-crx.c:941 -#: elf32-d10v.c:524 elf32-h8300.c:524 elf32-lm32.c:1179 elf32-m32r.c:3110 -#: elf32-m68hc1x.c:1144 elf32-microblaze.c:1234 elf32-score.c:2760 -#: elf32-score7.c:2599 elf32-spu.c:5053 +#: elf-m10200.c:458 elf32-cr16.c:1490 elf32-cr16c.c:788 elf32-crx.c:930 +#: elf32-d10v.c:517 elf32-h8300.c:517 elf32-lm32.c:1176 elf32-m32r.c:3114 +#: elf32-m68hc1x.c:1146 elf32-microblaze.c:1239 elf32-score.c:2737 +#: elf32-score7.c:2545 elf32-spu.c:5052 msgid "internal error: dangerous error" msgstr "internal error error berbahaya" -#: elf-m10200.c:468 elf-m10300.c:1592 elf32-avr.c:1263 elf32-bfin.c:3212 -#: elf32-cr16.c:1529 elf32-cr16c.c:802 elf32-cris.c:2101 elf32-crx.c:945 -#: elf32-d10v.c:528 elf32-fr30.c:628 elf32-frv.c:4126 elf32-h8300.c:528 -#: elf32-i860.c:1230 elf32-ip2k.c:1514 elf32-iq2000.c:703 elf32-lm32.c:1183 -#: elf32-m32c.c:572 elf32-m32r.c:3114 elf32-m68hc1x.c:1148 elf32-mep.c:553 -#: elf32-microblaze.c:1238 elf32-moxie.c:303 elf32-msp430.c:505 elf32-mt.c:410 -#: elf32-openrisc.c:423 elf32-score.c:2769 elf32-score7.c:2603 -#: elf32-spu.c:5057 elf32-v850.c:1725 elf32-xstormy16.c:960 elf64-mmix.c:1545 +#: elf-m10200.c:462 elf-m10300.c:1580 elf32-avr.c:1233 elf32-bfin.c:3225 +#: elf32-cr16.c:1494 elf32-cr16c.c:792 elf32-cris.c:2093 elf32-crx.c:934 +#: elf32-d10v.c:521 elf32-epiphany.c:571 elf32-fr30.c:621 elf32-frv.c:4117 +#: elf32-h8300.c:521 elf32-i860.c:1223 elf32-ip2k.c:1483 elf32-iq2000.c:696 +#: elf32-lm32.c:1180 elf32-m32c.c:565 elf32-m32r.c:3118 elf32-m68hc1x.c:1150 +#: elf32-mep.c:547 elf32-microblaze.c:1243 elf32-moxie.c:294 +#: elf32-msp430.c:498 elf32-mt.c:403 elf32-openrisc.c:416 elf32-score.c:2746 +#: elf32-score7.c:2549 elf32-spu.c:5056 elf32-tilepro.c:3226 elf32-v850.c:2167 +#: elf32-xstormy16.c:947 elf64-mmix.c:1602 elfxx-tilegx.c:3589 msgid "internal error: unknown error" msgstr "internal error: error tidak diketahui" -#: elf-m10300.c:1512 elf32-arm.c:8963 elf32-i386.c:3984 elf32-m32r.c:2588 -#: elf32-m68k.c:4099 elf32-ppc.c:7906 elf32-s390.c:3015 elf32-sh.c:3429 -#: elf32-xtensa.c:3027 elf64-ppc.c:12063 elf64-s390.c:2974 elf64-sh64.c:1648 -#: elf64-x86-64.c:3657 elfxx-sparc.c:3317 +#: elf-m10300.c:1507 elf32-arm.c:10419 elf32-i386.c:4264 elf32-m32r.c:2599 +#: elf32-m68k.c:4156 elf32-s390.c:3003 elf32-sh.c:4218 elf32-tilepro.c:3117 +#: elf32-xtensa.c:3066 elf64-s390.c:2978 elf64-sh64.c:1640 elf64-x86-64.c:4110 +#: elfxx-sparc.c:3835 elfxx-tilegx.c:3500 msgid "%B(%A+0x%lx): unresolvable %s relocation against symbol `%s'" msgstr "%B(%A+0x%lx): tidak teresolf %s relokasi terhadap simbol `%s'" -#: elf-m10300.c:1584 +#: elf-m10300.c:1572 msgid "error: inappropriate relocation type for shared library (did you forget -fpic?)" msgstr "error: tipe relokasi tidak sesuai untuk shared library (apakah anda lupa -fpic?)" -#: elf-m10300.c:1587 +#: elf-m10300.c:1575 msgid "internal error: suspicious relocation type used in shared library" msgstr "internal erro: suspicious tipe relokasi digunakan dalam shared library" -#: elf-m10300.c:4385 elf32-arm.c:11346 elf32-cr16.c:2519 elf32-cris.c:3030 -#: elf32-hppa.c:1891 elf32-i370.c:506 elf32-i386.c:1975 elf32-lm32.c:1873 -#: elf32-m32r.c:1921 elf32-m68k.c:3188 elf32-ppc.c:4953 elf32-s390.c:1650 -#: elf32-sh.c:2574 elf32-vax.c:1052 elf64-ppc.c:6348 elf64-s390.c:1623 -#: elf64-sh64.c:3396 elf64-x86-64.c:1821 elfxx-sparc.c:1802 +#: elf-m10300.c:4372 elf32-arm.c:12800 elf32-cr16.c:2451 elf32-cris.c:3057 +#: elf32-hppa.c:1894 elf32-i370.c:503 elf32-i386.c:2182 elf32-lm32.c:1868 +#: elf32-m32r.c:1927 elf32-m68k.c:3253 elf32-s390.c:1652 elf32-sh.c:2931 +#: elf32-tic6x.c:2162 elf32-tilepro.c:1940 elf32-vax.c:1041 elf64-s390.c:1635 +#: elf64-sh64.c:3381 elf64-x86-64.c:2176 elfxx-sparc.c:2119 +#: elfxx-tilegx.c:2261 #, c-format msgid "dynamic variable `%s' is zero size" msgstr "variabel dinamik `%s' memiliki ukuran nol" -#: elf.c:329 +#: elf.c:334 msgid "%B: invalid string offset %u >= %lu for section `%s'" msgstr "%B: string ofset tidak valid %u >= %lu untuk bagian `%s'" -#: elf.c:439 +#: elf.c:446 msgid "%B symbol number %lu references nonexistent SHT_SYMTAB_SHNDX section" msgstr "%B nomor simbol %lu referensi tidak ada SHT_SYMTAB_SHNDX bagian" -#: elf.c:595 +#: elf.c:602 msgid "%B: Corrupt size field in group section header: 0x%lx" msgstr "%B: Ukuran bagian korup dalam grup bagian kepala: 0x%lx" -#: elf.c:631 +#: elf.c:638 msgid "%B: invalid SHT_GROUP entry" msgstr "%B: masukan SHT_GROUP tidak valid" -#: elf.c:701 +#: elf.c:708 msgid "%B: no group info for section %A" msgstr "%B: tidak ada informasi grup untuk bagian %A" -#: elf.c:730 elf.c:2960 elflink.c:9912 +#: elf.c:737 elf.c:3121 elflink.c:10135 msgid "%B: warning: sh_link not set for section `%A'" msgstr "%B: peringatan: sh_link tidak diset untuk bagian `%A'" -#: elf.c:749 +#: elf.c:756 msgid "%B: sh_link [%d] in section `%A' is incorrect" msgstr "%B: sh_link [%ld] dalam bagian `%A' tidak benar" -#: elf.c:784 +#: elf.c:791 msgid "%B: unknown [%d] section `%s' in group [%s]" msgstr "%B: tidak diketahui [%d] bagian `%s' dalam grup [%s]" -#: elf.c:1104 +#: elf.c:1041 +msgid "%B: unable to initialize commpress status for section %s" +msgstr "%B: tidak dapat untuk menginisialisasi status kompresi untuk bagian %s" + +#: elf.c:1061 +msgid "%B: unable to initialize decommpress status for section %s" +msgstr "%B: tidak dapat untuk menginisialisasi ekstraksi status untuk bagian %s." + +#: elf.c:1181 #, c-format msgid "" "\n" @@ -766,7 +785,7 @@ msgstr "" "\n" "Kepala Aplikasi:\n" -#: elf.c:1146 +#: elf.c:1223 #, c-format msgid "" "\n" @@ -775,7 +794,7 @@ msgstr "" "\n" "Bagian Dinamis:\n" -#: elf.c:1282 +#: elf.c:1359 #, c-format msgid "" "\n" @@ -784,7 +803,7 @@ msgstr "" "\n" "Definisi Versi:\n" -#: elf.c:1307 +#: elf.c:1384 #, c-format msgid "" "\n" @@ -793,82 +812,82 @@ msgstr "" "\n" "Referensi Versi:\n" -#: elf.c:1312 +#: elf.c:1389 #, c-format msgid " required from %s:\n" msgstr " dibutuhkan dari %s:\n" -#: elf.c:1702 +#: elf.c:1796 msgid "%B: invalid link %lu for reloc section %s (index %u)" msgstr "%B: link tidak valid %lu untuk bagian relokasi %s (indek %u)" -#: elf.c:1870 +#: elf.c:1966 msgid "%B: don't know how to handle allocated, application specific section `%s' [0x%8x]" msgstr "%B: tidak tahu bagaimana menangani alokasi, bagian spesifik aplikasi `%s' [0x%8x]" -#: elf.c:1882 +#: elf.c:1978 msgid "%B: don't know how to handle processor specific section `%s' [0x%8x]" msgstr "%B: tidak tahu bagaimana menangani bagian spesifik prosesor `%s' [0x%8x]" -#: elf.c:1893 +#: elf.c:1989 msgid "%B: don't know how to handle OS specific section `%s' [0x%8x]" msgstr "%B: tidak tahu bagaimana menangani bagian spesifik OS `%s' [0x%8x]" -#: elf.c:1903 +#: elf.c:1999 msgid "%B: don't know how to handle section `%s' [0x%8x]" msgstr "%B: tidak tahu bagaimana menangani bagian `%s' [0x%8x]" -#: elf.c:2500 +#: elf.c:2634 #, c-format msgid "warning: section `%A' type changed to PROGBITS" msgstr "peringatan: bagian `%A' tipe berubah ke PROGBITS" -#: elf.c:2917 +#: elf.c:3078 msgid "%B: sh_link of section `%A' points to discarded section `%A' of `%B'" msgstr "%B: sh_link dari bagian `%A' menunjuk ke bagian terbuang `%A' dari `%B'" -#: elf.c:2940 +#: elf.c:3101 msgid "%B: sh_link of section `%A' points to removed section `%A' of `%B'" msgstr "%B: sh_link dari bagian `%A' menunjuk ke bagian terhapus `%A' dari `%B'" -#: elf.c:4311 +#: elf.c:4527 msgid "%B: The first section in the PT_DYNAMIC segment is not the .dynamic section" msgstr "%B: bagian pertama dalam segmen PT_DYNAMIC tidak dalam bagian .dynamic" -#: elf.c:4338 +#: elf.c:4554 msgid "%B: Not enough room for program headers, try linking with -N" msgstr "%B: tidak cukup ruang untuk kepala aplikasi, coba linking dengan -N" -#: elf.c:4420 -msgid "%B: section %A vma 0x%lx overlaps previous sections" -msgstr "%B: bagian %A vma 0x%lx overlaps bagian sebelumnya" +#: elf.c:4641 +msgid "%B: section %A lma %#lx adjusted to %#lx" +msgstr "%B: bagian %A lma %#lx dibenarkan ke %#lx" -#: elf.c:4515 +#: elf.c:4776 msgid "%B: section `%A' can't be allocated in segment %d" msgstr "%B: bagian `%A' tidak dapat dialokasikan dalam segmen %d" -#: elf.c:4565 +#: elf.c:4824 msgid "%B: warning: allocated section `%s' not in segment" msgstr "%B: peringatan: alokasi bagian `%s' tidak dalam segmen" -#: elf.c:5065 +#: elf.c:5324 msgid "%B: symbol `%s' required but not present" msgstr "%B: simbol `%s' dibutuhkan tetapi tidak ada" -#: elf.c:5404 +#: elf.c:5662 msgid "%B: warning: Empty loadable segment detected, is this intentional ?\n" msgstr "%B: peringatan: loadable segmen kosong terdeteksi, apakah ini sengaja ?\n" -#: elf.c:6370 +#: elf.c:6692 #, c-format msgid "Unable to find equivalent output section for symbol '%s' from section '%s'" msgstr "Tidak dapat menemukan bagian keluaran ekuivalen untuk simbol '%s' dari bagian '%s'" -#: elf.c:7356 +#: elf.c:7692 msgid "%B: unsupported relocation type %s" msgstr "%B: tipe relokasi tidak didukung %s" -#: elf32-arm.c:3149 +#: elf32-arm.c:3617 msgid "" "%B(%s): warning: interworking not enabled.\n" " first occurrence: %B: Thumb call to ARM" @@ -876,7 +895,7 @@ msgstr "" "%B(%s): peringatan: antar-kerja tidak aktif.\n" " pertemuan pertama: %B: Thumb call ke ARM" -#: elf32-arm.c:3190 +#: elf32-arm.c:3664 msgid "" "%B(%s): warning: interworking not enabled.\n" " first occurrence: %B: ARM call to Thumb" @@ -884,40 +903,40 @@ msgstr "" "%B(%s): peringatan: antar-kerja tidak diaktifkan.\n" " pertemuan pertama: %B: ARM panggil ke Thumb" -#: elf32-arm.c:3387 elf32-arm.c:4692 +#: elf32-arm.c:3878 elf32-arm.c:5315 #, c-format msgid "%s: cannot create stub entry %s" msgstr "%s: tidak dapat membuat masukan stub %s" -#: elf32-arm.c:4804 +#: elf32-arm.c:5431 #, c-format msgid "unable to find THUMB glue '%s' for '%s'" msgstr "tidak dapat menemukan THUMB lem '%s' untuk '%s'" -#: elf32-arm.c:4838 +#: elf32-arm.c:5467 #, c-format msgid "unable to find ARM glue '%s' for '%s'" msgstr "tidak dapat menemukan ARM lem '%s' untuk '%s'" -#: elf32-arm.c:5365 +#: elf32-arm.c:6005 msgid "%B: BE8 images only valid in big-endian mode." msgstr "%B: hanya images BE8 valid dalam mode big-endian." #. Give a warning, but do as the user requests anyway. -#: elf32-arm.c:5590 +#: elf32-arm.c:6235 msgid "%B: warning: selected VFP11 erratum workaround is not necessary for target architecture" msgstr "%B: peringatan: memilih VFP11 erratum penyelesaian adalah tidak diperlukan untuk arsitektur target" -#: elf32-arm.c:6130 elf32-arm.c:6150 +#: elf32-arm.c:6779 elf32-arm.c:6799 msgid "%B: unable to find VFP11 veneer `%s'" msgstr "%B: tidak dapat menemukan VFP11 veneer `%s'" -#: elf32-arm.c:6196 +#: elf32-arm.c:6848 #, c-format msgid "Invalid TARGET2 relocation type '%s'." msgstr "Tipe relokasi '%s' TARGET2 tidak valid." -#: elf32-arm.c:6281 +#: elf32-arm.c:6933 msgid "" "%B(%s): warning: interworking not enabled.\n" " first occurrence: %B: thumb call to arm" @@ -925,359 +944,401 @@ msgstr "" "%B(%s): peringatan: antar-kerja tidak aktif.\n" " pertemuan pertama: %B: thumb call ke arm" -#: elf32-arm.c:7003 +#: elf32-arm.c:7717 +msgid "%B(%A+0x%lx):unexpected Thumb instruction '0x%x' in TLS trampoline" +msgstr "%B(%A+0x%lx):tidak terduga instruksi Thumb '0x%x' dalam TLS trampoline" + +#: elf32-arm.c:7756 +msgid "%B(%A+0x%lx):unexpected ARM instruction '0x%x' in TLS trampoline" +msgstr "%B(%A+0x%lx):tidak terduga instruksi ARM '0x%x' dalam TLS trampoline" + +#: elf32-arm.c:8209 msgid "\\%B: Warning: Arm BLX instruction targets Arm function '%s'." msgstr "\\%B: Peringatan: Arm BLK instruksi target Arm fungsi '%s'." -#: elf32-arm.c:7405 +#: elf32-arm.c:8622 msgid "%B: Warning: Thumb BLX instruction targets thumb function '%s'." msgstr "%B: Peringatan: Thumb BLX instruksi target thumb fungsi '%s'." -#: elf32-arm.c:8085 +#: elf32-arm.c:9460 +msgid "%B(%A+0x%lx):unexpected Thumb instruction '0x%x' referenced by TLS_GOTDESC" +msgstr "%B(%A+0x%lx):unexpected Thumb instruction '0x%x' referenced by TLS_GOTDESC" + +#: elf32-arm.c:9483 +msgid "%B(%A+0x%lx):unexpected ARM instruction '0x%x' referenced by TLS_GOTDESC" +msgstr "%B(%A+0x%lx):unexpected ARM instruction '0x%x' referenced by TLS_GOTDESC" + +#: elf32-arm.c:9512 msgid "%B(%A+0x%lx): R_ARM_TLS_LE32 relocation not permitted in shared object" msgstr "%B(%A+0x%lx): R_ARM_TLS_LE32 relokasi tidak diperbolehkan dalam objek terbagi" -#: elf32-arm.c:8300 +#: elf32-arm.c:9727 msgid "%B(%A+0x%lx): Only ADD or SUB instructions are allowed for ALU group relocations" msgstr "%B(%A+0x%lx): Hanya ADD atau SUB instruksi yang diperbolehkan untuk grup ALU relokasi" -#: elf32-arm.c:8340 elf32-arm.c:8427 elf32-arm.c:8510 elf32-arm.c:8595 +#: elf32-arm.c:9767 elf32-arm.c:9854 elf32-arm.c:9937 elf32-arm.c:10022 msgid "%B(%A+0x%lx): Overflow whilst splitting 0x%lx for group relocation %s" msgstr "%B(%A+0x%lx): Overflow ketika membagi 0x%lx untuk relokasi grup %s" -#: elf32-arm.c:8821 elf32-sh.c:3325 elf64-sh64.c:1556 +#: elf32-arm.c:10261 elf32-sh.c:4103 elf64-sh64.c:1544 msgid "%B(%A+0x%lx): %s relocation against SEC_MERGE section" msgstr "%B(%A+0x%lx): %s relokasi terhadap bagian SEC_MERGE" -#: elf32-arm.c:8939 elf32-m68k.c:4134 elf32-xtensa.c:2765 elf64-ppc.c:10743 +#: elf32-arm.c:10372 elf32-m68k.c:4191 elf32-xtensa.c:2802 msgid "%B(%A+0x%lx): %s used with TLS symbol %s" msgstr "%B(%A+0x%lx): %s digunakan dengan simbol TLS %s" -#: elf32-arm.c:8940 elf32-m68k.c:4135 elf32-xtensa.c:2766 elf64-ppc.c:10744 +#: elf32-arm.c:10373 elf32-m68k.c:4192 elf32-xtensa.c:2803 msgid "%B(%A+0x%lx): %s used with non-TLS symbol %s" msgstr "%B(%A+0x%lx): %s digunakan dengan simbol bukan-TLS %s" -#: elf32-arm.c:8997 +#: elf32-arm.c:10453 elf32-tic6x.c:2753 msgid "out of range" msgstr "diluar jangkauan" -#: elf32-arm.c:9001 +#: elf32-arm.c:10457 elf32-tic6x.c:2757 msgid "unsupported relocation" msgstr "relokasi tidak didukung" -#: elf32-arm.c:9009 +#: elf32-arm.c:10465 elf32-tic6x.c:2765 msgid "unknown error" msgstr "error tidak diketahui" -#: elf32-arm.c:9409 +#: elf32-arm.c:10890 msgid "Warning: Clearing the interworking flag of %B because non-interworking code in %B has been linked with it" msgstr "Peringatan: Menghapus tanda antar-kerja dari %B karena bukan kode antar-kerja dalam %B telah dihubungkan dengan itu" -#: elf32-arm.c:9652 +#: elf32-arm.c:10984 +msgid "%B: Unknown mandatory EABI object attribute %d" +msgstr "%B: atribut objek wajib EABI tidak diketahui %d" + +#: elf32-arm.c:10992 +msgid "Warning: %B: Unknown EABI object attribute %d" +msgstr "Peringatan: %B: atribut objek EABI tidak diketahui %d" + +#: elf32-arm.c:11173 msgid "error: %B: Unknown CPU architecture" msgstr "error: %B: Arsitektur CPU tidak diketahui" -#: elf32-arm.c:9690 +#: elf32-arm.c:11211 msgid "error: %B: Conflicting CPU architectures %d/%d" msgstr "error: %B: Profil arsitektur konflik %c/%c" -#: elf32-arm.c:9747 +#: elf32-arm.c:11260 +msgid "Error: %B has both the current and legacy Tag_MPextension_use attributes" +msgstr "Error: %B has both the current and legacy Tag_MPextension_use attributes" + +#: elf32-arm.c:11285 msgid "error: %B uses VFP register arguments, %B does not" msgstr "error: %B menggunakan reguster argumen VFP, %B tidak" -#: elf32-arm.c:9897 +#: elf32-arm.c:11430 +msgid "error: %B: unable to merge virtualization attributes with %B" +msgstr "error: %B: unable to merge virtualization attributes with %B" + +#: elf32-arm.c:11456 msgid "error: %B: Conflicting architecture profiles %c/%c" msgstr "error: %B: Profil arsitektur konflik %c/%c" -#: elf32-arm.c:9921 +#: elf32-arm.c:11557 msgid "Warning: %B: Conflicting platform configuration" msgstr "Peringatan: %B: Konflik konfigurasi platform" -#: elf32-arm.c:9930 +#: elf32-arm.c:11566 msgid "error: %B: Conflicting use of R9" msgstr "error: %B: Konflik penggunaan R9" -#: elf32-arm.c:9942 +#: elf32-arm.c:11578 msgid "error: %B: SB relative addressing conflicts with use of R9" msgstr "error: %B: SB pengalamatan relatif konflik dengan penggunaan dari R9" -#: elf32-arm.c:9955 +#: elf32-arm.c:11591 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 "peringatan: %B menggunakan %u-byte wchar_t tapi keluaran menggunakan %u-byte wchar_t; menggunakan nilai wchar_t melewati objek mungkin gagal" -#: elf32-arm.c:9986 +#: elf32-arm.c:11622 msgid "warning: %B uses %s enums yet the output is to use %s enums; use of enum values across objects may fail" msgstr "peringatan: %B menggunakan %s enums tapi keluaran menggunakan %s enums; menggunakan nilai dari enum dari objek mungkin gagal" -#: elf32-arm.c:9998 +#: elf32-arm.c:11634 msgid "error: %B uses iWMMXt register arguments, %B does not" msgstr "error: %B menggunakan iWMMXt argumen register, %B tidak" -#: elf32-arm.c:10020 +#: elf32-arm.c:11651 msgid "error: fp16 format mismatch between %B and %B" msgstr "error: fp16 format tidak cocok diantara %B dan %B" -#: elf32-arm.c:10063 elf32-arm.c:10156 -msgid "%B: Unknown mandatory EABI object attribute %d" -msgstr "%B: atribut objek wajib EABI tidak diketahui %d" +#: elf32-arm.c:11675 +msgid "DIV usage mismatch between %B and %B" +msgstr "DIV penggunaan tidak cocok diantara %B dan %B" -#: elf32-arm.c:10071 elf32-arm.c:10164 -msgid "Warning: %B: Unknown EABI object attribute %d" -msgstr "Peringatan: %B: atribut objek EABI tidak diketahui %d" - -#: elf32-arm.c:10224 -msgid "error: %B is already in final BE8 format" -msgstr "error: %B telah dalam format akhir BE8" - -#: elf32-arm.c:10300 -msgid "error: Source object %B has EABI version %d, but target %B has EABI version %d" -msgstr "error: Sumber objek %B memiliki versi EABI %d, tetapi target %B memiliki versi EABI %d" - -#: elf32-arm.c:10316 -msgid "error: %B is compiled for APCS-%d, whereas target %B uses APCS-%d" -msgstr "error: %B dikompile untuk APCS-%d, dimana target %B menggunakan APCS-%d" - -#: elf32-arm.c:10341 -msgid "error: %B uses VFP instructions, whereas %B does not" -msgstr "error: %B menggunakan VFP instruksi, dimana %B tidak" - -#: elf32-arm.c:10345 -msgid "error: %B uses FPA instructions, whereas %B does not" -msgstr "error: %B menggunakan FPA instruksi, dimana %B tidak" - -#: elf32-arm.c:10355 -msgid "error: %B uses Maverick instructions, whereas %B does not" -msgstr "error: %B menggunakan Maverick instruksi, dimana %B tidak" - -#: elf32-arm.c:10359 -msgid "error: %B does not use Maverick instructions, whereas %B does" -msgstr "error: %B tidak menggunakan Maveric instruksi, dimana %B menggunakan" - -#: elf32-arm.c:10378 -msgid "error: %B uses software FP, whereas %B uses hardware FP" -msgstr "error: %B menggunakan software FP, dimana %B menggunakan hardware FP" - -#: elf32-arm.c:10382 -msgid "error: %B uses hardware FP, whereas %B uses software FP" -msgstr "error: %B menggunakan hardware FP, dimana %B menggunakan software FP" +#: elf32-arm.c:11694 +msgid "%B has has both the current and legacy Tag_MPextension_use attributes" +msgstr "%B has has both the current and legacy Tag_MPextension_use attributes" #. 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:10429 elf32-bfin.c:5082 elf32-cris.c:4110 elf32-m68hc1x.c:1280 -#: elf32-m68k.c:1169 elf32-score.c:4039 elf32-score7.c:3876 elf32-vax.c:540 -#: elfxx-mips.c:12755 +#: elf32-arm.c:11782 elf32-bfin.c:5079 elf32-cris.c:4169 elf32-m68hc1x.c:1282 +#: elf32-m68k.c:1236 elf32-score.c:3994 elf32-score7.c:3800 elf32-vax.c:529 +#: elfxx-mips.c:14103 #, c-format msgid "private flags = %lx:" msgstr "tanda private = %lx:" -#: elf32-arm.c:10438 +#: elf32-arm.c:11791 #, c-format msgid " [interworking enabled]" msgstr " [antar-kerja aktif]" -#: elf32-arm.c:10446 +#: elf32-arm.c:11799 #, c-format msgid " [VFP float format]" msgstr " [VFP float format]" -#: elf32-arm.c:10448 +#: elf32-arm.c:11801 #, c-format msgid " [Maverick float format]" msgstr " [Maverick float format]" -#: elf32-arm.c:10450 +#: elf32-arm.c:11803 #, c-format msgid " [FPA float format]" msgstr " [FPA float format]" -#: elf32-arm.c:10459 +#: elf32-arm.c:11812 #, c-format msgid " [new ABI]" msgstr " [ABI baru]" -#: elf32-arm.c:10462 +#: elf32-arm.c:11815 #, c-format msgid " [old ABI]" msgstr " [ABI lama]" -#: elf32-arm.c:10465 +#: elf32-arm.c:11818 #, c-format msgid " [software FP]" msgstr " [software FP]" -#: elf32-arm.c:10474 +#: elf32-arm.c:11827 #, c-format msgid " [Version1 EABI]" msgstr " [EABI Versi 1]" -#: elf32-arm.c:10477 elf32-arm.c:10488 +#: elf32-arm.c:11830 elf32-arm.c:11841 #, c-format msgid " [sorted symbol table]" msgstr " [simbol tabel terurut]" -#: elf32-arm.c:10479 elf32-arm.c:10490 +#: elf32-arm.c:11832 elf32-arm.c:11843 #, c-format msgid " [unsorted symbol table]" msgstr " [simbol tabel tidak terurut]" -#: elf32-arm.c:10485 +#: elf32-arm.c:11838 #, c-format msgid " [Version2 EABI]" msgstr " [EABI Versi 2]" -#: elf32-arm.c:10493 +#: elf32-arm.c:11846 #, c-format msgid " [dynamic symbols use segment index]" msgstr " [simbol dinamis menggunakan segmen indek]" -#: elf32-arm.c:10496 +#: elf32-arm.c:11849 #, c-format msgid " [mapping symbols precede others]" msgstr " [simbol map mendahului yang lain]" -#: elf32-arm.c:10503 +#: elf32-arm.c:11856 #, c-format msgid " [Version3 EABI]" msgstr " [EABI Versi 3]" -#: elf32-arm.c:10507 +#: elf32-arm.c:11860 #, c-format msgid " [Version4 EABI]" msgstr " [EABI Versi 4]" -#: elf32-arm.c:10511 +#: elf32-arm.c:11864 #, c-format msgid " [Version5 EABI]" msgstr " [EABI Versi 5]" -#: elf32-arm.c:10514 +#: elf32-arm.c:11867 #, c-format msgid " [BE8]" msgstr " [BE8]" -#: elf32-arm.c:10517 +#: elf32-arm.c:11870 #, c-format msgid " [LE8]" msgstr " [LE8]" -#: elf32-arm.c:10523 +#: elf32-arm.c:11876 #, c-format msgid " <EABI version unrecognised>" msgstr " <EABI versi tidak dikenal>" -#: elf32-arm.c:10530 +#: elf32-arm.c:11883 #, c-format msgid " [relocatable executable]" msgstr " [relocatable executable]" -#: elf32-arm.c:10533 +#: elf32-arm.c:11886 #, c-format msgid " [has entry point]" msgstr " [memiliki titik masuk]" -#: elf32-arm.c:10538 +#: elf32-arm.c:11891 #, c-format msgid "<Unrecognised flag bits set>" msgstr "<Tanda bit tidak dikenal terset>" -#: elf32-arm.c:10783 elf32-i386.c:1300 elf32-s390.c:998 elf32-xtensa.c:1000 -#: elf64-s390.c:952 elf64-x86-64.c:1082 elfxx-sparc.c:1121 +#: elf32-arm.c:12189 elf32-i386.c:1461 elf32-s390.c:1000 elf32-tic6x.c:2829 +#: elf32-tilepro.c:1336 elf32-xtensa.c:1009 elf64-s390.c:960 +#: elf64-x86-64.c:1364 elfxx-sparc.c:1371 elfxx-tilegx.c:1586 msgid "%B: bad symbol index: %d" msgstr "%B: memiliki indek simbol: %d" -#: elf32-arm.c:10904 elf64-x86-64.c:1242 elf64-x86-64.c:1411 elfxx-mips.c:7870 +#: elf32-arm.c:12337 elf64-x86-64.c:1561 elf64-x86-64.c:1732 elfxx-mips.c:8223 msgid "%B: relocation %s against `%s' can not be used when making a shared object; recompile with -fPIC" msgstr "%B: relokasi %s terhadap `%s' tidak dapat digunkan ketika membuat sebuah objek terbagi; rekompile dengan -fPIC" -#: elf32-arm.c:11893 +#: elf32-arm.c:13460 #, c-format msgid "Errors encountered processing file %s" msgstr "Errors ditemui dalam pemrosesan berkas %s" -#: elf32-arm.c:13339 +#: elf32-arm.c:14837 msgid "%B: error: Cortex-A8 erratum stub is allocated in unsafe location" msgstr "%B: error: Cortex-A8 erratum stub dialokasikan dalam lokasi yang tidak aman" #. There's not much we can do apart from complain if this #. happens. -#: elf32-arm.c:13366 +#: elf32-arm.c:14864 msgid "%B: error: Cortex-A8 erratum stub out of range (input file too large)" msgstr "%B: error: Cortex-A8 erratum stub diluar dari jangkauan (berkas masukan terlalu besar)" -#: elf32-arm.c:13457 elf32-arm.c:13479 +#: elf32-arm.c:14958 elf32-arm.c:14980 msgid "%B: error: VFP11 veneer out of range" msgstr "%B: error: VFP11 veneer diluar jangkauan" -#: elf32-avr.c:1259 elf32-bfin.c:3208 elf32-cris.c:2097 elf32-fr30.c:624 -#: elf32-frv.c:4122 elf32-i860.c:1226 elf32-ip2k.c:1510 elf32-iq2000.c:699 -#: elf32-m32c.c:568 elf32-mep.c:549 elf32-moxie.c:299 elf32-msp430.c:501 -#: elf32-mt.c:406 elf32-openrisc.c:419 elf32-v850.c:1709 elf32-xstormy16.c:956 -#: elf64-mmix.c:1541 +#: elf32-arm.c:15518 +msgid "error: %B is already in final BE8 format" +msgstr "error: %B telah dalam format akhir BE8" + +#: elf32-arm.c:15594 +msgid "error: Source object %B has EABI version %d, but target %B has EABI version %d" +msgstr "error: Sumber objek %B memiliki versi EABI %d, tetapi target %B memiliki versi EABI %d" + +#: elf32-arm.c:15610 +msgid "error: %B is compiled for APCS-%d, whereas target %B uses APCS-%d" +msgstr "error: %B dikompile untuk APCS-%d, dimana target %B menggunakan APCS-%d" + +#: elf32-arm.c:15635 +msgid "error: %B uses VFP instructions, whereas %B does not" +msgstr "error: %B menggunakan VFP instruksi, dimana %B tidak" + +#: elf32-arm.c:15639 +msgid "error: %B uses FPA instructions, whereas %B does not" +msgstr "error: %B menggunakan FPA instruksi, dimana %B tidak" + +#: elf32-arm.c:15649 +msgid "error: %B uses Maverick instructions, whereas %B does not" +msgstr "error: %B menggunakan Maverick instruksi, dimana %B tidak" + +#: elf32-arm.c:15653 +msgid "error: %B does not use Maverick instructions, whereas %B does" +msgstr "error: %B tidak menggunakan Maveric instruksi, dimana %B menggunakan" + +#: elf32-arm.c:15672 +msgid "error: %B uses software FP, whereas %B uses hardware FP" +msgstr "error: %B menggunakan software FP, dimana %B menggunakan hardware FP" + +#: elf32-arm.c:15676 +msgid "error: %B uses hardware FP, whereas %B uses software FP" +msgstr "error: %B menggunakan hardware FP, dimana %B menggunakan software FP" + +#: elf32-avr.c:1229 elf32-bfin.c:3221 elf32-cris.c:2089 elf32-epiphany.c:567 +#: elf32-fr30.c:617 elf32-frv.c:4113 elf32-i860.c:1219 elf32-ip2k.c:1479 +#: elf32-iq2000.c:692 elf32-m32c.c:561 elf32-mep.c:543 elf32-moxie.c:290 +#: elf32-msp430.c:494 elf32-mt.c:399 elf32-openrisc.c:412 elf32-tilepro.c:3222 +#: elf32-v850.c:2151 elf32-xstormy16.c:943 elf64-mmix.c:1598 +#: elfxx-tilegx.c:3585 msgid "internal error: dangerous relocation" msgstr "internal error: relokasi berbahaya" -#: elf32-avr.c:2409 elf32-hppa.c:605 elf32-m68hc1x.c:165 elf64-ppc.c:4141 +#: elf32-avr.c:2415 elf32-hppa.c:598 elf32-m68hc1x.c:166 msgid "%B: cannot create stub entry %s" msgstr "%B: tidak dapat membuat masukan stub %s" -#: elf32-bfin.c:1581 +#: elf32-bfin.c:107 elf32-bfin.c:363 +msgid "relocation should be even number" +msgstr "relocation should be even number" + +#: elf32-bfin.c:1593 msgid "%B(%A+0x%lx): unresolvable relocation against symbol `%s'" msgstr "%B(%A+0x%lx): relokasi tidak teresolf terhadap simbol `%s'" -#: elf32-bfin.c:1614 elf32-i386.c:4026 elf32-m68k.c:4176 elf32-s390.c:3067 -#: elf64-s390.c:3026 elf64-x86-64.c:3697 +#: elf32-bfin.c:1626 elf32-i386.c:4307 elf32-m68k.c:4233 elf32-s390.c:3055 +#: elf64-s390.c:3030 elf64-x86-64.c:4151 msgid "%B(%A+0x%lx): reloc against `%s': error %d" msgstr "%B(%A+0x%lx): relokasi terhadap `%s': error %d" -#: elf32-bfin.c:2714 +#: elf32-bfin.c:2725 msgid "%B: relocation at `%A+0x%x' references symbol `%s' with nonzero addend" msgstr "%B: relokasi di `%A+0x%x' simbol referensi `%s' dengan bukan nol ditambahkan" -#: elf32-bfin.c:2728 elf32-frv.c:2904 +#: elf32-bfin.c:2741 msgid "relocation references symbol not defined in the module" msgstr "relokasi referensi simbol tidak didefinisikan dalam modul" -#: elf32-bfin.c:2825 +#: elf32-bfin.c:2838 msgid "R_BFIN_FUNCDESC references dynamic symbol with nonzero addend" msgstr "R_BFIN_FUNCDESC referensi simbol dinamis dengan bukan nol ditambahkan" -#: elf32-bfin.c:2866 elf32-bfin.c:2989 elf32-frv.c:3641 elf32-frv.c:3762 +#: elf32-bfin.c:2879 elf32-bfin.c:3002 msgid "cannot emit fixups in read-only section" msgstr "tidak dapat mengeluarkan fixups dalam bagian baca-saja" -#: elf32-bfin.c:2897 elf32-bfin.c:3027 elf32-frv.c:3672 elf32-frv.c:3806 -#: elf32-lm32.c:1104 +#: elf32-bfin.c:2910 elf32-bfin.c:3040 elf32-lm32.c:1103 elf32-sh.c:5016 msgid "cannot emit dynamic relocations in read-only section" msgstr "tidak dapat mengeluarkan relokasi dinamis dalam bagian baca-saja" -#: elf32-bfin.c:2947 +#: elf32-bfin.c:2960 msgid "R_BFIN_FUNCDESC_VALUE references dynamic symbol with nonzero addend" msgstr "R_BFIN_FUNCDESC_VALUE referensi simbol dinamis dengan bukan nol ditambahkan" -#: elf32-bfin.c:3112 +#: elf32-bfin.c:3125 msgid "relocations between different segments are not supported" msgstr "relokasi diantara segmen berbeda tidak didukung" -#: elf32-bfin.c:3113 +#: elf32-bfin.c:3126 msgid "warning: relocation references a different segment" msgstr "peringatan: relokasi referensi sebuah segmen berbeda" -#: elf32-bfin.c:4974 elf32-frv.c:6408 +#: elf32-bfin.c:4971 msgid "%B: unsupported relocation type %i" msgstr "%B: tipe relokasi %i tidak didukung" -#: elf32-bfin.c:5127 elf32-frv.c:6816 +#: elf32-bfin.c:5125 elf32-frv.c:6808 #, c-format msgid "%s: cannot link non-fdpic object file into fdpic executable" msgstr "%s: tidak dapat menghubungkan berkas objek bukan-fdpic kedalam aplikasi fdpic" -#: elf32-bfin.c:5131 elf32-frv.c:6820 +#: elf32-bfin.c:5129 elf32-frv.c:6812 #, c-format msgid "%s: cannot link fdpic object file into non-fdpic executable" msgstr "%s: tidak dapat menghubungkan berkas objek fdpic kedalam aplikasi bukan-fdpic" -#: elf32-cris.c:1169 +#: elf32-bfin.c:5283 +#, c-format +msgid "*** check this relocation %s" +msgstr "*** periksa relokasi ini %s" + +#: elf32-cris.c:1176 msgid "%B, section %A: unresolvable relocation %s against symbol `%s'" msgstr "%B, bagian %A: relokasi tidak teresolf %s terhadap simbol `%s'" @@ -1289,16 +1350,16 @@ msgstr "%B, bagian %A: Bukan PLT atau GOT untuk relokasi %s terhadap simbol `%s' msgid "%B, section %A: No PLT for relocation %s against symbol `%s'" msgstr "%B, bagian %A: Bukan PLT untuk relokasi %s terhadap simbol `%s'" -#: elf32-cris.c:1246 elf32-cris.c:1379 elf32-cris.c:1641 elf32-cris.c:1730 -#: elf32-cris.c:1883 +#: elf32-cris.c:1246 elf32-cris.c:1379 elf32-cris.c:1639 elf32-cris.c:1722 +#: elf32-cris.c:1875 elf32-tic6x.c:2662 msgid "[whose name is lost]" msgstr "[yang namanya hilang]" -#: elf32-cris.c:1365 +#: elf32-cris.c:1365 elf32-tic6x.c:2647 msgid "%B, section %A: relocation %s with non-zero addend %d against local symbol" msgstr "%B, bagian %A: relokasi %s dengan bukan-nol ditambahkan %d terhadap simbol lokal" -#: elf32-cris.c:1373 elf32-cris.c:1724 elf32-cris.c:1877 +#: elf32-cris.c:1373 elf32-cris.c:1716 elf32-cris.c:1869 elf32-tic6x.c:2655 msgid "%B, section %A: relocation %s with non-zero addend %d against symbol `%s'" msgstr "%B, bagian %A: relokasi %s dengan bukan-nol ditambakan %d terhadap simbol `%s'" @@ -1311,23 +1372,23 @@ msgid "%B, section %A: relocation %s with no GOT created" msgstr "%B, bagian %A: relokasi %s dengan tidak GOT dibuat" #. We shouldn't get here for GCC-emitted code. -#: elf32-cris.c:1632 +#: elf32-cris.c:1630 msgid "%B, section %A: relocation %s has an undefined reference to `%s', perhaps a declaration mixup?" msgstr "%B, bagian %A: relokasi %s memiliki sebuah referensi tidak terdefinisi ke `%s', mungkin sebuah kesalahan deklarasi?" -#: elf32-cris.c:2010 +#: elf32-cris.c:2002 msgid "%B, section %A: relocation %s is not allowed for symbol: `%s' which is defined outside the program, perhaps a declaration mixup?" msgstr "%B, bagian %A: relokasi %s tidak diperbolehkan untuk simbol global: `%s' yang didefinisikan diluar aplikasi, mungkin sebuah kesalahan deklarasi?" -#: elf32-cris.c:2063 +#: elf32-cris.c:2055 msgid "(too many global variables for -fpic: recompile with -fPIC)" msgstr "(terlalu banyak variabel global untuk -fpic: rekompilasi dengan -fPIC)" -#: elf32-cris.c:2070 +#: elf32-cris.c:2062 msgid "(thread-local data too big for -fpic or -msmall-tls: recompile with -fPIC or -mno-small-tls)" msgstr "(thread-local data terlalu besar untuk -fpic atau -msmall-tls: rekompilasi dengan -fPIC atau -mno-small-tls)" -#: elf32-cris.c:3204 +#: elf32-cris.c:3261 msgid "" "%B, section %A:\n" " v10/v32 compatible object %s must not contain a PIC relocation" @@ -1335,7 +1396,7 @@ msgstr "" "%B, bagian %A:\n" " v10/v32 objek kompatibel %s harus berisi sebuah relokasi PIC" -#: elf32-cris.c:3309 +#: elf32-cris.c:3366 msgid "" "%B, section %A:\n" " relocation %s not valid in a shared object; typically an option mixup, recompile with -fPIC" @@ -1343,7 +1404,7 @@ msgstr "" "%B, bagian %A:\n" " relokasi %s tidak valid dalam sebuah objek terbagi; umumnya sebuah kesalahan pilihan, rekompile dengan -fPIC" -#: elf32-cris.c:3523 +#: elf32-cris.c:3580 msgid "" "%B, section %A:\n" " relocation %s should not be used in a shared object; recompile with -fPIC" @@ -1351,7 +1412,7 @@ msgstr "" "%B, bagian %A:\n" " relokasi %s seharusnya digunakan dalam sebuah objek terbagi; rekompile dengan -fPIC" -#: elf32-cris.c:3940 +#: elf32-cris.c:4002 msgid "" "%B, section `%A', to symbol `%s':\n" " relocation %s should not be used in a shared object; recompile with -fPIC" @@ -1359,129 +1420,161 @@ msgstr "" "%B, bagian `%A', ke simbol `%s':\n" " relokasi %s seharusnya digunakan dalam sebuah objek terbagi; rekompilasi dengan -fPIC" -#: elf32-cris.c:4059 +#: elf32-cris.c:4118 msgid "Unexpected machine number" msgstr "Nomor mesin tidak terduga" -#: elf32-cris.c:4113 +#: elf32-cris.c:4172 #, c-format msgid " [symbols have a _ prefix]" msgstr " [simbol memiliki sebuah awalan _]" -#: elf32-cris.c:4116 +#: elf32-cris.c:4175 #, c-format msgid " [v10 and v32]" msgstr " [v10 dan v32]" -#: elf32-cris.c:4119 +#: elf32-cris.c:4178 #, c-format msgid " [v32]" msgstr " [v32]" -#: elf32-cris.c:4164 +#: elf32-cris.c:4223 msgid "%B: uses _-prefixed symbols, but writing file with non-prefixed symbols" msgstr "%B: menggunakan awalan _ simbol, tetapi menulis berkas dengan simbol tanpa awalan" -#: elf32-cris.c:4165 +#: elf32-cris.c:4224 msgid "%B: uses non-prefixed symbols, but writing file with _-prefixed symbols" msgstr "%B: menggunakan simbol tanpa awalan, tetapi menulis berkas dengan simbol awalan _" -#: elf32-cris.c:4184 +#: elf32-cris.c:4243 msgid "%B contains CRIS v32 code, incompatible with previous objects" msgstr "%B berisi kode CRIS v32, tidak kompatibel dengan objek sebelumnya" -#: elf32-cris.c:4186 +#: elf32-cris.c:4245 msgid "%B contains non-CRIS-v32 code, incompatible with previous objects" msgstr "%B berisi kode bukan CRIS v32, tidak kompatibel dengan objek sebelumnya" -#: elf32-frv.c:1507 elf32-frv.c:1656 +#: elf32-dlx.c:142 +#, c-format +msgid "BFD Link Error: branch (PC rel16) to section (%s) not supported" +msgstr "BFD Link Error: branch (PC rel16) to section (%s) not supported" + +#: elf32-dlx.c:204 +#, c-format +msgid "BFD Link Error: jump (PC rel26) to section (%s) not supported" +msgstr "BFD Link Error: jump (PC rel26) to section (%s) not supported" + +#. Only if it's not an unresolved symbol. +#: elf32-epiphany.c:563 elf32-ip2k.c:1475 +msgid "unsupported relocation between data/insn address spaces" +msgstr "relokasi tidak didukung diantara data/insn ruang alamat" + +#: elf32-frv.c:1509 elf32-frv.c:1658 msgid "relocation requires zero addend" msgstr "relokasi membutuhkan penambahan nol" -#: elf32-frv.c:2891 -msgid "%B(%A+0x%x): relocation to `%s+%x' may have caused the error above" -msgstr "%B(%A+0x%x): relokasi ke `%s+%x' mungkin menyebabkan error diatas" +#: elf32-frv.c:2888 +msgid "%H: relocation to `%s+%v' may have caused the error above\n" +msgstr "%H: relokasi ke `%s+%v' mungkin telah menyebabkan error diatas\n" -#: elf32-frv.c:2980 -msgid "R_FRV_GETTLSOFF not applied to a call instruction" -msgstr "R_FRV_GETTLSOFF tidak teraplikasi untuk sebuah panggilan instruksi" +#: elf32-frv.c:2905 +msgid "%H: relocation references symbol not defined in the module\n" +msgstr "%H: relokasi referensi simbol tidak didefinisikan dalam modul\n" + +#: elf32-frv.c:2981 +msgid "%H: R_FRV_GETTLSOFF not applied to a call instruction\n" +msgstr "%H: R_FRV_GETTLSOFF tidak teraplikasi untuk sebuah panggilan instruksi\n" #: elf32-frv.c:3022 -msgid "R_FRV_GOTTLSDESC12 not applied to an lddi instruction" -msgstr "R_FRV_GOTTLSDESC12 tidak teraplikasi untuk sebuah instruksi lddi" +msgid "%H: R_FRV_GOTTLSDESC12 not applied to an lddi instruction\n" +msgstr "%H: R_FRV_GOTTLSDESC12 tidak teraplikasi untuk sebuah instruksi lddi\n" #: elf32-frv.c:3093 -msgid "R_FRV_GOTTLSDESCHI not applied to a sethi instruction" -msgstr "R_FRV_GOTTLSDESCHI tidak teraplikasi untuk sebuah instruksi sethi" +msgid "%H: R_FRV_GOTTLSDESCHI not applied to a sethi instruction\n" +msgstr "%H: R_FRV_GOTTLSDESCHI tidak teraplikasi untuk sebuah instruksi sethi\n" #: elf32-frv.c:3130 -msgid "R_FRV_GOTTLSDESCLO not applied to a setlo or setlos instruction" -msgstr "R_FRV_GOTTLSDESCLO tidak teraplikasi untuk sebuah instruksi setlo atau setlos" +msgid "%H: R_FRV_GOTTLSDESCLO not applied to a setlo or setlos instruction\n" +msgstr "%H: R_FRV_GOTTLSDESCLO tidak teraplikasi untuk sebuah instruksi setlo atau setlos\n" + +#: elf32-frv.c:3177 +msgid "%H: R_FRV_TLSDESC_RELAX not applied to an ldd instruction\n" +msgstr "%H: R_FRV_TLSDESC_RELAX tidak teraplikasi untuk sebuah instruksi ldd\n" -#: elf32-frv.c:3178 -msgid "R_FRV_TLSDESC_RELAX not applied to an ldd instruction" -msgstr "R_FRV_TLSDESC_RELAX tidak teraplikasi untuk sebuah instruksi ldd" +#: elf32-frv.c:3261 +msgid "%H: R_FRV_GETTLSOFF_RELAX not applied to a calll instruction\n" +msgstr "%H: R_FRV_GETTLSOFF_RELAX tidak teraplikasi untuk sebuah instruksi calll\n" -#: elf32-frv.c:3262 -msgid "R_FRV_GETTLSOFF_RELAX not applied to a calll instruction" -msgstr "R_FRV_GETTLSOFF_RELAX tidak teraplikasi untuk sebuah instruksi calll" +#: elf32-frv.c:3315 +msgid "%H: R_FRV_GOTTLSOFF12 not applied to an ldi instruction\n" +msgstr "%H: R_FRV_GETTLSOFF12 tidak teraplikasi untuk sebuah instruksi ldi\n" -#: elf32-frv.c:3317 -msgid "R_FRV_GOTTLSOFF12 not applied to an ldi instruction" -msgstr "R_FRV_GETTLSOFF12 tidak teraplikasi untuk sebuah instruksi ldi" +#: elf32-frv.c:3345 +msgid "%H: R_FRV_GOTTLSOFFHI not applied to a sethi instruction\n" +msgstr "%H: R_FRV_GOTTLSOFFHI tidak teraplikasi untuk sebuah instruksi sethi\n" -#: elf32-frv.c:3347 -msgid "R_FRV_GOTTLSOFFHI not applied to a sethi instruction" -msgstr "R_FRV_GOTTLSOFFHI tidak teraplikasi untuk sebuah instruksi sethi" +#: elf32-frv.c:3374 +msgid "%H: R_FRV_GOTTLSOFFLO not applied to a setlo or setlos instruction\n" +msgstr "%H: R_FRV_GOTTLSOFFLO tidak teraplikasi untuk sebuah instruksi setlo atau setlos\n" -#: elf32-frv.c:3376 -msgid "R_FRV_GOTTLSOFFLO not applied to a setlo or setlos instruction" -msgstr "R_FRV_GOTTLSOFFLO tidak teraplikasi untuk sebuah instruksi setlo atau setlos" +#: elf32-frv.c:3404 +msgid "%H: R_FRV_TLSOFF_RELAX not applied to an ld instruction\n" +msgstr "%H: R_FRV_TLSOFF_RELAX tidak teraplikasi untuk sebuah instruksi ld\n" -#: elf32-frv.c:3407 -msgid "R_FRV_TLSOFF_RELAX not applied to an ld instruction" -msgstr "R_FRV_TLSOFF_RELAX tidak teraplikasi untuk sebuah instruksi ld" +#: elf32-frv.c:3449 +msgid "%H: R_FRV_TLSMOFFHI not applied to a sethi instruction\n" +msgstr "%H: R_FRV_TLSMOFFHI tidak teraplikasi untuk sebuah instruksi sethi\n" -#: elf32-frv.c:3452 -msgid "R_FRV_TLSMOFFHI not applied to a sethi instruction" -msgstr "R_FRV_TLSMOFFHI tidak teraplikasi untuk sebuah instruksi sethi" +#: elf32-frv.c:3476 +msgid "R_FRV_TLSMOFFLO not applied to a setlo or setlos instruction\n" +msgstr "R_FRV_TLSMOFFLO tidak teraplikasi untuk sebuah instruksi setlo atau setlos\n" -#: elf32-frv.c:3479 -msgid "R_FRV_TLSMOFFLO not applied to a setlo or setlos instruction" -msgstr "R_FRV_TLSMOFFLO tidak teraplikasi untuk sebuah instruksi setlo atau setlos" +#: elf32-frv.c:3597 +msgid "%H: R_FRV_FUNCDESC references dynamic symbol with nonzero addend\n" +msgstr "%H: R_FRV_FUNCDESC referensi simbol dinamis dengan penambahan bukan nol\n" -#: elf32-frv.c:3600 -msgid "R_FRV_FUNCDESC references dynamic symbol with nonzero addend" -msgstr "R_FRV_FUNCDESC referensi simbol dinamis dengan penambahan bukan nol" +#: elf32-frv.c:3638 elf32-frv.c:3760 +msgid "%H: cannot emit fixups in read-only section\n" +msgstr "%H: tidak dapat mengeluarkan fixups dalam bagian baca-saja\n" -#: elf32-frv.c:3720 -msgid "R_FRV_FUNCDESC_VALUE references dynamic symbol with nonzero addend" -msgstr "R_FRV_FUNCDESC_VALUE referensi simbol dinamis dengan penambahan bukan nol" +#: elf32-frv.c:3669 elf32-frv.c:3803 +msgid "%H: cannot emit dynamic relocations in read-only section\n" +msgstr "%H: tidak dapat mengeluarkan relokasi dinamis dalam bagian baca-saja\n" -#: elf32-frv.c:3977 elf32-frv.c:4133 -msgid "%B(%A+0x%lx): reloc against `%s': %s" -msgstr "%B(%A+0x%lx): relokasi terhadap `%s': %s" +#: elf32-frv.c:3718 +msgid "%H: R_FRV_FUNCDESC_VALUE references dynamic symbol with nonzero addend\n" +msgstr "%H: R_FRV_FUNCDESC_VALUE referensi simbol dinamis dengan penambahan bukan nol\n" -#: elf32-frv.c:3979 elf32-frv.c:3983 -msgid "relocation references a different segment" -msgstr "relokasi referensi ke segmen berbeda" +#: elf32-frv.c:3974 +msgid "%H: reloc against `%s' references a different segment\n" +msgstr "%H: relokasi terhadap `%s' referensi ke segmen berbeda\n" -#: elf32-frv.c:6730 +#: elf32-frv.c:4124 +msgid "%H: reloc against `%s': %s\n" +msgstr "%H: relokasi terhadap `%s': %s\n" + +#: elf32-frv.c:6400 +msgid "%B: unsupported relocation type %i\n" +msgstr "%B: tipe relokasi %i tidak didukung\n" + +#: elf32-frv.c:6722 #, c-format msgid "%s: compiled with %s and linked with modules that use non-pic relocations" msgstr "%s: terkompile dengan %s dan terhubung dengan modul yang menggunakan relokasi bukan-pic" -#: elf32-frv.c:6783 elf32-iq2000.c:852 elf32-m32c.c:814 +#: elf32-frv.c:6775 elf32-iq2000.c:845 elf32-m32c.c:807 #, c-format msgid "%s: compiled with %s and linked with modules compiled with %s" msgstr "%s: terkompile dengan %s dan terhubung dengan modul terkompile dengan %s" -#: elf32-frv.c:6795 +#: elf32-frv.c:6787 #, c-format msgid "%s: uses different unknown e_flags (0x%lx) fields than previous modules (0x%lx)" msgstr "%s: menggunakan bagian e_flags (0x%lx) berbeda yang tidak dikenal dari modul sebelumnya (0x%lx)" -#: elf32-frv.c:6845 elf32-iq2000.c:889 elf32-m32c.c:850 elf32-mt.c:583 +#: elf32-frv.c:6837 elf32-iq2000.c:882 elf32-m32c.c:843 elf32-mt.c:576 +#: elf32-rx.c:3001 #, c-format msgid "private flags = 0x%lx:" msgstr "private flags = 0x%lx:" @@ -1490,113 +1583,125 @@ msgstr "private flags = 0x%lx:" msgid "%B: Relocations in generic ELF (EM: %d)" msgstr "%B: Relokasi dalam ELF standar (EM: %d)" -#: elf32-hppa.c:854 elf32-hppa.c:3570 +#: elf32-hppa.c:850 elf32-hppa.c:3598 msgid "%B(%A+0x%lx): cannot reach %s, recompile with -ffunction-sections" msgstr "%B(%A+0x%lx): tidak dapat mencapai %s, rekompile dengan -ffunction-sections" -#: elf32-hppa.c:1286 +#: elf32-hppa.c:1284 msgid "%B: relocation %s can not be used when making a shared object; recompile with -fPIC" msgstr "%B: relokasi %s tidak dapat digunakan ketika membuat sebuah objek terbagi; rekompile dengan -fPIC" -#: elf32-hppa.c:2780 +#: elf32-hppa.c:2791 msgid "%B: duplicate export stub %s" msgstr "%B: duplikasi export stub %s" -#: elf32-hppa.c:3406 +#: elf32-hppa.c:3437 msgid "%B(%A+0x%lx): %s fixup for insn 0x%x is not supported in a non-shared link" msgstr "%B(%A+0x%lx): %s fixup untuk insn 0x%x tidak didukung dalam sebuah sambunga tidak terbagi" -#: elf32-hppa.c:4260 +#: elf32-hppa.c:4284 msgid "%B(%A+0x%lx): cannot handle %s for %s" msgstr "%B(%A+0x%lx): tidak dapat menangani %s untuk %s" -#: elf32-hppa.c:4567 +#: elf32-hppa.c:4603 msgid ".got section not immediately after .plt section" msgstr "bagian .got tidak mengikuti bagian .plt" -#: elf32-i386.c:371 elf32-ppc.c:1666 elf32-s390.c:379 elf64-ppc.c:2283 -#: elf64-s390.c:403 elf64-x86-64.c:234 +#. Unknown relocation. +#: elf32-i386.c:373 elf32-m68k.c:384 elf32-ppc.c:1676 elf32-s390.c:379 +#: elf32-tic6x.c:2684 elf64-ppc.c:2300 elf64-s390.c:403 elf64-x86-64.c:265 msgid "%B: invalid relocation type %d" msgstr "%B: tipe relokasi %d tidak valid" -#: elf32-i386.c:1246 elf64-x86-64.c:1029 +#: elf32-i386.c:1404 elf64-x86-64.c:1308 msgid "%B: TLS transition from %s to %s against `%s' at 0x%lx in section `%A' failed" msgstr "%B: TLS transisi dari %s ke %s terhadap `%s' di 0x%lx dalam bagian `%A' gagal" -#: elf32-i386.c:1387 elf32-i386.c:2970 elf64-x86-64.c:1171 elf64-x86-64.c:2680 +#: elf32-i386.c:1549 elf32-i386.c:3244 elf64-x86-64.c:1487 elf64-x86-64.c:3125 +#: elfxx-sparc.c:3083 msgid "%B: relocation %s against STT_GNU_IFUNC symbol `%s' isn't handled by %s" msgstr "%B: relokasi %s terhadap STT_GNU_IFUNC simbol `%s' tidak ditangani oleh %s" -#: elf32-i386.c:1548 elf32-s390.c:1180 elf32-sh.c:5065 elf32-xtensa.c:1173 -#: elf64-s390.c:1143 elfxx-sparc.c:1257 +#: elf32-i386.c:1711 elf32-s390.c:1182 elf32-sh.c:6362 elf32-tilepro.c:1434 +#: elf32-xtensa.c:1182 elf64-s390.c:1151 elfxx-sparc.c:1548 +#: elfxx-tilegx.c:1701 msgid "%B: `%s' accessed both as normal and thread local symbol" msgstr "%B: `%s' terakses kedua sebagai normal dan memperlakukan lokal simbol" -#: elf32-i386.c:2805 +#: elf32-i386.c:2539 elf64-x86-64.c:2506 +msgid "%P: %B: warning: relocation against `%s' in readonly section `%A'.\n" +msgstr "%P: %B: peringatan: relokasi terhadap `%s' dalam bagian baca-saja `%A'.\n" + +#: elf32-i386.c:2629 elf64-x86-64.c:2593 +msgid "%P: %B: warning: relocation in readonly section `%A'.\n" +msgstr "%P: %B: peringatan: relokasi dalam daerah baca-saja `%A'.\n" + +#: elf32-i386.c:3086 elf32-tilepro.c:2557 elfxx-tilegx.c:2871 msgid "%B: unrecognized relocation (0x%x) in section `%A'" msgstr "%B: relokasi tidak dikenal (0x%x) dalam bagian `%A'" -#: elf32-i386.c:3219 elf64-x86-64.c:3081 +#: elf32-i386.c:3494 elf64-x86-64.c:3513 msgid "hidden symbol" msgstr "simbol tersembunyi" -#: elf32-i386.c:3222 elf64-x86-64.c:3084 +#: elf32-i386.c:3497 elf64-x86-64.c:3516 msgid "internal symbol" msgstr "internal simbol" -#: elf32-i386.c:3225 elf64-x86-64.c:3087 +#: elf32-i386.c:3500 elf64-x86-64.c:3519 msgid "protected symbol" msgstr "simbol terproteksi" -#: elf32-i386.c:3228 elf64-x86-64.c:3090 +#: elf32-i386.c:3503 elf64-x86-64.c:3522 msgid "symbol" msgstr "simbol" -#: elf32-i386.c:3233 +#: elf32-i386.c:3508 msgid "%B: relocation R_386_GOTOFF against undefined %s `%s' can not be used when making a shared object" msgstr "%B: relokasi R_386_GOTOFF terhadap %s `%s' tidak terdefinisi tidak dapat digunakan ketika membuah sebuah objek terbagi" -#: elf32-i386.c:3243 +#: elf32-i386.c:3518 msgid "%B: relocation R_386_GOTOFF against protected function `%s' can not be used when making a shared object" msgstr "%B: relokasi R_386_GOTOFF terhadap fungsi terproteksi `%s' tidak dapat digunakan ketika membuat sebuah objek terbagi" -#: elf32-ip2k.c:868 elf32-ip2k.c:874 elf32-ip2k.c:941 elf32-ip2k.c:947 +#: elf32-i386.c:4839 elf32-tilepro.c:3467 elf64-x86-64.c:4609 +#: elfxx-tilegx.c:3847 +#, c-format +msgid "discarded output section: `%A'" +msgstr "diabaikan daerah keluaran: `%A'" + +#: elf32-ip2k.c:857 elf32-ip2k.c:863 elf32-ip2k.c:930 elf32-ip2k.c:936 msgid "ip2k relaxer: switch table without complete matching relocation information." msgstr "ip2k relaxer: tabel switch tanpa pencocokan informasi relokasi lengkap." -#: elf32-ip2k.c:891 elf32-ip2k.c:974 +#: elf32-ip2k.c:880 elf32-ip2k.c:963 msgid "ip2k relaxer: switch table header corrupt." msgstr "ip2k relaxer: switch tabel header terkorupsi." -#: elf32-ip2k.c:1316 +#: elf32-ip2k.c:1292 #, c-format msgid "ip2k linker: missing page instruction at 0x%08lx (dest = 0x%08lx)." msgstr "ip2k linker: hilang halaman instruksi di 0x%08lx (dest = 0x%08lx)." -#: elf32-ip2k.c:1332 +#: elf32-ip2k.c:1308 #, c-format msgid "ip2k linker: redundant page instruction at 0x%08lx (dest = 0x%08lx)." msgstr "ip2k linker: redundant halaman instruksi di 0x%08lx (dest = 0x%08lx)." -#. Only if it's not an unresolved symbol. -#: elf32-ip2k.c:1506 -msgid "unsupported relocation between data/insn address spaces" -msgstr "relokasi tidak didukung diantara data/insn ruang alamat" - -#: elf32-iq2000.c:865 elf32-m32c.c:826 +#: elf32-iq2000.c:858 elf32-m32c.c:819 #, c-format msgid "%s: uses different e_flags (0x%lx) fields than previous modules (0x%lx)" msgstr "%s: menggunakan e_flags (0x%lx) field berbeda dari modul sebelumnya (0x%lx)" -#: elf32-lm32.c:698 +#: elf32-lm32.c:706 msgid "global pointer relative relocation when _gp not defined" msgstr "penunjuk global relokasi relatif waktu _gp tidak terdefinisi" -#: elf32-lm32.c:753 +#: elf32-lm32.c:761 msgid "global pointer relative address out of range" msgstr "penunjuk global alamat relatif diluar dari jangkauan" -#: elf32-lm32.c:1058 +#: elf32-lm32.c:1057 msgid "internal error: addend should be zero for R_LM32_16_GOT" msgstr "kesalahan internal: addend seharusnya nol untuk R_LM32_16_GOT" @@ -1604,123 +1709,123 @@ msgstr "kesalahan internal: addend seharusnya nol untuk R_LM32_16_GOT" msgid "SDA relocation when _SDA_BASE_ not defined" msgstr "SDA relokasi ketika _SDA_BASE_ tidak terdefinisi" -#: elf32-m32r.c:3039 +#: elf32-m32r.c:3043 msgid "%B: The target (%s) of an %s relocation is in the wrong section (%A)" msgstr "%B: Target (%s) dari sebuah %s relokasi berada dalam bagian yang salah (%A)" -#: elf32-m32r.c:3567 +#: elf32-m32r.c:3571 msgid "%B: Instruction set mismatch with previous modules" msgstr "%B: Set Instruksi tidak cocok dengan modul sebelumnya" -#: elf32-m32r.c:3588 +#: elf32-m32r.c:3592 #, c-format msgid "private flags = %lx" msgstr "private flags = %lx" -#: elf32-m32r.c:3593 +#: elf32-m32r.c:3597 #, c-format msgid ": m32r instructions" msgstr ": m32r instruksi" -#: elf32-m32r.c:3594 +#: elf32-m32r.c:3598 #, c-format msgid ": m32rx instructions" msgstr ": m32rx instruksi" -#: elf32-m32r.c:3595 +#: elf32-m32r.c:3599 #, c-format msgid ": m32r2 instructions" msgstr ": m32r2 instruksi" -#: elf32-m68hc1x.c:1048 +#: elf32-m68hc1x.c:1050 #, c-format msgid "Reference to the far symbol `%s' using a wrong relocation may result in incorrect execution" msgstr "Referensi ke simbol jauh `%s' menggunakan relokasi salah mungkin akan menghasilkan eksekusi salah" -#: elf32-m68hc1x.c:1071 +#: elf32-m68hc1x.c:1073 #, c-format msgid "banked address [%lx:%04lx] (%lx) is not in the same bank as current banked address [%lx:%04lx] (%lx)" msgstr "banked address [%lx:%04lx] (%lx) tidak dalam bank yang sama seperti dalam alamat bank sekarang [%lx:%04lx] (%lx)" -#: elf32-m68hc1x.c:1090 +#: elf32-m68hc1x.c:1092 #, c-format msgid "reference to a banked address [%lx:%04lx] in the normal address space at %04lx" msgstr "referensi ke alamat bank [%lx:%04lx] dalam ruang alamat normal di %04lx" -#: elf32-m68hc1x.c:1223 +#: elf32-m68hc1x.c:1225 msgid "%B: linking files compiled for 16-bit integers (-mshort) and others for 32-bit integers" msgstr "%B: menghubungkan berkas yang dikompile untuk 16-bit integer (-mshort) dan yang lain untuk 32-bit integer" -#: elf32-m68hc1x.c:1230 +#: elf32-m68hc1x.c:1232 msgid "%B: linking files compiled for 32-bit double (-fshort-double) and others for 64-bit double" msgstr "%B: menghubungkan berkas yang dikompile untuk 32-bit double (-fshort-double) dan yang lain untuk 64-bit double" -#: elf32-m68hc1x.c:1239 +#: elf32-m68hc1x.c:1241 msgid "%B: linking files compiled for HCS12 with others compiled for HC12" msgstr "%B: menghubungkan berkas dikompile untuk HCS12 dengan yang lain dikompile untuk HC12" -#: elf32-m68hc1x.c:1255 elf32-ppc.c:4255 elf64-sparc.c:698 elfxx-mips.c:12617 +#: elf32-m68hc1x.c:1257 elf32-ppc.c:4227 elf64-sparc.c:706 elfxx-mips.c:13965 msgid "%B: uses different e_flags (0x%lx) fields than previous modules (0x%lx)" msgstr "%B: menggunakan field e_flags (0x%lx) berbeda dari modul sebelumnya (0x%lx)" -#: elf32-m68hc1x.c:1283 +#: elf32-m68hc1x.c:1285 #, c-format msgid "[abi=32-bit int, " msgstr "[abi=32-bit int, " -#: elf32-m68hc1x.c:1285 +#: elf32-m68hc1x.c:1287 #, c-format msgid "[abi=16-bit int, " msgstr "[abi=16-bit int, " -#: elf32-m68hc1x.c:1288 +#: elf32-m68hc1x.c:1290 #, c-format msgid "64-bit double, " msgstr "64-bit double, " -#: elf32-m68hc1x.c:1290 +#: elf32-m68hc1x.c:1292 #, c-format msgid "32-bit double, " msgstr "32-bit double, " -#: elf32-m68hc1x.c:1293 +#: elf32-m68hc1x.c:1295 #, c-format msgid "cpu=HC11]" msgstr "cpu=HC11]" -#: elf32-m68hc1x.c:1295 +#: elf32-m68hc1x.c:1297 #, c-format msgid "cpu=HCS12]" msgstr "cpu=HCS12]" -#: elf32-m68hc1x.c:1297 +#: elf32-m68hc1x.c:1299 #, c-format msgid "cpu=HC12]" msgstr "cpu=HC12]" -#: elf32-m68hc1x.c:1300 +#: elf32-m68hc1x.c:1302 #, c-format msgid " [memory=bank-model]" msgstr " [memory=bank-model]" -#: elf32-m68hc1x.c:1302 +#: elf32-m68hc1x.c:1304 #, c-format msgid " [memory=flat]" msgstr " [memory=flat]" -#: elf32-m68k.c:1184 elf32-m68k.c:1185 +#: elf32-m68k.c:1251 elf32-m68k.c:1252 vms-alpha.c:7314 vms-alpha.c:7329 msgid "unknown" msgstr "tidak dikenal" -#: elf32-m68k.c:1645 +#: elf32-m68k.c:1715 msgid "%B: GOT overflow: Number of relocations with 8-bit offset > %d" msgstr "%B: GOT overflow: Jumlah dari relokasi dengan offset 8-bit > %d" -#: elf32-m68k.c:1651 +#: elf32-m68k.c:1721 msgid "%B: GOT overflow: Number of relocations with 8- or 16-bit offset > %d" msgstr "%B: GOT overflow: Jumlah dari relokasi dengan offset 8- atau 16-bit > %d" -#: elf32-m68k.c:3902 +#: elf32-m68k.c:3957 msgid "%B(%A+0x%lx): R_68K_TLS_LE32 relocation not permitted in shared object" msgstr "%B(%A+0x%lx): R_68K_TLS_LE32 relokasi tidak diperbolehkan dalam objek terbagi" @@ -1732,195 +1837,272 @@ msgstr "%B: Relokasi %s (%d) saat ini tidak didukung.\n" msgid "%B: Unknown relocation type %d\n" msgstr "%B: Tipe relokasi %d tidak dikenal\n" -#: elf32-mep.c:654 +#. Pacify gcc -Wall. +#: elf32-mep.c:157 +#, c-format +msgid "mep: no reloc for code %d" +msgstr "mep: no reloc for code %d" + +#: elf32-mep.c:163 +#, c-format +msgid "MeP: howto %d has type %d" +msgstr "MeP: howto %d has type %d" + +#: elf32-mep.c:648 msgid "%B and %B are for different cores" msgstr "%B dan %B adalah untuk cores berbeda" -#: elf32-mep.c:671 +#: elf32-mep.c:665 msgid "%B and %B are for different configurations" msgstr "%B dan %B adalah untuk konfigurasi berbeda" -#: elf32-mep.c:708 +#: elf32-mep.c:702 #, c-format msgid "private flags = 0x%lx" msgstr "private flags = 0x%lx" -#: elf32-microblaze.c:737 +#: elf32-microblaze.c:742 #, c-format msgid "%s: unknown relocation type %d" msgstr "%s: tipe relokasi %d tidak diketahui" -#: elf32-microblaze.c:862 elf32-microblaze.c:907 +#: elf32-microblaze.c:867 elf32-microblaze.c:912 #, c-format msgid "%s: The target (%s) of an %s relocation is in the wrong section (%s)" msgstr "%s: Target (%s) dari sebuah %s relokasi berada dalam bagian yang salah (%s)" -#: elf32-microblaze.c:1150 elfxx-sparc.c:2957 +#: elf32-microblaze.c:1155 elf32-tilepro.c:2891 elfxx-sparc.c:3457 +#: elfxx-tilegx.c:3230 msgid "%B: probably compiled without -fPIC?" msgstr "%B: mungkin dikompile tanpa -fPIC?" -#: elf32-microblaze.c:2086 elflink.c:12444 +#: elf32-microblaze.c:2074 msgid "%B: bad relocation section name `%s'" msgstr "%B: relokasi bagian nama `%s' buruk" -#: elf32-mips.c:1045 elf64-mips.c:2083 elfn32-mips.c:1888 +#: elf32-mips.c:1549 elf64-mips.c:2683 elfn32-mips.c:2487 msgid "literal relocation occurs for an external symbol" msgstr "literal relokasi terjadi untuk simbol eksternal" -#: elf32-mips.c:1085 elf32-score.c:580 elf32-score7.c:480 elf64-mips.c:2126 -#: elfn32-mips.c:1929 +#: elf32-mips.c:1596 elf32-score.c:570 elf32-score7.c:469 elf64-mips.c:2726 +#: elfn32-mips.c:2528 msgid "32bits gp relative relocation occurs for an external symbol" msgstr "32bit gp relative relokasi terjadi untuk sebuah simbol eksternal" -#: elf32-ppc.c:1731 +#: elf32-ppc.c:1741 #, c-format msgid "generic linker can't handle %s" msgstr "linker generik tidak dapat menangani %s" -#: elf32-ppc.c:2211 -msgid "corrupt or empty %s section in %B" -msgstr "korup atau kosong %s bagian dalam %B" +#: elf32-ppc.c:2184 +msgid "corrupt %s section in %B" +msgstr "korup bagian %s dalam %B" -#: elf32-ppc.c:2218 +#: elf32-ppc.c:2203 msgid "unable to read in %s section from %B" msgstr "tidak dapat membaca dalam bagian %s dari %B" -#: elf32-ppc.c:2224 -msgid "corrupt %s section in %B" -msgstr "korup bagian %s dalam %B" - -#: elf32-ppc.c:2267 +#: elf32-ppc.c:2244 msgid "warning: unable to set size of %s section in %B" msgstr "peringatan: tidak dapat menset ukuran bagian %s dalam %B" -#: elf32-ppc.c:2315 +#: elf32-ppc.c:2294 msgid "failed to allocate space for new APUinfo section." msgstr "gagal mengalokasikan ruang untuk bagian baru APUinfo." -#: elf32-ppc.c:2334 +#: elf32-ppc.c:2313 msgid "failed to compute new APUinfo section." msgstr "gagal untuk menghitung bagian baru APUinfo." -#: elf32-ppc.c:2337 +#: elf32-ppc.c:2316 msgid "failed to install new APUinfo section." msgstr "gagal untuk memasang bagian baru APUinfo." -#: elf32-ppc.c:3364 +#: elf32-ppc.c:3356 msgid "%B: relocation %s cannot be used when making a shared object" msgstr "%B: relokasi %s tidak dapat digunakan ketika membuat sebuah objek terbagi" #. It does not make sense to have a procedure linkage #. table entry for a local symbol. -#: elf32-ppc.c:3723 -msgid "%B(%A+0x%lx): %s reloc against local symbol" -msgstr "%B(%A+0x%lx): %s relokasi terhadap simbol lokal" +#: elf32-ppc.c:3700 +msgid "%P: %H: %s reloc against local symbol\n" +msgstr "%P: %H: %s relokasi terhadap simbol lokal\n" -#: elf32-ppc.c:4067 elf32-ppc.c:4082 elfxx-mips.c:12324 elfxx-mips.c:12350 -#: elfxx-mips.c:12372 elfxx-mips.c:12398 +#: elf32-ppc.c:4039 elf32-ppc.c:4054 elfxx-mips.c:13651 elfxx-mips.c:13677 +#: elfxx-mips.c:13699 elfxx-mips.c:13725 msgid "Warning: %B uses hard float, %B uses soft float" msgstr "Peringatan: %B menggunakan hard float, %B menggunakan soft float" -#: elf32-ppc.c:4070 elf32-ppc.c:4074 +#: elf32-ppc.c:4042 elf32-ppc.c:4046 msgid "Warning: %B uses double-precision hard float, %B uses single-precision hard float" msgstr "Peringatan: %B menggunakan double-precision hard float, %B menggunakan single-precision hard float" -#: elf32-ppc.c:4078 +#: elf32-ppc.c:4050 msgid "Warning: %B uses soft float, %B uses single-precision hard float" msgstr "Peringatan: %B menggunakan soft float, %B menggunakan single-precision hard float" -#: elf32-ppc.c:4085 elf32-ppc.c:4089 elfxx-mips.c:12304 elfxx-mips.c:12308 +#: elf32-ppc.c:4057 elf32-ppc.c:4061 elfxx-mips.c:13631 elfxx-mips.c:13635 msgid "Warning: %B uses unknown floating point ABI %d" msgstr "Peringatan: %B menggunkaan floating point ABI %d" -#: elf32-ppc.c:4131 elf32-ppc.c:4135 +#: elf32-ppc.c:4103 elf32-ppc.c:4107 msgid "Warning: %B uses unknown vector ABI %d" msgstr "Peringatan: %B menggunakan vector ABI %d tidak dikenal" -#: elf32-ppc.c:4139 +#: elf32-ppc.c:4111 msgid "Warning: %B uses vector ABI \"%s\", %B uses \"%s\"" msgstr "Peringatan: %B menggunakan vector ABI \"%s\", %B menggunakan \"%s\"" -#: elf32-ppc.c:4156 elf32-ppc.c:4159 +#: elf32-ppc.c:4128 elf32-ppc.c:4131 msgid "Warning: %B uses r3/r4 for small structure returns, %B uses memory" msgstr "Peringatan: %B menggunakan r3/34 untuk arsitektur kembali kecil, %B menggunakan memori" -#: elf32-ppc.c:4162 elf32-ppc.c:4166 +#: elf32-ppc.c:4134 elf32-ppc.c:4138 msgid "Warning: %B uses unknown small structure return convention %d" msgstr "Peringatan: %B menggunakan konvensi struktur kembali kecil %d tidak diketahui" -#: elf32-ppc.c:4220 +#: elf32-ppc.c:4192 msgid "%B: compiled with -mrelocatable and linked with modules compiled normally" msgstr "%B: dikompile dengan -mrelocatable dan dihubungkan dengan module yang dikompile secara normal" -#: elf32-ppc.c:4228 +#: elf32-ppc.c:4200 msgid "%B: compiled normally and linked with modules compiled with -mrelocatable" msgstr "%B: dikompile secara normal dan dihubungkan dengan modul yang dikompile dengan -mrelocatable" -#: elf32-ppc.c:4314 -msgid "Using bss-plt due to %B" -msgstr "Menggunakan bss-plt karena %B" +#: elf32-ppc.c:4309 +msgid "%P: bss-plt forced due to %B\n" +msgstr "%P: bss-plt dipaksa karena ada %B\n" + +#: elf32-ppc.c:4312 +msgid "%P: bss-plt forced by profiling\n" +msgstr "%P: bss-plt forced by profiling\n" + +#. Uh oh, we didn't find the expected call. We +#. could just mark this symbol to exclude it +#. from tls optimization but it's safer to skip +#. the entire optimization. +#: elf32-ppc.c:4809 elf64-ppc.c:7858 +msgid "%H arg lost __tls_get_addr, TLS optimization disabled\n" +msgstr "%H arg lost __tls_get_addr, TLS optimization disabled\n" + +#: elf32-ppc.c:5044 elf64-ppc.c:6528 +msgid "%P: dynamic variable `%s' is zero size\n" +msgstr "%P: variabel dinamik `%s' memiliki ukuran nol\n" + +#: elf32-ppc.c:7263 elf64-ppc.c:12675 +msgid "%P: %B: unknown relocation type %d for symbol %s\n" +msgstr "%P: %B: tipe relokasi %d tidak dikenal untuk simbol %s\n" + +#: elf32-ppc.c:7524 +msgid "%P: %H: non-zero addend on %s reloc against `%s'\n" +msgstr "%P: %H: bukan-nol ditambahkan di %s relokasi terhadap `%s'\n" + +#: elf32-ppc.c:7720 elf64-ppc.c:13181 +msgid "%P: %H: relocation %s for indirect function %s unsupported\n" +msgstr "%P: %H: relokasi %s untuk fungsi tidak langsung %s tidak didukung\n" + +#: elf32-ppc.c:7948 elf32-ppc.c:7978 elf32-ppc.c:8025 +msgid "%P: %B: the target (%s) of a %s relocation is in the wrong output section (%s)\n" +msgstr "%P: %B: target (%s) dari sebuah relokasi %s berada dalam daerah keluaran salah (%s)\n" + +#: elf32-ppc.c:8097 +msgid "%P: %B: relocation %s is not yet supported for symbol %s\n" +msgstr "%P: %B: relokasi %s tidak didukung untuk simbol %s\n" + +#: elf32-ppc.c:8158 elf64-ppc.c:13467 +msgid "%P: %H: unresolvable %s relocation against symbol `%s'\n" +msgstr "%P: %H: tidak teresolf %s relokasi terhadap simbol `%s'\n" + +#: elf32-ppc.c:8205 elf64-ppc.c:13512 +msgid "%P: %H: %s reloc against `%s': error %d\n" +msgstr "%P: %H: %s relokasi terhadap `%s': error %d\n" + +#: elf32-ppc.c:8696 +msgid "%P: %s not defined in linker created %s\n" +msgstr "%P: %s tidak didefinisikan dalam penyambung dibuat oleh %s\n" + +#: elf32-rx.c:563 +msgid "%B:%A: Warning: deprecated Red Hat reloc " +msgstr "%B:%A: Peringatan: tertinggal Red Hat relokasi" -#: elf32-ppc.c:7056 elf64-ppc.c:11364 -msgid "%B: unknown relocation type %d for symbol %s" -msgstr "%B: tipe relokasi %d tidak dikenal untuk simbol %s" +#. 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 +msgid "%B(%A): unsafe PID relocation %s at 0x%08lx (against %s in %s)" +msgstr "%B(%A): tidak aman PID relokasi %s di 0x%08lx (terhadap %s dalam %s)" -#: elf32-ppc.c:7316 -msgid "%B(%A+0x%lx): non-zero addend on %s reloc against `%s'" -msgstr "%B(%A+0x%lx): bukan-nol ditambahkan di %s relokasi terhadap `%s'" +#: elf32-rx.c:1157 +msgid "Warning: RX_SYM reloc with an unknown symbol" +msgstr "Warning: RX_SYM reloc with an unknown symbol" -#: elf32-ppc.c:7499 elf64-ppc.c:11854 -msgid "%B(%A+0x%lx): relocation %s for indirect function %s unsupported" -msgstr "%B(%A+0x%lx): Relokasi %s untuk fungsi tidak langsung %s tidak didukung." +#: elf32-rx.c:1324 +msgid "%B(%A): error: call to undefined function '%s'" +msgstr "%B(%A): error: call to undefined function '%s'" -#: elf32-ppc.c:7709 elf32-ppc.c:7736 elf32-ppc.c:7787 -msgid "%B: the target (%s) of a %s relocation is in the wrong output section (%s)" -msgstr "%B: target (%s) dari sebuah relokasi %s berada dalam daerah keluaran salah (%s)" +#: elf32-rx.c:1338 +msgid "%B(%A): warning: unaligned access to symbol '%s' in the small data area" +msgstr "%B(%A): peringatan: tidak alignment akses ke simbol '%s' dalam area data kecil" -#: elf32-ppc.c:7847 -msgid "%B: relocation %s is not yet supported for symbol %s." -msgstr "%B: relokasi %s tidak didukung untuk simbol %s." +#: elf32-rx.c:1342 +msgid "%B(%A): internal error: out of range error" +msgstr "%B(%A): internal error: diluar jangkauan error" -#: elf32-ppc.c:7955 elf64-ppc.c:12110 -msgid "%B(%A+0x%lx): %s reloc against `%s': error %d" -msgstr "%B(%A+0x%lx): %s relokasi terhadap `%s': error %d" +#: elf32-rx.c:1346 +msgid "%B(%A): internal error: unsupported relocation error" +msgstr "%B(%A): internal error: relokasi tidak didukung error" -#: elf32-ppc.c:8423 +#: elf32-rx.c:1350 +msgid "%B(%A): internal error: dangerous relocation" +msgstr "%B(%A): internal error: relokasi berbahaya" + +#: elf32-rx.c:1354 +msgid "%B(%A): internal error: unknown error" +msgstr "%B(%A): internal error: error tidak diketahui" + +#: elf32-rx.c:3004 +#, c-format +msgid " [64-bit doubles]" +msgstr " [64-bit doubles]" + +#: elf32-rx.c:3006 #, c-format -msgid "%s not defined in linker created %s" -msgstr "%s tidak didefinisikan dalam %s yang dibuat oleh penyambung" +msgid " [dsp]" +msgstr " [dsp]" -#: elf32-s390.c:2207 elf64-s390.c:2179 +#: elf32-s390.c:2200 elf64-s390.c:2187 msgid "%B(%A+0x%lx): invalid instruction for TLS relocation %s" msgstr "%B(%A+0x%lx): instruksi tidak valid untuk relokasi TLS %s" -#: elf32-score.c:1533 elf32-score7.c:1424 elfxx-mips.c:3299 +#: elf32-score.c:1520 elf32-score7.c:1379 elfxx-mips.c:3435 msgid "not enough GOT space for local GOT entries" msgstr "tidak cukup ruang GOT untuk masukan lokal GOT" -#: elf32-score.c:2765 +#: elf32-score.c:2742 msgid "address not word align" msgstr "alamat tidak selaras dengan ukuran word" -#: elf32-score.c:2850 elf32-score7.c:2685 +#: elf32-score.c:2827 elf32-score7.c:2631 #, c-format msgid "%s: Malformed reloc detected for section %s" msgstr "%s: relokasi malformat terdeteksi untuk bagian %s" -#: elf32-score.c:2901 elf32-score7.c:2736 +#: elf32-score.c:2878 elf32-score7.c:2682 msgid "%B: CALL15 reloc at 0x%lx not against global symbol" msgstr "%B: CALL15 relokasi di 0x%lx tidak terhadap simbol global" -#: elf32-score.c:4042 elf32-score7.c:3879 +#: elf32-score.c:3997 elf32-score7.c:3803 #, c-format msgid " [pic]" msgstr " [pic]" -#: elf32-score.c:4046 elf32-score7.c:3883 +#: elf32-score.c:4001 elf32-score7.c:3807 #, c-format msgid " [fix dep]" msgstr " [fix dep]" -#: elf32-score.c:4088 elf32-score7.c:3925 +#: elf32-score.c:4043 elf32-score7.c:3849 msgid "%B: warning: linking PIC files with non-PIC files" msgstr "%B: peringatan: menghubungkan berkas PIC dengan berkas bukan-PIC" @@ -1932,182 +2114,212 @@ msgstr "%B: IMPORT SEBAGAI direktif untuk %s menyembunyikan IMPORT SEBAGAI sebel msgid "%B: Unrecognised .directive command: %s" msgstr "%B: Perintah .directive tidak dikenal: %s" -#: elf32-sh-symbian.c:503 +#: elf32-sh-symbian.c:504 msgid "%B: Failed to add renamed symbol %s" msgstr "%B: Gagal menambahkan simbol diubah namanya %s" -#: elf32-sh.c:533 +#: elf32-sh.c:568 msgid "%B: 0x%lx: warning: bad R_SH_USES offset" msgstr "%B: 0x%lx: peringatan: ofset R_SH_USES buruk" -#: elf32-sh.c:545 +#: elf32-sh.c:580 msgid "%B: 0x%lx: warning: R_SH_USES points to unrecognized insn 0x%x" msgstr "%B: 0x%lx: peringatan: R_SH_USES titik tidak dikenal insn 0x%x" -#: elf32-sh.c:562 +#: elf32-sh.c:597 msgid "%B: 0x%lx: warning: bad R_SH_USES load offset" msgstr "%B: 0x%lx: peringatan: ofset R_SH_USES beban buruk" -#: elf32-sh.c:577 +#: elf32-sh.c:612 msgid "%B: 0x%lx: warning: could not find expected reloc" msgstr "%B: 0x%lx: peringatan: tidak dapat menemukan relokasi yang diperkirakan" -#: elf32-sh.c:605 +#: elf32-sh.c:640 msgid "%B: 0x%lx: warning: symbol in unexpected section" msgstr "%B: 0x%lx: peringatan: simbol dalam bagian yang tidak diperkirakan" -#: elf32-sh.c:731 +#: elf32-sh.c:766 msgid "%B: 0x%lx: warning: could not find expected COUNT reloc" msgstr "%B: 0x%lx: peringatan: tidak dapat menemukan COUNT relokasi" -#: elf32-sh.c:740 +#: elf32-sh.c:775 msgid "%B: 0x%lx: warning: bad count" msgstr "%B: 0x%lx: peringatan: jumlah buruk" -#: elf32-sh.c:1144 elf32-sh.c:1514 +#: elf32-sh.c:1179 elf32-sh.c:1549 msgid "%B: 0x%lx: fatal: reloc overflow while relaxing" msgstr "%B: 0x%lx: fatal: relokasi overflow ketika relaxing" -#: elf32-sh.c:3270 elf64-sh64.c:1526 +#: elf32-sh.c:4048 elf64-sh64.c:1514 msgid "Unexpected STO_SH5_ISA32 on local symbol is not handled" msgstr "Tidak diperkirakan STO_SH5_ISA32 di simbol lokal tidak ditangani" -#: elf32-sh.c:3507 +#: elf32-sh.c:4299 msgid "%B: 0x%lx: fatal: unaligned branch target for relax-support relocation" msgstr "%B: 0x%lx: fatal: unaligned branch target untuk relax-support relokasi" -#: elf32-sh.c:3540 elf32-sh.c:3555 +#: elf32-sh.c:4332 elf32-sh.c:4347 msgid "%B: 0x%lx: fatal: unaligned %s relocation 0x%lx" msgstr "%B: 0x%lx: fatal: unaligned %s relokasi 0x%lx" -#: elf32-sh.c:3569 +#: elf32-sh.c:4361 msgid "%B: 0x%lx: fatal: R_SH_PSHA relocation %d not in range -32..32" msgstr "%B: 0x%lx: fatal: R_SH_PSHA relokasi %d tidak dalam jangkauan -32..32" -#: elf32-sh.c:3583 +#: elf32-sh.c:4375 msgid "%B: 0x%lx: fatal: R_SH_PSHL relocation %d not in range -32..32" msgstr "%B: 0x%lx: fatal: R_SH_PSHL relokasi %d tidak dalam jangkauan -32..32" -#: elf32-sh.c:5256 elf64-alpha.c:4525 +#: elf32-sh.c:4519 elf32-sh.c:4989 +msgid "%B(%A+0x%lx): cannot emit fixup to `%s' in read-only section" +msgstr "%B(%A+0x%lx): tidak dapat mengeluarkan fixups `%s' dalam bagian baca-saja" + +#: elf32-sh.c:5096 +msgid "%B(%A+0x%lx): %s relocation against external symbol \"%s\"" +msgstr "%B(%A+0x%lx): %s relokasi terhadap simbol eksternal \"%s\"" + +#: elf32-sh.c:5569 +#, c-format +msgid "%X%C: relocation to \"%s\" references a different segment\n" +msgstr "%X%C: relokasi referensi ke \"%s\" segmen berbeda\n" + +#: elf32-sh.c:5575 +#, c-format +msgid "%C: warning: relocation to \"%s\" references a different segment\n" +msgstr "%C: peringatan: relokasi referensi ke \"%s\" sebuah segmen berbeda\n" + +#: elf32-sh.c:6353 elf32-sh.c:6436 +msgid "%B: `%s' accessed both as normal and FDPIC symbol" +msgstr "%B: `%s' terakses kedua sebagai normal dan FDPIC simbol" + +#: elf32-sh.c:6358 elf32-sh.c:6440 +msgid "%B: `%s' accessed both as FDPIC and thread local symbol" +msgstr "%B: `%s' terakses kedua sebagai FDPIC dan memperlakukan lokal simbol" + +#: elf32-sh.c:6388 +msgid "%B: Function descriptor relocation with non-zero addend" +msgstr "%B: Fungsi deskripsi relokasi dengan bukan-nol ditambakan" + +#: elf32-sh.c:6624 elf64-alpha.c:4652 msgid "%B: TLS local exec code cannot be linked into shared objects" msgstr "%B: TLS lokal exec kode tidak dapat dihubungkan dalam objek terbagi" -#: elf32-sh64.c:222 elf64-sh64.c:2333 +#: elf32-sh64.c:223 elf64-sh64.c:2318 #, c-format msgid "%s: compiled as 32-bit object and %s is 64-bit" msgstr "%s: dikompile sebagai 32-bit objek dan %s adalah 64-bit" -#: elf32-sh64.c:225 elf64-sh64.c:2336 +#: elf32-sh64.c:226 elf64-sh64.c:2321 #, c-format msgid "%s: compiled as 64-bit object and %s is 32-bit" msgstr "%s: dikompile sebagai 64-bit objek dan %s adalah 32-bit" -#: elf32-sh64.c:227 elf64-sh64.c:2338 +#: elf32-sh64.c:228 elf64-sh64.c:2323 #, c-format msgid "%s: object size does not match that of target %s" msgstr "%s: ukuran objek tidak cocok dari target %s" -#: elf32-sh64.c:450 elf64-sh64.c:2852 +#: elf32-sh64.c:451 elf64-sh64.c:2837 #, c-format msgid "%s: encountered datalabel symbol in input" msgstr "%s: ditemui datalabel simbol dalam masukan" -#: elf32-sh64.c:527 +#: elf32-sh64.c:528 msgid "PTB mismatch: a SHmedia address (bit 0 == 1)" msgstr "PTB tidak cocok: sebuah SHmedia alamat (bit 0 ==1)" -#: elf32-sh64.c:530 +#: elf32-sh64.c:531 msgid "PTA mismatch: a SHcompact address (bit 0 == 0)" msgstr "PTA tidak cocok: sebuah SHcompact alamat (bit 0 == 0)" -#: elf32-sh64.c:548 +#: elf32-sh64.c:549 #, c-format msgid "%s: GAS error: unexpected PTB insn with R_SH_PT_16" msgstr "%s: GAS error: tidak diduga PTB insn dengan R_SH_PT_16" -#: elf32-sh64.c:597 +#: elf32-sh64.c:598 msgid "%B: error: unaligned relocation type %d at %08x reloc %p\n" msgstr "%B: error: tipe relokasi unaligned %d di %08x relokasi %p\n" -#: elf32-sh64.c:673 +#: elf32-sh64.c:674 #, c-format msgid "%s: could not write out added .cranges entries" msgstr "%s: tidak dapat menulis masukan tambahan .cranges" -#: elf32-sh64.c:733 +#: elf32-sh64.c:734 #, c-format msgid "%s: could not write out sorted .cranges entries" msgstr "%s: tidak dapat menulis masukan terurut .cranges" -#: elf32-sparc.c:89 +#: elf32-sparc.c:90 msgid "%B: compiled for a 64 bit system and target is 32 bit" msgstr "%B: dikompile untuk sebuah sistem 64 bit dan target adalah 32 bit" -#: elf32-sparc.c:102 +#: elf32-sparc.c:103 msgid "%B: linking little endian files with big endian files" msgstr "%B: menghubungkan berkas little endian dengan berkas big endian" -#: elf32-spu.c:723 +#: elf32-spu.c:719 msgid "%X%P: overlay section %A does not start on a cache line.\n" msgstr "%X%P: bagian overlay %A jangan diawali di sebuah baris cache.\n" -#: elf32-spu.c:731 +#: elf32-spu.c:727 msgid "%X%P: overlay section %A is larger than a cache line.\n" msgstr "%X%P: bagian overlay %A lebih besar daripada baris cache.\n" -#: elf32-spu.c:751 +#: elf32-spu.c:747 msgid "%X%P: overlay section %A is not in cache area.\n" msgstr "%X%P: bagian overlay %A tidak berada dalam daerah cache.\n" -#: elf32-spu.c:791 +#: elf32-spu.c:787 msgid "%X%P: overlay sections %A and %A do not start at the same address.\n" msgstr "%X%P: bagian overlay %A dan %A jangan diawali di alamat yang sama.\n" -#: elf32-spu.c:1015 +#: elf32-spu.c:1011 msgid "warning: call to non-function symbol %s defined in %B" msgstr "peringatan: panggilan bukan-fungsi simbol %s didefinisikan dalam %B" -#: elf32-spu.c:1365 +#: elf32-spu.c:1361 msgid "%A:0x%v lrlive .brinfo (%u) differs from analysis (%u)\n" msgstr "%A:0x%v lrlive .brinfo (%u) berbeda dari analisa (%u)\n" -#: elf32-spu.c:1884 +#: elf32-spu.c:1880 msgid "%B is not allowed to define %s" msgstr "%B tidak diperbolehkan untuk didefinisikan %s" -#: elf32-spu.c:1892 +#: elf32-spu.c:1888 #, c-format msgid "you are not allowed to define %s in a script" msgstr "anda tidak diperbolehkan untuk mendefinisikan %s dalam sebuah script" -#: elf32-spu.c:1926 +#: elf32-spu.c:1922 #, c-format msgid "%s in overlay section" msgstr "%s dalam daerah overlay" -#: elf32-spu.c:1955 +#: elf32-spu.c:1951 msgid "overlay stub relocation overflow" msgstr "relokasi stub overlay overflow" -#: elf32-spu.c:1964 elf64-ppc.c:10441 +#: elf32-spu.c:1960 msgid "stubs don't match calculated size" msgstr "stub tidak cocok dengan ukuran yang dihitung" -#: elf32-spu.c:2546 +#: elf32-spu.c:2542 #, c-format msgid "warning: %s overlaps %s\n" msgstr "peringatan: %s timpang tindih %s\n" -#: elf32-spu.c:2562 +#: elf32-spu.c:2558 #, c-format msgid "warning: %s exceeds section size\n" msgstr "peringatan: %s melebihi ukuran daerah\n" -#: elf32-spu.c:2593 +#: elf32-spu.c:2589 msgid "%A:0x%v not found in function table\n" msgstr "%A:0x%v tidak ditemukan dalam tabel fungsi\n" -#: elf32-spu.c:2740 +#: elf32-spu.c:2729 msgid "%B(%A+0x%v): call to non-code section %B(%A), analysis incomplete\n" msgstr "%B(%A+0x%v): panggilan untuk daerah bukan-kode %B(%A), analysis tidak lengkap\n" @@ -2133,33 +2345,33 @@ msgstr " panggilan:\n" msgid " %s%s %s\n" msgstr " %s%s %s\n" -#: elf32-spu.c:4304 +#: elf32-spu.c:4307 #, c-format msgid "%s duplicated in %s\n" msgstr "%s duplikasi dalam %s\n" -#: elf32-spu.c:4308 +#: elf32-spu.c:4311 #, c-format msgid "%s duplicated\n" msgstr "%s duplikasi\n" -#: elf32-spu.c:4315 +#: elf32-spu.c:4318 msgid "sorry, no support for duplicate object files in auto-overlay script\n" msgstr "maaf, tidak ada dukungan untuk duplikasi berkas objek dalam auto-overlay script\n" -#: elf32-spu.c:4356 +#: elf32-spu.c:4359 msgid "non-overlay size of 0x%v plus maximum overlay size of 0x%v exceeds local store\n" msgstr "ukuran non-overlay dari 0x%v plus maksimul overlay size dari 0x%v melebihi lokal store\n" -#: elf32-spu.c:4512 +#: elf32-spu.c:4514 msgid "%B:%A%s exceeds overlay size\n" msgstr "%B:%A%s melebihi ukuran overlay\n" -#: elf32-spu.c:4669 +#: elf32-spu.c:4676 msgid "Stack size for call graph root nodes.\n" msgstr "Ukuran stack untuk panggilan graph titik root.\n" -#: elf32-spu.c:4670 +#: elf32-spu.c:4677 msgid "" "\n" "Stack size for functions. Annotations: '*' max stack, 't' tail call\n" @@ -2167,225 +2379,303 @@ msgstr "" "\n" "Ukuran stack untuk fungsi. Anotasi: '*' max stack, 't' tail call\n" -#: elf32-spu.c:4680 +#: elf32-spu.c:4687 msgid "Maximum stack required is 0x%v\n" msgstr "Maksimal stack dibutuhkan adalah 0x%v\n" -#: elf32-spu.c:4771 +#: elf32-spu.c:4778 msgid "fatal error while creating .fixup" msgstr "kesalahan fatal ketika membuat .fixup" -#: elf32-spu.c:5009 +#: elf32-spu.c:5008 msgid "%B(%s+0x%lx): unresolvable %s relocation against symbol `%s'" msgstr "%B(%s=0x%lx): tidak teresolf %s relokasi terhadap simbol `%s'" -#: elf32-v850.c:163 +#: elf32-tic6x.c:1602 +msgid "warning: generating a shared library containing non-PIC code" +msgstr "warning: generating a shared library containing non-PIC code" + +#: elf32-tic6x.c:1607 +msgid "warning: generating a shared library containing non-PID code" +msgstr "warning: generating a shared library containing non-PID code" + +#: elf32-tic6x.c:2541 +msgid "%B: SB-relative relocation but __c6xabi_DSBT_BASE not defined" +msgstr "%B: SB-relative relokasi tetapi __c6xabi_DSBT_BASE tidak terdefinisi" + +#: elf32-tic6x.c:2761 +msgid "dangerous relocation" +msgstr "relokasi berbahaya" + +#: elf32-tic6x.c:3733 +msgid "%B: error: unknown mandatory EABI object attribute %d" +msgstr "%B: error: tidak diketahui EABI wajib atribut objek %d" + +#: elf32-tic6x.c:3741 +msgid "%B: warning: unknown EABI object attribute %d" +msgstr "%B: peringatan: atribut objek EABI tidak diketahui %d" + +#: elf32-tic6x.c:3853 elf32-tic6x.c:3861 +msgid "error: %B requires more stack alignment than %B preserves" +msgstr "error: %B requires more stack alignment than %B preserves" + +#: elf32-tic6x.c:3871 elf32-tic6x.c:3880 +msgid "error: unknown Tag_ABI_array_object_alignment value in %B" +msgstr "error: unknown Tag_ABI_array_object_alignment value in %B" + +#: elf32-tic6x.c:3889 elf32-tic6x.c:3898 +msgid "error: unknown Tag_ABI_array_object_align_expected value in %B" +msgstr "error: unknown Tag_ABI_array_object_align_expected value in %B" + +#: elf32-tic6x.c:3906 elf32-tic6x.c:3913 +msgid "error: %B requires more array alignment than %B preserves" +msgstr "error: %B requires more array alignment than %B preserves" + +#: elf32-tic6x.c:3935 +msgid "warning: %B and %B differ in wchar_t size" +msgstr "peringatan: %B dan %B berbeda dalam ukuran wchar_t" + +#: elf32-tic6x.c:3953 +msgid "warning: %B and %B differ in whether code is compiled for DSBT" +msgstr "warning: %B and %B differ in whether code is compiled for DSBT" + +#: elf32-v850.c:173 #, c-format msgid "Variable `%s' cannot occupy in multiple small data regions" msgstr "Variabel `%s' tidak dapat mengisi dalam beberapa daerah data kecil" -#: elf32-v850.c:166 +#: elf32-v850.c:176 #, c-format msgid "Variable `%s' can only be in one of the small, zero, and tiny data regions" msgstr "Variabel `%s' hanya dapat berada dalam satu dari kecil, nol, dan sangat kecil daerah data" -#: elf32-v850.c:169 +#: elf32-v850.c:179 #, c-format msgid "Variable `%s' cannot be in both small and zero data regions simultaneously" msgstr "Variabel `%s' tidak dapat berada dalam kecil dan nol daerah data secara bersamaan" -#: elf32-v850.c:172 +#: elf32-v850.c:182 #, c-format msgid "Variable `%s' cannot be in both small and tiny data regions simultaneously" msgstr "Variabel `%s' tidak dapat berada dalam kecil dan sangat kecil daerah data secara bersamaan" -#: elf32-v850.c:175 +#: elf32-v850.c:185 #, c-format msgid "Variable `%s' cannot be in both zero and tiny data regions simultaneously" msgstr "variabel `%s' tidak dapat dalam nol dan kecil daerah data secara bersamaan" -#: elf32-v850.c:478 -#, c-format -msgid "FAILED to find previous HI16 reloc\n" -msgstr "GAGAL untuk menemukan relokasi HI16 sebelumnya\n" +#: elf32-v850.c:483 +msgid "FAILED to find previous HI16 reloc" +msgstr "GAGAL untuk menemukan relokasi HI16 sebelumnya" -#: elf32-v850.c:1713 +#: elf32-v850.c:2155 msgid "could not locate special linker symbol __gp" msgstr "tidak dapat menemukan simbol linker spesial __gp" -#: elf32-v850.c:1717 +#: elf32-v850.c:2159 msgid "could not locate special linker symbol __ep" msgstr "tidak dapat menemukan simbol linker spesial __ep" -#: elf32-v850.c:1721 +#: elf32-v850.c:2163 msgid "could not locate special linker symbol __ctbp" msgstr "tidak dapat menemukan simbol linker spesial __ctbp" -#: elf32-v850.c:1871 +#: elf32-v850.c:2341 msgid "%B: Architecture mismatch with previous modules" msgstr "%B: Arsitektur tidak cocok dengan modul sebelumnya" -#: elf32-v850.c:1890 +#. xgettext:c-format. +#: elf32-v850.c:2360 #, c-format msgid "private flags = %lx: " msgstr "private flags = %lx: " -#: elf32-v850.c:1895 +#: elf32-v850.c:2365 #, c-format msgid "v850 architecture" msgstr "v850 arsitektur" -#: elf32-v850.c:1896 +#: elf32-v850.c:2366 #, c-format msgid "v850e architecture" msgstr "v850e arsitektur" -#: elf32-v850.c:1897 +#: elf32-v850.c:2367 #, c-format msgid "v850e1 architecture" msgstr "v850e1 arsitektur" -#: elf32-vax.c:543 +#: elf32-v850.c:2368 +#, c-format +msgid "v850e2 architecture" +msgstr "v850e2 arsitektur" + +#: elf32-v850.c:2369 +#, c-format +msgid "v850e2v3 architecture" +msgstr "v850e2v3 arsitektur" + +#: elf32-vax.c:532 #, c-format msgid " [nonpic]" msgstr " [bukan-pic]" -#: elf32-vax.c:546 +#: elf32-vax.c:535 #, c-format msgid " [d-float]" msgstr " [d-float]" -#: elf32-vax.c:549 +#: elf32-vax.c:538 #, c-format msgid " [g-float]" msgstr " [g-float]" -#: elf32-vax.c:666 +#: elf32-vax.c:655 #, c-format msgid "%s: warning: GOT addend of %ld to `%s' does not match previous GOT addend of %ld" msgstr "%s: peringatan: GOT ditambahkan dari %ld ke `%s' tidak cocok dengan penambahan GOT sebelumnya dari %ld" -#: elf32-vax.c:1608 +#: elf32-vax.c:1585 #, c-format msgid "%s: warning: PLT addend of %d to `%s' from %s section ignored" msgstr "%s: peringatan: PLT ditambahkan dari %d ke `%s' dari %s bagian diabaikan" -#: elf32-vax.c:1735 +#: elf32-vax.c:1712 #, c-format msgid "%s: warning: %s relocation against symbol `%s' from %s section" msgstr "%s: peringatan: %s relokasi terhadap simbol `%s' dari bagian %s" -#: elf32-vax.c:1741 +#: elf32-vax.c:1718 #, c-format msgid "%s: warning: %s relocation to 0x%x from %s section" msgstr "%s: peringatan: relokasi %s ke 0x%x dari daerah %s" -#: elf32-xstormy16.c:451 elf32-ia64.c:2791 elf64-ia64.c:2791 +#: elf32-xstormy16.c:451 elf32-ia64.c:2336 elf64-ia64.c:2336 msgid "non-zero addend in @fptr reloc" msgstr "bukan-nol ditambahkan dalam @fptr relokasi" -#: elf32-xtensa.c:912 +#: elf32-xtensa.c:918 msgid "%B(%A): invalid property table" msgstr "%B(%A): tabel properti tidak valid" -#: elf32-xtensa.c:2740 +#: elf32-xtensa.c:2777 msgid "%B(%A+0x%lx): relocation offset out of range (size=0x%x)" msgstr "%B(%A+0x%lx): ofset relokasi diluar jangkauan (size=0x%x)" -#: elf32-xtensa.c:2819 elf32-xtensa.c:2940 +#: elf32-xtensa.c:2856 elf32-xtensa.c:2977 msgid "dynamic relocation in read-only section" msgstr "relokasi dinamis dalam bagian baca-saja" -#: elf32-xtensa.c:2916 +#: elf32-xtensa.c:2953 msgid "TLS relocation invalid without dynamic sections" msgstr "relokasi TLS tidak valid tanpa bagian dinamis" -#: elf32-xtensa.c:3133 +#: elf32-xtensa.c:3172 msgid "internal inconsistency in size of .got.loc section" msgstr "internal tidak konsisten dalam ukuran dari daerah .got.loc" -#: elf32-xtensa.c:3443 +#: elf32-xtensa.c:3485 msgid "%B: incompatible machine type. Output is 0x%x. Input is 0x%x" msgstr "%B: tipe mesin tidak kompatibel. Keluaran adalah 0x%x. Masukan adalah 0x%x" -#: elf32-xtensa.c:4672 elf32-xtensa.c:4680 +#: elf32-xtensa.c:4714 elf32-xtensa.c:4722 msgid "Attempt to convert L32R/CALLX to CALL failed" msgstr "Mencoba untuk mengubah L32R/CALLX ke CALL gagal" -#: elf32-xtensa.c:6290 elf32-xtensa.c:6366 elf32-xtensa.c:7486 +#: elf32-xtensa.c:6332 elf32-xtensa.c:6408 elf32-xtensa.c:7524 msgid "%B(%A+0x%lx): could not decode instruction; possible configuration mismatch" msgstr "%B(%A+0x%lx): tidak dapat mendeko instruksi; mungkin konfigurasi tidak cocok" -#: elf32-xtensa.c:7226 +#: elf32-xtensa.c:7264 msgid "%B(%A+0x%lx): could not decode instruction for XTENSA_ASM_SIMPLIFY relocation; possible configuration mismatch" msgstr "%B(%A+0x%lx): tidak dapat mendeko instruksi untuk XTENSA_ASM_SIMPLIFY relokasi; mungkin konfigurasi tidak cocok" -#: elf32-xtensa.c:8987 +#: elf32-xtensa.c:9023 msgid "invalid relocation address" msgstr "alamat relokasi tidak valid" -#: elf32-xtensa.c:9036 +#: elf32-xtensa.c:9072 msgid "overflow after relaxation" msgstr "overflow setelah relaksasi" -#: elf32-xtensa.c:10167 +#: elf32-xtensa.c:10204 msgid "%B(%A+0x%lx): unexpected fix for %s relocation" msgstr "%B(%A+0x%lx): unexpected fix untuk relokasi %s" -#: elf64-alpha.c:452 +#: elf64-alpha.c:460 msgid "GPDISP relocation did not find ldah and lda instructions" msgstr "GPDISP relokasi tidak dapat menemukan instruksi ldah dan lda" -#: elf64-alpha.c:2389 +#: elf64-alpha.c:2497 msgid "%B: .got subsegment exceeds 64K (size %d)" msgstr "%B: .got subsegmen melebihi 64K (size %d)" -#: elf64-alpha.c:4269 elf64-alpha.c:4281 +#: elf64-alpha.c:4387 elf64-alpha.c:4399 msgid "%B: gp-relative relocation against dynamic symbol %s" msgstr "%B: gp-relative relokasi terhadap simbol dinamis %s" -#: elf64-alpha.c:4307 elf64-alpha.c:4442 +#: elf64-alpha.c:4425 elf64-alpha.c:4565 msgid "%B: pc-relative relocation against dynamic symbol %s" msgstr "%B: pc-relative relokasi terhadap simbol dinamis %s" -#: elf64-alpha.c:4335 +#: elf64-alpha.c:4453 msgid "%B: change in gp: BRSGP %s" msgstr "%B: perubahan dalam gp: BRSGP %s" -#: elf64-alpha.c:4360 +#: elf64-alpha.c:4478 msgid "<unknown>" msgstr "<tidak dikenal>" -#: elf64-alpha.c:4365 +#: elf64-alpha.c:4483 msgid "%B: !samegp reloc against symbol without .prologue: %s" msgstr "%B: !samegp relokasi terhadap simbol tanpa .prologue: %s" -#: elf64-alpha.c:4417 +#: elf64-alpha.c:4540 msgid "%B: unhandled dynamic relocation against %s" msgstr "%B: relokasi dinamis tidak ditangani terhadap %s" -#: elf64-alpha.c:4449 +#: elf64-alpha.c:4572 msgid "%B: pc-relative relocation against undefined weak symbol %s" msgstr "%B: pc-relative relokasi terhadap simbol lemah tidak terdefinisi %s" -#: elf64-alpha.c:4509 +#: elf64-alpha.c:4636 msgid "%B: dtp-relative relocation against dynamic symbol %s" msgstr "%B: dtp-relative relokasi terhadap simbol dinamis %s" -#: elf64-alpha.c:4532 +#: elf64-alpha.c:4659 msgid "%B: tp-relative relocation against dynamic symbol %s" msgstr "%B: tp-relative relokasi terhadap simbol dinamis %s" -#: elf64-hppa.c:2091 +#: elf64-hppa.c:2083 #, c-format msgid "stub entry for %s cannot load .plt, dp offset = %ld" msgstr "masukan stub untuk %s tidak dapat diload .plt, dp ofset = %ld" -#: elf64-hppa.c:3273 -msgid "%B(%A+0x%lx): cannot reach %s" -msgstr "%B(%A+0x%lx): tidak dapat mencapai %s" +#: elf64-hppa.c:3275 +msgid "%B(%A+0x" +msgstr "%B(%A+0x" + +#: elf64-mmix.c:1034 +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" +" or assemble using \"-no-expand\" (for gcc, \"-Wa,-no-expand\"" +msgstr "" +"invalid input relocation when producing non-ELF, non-mmo format output.\n" +" Please use the objcopy program to convert from ELF or mmo,\n" +" or assemble using \"-no-expand\" (for gcc, \"-Wa,-no-expand\"" -#: elf64-mmix.c:1177 +#: elf64-mmix.c:1218 +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" +" or compile using the gcc-option \"-mno-base-addresses\"." +msgstr "" +"invalid input relocation when producing non-ELF, non-mmo format output.\n" +" Please use the objcopy program to convert from ELF or mmo,\n" +" or compile using the gcc-option \"-mno-base-addresses\"." + +#: elf64-mmix.c:1244 #, c-format msgid "" "%s: Internal inconsistency error for value for\n" @@ -2394,46 +2684,46 @@ msgstr "" "%s: Internal tidak konsisten error untuk nilai untuk\n" " linker-allocated global register: terhubung: 0x%lx%08lx != relaxed: 0x%lx%08lx\n" -#: elf64-mmix.c:1618 +#: elf64-mmix.c:1670 #, c-format msgid "%s: base-plus-offset relocation against register symbol: (unknown) in %s" msgstr "%s: base-plus-offset relokasi terhadap simbol register: (tidak diketahui) dalam %s" -#: elf64-mmix.c:1623 +#: elf64-mmix.c:1675 #, c-format msgid "%s: base-plus-offset relocation against register symbol: %s in %s" msgstr "%s: base-plus-offset relokasi terhadap simbol register: %s dalam %s" -#: elf64-mmix.c:1667 +#: elf64-mmix.c:1719 #, c-format msgid "%s: register relocation against non-register symbol: (unknown) in %s" msgstr "%s: register relokasi terhadap non-register simbol: (tidak diketahui) dalam %s" -#: elf64-mmix.c:1672 +#: elf64-mmix.c:1724 #, c-format msgid "%s: register relocation against non-register symbol: %s in %s" msgstr "%s: register relokasi terhadap bukan-register simbol: %s dalam %s" -#: elf64-mmix.c:1709 +#: elf64-mmix.c:1761 #, c-format msgid "%s: directive LOCAL valid only with a register or absolute value" msgstr "%s: direktif LOKAL hanya valid dengan sebuah register atau nilai absolut" -#: elf64-mmix.c:1737 +#: elf64-mmix.c:1789 #, c-format msgid "%s: LOCAL directive: Register $%ld is not a local register. First global register is $%ld." msgstr "%s: LOKAL direktif: Register $%ld bukan sebuah lokal register. Pertama global registar adala $%ld." -#: elf64-mmix.c:2201 +#: elf64-mmix.c:2253 #, c-format msgid "%s: Error: multiple definition of `%s'; start of %s is set in a earlier linked file\n" msgstr "%s: Error: multiple definisi dari `%s'; awal dari %s adalah diset dalam sebuah sebelum berkas terlink\n" -#: elf64-mmix.c:2259 +#: elf64-mmix.c:2311 msgid "Register section has contents\n" msgstr "Daerah register memiliki isi\n" -#: elf64-mmix.c:2451 +#: elf64-mmix.c:2503 #, c-format msgid "" "Internal inconsistency: remaining %u != max %u.\n" @@ -2442,65 +2732,80 @@ msgstr "" "Internal tidak konsisten: sisa %u != max %u.\n" " Tolong laporkan bug ini." -#: elf64-ppc.c:2691 libbfd.c:978 -msgid "%B: compiled for a big endian system and target is little endian" -msgstr "%B: dikompile untuk sebuah sistem big endian dan target adalah little endian" +#: elf64-ppc.c:4185 +msgid "%P: %B: cannot create stub entry %s\n" +msgstr "%P: %B: tidak dapat membuat masukan stub %s\n" -#: elf64-ppc.c:2694 libbfd.c:980 -msgid "%B: compiled for a little endian system and target is big endian" -msgstr "%B: dikompile untuk sebuah sistem little endian dan target adalah big endian" +#: elf64-ppc.c:6518 +msgid "%P: copy reloc against `%s' requires lazy plt linking; avoid setting LD_BIND_NOW=1 or upgrade gcc\n" +msgstr "%P: salin relokasi terhadap `%s' membutuhkan lazy plt linking; hindari konfigurasi LD_BIND_NOW=1 atau upgrade gcc\n" -#: elf64-ppc.c:6338 -#, c-format -msgid "copy reloc against `%s' requires lazy plt linking; avoid setting LD_BIND_NOW=1 or upgrade gcc" -msgstr "salin relokasi terhadap `%s' membutuhkan lazy plt linking; hindari konfigurasi LD_BIND_NOW=1 atau upgrade gcc" +#: elf64-ppc.c:6788 +msgid "%B: undefined symbol on R_PPC64_TOCSAVE relocation" +msgstr "%B: tidak terdefinisi simbol dalam relokasi R_PPC64_TOCSAVE" -#: elf64-ppc.c:6767 -msgid "dynreloc miscount for %B, section %A" -msgstr "dynareloc miscount untuk %B, bagian %A" +#: elf64-ppc.c:6992 +msgid "%P: dynreloc miscount for %B, section %A\n" +msgstr "%P: dynareloc miscount untuk %B, bagian %A\n" -#: elf64-ppc.c:6851 +#: elf64-ppc.c:7076 msgid "%B: .opd is not a regular array of opd entries" msgstr "%B: .opd adalah bukan array regular dari masukan opd" -#: elf64-ppc.c:6860 +#: elf64-ppc.c:7085 msgid "%B: unexpected reloc type %u in .opd section" msgstr "%B: tipe relokasi %u tidak diduga dalam bagian .opd" -#: elf64-ppc.c:6881 +#: elf64-ppc.c:7106 msgid "%B: undefined sym `%s' in .opd section" msgstr "%B: tidak terdefinisi simbol `%s' dalam bagian .opd" -#: elf64-ppc.c:7640 elf64-ppc.c:8017 +#: elf64-ppc.c:7664 +msgid "%H __tls_get_addr lost arg, TLS optimization disabled\n" +msgstr "%H __tls_get_addr lost arg, TLS optimization disabled\n" + +#: elf64-ppc.c:8003 elf64-ppc.c:8564 #, c-format -msgid "%s defined in removed toc entry" +msgid "%s defined on removed toc entry" msgstr "%s terdefinisi dalam masukan toc terhapus" -#: elf64-ppc.c:8910 -#, c-format -msgid "long branch stub `%s' offset overflow" -msgstr "stub brach panjang `%s' ofset overflow" +#: elf64-ppc.c:8521 +msgid "%P: %H: %s relocation references optimized away TOC entry\n" +msgstr "%P: %H: %s relocation references optimized away TOC entry\n" -#: elf64-ppc.c:8969 -#, c-format -msgid "can't find branch stub `%s'" -msgstr "tidak dapat menemukan branch stub `%s'" +#: elf64-ppc.c:9598 +msgid "%P: cannot find opd entry toc for %s\n" +msgstr "%P: tidak dapat menemukan masukan opdd toc untuk %s\n" -#: elf64-ppc.c:9031 elf64-ppc.c:9169 -#, c-format -msgid "linkage table error against `%s'" -msgstr "linkage tabel error terhadap `%s'" +#: elf64-ppc.c:9680 +msgid "%P: long branch stub `%s' offset overflow\n" +msgstr "%P: stub brach panjang `%s' ofset overflow\n" -#: elf64-ppc.c:9326 -#, c-format -msgid "can't build branch stub `%s'" -msgstr "tidak dapat membuat branch stub `%s'" +#: elf64-ppc.c:9739 +msgid "%P: can't find branch stub `%s'\n" +msgstr "%P: tidak dapat menemukan branch stub `%s'\n" + +#: elf64-ppc.c:9801 elf64-ppc.c:9943 +msgid "%P: linkage table error against `%s'\n" +msgstr "%P: linkage tabel error terhadap `%s'\n" -#: elf64-ppc.c:9799 +#: elf64-ppc.c:10126 +msgid "%P: can't build branch stub `%s'\n" +msgstr "%P: tidak dapat membuat branch stub `%s'\n" + +#: elf64-ppc.c:10941 msgid "%B section %A exceeds stub group size" msgstr "%B bagian %A melebihi ukuran grup stub" -#: elf64-ppc.c:10453 +#: elf64-ppc.c:11666 elf64-ppc.c:11699 +msgid "%P: %s offset too large for .eh_frame sdata4 encoding" +msgstr "%P: %s offset too large for .eh_frame sdata4 encoding" + +#: elf64-ppc.c:11744 +msgid "%P: stubs don't match calculated size\n" +msgstr "%P: stub tidak cocok dengan ukuran yang dihitung\n" + +#: elf64-ppc.c:11756 #, c-format msgid "" "linker stubs in %u group%s\n" @@ -2517,423 +2822,468 @@ msgstr "" " long toc adj %lu\n" " plt call %lu" -#: elf64-ppc.c:11252 -msgid "%B(%A+0x%lx): automatic multiple TOCs not supported using your crt files; recompile with -mminimal-toc or upgrade gcc" -msgstr "%B(%A+0x%lx): otomatis multiple TOC tidak didukung menggunakan berkas crt anda; rekompile dengan -mminimal-toc atau upgrade gcc" +#: elf64-ppc.c:12042 +msgid "%P: %H: %s used with TLS symbol %s\n" +msgstr "%P: %H: %s digunakan dengan simbol TLS %s\n" + +#: elf64-ppc.c:12043 +msgid "%P: %H: %s used with non-TLS symbol %s\n" +msgstr "%P: %H: %s digunakan dengan simbol bukan-TLS %s\n" + +#: elf64-ppc.c:12556 +msgid "%P: %H: automatic multiple TOCs not supported using your crt files; recompile with -mminimal-toc or upgrade gcc\n" +msgstr "%P: %H: otomatis multiple TOC tidak didukung menggunakan berkas crt anda; rekompile dengan -mminimal-toc atau upgrade gcc\n" -#: elf64-ppc.c:11260 -msgid "%B(%A+0x%lx): sibling call optimization to `%s' does not allow automatic multiple TOCs; recompile with -mminimal-toc or -fno-optimize-sibling-calls, or make `%s' extern" -msgstr "%B(%A+0x%lx): sibling call optimization ke `%s' tidak membolehkan otomatis multiple TOC; rekompile dengan -mminimal-toc atau -fno-optimize-sibling-calls, atau buat `%s' extern" +#: elf64-ppc.c:12562 +msgid "%P: %H: sibling call optimization to `%s' does not allow automatic multiple TOCs; recompile with -mminimal-toc or -fno-optimize-sibling-calls, or make `%s' extern\n" +msgstr "%P: %H: sibling call optimization ke `%s' tidak membolehkan otomatis multiple TOC; rekompile dengan -mminimal-toc atau -fno-optimize-sibling-calls, atau buat `%s' extern\n" -#: elf64-ppc.c:11961 -msgid "%B: relocation %s is not supported for symbol %s." -msgstr "%B: relokasi %s tidak didukung untuk simbol %s." +#: elf64-ppc.c:13286 +msgid "%P: %B: relocation %s is not supported for symbol %s\n" +msgstr "%P: %B: relokasi %s tidak didukung untuk simbol %s\n" -#: elf64-ppc.c:12044 -msgid "%B: error: relocation %s not a multiple of %d" -msgstr "%B: error: relokasi %s bukan multiple dari %d" +#: elf64-ppc.c:13446 +msgid "%P: %H: error: %s not a multiple of %u\n" +msgstr "%P: %H: error: %s bukan multiple dari %u\n" -#: elf64-sh64.c:1701 +#: elf64-sh64.c:1686 #, c-format msgid "%s: error: unaligned relocation type %d at %08x reloc %08x\n" msgstr "%s: error: tipe relokasi %d unaligned di %08x relokasi %08x\n" -#: elf64-sparc.c:439 +#: elf64-sparc.c:446 msgid "%B: Only registers %%g[2367] can be declared using STT_REGISTER" msgstr "%B: Hanya register %%g[2367] dapat dideklarasikan menggunakan STT_REGISTER" -#: elf64-sparc.c:459 +#: elf64-sparc.c:466 msgid "Register %%g%d used incompatibly: %s in %B, previously %s in %B" msgstr "Register %%g%d digunakan tidak kompatibel: %s dalam %B, sebelumnya %s dalam %B" -#: elf64-sparc.c:482 +#: elf64-sparc.c:489 msgid "Symbol `%s' has differing types: REGISTER in %B, previously %s in %B" msgstr "Simbol `%s' memiliki tipe berbeda: REGISTER dalam %B, sebelumnya %s dalam %B" -#: elf64-sparc.c:527 +#: elf64-sparc.c:534 msgid "Symbol `%s' has differing types: %s in %B, previously REGISTER in %B" msgstr "Simbol `%s' memiliki tipe berbeda: %s dalam %B, sebelumnya REGISTER dalam %B" -#: elf64-sparc.c:679 +#: elf64-sparc.c:687 msgid "%B: linking UltraSPARC specific with HAL specific code" msgstr "%B: menghubungkan UltraSPARC spesifik dengan HAL spesifik kode" -#: elf64-x86-64.c:1337 +#: elf64-x86-64.c:1427 +msgid "%B: relocation %s against symbol `%s' isn't supported in x32 mode" +msgstr "%B: relokasi %s terhadap simbol `%s' tidak didukung dalam mode x32" + +#: elf64-x86-64.c:1656 msgid "%B: '%s' accessed both as normal and thread local symbol" msgstr "%B: '%s' keduanya diakses secara normal dan thread simbol lokal" -#: elf64-x86-64.c:2701 +#: elf64-x86-64.c:3150 msgid "%B: relocation %s against STT_GNU_IFUNC symbol `%s' has non-zero addend: %d" msgstr "%B: relokasi %s terhadap STT_GNU_IFUNC simbol `%s' memiliki addend bukan-nol: %d" -#: elf64-x86-64.c:2980 +#: elf64-x86-64.c:3411 msgid "%B: relocation R_X86_64_GOTOFF64 against protected function `%s' can not be used when making a shared object" msgstr "%B: relokasi R_X86_64_GOTOFF64 terhadap fungsi terproteksi `%s' tidak dapat digunakan ketika membuat sebuah objek terbagi" -#: elf64-x86-64.c:3091 +#: elf64-x86-64.c:3523 msgid "; recompile with -fPIC" msgstr "; rekompile dengan -fPIC" -#: elf64-x86-64.c:3096 +#: elf64-x86-64.c:3528 msgid "%B: relocation %s against %s `%s' can not be used when making a shared object%s" msgstr "%B: relokasi %s terhadap %s `%s' tidak dapat digunakan ketika membuat sebuah objek terbagi%s" -#: elf64-x86-64.c:3098 +#: elf64-x86-64.c:3530 msgid "%B: relocation %s against undefined %s `%s' can not be used when making a shared object%s" msgstr "%B: relokasi %s terhadap tidak terdefinisi %s `%s' tidak dapat digunakan ketika membuat sebuah objek terbagi %s" -#: elfcode.h:795 +#: elfcode.h:767 #, c-format msgid "warning: %s has a corrupt string table index - ignoring" msgstr "peringatan: %s memiliki sebuah string tabel korup index - diabaikan" -#: elfcode.h:1201 +#: elfcode.h:1177 #, c-format msgid "%s: version count (%ld) does not match symbol count (%ld)" msgstr "%s: versi terhitung (%ld) tidak cocok dengan simbol terhitung (%ld)" -#: elfcode.h:1441 +#: elfcode.h:1431 #, c-format msgid "%s(%s): relocation %d has invalid symbol index %ld" msgstr "%s(%s): relokasi %d memiliki indek simbol tidak valid %ld" -#: elfcore.h:251 +#: elfcore.h:312 msgid "Warning: %B is truncated: expected core file size >= %lu, found: %lu." msgstr "Peringatan: %B terpotong: diperkirakan ukuran berkas core >= %lu, ditemukan: %lu." -#: elflink.c:1113 +#: elflink.c:1117 msgid "%s: TLS definition in %B section %A mismatches non-TLS definition in %B section %A" msgstr "%s: TLS definisi dalam %B bagian %A tidak cocok bukan-TLS definisi dalam %B bagian %A" -#: elflink.c:1117 +#: elflink.c:1121 msgid "%s: TLS reference in %B mismatches non-TLS reference in %B" msgstr "%s: TLS referensi dalam %B tidak cocok bukan-TLS referensi dalam %B" -#: elflink.c:1121 +#: elflink.c:1125 msgid "%s: TLS definition in %B section %A mismatches non-TLS reference in %B" msgstr "%s: TLS definisi dalam %B bagian %A tidak cocok bukan-TLS referensi dalam %B" -#: elflink.c:1125 +#: elflink.c:1129 msgid "%s: TLS reference in %B mismatches non-TLS definition in %B section %A" msgstr "%s: TLS referensi dalam %B tidak cocok bukan-TLS definisi dalam %B bagian %A" -#: elflink.c:1764 +#: elflink.c:1762 msgid "%B: unexpected redefinition of indirect versioned symbol `%s'" msgstr "%B: tidak diduga redefinisi dari indirek versioned simbol `%s'" -#: elflink.c:2077 +#: elflink.c:2063 msgid "%B: version node not found for symbol %s" msgstr "%B: titik versi tidak ditemukan untuk simbol %s" -#: elflink.c:2167 +#: elflink.c:2154 msgid "%B: bad reloc symbol index (0x%lx >= 0x%lx) for offset 0x%lx in section `%A'" msgstr "%B: bad relokasi simbol indeks (0x%lx >= 0x%lx) untuk ofset 0x%lx dalam daerah `%A'" -#: elflink.c:2178 +#: elflink.c:2165 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: bukan-nol simbol indeks (0x%lx) untuk offset 0x%lx dalam bagian `%A' ketika berkas objek tidak memiliki tabel simbol" -#: elflink.c:2375 +#: elflink.c:2355 msgid "%B: relocation size mismatch in %B section %A" msgstr "%B: ukuran relokasi tidak cocok dalam %B bagian %A" -#: elflink.c:2678 +#: elflink.c:2639 #, c-format msgid "warning: type and size of dynamic symbol `%s' are not defined" msgstr "peringatan: tipe dan ukuran dari simbol dinamis `%s' tidak terdefinisi" -#: elflink.c:3424 +#: elflink.c:3391 msgid "%P: alternate ELF machine code found (%d) in %B, expecting %d\n" msgstr "%P: kode mesin alternatif untuk ELF ditemukan (%d) dalam %B, diduga %d\n" -#: elflink.c:4032 +#: elflink.c:4037 msgid "%B: %s: invalid version %u (max %d)" msgstr "%B: %s: versi %u tidak valid (max %d)" -#: elflink.c:4068 +#: elflink.c:4073 msgid "%B: %s: invalid needed version %d" msgstr "%B: %s: tidak valid dibutuhkan versi %d" -#: elflink.c:4253 +#: elflink.c:4269 msgid "Warning: alignment %u of common symbol `%s' in %B is greater than the alignment (%u) of its section %A" msgstr "Peringatan: alignmen %u dari simbol umum `%s' dalam %B adalah lebih besar daripada alignment (%u) dari bagian ini %A" -#: elflink.c:4259 +#: elflink.c:4275 msgid "Warning: alignment %u of symbol `%s' in %B is smaller than %u in %B" msgstr "Peringatan: alignment %u dari simbol `%s' dalam %B adalah lebih kecil daripada %u dalam %B" -#: elflink.c:4274 +#: elflink.c:4290 msgid "Warning: size of symbol `%s' changed from %lu in %B to %lu in %B" msgstr "Peringatan: ukuran dari simbol `%s' berubah dari %lu dalam %B ke %lu dalam %B" -#: elflink.c:4438 -#, c-format -msgid "%s: invalid DSO for symbol `%s' definition" -msgstr "%s: tidak valid DSO untuk simbol `%s' definisi" +#: elflink.c:4463 +msgid "%B: undefined reference to symbol '%s'" +msgstr "%B: tidak terdefinisi referensi ke simbol '%s'" -#: elflink.c:5688 +#: elflink.c:4466 +msgid "note: '%s' is defined in DSO %B so try adding it to the linker command line" +msgstr "note: '%s' is defined in DSO %B so try adding it to the linker command line" + +#: elflink.c:5781 #, c-format msgid "%s: undefined version: %s" msgstr "%s: versi tidak terdefinisi: %s" -#: elflink.c:5756 +#: elflink.c:5849 msgid "%B: .preinit_array section is not allowed in DSO" msgstr "%B: .preinit_array bagian tidak diperbolehkan dalam DSO" -#: elflink.c:7484 +#: elflink.c:7604 #, c-format msgid "undefined %s reference in complex symbol: %s" msgstr "undefined %s referensi dalam simbol kompleks: %s" -#: elflink.c:7638 +#: elflink.c:7758 #, c-format msgid "unknown operator '%c' in complex symbol" msgstr "operator tidak diketahui '%c' dalam simbol kompleks" -#: elflink.c:7976 elflink.c:7993 elflink.c:8030 elflink.c:8047 +#: elflink.c:8097 elflink.c:8114 elflink.c:8151 elflink.c:8168 msgid "%B: Unable to sort relocs - they are in more than one size" msgstr "%B: Tidak dapat mengurutkan relokasi - mereka berada dalam lebih dari satu ukuran" -#: elflink.c:8007 elflink.c:8061 +#: elflink.c:8128 elflink.c:8182 msgid "%B: Unable to sort relocs - they are of an unknown size" msgstr "%B: Tidak dapat mengurutkan relokasi - mereka dari ukuran yang tidak diketahui" -#: elflink.c:8112 +#: elflink.c:8233 msgid "Not enough memory to sort relocations" msgstr "Tidak cukup memori untuk mengurutkan relokasi" -#: elflink.c:8304 +#: elflink.c:8426 msgid "%B: Too many sections: %d (>= %d)" msgstr "%B: Terlalu banyak bagian: %d (>= %d)" -#: elflink.c:8540 -msgid "%B: %s symbol `%s' in %B is referenced by DSO" -msgstr "%B: %s simbol `%s' dalam %B adalah direferensikan oleh DSO" +#: elflink.c:8675 +msgid "%B: internal symbol `%s' in %B is referenced by DSO" +msgstr "%B: internal simbol `%s' dalam %B adalah direferensikan oleh DSO" + +#: elflink.c:8677 +msgid "%B: hidden symbol `%s' in %B is referenced by DSO" +msgstr "%B: tersembunyi simbol `%s' dalam %B adalah direferensikan oleh DSO" -#: elflink.c:8625 +#: elflink.c:8679 +msgid "%B: local symbol `%s' in %B is referenced by DSO" +msgstr "%B: lokal simbol `%s' dalam %B adalah direferensikan oleh DSO" + +#: elflink.c:8776 msgid "%B: could not find output section %A for input section %A" msgstr "%B: tidak dapat menemukan bagian keluaran %A untuk daerah masukan %A" -#: elflink.c:8745 -msgid "%B: %s symbol `%s' isn't defined" -msgstr "%B: %s simbol `%s' tidak didefinisikan" +#: elflink.c:8899 +msgid "%B: protected symbol `%s' isn't defined" +msgstr "%B: terproteksi simbol `%s' tidak didefinisikan" + +#: elflink.c:8901 +msgid "%B: internal symbol `%s' isn't defined" +msgstr "%B: internal simbol `%s' tidak didefinisikan" + +#: elflink.c:8903 +msgid "%B: hidden symbol `%s' isn't defined" +msgstr "%B: tersembunyi simbol `%s' tidak didefinisikan" + +#: elflink.c:9432 +msgid "error: %B: size of section %A is not multiple of address size" +msgstr "error: %B: ukuran dari bagian %A bukan multiple dari ukuran alamat" -#: elflink.c:9301 +#: elflink.c:9479 msgid "error: %B contains a reloc (0x%s) for section %A that references a non-existent global symbol" msgstr "error: %B berisi sebuah relokasi (0x%s) untuk daerah %A yang mereferensikan sebuah bukan-exist simbol global" -#: elflink.c:9366 -msgid "%X`%s' referenced in section `%A' of %B: defined in discarded section `%A' of %B\n" -msgstr "%X`%s' direferensikan dalam daerah `%A' dari %B: didefinisikan dalam daerah diabaikan `%A' dari %B\n" - -#: elflink.c:9991 +#: elflink.c:10214 msgid "%A has both ordered [`%A' in %B] and unordered [`%A' in %B] sections" msgstr "%A memiliki keduanya terurut [`%A' dalam %B] dan daerah tidak terurut [`%A' dalam %B]" -#: elflink.c:9996 +#: elflink.c:10219 #, c-format msgid "%A has both ordered and unordered sections" msgstr "%A memiliki daerah terurut dan tidak terurut" -#: elflink.c:10872 elflink.c:10916 +#: elflink.c:10784 +msgid "%B: file class %s incompatible with %s" +msgstr "%B: berkas kelas %s tidak kompatibel dengan %s" + +#: elflink.c:11093 elflink.c:11137 msgid "%B: could not find output section %s" msgstr "%B: tidak dapat menemukan daerah keluaran %s" -#: elflink.c:10877 +#: elflink.c:11098 #, c-format msgid "warning: %s section has zero size" msgstr "peringatan: %s daerah memiliki ukuran nol" -#: elflink.c:10982 +#: elflink.c:11143 +#, c-format +msgid "warning: section '%s' is being made into a note" +msgstr "peringatan: bagian '%s' dibuat dalam sebuah catatan" + +#: elflink.c:11212 +msgid "%P%X: read-only segment has dynamic relocations.\n" +msgstr "%P%X: read-only segment has dynamic relocations.\n" + +#: elflink.c:11215 msgid "%P: warning: creating a DT_TEXTREL in a shared object.\n" msgstr "%P: peringatan: membuat sebuah DT_TEXTREL dalam sebuah objek terbagi.\n" -#: elflink.c:11165 +#: elflink.c:11402 msgid "%P%X: can not read symbols: %E\n" msgstr "%P%X: tidak dapat membaca simbol: %E\n" -#: elflink.c:11483 +#: elflink.c:11792 msgid "Removing unused section '%s' in file '%B'" msgstr "Menghapus daerah tidak digunakan '%s' dalam berkas '%B'" -#: elflink.c:11695 +#: elflink.c:11998 msgid "Warning: gc-sections option ignored" msgstr "Peringatan: gc-sections pilihan diabaikan" -#: elflink.c:12242 -msgid "%B: ignoring duplicate section `%A'" -msgstr "%B: peringatan daerah duplikasi `%A'" - -#: elflink.c:12249 elflink.c:12256 -msgid "%B: duplicate section `%A' has different size" -msgstr "%B: daerah duplikasi `%A' memiliki ukuran berbeda" - -#: elflink.c:12264 elflink.c:12269 -msgid "%B: warning: could not read contents of section `%A'" -msgstr "%B: peringatan: tidak dapat membaca isi dari daerah `%A'" - -#: elflink.c:12273 -msgid "%B: warning: duplicate section `%A' has different contents" -msgstr "%B: peringatan: duplikasi daerah `%A' memiliki isi berbeda" - -#: elflink.c:12374 linker.c:3098 -msgid "%F%P: already_linked_table: %E\n" -msgstr "%F%P: already_linked_table: %E\n" +#: elflink.c:12277 +#, c-format +msgid "Unrecognized INPUT_SECTION_FLAG %s\n" +msgstr "Unrecognized INPUT_SECTION_FLAG %s\n" -#: elfxx-mips.c:1222 +#: elfxx-mips.c:1234 msgid "static procedure (no name)" msgstr "prosedur statis (tidak bernama)" -#: elfxx-mips.c:5588 -msgid "%B: %A+0x%lx: jump to stub routine which is not jal" -msgstr "%B: %A+0x%lx: lompat ke routine stub dimana bukan jal" +#: elfxx-mips.c:5259 +msgid "MIPS16 and microMIPS functions cannot call each other" +msgstr "MIPS16 and microMIPS functions cannot call each other" -#: elfxx-mips.c:6235 elfxx-mips.c:6458 +#: elfxx-mips.c:5856 +msgid "%B: %A+0x%lx: Direct jumps between ISA modes are not allowed; consider recompiling with interlinking enabled." +msgstr "%B: %A+0x%lx: Direct jumps between ISA modes are not allowed; consider recompiling with interlinking enabled." + +#: elfxx-mips.c:6519 elfxx-mips.c:6742 msgid "%B: Warning: bad `%s' option size %u smaller than its header" msgstr "%B: Peringatan: pilihan `%s' buruk ukuran %u lebih kecil dari headernya" -#: elfxx-mips.c:7205 elfxx-mips.c:7330 +#: elfxx-mips.c:7495 elfxx-mips.c:7620 msgid "%B: Warning: cannot determine the target function for stub section `%s'" msgstr "%B: Peringatan: tidak dapat menentukan fungsi terget untuk daerah stub `%s'" -#: elfxx-mips.c:7459 +#: elfxx-mips.c:7749 msgid "%B: Malformed reloc detected for section %s" msgstr "%B: Malformed relokasi terdeteksi untuk daerah %s" -#: elfxx-mips.c:7499 +#: elfxx-mips.c:7801 msgid "%B: GOT reloc at 0x%lx not expected in executables" msgstr "%B: GOT relokasi di 0x%lx tidak diduga dalam aplikasi" -#: elfxx-mips.c:7602 +#: elfxx-mips.c:7930 msgid "%B: CALL16 reloc at 0x%lx not against global symbol" msgstr "%B: CALL16 relokasi di 0x%lx tidak terhadap simbol global" -#: elfxx-mips.c:8280 +#: elfxx-mips.c:8645 #, c-format msgid "non-dynamic relocations refer to dynamic symbol %s" msgstr "bukan-dinamis relokasi refer ke simbol dinamis %s" -#: elfxx-mips.c:8985 +#: elfxx-mips.c:9347 msgid "%B: Can't find matching LO16 reloc against `%s' for %s at 0x%lx in section `%A'" msgstr "%B: Tidak dapat menemukan cocok LO16 relokasi terhadap `%s' untuk %s di 0x%lx di daerah `%A'" -#: elfxx-mips.c:9124 +#: elfxx-mips.c:9486 msgid "small-data section exceeds 64KB; lower small-data size limit (see option -G)" msgstr "daerah data-kecil melebihi 64KB; dibawah data-kecil batas ukuran (lihat pilihan -G)" -#: elfxx-mips.c:11940 +#: elfxx-mips.c:9505 +msgid "JALX to a non-word-aligned address" +msgstr "JALX to a non-word-aligned address" + +#: elfxx-mips.c:13266 #, c-format msgid "%s: illegal section name `%s'" msgstr "%s: nama daerah `%s' ilegal" -#: elfxx-mips.c:12318 elfxx-mips.c:12344 +#: elfxx-mips.c:13645 elfxx-mips.c:13671 msgid "Warning: %B uses -msingle-float, %B uses -mdouble-float" msgstr "Peringatan: %B menggunakan 0msingle-float, %B menggunakan -mdouble-float" -#: elfxx-mips.c:12330 elfxx-mips.c:12386 +#: elfxx-mips.c:13657 elfxx-mips.c:13713 msgid "Warning: %B uses -msingle-float, %B uses -mips32r2 -mfp64" msgstr "Peringatan: %B menggunakan -msingle-float, %B menggunakan -mips32r2 -mfp64" -#: elfxx-mips.c:12356 elfxx-mips.c:12392 +#: elfxx-mips.c:13683 elfxx-mips.c:13719 msgid "Warning: %B uses -mdouble-float, %B uses -mips32r2 -mfp64" msgstr "Peringatan: %B menggunakan -mdouble-float, %B menggunakan -mips32r2 -mfp64" -#: elfxx-mips.c:12434 +#: elfxx-mips.c:13761 msgid "%B: endianness incompatible with that of the selected emulation" msgstr "%B: endianness tidak kompatibel dengan yang dipilih di emulasi" -#: elfxx-mips.c:12445 +#: elfxx-mips.c:13772 msgid "%B: ABI is incompatible with that of the selected emulation" msgstr "%B: ABI tidak kompatibel dengan yang dipilih di emulasi" -#: elfxx-mips.c:12526 +#: elfxx-mips.c:13856 msgid "%B: warning: linking abicalls files with non-abicalls files" msgstr "%B: peringatan: menghubungkan berkas abicalls dengan berkas bukan-abicalls" -#: elfxx-mips.c:12543 +#: elfxx-mips.c:13873 msgid "%B: linking 32-bit code with 64-bit code" msgstr "%B: menghubungkan 32-bit kode dengan 64-bit kode" -#: elfxx-mips.c:12571 +#: elfxx-mips.c:13901 msgid "%B: linking %s module with previous %s modules" msgstr "%B: menghubungkan %s modul dengan modul %s sebelumnya" -#: elfxx-mips.c:12594 +#: elfxx-mips.c:13924 msgid "%B: ABI mismatch: linking %s module with previous %s modules" msgstr "%B: ABI tidak cocok: menghubungkan modul %s dengan modul %s sebelumnya" -#: elfxx-mips.c:12758 +#: elfxx-mips.c:13948 +msgid "%B: ASE mismatch: linking %s module with previous %s modules" +msgstr "%B: ASE tidak cocok: menghubungkan modul %s dengan modul %s sebelumnya" + +#: elfxx-mips.c:14106 #, c-format msgid " [abi=O32]" msgstr " [abi=032]" -#: elfxx-mips.c:12760 +#: elfxx-mips.c:14108 #, c-format msgid " [abi=O64]" msgstr " [abi=064]" -#: elfxx-mips.c:12762 +#: elfxx-mips.c:14110 #, c-format msgid " [abi=EABI32]" msgstr " [abi=EABI32]" -#: elfxx-mips.c:12764 +#: elfxx-mips.c:14112 #, c-format msgid " [abi=EABI64]" msgstr " [abi=EABI64]" -#: elfxx-mips.c:12766 +#: elfxx-mips.c:14114 #, c-format msgid " [abi unknown]" msgstr " [abi tidak diketahui]" -#: elfxx-mips.c:12768 +#: elfxx-mips.c:14116 #, c-format msgid " [abi=N32]" msgstr " [abi=N32]" -#: elfxx-mips.c:12770 +#: elfxx-mips.c:14118 #, c-format msgid " [abi=64]" msgstr " [abi=64]" -#: elfxx-mips.c:12772 +#: elfxx-mips.c:14120 #, c-format msgid " [no abi set]" msgstr " [bukan abi set]" -#: elfxx-mips.c:12793 +#: elfxx-mips.c:14141 #, c-format msgid " [unknown ISA]" msgstr " [ISA tidak diketahui]" -#: elfxx-mips.c:12804 +#: elfxx-mips.c:14155 #, c-format msgid " [not 32bitmode]" msgstr " [bukan 32bitmode]" -#: elfxx-sparc.c:440 +#: elfxx-sparc.c:596 #, c-format msgid "invalid relocation type %d" msgstr "tipe relokasi %d tidak valid" -#: i386linux.c:455 m68klinux.c:459 sparclinux.c:453 +#: elfxx-tilegx.c:3952 +msgid "%B: Cannot link together %s and %s objects." +msgstr "%B: Cannot link together %s and %s objects." + +#: i386linux.c:451 m68klinux.c:456 sparclinux.c:450 #, c-format msgid "Output file requires shared library `%s'\n" msgstr "Berkas keluaran membutuhkan library terbagi `%s'\n" -#: i386linux.c:463 m68klinux.c:467 sparclinux.c:461 +#: i386linux.c:459 m68klinux.c:464 sparclinux.c:458 #, c-format msgid "Output file requires shared library `%s.so.%s'\n" msgstr "Berkas keluaran membutuhkan library terbagi `%s.so.%s'\n" -#: i386linux.c:652 i386linux.c:702 m68klinux.c:659 m68klinux.c:707 -#: sparclinux.c:651 sparclinux.c:701 +#: i386linux.c:648 i386linux.c:698 m68klinux.c:656 m68klinux.c:704 +#: sparclinux.c:648 sparclinux.c:698 #, c-format msgid "Symbol %s not defined for fixups\n" msgstr "Simbol %s tidak terdefinisi untuk fixups\n" -#: i386linux.c:726 m68klinux.c:731 sparclinux.c:725 +#: i386linux.c:722 m68klinux.c:728 sparclinux.c:722 msgid "Warning: fixup count mismatch\n" msgstr "Peringatan: jumlah fixup tidak cocok\n" @@ -2947,15 +3297,15 @@ msgstr "%s: string terlalu panjang (%d chars, max 65535)" msgid "%s: unrecognized symbol `%s' flags 0x%x" msgstr "%s: simbol tidak dikenal `%s' flags 0x%x" -#: ieee.c:788 +#: ieee.c:792 msgid "%B: unimplemented ATI record %u for symbol %u" msgstr "%B: tidak terimplementasi ATI record %u untuk simbol %u" -#: ieee.c:812 +#: ieee.c:816 msgid "%B: unexpected ATN type %d in external part" msgstr "%B: tipe ATN %d tidak diduga dalam bagian luar" -#: ieee.c:834 +#: ieee.c:838 msgid "%B: unexpected type after ATN" msgstr "%B: tidak diduga tipe sesudah ATN" @@ -2995,99 +3345,173 @@ msgstr "%B: internal error dalam ihex_read_section" msgid "%B: bad section length in ihex_read_section" msgstr "%B: buruk panjang bagian dalam ihex_read_section" -#: ihex.c:825 +#: ihex.c:826 #, c-format msgid "%s: address 0x%s out of range for Intel Hex file" msgstr "%s: alamat 0x%s diluar jangkauan untuk berkas Intel Hex" -#: libbfd.c:1008 +#: libbfd.c:863 +msgid "%B: unable to get decompressed section %A" +msgstr "%B: tidak dapat memperoleh mengekstrak bagian %A" + +#: libbfd.c:1012 +msgid "%B: compiled for a big endian system and target is little endian" +msgstr "%B: dikompile untuk sebuah sistem big endian dan target adalah little endian" + +#: libbfd.c:1014 +msgid "%B: compiled for a little endian system and target is big endian" +msgstr "%B: dikompile untuk sebuah sistem little endian dan target adalah big endian" + +#: libbfd.c:1043 #, c-format msgid "Deprecated %s called at %s line %d in %s\n" msgstr "Deprecated %s dipanggil di %s baris %d dalam %s\n" -#: libbfd.c:1011 +#: libbfd.c:1046 #, c-format msgid "Deprecated %s called\n" msgstr "Deprecated %s dipanggil\n" -#: linker.c:1874 +#: linker.c:1872 msgid "%B: indirect symbol `%s' to `%s' is a loop" msgstr "%B: indirect simbol `%s' ke `%s' adalah sebuah loop" -#: linker.c:2740 +#: linker.c:2736 #, c-format msgid "Attempt to do relocatable link with %s input and %s output" msgstr "Mencoba untuk merelokasi link dengan masukan %s dan keluaran %s" -#: linker.c:3065 -msgid "%B: warning: ignoring duplicate section `%A'\n" -msgstr "%B: peringatan: mengabaikan bagiann terduplikasi `%A'\n" +#: linker.c:3021 +msgid "%B: ignoring duplicate section `%A'\n" +msgstr "%B: mengabaikan daerah duplikasi `%A'\n" + +#: linker.c:3030 linker.c:3039 +msgid "%B: duplicate section `%A' has different size\n" +msgstr "%B: daerah duplikasi `%A' memiliki ukuran berbeda\n" + +#: linker.c:3047 linker.c:3052 +msgid "%B: could not read contents of section `%A'\n" +msgstr "%B: tidak dapat membaca isi dari daerah `%A'\n" + +#: linker.c:3056 +msgid "%B: duplicate section `%A' has different contents\n" +msgstr "%B: duplikasi daerah `%A' memiliki isi berbeda\n" + +#: mach-o.c:407 +msgid "bfd_mach_o_canonicalize_symtab: unable to load symbols" +msgstr "bfd_mach_o_canonicalize_symtab: unable to load symbols" + +#: mach-o.c:1301 +#, c-format +msgid "unable to write unknown load command 0x%lx" +msgstr "unable to write unknown load command 0x%lx" + +#: mach-o.c:1789 +#, c-format +msgid "bfd_mach_o_read_symtab_symbol: unable to read %d bytes at %lu" +msgstr "bfd_mach_o_read_symtab_symbol: unable to read %d bytes at %lu" + +#: mach-o.c:1807 +#, c-format +msgid "bfd_mach_o_read_symtab_symbol: name out of range (%lu >= %lu)" +msgstr "bfd_mach_o_read_symtab_symbol: name out of range (%lu >= %lu)" + +#: mach-o.c:1892 +#, 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: symbol \"%s\" specified invalid section %d (max %lu): setting to undefined" + +#: mach-o.c:1900 +#, c-format +msgid "bfd_mach_o_read_symtab_symbol: symbol \"%s\" is unsupported 'indirect' reference: setting to undefined" +msgstr "bfd_mach_o_read_symtab_symbol: symbol \"%s\" is unsupported 'indirect' reference: setting to undefined" + +#: mach-o.c:1906 +#, 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: symbol \"%s\" specified invalid type field 0x%x: setting to undefined" + +#: mach-o.c:1979 +msgid "bfd_mach_o_read_symtab_symbols: unable to allocate memory for symbols" +msgstr "bfd_mach_o_read_symtab_symbols: unable to allocate memory for symbols" + +#: mach-o.c:2014 +#, c-format +msgid "bfd_mach_o_read_dysymtab_symbol: unable to read %lu bytes at %lu" +msgstr "bfd_mach_o_read_dysymtab_symbol: unable to read %lu bytes at %lu" -#: linker.c:3079 -msgid "%B: warning: duplicate section `%A' has different size\n" -msgstr "%B: peringatan: bagian terduplikasi `%A' memiliki ukuran berbeda\n" +#: mach-o.c:2734 +#, c-format +msgid "unable to read unknown load command 0x%lx" +msgstr "unable to read unknown load command 0x%lx" + +#: mach-o.c:2915 +#, c-format +msgid "bfd_mach_o_scan: unknown architecture 0x%lx/0x%lx" +msgstr "bfd_mach_o_scan: unknown architecture 0x%lx/0x%lx" -#: mach-o.c:3195 +#: mach-o.c:3011 #, c-format +msgid "unknown header byte-order value 0x%lx" +msgstr "unknown header byte-order value 0x%lx" + +#: mach-o.c:3577 msgid "Mach-O header:\n" msgstr "Kepala Mach-O:\n" -#: mach-o.c:3196 +#: mach-o.c:3578 #, c-format msgid " magic : %08lx\n" msgstr " majik : %08lx\n" -#: mach-o.c:3197 +#: mach-o.c:3579 #, c-format msgid " cputype : %08lx (%s)\n" msgstr " tipe-cpu : %08lx (%s)\n" -#: mach-o.c:3199 +#: mach-o.c:3581 #, c-format msgid " cpusubtype: %08lx\n" msgstr " subtipecpu: %08lx\n" -#: mach-o.c:3200 +#: mach-o.c:3582 #, c-format msgid " filetype : %08lx (%s)\n" msgstr " tipe-berkas : %08lx (%s)\n" -#: mach-o.c:3203 +#: mach-o.c:3585 #, c-format -msgid " ncmds : %08lx\n" -msgstr " ncmds : %08lx\n" +msgid " ncmds : %08lx (%lu)\n" +msgstr " ncmds : %08lx (%lu)\n" -#: mach-o.c:3204 +#: mach-o.c:3586 #, c-format msgid " sizeofcmds: %08lx\n" msgstr " besardariperintah: %08lx\n" -#: mach-o.c:3205 +#: mach-o.c:3587 #, c-format msgid " flags : %08lx (" msgstr " tanda : %08lx (" -#: mach-o.c:3207 -#, c-format +#: mach-o.c:3589 vms-alpha.c:7674 msgid ")\n" msgstr ")\n" -#: mach-o.c:3208 +#: mach-o.c:3590 #, c-format msgid " reserved : %08x\n" msgstr " direserve : %08x\n" -#: mach-o.c:3218 -#, c-format +#: mach-o.c:3600 msgid "Segments and Sections:\n" msgstr "Bagian dan Daerah:\n" -#: mach-o.c:3219 -#, c-format +#: mach-o.c:3601 msgid " #: Segment name Section name Address\n" msgstr " #: Nama bagian Nama daerah Alamat\n" -#: merge.c:829 +#: merge.c:832 #, c-format msgid "%s: access beyond end of merged section (%ld)" msgstr "%s: akses diluar dari daerah merged (%ld)" @@ -3112,122 +3536,122 @@ msgstr "%s: berkas mmo tidak valid: nilai inisialisasi untuk $255 bukan `Main'\n msgid "%s: unsupported wide character sequence 0x%02X 0x%02X after symbol name starting with `%s'\n" msgstr "%s: tidak didukung dengan urutan karakter lebar 0x%02X 0x%02X sesudah nama simbol dimulai dengan `%s'\n" -#: mmo.c:1566 +#: mmo.c:1565 #, c-format msgid "%s: invalid mmo file: unsupported lopcode `%d'\n" msgstr "%s: berkas mmo tidak valid: lopcode tidak didukung `%d'\n" -#: mmo.c:1576 +#: mmo.c:1575 #, c-format msgid "%s: invalid mmo file: expected YZ = 1 got YZ = %d for lop_quote\n" msgstr "%s: berka mmo tidak valid: diduga YZ = 1 diperoleh YZ = %d untuk lop_quote\n" -#: mmo.c:1612 +#: mmo.c:1611 #, c-format msgid "%s: invalid mmo file: expected z = 1 or z = 2, got z = %d for lop_loc\n" msgstr "%s: berkas mmo tidak valid: diduga z = 1 atau z = 2, diperoleh z = %d untuk lop_loc\n" -#: mmo.c:1658 +#: mmo.c:1657 #, c-format msgid "%s: invalid mmo file: expected z = 1 or z = 2, got z = %d for lop_fixo\n" msgstr "%s: berkas mmo tidak valid: diduga z = 1 atau z = 2, diperoleh z = %d untuk lop_fixo\n" -#: mmo.c:1697 +#: mmo.c:1696 #, c-format msgid "%s: invalid mmo file: expected y = 0, got y = %d for lop_fixrx\n" msgstr "%s: berkas mmo tidak valid: diduga y = 0, diperoleh y = %d untuk lop_fixrx\n" -#: mmo.c:1706 +#: mmo.c:1705 #, c-format msgid "%s: invalid mmo file: expected z = 16 or z = 24, got z = %d for lop_fixrx\n" msgstr "%s: berkas mmo tidak valid: diduga z = 16 atau z = 24, diperoleh z = %d untuk lop_fixrx\n" -#: mmo.c:1729 +#: mmo.c:1728 #, 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: berkas mmo tidak valid: awalan byte dari kata operand harus 0 atau 1, diperoleh %d untuk lop_fixrx\n" -#: mmo.c:1752 +#: mmo.c:1751 #, c-format msgid "%s: cannot allocate file name for file number %d, %d bytes\n" msgstr "%s: tidak dapat mengalokasikan nama berkas untuk nomor berkas %d, %d bytes\n" -#: mmo.c:1772 +#: mmo.c:1771 #, c-format msgid "%s: invalid mmo file: file number %d `%s', was already entered as `%s'\n" msgstr "%s: berkas mmo tidak valid: nomor berkas %d `%s', telah dimasukan sebagai `%s'\n" -#: mmo.c:1785 +#: mmo.c:1784 #, c-format msgid "%s: invalid mmo file: file name for number %d was not specified before use\n" msgstr "%s: berkas mmo tidak valid: nama berkas untuk nomor %d telah dispesifikasikan sebelum digunakan\n" -#: mmo.c:1892 +#: mmo.c:1890 #, c-format msgid "%s: invalid mmo file: fields y and z of lop_stab non-zero, y: %d, z: %d\n" msgstr "%s: berkas mmo tidak valid: daerah y dan z dari lop_stab bukan-nol, y: %d, z: %d\n" -#: mmo.c:1928 +#: mmo.c:1926 #, c-format msgid "%s: invalid mmo file: lop_end not last item in file\n" msgstr "%s: berkas mmo tidak valid: lop_end bukan item terakhir dalam berkas\n" -#: mmo.c:1941 +#: mmo.c:1939 #, 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: berkas mmo tidak valid: YZ dari lop_end (%ld) tidak sama dengan jumlah dari tetras yang mengawali lop_stab (%ld)\n" -#: mmo.c:2651 +#: mmo.c:2649 #, c-format msgid "%s: invalid symbol table: duplicate symbol `%s'\n" msgstr "%s: tabel simbol tidak valid: duplikasi simbol `%s'\n" -#: mmo.c:2894 +#: mmo.c:2889 #, c-format msgid "%s: Bad symbol definition: `Main' set to %s rather than the start address %s\n" msgstr "%s: Definisi simbol buruk: `Main' di set ke %s daripada ke awal alamat %s\n" -#: mmo.c:2986 +#: mmo.c:2981 #, 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: Peringatan: tabel simbol terlalu besar untuk mmo, lebih besar daripada 65535 32-bit words: %d. Hanya `Main' yang akan dikeluarkan.\n" -#: mmo.c:3031 +#: mmo.c:3026 #, c-format msgid "%s: internal error, symbol table changed size from %d to %d words\n" msgstr "%s: internal error, tabel simbol berubah ukuran dari %d ke %d kata\n" -#: mmo.c:3083 +#: mmo.c:3078 #, c-format msgid "%s: internal error, internal register section %s had contents\n" msgstr "%s: internal error, daerah internal register %s memiliki isi\n" -#: mmo.c:3134 +#: mmo.c:3129 #, c-format msgid "%s: no initialized registers; section length 0\n" msgstr "%s: tidak ada register yang terinisialisasi; panjang daerah 0\n" -#: mmo.c:3140 +#: mmo.c:3135 #, c-format msgid "%s: too many initialized registers; section length %ld\n" msgstr "%s: terlalu banyak register yang terinisialisasi; panjang daerah %ld\n" -#: mmo.c:3145 +#: mmo.c:3140 #, c-format msgid "%s: invalid start address for initialized registers of length %ld: 0x%lx%08lx\n" msgstr "%s: awal alaman tidak valid untuk register terinisialisasi dari panjang %ld: 0x%lx%08lx\n" -#: oasys.c:881 +#: oasys.c:882 #, c-format msgid "%s: can not represent section `%s' in oasys" msgstr "%s: tidak dapat merepresentasikan daerah `%s' dalam oasys" -#: osf-core.c:139 +#: osf-core.c:140 #, c-format msgid "Unhandled OSF/1 core file section type %d\n" msgstr "Tidak tertangani berkas core OSF/1 daerah tipe %d\n" -#: pe-mips.c:613 +#: pe-mips.c:607 msgid "%B: `ld -r' not supported with PE MIPS objects\n" msgstr "%B: `ld -r' tidak didukung dengan PE MIPS objek\n" @@ -3235,25 +3659,30 @@ msgstr "%B: `ld -r' tidak didukung dengan PE MIPS objek\n" #. 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:729 +#: pe-mips.c:719 msgid "%B: unimplemented %s\n" msgstr "%B: tidak terimplementasi %s\n" -#: pe-mips.c:755 +#: pe-mips.c:745 msgid "%B: jump too far away\n" msgstr "%B: lompat terlalu jauh\n" -#: pe-mips.c:781 +#: pe-mips.c:771 msgid "%B: bad pair/reflo after refhi\n" msgstr "%B: pasangan/reflo buruk setelah refhi\n" -#: pei-x86_64.c:465 +#: pef.c:520 +#, c-format +msgid "bfd_pef_scan: unknown architecture 0x%lx" +msgstr "bfd_pef_scan: unknown architecture 0x%lx" + +#: pei-x86_64.c:444 #, c-format msgid "warning: .pdata section size (%ld) is not a multiple of %d\n" msgstr "peringatan: besar (%ld) daerah .pdata tidak dalam kelipatan dari %d\n" -#: pei-x86_64.c:469 peigen.c:1620 peigen.c:1799 pepigen.c:1620 pepigen.c:1799 -#: pex64igen.c:1620 pex64igen.c:1799 +#: pei-x86_64.c:448 peigen.c:1618 peigen.c:1801 pepigen.c:1618 pepigen.c:1801 +#: pex64igen.c:1618 pex64igen.c:1801 #, c-format msgid "" "\n" @@ -3262,37 +3691,37 @@ msgstr "" "\n" "Tabel Fungsi (diinterpretasikan isi daerah .pdata)\n" -#: pei-x86_64.c:471 +#: pei-x86_64.c:450 #, c-format msgid "vma:\t\t\tBeginAddress\t EndAddress\t UnwindData\n" msgstr " vma:\t\t\tAlamatAwal \t AlamatAkhir\t UnwindData\n" #. XXX code yet to be written. -#: peicode.h:752 +#: peicode.h:751 msgid "%B: Unhandled import type; %x" msgstr "%B: Tipe impor tidak tertangani; %x" -#: peicode.h:757 +#: peicode.h:756 msgid "%B: Unrecognised import type; %x" msgstr "%B: Tipe impor tidak dikenal; %x" -#: peicode.h:771 +#: peicode.h:770 msgid "%B: Unrecognised import name type; %x" msgstr "%B: Nama tipe impor tidak dikenal; %x" -#: peicode.h:1154 +#: peicode.h:1166 msgid "%B: Unrecognised machine type (0x%x) in Import Library Format archive" msgstr "%B: Tipe mesin (0x%x) tidak dikenal dalam Import Library Format archive" -#: peicode.h:1166 +#: peicode.h:1178 msgid "%B: Recognised but unhandled machine type (0x%x) in Import Library Format archive" msgstr "%B: Dikenal tetapi tidak tertangani tipe mesin (0x%x) dalam Import Library Format archive" -#: peicode.h:1184 +#: peicode.h:1196 msgid "%B: size field is zero in Import Library Format header" msgstr "%B: besar field adalah nol dalam Import Library Format header" -#: peicode.h:1215 +#: peicode.h:1227 msgid "%B: string not null terminated in ILF object file." msgstr "%B: string tidak diakhiri kosong dalam berkas objek ILF." @@ -3349,7 +3778,16 @@ msgstr "Daerah partisi[%d] = 0x%.8lx (%ld)\n" msgid "Partition[%d] length = 0x%.8lx (%ld)\n" msgstr "Panjang partisi[%d] = 0x%.8lx (%ld)\n" -#: som.c:5114 +#: reloc.c:6160 +msgid "INPUT_SECTION_FLAGS are not supported.\n" +msgstr "INPUT_SECTION_FLAGS are not supported.\n" + +#: rs6000-core.c:448 +#, c-format +msgid "%s: warning core file truncated" +msgstr "%s: warning core file truncated" + +#: som.c:5471 #, c-format msgid "" "\n" @@ -3358,7 +3796,7 @@ msgstr "" "\n" "Tambahan exec header\n" -#: som.c:5417 +#: som.c:5776 msgid "som_sizeof_headers unimplemented" msgstr "som_sizeof_headers tidak terimplementasi" @@ -3378,240 +3816,1906 @@ msgstr "%B(%A+0x%lx): Masukan stabs memiliki index string tidak valid." msgid "Unsupported .stab relocation" msgstr "Relokasi .stab tidak didukung" -#: vms-gsd.c:350 +#: vms-alpha.c:1299 +#, c-format +msgid "Unknown EGSD subtype %d" +msgstr "Tidak diketahui EGSD subtype %d" + +#: vms-alpha.c:1330 +#, c-format +msgid "Stack overflow (%d) in _bfd_vms_push" +msgstr "Stack overflow (%d) dalam _bfd_vms_push" + +#: vms-alpha.c:1343 +msgid "Stack underflow in _bfd_vms_pop" +msgstr "Stack underflow dalam _bfd_vms_pop" + +#. These names have not yet been added to this switch statement. +#: vms-alpha.c:1580 +#, c-format +msgid "unknown ETIR command %d" +msgstr "perintah ETIR %d tidak diketahui" + +#: vms-alpha.c:1767 +#, c-format +msgid "bad section index in %s" +msgstr "Indek daerah buruk dalam %s" + +#: vms-alpha.c:1780 +#, c-format +msgid "unsupported STA cmd %s" +msgstr "perintah %s STA tidak didukung" + +#. Insert field. +#. Unsigned shift. +#. Rotate. +#. Redefine symbol to current location. +#. Define a literal. +#: vms-alpha.c:1956 vms-alpha.c:1987 vms-alpha.c:2234 #, c-format -msgid "bfd_make_section (%s) failed" -msgstr "bfd_make_section (%s) gagal" +msgid "%s: not supported" +msgstr "%s: tidak didukung" -#: vms-gsd.c:365 +#: vms-alpha.c:1962 #, c-format -msgid "bfd_set_section_flags (%s, %x) failed" -msgstr "bfd_set_section_flags (%s, %x) gagal" +msgid "%s: not implemented" +msgstr "%s: tidak terimplementasi" -#: vms-gsd.c:399 +#: vms-alpha.c:2218 #, c-format -msgid "Size mismatch section %s=%lx, %s=%lx" -msgstr "Ukuran tidak cocok daerah %s=%lx, %s=%lx" +msgid "invalid use of %s with contexts" +msgstr "invalid use of %s with contexts" -#: vms-gsd.c:754 +#: vms-alpha.c:2252 #, c-format -msgid "Unknown GSD/EGSD subtype %d" -msgstr "tidak diketahui GDS/EGSD subtype %d" +msgid "reserved cmd %d" +msgstr "perintah %d direserve" -#: vms-hdr.c:364 +#: vms-alpha.c:2337 msgid "Object module NOT error-free !\n" msgstr "Modul objek Tidak bebas-error !\n" -#: vms-hdr.c:878 +#: vms-alpha.c:2766 +#, c-format +msgid "Symbol %s replaced by %s\n" +msgstr "Simbol %s digantikan oleh %s\n" + +#: vms-alpha.c:3769 +#, c-format +msgid "SEC_RELOC with no relocs in section %s" +msgstr "SEC_RELOC dengan tidak ada relokasi dalam daerah %s" + +#: vms-alpha.c:3822 vms-alpha.c:4049 +#, c-format +msgid "Size error in section %s" +msgstr "Kesalahan ukuran dalam daerah %s" + +#: vms-alpha.c:3991 +msgid "Spurious ALPHA_R_BSR reloc" +msgstr "Spurious ALPHA_R_BSR relokasi" + +#: vms-alpha.c:4036 +#, c-format +msgid "Unhandled relocation %s" +msgstr "Relokasi %s tidak tertangani" + +#: vms-alpha.c:4326 #, c-format msgid "unknown source command %d" msgstr "sumber perintah %d tidak diketahui" -#: vms-hdr.c:951 -msgid "DST_S_C_SET_LINUM_INCR not implemented" -msgstr "DST_S_C_SET_LINUM_INCR belum diimplementasikan" +#: vms-alpha.c:4387 +msgid "DST__K_SET_LINUM_INCR not implemented" +msgstr "DST__K_SET_LINUM_INCR belum diimplementasikan" -#: vms-hdr.c:957 -msgid "DST_S_C_SET_LINUM_INCR_W not implemented" -msgstr "DST_S_C_SET_LINUM_INCR_W belum diimplementasikan" +#: vms-alpha.c:4393 +msgid "DST__K_SET_LINUM_INCR_W not implemented" +msgstr "DST__K_SET_LINUM_INCR_W belum diimplementasikan" -#: vms-hdr.c:963 -msgid "DST_S_C_RESET_LINUM_INCR not implemented" -msgstr "DST_S_C_RESET_LINUM_INCR belum diimplementasikan" +#: vms-alpha.c:4399 +msgid "DST__K_RESET_LINUM_INCR not implemented" +msgstr "DST__K_RESET_LINUM_INCR belum diimplementasikan" -#: vms-hdr.c:969 -msgid "DST_S_C_BEG_STMT_MODE not implemented" -msgstr "DST_S_C_BEG_STMT_MODE belum diimplementasikan" +#: vms-alpha.c:4405 +msgid "DST__K_BEG_STMT_MODE not implemented" +msgstr "DST__K_BEG_STMT_MODE belum diimplementasikan" -#: vms-hdr.c:975 -msgid "DST_S_C_END_STMT_MODE not implemented" -msgstr "DST_S_C_END_STMT_MODE belum diimplementasikan" +#: vms-alpha.c:4411 +msgid "DST__K_END_STMT_MODE not implemented" +msgstr "DST__K_END_STMT_MODE belum diimplementasikan" -#: vms-hdr.c:1008 -msgid "DST_S_C_SET_PC not implemented" -msgstr "DST_S_C_SET_PC belum diimplementasikan" +#: vms-alpha.c:4438 +msgid "DST__K_SET_PC not implemented" +msgstr "DST__K_SET_PC belum diimplementasikan" -#: vms-hdr.c:1014 -msgid "DST_S_C_SET_PC_W not implemented" -msgstr "DST_S_C_SET_PC_W belum diimplementasikan" +#: vms-alpha.c:4444 +msgid "DST__K_SET_PC_W not implemented" +msgstr "DST__K_SET_PC_W belum diimplementasikan" -#: vms-hdr.c:1020 -msgid "DST_S_C_SET_PC_L not implemented" -msgstr "DST_S_C_SET_PC_L belum diimplementasikan" +#: vms-alpha.c:4450 +msgid "DST__K_SET_PC_L not implemented" +msgstr "DST__K_SET_PC_L belum diimplementasikan" -#: vms-hdr.c:1026 -msgid "DST_S_C_SET_STMTNUM not implemented" -msgstr "DST_S_C_SET_STMTNUM belum diimplementasikan" +#: vms-alpha.c:4456 +msgid "DST__K_SET_STMTNUM not implemented" +msgstr "DST__K_SET_STMTNUM belum diimplementasikan" -#: vms-hdr.c:1079 +#: vms-alpha.c:4499 #, c-format msgid "unknown line command %d" msgstr "baris perintah %d tidak diketahui" -#: vms-misc.c:588 +#: vms-alpha.c:4953 vms-alpha.c:4970 vms-alpha.c:4984 vms-alpha.c:4999 +#: vms-alpha.c:5011 vms-alpha.c:5022 vms-alpha.c:5034 #, c-format -msgid "Stack overflow (%d) in _bfd_vms_push" -msgstr "Stack overflow (%d) dalam _bfd_vms_push" +msgid "Unknown reloc %s + %s" +msgstr "Relokasi %s + %s tidak diketahui" -#: vms-misc.c:603 -msgid "Stack underflow in _bfd_vms_pop" -msgstr "Stack underflow dalam _bfd_vms_pop" +#: vms-alpha.c:5089 +#, c-format +msgid "Unknown reloc %s" +msgstr "Relokasi %s tidak diketahui" -#: vms-misc.c:844 -msgid "_bfd_vms_output_counted called with zero bytes" -msgstr "_bfd_vms_output_counted dipanggil dengan zero bytes" +#: vms-alpha.c:5102 +msgid "Invalid section index in ETIR" +msgstr "Indek daerah tidak valid dalam ETIR" -#: vms-misc.c:849 -msgid "_bfd_vms_output_counted called with too many bytes" -msgstr "_bfd_vms_output_counted dipanggil dengan terlalu banyak bytes" +#: vms-alpha.c:5109 +msgid "Relocation for non-REL psect" +msgstr "Relocation for non-REL psect" -#: vms-misc.c:967 +#: vms-alpha.c:5156 #, c-format -msgid "Symbol %s replaced by %s\n" -msgstr "Simbol %s digantikan oleh %s\n" +msgid "Unknown symbol in command %s" +msgstr "Simbol tidak diketahui dalam perintah %s" -#: vms-misc.c:1026 +#: vms-alpha.c:5671 #, c-format -msgid "failed to enter %s" -msgstr "gagal untuk memasuki %s" +msgid " EMH %u (len=%u): " +msgstr " EMH %u (len=%u): " -#: vms-tir.c:83 -msgid "No Mem !" -msgstr "Tidak ada Memori !" +#: vms-alpha.c:5680 +#, c-format +msgid "Module header\n" +msgstr "Kepala module\n" -#. These names have not yet been added to this switch statement. -#: vms-tir.c:346 +#: vms-alpha.c:5681 #, c-format -msgid "unknown ETIR command %d" -msgstr "perintah ETIR %d tidak diketahui" +msgid " structure level: %u\n" +msgstr " structure level: %u\n" -#: vms-tir.c:440 +#: vms-alpha.c:5682 #, c-format -msgid "bad section index in %s" -msgstr "Indek daerah buruk dalam %s" +msgid " max record size: %u\n" +msgstr " max record size: %u\n" -#: vms-tir.c:459 +#: vms-alpha.c:5685 #, c-format -msgid "unsupported STA cmd %s" -msgstr "perintah %s STA tidak didukung" +msgid " module name : %.*s\n" +msgstr " module name : %.*s\n" -#: vms-tir.c:464 vms-tir.c:1304 +#: vms-alpha.c:5687 #, c-format -msgid "reserved STA cmd %d" -msgstr "perintah %d STA direserve" +msgid " module version : %.*s\n" +msgstr " module versi : %.*s\n" -#. Unsigned shift. -#. Rotate. -#. Redefine symbol to current location. -#. Define a literal. -#: vms-tir.c:655 vms-tir.c:774 vms-tir.c:894 vms-tir.c:1624 +#: vms-alpha.c:5689 #, c-format -msgid "%s: not supported" -msgstr "%s: tidak didukung" +msgid " compile date : %.17s\n" +msgstr " compile date : %.17s\n" -#: vms-tir.c:661 vms-tir.c:1481 +#: vms-alpha.c:5694 #, c-format -msgid "%s: not implemented" -msgstr "%s: tidak terimplementasi" +msgid "Language Processor Name\n" +msgstr "Language Processor Name\n" -#: vms-tir.c:666 vms-tir.c:1485 +#: vms-alpha.c:5695 #, c-format -msgid "reserved STO cmd %d" -msgstr "reserved STO perintah %d" +msgid " language name: %.*s\n" +msgstr " language name: %.*s\n" -#: vms-tir.c:789 vms-tir.c:1629 +#: vms-alpha.c:5702 #, c-format -msgid "reserved OPR cmd %d" -msgstr "reserved OPR perintah %d" +msgid "Source Files Header\n" +msgstr "Source Files Header\n" -#: vms-tir.c:852 vms-tir.c:1693 +#: vms-alpha.c:5703 #, c-format -msgid "reserved CTL cmd %d" -msgstr "reserved CTL perintah %d" +msgid " file: %.*s\n" +msgstr " file: %.*s\n" -#: vms-tir.c:966 +#: vms-alpha.c:5710 #, c-format -msgid "reserved STC cmd %d" -msgstr "perintah %d direserve" +msgid "Title Text Header\n" +msgstr "Title Text Header\n" -#. stack byte from image -#. arg: none. -#: vms-tir.c:1212 -msgid "stack-from-image not implemented" -msgstr "stack-from-image tidak terimplementasi" +#: vms-alpha.c:5711 +#, c-format +msgid " title: %.*s\n" +msgstr " title: %.*s\n" -#: vms-tir.c:1230 -msgid "stack-entry-mask not fully implemented" -msgstr "stack-entry-mask tidak terimplementasi secara penuh" +#: vms-alpha.c:5718 +#, c-format +msgid "Copyright Header\n" +msgstr "Copyright Header\n" -#. compare procedure argument -#. arg: cs symbol name -#. by argument index -#. da argument descriptor -#. -#. compare argument descriptor with symbol argument (ARG$V_PASSMECH) -#. and stack TRUE (args match) or FALSE (args dont match) value. -#: vms-tir.c:1244 -msgid "PASSMECH not fully implemented" -msgstr "PASSMECH tidak terimplementasi secara penuh" +#: vms-alpha.c:5719 +#, c-format +msgid " copyright: %.*s\n" +msgstr " copyright: %.*s\n" -#: vms-tir.c:1263 -msgid "stack-local-symbol not fully implemented" -msgstr "stack-local-symbol tidak terimplementasi secara penuh" +#: vms-alpha.c:5725 +#, c-format +msgid "unhandled emh subtype %u\n" +msgstr "subtipe emh tidak tertangani %u\n" -#: vms-tir.c:1276 -msgid "stack-literal not fully implemented" -msgstr "stack-literal tidak terimplementasi secara penuh" +#: vms-alpha.c:5735 +#, c-format +msgid " EEOM (len=%u):\n" +msgstr " EEOM (len=%u):\n" -#: vms-tir.c:1297 -msgid "stack-local-symbol-entry-point-mask not fully implemented" -msgstr "stack-local-symbol-entry-point-mask tidak terimplementasi secara penuh" +#: vms-alpha.c:5736 +#, c-format +msgid " number of cond linkage pairs: %u\n" +msgstr " number of cond linkage pairs: %u\n" -#: vms-tir.c:1571 vms-tir.c:1583 vms-tir.c:1595 vms-tir.c:1607 vms-tir.c:1672 -#: vms-tir.c:1680 vms-tir.c:1688 +#: vms-alpha.c:5738 #, c-format -msgid "%s: not fully implemented" -msgstr "%s: tidak terimplementasi secara penuh" +msgid " completion code: %u\n" +msgstr " completion code: %u\n" -#: vms-tir.c:1746 +#: vms-alpha.c:5742 #, c-format -msgid "obj code %d not found" -msgstr "obj kode %d tidak ditemukan" +msgid " transfer addr flags: 0x%02x\n" +msgstr " transfer addr flags: 0x%02x\n" -#: vms-tir.c:2019 +#: vms-alpha.c:5743 #, c-format -msgid "Reloc size error in section %s" -msgstr "Kesalahan ukuran relokasi dalam daerah %s" +msgid " transfer addr psect: %u\n" +msgstr " transfer addr psect: %u\n" -#: vms-tir.c:2112 vms-tir.c:2129 vms-tir.c:2147 vms-tir.c:2159 vms-tir.c:2170 -#: vms-tir.c:2182 +#: vms-alpha.c:5745 #, c-format -msgid "Unknown reloc %s + %s" -msgstr "Relokasi %s + %s tidak diketahui" +msgid " transfer address : 0x%08x\n" +msgstr " transfer alamat : 0x%08x\n" + +#: vms-alpha.c:5754 +msgid " WEAK" +msgstr " WEAK" + +#: vms-alpha.c:5756 +msgid " DEF" +msgstr " DEF" + +#: vms-alpha.c:5758 +msgid " UNI" +msgstr " UNI" + +#: vms-alpha.c:5760 vms-alpha.c:5781 +msgid " REL" +msgstr " REL" + +#: vms-alpha.c:5762 +msgid " COMM" +msgstr " COMM" + +#: vms-alpha.c:5764 +msgid " VECEP" +msgstr " VECEP" + +#: vms-alpha.c:5766 +msgid " NORM" +msgstr " NORM" + +#: vms-alpha.c:5768 +msgid " QVAL" +msgstr " QVAL" + +#: vms-alpha.c:5775 +msgid " PIC" +msgstr " PIC" + +#: vms-alpha.c:5777 +msgid " LIB" +msgstr " LIB" + +#: vms-alpha.c:5779 +msgid " OVR" +msgstr " OVR" + +#: vms-alpha.c:5783 +msgid " GBL" +msgstr " GBL" + +#: vms-alpha.c:5785 +msgid " SHR" +msgstr " SHR" + +#: vms-alpha.c:5787 +msgid " EXE" +msgstr " EXE" + +#: vms-alpha.c:5789 +msgid " RD" +msgstr " RD" -#: vms-tir.c:2249 +#: vms-alpha.c:5791 +msgid " WRT" +msgstr " WRT" + +#: vms-alpha.c:5793 +msgid " VEC" +msgstr " VEC" + +#: vms-alpha.c:5795 +msgid " NOMOD" +msgstr " NOMOD" + +#: vms-alpha.c:5797 +msgid " COM" +msgstr " COM" + +#: vms-alpha.c:5799 +msgid " 64B" +msgstr " 64B" + +#: vms-alpha.c:5808 #, c-format -msgid "Unknown symbol %s in command %s" -msgstr "Simbol %s tidak diketahui dalam perintah %s" +msgid " EGSD (len=%u):\n" +msgstr " EGSD (len=%u):\n" -#: vms-tir.c:2504 +#: vms-alpha.c:5820 #, c-format -msgid "SEC_RELOC with no relocs in section %s" -msgstr "SEC_RELOC dengan tidak ada relokasi dalam daerah %s" +msgid " EGSD entry %2u (type: %u, len: %u): " +msgstr " EGSD entry %2u (type: %u, len: %u): " -#: vms-tir.c:2556 vms-tir.c:2783 +#: vms-alpha.c:5832 #, c-format -msgid "Size error in section %s" -msgstr "Kesalahan ukuran dalam daerah %s" +msgid "PSC - Program section definition\n" +msgstr "PSC - Definisi bagian program\n" -#: vms-tir.c:2725 -msgid "Spurious ALPHA_R_BSR reloc" -msgstr "Spurious ALPHA_R_BSR relokasi" +#: vms-alpha.c:5833 vms-alpha.c:5850 +#, c-format +msgid " alignment : 2**%u\n" +msgstr " alignment : 2**%u\n" -#: vms-tir.c:2770 +#: vms-alpha.c:5834 vms-alpha.c:5851 #, c-format -msgid "Unhandled relocation %s" -msgstr "Relokasi %s tidak tertangani" +msgid " flags : 0x%04x" +msgstr " tanda : 0x%04x" + +#: vms-alpha.c:5838 +#, c-format +msgid " alloc (len): %u (0x%08x)\n" +msgstr " alloc (len): %u (0x%08x)\n" + +#: vms-alpha.c:5839 vms-alpha.c:5896 vms-alpha.c:5945 +#, c-format +msgid " name : %.*s\n" +msgstr " nama : %.*s\n" + +#: vms-alpha.c:5849 +#, c-format +msgid "SPSC - Shared Image Program section def\n" +msgstr "SPSC - Shared Image Program section def\n" + +#: vms-alpha.c:5855 +#, c-format +msgid " alloc (len) : %u (0x%08x)\n" +msgstr " alloc (len) : %u (0x%08x)\n" + +#: vms-alpha.c:5856 +#, c-format +msgid " image offset : 0x%08x\n" +msgstr " besar byte : 0x%08x\n" + +#: vms-alpha.c:5858 +#, c-format +msgid " symvec offset : 0x%08x\n" +msgstr " symvec offset : 0x%08x\n" + +#: vms-alpha.c:5860 +#, c-format +msgid " name : %.*s\n" +msgstr " nama : %.*s\n" + +#: vms-alpha.c:5873 +#, c-format +msgid "SYM - Global symbol definition\n" +msgstr "SYM - Global symbol definition\n" + +#: vms-alpha.c:5874 vms-alpha.c:5934 vms-alpha.c:5955 vms-alpha.c:5974 +#, c-format +msgid " flags: 0x%04x" +msgstr " tanda: 0x%04x" + +#: vms-alpha.c:5877 +#, c-format +msgid " psect offset: 0x%08x\n" +msgstr " psect offset: 0x%08x\n" + +#: vms-alpha.c:5881 +#, c-format +msgid " code address: 0x%08x\n" +msgstr " code address: 0x%08x\n" + +#: vms-alpha.c:5883 +#, c-format +msgid " psect index for entry point : %u\n" +msgstr " psect index for entry point : %u\n" + +#: vms-alpha.c:5886 vms-alpha.c:5962 vms-alpha.c:5981 +#, c-format +msgid " psect index : %u\n" +msgstr " psect indeks: %u\n" + +#: vms-alpha.c:5888 vms-alpha.c:5964 vms-alpha.c:5983 +#, c-format +msgid " name : %.*s\n" +msgstr " nama : %.*s\n" + +#: vms-alpha.c:5895 +#, c-format +msgid "SYM - Global symbol reference\n" +msgstr "SYM - Global symbol reference\n" + +#: vms-alpha.c:5907 +#, c-format +msgid "IDC - Ident Consistency check\n" +msgstr "IDC - Ident Consistency check\n" + +#: vms-alpha.c:5908 +#, c-format +msgid " flags : 0x%08x" +msgstr " tanda : 0x%08x" + +#: vms-alpha.c:5912 +#, c-format +msgid " id match : %x\n" +msgstr " besar byte : %x\n" + +#: vms-alpha.c:5914 +#, c-format +msgid " error severity: %x\n" +msgstr " error severity: %x\n" + +#: vms-alpha.c:5917 +#, c-format +msgid " entity name : %.*s\n" +msgstr " entity name : %.*s\n" + +#: vms-alpha.c:5919 +#, c-format +msgid " object name : %.*s\n" +msgstr " object name : %.*s\n" + +#: vms-alpha.c:5922 +#, c-format +msgid " binary ident : 0x%08x\n" +msgstr " binary ident : 0x%08x\n" + +#: vms-alpha.c:5925 +#, c-format +msgid " ascii ident : %.*s\n" +msgstr " ascii ident : %.*s\n" + +#: vms-alpha.c:5933 +#, c-format +msgid "SYMG - Universal symbol definition\n" +msgstr "SYMG - Universal symbol definition\n" + +#: vms-alpha.c:5937 +#, c-format +msgid " symbol vector offset: 0x%08x\n" +msgstr " symbol vector offset: 0x%08x\n" + +#: vms-alpha.c:5939 +#, c-format +msgid " entry point: 0x%08x\n" +msgstr " titik masuk: 0x%08x\n" + +#: vms-alpha.c:5941 +#, c-format +msgid " proc descr : 0x%08x\n" +msgstr " deskripsi proses : 0x%08x\n" + +#: vms-alpha.c:5943 +#, c-format +msgid " psect index: %u\n" +msgstr " psect indeks: %u\n" + +#: vms-alpha.c:5954 +#, c-format +msgid "SYMV - Vectored symbol definition\n" +msgstr "SYMV - Vectored definisi simbol\n" + +#: vms-alpha.c:5958 +#, c-format +msgid " vector : 0x%08x\n" +msgstr " vector : 0x%08x\n" + +#: vms-alpha.c:5960 vms-alpha.c:5979 +#, c-format +msgid " psect offset: %u\n" +msgstr " psect offset: %u\n" + +#: vms-alpha.c:5973 +#, c-format +msgid "SYMM - Global symbol definition with version\n" +msgstr "SYMM - Global symbol definition with version\n" + +#: vms-alpha.c:5977 +#, c-format +msgid " version mask: 0x%08x\n" +msgstr " version mask: 0x%08x\n" + +#: vms-alpha.c:5988 +#, c-format +msgid "unhandled egsd entry type %u\n" +msgstr "unhandled egsd entry type %u\n" + +#: vms-alpha.c:6022 +#, c-format +msgid " linkage index: %u, replacement insn: 0x%08x\n" +msgstr " linkage index: %u, replacement insn: 0x%08x\n" + +#: vms-alpha.c:6025 +#, c-format +msgid " psect idx 1: %u, offset 1: 0x%08x %08x\n" +msgstr " psect idx 1: %u, offset 1: 0x%08x %08x\n" + +#: vms-alpha.c:6029 +#, c-format +msgid " psect idx 2: %u, offset 2: 0x%08x %08x\n" +msgstr " psect idx 2: %u, offset 2: 0x%08x %08x\n" + +#: vms-alpha.c:6034 +#, c-format +msgid " psect idx 3: %u, offset 3: 0x%08x %08x\n" +msgstr " psect idx 3: %u, offset 3: 0x%08x %08x\n" + +#: vms-alpha.c:6039 +#, c-format +msgid " global name: %.*s\n" +msgstr " global name: %.*s\n" + +#: vms-alpha.c:6049 +#, c-format +msgid " %s (len=%u+%u):\n" +msgstr " %s (len=%u+%u):\n" + +#: vms-alpha.c:6064 +#, c-format +msgid " (type: %3u, size: 4+%3u): " +msgstr " (type: %3u, size: 4+%3u): " + +#: vms-alpha.c:6068 +#, c-format +msgid "STA_GBL (stack global) %.*s\n" +msgstr "STA_GBL (stack global) %.*s\n" + +#: vms-alpha.c:6072 +#, c-format +msgid "STA_LW (stack longword) 0x%08x\n" +msgstr "STA_LW (stack longword) 0x%08x\n" + +#: vms-alpha.c:6076 +#, c-format +msgid "STA_QW (stack quadword) 0x%08x %08x\n" +msgstr "STA_QW (stack quadword) 0x%08x %08x\n" + +#: vms-alpha.c:6081 +#, c-format +msgid "STA_PQ (stack psect base + offset)\n" +msgstr "STA_PQ (stack psect base + offset)\n" + +#: vms-alpha.c:6082 +#, c-format +msgid " psect: %u, offset: 0x%08x %08x\n" +msgstr " psect: %u, offset: 0x%08x %08x\n" + +#: vms-alpha.c:6088 +#, c-format +msgid "STA_LI (stack literal)\n" +msgstr "STA_LI (stack literal)\n" + +#: vms-alpha.c:6091 +#, c-format +msgid "STA_MOD (stack module)\n" +msgstr "STA_MOD (stack module)\n" + +#: vms-alpha.c:6094 +#, c-format +msgid "STA_CKARG (compare procedure argument)\n" +msgstr "STA_CKARG (compare procedure argument)\n" + +#: vms-alpha.c:6098 +#, c-format +msgid "STO_B (store byte)\n" +msgstr "STO_B (store byte)\n" + +#: vms-alpha.c:6101 +#, c-format +msgid "STO_W (store word)\n" +msgstr "STO_W (store word)\n" + +#: vms-alpha.c:6104 +#, c-format +msgid "STO_LW (store longword)\n" +msgstr "STO_LW (store longword)\n" + +#: vms-alpha.c:6107 +#, c-format +msgid "STO_QW (store quadword)\n" +msgstr "STO_QW (store quadword)\n" + +#: vms-alpha.c:6113 +#, c-format +msgid "STO_IMMR (store immediate repeat) %u bytes\n" +msgstr "STO_IMMR (store immediate repeat) %u bytes\n" + +#: vms-alpha.c:6120 +#, c-format +msgid "STO_GBL (store global) %.*s\n" +msgstr "STO_GBL (store global) %.*s\n" + +#: vms-alpha.c:6124 +#, c-format +msgid "STO_CA (store code address) %.*s\n" +msgstr "STO_CA (store code address) %.*s\n" + +#: vms-alpha.c:6128 +#, c-format +msgid "STO_RB (store relative branch)\n" +msgstr "STO_RB (store relative branch)\n" + +#: vms-alpha.c:6131 +#, c-format +msgid "STO_AB (store absolute branch)\n" +msgstr "STO_AB (store absolute branch)\n" + +#: vms-alpha.c:6134 +#, c-format +msgid "STO_OFF (store offset to psect)\n" +msgstr "STO_OFF (store offset to psect)\n" + +#: vms-alpha.c:6140 +#, c-format +msgid "STO_IMM (store immediate) %u bytes\n" +msgstr "STO_IMM (store immediate) %u bytes\n" + +#: vms-alpha.c:6147 +#, c-format +msgid "STO_GBL_LW (store global longword) %.*s\n" +msgstr "STO_GBL_LW (store global longword) %.*s\n" + +#: vms-alpha.c:6151 +#, c-format +msgid "STO_OFF (store LP with procedure signature)\n" +msgstr "STO_OFF (store LP with procedure signature)\n" + +#: vms-alpha.c:6154 +#, c-format +msgid "STO_BR_GBL (store branch global) *todo*\n" +msgstr "STO_BR_GBL (store branch global) *todo*\n" + +#: vms-alpha.c:6157 +#, c-format +msgid "STO_BR_PS (store branch psect + offset) *todo*\n" +msgstr "STO_BR_PS (store branch psect + offset) *todo*\n" + +#: vms-alpha.c:6161 +#, c-format +msgid "OPR_NOP (no-operation)\n" +msgstr "OPR_NOP (no-operation)\n" + +#: vms-alpha.c:6164 +#, c-format +msgid "OPR_ADD (add)\n" +msgstr "OPR_ADD (add)\n" + +#: vms-alpha.c:6167 +#, c-format +msgid "OPR_SUB (substract)\n" +msgstr "OPR_SUB (substract)\n" + +#: vms-alpha.c:6170 +#, c-format +msgid "OPR_MUL (multiply)\n" +msgstr "OPR_MUL (multiply)\n" + +#: vms-alpha.c:6173 +#, c-format +msgid "OPR_DIV (divide)\n" +msgstr "OPR_DIV (divide)\n" + +#: vms-alpha.c:6176 +#, c-format +msgid "OPR_AND (logical and)\n" +msgstr "OPR_AND (logical and)\n" + +#: vms-alpha.c:6179 +#, c-format +msgid "OPR_IOR (logical inclusive or)\n" +msgstr "OPR_IOR (logical inclusive or)\n" + +#: vms-alpha.c:6182 +#, c-format +msgid "OPR_EOR (logical exclusive or)\n" +msgstr "OPR_EOR (logical exclusive or)\n" + +#: vms-alpha.c:6185 +#, c-format +msgid "OPR_NEG (negate)\n" +msgstr "OPR_NEG (negate)\n" + +#: vms-alpha.c:6188 +#, c-format +msgid "OPR_COM (complement)\n" +msgstr "OPR_COM (complement)\n" + +#: vms-alpha.c:6191 +#, c-format +msgid "OPR_INSV (insert field)\n" +msgstr "OPR_INSV (insert field)\n" + +#: vms-alpha.c:6194 +#, c-format +msgid "OPR_ASH (arithmetic shift)\n" +msgstr "OPR_ASH (arithmetic shift)\n" + +#: vms-alpha.c:6197 +#, c-format +msgid "OPR_USH (unsigned shift)\n" +msgstr "OPR_USH (unsigned shift)\n" + +#: vms-alpha.c:6200 +#, c-format +msgid "OPR_ROT (rotate)\n" +msgstr "OPR_ROT (rotate)\n" + +#: vms-alpha.c:6203 +#, c-format +msgid "OPR_SEL (select)\n" +msgstr "OPR_SEL (select)\n" + +#: vms-alpha.c:6206 +#, c-format +msgid "OPR_REDEF (redefine symbol to curr location)\n" +msgstr "OPR_REDEF (redefine symbol to curr location)\n" + +#: vms-alpha.c:6209 +#, c-format +msgid "OPR_REDEF (define a literal)\n" +msgstr "OPR_REDEF (define a literal)\n" + +#: vms-alpha.c:6213 +#, c-format +msgid "STC_LP (store cond linkage pair)\n" +msgstr "STC_LP (store cond linkage pair)\n" + +#: vms-alpha.c:6217 +#, c-format +msgid "STC_LP_PSB (store cond linkage pair + signature)\n" +msgstr "STC_LP_PSB (store cond linkage pair + signature)\n" + +#: vms-alpha.c:6218 +#, c-format +msgid " linkage index: %u, procedure: %.*s\n" +msgstr " linkage index: %u, procedure: %.*s\n" + +#: vms-alpha.c:6221 +#, c-format +msgid " signature: %.*s\n" +msgstr " signature: %.*s\n" + +#: vms-alpha.c:6224 +#, c-format +msgid "STC_GBL (store cond global)\n" +msgstr "STC_GBL (store cond global)\n" + +#: vms-alpha.c:6225 +#, c-format +msgid " linkage index: %u, global: %.*s\n" +msgstr " linkage index: %u, global: %.*s\n" + +#: vms-alpha.c:6229 +#, c-format +msgid "STC_GCA (store cond code address)\n" +msgstr "STC_GCA (store cond code address)\n" + +#: vms-alpha.c:6230 +#, c-format +msgid " linkage index: %u, procedure name: %.*s\n" +msgstr " linkage index: %u, procedure name: %.*s\n" + +#: vms-alpha.c:6234 +#, c-format +msgid "STC_PS (store cond psect + offset)\n" +msgstr "STC_PS (store cond psect + offset)\n" + +#: vms-alpha.c:6236 +#, c-format +msgid " linkage index: %u, psect: %u, offset: 0x%08x %08x\n" +msgstr " linkage index: %u, psect: %u, offset: 0x%08x %08x\n" + +#: vms-alpha.c:6243 +#, c-format +msgid "STC_NOP_GBL (store cond NOP at global addr)\n" +msgstr "STC_NOP_GBL (store cond NOP at global addr)\n" + +#: vms-alpha.c:6247 +#, c-format +msgid "STC_NOP_PS (store cond NOP at psect + offset)\n" +msgstr "STC_NOP_PS (store cond NOP at psect + offset)\n" + +#: vms-alpha.c:6251 +#, c-format +msgid "STC_BSR_GBL (store cond BSR at global addr)\n" +msgstr "STC_BSR_GBL (store cond BSR at global addr)\n" + +#: vms-alpha.c:6255 +#, c-format +msgid "STC_BSR_PS (store cond BSR at psect + offset)\n" +msgstr "STC_BSR_PS (store cond BSR at psect + offset)\n" + +#: vms-alpha.c:6259 +#, c-format +msgid "STC_LDA_GBL (store cond LDA at global addr)\n" +msgstr "STC_LDA_GBL (store cond LDA at global addr)\n" + +#: vms-alpha.c:6263 +#, c-format +msgid "STC_LDA_PS (store cond LDA at psect + offset)\n" +msgstr "STC_LDA_PS (store cond LDA at psect + offset)\n" + +#: vms-alpha.c:6267 +#, c-format +msgid "STC_BOH_GBL (store cond BOH at global addr)\n" +msgstr "STC_BOH_GBL (store cond BOH at global addr)\n" + +#: vms-alpha.c:6271 +#, c-format +msgid "STC_BOH_PS (store cond BOH at psect + offset)\n" +msgstr "STC_BOH_PS (store cond BOH at psect + offset)\n" + +#: vms-alpha.c:6276 +#, c-format +msgid "STC_NBH_GBL (store cond or hint at global addr)\n" +msgstr "STC_NBH_GBL (store cond or hint at global addr)\n" + +#: vms-alpha.c:6280 +#, c-format +msgid "STC_NBH_PS (store cond or hint at psect + offset)\n" +msgstr "STC_NBH_PS (store cond or hint at psect + offset)\n" + +#: vms-alpha.c:6284 +#, c-format +msgid "CTL_SETRB (set relocation base)\n" +msgstr "CTL_SETRB (set relocation base)\n" + +#: vms-alpha.c:6290 +#, c-format +msgid "CTL_AUGRB (augment relocation base) %u\n" +msgstr "CTL_AUGRB (augment relocation base) %u\n" + +#: vms-alpha.c:6294 +#, c-format +msgid "CTL_DFLOC (define location)\n" +msgstr "CTL_DFLOC (define location)\n" + +#: vms-alpha.c:6297 +#, c-format +msgid "CTL_STLOC (set location)\n" +msgstr "CTL_STLOC (set location)\n" + +#: vms-alpha.c:6300 +#, c-format +msgid "CTL_STKDL (stack defined location)\n" +msgstr "CTL_STKDL (stack defined location)\n" + +#: vms-alpha.c:6303 vms-alpha.c:6717 +#, c-format +msgid "*unhandled*\n" +msgstr "*unhandled*\n" + +#: vms-alpha.c:6333 vms-alpha.c:6372 +#, c-format +msgid "cannot read GST record length\n" +msgstr "cannot read GST record length\n" + +#. Ill-formed. +#: vms-alpha.c:6354 +#, c-format +msgid "cannot find EMH in first GST record\n" +msgstr "cannot find EMH in first GST record\n" + +#: vms-alpha.c:6380 +#, c-format +msgid "cannot read GST record header\n" +msgstr "cannot read GST record header\n" + +#: vms-alpha.c:6393 +#, c-format +msgid " corrupted GST\n" +msgstr " corrupted GST\n" + +#: vms-alpha.c:6401 +#, c-format +msgid "cannot read GST record\n" +msgstr "cannot read GST record\n" + +#: vms-alpha.c:6430 +#, c-format +msgid " unhandled EOBJ record type %u\n" +msgstr " tipe rekaman EOBJ tidak tertangani %u\n" + +#: vms-alpha.c:6453 +#, c-format +msgid " bitcount: %u, base addr: 0x%08x\n" +msgstr " bitcount: %u, base addr: 0x%08x\n" + +#: vms-alpha.c:6466 +#, c-format +msgid " bitmap: 0x%08x (count: %u):\n" +msgstr " bitmap: 0x%08x (count: %u):\n" + +#: vms-alpha.c:6473 +#, c-format +msgid " %08x" +msgstr " %08x" + +#: vms-alpha.c:6498 +#, c-format +msgid " image %u (%u entries)\n" +msgstr " image %u (%u entries)\n" + +#: vms-alpha.c:6503 +#, c-format +msgid " offset: 0x%08x, val: 0x%08x\n" +msgstr " offset: 0x%08x, val: 0x%08x\n" + +#: vms-alpha.c:6524 +#, c-format +msgid " image %u (%u entries), offsets:\n" +msgstr " image %u (%u entries), offsets:\n" + +#: vms-alpha.c:6531 +#, c-format +msgid " 0x%08x" +msgstr " 0x%08x" + +#. 64 bits. +#: vms-alpha.c:6653 +#, c-format +msgid "64 bits *unhandled*\n" +msgstr "64 bits *unhandled*\n" + +#: vms-alpha.c:6657 +#, c-format +msgid "class: %u, dtype: %u, length: %u, pointer: 0x%08x\n" +msgstr "class: %u, dtype: %u, length: %u, pointer: 0x%08x\n" + +#: vms-alpha.c:6668 +#, c-format +msgid "non-contiguous array of %s\n" +msgstr "non-contiguous array of %s\n" + +#: vms-alpha.c:6672 +#, c-format +msgid "dimct: %u, aflags: 0x%02x, digits: %u, scale: %u\n" +msgstr "dimct: %u, aflags: 0x%02x, digits: %u, scale: %u\n" + +#: vms-alpha.c:6676 +#, c-format +msgid "arsize: %u, a0: 0x%08x\n" +msgstr "arsize: %u, a0: 0x%08x\n" + +#: vms-alpha.c:6680 +#, c-format +msgid "Strides:\n" +msgstr "Strides:\n" + +#: vms-alpha.c:6685 +#, c-format +msgid "[%u]: %u\n" +msgstr "[%u]: %u\n" + +#: vms-alpha.c:6690 +#, c-format +msgid "Bounds:\n" +msgstr "Bounds:\n" + +#: vms-alpha.c:6695 +#, c-format +msgid "[%u]: Lower: %u, upper: %u\n" +msgstr "[%u]: Lower: %u, upper: %u\n" + +#: vms-alpha.c:6707 +#, c-format +msgid "unaligned bit-string of %s\n" +msgstr "unaligned bit-string of %s\n" + +#: vms-alpha.c:6711 +#, c-format +msgid "base: %u, pos: %u\n" +msgstr "base: %u, pos: %u\n" + +#: vms-alpha.c:6731 +#, c-format +msgid "vflags: 0x%02x, value: 0x%08x " +msgstr "vflags: 0x%02x, value: 0x%08x " + +#: vms-alpha.c:6737 +#, c-format +msgid "(no value)\n" +msgstr "(tidak ada nilai)\n" + +#: vms-alpha.c:6740 +#, c-format +msgid "(not active)\n" +msgstr "(not active)\n" + +#: vms-alpha.c:6743 +#, c-format +msgid "(not allocated)\n" +msgstr "(not allocated)\n" + +#: vms-alpha.c:6746 +#, c-format +msgid "(descriptor)\n" +msgstr "(descriptor)\n" + +#: vms-alpha.c:6750 +#, c-format +msgid "(trailing value)\n" +msgstr "(trailing value)\n" + +#: vms-alpha.c:6753 +#, c-format +msgid "(value spec follows)\n" +msgstr "(value spec follows)\n" + +#: vms-alpha.c:6756 +#, c-format +msgid "(at bit offset %u)\n" +msgstr "(at bit offset %u)\n" + +#: vms-alpha.c:6759 +#, c-format +msgid "(reg: %u, disp: %u, indir: %u, kind: " +msgstr "(reg: %u, disp: %u, indir: %u, kind: " + +#: vms-alpha.c:6766 +msgid "literal" +msgstr "literal" + +#: vms-alpha.c:6769 +msgid "address" +msgstr "alamat" + +#: vms-alpha.c:6772 +msgid "desc" +msgstr "desc" + +#: vms-alpha.c:6775 +msgid "reg" +msgstr "reg" + +#: vms-alpha.c:6850 +#, c-format +msgid "Debug symbol table:\n" +msgstr "Simbol tabel penelusuran:\n" + +#: vms-alpha.c:6861 +#, c-format +msgid "cannot read DST header\n" +msgstr "cannot read DST header\n" + +#: vms-alpha.c:6866 +#, c-format +msgid " type: %3u, len: %3u (at 0x%08x): " +msgstr " type: %3u, len: %3u (at 0x%08x): " + +#: vms-alpha.c:6880 +#, c-format +msgid "cannot read DST symbol\n" +msgstr "tidak dapat membaca DST simbol\n" + +#: vms-alpha.c:6923 +#, c-format +msgid "standard data: %s\n" +msgstr "standard data: %s\n" + +#: vms-alpha.c:6926 vms-alpha.c:7010 +#, c-format +msgid " name: %.*s\n" +msgstr " nama: %.*s\n" + +#: vms-alpha.c:6933 +#, c-format +msgid "modbeg\n" +msgstr "modbeg\n" + +#: vms-alpha.c:6934 +#, c-format +msgid " flags: %d, language: %u, major: %u, minor: %u\n" +msgstr " flags: %d, language: %u, major: %u, minor: %u\n" + +#: vms-alpha.c:6940 vms-alpha.c:7206 +#, c-format +msgid " module name: %.*s\n" +msgstr " module name: %.*s\n" + +#: vms-alpha.c:6943 +#, c-format +msgid " compiler : %.*s\n" +msgstr " compiler : %.*s\n" + +#: vms-alpha.c:6948 +#, c-format +msgid "modend\n" +msgstr "modend\n" + +#: vms-alpha.c:6955 +msgid "rtnbeg\n" +msgstr "rtnbeg\n" + +#: vms-alpha.c:6956 +#, c-format +msgid " flags: %u, address: 0x%08x, pd-address: 0x%08x\n" +msgstr " flags: %u, address: 0x%08x, pd-address: 0x%08x\n" + +#: vms-alpha.c:6961 +#, c-format +msgid " routine name: %.*s\n" +msgstr " routine name: %.*s\n" + +#: vms-alpha.c:6969 +#, c-format +msgid "rtnend: size 0x%08x\n" +msgstr "rtnend: size 0x%08x\n" + +#: vms-alpha.c:6977 +#, c-format +msgid "prolog: bkpt address 0x%08x\n" +msgstr "prolog: bkpt address 0x%08x\n" + +#: vms-alpha.c:6985 +#, c-format +msgid "epilog: flags: %u, count: %u\n" +msgstr "epilog: flags: %u, count: %u\n" + +#: vms-alpha.c:6994 +#, c-format +msgid "blkbeg: address: 0x%08x, name: %.*s\n" +msgstr "blkbeg: address: 0x%08x, name: %.*s\n" + +#: vms-alpha.c:7003 +#, c-format +msgid "blkend: size: 0x%08x\n" +msgstr "blkend: ukuran: 0x%08x\n" + +#: vms-alpha.c:7009 +#, c-format +msgid "typspec (len: %u)\n" +msgstr "typspec (len: %u)\n" + +#: vms-alpha.c:7016 +#, c-format +msgid "septyp, name: %.*s\n" +msgstr "septyp, name: %.*s\n" + +#: vms-alpha.c:7025 +#, c-format +msgid "recbeg: name: %.*s\n" +msgstr "recbeg: name: %.*s\n" + +#: vms-alpha.c:7032 +#, c-format +msgid "recend\n" +msgstr "recend\n" + +#: vms-alpha.c:7035 +#, c-format +msgid "enumbeg, len: %u, name: %.*s\n" +msgstr "enumbeg, len: %u, name: %.*s\n" + +#: vms-alpha.c:7039 +#, c-format +msgid "enumelt, name: %.*s\n" +msgstr "enumelt, name: %.*s\n" + +#: vms-alpha.c:7043 +#, c-format +msgid "enumend\n" +msgstr "enumend\n" + +#: vms-alpha.c:7060 +#, c-format +msgid "discontiguous range (nbr: %u)\n" +msgstr "discontiguous range (nbr: %u)\n" + +#: vms-alpha.c:7062 +#, c-format +msgid " address: 0x%08x, size: %u\n" +msgstr " address: 0x%08x, size: %u\n" + +#: vms-alpha.c:7072 +#, c-format +msgid "line num (len: %u)\n" +msgstr "line num (len: %u)\n" + +#: vms-alpha.c:7089 +#, c-format +msgid "delta_pc_w %u\n" +msgstr "delta_pc_w %u\n" + +#: vms-alpha.c:7096 +#, c-format +msgid "incr_linum(b): +%u\n" +msgstr "incr_linum(b): +%u\n" + +#: vms-alpha.c:7102 +#, c-format +msgid "incr_linum_w: +%u\n" +msgstr "incr_linum_w: +%u\n" + +#: vms-alpha.c:7108 +#, c-format +msgid "incr_linum_l: +%u\n" +msgstr "incr_linum_l: +%u\n" + +#: vms-alpha.c:7114 +#, c-format +msgid "set_line_num(w) %u\n" +msgstr "set_line_num(w) %u\n" + +#: vms-alpha.c:7119 +#, c-format +msgid "set_line_num_b %u\n" +msgstr "set_line_num_b %u\n" + +#: vms-alpha.c:7124 +#, c-format +msgid "set_line_num_l %u\n" +msgstr "set_line_num_l %u\n" + +#: vms-alpha.c:7129 +#, c-format +msgid "set_abs_pc: 0x%08x\n" +msgstr "set_abs_pc: 0x%08x\n" + +#: vms-alpha.c:7133 +#, c-format +msgid "delta_pc_l: +0x%08x\n" +msgstr "delta_pc_l: +0x%08x\n" + +#: vms-alpha.c:7138 +#, c-format +msgid "term(b): 0x%02x" +msgstr "term(b): 0x%02x" + +#: vms-alpha.c:7140 +#, c-format +msgid " pc: 0x%08x\n" +msgstr "program counter: 0x%08x\n" + +#: vms-alpha.c:7145 +#, c-format +msgid "term_w: 0x%04x" +msgstr "term_w: 0x%04x" + +#: vms-alpha.c:7147 +#, c-format +msgid " pc: 0x%08x\n" +msgstr "program counter: 0x%08x\n" + +#: vms-alpha.c:7153 +#, c-format +msgid "delta pc +%-4d" +msgstr "delta pc +%-4d" + +#: vms-alpha.c:7156 +#, c-format +msgid " pc: 0x%08x line: %5u\n" +msgstr " pc: 0x%08x line: %5u\n" + +#: vms-alpha.c:7161 +#, c-format +msgid " *unhandled* cmd %u\n" +msgstr " *unhandled* cmd %u\n" + +#: vms-alpha.c:7176 +#, c-format +msgid "source (len: %u)\n" +msgstr "source (len: %u)\n" + +#: vms-alpha.c:7190 +#, c-format +msgid " declfile: len: %u, flags: %u, fileid: %u\n" +msgstr " declfile: len: %u, flags: %u, fileid: %u\n" + +#: vms-alpha.c:7194 +#, 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:7203 +#, c-format +msgid " filename : %.*s\n" +msgstr " filename : %.*s\n" + +#: vms-alpha.c:7212 +#, c-format +msgid " setfile %u\n" +msgstr " setfile %u\n" + +#: vms-alpha.c:7217 vms-alpha.c:7222 +#, c-format +msgid " setrec %u\n" +msgstr " setrec %u\n" + +#: vms-alpha.c:7227 vms-alpha.c:7232 +#, c-format +msgid " setlnum %u\n" +msgstr " setlnum %u\n" + +#: vms-alpha.c:7237 vms-alpha.c:7242 +#, c-format +msgid " deflines %u\n" +msgstr " deflines %u\n" + +#: vms-alpha.c:7246 +#, c-format +msgid " formfeed\n" +msgstr " formfeed\n" + +#: vms-alpha.c:7250 +#, c-format +msgid " *unhandled* cmd %u\n" +msgstr " *unhandled* cmd %u\n" + +#: vms-alpha.c:7262 +#, c-format +msgid "*unhandled* dst type %u\n" +msgstr "*tidak tertangani* tipe dst %u\n" + +#: vms-alpha.c:7294 +#, c-format +msgid "cannot read EIHD\n" +msgstr "cannot read EIHD\n" + +#: vms-alpha.c:7297 +#, c-format +msgid "EIHD: (size: %u, nbr blocks: %u)\n" +msgstr "EIHD: (size: %u, nbr blocks: %u)\n" + +#: vms-alpha.c:7300 +#, c-format +msgid " majorid: %u, minorid: %u\n" +msgstr " majorid: %u, minorid: %u\n" + +#: vms-alpha.c:7308 +msgid "executable" +msgstr "executable" + +#: vms-alpha.c:7311 +msgid "linkable image" +msgstr "linkable image" + +#: vms-alpha.c:7317 +#, c-format +msgid " image type: %u (%s)" +msgstr " tipe gambar: %u (%s)" + +#: vms-alpha.c:7323 +msgid "native" +msgstr "native" + +#: vms-alpha.c:7326 +msgid "CLI" +msgstr "CLI" + +#: vms-alpha.c:7332 +#, c-format +msgid ", subtype: %u (%s)\n" +msgstr ", subtipe: %u (%s)\n" + +#: vms-alpha.c:7338 +#, c-format +msgid " offsets: isd: %u, activ: %u, symdbg: %u, imgid: %u, patch: %u\n" +msgstr " offsets: isd: %u, activ: %u, symdbg: %u, imgid: %u, patch: %u\n" + +#: vms-alpha.c:7342 +#, c-format +msgid " fixup info rva: " +msgstr " fixup info rva: " + +#: vms-alpha.c:7344 +#, c-format +msgid ", symbol vector rva: " +msgstr ", symbol vector rva: " + +#: vms-alpha.c:7347 +#, c-format +msgid "" +"\n" +" version array off: %u\n" +msgstr "" +"\n" +" version array off: %u\n" + +#: vms-alpha.c:7351 +#, c-format +msgid " img I/O count: %u, nbr channels: %u, req pri: %08x%08x\n" +msgstr " img I/O count: %u, nbr channels: %u, req pri: %08x%08x\n" + +#: vms-alpha.c:7357 +#, c-format +msgid " linker flags: %08x:" +msgstr " tanda penyambung: %08x;" + +#: vms-alpha.c:7387 +#, c-format +msgid " ident: 0x%08x, sysver: 0x%08x, match ctrl: %u, symvect_size: %u\n" +msgstr " ident: 0x%08x, sysver: 0x%08x, match ctrl: %u, symvect_size: %u\n" + +#: vms-alpha.c:7393 +#, c-format +msgid " BPAGE: %u" +msgstr " BPAGE: %u" + +#: vms-alpha.c:7399 +#, c-format +msgid ", ext fixup offset: %u, no_opt psect off: %u" +msgstr ", ext fixup offset: %u, no_opt psect off: %u" + +#: vms-alpha.c:7402 +#, c-format +msgid ", alias: %u\n" +msgstr ", alias: %u\n" + +#: vms-alpha.c:7410 +#, c-format +msgid "system version array information:\n" +msgstr "system version array information:\n" + +#: vms-alpha.c:7414 +#, c-format +msgid "cannot read EIHVN header\n" +msgstr "cannot read EIHVN header\n" + +#: vms-alpha.c:7424 +#, c-format +msgid "cannot read EIHVN version\n" +msgstr "cannot read EIHVN version\n" + +#: vms-alpha.c:7427 +#, c-format +msgid " %02u " +msgstr " %02u " + +#: vms-alpha.c:7431 +msgid "BASE_IMAGE " +msgstr "BASE_IMAGE " + +#: vms-alpha.c:7434 +msgid "MEMORY_MANAGEMENT" +msgstr "MEMORY_MANAGEMENT" + +#: vms-alpha.c:7437 +msgid "IO " +msgstr "IO " + +#: vms-alpha.c:7440 +msgid "FILES_VOLUMES " +msgstr "FILES_VOLUMES " + +#: vms-alpha.c:7443 +msgid "PROCESS_SCHED " +msgstr "PROCESS_SCHED " + +#: vms-alpha.c:7446 +msgid "SYSGEN " +msgstr "SYSGEN " + +#: vms-alpha.c:7449 +msgid "CLUSTERS_LOCKMGR " +msgstr "CLUSTERS_LOCKMGR " + +#: vms-alpha.c:7452 +msgid "LOGICAL_NAMES " +msgstr "LOGICAL_NAMES " + +#: vms-alpha.c:7455 +msgid "SECURITY " +msgstr "SECURITY " + +#: vms-alpha.c:7458 +msgid "IMAGE_ACTIVATOR " +msgstr "IMAGE_ACTIVATOR " + +#: vms-alpha.c:7461 +msgid "NETWORKS " +msgstr "NETWORKS " + +#: vms-alpha.c:7464 +msgid "COUNTERS " +msgstr "COUNTERS " + +#: vms-alpha.c:7467 +msgid "STABLE " +msgstr "STABLE " + +#: vms-alpha.c:7470 +msgid "MISC " +msgstr "MISC " + +#: vms-alpha.c:7473 +msgid "CPU " +msgstr "CPU " + +#: vms-alpha.c:7476 +msgid "VOLATILE " +msgstr "VOLATILE " + +#: vms-alpha.c:7479 +msgid "SHELL " +msgstr "SHELL " + +#: vms-alpha.c:7482 +msgid "POSIX " +msgstr "POSIX " + +#: vms-alpha.c:7485 +msgid "MULTI_PROCESSING " +msgstr "MULTI_PROCESSING " + +#: vms-alpha.c:7488 +msgid "GALAXY " +msgstr "GALAXY " + +#: vms-alpha.c:7491 +msgid "*unknown* " +msgstr "*tidak diketahui* " + +#: vms-alpha.c:7494 +#, c-format +msgid ": %u.%u\n" +msgstr ": %u.%u\n" + +#: vms-alpha.c:7507 vms-alpha.c:7766 +#, c-format +msgid "cannot read EIHA\n" +msgstr "cannot read EIHA\n" + +#: vms-alpha.c:7510 +#, c-format +msgid "Image activation: (size=%u)\n" +msgstr "Image activation: (size=%u)\n" + +#: vms-alpha.c:7512 +#, c-format +msgid " First address : 0x%08x 0x%08x\n" +msgstr " First address : 0x%08x 0x%08x\n" + +#: vms-alpha.c:7515 +#, c-format +msgid " Second address: 0x%08x 0x%08x\n" +msgstr " Second address: 0x%08x 0x%08x\n" + +#: vms-alpha.c:7518 +#, c-format +msgid " Third address : 0x%08x 0x%08x\n" +msgstr " Third address : 0x%08x 0x%08x\n" + +#: vms-alpha.c:7521 +#, c-format +msgid " Fourth address: 0x%08x 0x%08x\n" +msgstr " Fourth address: 0x%08x 0x%08x\n" + +#: vms-alpha.c:7524 +#, c-format +msgid " Shared image : 0x%08x 0x%08x\n" +msgstr " Shared image : 0x%08x 0x%08x\n" + +#: vms-alpha.c:7535 +#, c-format +msgid "cannot read EIHI\n" +msgstr "cannot read EIHI\n" + +#: vms-alpha.c:7538 +#, c-format +msgid "Image identification: (major: %u, minor: %u)\n" +msgstr "Image identification: (major: %u, minor: %u)\n" + +#: vms-alpha.c:7541 +#, c-format +msgid " image name : %.*s\n" +msgstr " nama program : %.*s\n" + +#: vms-alpha.c:7543 +#, c-format +msgid " link time : %s\n" +msgstr " waktu penyambungan: %s\n" + +#: vms-alpha.c:7545 +#, c-format +msgid " image ident : %.*s\n" +msgstr " identitas program: %.*s\n" + +#: vms-alpha.c:7547 +#, c-format +msgid " linker ident : %.*s\n" +msgstr " linker ident : %.*s\n" + +#: vms-alpha.c:7549 +#, c-format +msgid " image build ident: %.*s\n" +msgstr " image build ident: %.*s\n" + +#: vms-alpha.c:7559 +#, c-format +msgid "cannot read EIHS\n" +msgstr "cannot read EIHS\n" + +#: vms-alpha.c:7562 +#, c-format +msgid "Image symbol & debug table: (major: %u, minor: %u)\n" +msgstr "Image symbol & debug table: (major: %u, minor: %u)\n" + +#: vms-alpha.c:7567 +#, c-format +msgid " debug symbol table : vbn: %u, size: %u (0x%x)\n" +msgstr " debug symbol table : vbn: %u, size: %u (0x%x)\n" + +#: vms-alpha.c:7571 +#, c-format +msgid " global symbol table: vbn: %u, records: %u\n" +msgstr " global symbol table: vbn: %u, records: %u\n" + +#: vms-alpha.c:7575 +#, c-format +msgid " debug module table : vbn: %u, size: %u\n" +msgstr " debug module table : vbn: %u, size: %u\n" + +#: vms-alpha.c:7588 +#, c-format +msgid "cannot read EISD\n" +msgstr "cannot read EISD\n" + +#: vms-alpha.c:7598 +#, c-format +msgid "Image section descriptor: (major: %u, minor: %u, size: %u, offset: %u)\n" +msgstr "Image section descriptor: (major: %u, minor: %u, size: %u, offset: %u)\n" + +#: vms-alpha.c:7605 +#, c-format +msgid " section: base: 0x%08x%08x size: 0x%08x\n" +msgstr " section: base: 0x%08x%08x size: 0x%08x\n" + +#: vms-alpha.c:7610 +#, c-format +msgid " flags: 0x%04x" +msgstr " tanda: 0x%04x" + +#: vms-alpha.c:7647 +#, c-format +msgid " vbn: %u, pfc: %u, matchctl: %u type: %u (" +msgstr " vbn: %u, pfc: %u, matchctl: %u type: %u (" + +#: vms-alpha.c:7653 +msgid "NORMAL" +msgstr "NORMAL" + +#: vms-alpha.c:7656 +msgid "SHRFXD" +msgstr "SHRFXD" + +#: vms-alpha.c:7659 +msgid "PRVFXD" +msgstr "PRVFXD" + +#: vms-alpha.c:7662 +msgid "SHRPIC" +msgstr "SHRPIC" + +#: vms-alpha.c:7665 +msgid "PRVPIC" +msgstr "PRVPIC" + +#: vms-alpha.c:7668 +msgid "USRSTACK" +msgstr "USRSTACK" + +#: vms-alpha.c:7676 +#, c-format +msgid " ident: 0x%08x, name: %.*s\n" +msgstr " ident: 0x%08x, name: %.*s\n" + +#: vms-alpha.c:7686 +#, c-format +msgid "cannot read DMT\n" +msgstr "cannot read DMT\n" + +#: vms-alpha.c:7690 +#, c-format +msgid "Debug module table:\n" +msgstr "Debug module table:\n" + +#: vms-alpha.c:7699 +#, c-format +msgid "cannot read DMT header\n" +msgstr "cannot read DMT header\n" + +#: vms-alpha.c:7704 +#, c-format +msgid " module offset: 0x%08x, size: 0x%08x, (%u psects)\n" +msgstr " module offset: 0x%08x, size: 0x%08x, (%u psects)\n" + +#: vms-alpha.c:7714 +#, c-format +msgid "cannot read DMT psect\n" +msgstr "cannot read DMT psect\n" + +#: vms-alpha.c:7717 +#, c-format +msgid " psect start: 0x%08x, length: %u\n" +msgstr " psect start: 0x%08x, length: %u\n" + +#: vms-alpha.c:7730 +#, c-format +msgid "cannot read DST\n" +msgstr "cannot read DST\n" + +#: vms-alpha.c:7740 +#, c-format +msgid "cannot read GST\n" +msgstr "cannot read GST\n" + +#: vms-alpha.c:7744 +#, c-format +msgid "Global symbol table:\n" +msgstr "Simbol tabel global:\n" + +#: vms-alpha.c:7772 +#, c-format +msgid "Image activator fixup: (major: %u, minor: %u)\n" +msgstr "Image activator fixup: (major: %u, minor: %u)\n" + +#: vms-alpha.c:7775 +#, c-format +msgid " iaflink : 0x%08x %08x\n" +msgstr " iaflink : 0x%08x %08x\n" + +#: vms-alpha.c:7778 +#, c-format +msgid " fixuplnk: 0x%08x %08x\n" +msgstr " fixuplnk: 0x%08x %08x\n" + +#: vms-alpha.c:7781 +#, c-format +msgid " size : %u\n" +msgstr " size : %u\n" + +#: vms-alpha.c:7783 +#, c-format +msgid " flags: 0x%08x\n" +msgstr " tanda: 0x%08x\n" + +#: vms-alpha.c:7787 +#, c-format +msgid " qrelfixoff: %5u, lrelfixoff: %5u\n" +msgstr " qrelfixoff: %5u, lrelfixoff: %5u\n" + +#: vms-alpha.c:7791 +#, c-format +msgid " qdotadroff: %5u, ldotadroff: %5u\n" +msgstr " qdotadroff: %5u, ldotadroff: %5u\n" + +#: vms-alpha.c:7795 +#, c-format +msgid " codeadroff: %5u, lpfixoff : %5u\n" +msgstr " codeadroff: %5u, lpfixoff : %5u\n" + +#: vms-alpha.c:7798 +#, c-format +msgid " chgprtoff : %5u\n" +msgstr " chgprtoff : %5u\n" + +#: vms-alpha.c:7801 +#, c-format +msgid " shlstoff : %5u, shrimgcnt : %5u\n" +msgstr " shlstoff : %5u, shrimgcnt : %5u\n" + +#: vms-alpha.c:7803 +#, c-format +msgid " shlextra : %5u, permctx : %5u\n" +msgstr " shlextra : %5u, permctx : %5u\n" + +#: vms-alpha.c:7806 +#, c-format +msgid " base_va : 0x%08x\n" +msgstr " basis alamat : 0x%08x\n" + +#: vms-alpha.c:7808 +#, c-format +msgid " lppsbfixoff: %5u\n" +msgstr " lppsbfixoff: %5u\n" + +#: vms-alpha.c:7816 +#, c-format +msgid " Shareable images:\n" +msgstr " Shareable images:\n" + +#: vms-alpha.c:7820 +#, c-format +msgid " %u: size: %u, flags: 0x%02x, name: %.*s\n" +msgstr " %u: size: %u, flags: 0x%02x, name: %.*s\n" + +#: vms-alpha.c:7827 +#, c-format +msgid " quad-word relocation fixups:\n" +msgstr " relokasi empat-kata tidak dibenarkan:\n" + +#: vms-alpha.c:7832 +#, c-format +msgid " long-word relocation fixups:\n" +msgstr " long-word relocation fixups:\n" + +#: vms-alpha.c:7837 +#, c-format +msgid " quad-word .address reference fixups:\n" +msgstr " quad-word .address reference fixups:\n" + +#: vms-alpha.c:7842 +#, c-format +msgid " long-word .address reference fixups:\n" +msgstr " long-word .address reference fixups:\n" + +#: vms-alpha.c:7847 +#, c-format +msgid " Code Address Reference Fixups:\n" +msgstr " Kode Alamat Referensi Dibenarkan:\n" + +#: vms-alpha.c:7852 +#, c-format +msgid " Linkage Pairs Referece Fixups:\n" +msgstr " Linkage Pairs Referece Fixups:\n" + +#: vms-alpha.c:7861 +#, c-format +msgid " Change Protection (%u entries):\n" +msgstr " Change Protection (%u entries):\n" + +#: vms-alpha.c:7866 +#, c-format +msgid " base: 0x%08x %08x, size: 0x%08x, prot: 0x%08x " +msgstr " base: 0x%08x %08x, size: 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:8706 +msgid "%P: relocatable link is not supported\n" +msgstr "%P: link relokasi tidak didukung\n" + +#: vms-alpha.c:8776 +msgid "%P: multiple entry points: in modules %B and %B\n" +msgstr "%P: multiple entry points: in modules %B and %B\n" + +#: vms-lib.c:1423 +#, c-format +msgid "could not open shared image '%s' from '%s'" +msgstr "could not open shared image '%s' from '%s'" + +#: vms-misc.c:360 +msgid "_bfd_vms_output_counted called with zero bytes" +msgstr "_bfd_vms_output_counted dipanggil dengan zero bytes" + +#: vms-misc.c:365 +msgid "_bfd_vms_output_counted called with too many bytes" +msgstr "_bfd_vms_output_counted dipanggil dengan terlalu banyak bytes" #: xcofflink.c:836 #, c-format @@ -3623,213 +5727,213 @@ msgstr "%s: XCOFF objek shared ketika tidak menghasilkan keluaran XCOFF" msgid "%s: dynamic object with no .loader section" msgstr "%s: objek dinamis dengan tidak ada daerah .loader" -#: xcofflink.c:1415 +#: xcofflink.c:1416 msgid "%B: `%s' has line numbers but no enclosing section" msgstr "%B: `%s' memiliki nomor baris tetapi tidak ditutupi daerah" -#: xcofflink.c:1467 +#: xcofflink.c:1468 msgid "%B: class %d symbol `%s' has no aux entries" msgstr "%B: kelas %d simbol `%s' tidak memiliki tambahan masukan" -#: xcofflink.c:1489 +#: xcofflink.c:1490 msgid "%B: symbol `%s' has unrecognized csect type %d" msgstr "%B: simbol `%s' memiliki tipe %d csect tidak dikenal" -#: xcofflink.c:1501 +#: xcofflink.c:1502 msgid "%B: bad XTY_ER symbol `%s': class %d scnum %d scnlen %d" msgstr "%B: simbol XTY_ER buruk `%s': kelas %d scnum %d scnlen %d" -#: xcofflink.c:1530 +#: xcofflink.c:1531 msgid "%B: XMC_TC0 symbol `%s' is class %d scnlen %d" msgstr "%B: XMC_TC0 simbol `%s' adalah kelas %d scnlen %d" -#: xcofflink.c:1676 +#: xcofflink.c:1677 msgid "%B: csect `%s' not in enclosing section" msgstr "%B: csect `%s' tidak dalam lingkup daerah" -#: xcofflink.c:1783 +#: xcofflink.c:1784 msgid "%B: misplaced XTY_LD `%s'" msgstr "%B: salah tempat XTY_LD `%s'" -#: xcofflink.c:2102 +#: xcofflink.c:2103 msgid "%B: reloc %s:%d not in csect" msgstr "%B: relokasi %s:%d tidak dalam csect" -#: xcofflink.c:3177 +#: xcofflink.c:3194 #, c-format msgid "%s: no such symbol" msgstr "%s: tidak ada simbol seperti itu" -#: xcofflink.c:3282 +#: xcofflink.c:3299 #, c-format msgid "warning: attempt to export undefined symbol `%s'" msgstr "peringatan: mencoba untuk mengekspor simbol tidak terdefinisi `%s'" -#: xcofflink.c:3664 +#: xcofflink.c:3678 msgid "error: undefined symbol __rtinit" msgstr "error: simbol tidak terdefinisi __rtinit" -#: xcofflink.c:4041 +#: xcofflink.c:4057 msgid "%B: loader reloc in unrecognized section `%s'" msgstr "%B: loader relokasi dalam daerah tidak dikenal `%s'" -#: xcofflink.c:4052 +#: xcofflink.c:4068 msgid "%B: `%s' in loader reloc but not loader sym" msgstr "%B: `%s' dalam relokasi loader tetapi bukan loader sym" -#: xcofflink.c:4068 +#: xcofflink.c:4084 msgid "%B: loader reloc in read-only section %A" msgstr "%B: loader relokasi dalam daerah baca-saja %A" -#: xcofflink.c:5086 +#: xcofflink.c:5106 #, c-format msgid "TOC overflow: 0x%lx > 0x10000; try -mminimal-toc when compiling" msgstr "TOC overflow: 0x%lx > 0x10000; coba -mminimal-toc ketika mengkompile" -#: elf32-ia64.c:1050 elf64-ia64.c:1050 +#: elf32-ia64.c:628 elf64-ia64.c:628 msgid "%B: Can't relax br at 0x%lx in section `%A'. Please use brl or indirect branch." msgstr "%B: Tidak dapat relaks br di 0x%lx dalam daerah `%A'. Tolong gunakan brl atau indirect branch." -#: elf32-ia64.c:2739 elf64-ia64.c:2739 +#: elf32-ia64.c:2284 elf64-ia64.c:2284 msgid "@pltoff reloc against local symbol" msgstr "@pltoff relokasi terhadap simbol lokal" -#: elf32-ia64.c:4314 elf64-ia64.c:4314 +#: elf32-ia64.c:3687 elf64-ia64.c:3687 #, c-format msgid "%s: short data segment overflowed (0x%lx >= 0x400000)" msgstr "%s: short data segment overflowed (0x%lx >= 0x400000)" -#: elf32-ia64.c:4325 elf64-ia64.c:4325 +#: elf32-ia64.c:3698 elf64-ia64.c:3698 #, c-format msgid "%s: __gp does not cover short data segment" msgstr "%s: __gp tidak meliputi segmen data pendek" -#: elf32-ia64.c:4595 elf64-ia64.c:4595 +#: elf32-ia64.c:3965 elf64-ia64.c:3965 msgid "%B: non-pic code with imm relocation against dynamic symbol `%s'" msgstr "%B: bukan-pic kode dengan relokasi imm terhadap simbol dinamis `%s'" -#: elf32-ia64.c:4662 elf64-ia64.c:4662 +#: elf32-ia64.c:4032 elf64-ia64.c:4032 msgid "%B: @gprel relocation against dynamic symbol %s" msgstr "%B: @gprel relokasi terhadap simbol dinamis %s" -#: elf32-ia64.c:4725 elf64-ia64.c:4725 +#: elf32-ia64.c:4095 elf64-ia64.c:4095 msgid "%B: linking non-pic code in a position independent executable" msgstr "%B: menghubungkan dengan kode bukan-pic dalam sebuah executable bebas posisi" -#: elf32-ia64.c:4862 elf64-ia64.c:4862 +#: elf32-ia64.c:4232 elf64-ia64.c:4232 msgid "%B: @internal branch to dynamic symbol %s" msgstr "%B: @internal branck ke simbol dinamis %s" -#: elf32-ia64.c:4864 elf64-ia64.c:4864 +#: elf32-ia64.c:4234 elf64-ia64.c:4234 msgid "%B: speculation fixup to dynamic symbol %s" msgstr "%B: spekulasi fixup ke simbol dinamis %s" -#: elf32-ia64.c:4866 elf64-ia64.c:4866 +#: elf32-ia64.c:4236 elf64-ia64.c:4236 msgid "%B: @pcrel relocation against dynamic symbol %s" msgstr "%B: @pcrel relokasi terhadap simbol dinamis %s" -#: elf32-ia64.c:5063 elf64-ia64.c:5063 +#: elf32-ia64.c:4433 elf64-ia64.c:4433 msgid "unsupported reloc" msgstr "relokasi tidak didukung" -#: elf32-ia64.c:5101 elf64-ia64.c:5101 +#: elf32-ia64.c:4471 elf64-ia64.c:4471 msgid "%B: missing TLS section for relocation %s against `%s' at 0x%lx in section `%A'." msgstr "%B: hilang daerah TLS untuk relokasi %s terhadap `%s' di 0x%lx dalam daerah `%A'." -#: elf32-ia64.c:5116 elf64-ia64.c:5116 +#: elf32-ia64.c:4486 elf64-ia64.c:4486 msgid "%B: Can't relax br (%s) to `%s' at 0x%lx in section `%A' with size 0x%lx (> 0x1000000)." msgstr "%B: Tidak dapat relaks br (%s) ke `%s' di 0x%lx dalam daerah `%A' dengan ukuran 0x%lx (> 0x1000000)." -#: elf32-ia64.c:5372 elf64-ia64.c:5372 +#: elf32-ia64.c:4748 elf64-ia64.c:4748 msgid "%B: linking trap-on-NULL-dereference with non-trapping files" msgstr "%B: menghubungkan trap-on-NULL-dereference dengan berkas bukan-trapping" -#: elf32-ia64.c:5381 elf64-ia64.c:5381 +#: elf32-ia64.c:4757 elf64-ia64.c:4757 msgid "%B: linking big-endian files with little-endian files" msgstr "%B: menghubungkan berkas big-endian dengan berkas little-endian" -#: elf32-ia64.c:5390 elf64-ia64.c:5390 +#: elf32-ia64.c:4766 elf64-ia64.c:4766 msgid "%B: linking 64-bit files with 32-bit files" msgstr "%B: menghubungkan berkas 64-bit dengan berkas 32-bit" -#: elf32-ia64.c:5399 elf64-ia64.c:5399 +#: elf32-ia64.c:4775 elf64-ia64.c:4775 msgid "%B: linking constant-gp files with non-constant-gp files" msgstr "%B: menghubungkan berkas constant-gp dengan berkas bukan-constant-gp" -#: elf32-ia64.c:5409 elf64-ia64.c:5409 +#: elf32-ia64.c:4785 elf64-ia64.c:4785 msgid "%B: linking auto-pic files with non-auto-pic files" msgstr "%B: menghubungkan berkas auto-pic dengan berkas non-auto-pic" -#: peigen.c:999 pepigen.c:999 pex64igen.c:999 +#: peigen.c:1002 pepigen.c:1002 pex64igen.c:1002 #, c-format msgid "%s: line number overflow: 0x%lx > 0xffff" msgstr "%s: nomor baris overflow: 0x%lx > 0xffff" -#: peigen.c:1026 pepigen.c:1026 pex64igen.c:1026 +#: peigen.c:1029 pepigen.c:1029 pex64igen.c:1029 msgid "Export Directory [.edata (or where ever we found it)]" msgstr "Direktori expor [.edata (atau dimanapun kita menemukannya)]" -#: peigen.c:1027 pepigen.c:1027 pex64igen.c:1027 +#: peigen.c:1030 pepigen.c:1030 pex64igen.c:1030 msgid "Import Directory [parts of .idata]" msgstr "Impor Direktori [bagian dari .idata]" -#: peigen.c:1028 pepigen.c:1028 pex64igen.c:1028 +#: peigen.c:1031 pepigen.c:1031 pex64igen.c:1031 msgid "Resource Directory [.rsrc]" msgstr "Resource Direktori [.rsrc]" -#: peigen.c:1029 pepigen.c:1029 pex64igen.c:1029 +#: peigen.c:1032 pepigen.c:1032 pex64igen.c:1032 msgid "Exception Directory [.pdata]" msgstr "Exception Direktori [.pdata]" -#: peigen.c:1030 pepigen.c:1030 pex64igen.c:1030 +#: peigen.c:1033 pepigen.c:1033 pex64igen.c:1033 msgid "Security Directory" msgstr "Direktori Keamanan" -#: peigen.c:1031 pepigen.c:1031 pex64igen.c:1031 +#: peigen.c:1034 pepigen.c:1034 pex64igen.c:1034 msgid "Base Relocation Directory [.reloc]" msgstr "Dasar Relokasi Direktori [.reloc]" -#: peigen.c:1032 pepigen.c:1032 pex64igen.c:1032 +#: peigen.c:1035 pepigen.c:1035 pex64igen.c:1035 msgid "Debug Directory" msgstr "Debug Direktori" -#: peigen.c:1033 pepigen.c:1033 pex64igen.c:1033 +#: peigen.c:1036 pepigen.c:1036 pex64igen.c:1036 msgid "Description Directory" msgstr "Direktori Penjelasan" -#: peigen.c:1034 pepigen.c:1034 pex64igen.c:1034 +#: peigen.c:1037 pepigen.c:1037 pex64igen.c:1037 msgid "Special Directory" msgstr "Direktori Spesial" -#: peigen.c:1035 pepigen.c:1035 pex64igen.c:1035 +#: peigen.c:1038 pepigen.c:1038 pex64igen.c:1038 msgid "Thread Storage Directory [.tls]" msgstr "Thread Storage Direktori [.tls]" -#: peigen.c:1036 pepigen.c:1036 pex64igen.c:1036 +#: peigen.c:1039 pepigen.c:1039 pex64igen.c:1039 msgid "Load Configuration Directory" msgstr "Direktori Konfigurasi Beban" -#: peigen.c:1037 pepigen.c:1037 pex64igen.c:1037 +#: peigen.c:1040 pepigen.c:1040 pex64igen.c:1040 msgid "Bound Import Directory" msgstr "Direktori Bound Impor" -#: peigen.c:1038 pepigen.c:1038 pex64igen.c:1038 +#: peigen.c:1041 pepigen.c:1041 pex64igen.c:1041 msgid "Import Address Table Directory" msgstr "Direktori Impor Tabel Alamat" -#: peigen.c:1039 pepigen.c:1039 pex64igen.c:1039 +#: peigen.c:1042 pepigen.c:1042 pex64igen.c:1042 msgid "Delay Import Directory" msgstr "Delay Impor Direktori" -#: peigen.c:1040 pepigen.c:1040 pex64igen.c:1040 +#: peigen.c:1043 pepigen.c:1043 pex64igen.c:1043 msgid "CLR Runtime Header" msgstr "CLR Runtime Header" -#: peigen.c:1041 pepigen.c:1041 pex64igen.c:1041 +#: peigen.c:1044 pepigen.c:1044 pex64igen.c:1044 msgid "Reserved" msgstr "Reserved" -#: peigen.c:1101 pepigen.c:1101 pex64igen.c:1101 +#: peigen.c:1104 pepigen.c:1104 pex64igen.c:1104 #, c-format msgid "" "\n" @@ -3838,7 +5942,7 @@ msgstr "" "\n" "Ada tabel impor, tetapi daerah yang berisi itu tidak dapat ditemukan\n" -#: peigen.c:1106 pepigen.c:1106 pex64igen.c:1106 +#: peigen.c:1109 pepigen.c:1109 pex64igen.c:1109 #, c-format msgid "" "\n" @@ -3847,7 +5951,7 @@ msgstr "" "\n" "Ada impor tabel di %s pada 0x%lx\n" -#: peigen.c:1149 pepigen.c:1149 pex64igen.c:1149 +#: peigen.c:1151 pepigen.c:1151 pex64igen.c:1151 #, c-format msgid "" "\n" @@ -3856,12 +5960,12 @@ msgstr "" "\n" "Deskripsi fungsi ditempatkan di awal alamat: %04lx\n" -#: peigen.c:1152 pepigen.c:1152 pex64igen.c:1152 +#: peigen.c:1154 pepigen.c:1154 pex64igen.c:1154 #, c-format msgid "\tcode-base %08lx toc (loadable/actual) %08lx/%08lx\n" msgstr "\tcode-base %08lx toc (loadable/actual) %08lx/%08lx\n" -#: peigen.c:1160 pepigen.c:1160 pex64igen.c:1160 +#: peigen.c:1162 pepigen.c:1162 pex64igen.c:1162 #, c-format msgid "" "\n" @@ -3870,7 +5974,7 @@ msgstr "" "\n" "Tidak ada daerah reldata! Deskripsi fungsi tidak terdekode.\n" -#: peigen.c:1165 pepigen.c:1165 pex64igen.c:1165 +#: peigen.c:1167 pepigen.c:1167 pex64igen.c:1167 #, c-format msgid "" "\n" @@ -3879,7 +5983,7 @@ msgstr "" "\n" "Tabel Impor (diinterpretasikan isi daerah %s)\n" -#: peigen.c:1168 pepigen.c:1168 pex64igen.c:1168 +#: peigen.c:1170 pepigen.c:1170 pex64igen.c:1170 #, c-format msgid "" " vma: Hint Time Forward DLL First\n" @@ -3888,7 +5992,7 @@ msgstr "" "vma: Tips Waktu Forward DLL Pertama\n" " Tabel Stamp Rantai Nama Thunk\n" -#: peigen.c:1216 pepigen.c:1216 pex64igen.c:1216 +#: peigen.c:1218 pepigen.c:1218 pex64igen.c:1218 #, c-format msgid "" "\n" @@ -3897,12 +6001,12 @@ msgstr "" "\n" "\tNama DLL: %s\n" -#: peigen.c:1227 pepigen.c:1227 pex64igen.c:1227 +#: peigen.c:1229 pepigen.c:1229 pex64igen.c:1229 #, c-format msgid "\tvma: Hint/Ord Member-Name Bound-To\n" msgstr "\tvma: Tips/Ord Nama-Anggota Terikat-Ke\n" -#: peigen.c:1252 pepigen.c:1252 pex64igen.c:1252 +#: peigen.c:1254 pepigen.c:1254 pex64igen.c:1254 #, c-format msgid "" "\n" @@ -3911,7 +6015,7 @@ msgstr "" "\n" "Ada thunk pertama, tetapi daerah yang berisi itu tidak dapat ditemukan\n" -#: peigen.c:1417 pepigen.c:1417 pex64igen.c:1417 +#: peigen.c:1415 pepigen.c:1415 pex64igen.c:1415 #, c-format msgid "" "\n" @@ -3920,7 +6024,7 @@ msgstr "" "\n" "Ada tabel expor, tetapi daerah yang berisi itu tidak dapat ditemukan\n" -#: peigen.c:1426 pepigen.c:1426 pex64igen.c:1426 +#: peigen.c:1424 pepigen.c:1424 pex64igen.c:1424 #, c-format msgid "" "\n" @@ -3929,7 +6033,7 @@ msgstr "" "\n" "Ada tabel expor dalam %s, tetapi ini tidak masuk dalam daerah itu\n" -#: peigen.c:1432 pepigen.c:1432 pex64igen.c:1432 +#: peigen.c:1430 pepigen.c:1430 pex64igen.c:1430 #, c-format msgid "" "\n" @@ -3938,7 +6042,7 @@ msgstr "" "\n" "Ada sebuah tabel expor dalam %s di 0x%lx\n" -#: peigen.c:1460 pepigen.c:1460 pex64igen.c:1460 +#: peigen.c:1458 pepigen.c:1458 pex64igen.c:1458 #, c-format msgid "" "\n" @@ -3948,67 +6052,67 @@ msgstr "" "\n" "Tabel expor (diinterpretasikan isi daerah %s)\n" -#: peigen.c:1464 pepigen.c:1464 pex64igen.c:1464 +#: peigen.c:1462 pepigen.c:1462 pex64igen.c:1462 #, c-format msgid "Export Flags \t\t\t%lx\n" msgstr "Tanda Expor \t\t\t%lx\n" -#: peigen.c:1467 pepigen.c:1467 pex64igen.c:1467 +#: peigen.c:1465 pepigen.c:1465 pex64igen.c:1465 #, c-format msgid "Time/Date stamp \t\t%lx\n" msgstr "Waktu/Tanggal stamp \t\t%lx\n" -#: peigen.c:1470 pepigen.c:1470 pex64igen.c:1470 +#: peigen.c:1468 pepigen.c:1468 pex64igen.c:1468 #, c-format msgid "Major/Minor \t\t\t%d/%d\n" msgstr "Mayor/Minor \t\t\t%d/%d\n" -#: peigen.c:1473 pepigen.c:1473 pex64igen.c:1473 +#: peigen.c:1471 pepigen.c:1471 pex64igen.c:1471 #, c-format msgid "Name \t\t\t\t" msgstr "Nama \t\t\t\t" -#: peigen.c:1479 pepigen.c:1479 pex64igen.c:1479 +#: peigen.c:1477 pepigen.c:1477 pex64igen.c:1477 #, c-format msgid "Ordinal Base \t\t\t%ld\n" msgstr "Dasar Ordinal \t\t\t%ld\n" -#: peigen.c:1482 pepigen.c:1482 pex64igen.c:1482 +#: peigen.c:1480 pepigen.c:1480 pex64igen.c:1480 #, c-format msgid "Number in:\n" msgstr "Nomor dalam:\n" -#: peigen.c:1485 pepigen.c:1485 pex64igen.c:1485 +#: peigen.c:1483 pepigen.c:1483 pex64igen.c:1483 #, c-format msgid "\tExport Address Table \t\t%08lx\n" msgstr "\tTabel Alamat Expor \t\t%08lx\n" -#: peigen.c:1489 pepigen.c:1489 pex64igen.c:1489 +#: peigen.c:1487 pepigen.c:1487 pex64igen.c:1487 #, c-format msgid "\t[Name Pointer/Ordinal] Table\t%08lx\n" msgstr "\t[Nama Pointer/Ordinal] Tabel\t%08lx\n" -#: peigen.c:1492 pepigen.c:1492 pex64igen.c:1492 +#: peigen.c:1490 pepigen.c:1490 pex64igen.c:1490 #, c-format msgid "Table Addresses\n" msgstr "Tabel Alamat\n" -#: peigen.c:1495 pepigen.c:1495 pex64igen.c:1495 +#: peigen.c:1493 pepigen.c:1493 pex64igen.c:1493 #, c-format msgid "\tExport Address Table \t\t" msgstr "\tTabel Alamat Expor \t\t" -#: peigen.c:1500 pepigen.c:1500 pex64igen.c:1500 +#: peigen.c:1498 pepigen.c:1498 pex64igen.c:1498 #, c-format msgid "\tName Pointer Table \t\t" msgstr "\tTabel Nama Pointer \t\t" -#: peigen.c:1505 pepigen.c:1505 pex64igen.c:1505 +#: peigen.c:1503 pepigen.c:1503 pex64igen.c:1503 #, c-format msgid "\tOrdinal Table \t\t\t" msgstr "\tTabel Ordinal \t\t\t" -#: peigen.c:1519 pepigen.c:1519 pex64igen.c:1519 +#: peigen.c:1517 pepigen.c:1517 pex64igen.c:1517 #, c-format msgid "" "\n" @@ -4017,15 +6121,15 @@ msgstr "" "\n" "Tabel Alamat Expor -- Ordinal Base %ld\n" -#: peigen.c:1538 pepigen.c:1538 pex64igen.c:1538 +#: peigen.c:1536 pepigen.c:1536 pex64igen.c:1536 msgid "Forwarder RVA" msgstr "Forwarder RVA" -#: peigen.c:1549 pepigen.c:1549 pex64igen.c:1549 +#: peigen.c:1547 pepigen.c:1547 pex64igen.c:1547 msgid "Export RVA" msgstr "Expor RVA" -#: peigen.c:1556 pepigen.c:1556 pex64igen.c:1556 +#: peigen.c:1554 pepigen.c:1554 pex64igen.c:1554 #, c-format msgid "" "\n" @@ -4034,18 +6138,18 @@ msgstr "" "\n" "[Ordinal/Nama Pointer] Tabel\n" -#: peigen.c:1616 peigen.c:1795 pepigen.c:1616 pepigen.c:1795 pex64igen.c:1616 -#: pex64igen.c:1795 +#: peigen.c:1614 peigen.c:1797 pepigen.c:1614 pepigen.c:1797 pex64igen.c:1614 +#: pex64igen.c:1797 #, c-format msgid "Warning, .pdata section size (%ld) is not a multiple of %d\n" msgstr "Peringatan, besar (%ld) daerah .pdata tidak dalam kelipatan dari %d\n" -#: peigen.c:1623 pepigen.c:1623 pex64igen.c:1623 +#: peigen.c:1621 pepigen.c:1621 pex64igen.c:1621 #, c-format msgid " vma:\t\t\tBegin Address End Address Unwind Info\n" msgstr " vma:\t\t\tAwal Alamat Akhir Alamat Unwind Informasi\n" -#: peigen.c:1625 pepigen.c:1625 pex64igen.c:1625 +#: peigen.c:1623 pepigen.c:1623 pex64igen.c:1623 #, c-format msgid "" " vma:\t\tBegin End EH EH PrologEnd Exception\n" @@ -4054,22 +6158,22 @@ msgstr "" " vma:\t\tAwal Akhir EH EH PrologEnd Exception\n" " \t\tAlamat Alamat Handler Data Alamat Topeng\n" -#: peigen.c:1695 pepigen.c:1695 pex64igen.c:1695 +#: peigen.c:1697 pepigen.c:1697 pex64igen.c:1697 #, c-format msgid " Register save millicode" msgstr " Register simpan millicode" -#: peigen.c:1698 pepigen.c:1698 pex64igen.c:1698 +#: peigen.c:1700 pepigen.c:1700 pex64igen.c:1700 #, c-format msgid " Register restore millicode" msgstr " Register restore millicode" -#: peigen.c:1701 pepigen.c:1701 pex64igen.c:1701 +#: peigen.c:1703 pepigen.c:1703 pex64igen.c:1703 #, c-format msgid " Glue code sequence" msgstr " Urutan kode pengikat" -#: peigen.c:1801 pepigen.c:1801 pex64igen.c:1801 +#: peigen.c:1803 pepigen.c:1803 pex64igen.c:1803 #, c-format msgid "" " vma:\t\tBegin Prolog Function Flags Exception EH\n" @@ -4078,7 +6182,7 @@ msgstr "" " vma:\t\tMulai Prolog Fungsi Flags Exception EH\n" " \t\tAlamat Panjang Panjang 32b exc Handler Data\n" -#: peigen.c:1933 pepigen.c:1933 pex64igen.c:1933 +#: peigen.c:1929 pepigen.c:1929 pex64igen.c:1929 #, c-format msgid "" "\n" @@ -4089,7 +6193,7 @@ msgstr "" "\n" "Berkas Dasar Relokasi PE (diinterpretasikan isi daerah .reloc)\n" -#: peigen.c:1963 pepigen.c:1963 pex64igen.c:1963 +#: peigen.c:1958 pepigen.c:1958 pex64igen.c:1958 #, c-format msgid "" "\n" @@ -4098,7 +6202,7 @@ msgstr "" "\n" "Alamat Maya: %08lx Besar potongan %ld (0x%lx) Jumlah dari perbaikan %ld\n" -#: peigen.c:1976 pepigen.c:1976 pex64igen.c:1976 +#: peigen.c:1971 pepigen.c:1971 pex64igen.c:1971 #, c-format msgid "\treloc %4d offset %4x [%4lx] %s" msgstr "\trelokasi %4d ofset %4x [%4lx] %s" @@ -4106,7 +6210,7 @@ msgstr "\trelokasi %4d ofset %4x [%4lx] %s" #. The MS dumpbin program reportedly ands with 0xff0f before #. printing the characteristics field. Not sure why. No reason to #. emulate it here. -#: peigen.c:2015 pepigen.c:2015 pex64igen.c:2015 +#: peigen.c:2010 pepigen.c:2010 pex64igen.c:2010 #, c-format msgid "" "\n" @@ -4115,26 +6219,117 @@ msgstr "" "\n" "Karakteristik 0x%x\n" -#: peigen.c:2292 pepigen.c:2292 pex64igen.c:2292 +#: peigen.c:2310 pepigen.c:2310 pex64igen.c:2310 msgid "%B: unable to fill in DataDictionary[1] because .idata$2 is missing" msgstr "%B: tidak dapat mengisi dalam DataDictionary[1] karena .idata$2 hilang" -#: peigen.c:2312 pepigen.c:2312 pex64igen.c:2312 +#: peigen.c:2330 pepigen.c:2330 pex64igen.c:2330 msgid "%B: unable to fill in DataDictionary[1] because .idata$4 is missing" msgstr "%B: tidak dapat mengisi dalam DataDictionary[1] karena .data$4 hilang" -#: peigen.c:2333 pepigen.c:2333 pex64igen.c:2333 +#: peigen.c:2351 pepigen.c:2351 pex64igen.c:2351 msgid "%B: unable to fill in DataDictionary[12] because .idata$5 is missing" msgstr "%B: tidak dapat mengisi dalam DataDictionary[12] karena .idata$5 hilang" -#: peigen.c:2353 pepigen.c:2353 pex64igen.c:2353 +#: peigen.c:2371 pepigen.c:2371 pex64igen.c:2371 msgid "%B: unable to fill in DataDictionary[PE_IMPORT_ADDRESS_TABLE (12)] because .idata$6 is missing" msgstr "%B: tidak dapat mengisi dalam DataDictionary[PE_IMPORT_ADDRESS_TABLE (12)] karena .idata$6 hilang" -#: peigen.c:2375 pepigen.c:2375 pex64igen.c:2375 +#: peigen.c:2413 pepigen.c:2413 pex64igen.c:2413 +msgid "%B: unable to fill in DataDictionary[PE_IMPORT_ADDRESS_TABLE(12)] because .idata$6 is missing" +msgstr "%B: tidak dapat mengisi dalam DataDictionary[PE_IMPORT_ADDRESS_TABLE(12)] karena .idata$6 hilang" + +#: peigen.c:2438 pepigen.c:2438 pex64igen.c:2438 msgid "%B: unable to fill in DataDictionary[9] because __tls_used is missing" msgstr "%B: tidak dapat mengisi dalam DataDictionary[9] karena __tls_used hilang" +#~ msgid "Can't Make it a Short Jump" +#~ msgstr "Tidak dapat membuka ini sebuah lompatan pendek" + +#~ msgid "Exceeds Long Jump Range" +#~ msgstr "Melewati jangkauan lompatan panjang" + +#~ msgid "Absolute address Exceeds 16 bit Range" +#~ msgstr "Alamat absolut melewati jangkauan 16 bit" + +#~ msgid "Absolute address Exceeds 8 bit Range" +#~ msgstr "Alamat absolute melewati jangkauan 8 bit" + +#~ msgid "Unrecognized Reloc Type" +#~ msgstr "Tipe relokasi tidak dikenal" + +#~ msgid "corrupt or empty %s section in %B" +#~ msgstr "korup atau kosong %s bagian dalam %B" + +#~ msgid "%B(%A+0x%lx): cannot reach %s" +#~ msgstr "%B(%A+0x%lx): tidak dapat mencapai %s" + +#~ msgid "%s: invalid DSO for symbol `%s' definition" +#~ msgstr "%s: tidak valid DSO untuk simbol `%s' definisi" + +#~ msgid "%B: %A+0x%lx: jump to stub routine which is not jal" +#~ msgstr "%B: %A+0x%lx: lompat ke routine stub dimana bukan jal" + +#~ msgid "%B: warning: ignoring duplicate section `%A'\n" +#~ msgstr "%B: peringatan: mengabaikan bagiann terduplikasi `%A'\n" + +#~ msgid "%B: warning: duplicate section `%A' has different size\n" +#~ msgstr "%B: peringatan: bagian terduplikasi `%A' memiliki ukuran berbeda\n" + +#~ msgid "bfd_make_section (%s) failed" +#~ msgstr "bfd_make_section (%s) gagal" + +#~ msgid "bfd_set_section_flags (%s, %x) failed" +#~ msgstr "bfd_set_section_flags (%s, %x) gagal" + +#~ msgid "Size mismatch section %s=%lx, %s=%lx" +#~ msgstr "Ukuran tidak cocok daerah %s=%lx, %s=%lx" + +#~ msgid "failed to enter %s" +#~ msgstr "gagal untuk memasuki %s" + +#~ msgid "No Mem !" +#~ msgstr "Tidak ada Memori !" + +#~ msgid "reserved STO cmd %d" +#~ msgstr "reserved STO perintah %d" + +#~ msgid "reserved OPR cmd %d" +#~ msgstr "reserved OPR perintah %d" + +#~ msgid "reserved CTL cmd %d" +#~ msgstr "reserved CTL perintah %d" + +#~ msgid "reserved STC cmd %d" +#~ msgstr "perintah %d direserve" + +#~ msgid "stack-from-image not implemented" +#~ msgstr "stack-from-image tidak terimplementasi" + +#~ msgid "stack-entry-mask not fully implemented" +#~ msgstr "stack-entry-mask tidak terimplementasi secara penuh" + +#~ msgid "PASSMECH not fully implemented" +#~ msgstr "PASSMECH tidak terimplementasi secara penuh" + +#~ msgid "stack-local-symbol not fully implemented" +#~ msgstr "stack-local-symbol tidak terimplementasi secara penuh" + +#~ msgid "stack-literal not fully implemented" +#~ msgstr "stack-literal tidak terimplementasi secara penuh" + +#~ msgid "stack-local-symbol-entry-point-mask not fully implemented" +#~ msgstr "stack-local-symbol-entry-point-mask tidak terimplementasi secara penuh" + +#~ msgid "%s: not fully implemented" +#~ msgstr "%s: tidak terimplementasi secara penuh" + +#~ msgid "obj code %d not found" +#~ msgstr "obj kode %d tidak ditemukan" + +#~ msgid "Reloc size error in section %s" +#~ msgstr "Kesalahan ukuran relokasi dalam daerah %s" + #~ msgid "ERROR: %B: Incompatible object tag '%s':%d" #~ msgstr "ERROR: %B: Tanda objek tidak kompatibel '%s':%d" diff --git a/bfd/po/ja.po b/bfd/po/ja.po index 9f36883..da371dc 100644 --- a/bfd/po/ja.po +++ b/bfd/po/ja.po @@ -12,6 +12,7 @@ msgstr "" "Last-Translator: Yasuaki Taniguchi <yasuakit@gmail.com>\n" "Language-Team: Japanese <translation-team-ja@lists.sourceforge.net>\n" "Language: ja\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" diff --git a/bfd/po/ro.po b/bfd/po/ro.po index 5706e4f..372c843 100644 --- a/bfd/po/ro.po +++ b/bfd/po/ro.po @@ -9,6 +9,7 @@ msgstr "" "PO-Revision-Date: 2003-11-25 08:39+0200\n" "Last-Translator: Eugen Hoanca <eugenh@urban-grafx.ro>\n" "Language-Team: Romanian <translation-team-ro@lists.sourceforge.net>\n" +"X-Bugs: Report translation errors to the Language-Team address.\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=ISO-8859-2\n" "Content-Transfer-Encoding: 8bit\n" diff --git a/bfd/po/ru.po b/bfd/po/ru.po index bd29081..94f8bc8 100644 --- a/bfd/po/ru.po +++ b/bfd/po/ru.po @@ -12,6 +12,7 @@ msgstr "" "Last-Translator: Yuri Kozlov <yuray@komyakino.ru>\n" "Language-Team: Russian <gnu@mx.ru>\n" "Language: ru\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" diff --git a/bfd/po/sr.po b/bfd/po/sr.po index 49a42c4..c0e8a24 100644 --- a/bfd/po/sr.po +++ b/bfd/po/sr.po @@ -11,6 +11,7 @@ msgstr "" "Last-Translator: МироÑлав Ðиколић <miroslavnikolic@rocketmail.com>\n" "Language-Team: Serbian <(nothing)>\n" "Language: sr\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" diff --git a/bfd/po/sv.po b/bfd/po/sv.po index df85670..7213fe2 100644 --- a/bfd/po/sv.po +++ b/bfd/po/sv.po @@ -13,6 +13,7 @@ msgstr "" "Last-Translator: Josef Andersson <josef.andersson@fripost.org>\n" "Language-Team: Swedish <tp-sv@listor.tp-sv.se>\n" "Language: sv\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" diff --git a/bfd/po/tr.po b/bfd/po/tr.po index 11630c6..17ba556 100644 --- a/bfd/po/tr.po +++ b/bfd/po/tr.po @@ -9,6 +9,7 @@ msgstr "" "PO-Revision-Date: 2003-07-13 22:07+0300\n" "Last-Translator: Deniz Akkus Kanca <deniz@arayan.com>\n" "Language-Team: Turkish <gnu-tr-u12a@lists.sourceforge.net>\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" diff --git a/bfd/po/uk.po b/bfd/po/uk.po index 644f436..a2e49ea 100644 --- a/bfd/po/uk.po +++ b/bfd/po/uk.po @@ -2,175 +2,191 @@ # Copyright (C) 2012 Free Software Foundation, Inc. # This file is distributed under the same license as the binutils package. # -# Yuri Chornoivan <yurchor@ukr.net>, 2012. +# Yuri Chornoivan <yurchor@ukr.net>, 2012, 2014, 2017. msgid "" msgstr "" -"Project-Id-Version: bfd 2.22.90\n" +"Project-Id-Version: bfd 2.28.90\n" "Report-Msgid-Bugs-To: bug-binutils@gnu.org\n" -"POT-Creation-Date: 2011-10-25 11:58+0100\n" -"PO-Revision-Date: 2012-09-09 21:27+0300\n" +"POT-Creation-Date: 2017-07-03 16:54+0200\n" +"PO-Revision-Date: 2017-07-07 21:57+0300\n" "Last-Translator: Yuri Chornoivan <yurchor@ukr.net>\n" "Language-Team: Ukrainian <translation-team-uk@lists.sourceforge.net>\n" "Language: uk\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" +"X-Bugs: Report translation errors to the Language-Team address.\n" "Plural-Forms: nplurals=3; plural=n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2;\n" "X-Generator: Lokalize 1.5\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: невідомий тип розділу у файлі a.out.adobe: %x\n" -#: aout-cris.c:199 +#: aout-cris.c:200 #, c-format -msgid "%s: Invalid relocation type exported: %d" -msgstr "%s: екÑпортовано некоректний тип переÑуваннÑ: %d" +msgid "%B: Invalid relocation type exported: %d" +msgstr "%B: екÑпортовано некоректний тип переÑуваннÑ: %d" -#: aout-cris.c:242 +#: aout-cris.c:244 +#, c-format msgid "%B: Invalid relocation type imported: %d" msgstr "%B: імпортовано некоректний тип переÑуваннÑ: %d" -#: aout-cris.c:253 +#: aout-cris.c:256 +#, c-format msgid "%B: Bad relocation record imported: %d" msgstr "%B: імпортовано помилковий Ð·Ð°Ð¿Ð¸Ñ Ð¿ÐµÑ€ÐµÑуваннÑ: %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: Ð²Ñ–Ð´Ñ‚Ð²Ð¾Ñ€ÐµÐ½Ð½Ñ Ñ€Ð¾Ð·Ð´Ñ–Ð»Ñƒ «%s» у форматі об’єктних файлів a.out неможливе" +msgid "%B: can not represent section `%A' in a.out object file format" +msgstr "%B: Ð²Ñ–Ð´Ñ‚Ð²Ð¾Ñ€ÐµÐ½Ð½Ñ Ñ€Ð¾Ð·Ð´Ñ–Ð»Ñƒ «%A» у форматі об’єктних файлів 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: Ð²Ñ–Ð´Ñ‚Ð²Ð¾Ñ€ÐµÐ½Ð½Ñ Ñ€Ð¾Ð·Ð´Ñ–Ð»Ñƒ Ð´Ð»Ñ Ñимволу «%s» у форматі об’єктних файлів a.out неможливе" +msgid "%B: can not represent section for symbol `%s' in a.out object file format" +msgstr "%B: Ð²Ñ–Ð´Ñ‚Ð²Ð¾Ñ€ÐµÐ½Ð½Ñ Ñ€Ð¾Ð·Ð´Ñ–Ð»Ñƒ Ð´Ð»Ñ Ñимволу «%s» у форматі об’єктних файлів a.out неможливе" -#: aoutx.h:1579 vms-alpha.c:7671 +#: aoutx.h:1588 vms-alpha.c:7776 msgid "*unknown*" msgstr "*невідомо*" -#: aoutx.h:4018 aoutx.h:4344 +#: aoutx.h:2407 aoutx.h:2425 +msgid "%B: attempt to write out unknown reloc type" +msgstr "%B: Ñпроба випиÑати невідомий тип переÑуваннÑ" + +#: aoutx.h:4077 aoutx.h:4398 msgid "%P: %B: unexpected relocation type\n" msgstr "%P: %B: неочікуваний тип переÑуваннÑ\n" -#: aoutx.h:5375 +#: aoutx.h:5424 pdp11.c:3708 #, c-format -msgid "%s: relocatable link from %s to %s not supported" -msgstr "%s: підтримки придатних до переÑÑƒÐ²Ð°Ð½Ð½Ñ Ð¿Ð¾Ñилань з %s до %s не передбачено" +msgid "%B: relocatable link from %s to %s not supported" +msgstr "%B: підтримки придатних до переÑÑƒÐ²Ð°Ð½Ð½Ñ Ð¿Ð¾Ñилань з %s до %s не передбачено" -#: archive.c:2203 +#: archive.c:2293 msgid "Warning: writing archive was slow: rewriting timestamp\n" msgstr "ПопередженнÑ: запиÑÑƒÐ²Ð°Ð½Ð½Ñ Ð°Ñ€Ñ…Ñ–Ð²Ñƒ було повільним: перезапиÑуємо чаÑову позначку\n" -#: archive.c:2491 +#: archive.c:2405 linker.c:1408 +msgid "%B: plugin needed to handle lto object" +msgstr "%B: Ð´Ð»Ñ Ð¾Ð±Ñ€Ð¾Ð±ÐºÐ¸ об'єкта lto потрібен додаток" + +#: archive.c:2634 msgid "Reading archive file mod timestamp" msgstr "Ð§Ð¸Ñ‚Ð°Ð½Ð½Ñ Ñ‡Ð°Ñової позначки mod архівного файла" -#: archive.c:2515 +#: archive.c:2658 msgid "Writing updated armap timestamp" msgstr "ЗапиÑÑƒÐ²Ð°Ð½Ð½Ñ Ð¾Ð½Ð¾Ð²Ð»ÐµÐ½Ð¾Ñ— чаÑової позначки armap" -#: bfd.c:398 +#: bfd.c:454 msgid "No error" msgstr "Ðемає помилок" -#: bfd.c:399 +#: bfd.c:455 msgid "System call error" msgstr "Помилка ÑиÑтемного виклику" -#: bfd.c:400 +#: bfd.c:456 msgid "Invalid bfd target" msgstr "Ðекоректне Ð¿Ñ€Ð¸Ð·Ð½Ð°Ñ‡ÐµÐ½Ð½Ñ bfd" -#: bfd.c:401 +#: bfd.c:457 msgid "File in wrong format" msgstr "Файл у помилковому форматі" -#: bfd.c:402 +#: bfd.c:458 msgid "Archive object file in wrong format" msgstr "Ðрхівний об’єктний файл у помилковому форматі" -#: bfd.c:403 +#: bfd.c:459 msgid "Invalid operation" msgstr "Ðекоректна діÑ" -#: bfd.c:404 +#: bfd.c:460 msgid "Memory exhausted" msgstr "Пам’ÑÑ‚ÑŒ вичерпано" -#: bfd.c:405 +#: bfd.c:461 msgid "No symbols" msgstr "Ðемає Ñимволів" -#: bfd.c:406 +#: bfd.c:462 msgid "Archive has no index; run ranlib to add one" msgstr "У архіві немає покажчика; запуÑÑ‚Ñ–Ñ‚ÑŒ ranlib, щоб його додати" -#: bfd.c:407 +#: bfd.c:463 msgid "No more archived files" msgstr "Більше архівованих файлів немає" -#: bfd.c:408 +#: bfd.c:464 msgid "Malformed archive" msgstr "Ðрхів з пошкодженим форматуваннÑм" -#: bfd.c:409 +#: bfd.c:465 +msgid "DSO missing from command line" +msgstr "у командному Ñ€Ñдку пропущено DSO" + +#: bfd.c:466 msgid "File format not recognized" msgstr "Формат файла не розпізнано" -#: bfd.c:410 +#: bfd.c:467 msgid "File format is ambiguous" msgstr "Формат файла Ñ” неоднозначним" -#: bfd.c:411 +#: bfd.c:468 msgid "Section has no contents" msgstr "Розділ не має вміÑту" -#: bfd.c:412 +#: bfd.c:469 msgid "Nonrepresentable section on output" msgstr "Розділ, непридатний Ð´Ð»Ñ Ð²Ð¸Ð²ÐµÐ´ÐµÐ½Ð½Ñ Ð´Ð°Ð½Ð¸Ñ…" -#: bfd.c:413 +#: bfd.c:470 msgid "Symbol needs debug section which does not exist" msgstr "Символ потребує розділу діагноÑтики, Ñкого не Ñ–Ñнує" -#: bfd.c:414 +#: bfd.c:471 msgid "Bad value" msgstr "помилкове значеннÑ" -#: bfd.c:415 +#: bfd.c:472 msgid "File truncated" msgstr "Файл обрізано" -#: bfd.c:416 +#: bfd.c:473 msgid "File too big" msgstr "Файл Ñ” надто великим" -#: bfd.c:417 +#: bfd.c:474 #, c-format msgid "Error reading %s: %s" msgstr "Помилка під Ñ‡Ð°Ñ Ñ‡Ð¸Ñ‚Ð°Ð½Ð½Ñ %s: %s" -#: bfd.c:418 +#: bfd.c:475 msgid "#<Invalid error code>" msgstr "#<некоректний код помилки>" -#: bfd.c:945 +#: bfd.c:1138 #, c-format msgid "BFD %s assertion fail %s:%d" msgstr "Оператором контролю BFD %s виÑвлено помилку %s:%d" -#: bfd.c:957 +#: bfd.c:1151 #, c-format -msgid "BFD %s internal error, aborting at %s line %d in %s\n" -msgstr "Ð’Ð½ÑƒÑ‚Ñ€Ñ–ÑˆÐ½Ñ Ð¿Ð¾Ð¼Ð¸Ð»ÐºÐ° BFD %s, перериваємо роботу у %s, Ñ€Ñдок %d у %s\n" +msgid "BFD %s internal error, aborting at %s:%d in %s\n" +msgstr "Ð’Ð½ÑƒÑ‚Ñ€Ñ–ÑˆÐ½Ñ Ð¿Ð¾Ð¼Ð¸Ð»ÐºÐ° BFD %s, перериваємо роботу у %s:%d у %s\n" -#: bfd.c:961 +#: bfd.c:1156 #, c-format -msgid "BFD %s internal error, aborting at %s line %d\n" -msgstr "Ð’Ð½ÑƒÑ‚Ñ€Ñ–ÑˆÐ½Ñ Ð¿Ð¾Ð¼Ð¸Ð»ÐºÐ° BFD %s, перериваємо роботу у %s, Ñ€Ñдок %d\n" +msgid "BFD %s internal error, aborting at %s:%d\n" +msgstr "Ð’Ð½ÑƒÑ‚Ñ€Ñ–ÑˆÐ½Ñ Ð¿Ð¾Ð¼Ð¸Ð»ÐºÐ° BFD %s, перериваємо роботу у %s:%d\n" -#: bfd.c:963 +#: bfd.c:1158 msgid "Please report this bug.\n" msgstr "Будь лаÑка, повідомте про цю ваду.\n" @@ -184,22 +200,23 @@ msgstr "не відображено: дані=%lx відображено=%d\n" msgid "not mapping: env var not set\n" msgstr "не відображено: не вÑтановлено змінну Ñередовища var\n" -#: binary.c:271 +#: binary.c:276 #, c-format -msgid "Warning: Writing section `%s' to huge (ie negative) file offset 0x%lx." -msgstr "ПопередженнÑ: виконуєтьÑÑ Ð·Ð°Ð¿Ð¸Ñ Ñ€Ð¾Ð·Ð´Ñ–Ð»Ñƒ «%s» за надто великим (тобто від’ємним) відÑтупом у файлі, 0x%lx." +msgid "warning: writing section `%A' at huge (ie negative) file offset 0x%lx." +msgstr "попередженнÑ: виконуєтьÑÑ Ð·Ð°Ð¿Ð¸Ñ Ñ€Ð¾Ð·Ð´Ñ–Ð»Ñƒ «%A» за надто великим (тобто від’ємним) відÑтупом у файлі, 0x%lx." -#: bout.c:1146 elf-m10300.c:2063 elf32-avr.c:1654 elf32-frv.c:5734 -#: elfxx-sparc.c:2802 reloc.c:6115 reloc16.c:162 elf32-ia64.c:360 -#: elf64-ia64.c:360 +#: 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 Ñ– -r не можна викориÑтовувати одночаÑно\n" -#: cache.c:227 +#: cache.c:273 +#, c-format msgid "reopening %B: %s\n" msgstr "повторне Ð²Ñ–Ð´ÐºÑ€Ð¸Ñ‚Ñ‚Ñ %B: %s\n" -#: coff-alpha.c:491 +#: coff-alpha.c:450 msgid "" "%B: Cannot handle compressed Alpha binaries.\n" " Use compiler flags, or objZ, to generate uncompressed binaries." @@ -207,42 +224,44 @@ msgstr "" "%B: обробка ÑтиÑнутих двійкових файлів Alpha неможлива.\n" " СкориÑтайтеÑÑ Ð¿Ñ€Ð°Ð¿Ð¾Ñ€Ñ†Ñми компілÑтора або objZ Ð´Ð»Ñ ÑÑ‚Ð²Ð¾Ñ€ÐµÐ½Ð½Ñ Ð½ÐµÑтиÑнених двійкових файлів." -#: coff-alpha.c:648 +#: coff-alpha.c:602 msgid "%B: unknown/unsupported relocation type %d" msgstr "%B: невідомий або непідтримуваний тип переÑÑƒÐ²Ð°Ð½Ð½Ñ %d" -#: coff-alpha.c:900 coff-alpha.c:937 coff-alpha.c:2025 coff-mips.c:1003 +#: 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 "ВикориÑтано відноÑне переÑÑƒÐ²Ð°Ð½Ð½Ñ GP, втім, GP не визначено" -#: coff-alpha.c:1502 +#: coff-alpha.c:1444 msgid "using multiple gp values" msgstr "викориÑтовуєтьÑÑ Ð´ÐµÐºÑ–Ð»ÑŒÐºÐ° значень gp" -#: coff-alpha.c:1561 +#: coff-alpha.c:1503 msgid "%B: unsupported relocation: ALPHA_R_GPRELHIGH" msgstr "%B: переÑуваннÑ, підтримки Ñкого не передбачено: ALPHA_R_GPRELHIGH" -#: coff-alpha.c:1568 +#: coff-alpha.c:1510 msgid "%B: unsupported relocation: ALPHA_R_GPRELLOW" msgstr "%B: переÑуваннÑ, підтримки Ñкого не передбачено: ALPHA_R_GPRELLOW" -#: coff-alpha.c:1575 elf32-m32r.c:2484 elf64-alpha.c:4074 elf64-alpha.c:4224 -#: elf32-ia64.c:3839 elf64-ia64.c:3839 +#: 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: невідомий тип переÑÑƒÐ²Ð°Ð½Ð½Ñ %d" -#: coff-arm.c:1038 +#: coff-arm.c:1032 #, c-format msgid "%B: unable to find THUMB glue '%s' for `%s'" msgstr "%B: не вдалоÑÑ Ð·Ð½Ð°Ð¹Ñ‚Ð¸ Ñклейку THUMB «%s» Ð´Ð»Ñ Â«%s»" -#: coff-arm.c:1067 +#: coff-arm.c:1061 #, c-format msgid "%B: unable to find ARM glue '%s' for `%s'" msgstr "%B: не вдалоÑÑ Ð·Ð½Ð°Ð¹Ñ‚Ð¸ Ñклейку ARM «%s» Ð´Ð»Ñ Â«%s»" -#: coff-arm.c:1369 elf32-arm.c:7023 +#: coff-arm.c:1363 elf32-arm.c:8896 #, c-format msgid "" "%B(%s): warning: interworking not enabled.\n" @@ -251,7 +270,7 @@ msgstr "" "%B(%s): попередженнÑ: ÑуміÑну роботу не увімкнено.\n" " перша згадка: %B: виклик arm до thumb" -#: coff-arm.c:1459 +#: coff-arm.c:1453 #, c-format msgid "" "%B(%s): warning: interworking not enabled.\n" @@ -262,317 +281,488 @@ msgstr "" " перша згадка: %B: виклик arm до arm\n" " Ñпробуйте повторне Ð¾Ð±â€™Ñ”Ð´Ð½Ð°Ð½Ð½Ñ Ð· увімкненим --support-old-code" -#: coff-arm.c:1754 coff-tic80.c:695 cofflink.c:3081 +#: 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: помилкова адреÑа переÑÑƒÐ²Ð°Ð½Ð½Ñ 0x%lx у розділі «%A»" -#: coff-arm.c:2079 +#: coff-arm.c:2071 +#, c-format msgid "%B: illegal symbol index in reloc: %d" msgstr "%B: некоректний Ñ–Ð½Ð´ÐµÐºÑ Ñимволу у переÑуванні: %d" -#: coff-arm.c:2210 +#: coff-arm.c:2203 #, c-format msgid "error: %B is compiled for APCS-%d, whereas %B is compiled for APCS-%d" msgstr "помилка: %B зібрано Ð´Ð»Ñ APCS-%d, а %B зібрано Ð´Ð»Ñ APCS-%d" -#: coff-arm.c:2226 elf32-arm.c:15621 +#: 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 "помилка: %B передає чиÑла з рухомою комою до регіÑтрів, а %B передає Ñ—Ñ… у цілочиÑельні регіÑтри" -#: coff-arm.c:2229 elf32-arm.c:15625 +#: 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 "помилка: %B передає цілі чиÑла до регіÑтрів, а %B передає Ñ—Ñ… у регіÑтри чиÑел з рухомою комою" -#: coff-arm.c:2243 +#: coff-arm.c:2233 #, c-format msgid "error: %B is compiled as position independent code, whereas target %B is absolute position" msgstr "помилка: %B зібрано Ñк код з незалежним позиціюваннÑм, а Ð¿Ñ€Ð¸Ð·Ð½Ð°Ñ‡ÐµÐ½Ð½Ñ %B визначено у форматі абÑолютної позиції" -#: coff-arm.c:2246 +#: coff-arm.c:2238 #, c-format msgid "error: %B is compiled as absolute position code, whereas target %B is position independent" msgstr "помилка: %B зібрано Ñк код з абÑолютним позиціюваннÑм, а Ð¿Ñ€Ð¸Ð·Ð½Ð°Ñ‡ÐµÐ½Ð½Ñ %B визначено у форматі незалежної позиції" -#: coff-arm.c:2274 elf32-arm.c:15690 +#: coff-arm.c:2265 elf32-arm.c:19825 #, c-format msgid "Warning: %B supports interworking, whereas %B does not" msgstr "ПопередженнÑ: у %B передбачено ÑуміÑну роботу, а у %B не передбачено" -#: coff-arm.c:2277 elf32-arm.c:15696 +#: coff-arm.c:2270 elf32-arm.c:19831 #, c-format msgid "Warning: %B does not support interworking, whereas %B does" msgstr "ПопередженнÑ: у %B не передбачено ÑуміÑної роботи, а у %B передбачено" -#: coff-arm.c:2301 +#: coff-arm.c:2293 #, c-format msgid "private flags = %x:" msgstr "закриті прапорці = %x:" -#: coff-arm.c:2309 elf32-arm.c:11806 +#: coff-arm.c:2301 elf32-arm.c:14156 #, c-format msgid " [floats passed in float registers]" msgstr " [чиÑла з рухомою комою передано до регіÑтрів чиÑел з рухомою комою]" -#: coff-arm.c:2311 +#: coff-arm.c:2303 #, c-format msgid " [floats passed in integer registers]" msgstr " [чиÑла з рухомою комою передано до цілочиÑельних регіÑтрів]" -#: coff-arm.c:2314 elf32-arm.c:11809 +#: coff-arm.c:2306 elf32-arm.c:14159 #, c-format msgid " [position independent]" msgstr " [незалежний від позиції]" -#: coff-arm.c:2316 +#: coff-arm.c:2308 #, c-format msgid " [absolute position]" msgstr " [з абÑолютним позиціюваннÑм]" -#: coff-arm.c:2320 +#: coff-arm.c:2312 #, c-format msgid " [interworking flag not initialised]" msgstr " [прапорець ÑуміÑної роботи не ініціалізовано]" -#: coff-arm.c:2322 +#: coff-arm.c:2314 #, c-format msgid " [interworking supported]" msgstr " [підтримуєтьÑÑ ÑуміÑна робота]" -#: coff-arm.c:2324 +#: coff-arm.c:2316 #, c-format msgid " [interworking not supported]" msgstr " [ÑуміÑна робота не підтримуєтьÑÑ]" -#: coff-arm.c:2370 elf32-arm.c:10841 -#, 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 "ПопередженнÑ: прапорець ÑуміÑної роботи у %B не вÑтановлено, оÑкільки його вже було визначено так, щоб він заборонÑв ÑуміÑну роботу" -#: coff-arm.c:2374 elf32-arm.c:10845 -#, c-format +#: coff-arm.c:2364 elf32-arm.c:13021 msgid "Warning: Clearing the interworking flag of %B due to outside request" msgstr "ПопередженнÑ: знÑто прапорець ÑуміÑної роботи у %B у відповідь на запит ззовні" -#: coff-h8300.c:1122 +#: 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 "ПопередженнÑ: знÑто прапорець ÑуміÑної роботи у %B, оÑкільки з ним компонуєтьÑÑ ÐºÐ¾Ð´, Ñкий непридатний до Ñпільної роботи, у %B" + +#: coff-h8300.c:1068 #, c-format msgid "cannot handle R_MEM_INDIRECT reloc when using %s output" msgstr "переÑÑƒÐ²Ð°Ð½Ð½Ñ Ð½ÐµÐ¼Ð¾Ð¶Ð»Ð¸Ð²Ð¾ обробити R_MEM_INDIRECT, Ñкщо викориÑтано Ð²Ð¸Ð²ÐµÐ´ÐµÐ½Ð½Ñ Ð´Ð¾ %s" -#: coff-i860.c:147 +#: coff-i860.c:146 #, c-format msgid "relocation `%s' not yet implemented" msgstr "переÑÑƒÐ²Ð°Ð½Ð½Ñ Â«%s» ще не реалізовано" -#: coff-i860.c:605 coff-tic54x.c:398 coffcode.h:5198 +#: 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: попередженнÑ: некоректний Ñ–Ð½Ð´ÐµÐºÑ Ñимволу %ld у переÑуваннÑÑ…" -#: coff-i960.c:144 coff-i960.c:507 +#: coff-i960.c:122 coff-i960.c:475 msgid "uncertain calling convention for non-COFF symbol" msgstr "непевні правила виклику Ð´Ð»Ñ Ñимволу поза COFF" -#: coff-m68k.c:506 elf32-bfin.c:5690 elf32-cr16.c:2897 elf32-m68k.c:4677 +#: coff-m68k.c:483 elf32-bfin.c:5530 elf32-cr16.c:2817 elf32-m68k.c:4574 msgid "unsupported reloc type" msgstr "непідтримуваний тип переÑуваннÑ" -#: coff-mips.c:688 elf32-mips.c:1516 elf32-score.c:431 elf32-score7.c:330 -#: elf64-mips.c:2618 elfn32-mips.c:2431 +#: 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 "відноÑне переÑÑƒÐ²Ð°Ð½Ð½Ñ GP, але _gp не визначено" -#: coff-or32.c:229 -msgid "Unrecognized reloc" -msgstr "Ðерозпізнане переÑуваннÑ" - -#: coff-rs6000.c:2720 +#: coff-rs6000.c:2747 #, c-format -msgid "%s: unsupported relocation type 0x%02x" -msgstr "%s: непідтримуваний тип переÑÑƒÐ²Ð°Ð½Ð½Ñ 0x%02x" +msgid "%B: unsupported relocation type 0x%02x" +msgstr "%B: непідтримуваний тип переÑÑƒÐ²Ð°Ð½Ð½Ñ 0x%02x" -#: coff-rs6000.c:2805 +#: coff-rs6000.c:2833 #, c-format -msgid "%s: TOC reloc at 0x%x to symbol `%s' with no TOC entry" -msgstr "%s: переÑÑƒÐ²Ð°Ð½Ð½Ñ TOC за адреÑою 0x%x до Ñимволу «%s», Ñкий немає запиÑу у TOC" +msgid "%B: TOC reloc at 0x%x to symbol `%s' with no TOC entry" +msgstr "%B: переÑÑƒÐ²Ð°Ð½Ð½Ñ TOC за адреÑою 0x%x до Ñимволу «%s», Ñкий немає запиÑу у TOC" -#: coff-rs6000.c:3556 coff64-rs6000.c:2111 +#: coff-rs6000.c:3579 coff64-rs6000.c:2110 +#, c-format msgid "%B: symbol `%s' has unrecognized smclas %d" msgstr "%B: Ñимвол «%s» належить до нерозпізнаного smclas %d" -#: coff-sh.c:521 +#: coff-sh.c:504 #, c-format msgid "SH Error: unknown reloc type %d" msgstr "Помилка SH: невідомий тип переÑуваннÑ, %d" -#: coff-tic4x.c:195 coff-tic54x.c:299 coff-tic80.c:458 +#: coff-sh.c:778 elf32-sh.c:580 #, c-format -msgid "Unrecognized reloc type 0x%x" -msgstr "Ðерозпізнаний тип переÑÑƒÐ²Ð°Ð½Ð½Ñ 0x%x" +msgid "%B: 0x%lx: warning: bad R_SH_USES offset" +msgstr "%B: 0x%lx: попередженнÑ: помилковий відÑтуп R_SH_USES" + +#: coff-sh.c:789 elf32-sh.c:592 +#, c-format +msgid "%B: 0x%lx: warning: R_SH_USES points to unrecognized insn 0x%x" +msgstr "%B: 0x%lx: попередженнÑ: R_SH_USES вказує на нерозпізнану інÑтрукцію 0x%x" + +#: 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: попередженнÑ: помилковий відÑтуп Ð·Ð°Ð²Ð°Ð½Ñ‚Ð°Ð¶ÐµÐ½Ð½Ñ 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: попередженнÑ: не вдалоÑÑ Ð·Ð½Ð°Ð¹Ñ‚Ð¸ очікуване переÑуваннÑ" + +#: coff-sh.c:849 elf32-sh.c:655 +#, c-format +msgid "%B: 0x%lx: warning: symbol in unexpected section" +msgstr "%B: 0x%lx: попередженнÑ: Ñимвол у неочікуваному розділі" + +#: 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: попередженнÑ: не вдалоÑÑ Ð·Ð½Ð°Ð¹Ñ‚Ð¸ очікуване переÑÑƒÐ²Ð°Ð½Ð½Ñ COUNT" + +#: coff-sh.c:985 elf32-sh.c:795 +#, c-format +msgid "%B: 0x%lx: warning: bad count" +msgstr "%B: 0x%lx: попередженнÑ: помилковий лічильник" -#: coff-tic4x.c:240 +#: coff-sh.c:1357 coff-sh.c:2645 elf32-sh.c:1199 elf32-sh.c:1570 #, c-format -msgid "%s: warning: illegal symbol index %ld in relocs" -msgstr "%s: попередженнÑ: некоректний Ñ–Ð½Ð´ÐµÐºÑ Ñимволу %ld у переÑуваннÑÑ…" +msgid "%B: 0x%lx: fatal: reloc overflow while relaxing" +msgstr "%B: 0x%lx: критична помилка: Ð¿ÐµÑ€ÐµÐ¿Ð¾Ð²Ð½ÐµÐ½Ð½Ñ Ð¿ÐµÑ€ÐµÑÑƒÐ²Ð°Ð½Ð½Ñ Ð¿Ñ–Ð´ Ñ‡Ð°Ñ Ð¾Ð¿Ñ‚Ð¸Ð¼Ñ–Ð·Ð°Ñ†Ñ–Ñ— розміру" -#: coff-w65.c:367 +#: coff-sh.c:1452 +msgid "%B: fatal: generic symbols retrieved before relaxing" +msgstr "%B: критична помилка: отримано загальні Ñимволи до оптимізації розміру" + +#: coff-sh.c:2783 cofflink.c:2961 +#, c-format +msgid "%B: illegal symbol index %ld in relocs" +msgstr "%B: некоректний Ñ–Ð½Ð´ÐµÐºÑ Ñимволу %ld у переÑуваннÑÑ…" + +#: coff-tic4x.c:183 coff-tic54x.c:278 coff-tic80.c:439 +#, c-format +msgid "Unrecognized reloc type 0x%x" +msgstr "Ðерозпізнаний тип переÑÑƒÐ²Ð°Ð½Ð½Ñ 0x%x" + +#: coff-w65.c:352 #, c-format msgid "ignoring reloc %s\n" msgstr "ігноруємо переÑÑƒÐ²Ð°Ð½Ð½Ñ %s\n" -#: coffcode.h:997 +#: coffcode.h:968 +msgid "%B: unable to load COMDAT section name" +msgstr "%B: не вдалоÑÑ Ð·Ð°Ð²Ð°Ð½Ñ‚Ð°Ð¶Ð¸Ñ‚Ð¸ назву розділу COMDAT" + +#: coffcode.h:1009 +#, c-format msgid "%B: warning: COMDAT symbol '%s' does not match section name '%s'" msgstr "%B: попередженнÑ: Ñимвол COMDAT «%s» не відповідає назві розділу «%s»" +#: coffcode.h:1019 +#, c-format +msgid "%B: warning: No symbol for section '%s' found" +msgstr "%B: попередженнÑ: не знайдено Ñимволу Ð´Ð»Ñ Ñ€Ð¾Ð·Ð´Ñ–Ð»Ñƒ «%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:1221 +#: coffcode.h:1245 +#, c-format msgid "%B: Warning: Ignoring section flag IMAGE_SCN_MEM_NOT_PAGED in section %s" msgstr "%B: попередженнÑ: ігноруємо прапорець розділу IMAGE_SCN_MEM_NOT_PAGED у розділі %s" -#: coffcode.h:1288 +#: coffcode.h:1314 +#, c-format msgid "%B (%s): Section flag %s (0x%x) ignored" msgstr "%B (%s): прапорець розділу %s (0x%x) проігноровано" -#: coffcode.h:2430 +#: coffcode.h:1949 +msgid "%B: warning: claims to have 0xffff relocs, without overflow" +msgstr "%B: попередженнÑ: вимога щодо 0xffff переÑувань без переповненнÑ" + +#: coffcode.h:2465 #, c-format msgid "Unrecognized TI COFF target id '0x%x'" msgstr "Ðерозпізнаний ідентифікатор Ð¿Ñ€Ð¸Ð·Ð½Ð°Ñ‡ÐµÐ½Ð½Ñ TI COFF, «0x%x»" -#: coffcode.h:2744 -msgid "%B: reloc against a non-existant symbol index: %ld" +#: coffcode.h:2783 +#, c-format +msgid "%B: reloc against a non-existent symbol index: %ld" msgstr "%B: переÑÑƒÐ²Ð°Ð½Ð½Ñ Ð·Ð° неÑтвореним індекÑом Ñимволу: %ld" -#: coffcode.h:3302 +#: coffcode.h:3186 +#, c-format +msgid "%B: page size is too large (0x%x)" +msgstr "%B: надто великий розмір Ñторінки (0x%x)" + +#: coffcode.h:3346 +#, c-format msgid "%B: too many sections (%d)" msgstr "%B: занадто багато розділів (%d)" -#: coffcode.h:3718 -msgid "%B: section %s: string table overflow at offset %ld" -msgstr "%B: розділ %s: Ð¿ÐµÑ€ÐµÐ¿Ð¾Ð²Ð½ÐµÐ½Ð½Ñ Ñ‚Ð°Ð±Ð»Ð¸Ñ†Ñ– Ñ€Ñдків за відÑтупом %ld" +#: coffcode.h:3767 +#, c-format +msgid "%B: section %A: string table overflow at offset %ld" +msgstr "%B: розділ %A: Ð¿ÐµÑ€ÐµÐ¿Ð¾Ð²Ð½ÐµÐ½Ð½Ñ Ñ‚Ð°Ð±Ð»Ð¸Ñ†Ñ– Ñ€Ñдків за відÑтупом %ld" -#: coffcode.h:4523 +#: coffcode.h:4585 msgid "%B: warning: line number table read failed" msgstr "%B: попередженнÑ: помилка Ñ‡Ð¸Ñ‚Ð°Ð½Ð½Ñ Ð· таблиці номерів Ñ€Ñдків" -#: coffcode.h:4553 -msgid "%B: warning: illegal symbol index %ld in line numbers" -msgstr "%B: попередженнÑ: некоректний Ñ–Ð½Ð´ÐµÐºÑ Ñимволу %ld у номерах Ñ€Ñдків" +#: coffcode.h:4619 coffcode.h:4633 +#, c-format +msgid "%B: warning: illegal symbol index 0x%lx in line number entry %d" +msgstr "%B: попередженнÑ: некоректний Ñ–Ð½Ð´ÐµÐºÑ Ñимволу 0x%lx у запиÑÑ– номера Ñ€Ñдка %d" + +#: coffcode.h:4647 +#, c-format +msgid "%B: warning: illegal symbol in line number entry %d" +msgstr "%B: попередженнÑ: некоректний Ñимвол у запиÑÑ– номера Ñ€Ñдка %d" -#: coffcode.h:4567 +#: coffcode.h:4660 +#, c-format msgid "%B: warning: duplicate line number information for `%s'" msgstr "%B: попередженнÑ: Ð´ÑƒÐ±Ð»ÑŽÐ²Ð°Ð½Ð½Ñ Ð´Ð°Ð½Ð¸Ñ… щодо номерів Ñ€Ñдків Ð´Ð»Ñ Â«%s»" -#: coffcode.h:4967 +#: coffcode.h:5074 +#, c-format msgid "%B: Unrecognized storage class %d for %s symbol `%s'" msgstr "%B: невідомий ÐºÐ»Ð°Ñ Ð·Ð±ÐµÑ€Ñ–Ð³Ð°Ð½Ð½Ñ Ð´Ð°Ð½Ð¸Ñ… %d Ð´Ð»Ñ Ñимволу %s «%s»" -#: coffcode.h:5093 +#: coffcode.h:5207 +#, c-format msgid "warning: %B: local symbol `%s' has no section" msgstr "попередженнÑ: %B: локальний Ñимвол «%s» не має розділу" -#: coffcode.h:5237 +#: coffcode.h:5354 +#, c-format msgid "%B: illegal relocation type %d at address 0x%lx" msgstr "%B: некоректний тип переÑÑƒÐ²Ð°Ð½Ð½Ñ %d за адреÑою 0x%lx" -#: coffgen.c:1595 +#: coffgen.c:178 elf.c:1181 +#, c-format +msgid "%B: unable to initialize compress status for section %s" +msgstr "%B: не вдалоÑÑ Ñ–Ð½Ñ–Ñ†Ñ–Ð°Ð»Ñ–Ð·ÑƒÐ²Ð°Ñ‚Ð¸ Ñтан ÑтиÑÐºÐ°Ð½Ð½Ñ Ð´Ð»Ñ Ñ€Ð¾Ð·Ð´Ñ–Ð»Ñƒ %s" + +#: coffgen.c:202 elf.c:1192 +#, c-format +msgid "%B: unable to initialize decompress status for section %s" +msgstr "%B: не вдалоÑÑ Ñ–Ð½Ñ–Ñ†Ñ–Ð°Ð»Ñ–Ð·ÑƒÐ²Ð°Ñ‚Ð¸ Ñтан Ñ€Ð¾Ð·Ð¿Ð°ÐºÐ¾Ð²ÑƒÐ²Ð°Ð½Ð½Ñ Ð´Ð»Ñ Ñ€Ð¾Ð·Ð´Ñ–Ð»Ñƒ %s" + +#. 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: недоÑтатньо пам'ÑÑ‚Ñ– Ð´Ð»Ñ Ð¾Ñ‚Ñ€Ð¸Ð¼Ð°Ð½Ð½Ñ Ð¼Ñ–ÑÑ†Ñ Ð´Ð»Ñ %lu Ñимволів" + +#: coffgen.c:1716 +#, c-format msgid "%B: bad string table size %lu" msgstr "%B: помилковий розмір таблиці Ñ€Ñдків %lu" -#: coffgen.c:2500 elflink.c:12689 linker.c:3122 +#: coffgen.c:1885 coffgen.c:1945 coffgen.c:1963 cofflink.c:2041 +#: xcofflink.c:4507 +msgid "<corrupt>" +msgstr "<пошкоджено>" + +#: coffgen.c:2087 +#, c-format +msgid "<corrupt info> %s" +msgstr "<пошкоджені дані> %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 elflink.c:4323 +#: coffgen.c:3007 elflink.c:13059 +#, c-format +msgid "Removing unused section '%A' in file '%B'" +msgstr "Вилучаємо невикориÑтовуваний розділ «%A» у файлі «%B»" + +#: coffgen.c:3084 elflink.c:13304 +msgid "Warning: gc-sections option ignored" +msgstr "ПопередженнÑ: параметр gc-sections проігноровано" + +#: cofflink.c:348 +#, c-format +msgid "Warning: symbol `%s' is both section and non-section" +msgstr "ПопередженнÑ: Ñимвол «%s» Ñ” у розділі Ñ– поза розділом" + +#: 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 "ПопередженнÑ: тип Ñимволу «%s» змінено з %d на %d у %B" -#: cofflink.c:2329 +#: cofflink.c:2369 +#, c-format msgid "%B: relocs in section `%A', but it has no contents" msgstr "%B: переÑÑƒÐ²Ð°Ð½Ð½Ñ Ñƒ розділі «%A», але у цьому розділі немає зміÑту" -#: cofflink.c:2391 elflink.c:9545 +#: 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» поÑилаєтьÑÑ Ñ€Ð¾Ð·Ð´Ñ–Ð» «%A» %B: визначено у відкинутому розділі «%A» %B\n" -#: cofflink.c:2690 coffswap.h:826 +#: cofflink.c:2730 +#, c-format +msgid "%B: %A: reloc overflow: 0x%lx > 0xffff" +msgstr "%B: %A: Ð¿ÐµÑ€ÐµÐ¿Ð¾Ð²Ð½ÐµÐ½Ð½Ñ Ð¿Ñ–Ð´ Ñ‡Ð°Ñ Ð¿ÐµÑ€ÐµÑуваннÑ: 0x%lx > 0xffff" + +#: cofflink.c:2738 +#, c-format +msgid "%B: warning: %A: line number overflow: 0x%lx > 0xffff" +msgstr "%B: попередженнÑ: %A: Ð¿ÐµÑ€ÐµÐ¿Ð¾Ð²Ð½ÐµÐ½Ð½Ñ Ð½Ð¾Ð¼ÐµÑ€Ð° Ñ€Ñдка: 0x%lx > 0xffff" + +#: coffswap.h:811 #, c-format -msgid "%s: %s: reloc overflow: 0x%lx > 0xffff" -msgstr "%s: %s: Ð¿ÐµÑ€ÐµÐ¿Ð¾Ð²Ð½ÐµÐ½Ð½Ñ Ð¿Ñ–Ð´ Ñ‡Ð°Ñ Ð¿ÐµÑ€ÐµÑуваннÑ: 0x%lx > 0xffff" +msgid "%B: warning: %s: line number overflow: 0x%lx > 0xffff" +msgstr "%B: попередженнÑ: %s: Ð¿ÐµÑ€ÐµÐ¿Ð¾Ð²Ð½ÐµÐ½Ð½Ñ Ð½Ð¾Ð¼ÐµÑ€Ð° Ñ€Ñдка: 0x%lx > 0xffff" -#: cofflink.c:2699 coffswap.h:812 +#: coffswap.h:825 #, c-format -msgid "%s: warning: %s: line number overflow: 0x%lx > 0xffff" -msgstr "%s: попередженнÑ: %s: Ð¿ÐµÑ€ÐµÐ¿Ð¾Ð²Ð½ÐµÐ½Ð½Ñ Ð½Ð¾Ð¼ÐµÑ€Ð° Ñ€Ñдка: 0x%lx > 0xffff" +msgid "%B: %s: reloc overflow: 0x%lx > 0xffff" +msgstr "%B: %s: Ð¿ÐµÑ€ÐµÐ¿Ð¾Ð²Ð½ÐµÐ½Ð½Ñ Ð¿Ñ–Ð´ Ñ‡Ð°Ñ Ð¿ÐµÑ€ÐµÑуваннÑ: 0x%lx > 0xffff" -#: cpu-arm.c:189 cpu-arm.c:200 +#: compress.c:255 +#, c-format +msgid "error: %B(%A) is too large (%#lx bytes)" +msgstr "помилка: %B(%A) Ñ” надто великим (%#lx байтів)" + +#: 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 "помилка: B зібрано Ð´Ð»Ñ EP9312, а %B зібрано Ð´Ð»Ñ XScale" -#: cpu-arm.c:333 +#: cpu-arm.c:338 #, c-format -msgid "warning: unable to update contents of %s section in %s" -msgstr "попередженнÑ: не вдалоÑÑ Ð¾Ð½Ð¾Ð²Ð¸Ñ‚Ð¸ зміÑÑ‚ розділу %s у %s" +msgid "warning: unable to update contents of %s section in %B" +msgstr "попередженнÑ: не вдалоÑÑ Ð¾Ð½Ð¾Ð²Ð¸Ñ‚Ð¸ зміÑÑ‚ розділу %s у %B" -#: dwarf2.c:496 +#: dwarf2.c:532 #, c-format msgid "Dwarf Error: Can't find %s section." msgstr "Помилка dwarf: не вдалоÑÑ Ð·Ð½Ð°Ð¹Ñ‚Ð¸ розділ %s." -#: dwarf2.c:525 +#: dwarf2.c:562 #, c-format msgid "Dwarf Error: Offset (%lu) greater than or equal to %s size (%lu)." msgstr "Помилка dwarf: відÑтуп (%lu) Ñ” більшим або рівним за розмір %s (%lu)." -#: dwarf2.c:949 +#: dwarf2.c:1028 +msgid "Dwarf Error: Info pointer extends beyond end of attributes" +msgstr "Помилка dwarf: вказівник на дані виходить за кінець атрибутів" + +#: dwarf2.c:1185 #, c-format -msgid "Dwarf Error: Invalid or unhandled FORM value: %u." -msgstr "Помилка dwarf: некоректне або непридатне до обробки Ð·Ð½Ð°Ñ‡ÐµÐ½Ð½Ñ FORM: %u." +msgid "Dwarf Error: Invalid or unhandled FORM value: %#x." +msgstr "Помилка dwarf: некоректне або непридатне до обробки Ð·Ð½Ð°Ñ‡ÐµÐ½Ð½Ñ FORM: %#x." -#: dwarf2.c:1200 +#: dwarf2.c:1491 msgid "Dwarf Error: mangled line number section (bad file number)." msgstr "Помилка dwarf: пошкоджений розділ номерів Ñ€Ñдків (помилковий номер файла)." -#: dwarf2.c:1453 +#: dwarf2.c:1779 +#, c-format +msgid "Dwarf Error: Line info section is too small (%ld)" +msgstr "Помилка dwarf: розділ даних щодо Ñ€Ñдків Ñ” надто малим (%ld)" + +#: dwarf2.c:1809 +#, c-format +msgid "Dwarf Error: Line info data is bigger (0x%lx) than the section (0x%lx)" +msgstr "Помилка dwarf: дані щодо Ñ€Ñдків Ñ” більшими (0x%lx) за розділ (0x%lx)" + +#: dwarf2.c:1821 #, c-format msgid "Dwarf Error: Unhandled .debug_line version %d." msgstr "Помилка dwarf: непридатна до обробки верÑÑ–Ñ .debug_line, %d." -#: dwarf2.c:1475 +#: dwarf2.c:1830 +msgid "Dwarf Error: Ran out of room reading prologue" +msgstr "Помилка dwarf: вихід за межі облаÑÑ‚Ñ– під Ñ‡Ð°Ñ Ñ‡Ð¸Ñ‚Ð°Ð½Ð½Ñ Ð²Ñтупу" + +#: dwarf2.c:1855 msgid "Dwarf Error: Invalid maximum operations per instruction." msgstr "Помилка dwarf: некоректна макÑимальна кількіÑÑ‚ÑŒ дій на команду." -#: dwarf2.c:1662 +#: dwarf2.c:1874 +msgid "Dwarf Error: Ran out of room reading opcodes" +msgstr "Помилка dwarf: вихід за межі облаÑÑ‚Ñ– під Ñ‡Ð°Ñ Ñ‡Ð¸Ñ‚Ð°Ð½Ð½Ñ ÐºÐ¾Ð´Ñ–Ð² операцій" + +#: dwarf2.c:2069 msgid "Dwarf Error: mangled line number section." msgstr "Помилка dwarf: пошкоджений розділ номерів Ñ€Ñдків." -#: dwarf2.c:1989 dwarf2.c:2109 dwarf2.c:2394 +#: dwarf2.c:2575 +#, c-format +msgid "Dwarf Error: Unable to read alt ref %u." +msgstr "Помилка Dwarf: не вдалоÑÑ Ð¿Ñ€Ð¾Ñ‡Ð¸Ñ‚Ð°Ñ‚Ð¸ альтернативне поÑÐ¸Ð»Ð°Ð½Ð½Ñ %u." + +#: dwarf2.c:2600 dwarf2.c:2750 dwarf2.c:3071 #, c-format msgid "Dwarf Error: Could not find abbrev number %u." msgstr "Помилка dwarf: не вдалоÑÑ Ð·Ð½Ð°Ð¹Ñ‚Ð¸ Ñкорочений номер %u." -#: dwarf2.c:2355 +#: dwarf2.c:3023 #, c-format msgid "Dwarf Error: found dwarf version '%u', this reader only handles version 2, 3 and 4 information." msgstr "Помилка dwarf: виÑвлено верÑÑ–ÑŽ dwarf «%u», але у цій функції Ñ‡Ð¸Ñ‚Ð°Ð½Ð½Ñ Ð¿ÐµÑ€ÐµÐ´Ð±Ð°Ñ‡ÐµÐ½Ð¾ обробку лише верÑій даних 2, 3 Ñ– 4." -#: dwarf2.c:2362 +#: dwarf2.c:3034 #, c-format msgid "Dwarf Error: found address size '%u', this reader can not handle sizes greater than '%u'." msgstr "Помилка у dwarf: виÑвлено розмір адреÑи «%u», втім у функції Ñ‡Ð¸Ñ‚Ð°Ð½Ð½Ñ Ð½Ðµ передбачено розмірів, що перевищують «%u»." -#: dwarf2.c:2385 +#: dwarf2.c:3137 +msgid "Dwarf Error: DW_AT_comp_dir attribute encountered with a non-string form." +msgstr "Помилка dwarf: виÑвлено атрибут DW_AT_comp_dir із нерÑдковою формою." + +#: ecoff.c:964 #, c-format -msgid "Dwarf Error: Bad abbrev number: %u." -msgstr "Помилка dwarf: помилковий Ñкорочений номер: %u." +msgid "%B: warning: isymMax (%ld) is greater than ifdMax (%d)\n" +msgstr "%B: попередженнÑ: isymMax (%ld) перевищує ifdMax (%d)\n" -#: ecoff.c:1239 +#: ecoff.c:1261 #, c-format msgid "Unknown basic type %d" msgstr "Ðевідомий оÑновний тип %d" -#: ecoff.c:1496 +#: ecoff.c:1518 #, c-format msgid "" "\n" @@ -581,7 +771,7 @@ msgstr "" "\n" " Символ за кінцем: %ld" -#: ecoff.c:1503 ecoff.c:1506 +#: ecoff.c:1525 ecoff.c:1528 #, c-format msgid "" "\n" @@ -590,7 +780,7 @@ msgstr "" "\n" " Перший Ñимвол: %ld" -#: ecoff.c:1518 +#: ecoff.c:1541 #, c-format msgid "" "\n" @@ -599,7 +789,7 @@ msgstr "" "\n" " Символ за кінцем: %-7ld Тип: %s" -#: ecoff.c:1525 +#: ecoff.c:1548 #, c-format msgid "" "\n" @@ -608,7 +798,7 @@ msgstr "" "\n" " Локальний Ñимвол: %ld" -#: ecoff.c:1533 +#: ecoff.c:1556 #, c-format msgid "" "\n" @@ -617,7 +807,7 @@ msgstr "" "\n" " struct; Ñимвол за кінцем: %ld" -#: ecoff.c:1538 +#: ecoff.c:1561 #, c-format msgid "" "\n" @@ -626,7 +816,7 @@ msgstr "" "\n" " union; Ñимвол за кінцем: %ld" -#: ecoff.c:1543 +#: ecoff.c:1566 #, c-format msgid "" "\n" @@ -635,7 +825,7 @@ msgstr "" "\n" " enum; Ñимвол за кінцем: %ld" -#: ecoff.c:1549 +#: ecoff.c:1572 #, c-format msgid "" "\n" @@ -644,140 +834,269 @@ msgstr "" "\n" " Тип: %s" -#: elf-attrs.c:569 +#: elf-attrs.c:595 +#, c-format msgid "error: %B: Object has vendor-specific contents that must be processed by the '%s' toolchain" msgstr "помилка: %B: у об’єкті міÑÑ‚ÑÑ‚ÑŒÑÑ Ð´Ð°Ð½Ñ– у Ñпецифічному форматі, ці дані має бути оброблено набором інÑтрументів «%s»" -#: elf-attrs.c:578 +#: elf-attrs.c:605 +#, c-format msgid "error: %B: Object tag '%d, %s' is incompatible with tag '%d, %s'" msgstr "помилка: %B: мітка об’єкта «%d, %s» неÑуміÑна з міткою «%d, %s»" -#: elf-eh-frame.c:917 +#: elf-eh-frame.c:946 +#, c-format +msgid "discarding zero address range FDE in %B(%A).\n" +msgstr "відкидаємо FDE нульового діапазону Ð°Ð´Ñ€ÐµÑ Ñƒ %B(%A).\n" + +#: elf-eh-frame.c:1051 +#, c-format msgid "%P: error in %B(%A); no .eh_frame_hdr table will be created.\n" msgstr "%P: помилка у %B(%A); таблицю .eh_frame_hdr не буде Ñтворено.\n" -#: elf-eh-frame.c:1189 -msgid "%P: fde encoding in %B(%A) prevents .eh_frame_hdr table being created.\n" -msgstr "%P: ÐºÐ¾Ð´ÑƒÐ²Ð°Ð½Ð½Ñ fde у %B(%A) перешкоджає Ñтворенню таблиці .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: ÐºÐ¾Ð´ÑƒÐ²Ð°Ð½Ð½Ñ FDE у %B(%A) перешкоджає Ñтворенню таблиці .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: подальші Ð¿Ð¾Ð¿ÐµÑ€ÐµÐ´Ð¶ÐµÐ½Ð½Ñ Ñ‰Ð¾Ð´Ð¾ ÐºÐ¾Ð´ÑƒÐ²Ð°Ð½Ð½Ñ FDE, Ñке заважає Ñтворенню .eh_frame_hdr, пропущено.\n" -#: elf-eh-frame.c:1605 +#: elf-eh-frame.c:1879 +#, c-format +msgid "%B: %A not in order" +msgstr "%B: %A Ñ” невпорÑдкованим" + +#: elf-eh-frame.c:1893 +#, c-format +msgid "%B: %A invalid input section size" +msgstr "%B: %A некоректних розмір розділу вхідних даних" + +#: elf-eh-frame.c:1901 +#, c-format +msgid "%B: %A points past end of text section" +msgstr "%B: %A вказує на адреÑу за кінцем текÑтового розділу" + +#: elf-eh-frame.c:2150 msgid "%P: DW_EH_PE_datarel unspecified for this architecture.\n" msgstr "%P: DW_EH_PE_datarel не визначено Ð´Ð»Ñ Ñ†Ñ–Ñ”Ñ— архітектури.\n" -#: elf-ifunc.c:179 +#: elf-eh-frame.c:2320 +#, c-format +msgid "Invalid output section for .eh_frame_entry: %A" +msgstr "Ðекоректний роздInvalid output section for .eh_frame_entry: %A" + +#: elf-eh-frame.c:2343 +#, c-format +msgid "Invalid contents in %A section" +msgstr "Ðекоректний вміÑÑ‚ у розділі %A" + +#: elf-eh-frame.c:2499 +msgid "%P: .eh_frame_hdr entry overflow.\n" +msgstr "%P: Ð¿ÐµÑ€ÐµÐ¿Ð¾Ð²Ð½ÐµÐ½Ð½Ñ Ð·Ð°Ð¿Ð¸Ñу .eh_frame_hdr.\n" + +#: elf-eh-frame.c:2502 +msgid "%P: .eh_frame_hdr refers to overlapping FDEs.\n" +msgstr "%P: .eh_frame_hdr поÑилаєтьÑÑ Ð½Ð° FDE, Ñкі перекриваютьÑÑ.\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 "%F%P: динамічний Ñимвол STT_GNU_IFUNC «%s» з рівніÑÑ‚ÑŽ вказівників у «%B» не можна викориÑтовувати під Ñ‡Ð°Ñ ÑÑ‚Ð²Ð¾Ñ€ÐµÐ½Ð½Ñ Ð²Ð¸ÐºÐ¾Ð½ÑƒÐ²Ð°Ð½Ð¾Ð³Ð¾ файла; виконайте повторну компілÑцію з -fPIE Ñ– повторне ÐºÐ¾Ð¼Ð¿Ð¾Ð½ÑƒÐ²Ð°Ð½Ð½Ñ -pie\n" -#: elf-m10200.c:450 elf-m10300.c:1563 elf32-avr.c:1221 elf32-bfin.c:3213 -#: elf32-cr16.c:1482 elf32-cr16c.c:780 elf32-cris.c:2081 elf32-crx.c:922 -#: elf32-d10v.c:509 elf32-epiphany.c:556 elf32-fr30.c:609 elf32-frv.c:4105 -#: elf32-h8300.c:509 elf32-i860.c:1211 elf32-ip2k.c:1468 elf32-iq2000.c:684 -#: elf32-lm32.c:1168 elf32-m32c.c:553 elf32-m32r.c:3106 elf32-m68hc1x.c:1138 -#: elf32-mep.c:535 elf32-microblaze.c:1231 elf32-moxie.c:282 -#: elf32-msp430.c:486 elf32-mt.c:395 elf32-openrisc.c:404 elf32-score.c:2729 -#: elf32-score7.c:2537 elf32-spu.c:5044 elf32-tilepro.c:3214 elf32-v850.c:2143 -#: elf32-xstormy16.c:935 elf64-mmix.c:1590 elfxx-tilegx.c:3577 +#: 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 "Ð²Ð½ÑƒÑ‚Ñ€Ñ–ÑˆÐ½Ñ Ð¿Ð¾Ð¼Ð¸Ð»ÐºÐ°: вихід за межі діапазону" -#: elf-m10200.c:454 elf-m10300.c:1567 elf32-avr.c:1225 elf32-bfin.c:3217 -#: elf32-cr16.c:1486 elf32-cr16c.c:784 elf32-cris.c:2085 elf32-crx.c:926 -#: elf32-d10v.c:513 elf32-fr30.c:613 elf32-frv.c:4109 elf32-h8300.c:513 -#: elf32-i860.c:1215 elf32-iq2000.c:688 elf32-lm32.c:1172 elf32-m32c.c:557 -#: elf32-m32r.c:3110 elf32-m68hc1x.c:1142 elf32-mep.c:539 -#: elf32-microblaze.c:1235 elf32-moxie.c:286 elf32-msp430.c:490 -#: elf32-openrisc.c:408 elf32-score.c:2733 elf32-score7.c:2541 -#: elf32-spu.c:5048 elf32-tilepro.c:3218 elf32-v850.c:2147 -#: elf32-xstormy16.c:939 elf64-mmix.c:1594 elfxx-mips.c:9465 -#: elfxx-tilegx.c:3581 +#: 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 "Ð²Ð½ÑƒÑ‚Ñ€Ñ–ÑˆÐ½Ñ Ð¿Ð¾Ð¼Ð¸Ð»ÐºÐ°: непідтримувана помилка переÑуваннÑ" -#: elf-m10200.c:458 elf32-cr16.c:1490 elf32-cr16c.c:788 elf32-crx.c:930 -#: elf32-d10v.c:517 elf32-h8300.c:517 elf32-lm32.c:1176 elf32-m32r.c:3114 -#: elf32-m68hc1x.c:1146 elf32-microblaze.c:1239 elf32-score.c:2737 -#: elf32-score7.c:2545 elf32-spu.c:5052 +#: 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 "Ð²Ð½ÑƒÑ‚Ñ€Ñ–ÑˆÐ½Ñ Ð¿Ð¾Ð¼Ð¸Ð»ÐºÐ°: небезпечна помилка" -#: elf-m10200.c:462 elf-m10300.c:1580 elf32-avr.c:1233 elf32-bfin.c:3225 -#: elf32-cr16.c:1494 elf32-cr16c.c:792 elf32-cris.c:2093 elf32-crx.c:934 -#: elf32-d10v.c:521 elf32-epiphany.c:571 elf32-fr30.c:621 elf32-frv.c:4117 -#: elf32-h8300.c:521 elf32-i860.c:1223 elf32-ip2k.c:1483 elf32-iq2000.c:696 -#: elf32-lm32.c:1180 elf32-m32c.c:565 elf32-m32r.c:3118 elf32-m68hc1x.c:1150 -#: elf32-mep.c:547 elf32-microblaze.c:1243 elf32-moxie.c:294 -#: elf32-msp430.c:498 elf32-mt.c:403 elf32-openrisc.c:416 elf32-score.c:2746 -#: elf32-score7.c:2549 elf32-spu.c:5056 elf32-tilepro.c:3226 elf32-v850.c:2167 -#: elf32-xstormy16.c:947 elf64-mmix.c:1602 elfxx-tilegx.c:3589 +#: 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 "Ð²Ð½ÑƒÑ‚Ñ€Ñ–ÑˆÐ½Ñ Ð¿Ð¾Ð¼Ð¸Ð»ÐºÐ°: невідома помилка" -#: elf-m10300.c:1507 elf32-arm.c:10419 elf32-i386.c:4264 elf32-m32r.c:2599 -#: elf32-m68k.c:4156 elf32-s390.c:3003 elf32-sh.c:4218 elf32-tilepro.c:3117 -#: elf32-xtensa.c:3066 elf64-s390.c:2978 elf64-sh64.c:1640 elf64-x86-64.c:4110 -#: elfxx-sparc.c:3835 elfxx-tilegx.c:3500 +#: elf-m10300.c:812 +#, c-format +msgid "%B: unrecognised MN10300 reloc number: %d" +msgstr "%B: невідоме чиÑло переÑÑƒÐ²Ð°Ð½Ð½Ñ MN10300: %d" + +#: elf-m10300.c:1028 +#, c-format +msgid "%B: Unsupported transition from %s to %s" +msgstr "%B: непідтримуваний перехід з %s до %s" + +#: elf-m10300.c:1201 +#, c-format +msgid "%B: %s' accessed both as normal and thread local symbol" +msgstr "%B: доÑтуп до «%s» виконуєтьÑÑ Ñк до звичайного Ñимволу та локального Ð´Ð»Ñ Ð¿Ð¾Ñ‚Ð¾ÐºÑƒ Ð²Ð¸ÐºÐ¾Ð½Ð°Ð½Ð½Ñ Ñимволу" + +#: 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): нерозв’Ñзне переÑÑƒÐ²Ð°Ð½Ð½Ñ %s щодо Ñимволу «%s»" -#: elf-m10300.c:1572 +#: elf-m10300.c:2158 msgid "error: inappropriate relocation type for shared library (did you forget -fpic?)" msgstr "помилка: невідповідний тип переÑÑƒÐ²Ð°Ð½Ð½Ñ Ð´Ð»Ñ Ð±Ñ–Ð±Ð»Ñ–Ð¾Ñ‚ÐµÐºÐ¸ Ñпільного викориÑÑ‚Ð°Ð½Ð½Ñ (забули -fpic?)" -#: elf-m10300.c:1575 +#: 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: не можна виконувати Ð¾Ñ‚Ñ€Ð¸Ð¼Ð°Ð½Ð½Ñ Ð°Ð´Ñ€ÐµÑи захищеної функції «%s» під Ñ‡Ð°Ñ ÑÑ‚Ð²Ð¾Ñ€ÐµÐ½Ð½Ñ Ð±Ñ–Ð±Ð»Ñ–Ð¾Ñ‚ÐµÐºÐ¸ Ñпільного викориÑтаннÑ" + +#: elf-m10300.c:2165 msgid "internal error: suspicious relocation type used in shared library" msgstr "Ð²Ð½ÑƒÑ‚Ñ€Ñ–ÑˆÐ½Ñ Ð¿Ð¾Ð¼Ð¸Ð»ÐºÐ°: підозріливий тип переÑÑƒÐ²Ð°Ð½Ð½Ñ Ñƒ бібліотеці Ñпільного викориÑтаннÑ" -#: elf-m10300.c:4372 elf32-arm.c:12800 elf32-cr16.c:2451 elf32-cris.c:3057 -#: elf32-hppa.c:1894 elf32-i370.c:503 elf32-i386.c:2182 elf32-lm32.c:1868 -#: elf32-m32r.c:1927 elf32-m68k.c:3253 elf32-s390.c:1652 elf32-sh.c:2931 -#: elf32-tic6x.c:2162 elf32-tilepro.c:1940 elf32-vax.c:1041 elf64-s390.c:1635 -#: elf64-sh64.c:3381 elf64-x86-64.c:2176 elfxx-sparc.c:2119 -#: elfxx-tilegx.c:2261 +#: elf-properties.c:65 +msgid "%B: out of memory in _bfd_elf_get_property" +msgstr "%B: вихід за межі ділÑнки пам'ÑÑ‚Ñ– у _bfd_elf_get_property" + +#: elf-properties.c:91 +msgid "warning: %B: corrupt GNU_PROPERTY_TYPE (%ld) size: %#lx" +msgstr "попередженнÑ: %B: пошкоджено GNU_PROPERTY_TYPE (%ld), розмір: %#lx" + +#: elf-properties.c:107 +msgid "warning: %B: corrupt GNU_PROPERTY_TYPE (%ld) type (0x%x) datasz: 0x%x" +msgstr "попередженнÑ: %B: пошкоджено GNU_PROPERTY_TYPE (%ld), тип (0x%x), обÑÑг даних: 0x%x" + +#: elf-properties.c:146 +msgid "warning: %B: corrupt stack size: 0x%x" +msgstr "попередженнÑ: %B: пошкоджено розмір Ñтека: 0x%x" + +#: elf-properties.c:164 +msgid "warning: %B: corrupt no copy on protected size: 0x%x" +msgstr "попередженнÑ: %B: пошкоджено «не копіювати захищене», розмір: 0x%x" + +#: elf-properties.c:180 +msgid "warning: %B: unsupported GNU_PROPERTY_TYPE (%ld) type: 0x%x" +msgstr "попередженнÑ: %B: непідтримуваний тип GNU_PROPERTY_TYPE (%ld): 0x%x" + +#. PR 17512: file: f057ec89. +#: elf.c:342 #, c-format -msgid "dynamic variable `%s' is zero size" -msgstr "динамічна змінна «%s» має нульовий розмір" +msgid "%B: attempt to load strings from a non-string section (number %d)" +msgstr "%B: Ñпроба Ð·Ð°Ð²Ð°Ð½Ñ‚Ð°Ð¶ÐµÐ½Ð½Ñ Ñ€Ñдків із нерÑдкового розділу (номер %d)" -#: elf.c:334 +#: elf.c:357 +#, c-format msgid "%B: invalid string offset %u >= %lu for section `%s'" msgstr "%B: некоректний відÑтуп Ñ€Ñдка, %u >= %lu, Ð´Ð»Ñ Ñ€Ð¾Ð·Ð´Ñ–Ð»Ñƒ «%s»" -#: elf.c:446 +#: elf.c:496 +#, c-format msgid "%B symbol number %lu references nonexistent SHT_SYMTAB_SHNDX section" msgstr "%B номер Ñимволу %lu поÑилаєтьÑÑ Ð½Ð° розділ SHT_SYMTAB_SHNDX, Ñкого не Ñ–Ñнує" -#: elf.c:602 -msgid "%B: Corrupt size field in group section header: 0x%lx" -msgstr "%B: пошкоджені дані Ð¿Ð¾Ð»Ñ Ñ€Ð¾Ð·Ð¼Ñ–Ñ€Ñƒ у заголовку розділу груп: 0x%lx" +#: elf.c:660 +#, c-format +msgid "%B: corrupt size field in group section header: %#Lx" +msgstr "%B: пошкоджені дані Ð¿Ð¾Ð»Ñ Ñ€Ð¾Ð·Ð¼Ñ–Ñ€Ñƒ у заголовку розділу груп: %#Lx" + +#: elf.c:675 +#, c-format +msgid "%B: invalid size field in group section header: %#Lx" +msgstr "%B: некоректні дані Ð¿Ð¾Ð»Ñ Ñ€Ð¾Ð·Ð¼Ñ–Ñ€Ñƒ у заголовку розділу груп: %#Lx" -#: elf.c:638 +#: elf.c:711 msgid "%B: invalid SHT_GROUP entry" msgstr "%B: некоректний Ð·Ð°Ð¿Ð¸Ñ SHT_GROUP" -#: elf.c:708 +#: elf.c:730 +msgid "%B: no valid group sections found" +msgstr "%B: не знайдено коректних розділів групи" + +#: elf.c:804 +#, c-format msgid "%B: no group info for section %A" msgstr "%B: немає даних щодо групи Ð´Ð»Ñ Ñ€Ð¾Ð·Ð´Ñ–Ð»Ñƒ %A" -#: elf.c:737 elf.c:3121 elflink.c:10135 +#: elf.c:835 elf.c:3819 elflink.c:11155 +#, c-format msgid "%B: warning: sh_link not set for section `%A'" msgstr "%B: попередженнÑ: не вÑтановлено sh_link Ð´Ð»Ñ Ñ€Ð¾Ð·Ð´Ñ–Ð»Ñƒ «%A»" -#: elf.c:756 +#: elf.c:855 +#, c-format msgid "%B: sh_link [%d] in section `%A' is incorrect" msgstr "%B: sh_link [%d] у розділі «%A» Ñ” некоректним" -#: elf.c:791 -msgid "%B: unknown [%d] section `%s' in group [%s]" -msgstr "%B: невідомий [%d] розділ «%s» у групі [%s]" +#: elf.c:868 +#, c-format +msgid "%B: SHT_GROUP section [index %d] has no SHF_GROUP sections" +msgstr "%B: розділ SHT_GROUP [Ñ–Ð½Ð´ÐµÐºÑ %d] не має розділів SHF_GROUP" + +#: elf.c:889 +#, c-format +msgid "%B: section group entry number %u is corrupt" +msgstr "%B: Ð·Ð°Ð¿Ð¸Ñ Ð³Ñ€ÑƒÐ¿Ð¸ розділів із номером %u пошкоджено" -#: elf.c:1041 -msgid "%B: unable to initialize commpress status for section %s" -msgstr "%B: не вдалоÑÑ Ñ–Ð½Ñ–Ñ†Ñ–Ð°Ð»Ñ–Ð·ÑƒÐ²Ð°Ñ‚Ð¸ Ñтан ÑтиÑÐºÐ°Ð½Ð½Ñ Ð´Ð»Ñ Ñ€Ð¾Ð·Ð´Ñ–Ð»Ñƒ %s" +#: elf.c:914 +#, c-format +msgid "%B: unknown type [%#x] section `%s' in group [%A]" +msgstr "%B: невідомий тип, [%#x], розділу «%s» у групі [%A]" + +#: elf.c:1373 +#, c-format +msgid "%B: Invalid sh_link field (%d) in section number %d" +msgstr "%B: некоректне поле sh_link (%d) у розділі з номером %d" -#: elf.c:1061 -msgid "%B: unable to initialize decommpress status for section %s" -msgstr "%B: не вдалоÑÑ Ñ–Ð½Ñ–Ñ†Ñ–Ð°Ð»Ñ–Ð·ÑƒÐ²Ð°Ñ‚Ð¸ Ñтан Ñ€Ð¾Ð·Ð¿Ð°ÐºÑƒÐ²Ð°Ð½Ð½Ñ Ð´Ð»Ñ Ñ€Ð¾Ð·Ð´Ñ–Ð»Ñƒ %s" +#: elf.c:1389 +#, c-format +msgid "%B: Failed to find link section for section %d" +msgstr "%B: не вдалоÑÑ Ð·Ð½Ð°Ð¹Ñ‚Ð¸ розділ зв’Ñзків Ð´Ð»Ñ Ñ€Ð¾Ð·Ð´Ñ–Ð»Ñƒ %d" -#: elf.c:1181 +#: elf.c:1416 +#, c-format +msgid "%B: Failed to find info section for section %d" +msgstr "%B: не вдалоÑÑ Ð·Ð½Ð°Ð¹Ñ‚Ð¸ інформації Ð´Ð»Ñ Ñ€Ð¾Ð·Ð´Ñ–Ð»Ñƒ %d" + +#: elf.c:1588 #, c-format msgid "" "\n" @@ -786,7 +1105,7 @@ msgstr "" "\n" "Заголовок програми:\n" -#: elf.c:1223 +#: elf.c:1630 #, c-format msgid "" "\n" @@ -795,7 +1114,7 @@ msgstr "" "\n" "Динамічний розділ:\n" -#: elf.c:1359 +#: elf.c:1771 #, c-format msgid "" "\n" @@ -804,7 +1123,7 @@ msgstr "" "\n" "Ð’Ð¸Ð·Ð½Ð°Ñ‡ÐµÐ½Ð½Ñ Ð²ÐµÑ€Ñій:\n" -#: elf.c:1384 +#: elf.c:1796 #, c-format msgid "" "\n" @@ -813,82 +1132,263 @@ msgstr "" "\n" "ПоÑÐ¸Ð»Ð°Ð½Ð½Ñ Ð½Ð° верÑÑ–Ñ—:\n" -#: elf.c:1389 +#: elf.c:1801 #, c-format msgid " required from %s:\n" msgstr " потрібні %s:\n" -#: elf.c:1796 -msgid "%B: invalid link %lu for reloc section %s (index %u)" -msgstr "%B: некоректне поÑÐ¸Ð»Ð°Ð½Ð½Ñ %lu Ð´Ð»Ñ Ñ€Ð¾Ð·Ð´Ñ–Ð»Ñƒ переÑÑƒÐ²Ð°Ð½Ð½Ñ %s (Ñ–Ð½Ð´ÐµÐºÑ %u)" +#: elf.c:1999 +msgid "%B: warning: loop in section dependencies detected" +msgstr "%B: попередженнÑ: виÑвлено зацикленіÑÑ‚ÑŒ залежноÑтей розділу" + +#: elf.c:2107 +#, c-format +msgid "%B: warning: multiple symbol tables detected - ignoring the table in section %u" +msgstr "%B: попередженнÑ: виÑвлено декілька таблиць Ñимволів — ігноруємо таблицю у розділі %u" -#: elf.c:1966 -msgid "%B: don't know how to handle allocated, application specific section `%s' [0x%8x]" -msgstr "%B: ÑпоÑіб обробки розміщеного невідомий, Ñпецифічний Ð´Ð»Ñ Ð¿Ñ€Ð¾Ð³Ñ€Ð°Ð¼Ð¸ розділ «%s» [0x%8x]" +#: elf.c:2191 +#, c-format +msgid "%B: warning: multiple dynamic symbol tables detected - ignoring the table in section %u" +msgstr "%B: попередженнÑ: виÑвлено декілька таблиць динамічних Ñимволів — ігноруємо таблицю у розділі %u" -#: elf.c:1978 -msgid "%B: don't know how to handle processor specific section `%s' [0x%8x]" -msgstr "%B: ÑпоÑіб обробки Ñпецифічного Ð´Ð»Ñ Ð¿Ñ€Ð¾Ñ†ÐµÑора розділу `%s' [0x%8x] невідомий" +#: elf.c:2304 +#, c-format +msgid "%B: invalid link %u for reloc section %s (index %u)" +msgstr "%B: некоректне поÑÐ¸Ð»Ð°Ð½Ð½Ñ %u Ð´Ð»Ñ Ñ€Ð¾Ð·Ð´Ñ–Ð»Ñƒ переÑÑƒÐ²Ð°Ð½Ð½Ñ %s (Ñ–Ð½Ð´ÐµÐºÑ %u)" -#: elf.c:1989 -msgid "%B: don't know how to handle OS specific section `%s' [0x%8x]" -msgstr "%B: ÑпоÑіб обробки Ñпецифічного Ð´Ð»Ñ ÐžÐ¡ розділу «%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: розділ невідомого типу [%#x], «%s»" -#: elf.c:1999 -msgid "%B: don't know how to handle section `%s' [0x%8x]" -msgstr "%B: ÑпоÑіб обробки розділу «%s» [0x%8x] невідомий" +#: elf.c:3206 +#, c-format +msgid "%B: error: Alignment power %d of section `%A' is too big" +msgstr "%B: помилка: Ñтепінь Ð²Ð¸Ñ€Ñ–Ð²Ð½ÑŽÐ²Ð°Ð½Ð½Ñ %d розділу «%A» Ñ” надто великою" -#: elf.c:2634 +#: elf.c:3236 #, c-format msgid "warning: section `%A' type changed to PROGBITS" msgstr "попередженнÑ: тип розділу «%A» змінено на PROGBITS" -#: elf.c:3078 +#: elf.c:3687 +#, c-format +msgid "%B: too many sections: %u" +msgstr "%B: занадто багато розділів %u" + +#: elf.c:3772 +#, c-format msgid "%B: sh_link of section `%A' points to discarded section `%A' of `%B'" msgstr "%B: sh_link розділу «%A» вказує на відкинутий розділ «%A» «%B»" -#: elf.c:3101 +#: elf.c:3797 +#, c-format msgid "%B: sh_link of section `%A' points to removed section `%A' of `%B'" msgstr "%B: sh_link розділу «%A» вказує на вилучений розділ «%A» «%B»" -#: elf.c:4527 +#: elf.c:4349 +#, c-format +msgid "%B: GNU_MBIN section `%A' has invalid sh_info field: %d" +msgstr "%B: у розділі GNU_MBIN «%A» міÑтитьÑÑ Ð½ÐµÐºÐ¾Ñ€ÐµÐºÑ‚Ð½Ðµ поле sh_info: %d" + +#: elf.c:4891 +msgid "%B: TLS sections are not adjacent:" +msgstr "%B: розділи TLS не Ñ” ÑуÑідніми:" + +#: elf.c:4898 +#, c-format +msgid "\t TLS: %A" +msgstr "\t TLS: %A" + +#: elf.c:4902 +#, c-format +msgid "\tnon-TLS: %A" +msgstr "\tне-TLS: %A" + +#: elf.c:5398 msgid "%B: The first section in the PT_DYNAMIC segment is not the .dynamic section" msgstr "%B: перший розділ у Ñегменті PT_DYNAMIC не Ñ” розділом .dynamic" -#: elf.c:4554 +#: elf.c:5426 msgid "%B: Not enough room for program headers, try linking with -N" msgstr "%B: недоÑтатньо міÑÑ†Ñ Ð´Ð»Ñ Ð·Ð°Ð³Ð¾Ð»Ð¾Ð²ÐºÑ–Ð² програми, Ñпробуйте виконати ÐºÐ¾Ð¼Ð¿Ð¾Ð½ÑƒÐ²Ð°Ð½Ð½Ñ Ð· -N" -#: elf.c:4641 -msgid "%B: section %A lma %#lx adjusted to %#lx" -msgstr "%B: lma %#lx розділу %A Ñкориговано до %#lx" +#: elf.c:5514 +#, c-format +msgid "%B: section %A lma %#Lx adjusted to %#Lx" +msgstr "%B: lma %#Lx розділу %A Ñкориговано до %#Lx" -#: elf.c:4776 +#: elf.c:5651 +#, c-format msgid "%B: section `%A' can't be allocated in segment %d" msgstr "%B: розділ «%A» не може бути розподілено у Ñегменті %d" -#: elf.c:4824 +#: elf.c:5699 +#, c-format msgid "%B: warning: allocated section `%s' not in segment" msgstr "%B: попередженнÑ: розподілений розділ «%s» перебуває за межами Ñегмента" -#: elf.c:5324 +#: elf.c:5897 +msgid "%B: error: non-load segment %d includes file header and/or program header" +msgstr "%B: помилка: незавантажуваний Ñегмент %d включає заголовок файла Ñ–/або заголовок програми" + +#. 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: помилка: Ñегмент PHDR не покриваєтьÑÑ Ñегментом LOAD" + +#: elf.c:6418 +#, c-format msgid "%B: symbol `%s' required but not present" msgstr "%B: потрібен Ñимвол «%s», але його немає" -#: elf.c:5662 -msgid "%B: warning: Empty loadable segment detected, is this intentional ?\n" -msgstr "%B: попередженнÑ: виÑвлено порожній завантажувальний Ñегмент, так Ñ– треба?\n" +#: elf.c:6761 +#, c-format +msgid "%B: warning: Empty loadable segment detected at vaddr=%#Lx, is this intentional?" +msgstr "%B: попередженнÑ: виÑвлено порожній завантажувальний Ñегмент за vaddr=%#Lx, так Ñ– треба?" -#: elf.c:6692 +#: elf.c:7375 +#, c-format +msgid "%B: warning: segment alignment of %#Lx is too large" +msgstr "%B: попередженнÑ: Ð²Ð¸Ñ€Ñ–Ð²Ð½ÑŽÐ²Ð°Ð½Ð½Ñ Ñегмента %#Lx Ñ” надто великим" + +#: elf.c:7856 #, c-format msgid "Unable to find equivalent output section for symbol '%s' from section '%s'" msgstr "Ðе вдалоÑÑ Ð·Ð½Ð°Ð¹Ñ‚Ð¸ рівноцінний розділ Ð²Ð¸Ð²ÐµÐ´ÐµÐ½Ð½Ñ Ð´Ð°Ð½Ð¸Ñ… Ð´Ð»Ñ Ñимволу «%s» з розділу «%s»" -#: elf.c:7692 +#: elf.c:8188 +msgid "%B: .gnu.version_r invalid entry" +msgstr "%B: некоректний Ð·Ð°Ð¿Ð¸Ñ .gnu.version_r" + +#: elf.c:8315 +msgid "%B: .gnu.version_d invalid entry" +msgstr "%B: некоректний Ð·Ð°Ð¿Ð¸Ñ .gnu.version_d" + +#: elf.c:8867 +#, c-format msgid "%B: unsupported relocation type %s" msgstr "%B: непідтримуваний тип переÑÑƒÐ²Ð°Ð½Ð½Ñ %s" -#: elf32-arm.c:3617 +#: 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 "закриті прапорці = 0x%lx:" + +#: elf32-arc.c:611 +msgid "Warning: %B: Conflicting platform configuration %s with %s.\n" +msgstr "ПопередженнÑ: %B: конфлікт налаштувань платформ, %s з %s.\n" + +#: elf32-arc.c:630 +msgid "error: %B: unable to merge CPU base attributes %s with %s.\n" +msgstr "помилка: %B: не вдалоÑÑ Ð¾Ð±â€™Ñ”Ð´Ð½Ð°Ñ‚Ð¸ базові атрибути процеÑора %s з %s.\n" + +#: elf32-arc.c:667 +msgid "error: %B: unable to merge ISA extension attributes %s.\n" +msgstr "помилка: %B: не вдалоÑÑ Ð¾Ð±â€™Ñ”Ð´Ð½Ð°Ñ‚Ð¸ атрибути Ñ€Ð¾Ð·ÑˆÐ¸Ñ€ÐµÐ½Ð½Ñ ISA %s.\n" + +#: elf32-arc.c:691 +msgid "error: %B: conflicting ISA extension attributes %s with %s.\n" +msgstr "помилка: %B: конфлікт атрибутів Ñ€Ð¾Ð·ÑˆÐ¸Ñ€ÐµÐ½Ð½Ñ ISA, %s з %s.\n" + +#: elf32-arc.c:726 +msgid "error: %B: cannot mix rf16 with full register set %B.\n" +msgstr "помилка: %B: не можна одночаÑно викориÑтовувати rf16 Ñ– повний набір регіÑтрів %B.\n" + +#: elf32-arc.c:752 +msgid "error: %B: conflicting attributes %s: %s with %s.\n" +msgstr "помилка: %B: конфлікт атрибутів %s: %s з %s.\n" + +#: elf32-arc.c:777 +msgid "error: %B: conflicting attributes %s.\n" +msgstr "помилка: %B: конфлікт атрибутів %s.\n" + +#: elf32-arc.c:877 +#, c-format +msgid "ERROR: Attempting to link %B with a binary %B of different architecture" +msgstr "ПОМИЛКÐ: Ñпроба ÐºÐ¾Ð¼Ð¿Ð¾Ð½ÑƒÐ²Ð°Ð½Ð½Ñ %B зі виконуваним файлом %B іншої архітектури" + +#: 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: викориÑтовуютьÑÑ Ñ–Ð½ÑˆÑ– Ð¿Ð¾Ð»Ñ e_flags (0x%lx) ніж у попередніх модулÑÑ… (0x%lx)" + +#: elf32-arc.c:980 +msgid "Error: The ARC4 architecture is no longer supported.\n" +msgstr "Помилка: підтримку архітектури ARC4 припинено.\n" + +#: elf32-arc.c:986 +msgid "" +"Warning: unset or old architecture flags. \n" +"\t Use default machine.\n" +msgstr "" +"ПопередженнÑ: не вÑтановлено прапорці архітектури або вÑтановлено заÑтарілі. \n" +"\t ВикориÑтовуємо типову архітектуру.\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): переÑÑƒÐ²Ð°Ð½Ð½Ñ CMEM до «%s» Ñ” некоректним, 16 MSB має бути 0x%04x (Ð·Ð½Ð°Ñ‡ÐµÐ½Ð½Ñ 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): переÑÑƒÐ²Ð°Ð½Ð½Ñ CMEM до «%s+0x%lx» Ñ” некоректним, 16 MSB має бути 0x%04x (Ð·Ð½Ð°Ñ‡ÐµÐ½Ð½Ñ 0x%lx)" + +#: elf32-arc.c:1835 +msgid "GOT and PLT relocations cannot be fixed with a non dynamic linker." +msgstr "ПереÑÑƒÐ²Ð°Ð½Ð½Ñ GOT Ñ– PLT не може бути виправлено, Ñкщо компонувальник Ñ” нединамічним." + +#: 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): попередженнÑ: невирівнÑний доÑтуп до Ñимволу «%s» у малій облаÑÑ‚Ñ– даних" + +#: 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): Ð²Ð½ÑƒÑ‚Ñ€Ñ–ÑˆÐ½Ñ Ð¿Ð¾Ð¼Ð¸Ð»ÐºÐ°: вихід за межі діапазону" + +#: 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): Ð²Ð½ÑƒÑ‚Ñ€Ñ–ÑˆÐ½Ñ Ð¿Ð¾Ð¼Ð¸Ð»ÐºÐ°: непідтримувана помилка переÑуваннÑ" + +#: elf32-arc.c:1874 elf32-rl78.c:1109 elf32-rx.c:1463 +#, c-format +msgid "%B(%A): internal error: dangerous relocation" +msgstr "%B(%A): Ð²Ð½ÑƒÑ‚Ñ€Ñ–ÑˆÐ½Ñ Ð¿Ð¾Ð¼Ð¸Ð»ÐºÐ°: небезпечне переÑуваннÑ" + +#: elf32-arc.c:1879 elf32-rl78.c:1114 elf32-rx.c:1468 +#, c-format +msgid "%B(%A): internal error: unknown error" +msgstr "%B(%A): Ð²Ð½ÑƒÑ‚Ñ€Ñ–ÑˆÐ½Ñ Ð¿Ð¾Ð¼Ð¸Ð»ÐºÐ°: невідома помилка" + +#: 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: переÑÑƒÐ²Ð°Ð½Ð½Ñ %s щодо «%s» не можна викориÑтовувати під Ñ‡Ð°Ñ ÑÑ‚Ð²Ð¾Ñ€ÐµÐ½Ð½Ñ Ð¾Ð±â€™Ñ”ÐºÑ‚Ð° Ñпільного викориÑтаннÑ; повторно зберіть з -fPIC" + +#: elf32-arc.c:2859 +msgid "%B: Unknown mandatory ARC object attribute %d." +msgstr "%B: невідомий обов’Ñзковий атрибути об’єкта ARC %d" + +#: elf32-arc.c:2867 +msgid "Warning: %B: Unknown ARC object attribute %d." +msgstr "ПопередженнÑ: %B: невідомий атрибут об’єкта ARC %d" + +#: 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): попередженнÑ: викориÑÑ‚Ð°Ð½Ð½Ñ Ð´Ð¾Ð²Ð³Ð¸Ñ… зовнішніх гілок у розділах із атрибутом розділу SHF_ARM_PURECODE передбачено лише Ð´Ð»Ñ Ñ†Ñ–Ð»ÐµÐ¹ з профілем M, у Ñких реалізовано інÑтрукцію movw." + +#: elf32-arm.c:4087 elf32-arm.c:8806 msgid "" "%B(%s): warning: interworking not enabled.\n" " first occurrence: %B: Thumb call to ARM" @@ -896,7 +1396,7 @@ msgstr "" "%B(%s): попередженнÑ: ÑуміÑну роботу не увімкнено.\n" " перша згадка: %B: виклик thumb до ARM" -#: elf32-arm.c:3664 +#: elf32-arm.c:4141 msgid "" "%B(%s): warning: interworking not enabled.\n" " first occurrence: %B: ARM call to Thumb" @@ -904,492 +1404,679 @@ msgstr "" "%B(%s): попередженнÑ: ÑуміÑну роботу не увімкнено.\n" " перша згадка: %B: виклик ARM до Thumb" -#: elf32-arm.c:3878 elf32-arm.c:5315 +#: elf32-arm.c:4415 #, c-format -msgid "%s: cannot create stub entry %s" -msgstr "%s: не вдалоÑÑ Ñтворити шаблонний Ð·Ð°Ð¿Ð¸Ñ %s" +msgid "No address assigned to the veneers output section %s" +msgstr "Із розділом Ð²Ð¸Ð²ÐµÐ´ÐµÐ½Ð½Ñ Ð½Ð°Ð·Ð¾Ð²Ð½Ñ– %s не пов’Ñзано адреÑи" -#: elf32-arm.c:5431 +#: 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: не вдалоÑÑ Ñтворити шаблонний Ð·Ð°Ð¿Ð¸Ñ %s" + +#: elf32-arm.c:5675 +msgid "%B: Special symbol `%s' only allowed for ARMv8-M architecture or later." +msgstr "%B: Ñпеціальний Ñимвол «%s» можна викориÑтовувати лише Ð´Ð»Ñ Ð°Ñ€Ñ…Ñ–Ñ‚ÐµÐºÑ‚ÑƒÑ€Ð¸ ARMv8-M Ñ– новіших архітектур." + +#: elf32-arm.c:5684 +msgid "%B: invalid special symbol `%s'." +msgstr "%B: некоректний Ñпеціальний Ñимвол «%s»." + +#: elf32-arm.c:5686 elf32-arm.c:5726 +msgid "It must be a global or weak function symbol." +msgstr "Це має бути загальний (global) або Ñлабкий (weak) Ñимвол функції." + +#: elf32-arm.c:5724 +msgid "%B: invalid standard symbol `%s'." +msgstr "%B: некоректний Ñтандартний Ñимвол «%s»." + +#: elf32-arm.c:5730 +msgid "%B: absent standard symbol `%s'." +msgstr "%B: немає Ñтандартного Ñимволу «%s»." + +#: elf32-arm.c:5742 +msgid "%B: `%s' and its special symbol are in different sections." +msgstr "%B: «%s» Ñ– Ñ—Ñ— Ñпеціальний Ñимвол перебувають у різних розділах." + +#: elf32-arm.c:5754 +msgid "%B: entry function `%s' not output." +msgstr "%B: вхідна Ñ„ÑƒÐ½ÐºÑ†Ñ–Ñ Â«%s» не виводить даних." + +#: elf32-arm.c:5761 +msgid "%B: entry function `%s' is empty." +msgstr "%B: вхідна Ñ„ÑƒÐ½ÐºÑ†Ñ–Ñ Â«%s» Ñ” порожньою." + +#: elf32-arm.c:5890 +msgid "%B: --in-implib only supported for Secure Gateway import libraries." +msgstr "%B: підтримку --in-implib передбачено лише Ð´Ð»Ñ Ñ–Ð¼Ð¿Ð¾Ñ€Ñ‚ÑƒÐ²Ð°Ð½Ð½Ñ Ð±Ñ–Ð±Ð»Ñ–Ð¾Ñ‚ÐµÐº Secure Gateway." + +#: elf32-arm.c:5936 +msgid "%B: invalid import library entry: `%s'." +msgstr "%B: некоректний вхід до імпортованої бібліотеки: «%s»." + +#: elf32-arm.c:5938 +msgid "Symbol should be absolute, global and refer to Thumb functions." +msgstr "Символ має бути абÑолютним, загальним Ñ– поÑилатиÑÑ Ð½Ð° функції Thumb." + +#: elf32-arm.c:5958 +#, c-format +msgid "Entry function `%s' disappeared from secure code." +msgstr "Вхідна Ñ„ÑƒÐ½ÐºÑ†Ñ–Ñ Â«%s» зникла з безпечного коду." + +#: elf32-arm.c:5982 +#, c-format +msgid "`%s' refers to a non entry function." +msgstr "«%s» поÑилаєтьÑÑ Ð½Ð° функцію без входу." + +#: elf32-arm.c:5997 +msgid "%B: visibility of symbol `%s' has changed." +msgstr "%B: змінено видиміÑÑ‚ÑŒ Ñимволу «%s»." + +#: elf32-arm.c:6006 +msgid "%B: incorrect size for symbol `%s'." +msgstr "%B: некоректний розмір Ñимволу «%s»." + +#: elf32-arm.c:6025 +#, c-format +msgid "Offset of veneer for entry function `%s' not a multiple of its size." +msgstr "ЗÑув обгортки Ð´Ð»Ñ Ð²Ñ…Ñ–Ð´Ð½Ð¾Ñ— функції «%s» не Ñ” кратним до Ñ—Ñ— розміру." + +#: elf32-arm.c:6045 +msgid "new entry function(s) introduced but no output import library specified:" +msgstr "впроваджено нові вхідні функції, але не вказано бібліотеки Ñ–Ð¼Ð¿Ð¾Ñ€Ñ‚ÑƒÐ²Ð°Ð½Ð½Ñ Ð´Ð»Ñ Ð²Ð¸Ð²ÐµÐ´ÐµÐ½Ð½Ñ Ð´Ð°Ð½Ð¸Ñ…:" + +#: elf32-arm.c:6053 +#, c-format +msgid "Start address of `%s' is different from previous link." +msgstr "Початкова адреÑа «%s» Ñ” іншою з попереднього поÑиланнÑ." + +#: elf32-arm.c:6760 #, c-format msgid "unable to find THUMB glue '%s' for '%s'" msgstr "не вдалоÑÑ Ð·Ð½Ð°Ð¹Ñ‚Ð¸ Ñклейку THUMB «%s» Ð´Ð»Ñ Â«%s»" -#: elf32-arm.c:5467 +#: elf32-arm.c:6796 #, c-format msgid "unable to find ARM glue '%s' for '%s'" msgstr "не вдалоÑÑ Ð·Ð½Ð°Ð¹Ñ‚Ð¸ Ñклейку ARM «%s» Ð´Ð»Ñ Â«%s»" -#: elf32-arm.c:6005 +#: elf32-arm.c:7511 msgid "%B: BE8 images only valid in big-endian mode." msgstr "%B: образи BE8 Ñ” чинними лише у режимі big-endian." #. Give a warning, but do as the user requests anyway. -#: elf32-arm.c:6235 +#: elf32-arm.c:7742 msgid "%B: warning: selected VFP11 erratum workaround is not necessary for target architecture" msgstr "%B: попередженнÑ: вибраний ÑпоÑіб ÑƒÐ½Ð¸ÐºÐ½ÐµÐ½Ð½Ñ Ð¿Ð¾Ð¼Ð¸Ð»ÐºÐ¸ VFP11 не Ñ” необхідним Ð´Ð»Ñ Ð°Ñ€Ñ…Ñ–Ñ‚ÐµÐºÑ‚ÑƒÑ€Ð¸ призначеннÑ" -#: elf32-arm.c:6779 elf32-arm.c:6799 +#: elf32-arm.c:7769 +msgid "%B: warning: selected STM32L4XX erratum workaround is not necessary for target architecture" +msgstr "%B: попередженнÑ: вибраний ÑпоÑіб ÑƒÐ½Ð¸ÐºÐ½ÐµÐ½Ð½Ñ Ð¿Ð¾Ð¼Ð¸Ð»ÐºÐ¸ STM32L4XX не Ñ” необхідним Ð´Ð»Ñ Ð°Ñ€Ñ…Ñ–Ñ‚ÐµÐºÑ‚ÑƒÑ€Ð¸ призначеннÑ" + +#: elf32-arm.c:8306 elf32-arm.c:8326 msgid "%B: unable to find VFP11 veneer `%s'" msgstr "%B: не вдалоÑÑ Ð·Ð½Ð°Ð¹Ñ‚Ð¸ обгортку VFP11 «%s»" -#: elf32-arm.c:6848 +#: elf32-arm.c:8392 elf32-arm.c:8411 +msgid "%B: unable to find STM32L4XX veneer `%s'" +msgstr "%B: не вдалоÑÑ Ð·Ð½Ð°Ð¹Ñ‚Ð¸ обгортку STM32L4XX «%s»" + +#: 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): помилка: виÑвлено декілька завантажень у неоÑтанній інÑтрукції блоку IT: обгортку STM32L4XX не може бути Ñтворено.\n" +"СкориÑтайтеÑÑ Ð¿Ð°Ñ€Ð°Ð¼ÐµÑ‚Ñ€Ð¾Ð¼ gcc -mrestrict-it, щоб Ñтворювати лише одну інÑтрукцію на блок IT.\n" + +#: elf32-arm.c:8716 #, c-format msgid "Invalid TARGET2 relocation type '%s'." msgstr "Ðекоректний тип переÑÑƒÐ²Ð°Ð½Ð½Ñ Ñƒ TARGET2, «%s»." -#: elf32-arm.c:6933 -msgid "" -"%B(%s): warning: interworking not enabled.\n" -" first occurrence: %B: thumb call to arm" -msgstr "" -"%B(%s): попередженнÑ: ÑуміÑну роботу не увімкнено.\n" -" перша згадка: %B: виклик thumb до arm" +#. 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: попередженнÑ: у поточній верÑÑ–Ñ— не передбачено підтримки ÑÑ‚Ð²Ð¾Ñ€ÐµÐ½Ð½Ñ PLT у режимі thumb-1" -#: elf32-arm.c:7717 -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): неочікувана команда Thumb, «0x%x», у трампліні TLS" -#: elf32-arm.c:7756 -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): неочікувана команда ARM, «0x%x», у трампліні TLS" -#: elf32-arm.c:8209 +#: elf32-arm.c:10097 +msgid "shared object" +msgstr "Ñпільний об'єкт" + +#: elf32-arm.c:10100 +msgid "PIE executable" +msgstr "Виконуваний файл 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: переÑÑƒÐ²Ð°Ð½Ð½Ñ %s щодо зовнішнього або невизначено Ñимволу «%s» не можна викориÑтовувати під Ñ‡Ð°Ñ ÑÑ‚Ð²Ð¾Ñ€ÐµÐ½Ð½Ñ %s; повторно зберіть з -fPIC" + +#: elf32-arm.c:10234 msgid "\\%B: Warning: Arm BLX instruction targets Arm function '%s'." msgstr "\\%B: попередженнÑ: команда Arm BLX вказує на функцію Arm «%s»." -#: elf32-arm.c:8622 +#: elf32-arm.c:10660 msgid "%B: Warning: Thumb BLX instruction targets thumb function '%s'." msgstr "%B: попередженнÑ: команда Thumb BLX вказує на функцію Arm «%s»." -#: elf32-arm.c:9460 -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): неочікувана команда Thumb, «0x%x», на Ñку поÑилаєтьÑÑ TLS_GOTDESC" -#: elf32-arm.c:9483 -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): неочікувана команда ARM, «0x%x», на Ñку поÑилаєтьÑÑ TLS_GOTDESC" -#: elf32-arm.c:9512 +#: 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_ARM_TLS_LE32 у об’єкті Ñпільного викориÑÑ‚Ð°Ð½Ð½Ñ Ð·Ð°Ð±Ð¾Ñ€Ð¾Ð½ÐµÐ½Ð¾" -#: elf32-arm.c:9727 +#: 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): Ð´Ð»Ñ Ð¿ÐµÑ€ÐµÑувань груп ALU можна викориÑтовувати лише команди ADD або SUB" -#: elf32-arm.c:9767 elf32-arm.c:9854 elf32-arm.c:9937 elf32-arm.c:10022 +#: 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): Ð¿ÐµÑ€ÐµÐ¿Ð¾Ð²Ð½ÐµÐ½Ð½Ñ Ð¿Ñ–Ð´ Ñ‡Ð°Ñ Ñпроби поділу 0x%lx з метою групового переÑÑƒÐ²Ð°Ð½Ð½Ñ %s" -#: elf32-arm.c:10261 elf32-sh.c:4103 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 щодо розділу SEC_MERGE" -#: elf32-arm.c:10372 elf32-m68k.c:4191 elf32-xtensa.c:2802 +#: 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 викориÑтовуєтьÑÑ Ð· Ñимволом TLS %s" -#: elf32-arm.c:10373 elf32-m68k.c:4192 elf32-xtensa.c:2803 +#: 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 викориÑтовуєтьÑÑ Ð· Ñимволом поза TLS %s" -#: elf32-arm.c:10453 elf32-tic6x.c:2753 +#: 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 "поза діапазоном" -#: elf32-arm.c:10457 elf32-tic6x.c:2757 +#: 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 "непідтримуване переÑуваннÑ" -#: elf32-arm.c:10465 elf32-tic6x.c:2765 +#: 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 "невідома помилка" -#: elf32-arm.c:10890 -msgid "Warning: Clearing the interworking flag of %B because non-interworking code in %B has been linked with it" -msgstr "ПопередженнÑ: знÑто прапорець ÑуміÑної роботи у %B, оÑкільки з ним компонуєтьÑÑ ÐºÐ¾Ð´, Ñкий непридатний до Ñпільної роботи, у %B" - -#: elf32-arm.c:10984 +#: elf32-arm.c:13153 msgid "%B: Unknown mandatory EABI object attribute %d" msgstr "%B: невідомий обов’Ñзковий атрибути об’єкта EABI %d" -#: elf32-arm.c:10992 +#: elf32-arm.c:13161 msgid "Warning: %B: Unknown EABI object attribute %d" msgstr "ПопередженнÑ: %B: невідомий атрибут об’єкта EABI %d" -#: elf32-arm.c:11173 +#: elf32-arm.c:13428 msgid "error: %B: Unknown CPU architecture" msgstr "помилка: %B: невідома архітектура процеÑора" -#: elf32-arm.c:11211 +#: elf32-arm.c:13466 elf32-nios2.c:2965 +#, c-format msgid "error: %B: Conflicting CPU architectures %d/%d" msgstr "помилка: %B: конфлікт архітектур процеÑорів %d/%d" -#: elf32-arm.c:11260 +#: elf32-arm.c:13563 msgid "Error: %B has both the current and legacy Tag_MPextension_use attributes" msgstr "Помилка: Ð´Ð»Ñ %B визначено одразу обидва атрибути Tag_MPextension_use, current Ñ– legacy" -#: elf32-arm.c:11285 +#: elf32-arm.c:13592 msgid "error: %B uses VFP register arguments, %B does not" msgstr "помилка: у %B викориÑтовуютьÑÑ Ð°Ñ€Ð³ÑƒÐ¼ÐµÐ½Ñ‚Ð¸ регіÑтри VFP, а у %B — ні" -#: elf32-arm.c:11430 +#: elf32-arm.c:13750 msgid "error: %B: unable to merge virtualization attributes with %B" msgstr "помилка: %B: Ð¾Ð±â€™Ñ”Ð´Ð½Ð°Ð½Ð½Ñ Ð°Ñ‚Ñ€Ð¸Ð±ÑƒÑ‚Ñ–Ð² віртуалізації з %B неможливе" -#: elf32-arm.c:11456 +#: elf32-arm.c:13776 msgid "error: %B: Conflicting architecture profiles %c/%c" msgstr "помилка: %B: конфлікт профілів архітектур, %c/%c" -#: elf32-arm.c:11557 +#: elf32-arm.c:13915 msgid "Warning: %B: Conflicting platform configuration" msgstr "ПопередженнÑ: %B: конфлікт налаштувань платформ" -#: elf32-arm.c:11566 +#: elf32-arm.c:13924 msgid "error: %B: Conflicting use of R9" msgstr "помилка: %B: конфлікт у викориÑтанні R9" -#: elf32-arm.c:11578 +#: elf32-arm.c:13936 msgid "error: %B: SB relative addressing conflicts with use of R9" msgstr "помилка: %B: викориÑÑ‚Ð°Ð½Ð½Ñ Ð²Ñ–Ð´Ð½Ð¾Ñної адреÑації SB конфліктує з викориÑтаннÑм R9" -#: elf32-arm.c:11591 +#: 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 "попередженнÑ: у %B викориÑтовуєтьÑÑ %u-байтовий wchar_t, хоча у виведенні викориÑтовуєтьÑÑ %u-байтовий wchar_t; викориÑÑ‚Ð°Ð½Ð½Ñ Ð·Ð½Ð°Ñ‡ÐµÐ½ÑŒ wchar_t між об’єктами може зазнати невдачі" -#: elf32-arm.c:11622 +#: 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 "попередженнÑ: у %B викориÑтовуютьÑÑ Ð¿ÐµÑ€ÐµÐ»Ñ–ÐºÐ¸ %s, хоча у виведенні викориÑтовуютьÑÑ Ð¿ÐµÑ€ÐµÐ»Ñ–ÐºÐ¸ %s; викориÑÑ‚Ð°Ð½Ð½Ñ Ð·Ð½Ð°Ñ‡ÐµÐ½ÑŒ переліків між об’єктами може зазнати невдачі" -#: elf32-arm.c:11634 +#: elf32-arm.c:13992 msgid "error: %B uses iWMMXt register arguments, %B does not" msgstr "помилка: у %B викориÑтовуютьÑÑ Ð°Ñ€Ð³ÑƒÐ¼ÐµÐ½Ñ‚Ð¸-регіÑтри iWMMXt, а у %B — ні" -#: elf32-arm.c:11651 +#: elf32-arm.c:14009 msgid "error: fp16 format mismatch between %B and %B" msgstr "помилка: розбіжноÑÑ‚Ñ– у визначенні Ñ„Ð¾Ñ€Ð¼Ð°Ñ‚ÑƒÐ²Ð°Ð½Ð½Ñ fp16 між %B та %B" -#: elf32-arm.c:11675 -msgid "DIV usage mismatch between %B and %B" -msgstr "розбіжноÑÑ‚Ñ– у викориÑтанні DIV між %B та %B" - -#: elf32-arm.c:11694 +#: elf32-arm.c:14045 msgid "%B has has both the current and legacy Tag_MPextension_use attributes" msgstr "Ð´Ð»Ñ %B визначено одразу обидва атрибути Tag_MPextension_use, current Ñ– legacy" #. 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:11782 elf32-bfin.c:5079 elf32-cris.c:4169 elf32-m68hc1x.c:1282 -#: elf32-m68k.c:1236 elf32-score.c:3994 elf32-score7.c:3800 elf32-vax.c:529 -#: elfxx-mips.c:14103 +#. Ignore init flag - it may not be set, despite the flags field +#. containing valid data. +#: 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 "закриті прапорці = %lx:" -#: elf32-arm.c:11791 +#: elf32-arm.c:14141 #, c-format msgid " [interworking enabled]" msgstr " [увімкнено ÑуміÑну роботу]" -#: elf32-arm.c:11799 +#: elf32-arm.c:14149 #, c-format msgid " [VFP float format]" msgstr " [формат float VFP]" -#: elf32-arm.c:11801 +#: elf32-arm.c:14151 #, c-format msgid " [Maverick float format]" msgstr " [формат float Maverick]" -#: elf32-arm.c:11803 +#: elf32-arm.c:14153 #, c-format msgid " [FPA float format]" msgstr " [формат float FPA]" -#: elf32-arm.c:11812 +#: elf32-arm.c:14162 #, c-format msgid " [new ABI]" msgstr " [новий ABI]" -#: elf32-arm.c:11815 +#: elf32-arm.c:14165 #, c-format msgid " [old ABI]" msgstr " [Ñтарий ABI]" -#: elf32-arm.c:11818 +#: elf32-arm.c:14168 #, c-format msgid " [software FP]" msgstr " [програмна FP]" -#: elf32-arm.c:11827 +#: elf32-arm.c:14177 #, c-format msgid " [Version1 EABI]" msgstr " [ВерÑÑ–Ñ1 EABI]" -#: elf32-arm.c:11830 elf32-arm.c:11841 +#: elf32-arm.c:14180 elf32-arm.c:14191 #, c-format msgid " [sorted symbol table]" msgstr " [впорÑдкована Ñ‚Ð°Ð±Ð»Ð¸Ñ†Ñ Ñимволів]" -#: elf32-arm.c:11832 elf32-arm.c:11843 +#: elf32-arm.c:14182 elf32-arm.c:14193 #, c-format msgid " [unsorted symbol table]" msgstr " [невпорÑдкована Ñ‚Ð°Ð±Ð»Ð¸Ñ†Ñ Ñимволів]" -#: elf32-arm.c:11838 +#: elf32-arm.c:14188 #, c-format msgid " [Version2 EABI]" msgstr " [ВерÑÑ–Ñ2 EABI]" -#: elf32-arm.c:11846 +#: elf32-arm.c:14196 #, c-format msgid " [dynamic symbols use segment index]" msgstr " [динамічні Ñимволи викориÑтовують Ñ–Ð½Ð´ÐµÐºÑ Ñегмента]" -#: elf32-arm.c:11849 +#: elf32-arm.c:14199 #, c-format msgid " [mapping symbols precede others]" msgstr " [Ñимволи Ð²Ñ–Ð´Ð¾Ð±Ñ€Ð°Ð¶ÐµÐ½Ð½Ñ Ð¿ÐµÑ€ÐµÐ´ÑƒÑŽÑ‚ÑŒ іншим]" -#: elf32-arm.c:11856 +#: elf32-arm.c:14206 #, c-format msgid " [Version3 EABI]" msgstr " [ВерÑÑ–Ñ3 EABI]" -#: elf32-arm.c:11860 +#: elf32-arm.c:14210 #, c-format msgid " [Version4 EABI]" msgstr " [ВерÑÑ–Ñ4 EABI]" -#: elf32-arm.c:11864 +#: elf32-arm.c:14214 #, c-format msgid " [Version5 EABI]" msgstr " [ВерÑÑ–Ñ5 EABI]" -#: elf32-arm.c:11867 +#: elf32-arm.c:14217 +#, c-format +msgid " [soft-float ABI]" +msgstr " [ABI програмної рухомої крапки]" + +#: elf32-arm.c:14220 +#, c-format +msgid " [hard-float ABI]" +msgstr " [ABI апаратної рухомої крапки]" + +#: elf32-arm.c:14226 #, c-format msgid " [BE8]" msgstr " [BE8]" -#: elf32-arm.c:11870 +#: elf32-arm.c:14229 #, c-format msgid " [LE8]" msgstr " [LE8]" -#: elf32-arm.c:11876 +#: elf32-arm.c:14235 #, c-format msgid " <EABI version unrecognised>" msgstr " <нерозпізнана верÑÑ–Ñ EABI>" -#: elf32-arm.c:11883 +#: elf32-arm.c:14242 #, c-format msgid " [relocatable executable]" msgstr " [придатний до переÑÑƒÐ²Ð°Ð½Ð½Ñ Ð²Ð¸ÐºÐ¾Ð½ÑƒÐ²Ð°Ð½Ð¸Ð¹ файл]" -#: elf32-arm.c:11886 -#, c-format -msgid " [has entry point]" -msgstr " [має вхідну точку]" - -#: elf32-arm.c:11891 +#: elf32-arm.c:14247 +#: /Users/gingold/Repositories/fsf/binutils-gdb.git/bfd/elfnn-aarch64.c:6669 #, c-format msgid "<Unrecognised flag bits set>" msgstr "<Ðерозпізнаний набір бітів прапорців>" -#: elf32-arm.c:12189 elf32-i386.c:1461 elf32-s390.c:1000 elf32-tic6x.c:2829 -#: elf32-tilepro.c:1336 elf32-xtensa.c:1009 elf64-s390.c:960 -#: elf64-x86-64.c:1364 elfxx-sparc.c:1371 elfxx-tilegx.c:1586 +#: 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: помилковий Ñ–Ð½Ð´ÐµÐºÑ Ñимволу: %d" -#: elf32-arm.c:12337 elf64-x86-64.c:1561 elf64-x86-64.c:1732 elfxx-mips.c:8223 -msgid "%B: relocation %s against `%s' can not be used when making a shared object; recompile with -fPIC" -msgstr "%B: переÑÑƒÐ²Ð°Ð½Ð½Ñ %s щодо «%s» не можна викориÑтовувати під Ñ‡Ð°Ñ ÑÑ‚Ð²Ð¾Ñ€ÐµÐ½Ð½Ñ Ð¾Ð±â€™Ñ”ÐºÑ‚Ð° Ñпільного викориÑтаннÑ; повторно зберіть з -fPIC" +#: elf32-arm.c:16055 +msgid "Errors encountered processing file %B" +msgstr "Під Ñ‡Ð°Ñ Ð¾Ð±Ñ€Ð¾Ð±ÐºÐ¸ файла ÑталиÑÑ Ð¿Ð¾Ð¼Ð¸Ð»ÐºÐ¸, %B" -#: elf32-arm.c:13460 +#: elf32-arm.c:16493 elflink.c:12297 elflink.c:12344 #, c-format -msgid "Errors encountered processing file %s" -msgstr "Під Ñ‡Ð°Ñ Ð¾Ð±Ñ€Ð¾Ð±ÐºÐ¸ файла ÑталиÑÑ Ð¿Ð¾Ð¼Ð¸Ð»ÐºÐ¸, %s" +msgid "could not find section %s" +msgstr "не вдалоÑÑ Ð·Ð½Ð°Ð¹Ñ‚Ð¸ розділ %s" -#: elf32-arm.c:14837 +#: elf32-arm.c:17669 msgid "%B: error: Cortex-A8 erratum stub is allocated in unsafe location" msgstr "%B: помилка: замінник Ð´Ð»Ñ Ð¾Ð±Ñ€Ð¾Ð±Ð½Ð¸ÐºÐ° помилки Cortex-A8 розташовано за небезпечною адреÑою" #. There's not much we can do apart from complain if this #. happens. -#: elf32-arm.c:14864 +#: elf32-arm.c:17696 msgid "%B: error: Cortex-A8 erratum stub out of range (input file too large)" msgstr "%B: помилка: замінник Ð´Ð»Ñ Ð¾Ð±Ñ€Ð¾Ð±Ð½Ð¸ÐºÐ° помилки Cortex-A8 перебуває поза доÑтупним діапазоном (файл вхідних даних Ñ” надто великим)" -#: elf32-arm.c:14958 elf32-arm.c:14980 +#: elf32-arm.c:18523 elf32-arm.c:18545 msgid "%B: error: VFP11 veneer out of range" msgstr "%B: помилка: обгортка VFP11 поза діапазоном" -#: elf32-arm.c:15518 +#: 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): помилка: не вдалоÑÑ Ñтворити обгортку STM32L4XX. Перехід за межі припуÑтимого діапазону на %ld байтів. ÐšÐ¾Ð´ÑƒÐ²Ð°Ð½Ð½Ñ Ñ–Ð½Ñтрукції Ñ€Ð¾Ð·Ð³Ð°Ð»ÑƒÐ¶ÐµÐ½Ð½Ñ Ð½ÐµÐ¼Ð¾Ð¶Ð»Ð¸Ð²Ðµ. " + +#: elf32-arm.c:18634 +msgid "%B: error: Cannot create STM32L4XX veneer." +msgstr "%B: помилка: не вдалоÑÑ Ñтворити обгортку STM32L4XX." + +#: elf32-arm.c:19655 msgid "error: %B is already in final BE8 format" msgstr "помилка: %B вже зберігаєтьÑÑ Ñƒ оÑтаточному форматі BE8" -#: elf32-arm.c:15594 +#: elf32-arm.c:19731 msgid "error: Source object %B has EABI version %d, but target %B has EABI version %d" msgstr "помилка: об’єкт-джерело, %B, викориÑтовує верÑÑ–ÑŽ EABI %d, а призначеннÑ, %B, викориÑтовує верÑÑ–ÑŽ EABI %d" -#: elf32-arm.c:15610 +#: elf32-arm.c:19746 msgid "error: %B is compiled for APCS-%d, whereas target %B uses APCS-%d" msgstr "помилка: %B зібрано Ð´Ð»Ñ APCS-%d, тоді Ñк %B викориÑтовує APCS-%d" -#: elf32-arm.c:15635 +#: elf32-arm.c:19770 msgid "error: %B uses VFP instructions, whereas %B does not" msgstr "помилка: у %B викориÑтовуютьÑÑ ÐºÐ¾Ð¼Ð°Ð½Ð´Ð¸ VFP, а у %B — ні" -#: elf32-arm.c:15639 +#: elf32-arm.c:19774 msgid "error: %B uses FPA instructions, whereas %B does not" msgstr "помилка: у %B викориÑтовуютьÑÑ ÐºÐ¾Ð¼Ð°Ð½Ð´Ð¸ FPA, а у %B — ні" -#: elf32-arm.c:15649 +#: elf32-arm.c:19784 msgid "error: %B uses Maverick instructions, whereas %B does not" msgstr "помилка: у %B викориÑтовуютьÑÑ ÐºÐ¾Ð¼Ð°Ð½Ð´Ð¸ Maverick, а у %B — ні" -#: elf32-arm.c:15653 +#: elf32-arm.c:19788 msgid "error: %B does not use Maverick instructions, whereas %B does" msgstr "помилка: у %B не викориÑтовуютьÑÑ ÐºÐ¾Ð¼Ð°Ð½Ð´Ð¸ Maverick, а у %B — так" -#: elf32-arm.c:15672 +#: elf32-arm.c:19807 msgid "error: %B uses software FP, whereas %B uses hardware FP" msgstr "помилка: у %B викориÑтовуютьÑÑ Ð¿Ñ€Ð¾Ð³Ñ€Ð°Ð¼Ð½Ñ– FP, а у %B — апаратні FP" -#: elf32-arm.c:15676 +#: elf32-arm.c:19811 msgid "error: %B uses hardware FP, whereas %B uses software FP" msgstr "помилка: у %B викориÑтовуютьÑÑ Ð°Ð¿Ð°Ñ€Ð°Ñ‚Ð½Ñ– FP, а у %B — програмні FP" -#: elf32-avr.c:1229 elf32-bfin.c:3221 elf32-cris.c:2089 elf32-epiphany.c:567 -#: elf32-fr30.c:617 elf32-frv.c:4113 elf32-i860.c:1219 elf32-ip2k.c:1479 -#: elf32-iq2000.c:692 elf32-m32c.c:561 elf32-mep.c:543 elf32-moxie.c:290 -#: elf32-msp430.c:494 elf32-mt.c:399 elf32-openrisc.c:412 elf32-tilepro.c:3222 -#: elf32-v850.c:2151 elf32-xstormy16.c:943 elf64-mmix.c:1598 -#: elfxx-tilegx.c:3585 +#: elf32-avr.c:959 +#, c-format +msgid "%B: invalid AVR reloc number: %d" +msgstr "%B: некоректний номер переÑÑƒÐ²Ð°Ð½Ð½Ñ AVR: %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 "Ð²Ð½ÑƒÑ‚Ñ€Ñ–ÑˆÐ½Ñ Ð¿Ð¾Ð¼Ð¸Ð»ÐºÐ°: небезпечне переÑуваннÑ" -#: elf32-avr.c:2415 elf32-hppa.c:598 elf32-m68hc1x.c:166 -msgid "%B: cannot create stub entry %s" -msgstr "%B: не вдалоÑÑ Ñтворити шаблонний Ð·Ð°Ð¿Ð¸Ñ %s" +#: 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 "не вдалоÑÑ Ñтворити шаблонний Ð·Ð°Ð¿Ð¸Ñ %s" -#: elf32-bfin.c:107 elf32-bfin.c:363 +#: elf32-bfin.c:106 elf32-bfin.c:362 msgid "relocation should be even number" msgstr "переÑÑƒÐ²Ð°Ð½Ð½Ñ Ð¼Ð°Ñ” бути вказано парним чиÑлом" -#: elf32-bfin.c:1593 +#: elf32-bfin.c:1581 +#, c-format msgid "%B(%A+0x%lx): unresolvable relocation against symbol `%s'" msgstr "B(%A+0x%lx): нерозв’Ñзне переÑÑƒÐ²Ð°Ð½Ð½Ñ Ñ‰Ð¾Ð´Ð¾ Ñимволу «%s»" -#: elf32-bfin.c:1626 elf32-i386.c:4307 elf32-m68k.c:4233 elf32-s390.c:3055 -#: elf64-s390.c:3030 elf64-x86-64.c:4151 +#: 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): переÑÑƒÐ²Ð°Ð½Ð½Ñ Ñ‰Ð¾Ð´Ð¾ «%s»: помилка %d" -#: elf32-bfin.c:2725 +#: elf32-bfin.c:2706 +#, c-format msgid "%B: relocation at `%A+0x%x' references symbol `%s' with nonzero addend" msgstr "%B: переÑÑƒÐ²Ð°Ð½Ð½Ñ Ñƒ «%A+0x%x» поÑилаєтьÑÑ Ð½Ð° Ñимвол «%s» з ненульовим доданком" -#: elf32-bfin.c:2741 +#: elf32-bfin.c:2722 msgid "relocation references symbol not defined in the module" msgstr "переÑÑƒÐ²Ð°Ð½Ð½Ñ Ð¿Ð¾ÑилаєтьÑÑ Ð½Ð° Ñимвол, Ñкий не визначено у модулі" -#: elf32-bfin.c:2838 +#: elf32-bfin.c:2819 msgid "R_BFIN_FUNCDESC references dynamic symbol with nonzero addend" msgstr "R_BFIN_FUNCDESC поÑилаєтьÑÑ Ð½Ð° динамічний Ñимвол з ненульовим доданком" -#: elf32-bfin.c:2879 elf32-bfin.c:3002 +#: elf32-bfin.c:2860 elf32-bfin.c:2983 msgid "cannot emit fixups in read-only section" msgstr "не можна викориÑтовувати адреÑну прив’Ñзку у розділі, придатному лише Ð´Ð»Ñ Ñ‡Ð¸Ñ‚Ð°Ð½Ð½Ñ" -#: elf32-bfin.c:2910 elf32-bfin.c:3040 elf32-lm32.c:1103 elf32-sh.c:5016 +#: 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 "не можна викориÑтовувати динамічні переÑÑƒÐ²Ð°Ð½Ð½Ñ Ñƒ розділі, призначеному лише Ð´Ð»Ñ Ñ‡Ð¸Ñ‚Ð°Ð½Ð½Ñ" -#: elf32-bfin.c:2960 +#: elf32-bfin.c:2941 msgid "R_BFIN_FUNCDESC_VALUE references dynamic symbol with nonzero addend" msgstr "R_BFIN_FUNCDESC_VALUE поÑилаєтьÑÑ Ð½Ð° динамічний Ñимвол з ненульовим доданком" -#: elf32-bfin.c:3125 +#: elf32-bfin.c:3106 msgid "relocations between different segments are not supported" msgstr "підтримки переÑÑƒÐ²Ð°Ð½Ð½Ñ Ð¼Ñ–Ð¶ різними Ñегментами не передбачено" -#: elf32-bfin.c:3126 +#: elf32-bfin.c:3107 msgid "warning: relocation references a different segment" msgstr "попередженнÑ: у переÑуванні виÑвлено поÑÐ¸Ð»Ð°Ð½Ð½Ñ Ð½Ð° інший Ñегмент" -#: elf32-bfin.c:4971 +#: elf32-bfin.c:4877 +#, c-format msgid "%B: unsupported relocation type %i" msgstr "%B: непідтримуваний тип переÑÑƒÐ²Ð°Ð½Ð½Ñ %i" -#: elf32-bfin.c:5125 elf32-frv.c:6808 -#, c-format -msgid "%s: cannot link non-fdpic object file into fdpic executable" -msgstr "%s: не можна компонувати об’єктний файл не-fdpic до виконуваного файла fdpic" +#: elf32-bfin.c:4966 elf32-frv.c:6599 +msgid "%B: cannot link non-fdpic object file into fdpic executable" +msgstr "%B: не можна компонувати об’єктний файл не-fdpic до виконуваного файла fdpic" -#: elf32-bfin.c:5129 elf32-frv.c:6812 -#, c-format -msgid "%s: cannot link fdpic object file into non-fdpic executable" -msgstr "%s: не можна компонувати об’єктний файл fdpic до виконуваного файла не-fdpic" +#: elf32-bfin.c:4970 elf32-frv.c:6603 +msgid "%B: cannot link fdpic object file into non-fdpic executable" +msgstr "%B: не можна компонувати об’єктний файл fdpic до виконуваного файла не-fdpic" -#: elf32-bfin.c:5283 +#: elf32-bfin.c:5120 #, c-format msgid "*** check this relocation %s" msgstr "*** перевірте це переÑуваннÑ: %s" -#: elf32-cris.c:1176 +#: elf32-bfin.c:5236 +msgid "the bfin target does not currently support the generation of copy relocations" +msgstr "у поточній верÑÑ–Ñ— не передбачено Ð´Ð»Ñ Ñ†Ñ–Ð»Ñ– bfin ÑÑ‚Ð²Ð¾Ñ€ÐµÐ½Ð½Ñ Ð¿ÐµÑ€ÐµÑувань копіюваннÑ" + +#: elf32-cr16.c:653 +#, c-format +msgid "Unsupported CR16 relocation type: 0x%x\n" +msgstr "Ðепідтримуваний тип переÑÑƒÐ²Ð°Ð½Ð½Ñ CR16: 0x%x\n" + +#: elf32-cr16.c:682 +#, c-format +msgid "%B: unrecognised CR16 reloc number: %d" +msgstr "%B: невідоме чиÑло переÑÑƒÐ²Ð°Ð½Ð½Ñ CR16: %d" + +#: elf32-cr16c.c:186 +#, c-format +msgid "%B: invalid CR16C reloc number: %d" +msgstr "%B: некоректне чиÑло переÑÑƒÐ²Ð°Ð½Ð½Ñ CR16C: %d" + +#: elf32-cris.c:467 +#, c-format +msgid "%B: invalid CRIS reloc number: %d" +msgstr "%B: некоректний номер переÑÑƒÐ²Ð°Ð½Ð½Ñ CRIS: %d" + +#: elf32-cris.c:1115 +#, c-format msgid "%B, section %A: unresolvable relocation %s against symbol `%s'" msgstr "%B, розділ %A: нерозв’Ñзне переÑÑƒÐ²Ð°Ð½Ð½Ñ %s щодо Ñимволу «%s»" -#: elf32-cris.c:1238 +#: elf32-cris.c:1177 +#, c-format msgid "%B, section %A: No PLT nor GOT for relocation %s against symbol `%s'" msgstr "%B, розділ %A: немає ні PLT, ні GOT Ð´Ð»Ñ Ð¿ÐµÑ€ÐµÑÑƒÐ²Ð°Ð½Ð½Ñ %s щодо Ñимволу «%s»" -#: elf32-cris.c:1240 +#: elf32-cris.c:1180 +#, c-format msgid "%B, section %A: No PLT for relocation %s against symbol `%s'" msgstr "%B, розділ %A: немає PLT Ð´Ð»Ñ Ð¿ÐµÑ€ÐµÑÑƒÐ²Ð°Ð½Ð½Ñ %s щодо Ñимволу «%s»" -#: elf32-cris.c:1246 elf32-cris.c:1379 elf32-cris.c:1639 elf32-cris.c:1722 -#: elf32-cris.c:1875 elf32-tic6x.c:2662 +#: 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 "[чию назву втрачено]" -#: elf32-cris.c:1365 elf32-tic6x.c:2647 +#: 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, розділ %A: переÑÑƒÐ²Ð°Ð½Ð½Ñ %s з ненульовим доданком, %d, щодо локального Ñимволу" -#: elf32-cris.c:1373 elf32-cris.c:1716 elf32-cris.c:1869 elf32-tic6x.c:2655 +#: 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, розділ %A: переÑÑƒÐ²Ð°Ð½Ð½Ñ %s з ненульовим доданком, %d, щодо Ñимволу «%s»" -#: elf32-cris.c:1399 +#: elf32-cris.c:1340 +#, c-format msgid "%B, section %A: relocation %s is not allowed for global symbol: `%s'" msgstr "%B, розділ %A: не можна виконувати переÑÑƒÐ²Ð°Ð½Ð½Ñ %s Ð´Ð»Ñ Ð·Ð°Ð³Ð°Ð»ÑŒÐ½Ð¾Ð³Ð¾ Ñимволу: «%s»" -#: elf32-cris.c:1415 +#: elf32-cris.c:1357 +#, c-format msgid "%B, section %A: relocation %s with no GOT created" msgstr "%B, розділ %A: переÑÑƒÐ²Ð°Ð½Ð½Ñ %s без Ñтвореного GOT" #. We shouldn't get here for GCC-emitted code. -#: elf32-cris.c:1630 +#: elf32-cris.c:1573 +#, c-format msgid "%B, section %A: relocation %s has an undefined reference to `%s', perhaps a declaration mixup?" msgstr "%B, розділ %A: у переÑуванні %s Ñ” невизначене поÑÐ¸Ð»Ð°Ð½Ð½Ñ Ð½Ð° «%s», можливо, адреÑна прив’Ñзка оголошеннÑ?" -#: elf32-cris.c:2002 +#: 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, розділ %A: не можна виконувати переÑÑƒÐ²Ð°Ð½Ð½Ñ %s Ð´Ð»Ñ Ñимволу «%s», загального Ñимволу із типовою видиміÑÑ‚ÑŽ. Можливо, помилка у оголошенні?" + +#: 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, розділ %A: не можна виконувати переÑÑƒÐ²Ð°Ð½Ð½Ñ %s Ð´Ð»Ñ Ñимволу «%s», Ñкий визначено поза програмою. Можливо, помилка у оголошенні?" -#: elf32-cris.c:2055 +#: elf32-cris.c:2000 msgid "(too many global variables for -fpic: recompile with -fPIC)" msgstr "(забагато загальних змінних Ð´Ð»Ñ -fpic: виконайте повторне Ð·Ð±Ð¸Ñ€Ð°Ð½Ð½Ñ Ð· -fPIC)" -#: elf32-cris.c:2062 +#: elf32-cris.c:2007 msgid "(thread-local data too big for -fpic or -msmall-tls: recompile with -fPIC or -mno-small-tls)" msgstr "(дані локального потоку Ñ” надто великими Ð´Ð»Ñ -fpic або -msmall-tls: повторно зберіть з -fPIC або -mno-small-tls)" -#: elf32-cris.c:3261 +#: elf32-cris.c:3233 +#, c-format msgid "" "%B, section %A:\n" " v10/v32 compatible object %s must not contain a PIC relocation" @@ -1397,7 +2084,8 @@ msgstr "" "%B, розділ %A:\n" " об’єкт верÑÑ–Ñ— 10/32, %s, не повинен міÑтити переÑÑƒÐ²Ð°Ð½Ð½Ñ PIC" -#: elf32-cris.c:3366 +#: 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" @@ -1405,7 +2093,8 @@ msgstr "" "%B, розділ %A:\n" " переÑÑƒÐ²Ð°Ð½Ð½Ñ %s не Ñ” коректним у Ñпільному об’єкті; типовою причиною Ñ” конфлікт параметрів, перекомпілюйте з -fPIC" -#: elf32-cris.c:3580 +#: elf32-cris.c:3505 +#, c-format msgid "" "%B, section %A:\n" " relocation %s should not be used in a shared object; recompile with -fPIC" @@ -1413,7 +2102,8 @@ msgstr "" "%B, розділ %A:\n" " переÑÑƒÐ²Ð°Ð½Ð½Ñ %s не Ñлід викориÑтовувати у Ñпільному об’єкті; перекомпілюйте з -fPIC" -#: elf32-cris.c:4002 +#: 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" @@ -1421,42 +2111,57 @@ msgstr "" "%B, розділ «%A» до Ñимволу «%s»:\n" " переÑÑƒÐ²Ð°Ð½Ð½Ñ %s не Ñлід викориÑтовувати у Ñпільному об’єкті; перекомпілюйте з -fPIC" -#: elf32-cris.c:4118 +#: elf32-cris.c:4041 msgid "Unexpected machine number" msgstr "Ðеочікуваний номер машини" -#: elf32-cris.c:4172 +#: elf32-cris.c:4092 #, c-format msgid " [symbols have a _ prefix]" msgstr " [Ñимволи міÑÑ‚ÑÑ‚ÑŒ Ð¿Ñ€ÐµÑ„Ñ–ÐºÑ _]" -#: elf32-cris.c:4175 +#: elf32-cris.c:4095 #, c-format msgid " [v10 and v32]" msgstr " [v10 та v32]" -#: elf32-cris.c:4178 +#: elf32-cris.c:4098 #, c-format msgid " [v32]" msgstr " [v32]" -#: elf32-cris.c:4223 +#: elf32-cris.c:4142 msgid "%B: uses _-prefixed symbols, but writing file with non-prefixed symbols" msgstr "%B: викориÑтовуютьÑÑ Ñимволи з префікÑом «_», але виконуєтьÑÑ Ð·Ð°Ð¿Ð¸Ñ Ñ„Ð°Ð¹Ð»Ð° з Ñимволами без префікÑів" -#: elf32-cris.c:4224 +#: elf32-cris.c:4143 msgid "%B: uses non-prefixed symbols, but writing file with _-prefixed symbols" msgstr "%B: викориÑтовуютьÑÑ Ñимволи без префікÑа «_», але виконуєтьÑÑ Ð·Ð°Ð¿Ð¸Ñ Ñ„Ð°Ð¹Ð»Ð° з Ñимволами з префікÑами «_»" -#: elf32-cris.c:4243 +#: elf32-cris.c:4162 msgid "%B contains CRIS v32 code, incompatible with previous objects" msgstr "у %B міÑтитьÑÑ ÐºÐ¾Ð´ v32 CRIS, неÑуміÑний з попередніми об’єктами" -#: elf32-cris.c:4245 +#: elf32-cris.c:4164 msgid "%B contains non-CRIS-v32 code, incompatible with previous objects" msgstr "у %B міÑтитьÑÑ ÐºÐ¾Ð´, Ñкий не Ñ” кодом v32 CRIS, неÑуміÑний з попередніми об’єктами" -#: elf32-dlx.c:142 +#: elf32-crx.c:429 +#, c-format +msgid "%B: unrecognised CRX reloc number: %d" +msgstr "%B: невідоме чиÑло переÑÑƒÐ²Ð°Ð½Ð½Ñ CRX: %d" + +#: elf32-d10v.c:234 +#, c-format +msgid "%B: invalid D10V reloc number: %d" +msgstr "%B: некоректне чиÑло переÑÑƒÐ²Ð°Ð½Ð½Ñ D10V: %d" + +#: elf32-d30v.c:522 elf32-d30v.c:541 +#, c-format +msgid "%B: invalid D30V reloc number: %d" +msgstr "%B: некоректне чиÑло переÑÑƒÐ²Ð°Ð½Ð½Ñ D30V: %d" + +#: elf32-dlx.c:141 #, c-format msgid "BFD Link Error: branch (PC rel16) to section (%s) not supported" msgstr "Помилка ÐºÐ¾Ð¼Ð¿Ð¾Ð½ÑƒÐ²Ð°Ð½Ð½Ñ BFD: Ð²Ñ–Ð´Ð³Ð°Ð»ÑƒÐ¶ÐµÐ½Ð½Ñ (PC rel16) до розділу (%s) не підтримуєтьÑÑ" @@ -1466,519 +2171,994 @@ msgstr "Помилка ÐºÐ¾Ð¼Ð¿Ð¾Ð½ÑƒÐ²Ð°Ð½Ð½Ñ BFD: Ð²Ñ–Ð´Ð³Ð°Ð»ÑƒÐ¶ÐµÐ½Ð½Ñ (P msgid "BFD Link Error: jump (PC rel26) to section (%s) not supported" msgstr "Помилка ÐºÐ¾Ð¼Ð¿Ð¾Ð½ÑƒÐ²Ð°Ð½Ð½Ñ BFD: не передбачено підтримки переходу (PC rel26) до розділу (%s)" +#: elf32-dlx.c:552 +#, c-format +msgid "Invalid DLX reloc number: %d" +msgstr "Ðекоректне чиÑло переÑÑƒÐ²Ð°Ð½Ð½Ñ DLX: %d" + +#: elf32-epiphany.c:376 +#, c-format +msgid "%B: invalid Epiphany reloc number: %d" +msgstr "%B: некоректне чиÑло переÑÑƒÐ²Ð°Ð½Ð½Ñ Epiphany: %d" + #. Only if it's not an unresolved symbol. -#: elf32-epiphany.c:563 elf32-ip2k.c:1475 +#: elf32-epiphany.c:570 elf32-ip2k.c:1482 msgid "unsupported relocation between data/insn address spaces" msgstr "непідтримуване переÑÑƒÐ²Ð°Ð½Ð½Ñ Ð¼Ñ–Ð¶ проÑторами Ð°Ð´Ñ€ÐµÑ data та insn" -#: elf32-frv.c:1509 elf32-frv.c:1658 +#: elf32-fr30.c:381 +#, c-format +msgid "%B: invalid FR30 reloc number: %d" +msgstr "%B: некоректне чиÑло переÑÑƒÐ²Ð°Ð½Ð½Ñ FR30: %d" + +#: elf32-frv.c:1451 elf32-frv.c:1602 msgid "relocation requires zero addend" msgstr "Ð´Ð»Ñ Ð¿ÐµÑ€ÐµÑÑƒÐ²Ð°Ð½Ð½Ñ Ð¿Ð¾Ñ‚Ñ€Ñ–Ð±ÐµÐ½ нульовий доданок" -#: elf32-frv.c:2888 +#: elf32-frv.c:2557 +#, c-format +msgid "%B: invalid FRV reloc number: %d" +msgstr "%B: некоректне чиÑло переÑÑƒÐ²Ð°Ð½Ð½Ñ FRV: %d" + +#: elf32-frv.c:2823 +#, c-format msgid "%H: relocation to `%s+%v' may have caused the error above\n" msgstr "%H: Ð¿Ð¾Ð²Ñ–Ð´Ð¾Ð¼Ð»ÐµÐ½Ð½Ñ Ð¿Ñ€Ð¾ помилку, наведене вище, можливо Ñпричинене переÑуваннÑм до «%s+%v»\n" -#: elf32-frv.c:2905 +#: elf32-frv.c:2840 msgid "%H: relocation references symbol not defined in the module\n" msgstr "%H: переÑÑƒÐ²Ð°Ð½Ð½Ñ Ð¿Ð¾ÑилаєтьÑÑ Ð½Ð° Ñимвол, Ñкий не визначено у модулі\n" -#: elf32-frv.c:2981 +#: elf32-frv.c:2916 msgid "%H: R_FRV_GETTLSOFF not applied to a call instruction\n" msgstr "%H: R_FRV_GETTLSOFF Ñ” незаÑтоÑовним до команди виклику (call)\n" -#: elf32-frv.c:3022 +#: elf32-frv.c:2957 msgid "%H: R_FRV_GOTTLSDESC12 not applied to an lddi instruction\n" msgstr "%H: R_FRV_GOTTLSDESC12 Ñ” незаÑтоÑовним до команди lddi\n" -#: elf32-frv.c:3093 +#: elf32-frv.c:3028 msgid "%H: R_FRV_GOTTLSDESCHI not applied to a sethi instruction\n" msgstr "%H: R_FRV_GOTTLSDESCHI Ñ” незаÑтоÑовним до команди sethi\n" -#: elf32-frv.c:3130 +#: elf32-frv.c:3065 msgid "%H: R_FRV_GOTTLSDESCLO not applied to a setlo or setlos instruction\n" msgstr "%H: R_FRV_GOTTLSDESCLO Ñ” незаÑтоÑовним до команди setlo або setlos\n" -#: elf32-frv.c:3177 +#: elf32-frv.c:3112 msgid "%H: R_FRV_TLSDESC_RELAX not applied to an ldd instruction\n" msgstr "%H: R_FRV_TLSDESC_RELAX Ñ” незаÑтоÑовним до команди ldd\n" -#: elf32-frv.c:3261 +#: elf32-frv.c:3196 msgid "%H: R_FRV_GETTLSOFF_RELAX not applied to a calll instruction\n" msgstr "%H: R_FRV_GETTLSOFF_RELAX Ñ” незаÑтоÑовним до команди calll\n" -#: elf32-frv.c:3315 +#: elf32-frv.c:3250 msgid "%H: R_FRV_GOTTLSOFF12 not applied to an ldi instruction\n" msgstr "%H: R_FRV_GOTTLSOFF12 Ñ” незаÑтоÑовним до команди ldi\n" -#: elf32-frv.c:3345 +#: elf32-frv.c:3280 msgid "%H: R_FRV_GOTTLSOFFHI not applied to a sethi instruction\n" msgstr "%H: R_FRV_GOTTLSOFFHI Ñ” незаÑтоÑовним до команди sethi\n" -#: elf32-frv.c:3374 +#: elf32-frv.c:3309 msgid "%H: R_FRV_GOTTLSOFFLO not applied to a setlo or setlos instruction\n" msgstr "%H: R_FRV_GOTTLSOFFLO Ñ” незаÑтоÑовним до команди setlo або setlos\n" -#: elf32-frv.c:3404 +#: elf32-frv.c:3339 msgid "%H: R_FRV_TLSOFF_RELAX not applied to an ld instruction\n" msgstr "%H: R_FRV_TLSOFF_RELAX Ñ” незаÑтоÑовним до команди ld\n" -#: elf32-frv.c:3449 +#: elf32-frv.c:3384 msgid "%H: R_FRV_TLSMOFFHI not applied to a sethi instruction\n" msgstr "%H: R_FRV_TLSMOFFHI Ñ” незаÑтоÑовним до команди sethi\n" -#: elf32-frv.c:3476 +#: elf32-frv.c:3411 msgid "R_FRV_TLSMOFFLO not applied to a setlo or setlos instruction\n" msgstr "R_FRV_TLSMOFFLO Ñ” незаÑтоÑовним до команди setlo або setlos\n" -#: elf32-frv.c:3597 +#: elf32-frv.c:3532 msgid "%H: R_FRV_FUNCDESC references dynamic symbol with nonzero addend\n" msgstr "%H: R_FRV_FUNCDESC поÑилаєтьÑÑ Ð½Ð° динамічний Ñимвол з ненульовим доданком\n" -#: elf32-frv.c:3638 elf32-frv.c:3760 +#: elf32-frv.c:3573 elf32-frv.c:3695 msgid "%H: cannot emit fixups in read-only section\n" msgstr "%H: не можна викориÑтовувати адреÑну прив’Ñзку у розділі, придатному лише Ð´Ð»Ñ Ñ‡Ð¸Ñ‚Ð°Ð½Ð½Ñ\n" -#: elf32-frv.c:3669 elf32-frv.c:3803 +#: elf32-frv.c:3604 elf32-frv.c:3738 msgid "%H: cannot emit dynamic relocations in read-only section\n" msgstr "%H: не можна викориÑтовувати динамічні переÑÑƒÐ²Ð°Ð½Ð½Ñ Ñƒ розділі, призначеному лише Ð´Ð»Ñ Ñ‡Ð¸Ñ‚Ð°Ð½Ð½Ñ\n" -#: elf32-frv.c:3718 +#: elf32-frv.c:3653 msgid "%H: R_FRV_FUNCDESC_VALUE references dynamic symbol with nonzero addend\n" msgstr "%H: R_FRV_FUNCDESC_VALUE поÑилаєтьÑÑ Ð½Ð° динамічний Ñимвол з ненульовим доданком\n" -#: elf32-frv.c:3974 +#: elf32-frv.c:3910 +#, c-format msgid "%H: reloc against `%s' references a different segment\n" msgstr "%H: переÑÑƒÐ²Ð°Ð½Ð½Ñ Ñ‰Ð¾Ð´Ð¾ «%s» поÑилаєтьÑÑ Ð½Ð° інший Ñегмент\n" -#: elf32-frv.c:4124 +#: elf32-frv.c:4061 +#, c-format msgid "%H: reloc against `%s': %s\n" msgstr "%H: переÑÑƒÐ²Ð°Ð½Ð½Ñ Ñ‰Ð¾Ð´Ð¾ «%s»: %s\n" -#: elf32-frv.c:6400 +#: elf32-frv.c:6258 +#, c-format msgid "%B: unsupported relocation type %i\n" msgstr "%B: непідтримуваний тип переÑÑƒÐ²Ð°Ð½Ð½Ñ %i\n" -#: elf32-frv.c:6722 -#, c-format -msgid "%s: compiled with %s and linked with modules that use non-pic relocations" -msgstr "%s: зібрано з %s Ñ– Ñкомпоновано з модулÑми, у Ñких викориÑтовуютьÑÑ Ð¿ÐµÑ€ÐµÑÑƒÐ²Ð°Ð½Ð½Ñ Ð½Ðµ-pic" - -#: elf32-frv.c:6775 elf32-iq2000.c:845 elf32-m32c.c:807 +#: elf32-frv.c:6510 #, c-format -msgid "%s: compiled with %s and linked with modules compiled with %s" -msgstr "%s: зібрано з %s Ñ– Ñкомпоновано з модулÑми, зібраними з %s" +msgid "%B: compiled with %s and linked with modules that use non-pic relocations" +msgstr "%B: зібрано з %s Ñ– Ñкомпоновано з модулÑми, у Ñких викориÑтовуютьÑÑ Ð¿ÐµÑ€ÐµÑÑƒÐ²Ð°Ð½Ð½Ñ Ð½Ðµ-pic" -#: elf32-frv.c:6787 +#: elf32-frv.c:6564 elf32-iq2000.c:832 elf32-m32c.c:877 #, c-format -msgid "%s: uses different unknown e_flags (0x%lx) fields than previous modules (0x%lx)" -msgstr "%s: викориÑтовуютьÑÑ Ñ–Ð½ÑˆÑ– невідомі Ð¿Ð¾Ð»Ñ e_flags (0x%lx) ніж у попередніх модулÑÑ… (0x%lx)" +msgid "%B: compiled with %s and linked with modules compiled with %s" +msgstr "%B: зібрано з %s Ñ– Ñкомпоновано з модулÑми, зібраними з %s" -#: elf32-frv.c:6837 elf32-iq2000.c:882 elf32-m32c.c:843 elf32-mt.c:576 -#: elf32-rx.c:3001 +#: elf32-frv.c:6577 #, c-format -msgid "private flags = 0x%lx:" -msgstr "закриті прапорці = 0x%lx:" +msgid "%B: uses different unknown e_flags (0x%lx) fields than previous modules (0x%lx)" +msgstr "%B: викориÑтовуютьÑÑ Ñ–Ð½ÑˆÑ– невідомі Ð¿Ð¾Ð»Ñ e_flags (0x%lx) ніж у попередніх модулÑÑ… (0x%lx)" #: elf32-gen.c:69 elf64-gen.c:69 +#, c-format msgid "%B: Relocations in generic ELF (EM: %d)" msgstr "%B: переÑÑƒÐ²Ð°Ð½Ð½Ñ Ñƒ типовому ELF (EM: %d)" -#: elf32-hppa.c:850 elf32-hppa.c:3598 +#: 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): не вдалоÑÑ Ð´Ð¾ÑÑгти %s, повторно зберіть з -ffunction-sections" -#: elf32-hppa.c:1284 +#: elf32-hppa.c:1270 +#, c-format msgid "%B: relocation %s can not be used when making a shared object; recompile with -fPIC" msgstr "%B: переÑÑƒÐ²Ð°Ð½Ð½Ñ %s не можна викориÑтовувати під Ñ‡Ð°Ñ ÑÑ‚Ð²Ð¾Ñ€ÐµÐ½Ð½Ñ Ð¾Ð±â€™Ñ”ÐºÑ‚Ð° Ñпільного викориÑтаннÑ; повторно зберіть з -fPIC" -#: elf32-hppa.c:2791 +#: elf32-hppa.c:2778 +#, c-format msgid "%B: duplicate export stub %s" msgstr "%B: Ð´ÑƒÐ±Ð»ÑŽÐ²Ð°Ð½Ð½Ñ ÑˆÐ°Ð±Ð»Ð¾Ð½Ð° екÑÐ¿Ð¾Ñ€Ñ‚ÑƒÐ²Ð°Ð½Ð½Ñ %s" -#: elf32-hppa.c:3437 +#: 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): підтримки адреÑної прив’Ñзки %s Ð´Ð»Ñ Ñ–Ð½Ñтрукції 0x%x не передбачено у поÑиланні неÑпільного викориÑтаннÑ" -#: elf32-hppa.c:4284 +#: elf32-hppa.c:4290 +#, c-format msgid "%B(%A+0x%lx): cannot handle %s for %s" msgstr "%B(%A+0x%lx): не вдалоÑÑ Ð¾Ð±Ñ€Ð¾Ð±Ð¸Ñ‚Ð¸ %s Ð´Ð»Ñ %s" -#: elf32-hppa.c:4603 +#: elf32-hppa.c:4588 msgid ".got section not immediately after .plt section" msgstr "Розділ .got не перебуває одразу за розділом .plt" +#: elf32-i370.c:307 +#, c-format +msgid "%B: unrecognised I370 reloc number: %d" +msgstr "%B: невідоме чиÑло переÑÑƒÐ²Ð°Ð½Ð½Ñ I370: %d" + +#: elf32-i370.c:1168 +msgid "%B: unknown relocation type %d for symbol %s" +msgstr "%B: невідомий тип переÑÑƒÐ²Ð°Ð½Ð½Ñ %d Ð´Ð»Ñ Ñимволу %s" + +#: elf32-i370.c:1310 +#, c-format +msgid "%B: Relocation %s is not yet supported for symbol %s." +msgstr "%B: підтримки переÑÑƒÐ²Ð°Ð½Ð½Ñ %s Ð´Ð»Ñ Ñимволу %s ще не передбачено." + #. Unknown relocation. -#: elf32-i386.c:373 elf32-m68k.c:384 elf32-ppc.c:1676 elf32-s390.c:379 -#: elf32-tic6x.c:2684 elf64-ppc.c:2300 elf64-s390.c:403 elf64-x86-64.c:265 +#: 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: некоректний тип переÑÑƒÐ²Ð°Ð½Ð½Ñ %d" -#: elf32-i386.c:1404 elf64-x86-64.c:1308 +#: 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: перенеÑÐµÐ½Ð½Ñ TLS з %s до %s щодо «%s» у 0x%lx у розділі «%A» зазнало невдачі" -#: elf32-i386.c:1549 elf32-i386.c:3244 elf64-x86-64.c:1487 elf64-x86-64.c:3125 -#: elfxx-sparc.c:3083 -msgid "%B: relocation %s against STT_GNU_IFUNC symbol `%s' isn't handled by %s" -msgstr "%B: переÑÑƒÐ²Ð°Ð½Ð½Ñ %s щодо Ñимволу STT_GNU_IFUNC «%s» не оброблÑєтьÑÑ %s" +#: 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: безпоÑереднє переÑÑƒÐ²Ð°Ð½Ð½Ñ GOT R_386_GOT32X щодо «%s» без базового регіÑтра не можна викориÑтовувати під Ñ‡Ð°Ñ ÑÑ‚Ð²Ð¾Ñ€ÐµÐ½Ð½Ñ Ð¾Ð±â€™Ñ”ÐºÑ‚Ð° Ñпільного викориÑтаннÑ" -#: elf32-i386.c:1711 elf32-s390.c:1182 elf32-sh.c:6362 elf32-tilepro.c:1434 -#: elf32-xtensa.c:1182 elf64-s390.c:1151 elfxx-sparc.c:1548 -#: elfxx-tilegx.c:1701 +#: 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» виконуєтьÑÑ Ñк до звичайного Ñимволу, так Ñ– до локального Ð´Ð»Ñ Ð¿Ð¾Ñ‚Ð¾ÐºÑƒ Ð²Ð¸ÐºÐ¾Ð½Ð°Ð½Ð½Ñ Ñимволу" -#: elf32-i386.c:2539 elf64-x86-64.c:2506 -msgid "%P: %B: warning: relocation against `%s' in readonly section `%A'.\n" -msgstr "%P: %B: попередженнÑ: переÑÑƒÐ²Ð°Ð½Ð½Ñ Ñ‰Ð¾Ð´Ð¾ «%s» у придатному лише Ð´Ð»Ñ Ñ‡Ð¸Ñ‚Ð°Ð½Ð½Ñ Ñ€Ð¾Ð·Ð´Ñ–Ð»Ñ– «%A».\n" +#: elf32-i386.c:2314 +#, c-format +msgid "%B: unsupported non-PIC call to IFUNC `%s'" +msgstr "%B: непідтримуваний виклик без PIC IFUNC «%s»" -#: elf32-i386.c:2629 elf64-x86-64.c:2593 -msgid "%P: %B: warning: relocation in readonly section `%A'.\n" -msgstr "%P: %B: попередженнÑ: переÑÑƒÐ²Ð°Ð½Ð½Ñ Ñƒ розділі, придатному лише Ð´Ð»Ñ Ñ‡Ð¸Ñ‚Ð°Ð½Ð½Ñ Â«%A».\n" +#: 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: попередженнÑ: переÑÑƒÐ²Ð°Ð½Ð½Ñ Ñ‰Ð¾Ð´Ð¾ «%s» у придатному лише Ð´Ð»Ñ Ñ‡Ð¸Ñ‚Ð°Ð½Ð½Ñ Ñ€Ð¾Ð·Ð´Ñ–Ð»Ñ– «%A»\n" -#: elf32-i386.c:3086 elf32-tilepro.c:2557 elfxx-tilegx.c:2871 +#: elf32-i386.c:3402 elf64-x86-64.c:3798 +#, c-format +msgid "%P: %B: warning: relocation in readonly section `%A'\n" +msgstr "%P: %B: попередженнÑ: переÑÑƒÐ²Ð°Ð½Ð½Ñ Ñƒ розділі, придатному лише Ð´Ð»Ñ Ñ‡Ð¸Ñ‚Ð°Ð½Ð½Ñ Â«%A»\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: Ñегмент, призначений лише Ð´Ð»Ñ Ñ‡Ð¸Ñ‚Ð°Ð½Ð½Ñ, міÑтить динамічні переÑÑƒÐ²Ð°Ð½Ð½Ñ IFUNC. Спробуйте зібрати з -fPIC\n" + +#: 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: нерозпізнане переÑÑƒÐ²Ð°Ð½Ð½Ñ (0x%x) у розділі «%A»" -#: elf32-i386.c:3494 elf64-x86-64.c:3513 +#: 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: підтримки переÑÑƒÐ²Ð°Ð½Ð½Ñ %s щодо Ñимволу STT_GNU_IFUNC «%s» не передбачено" + +#: 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 "Локальна Ñ„ÑƒÐ½ÐºÑ†Ñ–Ñ IFUNC «%s» у %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: безпоÑереднє переÑÑƒÐ²Ð°Ð½Ð½Ñ %s щодо «%s» без базового регіÑтра не можна викориÑтовувати під Ñ‡Ð°Ñ ÑÑ‚Ð²Ð¾Ñ€ÐµÐ½Ð½Ñ Ð¾Ð±â€™Ñ”ÐºÑ‚Ð° Ñпільного викориÑтаннÑ" + +#: elf32-i386.c:4543 elf64-x86-64.c:4816 msgid "hidden symbol" -msgstr "прихований Ñимвол" +msgstr "прихованого Ñимволу" -#: elf32-i386.c:3497 elf64-x86-64.c:3516 +#: elf32-i386.c:4546 elf64-x86-64.c:4819 msgid "internal symbol" -msgstr "внутрішній Ñимвол" +msgstr "внутрішнього Ñимволу" -#: elf32-i386.c:3500 elf64-x86-64.c:3519 +#: elf32-i386.c:4549 elf64-x86-64.c:4822 msgid "protected symbol" -msgstr "захищений Ñимвол" +msgstr "захищеного Ñимволу" -#: elf32-i386.c:3503 elf64-x86-64.c:3522 +#: elf32-i386.c:4552 elf64-x86-64.c:4825 msgid "symbol" -msgstr "Ñимвол" +msgstr "Ñимволу" -#: elf32-i386.c:3508 +#: 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_386_GOTOFF щодо невизначеного %s, «%s», не можна викориÑтовувати під Ñ‡Ð°Ñ ÑÑ‚Ð²Ð¾Ñ€ÐµÐ½Ð½Ñ Ð¾Ð±â€™Ñ”ÐºÑ‚Ð° Ñпільного викориÑтаннÑ" +msgstr "%B: переÑÑƒÐ²Ð°Ð½Ð½Ñ R_386_GOTOFF щодо невизначеного %s, «%s», не можна викориÑтовувати під Ñ‡Ð°Ñ ÑÑ‚Ð²Ð¾Ñ€ÐµÐ½Ð½Ñ Ð¾Ð±â€™Ñ”ÐºÑ‚Ð° Ñпільного викориÑтаннÑ" -#: elf32-i386.c:3518 -msgid "%B: relocation R_386_GOTOFF against protected function `%s' can not be used when making a shared object" -msgstr "%B: не можна викориÑтовувати R_386_GOTOFF переÑÑƒÐ²Ð°Ð½Ð½Ñ Ñ‰Ð¾Ð´Ð¾ захищеної функції «%s» під Ñ‡Ð°Ñ ÑÑ‚Ð²Ð¾Ñ€ÐµÐ½Ð½Ñ Ð¾Ð±â€™Ñ”ÐºÑ‚Ð° Ñпільного викориÑтаннÑ" +#: 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_386_GOTOFF переÑÑƒÐ²Ð°Ð½Ð½Ñ Ñ‰Ð¾Ð´Ð¾ захищеної %s «%s» під Ñ‡Ð°Ñ ÑÑ‚Ð²Ð¾Ñ€ÐµÐ½Ð½Ñ Ð¾Ð±â€™Ñ”ÐºÑ‚Ð° Ñпільного викориÑтаннÑ" -#: elf32-i386.c:4839 elf32-tilepro.c:3467 elf64-x86-64.c:4609 -#: elfxx-tilegx.c:3847 +#: 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 "відкинуто розділ Ð²Ð¸Ð²ÐµÐ´ÐµÐ½Ð½Ñ Ð´Ð°Ð½Ð¸Ñ…: «%A»" -#: elf32-ip2k.c:857 elf32-ip2k.c:863 elf32-ip2k.c:930 elf32-ip2k.c:936 +#: elf32-i386.c:6693 elf64-x86-64.c:7228 +msgid "error: %B: <corrupt x86 ISA used size: 0x%x>" +msgstr "помилка: %B: <пошкоджений розмір викориÑтаного ISA x86: 0x%x>" + +#: elf32-i386.c:6695 elf64-x86-64.c:7230 +msgid "error: %B: <corrupt x86 ISA needed size: 0x%x>" +msgstr "помилка: %B: <пошкоджений розмір потрібного ISA x86: 0x%x>" + +#: elf32-i386.c:6696 elf64-x86-64.c:7231 +msgid "error: %B: <corrupt x86 feature size: 0x%x>" +msgstr "помилка: %B: <пошкоджений розмір можливоÑÑ‚Ñ– x86: 0x%x>" + +#: elf32-i386.c:6873 elf64-x86-64.c:7408 +#, c-format +msgid "%F: failed to create GNU property section\n" +msgstr "%F: не вдалоÑÑ Ñтворити розділ влаÑтивоÑтей GNU\n" + +#: elf32-i386.c:6959 +#, c-format +msgid "%F: failed to create VxWorks dynamic sections\n" +msgstr "%F: не вдалоÑÑ Ñтворити динамічні розділи VxWorks\n" + +#: elf32-i386.c:7026 elf64-x86-64.c:7568 +#, c-format +msgid "%F: failed to create GOT sections\n" +msgstr "%F: не вдалоÑÑ Ñтворити розділи GOT\n" + +#: elf32-i386.c:7031 elf64-x86-64.c:7584 +#, c-format +msgid "%F: failed to create ifunc sections\n" +msgstr "%F: не вдалоÑÑ Ñтворити розділи ifunc\n" + +#: elf32-i386.c:7074 elf64-x86-64.c:7627 +#, c-format +msgid "%F: failed to create GOT PLT section\n" +msgstr "%F: не вдалоÑÑ Ñтворити розділ 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: не вдалоÑÑ Ñтворити розділ PLT із увімкненим 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: не вдалоÑÑ Ñтворити розділ .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: не вдалоÑÑ Ñтворити розділ .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: не вдалоÑÑ Ð²Ð¸Ñ€Ñ–Ð²Ð½Ñти розмір\n" + +#: elf32-i960.c:140 +#, c-format +msgid "%B: invalid i960 reloc number: %d" +msgstr "%B: некоректне чиÑло переÑÑƒÐ²Ð°Ð½Ð½Ñ i960: %d" + +#: 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 "Оптимізатор розміру ip2k: Ñ‚Ð°Ð±Ð»Ð¸Ñ†Ñ Ð¿ÐµÑ€ÐµÐ¼Ð¸ÐºÐ°Ð½ÑŒ без повних даних щодо відповідноÑÑ‚Ñ– переÑувань." -#: elf32-ip2k.c:880 elf32-ip2k.c:963 +#: elf32-ip2k.c:879 elf32-ip2k.c:962 msgid "ip2k relaxer: switch table header corrupt." msgstr "Оптимізатор розміру ip2k: пошкоджено заголовок таблиці перемикань" -#: elf32-ip2k.c:1292 +#: elf32-ip2k.c:1245 +#, c-format +msgid "%B: invalid IP2K reloc number: %d" +msgstr "%B: некоректне чиÑло переÑÑƒÐ²Ð°Ð½Ð½Ñ IP2K: %d" + +#: elf32-ip2k.c:1298 #, c-format msgid "ip2k linker: missing page instruction at 0x%08lx (dest = 0x%08lx)." msgstr "компонувальник ip2k: не виÑтачає інÑтрукції щодо Ñторінки у 0x%08lx (Ð¿Ñ€Ð¸Ð·Ð½Ð°Ñ‡ÐµÐ½Ð½Ñ = 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 "компонувальник ip2k: зайва інÑÑ‚Ñ€ÑƒÐºÑ†Ñ–Ñ Ñ‰Ð¾Ð´Ð¾ Ñторінки у 0x%08lx (Ð¿Ñ€Ð¸Ð·Ð½Ð°Ñ‡ÐµÐ½Ð½Ñ = 0x%08lx)." -#: elf32-iq2000.c:858 elf32-m32c.c:819 +#: elf32-iq2000.c:441 +#, c-format +msgid "%B: invalid IQ2000 reloc number: %d" +msgstr "%B: некоректне чиÑло переÑÑƒÐ²Ð°Ð½Ð½Ñ IQ2000: %d" + +#: elf32-lm32.c:559 #, c-format -msgid "%s: uses different e_flags (0x%lx) fields than previous modules (0x%lx)" -msgstr "%s: викориÑтовуютьÑÑ Ñ–Ð½ÑˆÑ– Ð¿Ð¾Ð»Ñ e_flags (0x%lx) ніж у попередніх модулÑÑ… (0x%lx)" +msgid "%B: invalid LM32 reloc number: %d" +msgstr "%B: некоректне чиÑло переÑÑƒÐ²Ð°Ð½Ð½Ñ LM32: %d" -#: elf32-lm32.c:706 +#: elf32-lm32.c:668 elf32-nios2.c:3153 msgid "global pointer relative relocation when _gp not defined" msgstr "відноÑне перенеÑÐµÐ½Ð½Ñ Ð·Ð°Ð³Ð°Ð»ÑŒÐ½Ð¾Ð³Ð¾ вказівника без Ð²Ð¸Ð·Ð½Ð°Ñ‡ÐµÐ½Ð½Ñ _gp" -#: elf32-lm32.c:761 +#: elf32-lm32.c:723 elf32-nios2.c:3590 msgid "global pointer relative address out of range" msgstr "відноÑна адреÑа загального вказівника лежить за межами дозволеного діапазону" -#: elf32-lm32.c:1057 +#: elf32-lm32.c:1018 msgid "internal error: addend should be zero for R_LM32_16_GOT" msgstr "Ð²Ð½ÑƒÑ‚Ñ€Ñ–ÑˆÐ½Ñ Ð¿Ð¾Ð¼Ð¸Ð»ÐºÐ°: доданок має бути нульовим Ð´Ð»Ñ R_LM32_16_GOT" -#: elf32-m32r.c:1453 +#: elf32-m32c.c:305 +#, c-format +msgid "%B: invalid M32C reloc number: %d" +msgstr "%B: некоректне чиÑло переÑÑƒÐ²Ð°Ð½Ð½Ñ M32C: %d" + +#: elf32-m32r.c:1286 +#, c-format +msgid "%B: invalid M32R reloc number: %d" +msgstr "%B: некоректне чиÑло переÑÑƒÐ²Ð°Ð½Ð½Ñ M32R: %d" + +#: elf32-m32r.c:1458 msgid "SDA relocation when _SDA_BASE_ not defined" msgstr "перенеÑÐµÐ½Ð½Ñ SDA без Ð²Ð¸Ð·Ð½Ð°Ñ‡ÐµÐ½Ð½Ñ _SDA_BASE_" -#: elf32-m32r.c:3043 +#: 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: Ð¿Ñ€Ð¸Ð·Ð½Ð°Ñ‡ÐµÐ½Ð½Ñ (%s) переÑÑƒÐ²Ð°Ð½Ð½Ñ %s перебуває у помилковому розділі (%A)\n" ")" -#: elf32-m32r.c:3571 +#: elf32-m32r.c:3486 msgid "%B: Instruction set mismatch with previous modules" msgstr "%B: невідповідніÑÑ‚ÑŒ набору команду цього Ð¼Ð¾Ð´ÑƒÐ»Ñ Ð½Ð°Ð±Ð¾Ñ€Ð°Ð¼ команд попередніх модулів" -#: elf32-m32r.c:3592 +#: elf32-m32r.c:3507 elf32-nds32.c:6111 #, c-format msgid "private flags = %lx" msgstr "закриті прапорці = %lx" -#: elf32-m32r.c:3597 +#: elf32-m32r.c:3512 #, c-format msgid ": m32r instructions" msgstr ": команди m32r" -#: elf32-m32r.c:3598 +#: elf32-m32r.c:3513 #, c-format msgid ": m32rx instructions" msgstr ": команди m32rx" -#: elf32-m32r.c:3599 +#: elf32-m32r.c:3514 #, c-format msgid ": m32r2 instructions" msgstr ": команди m32r2" -#: elf32-m68hc1x.c:1050 +#: elf32-m68hc11.c:390 +#, c-format +msgid "%B: invalid M68HC11 reloc number: %d" +msgstr "%B: некоректне чиÑло переÑÑƒÐ²Ð°Ð½Ð½Ñ M68HC11: %d" + +#: elf32-m68hc12.c:510 +#, c-format +msgid "%B: invalid M68HC12 reloc number: %d" +msgstr "%B: некоректне чиÑло переÑÑƒÐ²Ð°Ð½Ð½Ñ M68HC12: %d" + +#: elf32-m68hc1x.c:1119 #, c-format msgid "Reference to the far symbol `%s' using a wrong relocation may result in incorrect execution" msgstr "ПоÑÐ¸Ð»Ð°Ð½Ð½Ñ Ð½Ð° віддалений Ñимвол «%s», що викориÑтовує помилкове переÑуваннÑ, може призвеÑти до помилок у виконанні." -#: elf32-m68hc1x.c:1073 +#: 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 "ÐдреÑа XGATE (%lx) розташована поза RAM Ñпільного викориÑÑ‚Ð°Ð½Ð½Ñ (0xE000-0xFFFF), тому вам Ñлід вручну вÑтановити відÑтуп адреÑи Ñ–, ймовірно, керувати Ñторінкою пам’ÑÑ‚Ñ– у вашому коді." + +#: 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 "занеÑена до банку адреÑа [%lx:%04lx] (%lx) не перебуває у одному банку з поточною адреÑою, занеÑеною до банку, [%lx:%04lx] (%lx)" -#: elf32-m68hc1x.c:1092 +#: elf32-m68hc1x.c:1187 #, c-format msgid "reference to a banked address [%lx:%04lx] in the normal address space at %04lx" msgstr "поÑÐ¸Ð»Ð°Ð½Ð½Ñ Ð½Ð° занеÑену до банку адреÑу [%lx:%04lx] у звичайному проÑторі адреÑ, %04lx" -#: elf32-m68hc1x.c:1225 +#: 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 "ÐдреÑа S12 (%lx) розташована поза RAM Ñпільного викориÑÑ‚Ð°Ð½Ð½Ñ (0x2000-x4000), тому вам Ñлід вручну вÑтановити відÑтуп адреÑи у вашому коді" + +#: elf32-m68hc1x.c:1355 msgid "%B: linking files compiled for 16-bit integers (-mshort) and others for 32-bit integers" msgstr "%B: компоновані файли зібрано Ð´Ð»Ñ 16-бітових цілих (-mshort), а решту файлів — Ð´Ð»Ñ 32-бітових цілих чиÑел" -#: elf32-m68hc1x.c:1232 +#: elf32-m68hc1x.c:1362 msgid "%B: linking files compiled for 32-bit double (-fshort-double) and others for 64-bit double" msgstr "%B: компоновані файли зібрано Ð´Ð»Ñ 32-бітових дійÑних чиÑел з подвійною точніÑÑ‚ÑŽ (-fshort-double), а інші — Ð´Ð»Ñ 64-бітових дійÑних чиÑел з подвійною точніÑÑ‚ÑŽ." -#: elf32-m68hc1x.c:1241 +#: elf32-m68hc1x.c:1371 msgid "%B: linking files compiled for HCS12 with others compiled for HC12" msgstr "%B: компоновані файли зібрано Ð´Ð»Ñ HCS12, інші ж — Ð´Ð»Ñ HC12" -#: elf32-m68hc1x.c:1257 elf32-ppc.c:4227 elf64-sparc.c:706 elfxx-mips.c:13965 -msgid "%B: uses different e_flags (0x%lx) fields than previous modules (0x%lx)" -msgstr "%B: викориÑтовуютьÑÑ Ñ–Ð½ÑˆÑ– Ð¿Ð¾Ð»Ñ e_flags (0x%lx) ніж у попередніх модулÑÑ… (0x%lx)" - -#: elf32-m68hc1x.c:1285 +#: elf32-m68hc1x.c:1416 elf32-xgate.c:672 #, c-format msgid "[abi=32-bit int, " msgstr "[abi=32-бітове ціле, " -#: elf32-m68hc1x.c:1287 +#: elf32-m68hc1x.c:1418 elf32-xgate.c:674 #, c-format msgid "[abi=16-bit int, " msgstr "[abi=16-бітове ціле, " -#: elf32-m68hc1x.c:1290 +#: elf32-m68hc1x.c:1421 elf32-xgate.c:677 #, c-format msgid "64-bit double, " msgstr "64-бітове double, " -#: elf32-m68hc1x.c:1292 +#: elf32-m68hc1x.c:1423 elf32-xgate.c:679 #, c-format msgid "32-bit double, " msgstr "32-бітове double, " -#: elf32-m68hc1x.c:1295 +#: elf32-m68hc1x.c:1426 #, c-format msgid "cpu=HC11]" msgstr "процеÑор=HC11]" -#: elf32-m68hc1x.c:1297 +#: elf32-m68hc1x.c:1428 #, c-format msgid "cpu=HCS12]" msgstr "процеÑор=HCS12]" -#: elf32-m68hc1x.c:1299 +#: elf32-m68hc1x.c:1430 #, c-format msgid "cpu=HC12]" msgstr "процеÑор=HC12]" -#: elf32-m68hc1x.c:1302 +#: elf32-m68hc1x.c:1433 #, c-format msgid " [memory=bank-model]" msgstr " [пам’ÑÑ‚ÑŒ=модель з банками]" -#: elf32-m68hc1x.c:1304 +#: elf32-m68hc1x.c:1435 #, c-format msgid " [memory=flat]" msgstr " [пам’ÑÑ‚ÑŒ=плоÑка модель]" -#: elf32-m68k.c:1251 elf32-m68k.c:1252 vms-alpha.c:7314 vms-alpha.c:7329 +#: elf32-m68hc1x.c:1438 +#, c-format +msgid " [XGATE RAM offsetting]" +msgstr " [вÑÑ‚Ð°Ð½Ð¾Ð²Ð»ÐµÐ½Ð½Ñ Ð²Ñ–Ð´Ñтупу RAM XGATE]" + +#: elf32-m68k.c:1215 elf32-m68k.c:1216 vms-alpha.c:7400 vms-alpha.c:7416 msgid "unknown" msgstr "невідомо" -#: elf32-m68k.c:1715 +#: elf32-m68k.c:1680 +#, c-format msgid "%B: GOT overflow: Number of relocations with 8-bit offset > %d" msgstr "%B: Ð¿ÐµÑ€ÐµÐ¿Ð¾Ð²Ð½ÐµÐ½Ð½Ñ GOT: кількіÑÑ‚ÑŒ переÑувань з 8-бітовим відÑтупом > %d" -#: elf32-m68k.c:1721 +#: elf32-m68k.c:1687 +#, c-format msgid "%B: GOT overflow: Number of relocations with 8- or 16-bit offset > %d" msgstr "%B: Ð¿ÐµÑ€ÐµÐ¿Ð¾Ð²Ð½ÐµÐ½Ð½Ñ GOT: кількіÑÑ‚ÑŒ переÑувань з 8- або 16-бітовим відÑтупом > %d" -#: elf32-m68k.c:3957 +#: 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_68K_TLS_LE32 у об’єкті Ñпільного викориÑÑ‚Ð°Ð½Ð½Ñ Ð·Ð°Ð±Ð¾Ñ€Ð¾Ð½ÐµÐ½Ð¾" -#: 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: підтримки переÑÑƒÐ²Ð°Ð½Ð½Ñ %s (%d) у поточній верÑÑ–Ñ— не передбачено.\n" -#: elf32-mcore.c:428 +#: elf32-mcore.c:355 +#, c-format +msgid "%B: unrecognised MCore reloc number: %d" +msgstr "%B: невідоме чиÑло переÑÑƒÐ²Ð°Ð½Ð½Ñ MCore: %d" + +#: elf32-mcore.c:440 +#, c-format msgid "%B: Unknown relocation type %d\n" msgstr "%B: невідомий тип переÑÑƒÐ²Ð°Ð½Ð½Ñ %d\n" #. Pacify gcc -Wall. -#: elf32-mep.c:157 +#: elf32-mep.c:139 #, c-format msgid "mep: no reloc for code %d" msgstr "mep: немає переÑÑƒÐ²Ð°Ð½Ð½Ñ Ð´Ð»Ñ ÐºÐ¾Ð´Ñƒ %d" -#: elf32-mep.c:163 +#: elf32-mep.c:146 #, c-format msgid "MeP: howto %d has type %d" msgstr "MeP: howto %d належить до типу %d" -#: elf32-mep.c:648 +#: elf32-mep.c:390 +#, c-format +msgid "%B: invalid MEP reloc number: %d" +msgstr "%B: некоректне чиÑло переÑÑƒÐ²Ð°Ð½Ð½Ñ MEP: %d" + +#: elf32-mep.c:620 +#, c-format msgid "%B and %B are for different cores" msgstr "%B Ñ– %B призначено Ð´Ð»Ñ Ñ€Ñ–Ð·Ð½Ð¸Ñ… Ñдер" -#: elf32-mep.c:665 +#: elf32-mep.c:639 +#, c-format msgid "%B and %B are for different configurations" msgstr "%B Ñ– %B призначено Ð´Ð»Ñ Ñ€Ñ–Ð·Ð½Ð¸Ñ… конфігурацій" -#: elf32-mep.c:702 +#: elf32-mep.c:677 #, c-format msgid "private flags = 0x%lx" msgstr "закриті прапорці = 0x%lx" -#: elf32-microblaze.c:742 +#: elf32-metag.c:893 +#, c-format +msgid "%B: invalid METAG reloc number: %d" +msgstr "%B: некоректне чиÑло переÑÑƒÐ²Ð°Ð½Ð½Ñ METAG: %d" + +#: elf32-metag.c:1875 +msgid "%B(%A): multiple TLS models are not supported" +msgstr "%B(%A): підтримки декількох моделей TLS не передбачено" + +#: elf32-metag.c:1878 +msgid "%B(%A): shared library symbol %s encountered whilst performing a static link" +msgstr "%B(%A): під Ñ‡Ð°Ñ Ð²Ð¸ÐºÐ¾Ð½Ð°Ð½Ð½Ñ Ñтатичного ÐºÐ¾Ð¼Ð¿Ð¾Ð½ÑƒÐ²Ð°Ð½Ð½Ñ Ð²Ð¸Ñвлено Ñимвол бібліотеки Ñпільного викориÑÑ‚Ð°Ð½Ð½Ñ %s" + +#: elf32-metag.c:1931 #, c-format -msgid "%s: unknown relocation type %d" -msgstr "%s: невідомий тип переÑÑƒÐ²Ð°Ð½Ð½Ñ %d" +msgid "%B(%A+0x%lx): R_METAG_TLS_LE/IENONPIC relocation not permitted in shared object" +msgstr "%B(%A+0x%lx): переÑÑƒÐ²Ð°Ð½Ð½Ñ R_METAG_TLS_LE/IENONPIC у об’єкті Ñпільного викориÑÑ‚Ð°Ð½Ð½Ñ Ð·Ð°Ð±Ð¾Ñ€Ð¾Ð½ÐµÐ½Ð¾" -#: elf32-microblaze.c:867 elf32-microblaze.c:912 +#: elf32-microblaze.c:656 #, c-format -msgid "%s: The target (%s) of an %s relocation is in the wrong section (%s)" -msgstr "" -"%s: Ð¿Ñ€Ð¸Ð·Ð½Ð°Ñ‡ÐµÐ½Ð½Ñ (%s) переÑÑƒÐ²Ð°Ð½Ð½Ñ %s перебуває у помилковому розділі (%s)\n" -")" +msgid "%B: unrecognised MicroBlaze reloc number: %d" +msgstr "%B: невідоме чиÑло переÑÑƒÐ²Ð°Ð½Ð½Ñ MicroBlaze: %d" -#: elf32-microblaze.c:1155 elf32-tilepro.c:2891 elfxx-sparc.c:3457 -#: elfxx-tilegx.c:3230 +#: 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: ймовірно зібрано без -fPIC?" -#: elf32-microblaze.c:2074 -msgid "%B: bad relocation section name `%s'" -msgstr "%B: помилкова назва розділу Ð´Ð»Ñ Ð¿ÐµÑ€ÐµÑÑƒÐ²Ð°Ð½Ð½Ñ Â«%s»" - -#: elf32-mips.c:1549 elf64-mips.c:2683 elfn32-mips.c:2487 +#: elf32-mips.c:1777 elf64-mips.c:3200 elfn32-mips.c:3010 msgid "literal relocation occurs for an external symbol" msgstr "відбуваєтьÑÑ Ð±ÑƒÐºÐ²Ð°Ð»ÑŒÐ½Ðµ переÑÑƒÐ²Ð°Ð½Ð½Ñ Ð´Ð»Ñ Ð·Ð¾Ð²Ð½Ñ–ÑˆÐ½ÑŒÐ¾Ð³Ð¾ Ñимволу" -#: elf32-mips.c:1596 elf32-score.c:570 elf32-score7.c:469 elf64-mips.c:2726 -#: elfn32-mips.c:2528 +#: 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 "відбуваєтьÑÑ 32-бітове відноÑне gp-переÑÑƒÐ²Ð°Ð½Ð½Ñ Ð´Ð»Ñ Ð·Ð¾Ð²Ð½Ñ–ÑˆÐ½ÑŒÐ¾Ð³Ð¾ Ñимволу" -#: elf32-ppc.c:1741 +#: elf32-mips.c:2225 +#, c-format +msgid "Unrecognised MIPS reloc number: %d" +msgstr "Ðевідоме чиÑло переÑÑƒÐ²Ð°Ð½Ð½Ñ MIPS: %d" + +#: elf32-moxie.c:137 +#, c-format +msgid "%B: invalid Moxie reloc number: %d" +msgstr "%B: некоректне чиÑло переÑÑƒÐ²Ð°Ð½Ð½Ñ Moxie: %d" + +#: elf32-msp430.c:648 +#, c-format +msgid "%B: invalid MSP430X reloc number: %d" +msgstr "%B: некоректне чиÑло переÑÑƒÐ²Ð°Ð½Ð½Ñ MSP430X: %d" + +#: elf32-msp430.c:658 +#, c-format +msgid "%B: invalid MSP430 reloc number: %d" +msgstr "%B: некоректне чиÑло переÑÑƒÐ²Ð°Ð½Ð½Ñ MSP430: %d" + +#: elf32-msp430.c:836 elf32-msp430.c:1150 +msgid "Try enabling relaxation to avoid relocation truncations" +msgstr "Спробуйте увімкнути оптимізацію розміру Ð´Ð»Ñ ÑƒÐ½Ð¸ÐºÐ½ÐµÐ½Ð½Ñ Ð¾Ð±Ñ€Ñ–Ð·Ð°Ð½Ð½Ñ Ð¿ÐµÑ€ÐµÑувань" + +#: elf32-msp430.c:1357 +msgid "internal error: branch/jump to an odd address detected" +msgstr "Ð²Ð½ÑƒÑ‚Ñ€Ñ–ÑˆÐ½Ñ Ð¿Ð¾Ð¼Ð¸Ð»ÐºÐ°: виÑвлено Ð²Ñ–Ð´Ð³Ð°Ð»ÑƒÐ¶ÐµÐ½Ð½Ñ Ð°Ð±Ð¾ перехід до непарної адреÑи" + +#: elf32-msp430.c:2354 +#, c-format +msgid "Warning: %B: Unknown MSPABI object attribute %d" +msgstr "ПопередженнÑ: %B: невідомий атрибут об’єкта MSPABI %d" + +#: elf32-msp430.c:2447 +#, c-format +msgid "error: %B uses %s instructions but %B uses %s" +msgstr "помилка: %B викориÑтовує інÑтрукції %s, але %B викориÑтовує %s" + +#: elf32-msp430.c:2459 +#, c-format +msgid "error: %B uses the %s code model whereas %B uses the %s code model" +msgstr "помилка: %B викориÑтовує модель коду %s, тоді Ñк %B викориÑтовує модель коду %s" + +#: elf32-msp430.c:2471 +#, c-format +msgid "error: %B uses the large code model but %B uses MSP430 instructions" +msgstr "помилка: %B викориÑтовує модель великого коду, а %B викориÑтовує інÑтрукції MSP430" + +#: elf32-msp430.c:2482 +#, c-format +msgid "error: %B uses the %s data model whereas %B uses the %s data model" +msgstr "помилка: %B викориÑтовує модель даних %s, тоді Ñк %B викориÑтовує модель даних %s" + +#: elf32-msp430.c:2494 +#, c-format +msgid "error: %B uses the small code model but %B uses the %s data model" +msgstr "помилка: %B викориÑтовує модель малого коду, а %B викориÑтовує модель даних %s" + +#: elf32-msp430.c:2506 +#, c-format +msgid "error: %B uses the %s data model but %B only uses MSP430 instructions" +msgstr "помилка: %B викориÑтовує модель даних %s, а у %B викориÑтовуютьÑÑ Ð»Ð¸ÑˆÐµ інÑтрукції MSP430" + +#: elf32-mt.c:242 +#, c-format +msgid "%B: invalid MT reloc number: %d" +msgstr "%B: некоректне чиÑло переÑÑƒÐ²Ð°Ð½Ð½Ñ MT: %d" + +#: elf32-nds32.c:2974 +#, c-format +msgid "%B: invalid NDS32 reloc number: %d" +msgstr "%B: некоректне чиÑло переÑÑƒÐ²Ð°Ð½Ð½Ñ NDS32: %d" + +#: elf32-nds32.c:3309 +msgid "error: Can't find symbol: _SDA_BASE_." +msgstr "помилка: не вдалоÑÑ Ð·Ð½Ð°Ð¹Ñ‚Ð¸ Ñимвол _SDA_BASE_." + +#: elf32-nds32.c:4484 elf32-nds32.c:11978 +msgid "%B: error: Cannot set _ITB_BASE_" +msgstr "%B: помилка: не вдалоÑÑ Ð²Ñтановити _ITB_BASE_" + +#: elf32-nds32.c:4492 +msgid "error: IFC relocation error." +msgstr "помилка: помилка переÑÑƒÐ²Ð°Ð½Ð½Ñ IFC." + +#: elf32-nds32.c:4526 +#, c-format +msgid "%B: error: unknown relocation type %d." +msgstr "%B: помилка: невідомий тип переÑÑƒÐ²Ð°Ð½Ð½Ñ %d." + +#: elf32-nds32.c:4972 +msgid "%B: warning: cannot deal R_NDS32_25_ABS_RELA in shared mode." +msgstr "%B: попередженнÑ: обробка R_NDS32_25_ABS_RELA у режимі Ñпільного викориÑÑ‚Ð°Ð½Ð½Ñ Ð½ÐµÐ¼Ð¾Ð¶Ð»Ð¸Ð²Ð°." + +#: elf32-nds32.c:5106 +msgid "%B: warning: unaligned access to GOT entry." +msgstr "%B: попередженнÑ: невирівнÑний доÑтуп до запиÑу GOT." + +#: elf32-nds32.c:5148 +msgid "%B: warning: relocate SDA_BASE failed." +msgstr "%B: попередженнÑ: помилка переÑÑƒÐ²Ð°Ð½Ð½Ñ SDA_BASE." + +#: elf32-nds32.c:5170 +#, c-format +msgid "%B(%A): warning: unaligned small data access of type %d." +msgstr "%B(%A): попередженнÑ: невирівнÑний доÑтуп до малих даних типу %d." + +#: elf32-nds32.c:5918 +#, c-format +msgid "%B: ISR vector size mismatch with previous modules, previous %u-byte, current %u-byte" +msgstr "%B: невідповідніÑÑ‚ÑŒ розмірів векторів ISR із попередніми модулÑми, попередні Ñ” %u-байтовими, поточні Ñ” %u-байтовими" + +#: elf32-nds32.c:5962 +msgid "%B: warning: Endian mismatch with previous modules." +msgstr "%B: попередженнÑ: невідповідніÑÑ‚ÑŒ порÑдку байтів із попередніми модулÑми." + +#: elf32-nds32.c:5972 +msgid "%B: warning: Older version of object file encountered, Please recompile with current tool chain." +msgstr "%B: попередженнÑ: виÑвлено Ñтарішу верÑÑ–ÑŽ об’єктного файла. Будь лаÑка, виконайте повторне Ð·Ð±Ð¸Ñ€Ð°Ð½Ð½Ñ Ð· поточним набором інÑтрументів." + +#: elf32-nds32.c:6050 +msgid "%B: error: ABI mismatch with previous modules." +msgstr "%B: помилка: невідповідніÑÑ‚ÑŒ ABI з попередніми модулÑми." + +#: elf32-nds32.c:6061 +msgid "%B: error: Instruction set mismatch with previous modules." +msgstr "%B: помилка: невідповідніÑÑ‚ÑŒ набору команду цього Ð¼Ð¾Ð´ÑƒÐ»Ñ Ð½Ð°Ð±Ð¾Ñ€Ð°Ð¼ команд попередніх модулів." + +#: elf32-nds32.c:6087 +#, c-format +msgid "%B: warning: Incompatible elf-versions %s and %s." +msgstr "%B: попередженнÑ: неÑуміÑні верÑÑ–Ñ— elf, %s та %s." + +#: elf32-nds32.c:6117 +#, c-format +msgid ": n1 instructions" +msgstr ": інÑтрукції n1" + +#: elf32-nds32.c:6120 +#, c-format +msgid ": n1h instructions" +msgstr ": інÑтрукції n1h" + +#: elf32-nds32.c:8730 +msgid "%B: Error: search_nds32_elf_blank reports wrong node\n" +msgstr "%B: помилка: search_nds32_elf_blank повідомлÑÑ” про помилковий вузол\n" + +#: elf32-nds32.c:8989 +#, c-format +msgid "%B: warning: %s points to unrecognized reloc at 0x%lx." +msgstr "%B: попередженнÑ: %s вказує на невідоме переÑÑƒÐ²Ð°Ð½Ð½Ñ Ð´Ð¾ 0x%lx." + +#: elf32-nds32.c:11850 elf32-nds32.c:11867 +msgid "error: Jump IFC Fail." +msgstr "помилка: помилка переходу IFC." + +#: elf32-nds32.c:12724 +#, c-format +msgid "%B: Nested OMIT_FP in %A." +msgstr "%B: вкладене OMIT_FP у %A." + +#: elf32-nds32.c:12743 +#, c-format +msgid "%B: Unmatched OMIT_FP in %A." +msgstr "%B: OMIT_FP без відповідника у %A." + +#: 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» виводить за межі припуÑтимого діапазону\n" + +#: elf32-nds32.c:14802 +msgid "Linker: cannot init ex9 hash table error \n" +msgstr "Компонувальник: не вдалоÑÑ Ñ–Ð½Ñ–Ñ†Ñ–Ð°Ð»Ñ–Ð·ÑƒÐ²Ð°Ñ‚Ð¸ ex9, помилка у таблиці хешів \n" + +#: elf32-nds32.c:15211 elf32-nds32.c:15225 +msgid "Linker: error cannot fixed ex9 relocation \n" +msgstr "Компонувальник: помилка, не вдалоÑÑ Ð²Ð¸ÐºÐ¾Ð½Ð°Ñ‚Ð¸ переÑÑƒÐ²Ð°Ð½Ð½Ñ Ñ„Ñ–ÐºÑованого ex9 \n" + +#: elf32-nds32.c:15436 +#, c-format +msgid "%B: warning: unaligned small data access. For entry: {%d, %d, %d}, addr = 0x%x, align = 0x%x." +msgstr "%B: попередженнÑ: невирівнÑний доÑтуп до малих даних. ЗапиÑ: {%d, %d, %d}, адреÑа = 0x%x, Ð²Ð¸Ñ€Ñ–Ð²Ð½ÑŽÐ²Ð°Ð½Ð½Ñ = 0x%x." + +#: elf32-nds32.c:15469 +msgid "%P%F: failed creating ex9.it %s hash table: %E\n" +msgstr "%P%F: не вдалоÑÑ Ñтворити таблицю хешів ex9.it %s: %E\n" + +#: elf32-nios2.c:2949 +msgid "error: %B: Big-endian R2 is not supported." +msgstr "помилка: %B: підтримки зворотного порÑдку байтів R2 не передбачено." + +#: elf32-nios2.c:3830 +#, c-format +msgid "global pointer relative relocation at address 0x%08x when _gp not defined\n" +msgstr "відноÑне переÑÑƒÐ²Ð°Ð½Ð½Ñ Ð·Ð°Ð³Ð°Ð»ÑŒÐ½Ð¾Ð³Ð¾ вказівника за адреÑою 0x%08x, втім, _gp не визначено\n" + +#: 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 "Ðеможливо доÑÑгти %s (за адреÑою 0x%08x) із загального вказівника (за адреÑою 0x%08x), оÑкільки Ð·Ð¼Ñ–Ñ‰ÐµÐ½Ð½Ñ (%d) лежить поза межами дозволеного діапазону, від -32678 до 32767.\n" + +#: 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_NIOS2_TLS_LE16 у об’єкті Ñпільного викориÑÑ‚Ð°Ð½Ð½Ñ Ð·Ð°Ð±Ð¾Ñ€Ð¾Ð½ÐµÐ½Ð¾" + +#: elf32-nios2.c:4500 elf32-pru.c:816 +msgid "relocation out of range" +msgstr "переÑÑƒÐ²Ð°Ð½Ð½Ñ Ð·Ð° межі діапазону" + +#: elf32-nios2.c:4510 elf32-pru.c:826 elf32-tic6x.c:2747 +msgid "dangerous relocation" +msgstr "небезпечне переÑуваннÑ" + +#: elf32-nios2.c:5491 +#, c-format +msgid "dynamic variable `%s' is zero size" +msgstr "динамічна змінна «%s» має нульовий розмір" + +#: elf32-or1k.c:735 +#, c-format +msgid "%B: invalid OR1K reloc number: %d" +msgstr "%B: некоректне чиÑло переÑÑƒÐ²Ð°Ð½Ð½Ñ OR1K: %d" + +#: elf32-or1k.c:985 +msgid "internal error: addend should be zero for R_OR1K_GOT16" +msgstr "Ð²Ð½ÑƒÑ‚Ñ€Ñ–ÑˆÐ½Ñ Ð¿Ð¾Ð¼Ð¸Ð»ÐºÐ°: доданок має бути нульовим Ð´Ð»Ñ R_OR1K_GOT16" + +#: elf32-or1k.c:1094 +msgid "%B: support for local dynamic not implemented" +msgstr "%B: підтримку Ð´Ð»Ñ Ð»Ð¾ÐºÐ°Ð»ÑŒÐ½Ð¾Ñ— динаміки не реалізовано" + +#: elf32-or1k.c:1229 +msgid "%B: will not resolve runtime TLS relocation" +msgstr "%B: не буде визначено переÑÑƒÐ²Ð°Ð½Ð½Ñ TLS у динамічному режимі" + +#: elf32-or1k.c:1599 +#, c-format +msgid "%B: bad relocation section name `%s'" +msgstr "%B: помилкова назва розділу Ð´Ð»Ñ Ð¿ÐµÑ€ÐµÑÑƒÐ²Ð°Ð½Ð½Ñ Â«%s»" + +#: elf32-or1k.c:2704 +msgid "%B: EF_OR1K_NODELAY flag mismatch with previous modules" +msgstr "%B: невідповідніÑÑ‚ÑŒ Ð¿Ñ€Ð°Ð¿Ð¾Ñ€Ñ†Ñ EF_OR1K_NODELAY попереднім модулÑм" + +#: elf32-pj.c:325 +#, c-format +msgid "%B: unrecognised PicoJava reloc number: %d" +msgstr "%B: невідоме чиÑло переÑÑƒÐ²Ð°Ð½Ð½Ñ PicoJava: %d" + +#: elf32-ppc.c:2062 +#, c-format +msgid "%B: unrecognised PPC reloc number: %d" +msgstr "%B: невідоме чиÑло переÑÑƒÐ²Ð°Ð½Ð½Ñ PPC: %d" + +#: elf32-ppc.c:2147 #, c-format msgid "generic linker can't handle %s" msgstr "типовий компонувальник не може оброблÑти %s" -#: elf32-ppc.c:2184 +#: elf32-ppc.c:2781 +#, c-format msgid "corrupt %s section in %B" msgstr "пошкоджений розділ %s у %B" -#: elf32-ppc.c:2203 +#: elf32-ppc.c:2801 +#, c-format msgid "unable to read in %s section from %B" msgstr "Ñ‡Ð¸Ñ‚Ð°Ð½Ð½Ñ Ñƒ розділі %s неможливе з %B" -#: elf32-ppc.c:2244 +#: elf32-ppc.c:2843 +#, c-format msgid "warning: unable to set size of %s section in %B" msgstr "попередженнÑ: не вдалоÑÑ Ð²Ñтановити Ð´Ð»Ñ Ñ€Ð¾Ð·Ð¼Ñ–Ñ€Ñƒ розділу %s Ð·Ð½Ð°Ñ‡ÐµÐ½Ð½Ñ %B" -#: elf32-ppc.c:2294 +#: elf32-ppc.c:2893 msgid "failed to allocate space for new APUinfo section." msgstr "не вдалоÑÑ Ñ€Ð¾Ð·Ð¼Ñ–Ñтити новий розділ APUinfo." -#: elf32-ppc.c:2313 +#: elf32-ppc.c:2912 msgid "failed to compute new APUinfo section." msgstr "не вдалоÑÑ Ð¾Ð±Ñ‡Ð¸Ñлити новий розділ APUinfo." -#: elf32-ppc.c:2316 +#: elf32-ppc.c:2915 msgid "failed to install new APUinfo section." msgstr "не вдалоÑÑ Ð²Ñтановити новий розділ APUinfo." -#: elf32-ppc.c:3356 +#: elf32-ppc.c:3975 +#, c-format msgid "%B: relocation %s cannot be used when making a shared object" msgstr "%B: переÑÑƒÐ²Ð°Ð½Ð½Ñ %s не можна викориÑтовувати під Ñ‡Ð°Ñ ÑÑ‚Ð²Ð¾Ñ€ÐµÐ½Ð½Ñ Ð¾Ð±â€™Ñ”ÐºÑ‚Ð° Ñпільного викориÑтаннÑ" -#. It does not make sense to have a procedure linkage -#. table entry for a local symbol. -#: elf32-ppc.c:3700 -msgid "%P: %H: %s reloc against local symbol\n" -msgstr "%P: %H: %s переÑÑƒÐ²Ð°Ð½Ð½Ñ Ð·Ð° локальним Ñимволом\n" +#: elf32-ppc.c:4329 elf64-ppc.c:5591 +#, c-format +msgid "%H: %s reloc against local symbol\n" +msgstr "%H: %s переÑÑƒÐ²Ð°Ð½Ð½Ñ Ð·Ð° локальним Ñимволом\n" -#: elf32-ppc.c:4039 elf32-ppc.c:4054 elfxx-mips.c:13651 elfxx-mips.c:13677 -#: elfxx-mips.c:13699 elfxx-mips.c:13725 +#: elf32-ppc.c:4691 elf32-ppc.c:4695 +#, c-format msgid "Warning: %B uses hard float, %B uses soft float" msgstr "ПопередженнÑ: у %B викориÑтовуєтьÑÑ Ð°Ð¿Ð°Ñ€Ð°Ñ‚Ð½Ð° підтримка дійÑних чиÑел, а у %B — програмна" -#: elf32-ppc.c:4042 elf32-ppc.c:4046 +#: 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 "ПопередженнÑ: у %B викориÑтовуєтьÑÑ Ð°Ð¿Ð°Ñ€Ð°Ñ‚Ð½Ð° підтримка дійÑних чиÑел з подвійною точніÑÑ‚ÑŽ, а у %B — апаратна підтримка Ð´Ð»Ñ Ð´Ñ–Ð¹Ñних чиÑел з одинарною точніÑÑ‚ÑŽ" -#: elf32-ppc.c:4050 -msgid "Warning: %B uses soft float, %B uses single-precision hard float" -msgstr "ПопередженнÑ: у %B викориÑтовуєтьÑÑ Ð¿Ñ€Ð¾Ð³Ñ€Ð°Ð¼Ð½Ð° підтримка дійÑних чиÑел, а у %B — апаратна підтримка Ð´Ð»Ñ Ð´Ñ–Ð¹Ñних чиÑел з одинарною точніÑÑ‚ÑŽ" - -#: elf32-ppc.c:4057 elf32-ppc.c:4061 elfxx-mips.c:13631 elfxx-mips.c:13635 -msgid "Warning: %B uses unknown floating point ABI %d" -msgstr "ПопередженнÑ: %B викориÑтовує невідомий ABI роботи з чиÑлами з рухомою крапкою, %d" +#: 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 "ПопередженнÑ: у %B викориÑтано 64-бітові довгі цілі Ð·Ð½Ð°Ñ‡ÐµÐ½Ð½Ñ Ñ–Ð· подвійною точніÑÑ‚ÑŽ, а у %B — 128-бітові" -#: elf32-ppc.c:4103 elf32-ppc.c:4107 -msgid "Warning: %B uses unknown vector ABI %d" -msgstr "ПопередженнÑ: %B викориÑтовує невідомий векторний ABI %d" +#: elf32-ppc.c:4729 elf32-ppc.c:4734 +#, c-format +msgid "Warning: %B uses IBM long double, %B uses IEEE long double" +msgstr "ПопередженнÑ: у %B викориÑтано довгі цілі Ð·Ð½Ð°Ñ‡ÐµÐ½Ð½Ñ Ñ–Ð· подвійною точніÑÑ‚ÑŽ IBM, а у %B — IEEE" -#: elf32-ppc.c:4111 -msgid "Warning: %B uses vector ABI \"%s\", %B uses \"%s\"" -msgstr "ПопередженнÑ: у %B викориÑтовуєтьÑÑ Ð²ÐµÐºÑ‚Ð¾Ñ€Ð½Ð¸Ð¹ ABI «%s», а у %B — «%s»" +#: elf32-ppc.c:4785 elf32-ppc.c:4790 +#, c-format +msgid "Warning: %B uses AltiVec vector ABI, %B uses SPE vector ABI" +msgstr "ПопередженнÑ: %B викориÑтовує векторний ABI AltiVec, %B викориÑтовує векторний ABI SPE" -#: elf32-ppc.c:4128 elf32-ppc.c:4131 +#: elf32-ppc.c:4813 elf32-ppc.c:4818 +#, c-format msgid "Warning: %B uses r3/r4 for small structure returns, %B uses memory" msgstr "ПопередженнÑ: у %B r3/r4 викориÑтовуєтьÑÑ Ð´Ð»Ñ Ð¿Ð¾Ð²ÐµÑ€Ð½ÐµÐ½Ð½Ñ Ð¼Ð°Ð»Ð¸Ñ… Ñтруктур, а у %B Ð´Ð»Ñ Ñ†ÑŒÐ¾Ð³Ð¾ викориÑтовуєтьÑÑ Ð¿Ð°Ð¼â€™ÑÑ‚ÑŒ" -#: elf32-ppc.c:4134 elf32-ppc.c:4138 -msgid "Warning: %B uses unknown small structure return convention %d" -msgstr "ПопередженнÑ: у %B викориÑтано невідому угоду, %d, щодо Ð¿Ð¾Ð²ÐµÑ€Ð½ÐµÐ½Ð½Ñ Ð¼Ð°Ð»ÐµÐ½ÑŒÐºÐ¸Ñ… Ñтруктур" - -#: elf32-ppc.c:4192 +#: elf32-ppc.c:4873 msgid "%B: compiled with -mrelocatable and linked with modules compiled normally" msgstr "%B: зібрано з -mrelocatable Ñ– Ñкомпоновано з модулÑми, зібраними у звичайному режимі" -#: elf32-ppc.c:4200 +#: elf32-ppc.c:4881 msgid "%B: compiled normally and linked with modules compiled with -mrelocatable" msgstr "%B: зібрано у звичайному режимі Ñ– Ñкомпоновано з модулÑми, зібраними з -mrelocatable" -#: elf32-ppc.c:4309 +#: elf32-ppc.c:4909 +#, c-format +msgid "%B: uses different e_flags (%#x) fields than previous modules (%#x)" +msgstr "%B: викориÑтовуютьÑÑ Ñ–Ð½ÑˆÑ– Ð¿Ð¾Ð»Ñ e_flags (%#x) ніж у попередніх модулÑÑ… (%#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): очікувалоÑÑ Ð¿ÐµÑ€ÐµÑÑƒÐ²Ð°Ð½Ð½Ñ Ñтилю 16A на інÑтрукції 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): очікувалоÑÑ Ð¿ÐµÑ€ÐµÑÑƒÐ²Ð°Ð½Ð½Ñ Ñтилю 16D на інÑтрукції 0x%08x" + +#: elf32-ppc.c:5043 msgid "%P: bss-plt forced due to %B\n" msgstr "%P: примуÑово викориÑтано bss-plt через %B\n" -#: elf32-ppc.c:4312 +#: elf32-ppc.c:5046 msgid "%P: bss-plt forced by profiling\n" msgstr "%P: профілюваннÑм примуÑово визначено bss-plt\n" @@ -1986,47 +3166,159 @@ msgstr "%P: профілюваннÑм примуÑово визначено bss #. could just mark this symbol to exclude it #. from tls optimization but it's safer to skip #. the entire optimization. -#: elf32-ppc.c:4809 elf64-ppc.c:7858 +#: elf32-ppc.c:5544 elf64-ppc.c:8798 +#, c-format msgid "%H arg lost __tls_get_addr, TLS optimization disabled\n" msgstr "%H: у аргументів не виÑтачає __tls_get_addr, оптимізацію TLS вимкнено.\n" -#: elf32-ppc.c:5044 elf64-ppc.c:6528 -msgid "%P: dynamic variable `%s' is zero size\n" -msgstr "%P: динамічна змінна «%s» має нульовий розмір\n" +#: elf32-ppc.c:8249 +msgid "%H: fixup branch overflow\n" +msgstr "%H: Ð¿ÐµÑ€ÐµÐ¿Ð¾Ð²Ð½ÐµÐ½Ð½Ñ Ñ€Ð¾Ð·Ð³Ð°Ð»ÑƒÐ¶ÐµÐ½Ð½Ñ Ñ–Ð· адреÑною прив’Ñзкою\n" -#: elf32-ppc.c:7263 elf64-ppc.c:12675 +#: elf32-ppc.c:8289 elf32-ppc.c:8324 +#, c-format +msgid "%H: error: %s with unexpected instruction %x\n" +msgstr "%H: помилка: %s із неочікуваною інÑтрукцією %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\n" + +#: elf32-ppc.c:8434 +#, c-format msgid "%P: %B: unknown relocation type %d for symbol %s\n" msgstr "%P: %B: невідомий тип переÑÑƒÐ²Ð°Ð½Ð½Ñ %d Ð´Ð»Ñ Ñимволу %s\n" -#: elf32-ppc.c:7524 -msgid "%P: %H: non-zero addend on %s reloc against `%s'\n" -msgstr "%P: %H: ненульовий додаток до переÑÑƒÐ²Ð°Ð½Ð½Ñ %s щодо «%s»\n" +#: elf32-ppc.c:8723 +#, c-format +msgid "%H: non-zero addend on %s reloc against `%s'\n" +msgstr "%H: ненульовий додаток до переÑÑƒÐ²Ð°Ð½Ð½Ñ %s щодо «%s»\n" -#: elf32-ppc.c:7720 elf64-ppc.c:13181 -msgid "%P: %H: relocation %s for indirect function %s unsupported\n" -msgstr "%P: %H: підтримки переÑÑƒÐ²Ð°Ð½Ð½Ñ %s опоÑередкованої функції %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: виклик @local ifunc %s\n" + +#: elf32-ppc.c:8935 +#, c-format +msgid "%H: relocation %s for indirect function %s unsupported\n" +msgstr "%H: підтримки переÑÑƒÐ²Ð°Ð½Ð½Ñ %s опоÑередкованої функції %s не передбачено\n" -#: elf32-ppc.c:7948 elf32-ppc.c:7978 elf32-ppc.c:8025 +#: 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: Ð¿Ñ€Ð¸Ð·Ð½Ð°Ñ‡ÐµÐ½Ð½Ñ (%s) переÑÑƒÐ²Ð°Ð½Ð½Ñ %s перебуває у помилковому розділі Ð²Ð¸Ð²ÐµÐ´ÐµÐ½Ð½Ñ (%s)\n" -#: elf32-ppc.c:8097 +#: elf32-ppc.c:9442 +#, c-format +msgid "%B: the target (%s) of a %s relocation is in the wrong output section (%s)" +msgstr "%B: Ð¿Ñ€Ð¸Ð·Ð½Ð°Ñ‡ÐµÐ½Ð½Ñ (%s) переÑÑƒÐ²Ð°Ð½Ð½Ñ %s перебуває у помилковому розділі Ð²Ð¸Ð²ÐµÐ´ÐµÐ½Ð½Ñ (%s)" + +#: elf32-ppc.c:9546 +#, c-format msgid "%P: %B: relocation %s is not yet supported for symbol %s\n" msgstr "%P: %B: підтримки переÑÑƒÐ²Ð°Ð½Ð½Ñ %s Ð´Ð»Ñ Ñимволу %s ще не передбачено\n" -#: elf32-ppc.c:8158 elf64-ppc.c:13467 -msgid "%P: %H: unresolvable %s relocation against symbol `%s'\n" -msgstr "%P: %H: нерозв’Ñзне переÑÑƒÐ²Ð°Ð½Ð½Ñ %s щодо Ñимволу «%s»\n" +#: elf32-ppc.c:9631 +#, c-format +msgid "%H: error: %s against `%s' not a multiple of %u\n" +msgstr "%H: помилка: %s Ð´Ð»Ñ Â«%s» не Ñ” кратним до %u\n" + +#: elf32-ppc.c:9660 +#, c-format +msgid "%H: unresolvable %s relocation against symbol `%s'\n" +msgstr "%H: нерозв’Ñзне переÑÑƒÐ²Ð°Ð½Ð½Ñ %s щодо Ñимволу «%s»\n" + +#: elf32-ppc.c:9741 +#, c-format +msgid "%H: %s reloc against `%s': error %d\n" +msgstr "%H: переÑÑƒÐ²Ð°Ð½Ð½Ñ %s щодо «%s»: помилка %d\n" -#: elf32-ppc.c:8205 elf64-ppc.c:13512 -msgid "%P: %H: %s reloc against `%s': error %d\n" -msgstr "%P: %H: переÑÑƒÐ²Ð°Ð½Ð½Ñ %s щодо «%s»: помилка %d\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: Ð¿Ð¾Ñ”Ð´Ð½Ð°Ð½Ð½Ñ Ð¿ÐµÑ€ÐµÑÑƒÐ²Ð°Ð½Ð½Ñ Ñ‚ÐµÐºÑту Ñ– опоÑередкованих функцій GNU призведе до помилки Ñегментації під Ñ‡Ð°Ñ Ð·Ð°Ð¿ÑƒÑку\n" -#: elf32-ppc.c:8696 +#: 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: попередженнÑ: Ð¿Ð¾Ñ”Ð´Ð½Ð°Ð½Ð½Ñ Ð¿ÐµÑ€ÐµÑÑƒÐ²Ð°Ð½Ð½Ñ Ñ‚ÐµÐºÑту Ñ– опоÑередкованих функцій GNU може призвеÑти до помилки Ñегментації під Ñ‡Ð°Ñ Ð·Ð°Ð¿ÑƒÑку\n" + +#: elf32-ppc.c:10554 +#, c-format msgid "%P: %s not defined in linker created %s\n" msgstr "%P: %s не визначено у компонувальнику, Ñтвореному %s\n" -#: elf32-rx.c:563 +#: elf32-rl78.c:291 +#, c-format +msgid "%B: invalid RL78 reloc number: %d" +msgstr "%B: некоректне чиÑло переÑÑƒÐ²Ð°Ð½Ð½Ñ RL78: %d" + +#: elf32-rl78.c:369 +msgid "Internal Error: RL78 reloc stack overflow" +msgstr "Ð’Ð½ÑƒÑ‚Ñ€Ñ–ÑˆÐ½Ñ Ð¿Ð¾Ð¼Ð¸Ð»ÐºÐ°: Ð¿ÐµÑ€ÐµÐ¿Ð¾Ð²Ð½ÐµÐ½Ð½Ñ Ñтека переÑувань RL78" + +#: elf32-rl78.c:380 +msgid "Internal Error: RL78 reloc stack underflow" +msgstr "Ð’Ð½ÑƒÑ‚Ñ€Ñ–ÑˆÐ½Ñ Ð¿Ð¾Ð¼Ð¸Ð»ÐºÐ°: Ð²Ð¸Ñ‡ÐµÑ€Ð¿Ð°Ð½Ð½Ñ Ñтека переÑувань RL78" + +#: elf32-rl78.c:1049 +msgid "Warning: RL78_SYM reloc with an unknown symbol" +msgstr "ПопередженнÑ: переÑÑƒÐ²Ð°Ð½Ð½Ñ RL78_SYM з невідомим Ñимволом" + +#: elf32-rl78.c:1080 elf32-rx.c:1434 +#, c-format +msgid "%B(%A): error: call to undefined function '%s'" +msgstr "%B(%A): помилка: виклик невизначеної функції «%s»" + +#: elf32-rl78.c:1201 +#, c-format +msgid "RL78 ABI conflict: G10 file %B cannot be linked with %s file %B" +msgstr "Конфлікт ABI RL78: файл G10 %B не можна компонувати з %s, файл %B" + +#: elf32-rl78.c:1218 +#, c-format +msgid "RL78 ABI conflict: cannot link %s file %B with %s file %B" +msgstr "Конфлікт ABI RL78: не можна компонувати %s, файл %B з %s, файл %B" + +#: elf32-rl78.c:1227 +msgid "RL78 merge conflict: cannot link 32-bit and 64-bit objects together" +msgstr "Конфлікт Ð¾Ð±â€™Ñ”Ð´Ð½Ð°Ð½Ð½Ñ RL78: не можна компонувати 32-бітові Ñ– 64-бітові об’єкти" + +#: elf32-rl78.c:1231 elf32-rl78.c:1235 +#, c-format +msgid "- %B is 64-bit, %B is not" +msgstr "- %B Ñ” 64-бітовим, а %B — ні" + +#: elf32-rl78.c:1262 +#, c-format +msgid " [64-bit doubles]" +msgstr " [64-бітові double]" + +#: elf32-rx.c:313 +#, c-format +msgid "%B: invalid RX reloc number: %d" +msgstr "%B: некоректне чиÑло переÑÑƒÐ²Ð°Ð½Ð½Ñ RX: %d" + +#: elf32-rx.c:594 +#, c-format +msgid "%B:%A: table entry %s outside table" +msgstr "%B:%A: Ð·Ð°Ð¿Ð¸Ñ Ñ‚Ð°Ð±Ð»Ð¸Ñ†Ñ– %s поза таблицею" + +#: elf32-rx.c:601 +#, c-format +msgid "%B:%A: table entry %s not word-aligned within table" +msgstr "%B:%A: Ð·Ð°Ð¿Ð¸Ñ Ñ‚Ð°Ð±Ð»Ð¸Ñ†Ñ– %s не вирівнÑно на межу Ñлова вÑередині таблиці" + +#: elf32-rx.c:667 +#, c-format msgid "%B:%A: Warning: deprecated Red Hat reloc " msgstr "%B:%A: попередженнÑ: заÑтарілий формат переÑÑƒÐ²Ð°Ð½Ð½Ñ Red Hat " @@ -2034,349 +3326,346 @@ msgstr "%B:%A: попередженнÑ: заÑтарілий формат Ð¿ÐµÑ #. 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): небезпечне переÑÑƒÐ²Ð°Ð½Ð½Ñ PID %s до 0x%08lx (щодо %s у %s)" -#: elf32-rx.c:1157 +#: elf32-rx.c:1266 msgid "Warning: RX_SYM reloc with an unknown symbol" msgstr "ПопередженнÑ: переÑÑƒÐ²Ð°Ð½Ð½Ñ RX_SYM з невідомим Ñимволом" -#: elf32-rx.c:1324 -msgid "%B(%A): error: call to undefined function '%s'" -msgstr "%B(%A): помилка: виклик невизначеної функції «%s»" - -#: elf32-rx.c:1338 -msgid "%B(%A): warning: unaligned access to symbol '%s' in the small data area" -msgstr "%B(%A): попередженнÑ: невирівнÑний доÑтуп до Ñимволу «%s» у малій облаÑÑ‚Ñ– даних" +#: elf32-rx.c:3145 +msgid "There is a conflict merging the ELF header flags from %B" +msgstr "Під Ñ‡Ð°Ñ Ñпроби Ð¾Ð±â€™Ñ”Ð´Ð½Ð°Ð½Ð½Ñ Ð¿Ñ€Ð°Ð¿Ð¾Ñ€Ñ†Ñ–Ð² заголовка ELF з %B виник конфлікт" -#: elf32-rx.c:1342 -msgid "%B(%A): internal error: out of range error" -msgstr "%B(%A): Ð²Ð½ÑƒÑ‚Ñ€Ñ–ÑˆÐ½Ñ Ð¿Ð¾Ð¼Ð¸Ð»ÐºÐ°: вихід за межі діапазону" - -#: elf32-rx.c:1346 -msgid "%B(%A): internal error: unsupported relocation error" -msgstr "%B(%A): Ð²Ð½ÑƒÑ‚Ñ€Ñ–ÑˆÐ½Ñ Ð¿Ð¾Ð¼Ð¸Ð»ÐºÐ°: непідтримувана помилка переÑуваннÑ" - -#: elf32-rx.c:1350 -msgid "%B(%A): internal error: dangerous relocation" -msgstr "%B(%A): Ð²Ð½ÑƒÑ‚Ñ€Ñ–ÑˆÐ½Ñ Ð¿Ð¾Ð¼Ð¸Ð»ÐºÐ°: небезпечне переÑуваннÑ" +#: elf32-rx.c:3148 +#, c-format +msgid " the input file's flags: %s" +msgstr " прапорці файла вхідних даних: %s" -#: elf32-rx.c:1354 -msgid "%B(%A): internal error: unknown error" -msgstr "%B(%A): Ð²Ð½ÑƒÑ‚Ñ€Ñ–ÑˆÐ½Ñ Ð¿Ð¾Ð¼Ð¸Ð»ÐºÐ°: невідома помилка" +#: elf32-rx.c:3150 +#, c-format +msgid " the output file's flags: %s" +msgstr " прапорці файла результатів: %s" -#: elf32-rx.c:3004 +#: elf32-rx.c:3757 #, c-format -msgid " [64-bit doubles]" -msgstr " [64-бітові double]" +msgid "%B:%A: table %s missing corresponding %s" +msgstr "%B:%A: у таблиці %s немає відповідного %s" -#: elf32-rx.c:3006 +#: elf32-rx.c:3765 #, c-format -msgid " [dsp]" -msgstr " [dsp]" +msgid "%B:%A: %s and %s must be in the same input section" +msgstr "%B:%A: %s Ñ– %s мають перебувати у одному розділі вхідних даних" -#: elf32-s390.c:2200 elf64-s390.c:2187 +#: 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): некоректна інÑÑ‚Ñ€ÑƒÐºÑ†Ñ–Ñ Ð´Ð»Ñ Ð¿ÐµÑ€ÐµÑÑƒÐ²Ð°Ð½Ð½Ñ TLS %s" -#: elf32-score.c:1520 elf32-score7.c:1379 elfxx-mips.c:3435 +#: elf32-score.c:1521 elf32-score7.c:1382 elfxx-mips.c:3756 msgid "not enough GOT space for local GOT entries" msgstr "недоÑтатньо проÑтору GOT Ð´Ð»Ñ Ð»Ð¾ÐºÐ°Ð»ÑŒÐ½Ð¸Ñ… запиÑів GOT" -#: elf32-score.c:2742 +#: elf32-score.c:2744 msgid "address not word align" msgstr "адреÑу не вирівнÑно за межею Ñлова" -#: 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: Ð´Ð»Ñ Ñ€Ð¾Ð·Ð´Ñ–Ð»Ñƒ %s виÑвлено помилку у форматуванні перенеÑеннÑ" +msgid "%B: Malformed reloc detected for section %A" +msgstr "%B: Ð´Ð»Ñ Ñ€Ð¾Ð·Ð´Ñ–Ð»Ñƒ %A виÑвлено помилку у форматуванні перенеÑеннÑ" -#: elf32-score.c:2878 elf32-score7.c:2682 +#: elf32-score.c:2883 elf32-score7.c:2688 +#, c-format msgid "%B: CALL15 reloc at 0x%lx not against global symbol" msgstr "%B: переÑÑƒÐ²Ð°Ð½Ð½Ñ CALL15 у 0x%lx не відноÑно загального Ñимволу" -#: elf32-score.c:3997 elf32-score7.c:3803 +#: elf32-score.c:4005 elf32-score7.c:3810 #, c-format msgid " [pic]" msgstr " [pic]" -#: elf32-score.c:4001 elf32-score7.c:3807 +#: elf32-score.c:4009 elf32-score7.c:3814 #, c-format msgid " [fix dep]" msgstr " [фікÑ. розт.]" -#: elf32-score.c:4043 elf32-score7.c:3849 +#: elf32-score.c:4052 elf32-score7.c:3857 msgid "%B: warning: linking PIC files with non-PIC files" msgstr "%B: попередженнÑ: ÐºÐ¾Ð¼Ð¿Ð¾Ð½ÑƒÐ²Ð°Ð½Ð½Ñ Ñ„Ð°Ð¹Ð»Ñ–Ð² PIC з файлами, Ñкі не Ñ” файлами PIC" #: elf32-sh-symbian.c:130 +#, c-format msgid "%B: IMPORT AS directive for %s conceals previous IMPORT AS" msgstr "%B: директива IMPORT AS Ð´Ð»Ñ %s приховує попередню директиву IMPORT AS" -#: elf32-sh-symbian.c:383 +#: elf32-sh-symbian.c:384 +#, c-format msgid "%B: Unrecognised .directive command: %s" msgstr "%B: нерозпізнана команда .directive: %s" -#: elf32-sh-symbian.c:504 +#: elf32-sh-symbian.c:502 +#, c-format msgid "%B: Failed to add renamed symbol %s" msgstr "%B: не вдалоÑÑ Ð´Ð¾Ð´Ð°Ñ‚Ð¸ перейменований Ñимвол %s" -#: elf32-sh.c:568 -msgid "%B: 0x%lx: warning: bad R_SH_USES offset" -msgstr "%B: 0x%lx: попередженнÑ: помилковий відÑтуп R_SH_USES" - -#: elf32-sh.c:580 -msgid "%B: 0x%lx: warning: R_SH_USES points to unrecognized insn 0x%x" -msgstr "%B: 0x%lx: попередженнÑ: R_SH_USES вказує на нерозпізнану інÑтрукцію 0x%x" - -#: elf32-sh.c:597 -msgid "%B: 0x%lx: warning: bad R_SH_USES load offset" -msgstr "%B: 0x%lx: попередженнÑ: помилковий відÑтуп Ð·Ð°Ð²Ð°Ð½Ñ‚Ð°Ð¶ÐµÐ½Ð½Ñ R_SH_USES" - -#: elf32-sh.c:612 -msgid "%B: 0x%lx: warning: could not find expected reloc" -msgstr "%B: 0x%lx: попередженнÑ: не вдалоÑÑ Ð·Ð½Ð°Ð¹Ñ‚Ð¸ очікуване переÑуваннÑ" - -#: elf32-sh.c:640 -msgid "%B: 0x%lx: warning: symbol in unexpected section" -msgstr "%B: 0x%lx: попередженнÑ: Ñимвол у неочікуваному розділі" - -#: elf32-sh.c:766 -msgid "%B: 0x%lx: warning: could not find expected COUNT reloc" -msgstr "%B: 0x%lx: попередженнÑ: не вдалоÑÑ Ð·Ð½Ð°Ð¹Ñ‚Ð¸ очікуване переÑÑƒÐ²Ð°Ð½Ð½Ñ COUNT" - -#: elf32-sh.c:775 -msgid "%B: 0x%lx: warning: bad count" -msgstr "%B: 0x%lx: попередженнÑ: помилковий лічильник" - -#: elf32-sh.c:1179 elf32-sh.c:1549 -msgid "%B: 0x%lx: fatal: reloc overflow while relaxing" -msgstr "%B: 0x%lx: критична помилка: Ð¿ÐµÑ€ÐµÐ¿Ð¾Ð²Ð½ÐµÐ½Ð½Ñ Ð¿ÐµÑ€ÐµÑÑƒÐ²Ð°Ð½Ð½Ñ Ð¿Ñ–Ð´ Ñ‡Ð°Ñ Ð¾Ð¿Ñ‚Ð¸Ð¼Ñ–Ð·Ð°Ñ†Ñ–Ñ— розміру" +#: elf32-sh.c:491 +#, c-format +msgid "%B: unrecognised SH reloc number: %d" +msgstr "%B: невідоме чиÑло переÑÑƒÐ²Ð°Ð½Ð½Ñ SH: %d" -#: elf32-sh.c:4048 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 над локальним Ñимволом не оброблено" -#: elf32-sh.c:4299 +#: elf32-sh.c:4206 +#, c-format msgid "%B: 0x%lx: fatal: unaligned branch target for relax-support relocation" msgstr "%B: 0x%lx: критична помилка: невирівнÑне розгалужене Ð¿Ñ€Ð¸Ð·Ð½Ð°Ñ‡ÐµÐ½Ð½Ñ Ð´Ð»Ñ Ð¿ÐµÑ€ÐµÑÑƒÐ²Ð°Ð½Ð½Ñ Ð· підтримкою оптимізації розміру" -#: elf32-sh.c:4332 elf32-sh.c:4347 +#: elf32-sh.c:4240 elf32-sh.c:4256 +#, c-format msgid "%B: 0x%lx: fatal: unaligned %s relocation 0x%lx" msgstr "%B: 0x%lx: критична помилка: невирівнÑне переÑÑƒÐ²Ð°Ð½Ð½Ñ %s, 0x%lx" -#: elf32-sh.c:4361 +#: 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: критична помилка: переÑÑƒÐ²Ð°Ð½Ð½Ñ R_SH_PSHA %d не у діапазоні -32..32" -#: elf32-sh.c:4375 +#: 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: критична помилка: переÑÑƒÐ²Ð°Ð½Ð½Ñ R_SH_PSHL %d не у діапазоні -32..32" -#: elf32-sh.c:4519 elf32-sh.c:4989 +#: 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): не можна викориÑтовувати адреÑну прив’Ñзку до «%s» у розділі, придатному лише Ð´Ð»Ñ Ñ‡Ð¸Ñ‚Ð°Ð½Ð½Ñ" -#: elf32-sh.c:5096 +#: elf32-sh.c:5005 +#, c-format msgid "%B(%A+0x%lx): %s relocation against external symbol \"%s\"" msgstr "%B(%A+0x%lx): переÑÑƒÐ²Ð°Ð½Ð½Ñ %s за зовнішнім Ñимволом «%s»" -#: elf32-sh.c:5569 +#: elf32-sh.c:5469 #, c-format msgid "%X%C: relocation to \"%s\" references a different segment\n" msgstr "%X%C: переÑÑƒÐ²Ð°Ð½Ð½Ñ Ð·Ð° «%s» поÑилаєтьÑÑ Ð½Ð° інший Ñегмент\n" -#: elf32-sh.c:5575 +#: elf32-sh.c:5476 #, c-format msgid "%C: warning: relocation to \"%s\" references a different segment\n" msgstr "%C: попередженнÑ: переÑÑƒÐ²Ð°Ð½Ð½Ñ Ð·Ð° «%s» поÑилаєтьÑÑ Ð½Ð° інший Ñегмент\n" -#: elf32-sh.c:6353 elf32-sh.c:6436 +#: elf32-sh.c:6045 elf32-sh.c:6131 +#, c-format msgid "%B: `%s' accessed both as normal and FDPIC symbol" msgstr "%B: доÑтуп до «%s» виконуєтьÑÑ Ñк до звичайного Ñимволу та Ñимволу FDPIC" -#: elf32-sh.c:6358 elf32-sh.c:6440 +#: elf32-sh.c:6051 elf32-sh.c:6136 +#, c-format msgid "%B: `%s' accessed both as FDPIC and thread local symbol" msgstr "%B: доÑтуп до «%s» виконуєтьÑÑ Ñк до Ñимволу FDPIC, так Ñ– до локального Ð´Ð»Ñ Ð¿Ð¾Ñ‚Ð¾ÐºÑƒ Ð²Ð¸ÐºÐ¾Ð½Ð°Ð½Ð½Ñ Ñимволу" -#: elf32-sh.c:6388 +#: elf32-sh.c:6082 msgid "%B: Function descriptor relocation with non-zero addend" msgstr "%B: переÑÑƒÐ²Ð°Ð½Ð½Ñ Ð´ÐµÑкриптора функції з ненульовим доданком" -#: elf32-sh.c:6624 elf64-alpha.c:4652 +#: elf32-sh.c:6320 elf64-alpha.c:4757 +#, c-format msgid "%B: TLS local exec code cannot be linked into shared objects" msgstr "%B: виконуваний код локального TLS не можна компонувати у об’єкти Ñпільного викориÑтаннÑ" -#: elf32-sh64.c:223 elf64-sh64.c:2318 +#: elf32-sh.c:6435 +#, c-format +msgid "%B: uses %s instructions while previous modules use %s instructions" +msgstr "%B: викориÑтовує інÑтрукції %s, хоча у попередніх модулÑÑ… викориÑтовуютьÑÑ Ñ–Ð½Ñтрукції %s" + +#: elf32-sh.c:6447 #, c-format -msgid "%s: compiled as 32-bit object and %s is 64-bit" -msgstr "%s: зібрано Ñк 32- бітовий об’єкт, а %s Ñ” 64-бітовим" +msgid "internal error: merge of architecture '%s' with architecture '%s' produced unknown architecture" +msgstr "Ð²Ð½ÑƒÑ‚Ñ€Ñ–ÑˆÐ½Ñ Ð¿Ð¾Ð¼Ð¸Ð»ÐºÐ°: Ð¾Ð±â€™Ñ”Ð´Ð½Ð°Ð½Ð½Ñ Ð°Ñ€Ñ…Ñ–Ñ‚ÐµÐºÑ‚ÑƒÑ€Ð¸ «%s» з архітектурою «%s» призвело до ÑÑ‚Ð²Ð¾Ñ€ÐµÐ½Ð½Ñ Ð½ÐµÐ²Ñ–Ð´Ð¾Ð¼Ð¾Ñ— архітектури" -#: elf32-sh64.c:226 elf64-sh64.c:2321 +#: elf32-sh.c:6484 +msgid "%B: uses instructions which are incompatible with instructions used in previous modules" +msgstr "%B: викориÑтовуютьÑÑ Ñ–Ð½Ñтрукції, Ñкі неÑуміÑні із інÑтрукціÑми, викориÑтаними у попередніх модулÑÑ…" + +#: elf32-sh.c:6497 +msgid "%B: attempt to mix FDPIC and non-FDPIC objects" +msgstr "%B: Ñпроба Ñтворити Ñуміш об’єктів FDPIC Ñ– не-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: зібрано Ñк 64-бітовий об’єкт, а %s Ñ” 32-бітовим" +msgid "%B: compiled as 32-bit object and %B is 64-bit" +msgstr "%B: зібрано Ñк 32- бітовий об’єкт, а %B Ñ” 64-бітовим" -#: elf32-sh64.c:228 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: розмір об’єкта не збігаєтьÑÑ Ð· розміром Ð¿Ñ€Ð¸Ð·Ð½Ð°Ñ‡ÐµÐ½Ð½Ñ %s" +msgid "%B: compiled as 64-bit object and %B is 32-bit" +msgstr "%B: зібрано Ñк 64-бітовий об’єкт, а %B Ñ” 32-бітовим" -#: elf32-sh64.c:451 elf64-sh64.c:2837 +#: elf32-sh64.c:232 elf64-sh64.c:2284 #, c-format -msgid "%s: encountered datalabel symbol in input" -msgstr "%s: виÑвлено Ñимвол мітки даних у вхідних даних" +msgid "%B: object size does not match that of target %B" +msgstr "%B: розмір об’єкта не збігаєтьÑÑ Ð· розміром Ð¿Ñ€Ð¸Ð·Ð½Ð°Ñ‡ÐµÐ½Ð½Ñ %B" + +#: elf32-sh64.c:455 elf64-sh64.c:2776 +msgid "%B: encountered datalabel symbol in input" +msgstr "%B: виÑвлено Ñимвол мітки даних у вхідних даних" -#: elf32-sh64.c:528 +#: elf32-sh64.c:531 msgid "PTB mismatch: a SHmedia address (bit 0 == 1)" msgstr "ÐевідповідніÑÑ‚ÑŒ PTB: адреÑа SHmedia (біт 0 == 1)" -#: elf32-sh64.c:531 +#: elf32-sh64.c:534 msgid "PTA mismatch: a SHcompact address (bit 0 == 0)" msgstr "ÐевідповідніÑÑ‚ÑŒ PTA: адреÑа SHcompact (біт 0 == 0)" -#: elf32-sh64.c:549 -#, c-format -msgid "%s: GAS error: unexpected PTB insn with R_SH_PT_16" -msgstr "%s: помилка GAS: неочікувана інÑÑ‚Ñ€ÑƒÐºÑ†Ñ–Ñ PTB з R_SH_PT_16" +#: elf32-sh64.c:550 +msgid "%B: GAS error: unexpected PTB insn with R_SH_PT_16" +msgstr "%B: помилка GAS: неочікувана інÑÑ‚Ñ€ÑƒÐºÑ†Ñ–Ñ PTB з R_SH_PT_16" -#: elf32-sh64.c:598 +#: elf32-sh64.c:600 +#, c-format msgid "%B: error: unaligned relocation type %d at %08x reloc %p\n" msgstr "%B: помилка: невирівнÑний тип переÑÑƒÐ²Ð°Ð½Ð½Ñ %d у %08x, переÑÑƒÐ²Ð°Ð½Ð½Ñ %p\n" -#: elf32-sh64.c:674 -#, c-format -msgid "%s: could not write out added .cranges entries" -msgstr "%s: не вдалоÑÑ Ð²Ð¸ÐºÐ¾Ð½Ð°Ñ‚Ð¸ Ð·Ð°Ð¿Ð¸Ñ Ð´Ð¾Ð´Ð°Ð½Ð¸Ñ… запиÑів .cranges" +#: elf32-sh64.c:676 +msgid "%B: could not write out added .cranges entries" +msgstr "%B: не вдалоÑÑ Ð²Ð¸ÐºÐ¾Ð½Ð°Ñ‚Ð¸ Ð·Ð°Ð¿Ð¸Ñ Ð´Ð¾Ð´Ð°Ð½Ð¸Ñ… запиÑів .cranges" -#: elf32-sh64.c:734 -#, c-format -msgid "%s: could not write out sorted .cranges entries" -msgstr "%s: не вдалоÑÑ Ð²Ð¸ÐºÐ¾Ð½Ð°Ñ‚Ð¸ Ð·Ð°Ð¿Ð¸Ñ Ð²Ð¿Ð¾Ñ€Ñдкованих запиÑів .cranges" +#: elf32-sh64.c:735 +msgid "%B: could not write out sorted .cranges entries" +msgstr "%B: не вдалоÑÑ Ð²Ð¸ÐºÐ¾Ð½Ð°Ñ‚Ð¸ Ð·Ð°Ð¿Ð¸Ñ Ð²Ð¿Ð¾Ñ€Ñдкованих запиÑів .cranges" -#: elf32-sparc.c:90 +#: elf32-sparc.c:89 msgid "%B: compiled for a 64 bit system and target is 32 bit" msgstr "%B: зібрано Ð´Ð»Ñ 64-бітової ÑиÑтеми, ÑиÑтемою ж Ð¿Ñ€Ð¸Ð·Ð½Ð°Ñ‡ÐµÐ½Ð½Ñ Ñ” 32-бітова" -#: elf32-sparc.c:103 +#: elf32-sparc.c:102 msgid "%B: linking little endian files with big endian files" msgstr "%B: ÐºÐ¾Ð¼Ð¿Ð¾Ð½ÑƒÐ²Ð°Ð½Ð½Ñ Ñ„Ð°Ð¹Ð»Ñ–Ð² зі зворотним порÑдком байтів з файлами з прÑмим порÑдком байтів" -#: elf32-spu.c:719 +#: elf32-spu.c:160 +#, c-format +msgid "%B: unrecognised SPU reloc number: %d" +msgstr "%B: невідоме чиÑло переÑÑƒÐ²Ð°Ð½Ð½Ñ SPU: %d" + +#: elf32-spu.c:726 msgid "%X%P: overlay section %A does not start on a cache line.\n" msgstr "%X%P: розділ накладки %A не починаєтьÑÑ Ð· Ñ€Ñдка кешуваннÑ.\n" -#: elf32-spu.c:727 +#: elf32-spu.c:734 msgid "%X%P: overlay section %A is larger than a cache line.\n" msgstr "%X%P: розділ накладки %A Ñ” більшим за Ñ€Ñдок кешуваннÑ.\n" -#: elf32-spu.c:747 +#: elf32-spu.c:754 msgid "%X%P: overlay section %A is not in cache area.\n" msgstr "%X%P: розділ накладки %A не перебуває у облаÑÑ‚Ñ– кешуваннÑ.\n" -#: elf32-spu.c:787 +#: 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: розділи, що накладаютьÑÑ, %A Ñ– %A, не починаютьÑÑ Ð·Ð° одною адреÑою.\n" -#: elf32-spu.c:1011 +#: elf32-spu.c:1021 +#, c-format msgid "warning: call to non-function symbol %s defined in %B" msgstr "попередженнÑ: виклик нефункціонального Ñимволу, %s, визначеного у %B" -#: elf32-spu.c:1361 +#: elf32-spu.c:1371 +#, c-format msgid "%A:0x%v lrlive .brinfo (%u) differs from analysis (%u)\n" msgstr "%A:0x%v .brinfo lrlive (%u) відрізнÑєтьÑÑ Ð²Ñ–Ð´ визначеного шлÑхом аналізу (%u)\n" -#: elf32-spu.c:1880 +#: elf32-spu.c:1903 +#, c-format msgid "%B is not allowed to define %s" msgstr "%B не може визначати %s" -#: elf32-spu.c:1888 +#: elf32-spu.c:1911 #, c-format msgid "you are not allowed to define %s in a script" msgstr "не можна визначати %s у Ñкрипті" -#: elf32-spu.c:1922 +#: elf32-spu.c:1945 #, c-format msgid "%s in overlay section" msgstr "%s у розділі накладки" -#: elf32-spu.c:1951 +#: elf32-spu.c:1974 msgid "overlay stub relocation overflow" msgstr "Ð¿ÐµÑ€ÐµÐ¿Ð¾Ð²Ð½ÐµÐ½Ð½Ñ Ð¿Ñ–Ð´ Ñ‡Ð°Ñ Ð¿ÐµÑ€ÐµÑÑƒÐ²Ð°Ð½Ð½Ñ ÑˆÐ°Ð±Ð»Ð¾Ð½Ð° накладки" -#: elf32-spu.c:1960 +#: elf32-spu.c:1983 msgid "stubs don't match calculated size" msgstr "шаблони не відповідають обчиÑленому розміру" -#: elf32-spu.c:2542 +#: elf32-spu.c:2566 #, c-format msgid "warning: %s overlaps %s\n" msgstr "попередженнÑ: %s перекриває %s\n" -#: elf32-spu.c:2558 +#: elf32-spu.c:2582 #, c-format msgid "warning: %s exceeds section size\n" msgstr "попередженнÑ: %s перевищує розмір розділу\n" -#: elf32-spu.c:2589 +#: elf32-spu.c:2614 +#, c-format msgid "%A:0x%v not found in function table\n" msgstr "%A:0x%v не знайдено у таблиці функцій\n" -#: elf32-spu.c:2729 +#: 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): виклик розділу, Ñкий не міÑтить код, %B(%A), аналіз Ñ” неповним\n" -#: elf32-spu.c:3297 +#: elf32-spu.c:3324 #, c-format msgid "Stack analysis will ignore the call from %s to %s\n" msgstr "Під Ñ‡Ð°Ñ Ð°Ð½Ð°Ð»Ñ–Ð·Ñƒ Ñтека буде проігноровано виклик з %s до %s\n" -#: elf32-spu.c:3988 -msgid " %s: 0x%v\n" -msgstr " %s: 0x%v\n" - -#: elf32-spu.c:3989 -msgid "%s: 0x%v 0x%v\n" -msgstr "%s: 0x%v 0x%v\n" - -#: elf32-spu.c:3994 +#: elf32-spu.c:4021 msgid " calls:\n" msgstr " виклики:\n" -#: elf32-spu.c:4002 -#, c-format -msgid " %s%s %s\n" -msgstr " %s%s %s\n" - -#: elf32-spu.c:4307 +#: elf32-spu.c:4335 #, c-format msgid "%s duplicated in %s\n" msgstr "%s повторюєтьÑÑ Ñƒ %s\n" -#: elf32-spu.c:4311 +#: elf32-spu.c:4339 #, c-format msgid "%s duplicated\n" msgstr "%s дубльовано\n" -#: elf32-spu.c:4318 +#: elf32-spu.c:4346 msgid "sorry, no support for duplicate object files in auto-overlay script\n" msgstr "вибачте, у Ñкрипті автоматичного Ð½Ð°ÐºÐ»Ð°Ð´Ð°Ð½Ð½Ñ Ð½Ðµ передбачено підтримки Ð´ÑƒÐ±Ð»ÑŽÐ²Ð°Ð½Ð½Ñ Ð¾Ð±â€™Ñ”ÐºÑ‚Ð½Ð¸Ñ… файлів.\n" -#: elf32-spu.c:4359 +#: 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 "Ñума розміру 0x%v без оверлею та макÑимального розміру оверлею 0x%v перевищують міÑткіÑÑ‚ÑŒ локального Ñховища даних\n" -#: elf32-spu.c:4514 +#: elf32-spu.c:4544 +#, c-format msgid "%B:%A%s exceeds overlay size\n" msgstr "%B:%A%s перевищує розмір накладки\n" -#: elf32-spu.c:4676 +#: elf32-spu.c:4685 +msgid "%F%P: auto overlay error: %E\n" +msgstr "%F%P: помилка автонакладаннÑ: %E\n" + +#: elf32-spu.c:4706 msgid "Stack size for call graph root nodes.\n" msgstr "Розмір Ñтека Ð´Ð»Ñ ÐºÐ¾Ñ€ÐµÐ½ÐµÐ²Ð¸Ñ… вузлів графу викликів.\n" -#: elf32-spu.c:4677 +#: elf32-spu.c:4707 msgid "" "\n" "Stack size for functions. Annotations: '*' max stack, 't' tail call\n" @@ -2384,283 +3673,618 @@ msgstr "" "\n" "Розмір Ñтека Ð´Ð»Ñ Ñ„ÑƒÐ½ÐºÑ†Ñ–Ð¹. ПозначеннÑ: «*» макÑимальна Ð¿Ð¾Ð·Ð¸Ñ†Ñ–Ñ Ñƒ Ñтеку, «t» хвоÑтовий виклик\n" -#: elf32-spu.c:4687 +#: elf32-spu.c:4717 msgid "Maximum stack required is 0x%v\n" msgstr "МакÑимальний потрібний розмір Ñтека — 0x%v\n" -#: elf32-spu.c:4778 +#: elf32-spu.c:4736 +msgid "%X%P: stack/lrlive analysis error: %E\n" +msgstr "%X%P: помилка аналізу Ñтека/lrlive: %E\n" + +#: elf32-spu.c:4739 +msgid "%F%P: can not build overlay stubs: %E\n" +msgstr "%F%P: не вдалоÑÑ Ð·Ñ–Ð±Ñ€Ð°Ñ‚Ð¸ накладні шаблони: %E\n" + +#: elf32-spu.c:4808 msgid "fatal error while creating .fixup" msgstr "критична помилка під Ñ‡Ð°Ñ Ñпроби ÑÑ‚Ð²Ð¾Ñ€ÐµÐ½Ð½Ñ .fixup" -#: elf32-spu.c:5008 +#: elf32-spu.c:5043 +#, c-format msgid "%B(%s+0x%lx): unresolvable %s relocation against symbol `%s'" msgstr "%B(%s+0x%lx): нерозв’Ñзне переÑÑƒÐ²Ð°Ð½Ð½Ñ %s щодо Ñимволу «%s»" -#: elf32-tic6x.c:1602 +#: elf32-tic6x.c:1596 msgid "warning: generating a shared library containing non-PIC code" msgstr "попередженнÑ: ÑтворюєтьÑÑ Ð±Ñ–Ð±Ð»Ñ–Ð¾Ñ‚ÐµÐºÐ° Ñпільного викориÑтаннÑ, Ñка міÑтить код, неÑуміÑний з PIC" -#: elf32-tic6x.c:1607 +#: elf32-tic6x.c:1601 msgid "warning: generating a shared library containing non-PID code" msgstr "попередженнÑ: ÑтворюєтьÑÑ Ð±Ñ–Ð±Ð»Ñ–Ð¾Ñ‚ÐµÐºÐ° Ñпільного викориÑтаннÑ, Ñка міÑтить код, неÑуміÑний з PID" -#: elf32-tic6x.c:2541 +#: elf32-tic6x.c:2525 msgid "%B: SB-relative relocation but __c6xabi_DSBT_BASE not defined" msgstr "%B: переÑÑƒÐ²Ð°Ð½Ð½Ñ Ð²Ñ–Ð´Ð½Ð¾Ñно SB, але __c6xabi_DSBT_BASE не визначено" -#: elf32-tic6x.c:2761 -msgid "dangerous relocation" -msgstr "небезпечне переÑуваннÑ" - -#: elf32-tic6x.c:3733 +#: elf32-tic6x.c:3651 +#, c-format msgid "%B: error: unknown mandatory EABI object attribute %d" msgstr "%B: помилка: невідомий обов’Ñзковий атрибути об’єкта EABI, %d" -#: elf32-tic6x.c:3741 +#: elf32-tic6x.c:3660 +#, c-format msgid "%B: warning: unknown EABI object attribute %d" msgstr "%B: попередженнÑ: невідомий атрибут об’єкта EABI, %d" -#: elf32-tic6x.c:3853 elf32-tic6x.c:3861 +#: elf32-tic6x.c:3774 elf32-tic6x.c:3783 +#, c-format msgid "error: %B requires more stack alignment than %B preserves" msgstr "помилка: %B потребує більшого Ð²Ð¸Ñ€Ñ–Ð²Ð½ÑŽÐ²Ð°Ð½Ð½Ñ Ñтека, ніж збережено у %B" -#: elf32-tic6x.c:3871 elf32-tic6x.c:3880 +#: elf32-tic6x.c:3793 elf32-tic6x.c:3802 msgid "error: unknown Tag_ABI_array_object_alignment value in %B" msgstr "помилка: невідоме Ð·Ð½Ð°Ñ‡ÐµÐ½Ð½Ñ Tag_ABI_array_object_alignment у %B" -#: elf32-tic6x.c:3889 elf32-tic6x.c:3898 +#: elf32-tic6x.c:3811 elf32-tic6x.c:3820 msgid "error: unknown Tag_ABI_array_object_align_expected value in %B" msgstr "помилка: невідоме Ð·Ð½Ð°Ñ‡ÐµÐ½Ð½Ñ Tag_ABI_array_object_align_expected у %B" -#: elf32-tic6x.c:3906 elf32-tic6x.c:3913 +#: elf32-tic6x.c:3829 elf32-tic6x.c:3837 +#, c-format msgid "error: %B requires more array alignment than %B preserves" msgstr "помилка: %B потребує більшого Ð²Ð¸Ñ€Ñ–Ð²Ð½ÑŽÐ²Ð°Ð½Ð½Ñ Ð¼Ð°Ñиву, ніж збережено у %B" -#: elf32-tic6x.c:3935 +#: elf32-tic6x.c:3860 +#, c-format msgid "warning: %B and %B differ in wchar_t size" msgstr "попередженнÑ: %B Ñ– %B відрізнÑÑŽÑ‚ÑŒÑÑ Ð·Ð° розміром wchar_t" -#: elf32-tic6x.c:3953 +#: elf32-tic6x.c:3879 +#, c-format msgid "warning: %B and %B differ in whether code is compiled for DSBT" msgstr "попередженнÑ: %B Ñ– %B відрізнÑÑŽÑ‚ÑŒÑÑ Ð·Ð° тим, чи було Ñ—Ñ… зібрано Ð´Ð»Ñ DSBT" -#: elf32-v850.c:173 +#: elf32-v850.c:157 #, c-format msgid "Variable `%s' cannot occupy in multiple small data regions" msgstr "Змінна «%s» не може займати декілька малих облаÑтей даних" -#: elf32-v850.c:176 +#: elf32-v850.c:160 #, c-format msgid "Variable `%s' can only be in one of the small, zero, and tiny data regions" msgstr "Змінну «%s» можна зберігати лише у одній з малих, нульових Ñ– малюÑіньких облаÑтей даних" -#: elf32-v850.c:179 +#: elf32-v850.c:163 #, c-format msgid "Variable `%s' cannot be in both small and zero data regions simultaneously" msgstr "Змінна «%s» не може зберігатиÑÑ Ñƒ малій Ñ– нульовій облаÑÑ‚Ñ– даних одночаÑно" -#: elf32-v850.c:182 +#: elf32-v850.c:166 #, c-format msgid "Variable `%s' cannot be in both small and tiny data regions simultaneously" msgstr "Змінна «%s» не може зберігатиÑÑ Ñƒ малій Ñ– малюÑінькій облаÑÑ‚Ñ– даних одночаÑно" -#: elf32-v850.c:185 +#: elf32-v850.c:169 #, c-format msgid "Variable `%s' cannot be in both zero and tiny data regions simultaneously" msgstr "Змінна «%s» не може зберігатиÑÑ Ñƒ нульовій Ñ– малюÑінькій облаÑÑ‚Ñ– даних одночаÑно" -#: elf32-v850.c:483 +#: elf32-v850.c:467 msgid "FAILED to find previous HI16 reloc" msgstr "ÐЕ ВДÐЛОСЯ знайти попереднє переÑÑƒÐ²Ð°Ð½Ð½Ñ HI16" -#: elf32-v850.c:2155 +#: elf32-v850.c:1902 elf32-v850.c:1921 +#, c-format +msgid "%B: invalid V850 reloc number: %d" +msgstr "%B: некоректне чиÑло переÑÑƒÐ²Ð°Ð½Ð½Ñ V850: %d" + +#: elf32-v850.c:2299 msgid "could not locate special linker symbol __gp" msgstr "не вдалоÑÑ Ð·Ð½Ð°Ð¹Ñ‚Ð¸ Ñпеціальний Ñимвол компонувальника __gp" -#: elf32-v850.c:2159 +#: elf32-v850.c:2303 msgid "could not locate special linker symbol __ep" msgstr "не вдалоÑÑ Ð·Ð½Ð°Ð¹Ñ‚Ð¸ Ñпеціальний Ñимвол компонувальника __ep" -#: elf32-v850.c:2163 +#: elf32-v850.c:2307 msgid "could not locate special linker symbol __ctbp" msgstr "не вдалоÑÑ Ð·Ð½Ð°Ð¹Ñ‚Ð¸ Ñпеціальний Ñимвол компонувальника __ctbp" -#: elf32-v850.c:2341 +#: elf32-v850.c:2528 +#, c-format +msgid "error: %B needs 8-byte aligment but %B is set for 4-byte alignment" +msgstr "помилка: %B потребує 8-байтового вирівнюваннÑ, але %B налаштовано на 4-байтове вирівнюваннÑ" + +#: elf32-v850.c:2544 +#, c-format +msgid "error: %B uses 64-bit doubles but %B uses 32-bit doubles" +msgstr "помилка: у %B викориÑтано 64-бітові дійÑні чиÑла подвійної точноÑÑ‚Ñ–, а у %B — 32-бітові" + +#: elf32-v850.c:2559 +#, c-format +msgid "error: %B uses FPU-3.0 but %B only supports FPU-2.0" +msgstr "помилка: у %B викориÑтано FPU-3.0, але у %B викориÑтовуєтьÑÑ Ð»Ð¸ÑˆÐµ FPU-2.0" + +#: elf32-v850.c:2591 +#, c-format +msgid " alignment of 8-byte entities: " +msgstr " Ð²Ð¸Ñ€Ñ–Ð²Ð½ÑŽÐ²Ð°Ð½Ð½Ñ 8-байтових запиÑів: " + +#: elf32-v850.c:2594 +#, c-format +msgid "4-byte" +msgstr "4-байтовий" + +#: elf32-v850.c:2595 +#, c-format +msgid "8-byte" +msgstr "8-байтовий" + +#: elf32-v850.c:2596 elf32-v850.c:2608 +#, c-format +msgid "not set" +msgstr "не вÑтановлено" + +#: 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 "невідомо: %x" + +#: elf32-v850.c:2603 +#, c-format +msgid " size of doubles: " +msgstr " розмір double: " + +#: elf32-v850.c:2606 +#, c-format +msgid "4-bytes" +msgstr "4-байтові" + +#: elf32-v850.c:2607 +#, c-format +msgid "8-bytes" +msgstr "8-байтові" + +#: elf32-v850.c:2615 +#, c-format +msgid " FPU support required: " +msgstr " Потрібна підтримка FPU: " + +#: 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 "немає" + +#: elf32-v850.c:2627 +#, c-format +msgid "SIMD use: " +msgstr "ВикориÑÑ‚Ð°Ð½Ð½Ñ SIMD: " + +#: elf32-v850.c:2630 elf32-v850.c:2641 elf32-v850.c:2652 +#, c-format +msgid "yes" +msgstr "так" + +#: elf32-v850.c:2631 elf32-v850.c:2642 elf32-v850.c:2653 +#, c-format +msgid "no" +msgstr "ні" + +#: elf32-v850.c:2638 +#, c-format +msgid "CACHE use: " +msgstr "ВикориÑÑ‚Ð°Ð½Ð½Ñ CACHE: " + +#: elf32-v850.c:2649 +#, c-format +msgid "MMU use: " +msgstr "ВикориÑÑ‚Ð°Ð½Ð½Ñ MMU: " + +#: elf32-v850.c:2816 elf32-v850.c:2872 msgid "%B: Architecture mismatch with previous modules" msgstr "%B: невідповідніÑÑ‚ÑŒ архітектур з попередніми модулÑми" #. xgettext:c-format. -#: elf32-v850.c:2360 +#: elf32-v850.c:2890 #, c-format msgid "private flags = %lx: " msgstr "закриті прапорці = %lx: " -#: elf32-v850.c:2365 +#: elf32-v850.c:2895 +#, c-format +msgid "unknown v850 architecture" +msgstr "невідома архітектура v850" + +#: elf32-v850.c:2897 +#, c-format +msgid "v850 E3 architecture" +msgstr "архітектура v850 E3" + +#: elf32-v850.c:2899 elf32-v850.c:2906 #, c-format msgid "v850 architecture" msgstr "архітектура v850" -#: elf32-v850.c:2366 +#: elf32-v850.c:2907 #, c-format msgid "v850e architecture" msgstr "архітектура v850e" -#: elf32-v850.c:2367 +#: elf32-v850.c:2908 #, c-format msgid "v850e1 architecture" msgstr "архітектура v850e1" -#: elf32-v850.c:2368 +#: elf32-v850.c:2909 #, c-format msgid "v850e2 architecture" msgstr "архітектура v850e2" -#: elf32-v850.c:2369 +#: elf32-v850.c:2910 #, c-format msgid "v850e2v3 architecture" msgstr "архітектура v850e2v3" -#: elf32-vax.c:532 +#: elf32-v850.c:2911 +#, c-format +msgid "v850e3v5 architecture" +msgstr "архітектура v850e3v5" + +#: elf32-v850.c:3605 +#, c-format +msgid "%B: 0x%lx: warning: R_V850_LONGCALL points to unrecognized insns" +msgstr "%B: 0x%lx: попередженнÑ: R_V850_LONGCALL вказує на нерозпізнані інÑтрукції" + +#: elf32-v850.c:3615 +#, c-format +msgid "%B: 0x%lx: warning: R_V850_LONGCALL points to unrecognized insn 0x%x" +msgstr "%B: 0x%lx: попередженнÑ: R_V850_LONGCALL вказує на нерозпізнану інÑтрукцію 0x%x" + +#: elf32-v850.c:3660 +#, c-format +msgid "%B: 0x%lx: warning: R_V850_LONGCALL points to unrecognized reloc" +msgstr "%B: 0x%lx: попередженнÑ: R_V850_LONGCALL вказує на нерозпізнане переÑуваннÑ" + +#: elf32-v850.c:3700 +#, c-format +msgid "%B: 0x%lx: warning: R_V850_LONGCALL points to unrecognized reloc 0x%lx" +msgstr "%B: 0x%lx: попередженнÑ: R_V850_LONGCALL вказує на нерозпізнане переÑÑƒÐ²Ð°Ð½Ð½Ñ 0x%lx" + +#: elf32-v850.c:3843 +#, c-format +msgid "%B: 0x%lx: warning: R_V850_LONGJUMP points to unrecognized insns" +msgstr "%B: 0x%lx: попередженнÑ: R_V850_LONGJUMP вказує на нерозпізнані інÑтрукції" + +#: elf32-v850.c:3853 +#, c-format +msgid "%B: 0x%lx: warning: R_V850_LONGJUMP points to unrecognized insn 0x%x" +msgstr "%B: 0x%lx: попередженнÑ: R_V850_LONGJUMP вказує на нерозпізнану інÑтрукцію 0x%x" + +#: elf32-v850.c:3887 +#, c-format +msgid "%B: 0x%lx: warning: R_V850_LONGJUMP points to unrecognized reloc" +msgstr "%B: 0x%lx: попередженнÑ: R_V850_LONGJUMP вказує на нерозпізнане переÑуваннÑ" + +#: elf32-vax.c:290 +#, c-format +msgid "%B: unrecognised VAX reloc number: %d" +msgstr "%B: невідоме чиÑло переÑÑƒÐ²Ð°Ð½Ð½Ñ VAX: %d" + +#: elf32-vax.c:539 #, c-format msgid " [nonpic]" msgstr " [не-pic]" -#: 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:655 +#: 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: попередженнÑ: доданок GOT %ld до «%s» не відповідає попередньому доданку GOT %ld" + +#: elf32-vax.c:1511 +#, c-format +msgid "%B: warning: PLT addend of %d to `%s' from %A section ignored" +msgstr "%B: попередженнÑ: доданок PLT %d до «%s» з розділу %A проігноровано" + +#: elf32-vax.c:1636 +#, c-format +msgid "%B: warning: %s relocation against symbol `%s' from %A section" +msgstr "%B: попередженнÑ: переÑÑƒÐ²Ð°Ð½Ð½Ñ %s відноÑно Ñимволу «%s» з розділу %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: попередженнÑ: доданок GOT %ld до «%s» не відповідає попередньому доданку GOT %ld" +msgid "%B: warning: %s relocation to 0x%x from %A section" +msgstr "%B: попередженнÑ: переÑÑƒÐ²Ð°Ð½Ð½Ñ %s до 0x%x з розділу %A" -#: elf32-vax.c:1585 +#: elf32-visium.c:481 #, c-format -msgid "%s: warning: PLT addend of %d to `%s' from %s section ignored" -msgstr "%s: попередженнÑ: доданок PLT %d до «%s» з розділу %s проігноровано" +msgid "%B: invalid Visium reloc number: %d" +msgstr "%B: некоректне чиÑло переÑÑƒÐ²Ð°Ð½Ð½Ñ Visium: %d" -#: elf32-vax.c:1712 +#: elf32-visium.c:817 #, c-format -msgid "%s: warning: %s relocation against symbol `%s' from %s section" -msgstr "%s: попередженнÑ: переÑÑƒÐ²Ð°Ð½Ð½Ñ %s відноÑно Ñимволу «%s» з розділу %s" +msgid "%B: compiled %s -mtune=%s and linked with modules compiled %s -mtune=%s" +msgstr "%B: зібрано %s -mtune=%s Ñ– Ñкомпоновано з модулÑми, зібраними %s -mtune=%s" -#: elf32-vax.c:1718 +#: elf32-xgate.c:428 #, c-format -msgid "%s: warning: %s relocation to 0x%x from %s section" -msgstr "%s: попередженнÑ: переÑÑƒÐ²Ð°Ð½Ð½Ñ %s до 0x%x з розділу %s" +msgid "%B: invalid XGate reloc number: %d" +msgstr "%B: некоректне чиÑло переÑÑƒÐ²Ð°Ð½Ð½Ñ XGate: %d" -#: elf32-xstormy16.c:451 elf32-ia64.c:2336 elf64-ia64.c:2336 +#: elf32-xgate.c:681 +#, c-format +msgid "cpu=XGATE]" +msgstr "процеÑор=XGATE]" + +#: elf32-xgate.c:683 +#, c-format +msgid "error reading cpu type from elf private data" +msgstr "помилка під Ñ‡Ð°Ñ Ñ‡Ð¸Ñ‚Ð°Ð½Ð½Ñ Ð´Ð°Ð½Ð¸Ñ… щодо типу процеÑора з приватних даних elf" + +#: 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 "ненульовий доданок у переÑуванні @fptr" -#: elf32-xtensa.c:918 +#: elf32-xtensa.c:485 +#, c-format +msgid "%B: invalid XTENSA reloc number: %d" +msgstr "%B: некоректне чиÑло переÑÑƒÐ²Ð°Ð½Ð½Ñ XTENSA: %d" + +#: elf32-xtensa.c:926 +#, c-format msgid "%B(%A): invalid property table" msgstr "%B(%A): некоректна Ñ‚Ð°Ð±Ð»Ð¸Ñ†Ñ Ð²Ð»Ð°ÑтивоÑтей" -#: elf32-xtensa.c:2777 +#: elf32-xtensa.c:2790 +#, c-format msgid "%B(%A+0x%lx): relocation offset out of range (size=0x%x)" msgstr "%B(%A+0x%lx): відÑтуп переÑÑƒÐ²Ð°Ð½Ð½Ñ Ð¿Ð¾Ð·Ð° діапазоном (розмір=0x%x)" -#: elf32-xtensa.c:2856 elf32-xtensa.c:2977 +#: elf32-xtensa.c:2871 elf32-xtensa.c:2990 msgid "dynamic relocation in read-only section" msgstr "динамічне переÑÑƒÐ²Ð°Ð½Ð½Ñ Ñƒ розділі, призначеному лише Ð´Ð»Ñ Ñ‡Ð¸Ñ‚Ð°Ð½Ð½Ñ" -#: elf32-xtensa.c:2953 +#: elf32-xtensa.c:2967 msgid "TLS relocation invalid without dynamic sections" msgstr "ПереÑÑƒÐ²Ð°Ð½Ð½Ñ TLS Ñ” некоректним без динамічних розділів" -#: elf32-xtensa.c:3172 +#: elf32-xtensa.c:3178 msgid "internal inconsistency in size of .got.loc section" msgstr "Ð²Ð½ÑƒÑ‚Ñ€Ñ–ÑˆÐ½Ñ Ð½ÐµÐ¿Ð¾ÑлідовніÑÑ‚ÑŒ у розмірах розділу .got.loc" #: elf32-xtensa.c:3485 +#, c-format msgid "%B: incompatible machine type. Output is 0x%x. Input is 0x%x" msgstr "%B: неÑуміÑні типи архітектур. Ð’Ð¸Ð²ÐµÐ´ÐµÐ½Ð½Ñ â€” 0x%x. Вхідні дані — 0x%x" -#: elf32-xtensa.c:4714 elf32-xtensa.c:4722 +#: elf32-xtensa.c:4716 elf32-xtensa.c:4724 msgid "Attempt to convert L32R/CALLX to CALL failed" msgstr "Спроба Ð¿ÐµÑ€ÐµÑ‚Ð²Ð¾Ñ€ÐµÐ½Ð½Ñ L32R/CALLX на CALL зазнала невдачі" -#: elf32-xtensa.c:6332 elf32-xtensa.c:6408 elf32-xtensa.c:7524 +#: 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): не вдалоÑÑ Ð´ÐµÐºÐ¾Ð´ÑƒÐ²Ð°Ñ‚Ð¸ інÑтрукцію, можлива невідповідніÑÑ‚ÑŒ конфігурацій" -#: elf32-xtensa.c:7264 +#: 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): не вдалоÑÑ Ð´ÐµÐºÐ¾Ð´ÑƒÐ²Ð°Ñ‚Ð¸ інÑтрукцію Ð´Ð»Ñ Ð¿ÐµÑ€ÐµÑÑƒÐ²Ð°Ð½Ð½Ñ XTENSA_ASM_SIMPLIFY, можлива невідповідніÑÑ‚ÑŒ конфігурацій" -#: elf32-xtensa.c:9023 +#: elf32-xtensa.c:9585 msgid "invalid relocation address" msgstr "некоректна адреÑа переÑуваннÑ" -#: elf32-xtensa.c:9072 +#: elf32-xtensa.c:9635 msgid "overflow after relaxation" msgstr "Ð¿ÐµÑ€ÐµÐ¿Ð¾Ð²Ð½ÐµÐ½Ð½Ñ Ð¿Ñ–ÑÐ»Ñ Ð¾Ð¿Ñ‚Ð¸Ð¼Ñ–Ð·Ð°Ñ†Ñ–Ñ— розміру" -#: elf32-xtensa.c:10204 +#: elf32-xtensa.c:10779 +#, c-format msgid "%B(%A+0x%lx): unexpected fix for %s relocation" msgstr "%B(%A+0x%lx): неочікуване Ð²Ð¸Ð¿Ñ€Ð°Ð²Ð»ÐµÐ½Ð½Ñ Ð´Ð»Ñ Ð¿ÐµÑ€ÐµÑÑƒÐ²Ð°Ð½Ð½Ñ %s" -#: elf64-alpha.c:460 +#: elf64-alpha.c:472 msgid "GPDISP relocation did not find ldah and lda instructions" msgstr "ПереÑуваннÑм GPDISP не знайдено інÑтрукції ldah Ñ– lda" -#: elf64-alpha.c:2497 +#: elf64-alpha.c:1112 +#, c-format +msgid "%B: unrecognised Alpha reloc number: %d" +msgstr "%B: невідоме чиÑло переÑÑƒÐ²Ð°Ð½Ð½Ñ Alpha: %d" + +#: elf64-alpha.c:2529 +#, c-format msgid "%B: .got subsegment exceeds 64K (size %d)" msgstr "%B: розмір підÑегмента .got перевищує 64кБ (розмір — %d)" -#: elf64-alpha.c:4387 elf64-alpha.c:4399 +#: elf64-alpha.c:3084 +#, c-format +msgid "%B: %A+0x%lx: warning: %s relocation against unexpected insn" +msgstr "%B: %A+0x%lx: попередженнÑ: переÑÑƒÐ²Ð°Ð½Ð½Ñ %s щодо неочікуваної інÑтрукції" + +#: elf64-alpha.c:3280 +#, c-format +msgid "%B: %A+0x%lx: warning: LITERAL relocation against unexpected insn" +msgstr "%B: %A+0x%lx: попередженнÑ: переÑÑƒÐ²Ð°Ð½Ð½Ñ LITERAL щодо неочікуваної інÑтрукції" + +#: elf64-alpha.c:4481 elf64-alpha.c:4494 +#, c-format msgid "%B: gp-relative relocation against dynamic symbol %s" msgstr "%B: gp-відноÑне переÑÑƒÐ²Ð°Ð½Ð½Ñ Ñ‰Ð¾Ð´Ð¾ динамічного Ñимволу %s" -#: elf64-alpha.c:4425 elf64-alpha.c:4565 +#: elf64-alpha.c:4521 elf64-alpha.c:4665 +#, c-format msgid "%B: pc-relative relocation against dynamic symbol %s" msgstr "%B: pc-відноÑне переÑÑƒÐ²Ð°Ð½Ð½Ñ Ñ‰Ð¾Ð´Ð¾ динамічного Ñимволу %s" -#: elf64-alpha.c:4453 +#: elf64-alpha.c:4550 +#, c-format msgid "%B: change in gp: BRSGP %s" msgstr "%B: зміна у gp: BRSGP %s" -#: elf64-alpha.c:4478 +#: elf64-alpha.c:4575 msgid "<unknown>" msgstr "<невідома>" -#: elf64-alpha.c:4483 +#: elf64-alpha.c:4581 +#, c-format msgid "%B: !samegp reloc against symbol without .prologue: %s" msgstr "%B: переÑÑƒÐ²Ð°Ð½Ð½Ñ !samegp щодо Ñимволу без .prologue: %s" -#: elf64-alpha.c:4540 +#: elf64-alpha.c:4639 +#, c-format msgid "%B: unhandled dynamic relocation against %s" msgstr "%B: непридатне до обробки динамічне переÑÑƒÐ²Ð°Ð½Ð½Ñ Ñ‰Ð¾Ð´Ð¾ %s" -#: elf64-alpha.c:4572 +#: elf64-alpha.c:4674 +#, c-format msgid "%B: pc-relative relocation against undefined weak symbol %s" msgstr "%B: pc-відноÑне переÑÑƒÐ²Ð°Ð½Ð½Ñ Ñ‰Ð¾Ð´Ð¾ невизначеного Ñлабкого Ñимволу %s" -#: elf64-alpha.c:4636 +#: elf64-alpha.c:4740 +#, c-format msgid "%B: dtp-relative relocation against dynamic symbol %s" msgstr "%B: dtp-відноÑне переÑÑƒÐ²Ð°Ð½Ð½Ñ Ñ‰Ð¾Ð´Ð¾ динамічного Ñимволу %s" -#: elf64-alpha.c:4659 +#: elf64-alpha.c:4765 +#, c-format msgid "%B: tp-relative relocation against dynamic symbol %s" msgstr "%B: tp-відноÑне переÑÑƒÐ²Ð°Ð½Ð½Ñ Ñ‰Ð¾Ð´Ð¾ динамічного Ñимволу %s" -#: elf64-hppa.c:2083 +#: elf64-hppa.c:2082 #, c-format msgid "stub entry for %s cannot load .plt, dp offset = %ld" msgstr "шаблон запиÑу Ð´Ð»Ñ %s не можна завантажувати .plt, відÑтуп dp = %ld" -#: elf64-hppa.c:3275 -msgid "%B(%A+0x" -msgstr "%B(%A+0x" +#: elf64-hppa.c:3287 +#, c-format +msgid "%B(%A+0x%" +msgstr "%B(%A+0x%" + +#: 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: не вдалоÑÑ Ð¾Ð¿Ñ‚Ð¸Ð¼Ñ–Ð·ÑƒÐ²Ð°Ñ‚Ð¸ br за адреÑою 0x%lx у розділі «%A». Будь лаÑка, ÑкориÑтайтеÑÑ brl або непрÑмим відгалуженнÑм." + +#: elf64-ia64-vms.c:2029 elf32-ia64.c:2282 elf64-ia64.c:2282 +msgid "@pltoff reloc against local symbol" +msgstr "переÑÑƒÐ²Ð°Ð½Ð½Ñ @pltoff щодо локального Ñимволу" + +#: elf64-ia64-vms.c:3282 elf32-ia64.c:3688 elf64-ia64.c:3688 +#, c-format +msgid "%B: short data segment overflowed (0x%lx >= 0x400000)" +msgstr "%B: переповнено короткий Ñегмент даних (0x%lx >= 0x400000)" + +#: 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 не вкриває короткого Ñегмента даних" + +#: 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: не-pic код з переÑуваннÑм imm щодо динамічного Ñимволу «%s»" + +#: 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: переÑÑƒÐ²Ð°Ð½Ð½Ñ @gprel щодо динамічного Ñимволу %s" + +#: 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: ÐºÐ¾Ð¼Ð¿Ð¾Ð½ÑƒÐ²Ð°Ð½Ð½Ñ Ð½Ðµ-pic коду у виконуваному файлі з незалежним позиціюваннÑм" -#: elf64-mmix.c:1034 +#: 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: Ð²Ñ–Ð´Ð³Ð°Ð»ÑƒÐ¶ÐµÐ½Ð½Ñ @internal до динамічного Ñимволу %s" + +#: 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: здогадка щодо адреÑної прив’Ñзки до динамічного Ñимволу %s" + +#: 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: переÑÑƒÐ²Ð°Ð½Ð½Ñ @pcrel щодо динамічного Ñимволу %s" + +#: elf64-ia64-vms.c:3913 elf32-ia64.c:4437 elf64-ia64.c:4437 +msgid "unsupported reloc" +msgstr "непідтримуване переÑуваннÑ" + +#: 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: не виÑтачає розділу TLS Ð´Ð»Ñ Ð¿ÐµÑ€ÐµÑÑƒÐ²Ð°Ð½Ð½Ñ %s щодо «%s» за адреÑою 0x%lx у розділі «%A»." + +#: 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: не вдалоÑÑ Ð¾Ð¿Ñ‚Ð¸Ð¼Ñ–Ð·ÑƒÐ²Ð°Ñ‚Ð¸ br (%s) до «%s» за адреÑою 0x%lx у розділі «%A» з розміром 0x%lx (> 0x1000000)." + +#: 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: ÐºÐ¾Ð¼Ð¿Ð¾Ð½ÑƒÐ²Ð°Ð½Ð½Ñ trap-on-NULL-dereference з файлами без Ð·Ð°Ñ…Ð¾Ð¿Ð»ÐµÐ½Ð½Ñ (trapping)" + +#: 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: ÐºÐ¾Ð¼Ð¿Ð¾Ð½ÑƒÐ²Ð°Ð½Ð½Ñ Ñ„Ð°Ð¹Ð»Ñ–Ð² зі прÑмим порÑдком байтів з файлами зі зворотним порÑдком байтів" + +#: 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: ÐºÐ¾Ð¼Ð¿Ð¾Ð½ÑƒÐ²Ð°Ð½Ð½Ñ 64-бітових файлів з 32-бітовими файлами" + +#: 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: ÐºÐ¾Ð¼Ð¿Ð¾Ð½ÑƒÐ²Ð°Ð½Ð½Ñ Ñ„Ð°Ð¹Ð»Ñ–Ð² зі Ñталим gp з файлами зі змінним gp" + +#: 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: ÐºÐ¾Ð¼Ð¿Ð¾Ð½ÑƒÐ²Ð°Ð½Ð½Ñ Ñ„Ð°Ð¹Ð»Ñ–Ð² з автоматичним pic з файлами без автоматичного pic" + +#: 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 "ПопередженнÑ: Ð²Ð¸Ñ€Ñ–Ð²Ð½ÑŽÐ²Ð°Ð½Ð½Ñ %u загального Ñимволу «%s» у %B перевищує Ð²Ð¸Ñ€Ñ–Ð²Ð½ÑŽÐ²Ð°Ð½Ð½Ñ (%u) його розділу %A" + +#: 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 "ПопередженнÑ: Ð²Ð¸Ñ€Ñ–Ð²Ð½ÑŽÐ²Ð°Ð½Ð½Ñ %u Ñимволу «%s» у %B Ñ” меншим за %u у %B" + +#: elf64-ia64-vms.c:5161 +#, c-format +msgid "Warning: size of symbol `%s' changed from %lu in %B to %lu in %B" +msgstr "ПопередженнÑ: розмір Ñимволу «%s» змінено з %lu у %B на %lu у %B" + +#: elf64-mips.c:3615 elfn32-mips.c:3439 +#, c-format +msgid "unrecognised MIPS reloc number: %d" +msgstr "невідоме чиÑло переÑÑƒÐ²Ð°Ð½Ð½Ñ MIPS: %d" + +#: 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" @@ -2672,7 +4296,7 @@ msgstr "" " даних з ELF або mmo або зберіть з викориÑтаннÑм «-no-expand»\n" " (Ð´Ð»Ñ gcc «-Wa,-no-expand»)" -#: elf64-mmix.c:1218 +#: 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" @@ -2684,55 +4308,59 @@ msgstr "" " даних з ELF або mmo або зберіть з викориÑтаннÑм параметра gcc\n" " «-mno-base-addresses»." -#: elf64-mmix.c:1244 +#: 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: помилка через внутрішню непоÑлідовніÑÑ‚ÑŒ Ð´Ð»Ñ Ð·Ð½Ð°Ñ‡ÐµÐ½Ð½Ñ\n" +"%B: помилка через внутрішню непоÑлідовніÑÑ‚ÑŒ Ð´Ð»Ñ Ð·Ð½Ð°Ñ‡ÐµÐ½Ð½Ñ\n" " розміщеного компонувальником загального регіÑтра: компоновано: 0x%lx%08lx != розміщено: 0x%lx%08lx\n" -#: elf64-mmix.c:1670 +#: elf64-mmix.c:1266 #, c-format -msgid "%s: base-plus-offset relocation against register symbol: (unknown) in %s" -msgstr "%s: переÑÑƒÐ²Ð°Ð½Ð½Ñ Ð¾Ñнова-плюÑ-відÑтуп щодо Ñимволу регіÑтру: (невідоме) у %s" +msgid "%B: invalid MMIX reloc number: %d" +msgstr "%B: некоректне чиÑло переÑÑƒÐ²Ð°Ð½Ð½Ñ MMIX: %d" -#: elf64-mmix.c:1675 +#: elf64-mmix.c:1618 #, c-format -msgid "%s: base-plus-offset relocation against register symbol: %s in %s" -msgstr "%s: переÑÑƒÐ²Ð°Ð½Ð½Ñ Ð¾Ñнова-плюÑ-відÑтуп щодо Ñимволу регіÑтру: %s у %s" +msgid "%B: base-plus-offset relocation against register symbol: (unknown) in %A" +msgstr "%B: переÑÑƒÐ²Ð°Ð½Ð½Ñ Ð¾Ñнова-плюÑ-відÑтуп щодо Ñимволу регіÑтру: (невідоме) у %A" -#: elf64-mmix.c:1719 +#: elf64-mmix.c:1624 #, c-format -msgid "%s: register relocation against non-register symbol: (unknown) in %s" -msgstr "%s: переÑÑƒÐ²Ð°Ð½Ð½Ñ Ñ€ÐµÐ³Ñ–Ñтрів щодо Ñимволу, Ñкий не перебуває у регіÑтрі: (невідоме) у %s" +msgid "%B: base-plus-offset relocation against register symbol: %s in %A" +msgstr "%B: переÑÑƒÐ²Ð°Ð½Ð½Ñ Ð¾Ñнова-плюÑ-відÑтуп щодо Ñимволу регіÑтру: %s у %A" -#: elf64-mmix.c:1724 +#: elf64-mmix.c:1669 #, c-format -msgid "%s: register relocation against non-register symbol: %s in %s" -msgstr "%s: переÑÑƒÐ²Ð°Ð½Ð½Ñ Ñ€ÐµÐ³Ñ–Ñтрів щодо Ñимволу, Ñкий не перебуває у регіÑтрі: %s у %s" +msgid "%B: register relocation against non-register symbol: (unknown) in %A" +msgstr "%B: переÑÑƒÐ²Ð°Ð½Ð½Ñ Ñ€ÐµÐ³Ñ–Ñтрів щодо Ñимволу, Ñкий не перебуває у регіÑтрі: (невідоме) у %A" -#: elf64-mmix.c:1761 +#: elf64-mmix.c:1675 #, c-format -msgid "%s: directive LOCAL valid only with a register or absolute value" -msgstr "%s: директиву LOCAL можна викориÑтовувати лише зі значеннÑми у регіÑтрах або абÑолютними значеннÑми" +msgid "%B: register relocation against non-register symbol: %s in %A" +msgstr "%B: переÑÑƒÐ²Ð°Ð½Ð½Ñ Ñ€ÐµÐ³Ñ–Ñтрів щодо Ñимволу, Ñкий не перебуває у регіÑтрі: %s у %A" + +#: elf64-mmix.c:1712 +msgid "%B: directive LOCAL valid only with a register or absolute value" +msgstr "%B: директиву LOCAL можна викориÑтовувати лише зі значеннÑми у регіÑтрах або абÑолютними значеннÑми" -#: elf64-mmix.c:1789 +#: elf64-mmix.c:1743 #, c-format -msgid "%s: LOCAL directive: Register $%ld is not a local register. First global register is $%ld." -msgstr "%s: директива LOCAL: регіÑÑ‚Ñ€ $%ld не Ñ” локальним регіÑтром. Першим загальним регіÑтром Ñ” $%ld." +msgid "%B: LOCAL directive: Register $%ld is not a local register. First global register is $%ld." +msgstr "%B: директива LOCAL: регіÑÑ‚Ñ€ $%ld не Ñ” локальним регіÑтром. Першим загальним регіÑтром Ñ” $%ld." -#: elf64-mmix.c:2253 +#: 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: помилка: декілька визначень «%s»; початок %s вÑтановлено у раніше Ñкомпонований файл\n" +msgid "%B: Error: multiple definition of `%s'; start of %s is set in a earlier linked file\n" +msgstr "%B: помилка: декілька визначень «%s»; початок %s вÑтановлено у раніше Ñкомпонований файл\n" -#: elf64-mmix.c:2311 +#: elf64-mmix.c:2257 msgid "Register section has contents\n" msgstr "У розділі регіÑтрів міÑÑ‚ÑÑ‚ÑŒÑÑ Ð´Ð°Ð½Ñ–\n" -#: elf64-mmix.c:2503 +#: elf64-mmix.c:2447 #, c-format msgid "" "Internal inconsistency: remaining %u != max %u.\n" @@ -2741,80 +4369,117 @@ msgstr "" "Ð’Ð½ÑƒÑ‚Ñ€Ñ–ÑˆÐ½Ñ Ð½ÐµÑƒÐ·Ð³Ð¾Ð´Ð¶ÐµÐ½Ñ–ÑÑ‚ÑŒ: залишилоÑÑ %u != макÑ. %u.\n" " Будь лаÑка, повідомте про цю ваду." -#: elf64-ppc.c:4185 +#: elf64-ppc.c:4625 +#, c-format msgid "%P: %B: cannot create stub entry %s\n" msgstr "%P: %B: не вдалоÑÑ Ñтворити шаблонний Ð·Ð°Ð¿Ð¸Ñ %s\n" -#: elf64-ppc.c:6518 -msgid "%P: copy reloc against `%s' requires lazy plt linking; avoid setting LD_BIND_NOW=1 or upgrade gcc\n" -msgstr "%P: ÐºÐ¾Ð¿Ñ–ÑŽÐ²Ð°Ð½Ð½Ñ Ð¿ÐµÑ€ÐµÑÑƒÐ²Ð°Ð½Ð½Ñ Ñ‰Ð¾Ð´Ð¾ «%s» потребує відкладеного ÐºÐ¾Ð¼Ð¿Ð¾Ð½ÑƒÐ²Ð°Ð½Ð½Ñ plt; не вÑтановлюйте LD_BIND_NOW=1 або оновіть gcc\n" +#: elf64-ppc.c:4993 +msgid "%P: symbol '%s' has invalid st_other for ABI version 1\n" +msgstr "%P: Ñимвол «%s» має некоректне Ð·Ð½Ð°Ñ‡ÐµÐ½Ð½Ñ st_other Ð´Ð»Ñ Ð²ÐµÑ€ÑÑ–Ñ— ABI 1\n" + +#: elf64-ppc.c:5163 +#, c-format +msgid "%P: %B .opd not allowed in ABI version %d\n" +msgstr "%P: .opd %B не можна викориÑтовувати у верÑÑ–Ñ— ABI %d\n" + +#: elf64-ppc.c:5639 +#, c-format +msgid "%H: %s reloc unsupported in shared libraries and PIEs.\n" +msgstr "%H: підтримки переÑÑƒÐ²Ð°Ð½Ð½Ñ %s не передбачено у бібліотеках Ñпільного кориÑÑ‚ÑƒÐ²Ð°Ð½Ð½Ñ Ñ– PIE.\n" + +#: elf64-ppc.c:6046 +#, c-format +msgid "%B uses unknown e_flags 0x%lx" +msgstr "%B викориÑтовує невідоме Ð·Ð½Ð°Ñ‡ÐµÐ½Ð½Ñ e_flags 0x%lx" + +#: elf64-ppc.c:6054 +#, c-format +msgid "%B: ABI version %ld is not compatible with ABI version %ld output" +msgstr "%B: верÑÑ–Ñ ABI %ld Ñ” неÑуміÑною з верÑією ABI %ld результату" + +#: elf64-ppc.c:6082 +#, c-format +msgid " [abiv%ld]" +msgstr " [abiv%ld]" + +#: 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: ÐºÐ¾Ð¿Ñ–ÑŽÐ²Ð°Ð½Ð½Ñ Ð¿ÐµÑ€ÐµÑÑƒÐ²Ð°Ð½Ð½Ñ Ñ‰Ð¾Ð´Ð¾ «%T» потребує відкладеного ÐºÐ¾Ð¼Ð¿Ð¾Ð½ÑƒÐ²Ð°Ð½Ð½Ñ plt; не вÑтановлюйте LD_BIND_NOW=1 або оновіть gcc\n" -#: elf64-ppc.c:6788 +#: elf64-ppc.c:7680 msgid "%B: undefined symbol on R_PPC64_TOCSAVE relocation" msgstr "%B: невизначений Ñимвол у переÑуванні R_PPC64_TOCSAVE" -#: elf64-ppc.c:6992 +#: elf64-ppc.c:7910 +#, c-format msgid "%P: dynreloc miscount for %B, section %A\n" msgstr "%P: помилки у обчиÑленні динамічного переÑÑƒÐ²Ð°Ð½Ð½Ñ Ð´Ð»Ñ %B, розділ %A\n" -#: elf64-ppc.c:7076 +#: elf64-ppc.c:7999 msgid "%B: .opd is not a regular array of opd entries" msgstr "%B: .opd не Ñ” звичайним маÑивом запиÑів opd" -#: elf64-ppc.c:7085 +#: elf64-ppc.c:8009 +#, c-format msgid "%B: unexpected reloc type %u in .opd section" msgstr "%B: неочікуваний тип переÑуваннÑ, %u, у розділі .opd" -#: elf64-ppc.c:7106 +#: elf64-ppc.c:8031 +#, c-format msgid "%B: undefined sym `%s' in .opd section" msgstr "%B: невизначений Ñимвол, «%s» у розділі .opd" -#: elf64-ppc.c:7664 +#: elf64-ppc.c:8600 msgid "%H __tls_get_addr lost arg, TLS optimization disabled\n" msgstr "%H __tls_get_addr втрачено аргумент, оптимізацію TLS вимкнено\n" -#: elf64-ppc.c:8003 elf64-ppc.c:8564 +#: elf64-ppc.c:8943 elf64-ppc.c:9580 #, c-format msgid "%s defined on removed toc entry" msgstr "%s визначено у вилученому запиÑÑ– toc" -#: elf64-ppc.c:8521 -msgid "%P: %H: %s relocation references optimized away TOC entry\n" -msgstr "%P: %H: переÑÑƒÐ²Ð°Ð½Ð½Ñ %s поÑилаєтьÑÑ Ð½Ð° уÑунутий у результаті оптимізації Ð·Ð°Ð¿Ð¸Ñ TOC\n" +#: elf64-ppc.c:9308 +#, c-format +msgid "%H: toc optimization is not supported for %s instruction.\n" +msgstr "%H: Ð´Ð»Ñ Ñ–Ð½Ñтрукції %s не передбачено підтримки оптимізації toc.\n" + +#: elf64-ppc.c:9537 +#, c-format +msgid "%H: %s references optimized away TOC entry\n" +msgstr "%H: %s поÑилаєтьÑÑ Ð½Ð° уÑунутий у результаті оптимізації Ð·Ð°Ð¿Ð¸Ñ TOC\n" -#: elf64-ppc.c:9598 -msgid "%P: cannot find opd entry toc for %s\n" -msgstr "%P: не вдалоÑÑ Ð·Ð½Ð°Ð¹Ñ‚Ð¸ Ð·Ð°Ð¿Ð¸Ñ opd у toc Ð´Ð»Ñ %s\n" +#: elf64-ppc.c:10878 +msgid "%P: cannot find opd entry toc for `%T'\n" +msgstr "`%P: не вдалоÑÑ Ð·Ð½Ð°Ð¹Ñ‚Ð¸ Ð·Ð°Ð¿Ð¸Ñ opd у toc Ð´Ð»Ñ Â«%T»\n" -#: elf64-ppc.c:9680 +#: elf64-ppc.c:10969 msgid "%P: long branch stub `%s' offset overflow\n" msgstr "%P: Ð¿ÐµÑ€ÐµÐ¿Ð¾Ð²Ð½ÐµÐ½Ð½Ñ Ð²Ñ–Ð´Ñтупу шаблона довгої гілки, «%s»\n" -#: elf64-ppc.c:9739 +#: elf64-ppc.c:11028 msgid "%P: can't find branch stub `%s'\n" msgstr "%P: не вдалоÑÑ Ð·Ð½Ð°Ð¹Ñ‚Ð¸ шаблон Ñ€Ð¾Ð·Ð³Ð°Ð»ÑƒÐ¶ÐµÐ½Ð½Ñ Â«%s»\n" -#: elf64-ppc.c:9801 elf64-ppc.c:9943 -msgid "%P: linkage table error against `%s'\n" -msgstr "%P: помилка у таблиці ÐºÐ¾Ð¼Ð¿Ð¾Ð½ÑƒÐ²Ð°Ð½Ð½Ñ Ñ‰Ð¾Ð´Ð¾ «%s»\n" +#: elf64-ppc.c:11092 elf64-ppc.c:11244 elf64-ppc.c:13052 +#, c-format +msgid "%P: linkage table error against `%T'\n" +msgstr "%P: помилка у таблиці ÐºÐ¾Ð¼Ð¿Ð¾Ð½ÑƒÐ²Ð°Ð½Ð½Ñ Ñ‰Ð¾Ð´Ð¾ «%T»\n" -#: elf64-ppc.c:10126 +#: elf64-ppc.c:11454 msgid "%P: can't build branch stub `%s'\n" msgstr "%P: не вдалоÑÑ Ð¿Ð¾Ð±ÑƒÐ´ÑƒÐ²Ð°Ñ‚Ð¸ шаблон Ñ€Ð¾Ð·Ð³Ð°Ð»ÑƒÐ¶ÐµÐ½Ð½Ñ Â«%s»\n" -#: elf64-ppc.c:10941 +#: elf64-ppc.c:12227 +#, c-format msgid "%B section %A exceeds stub group size" msgstr "Розділ %B, %A, перевищує розміри групи шаблонів" -#: elf64-ppc.c:11666 elf64-ppc.c:11699 -msgid "%P: %s offset too large for .eh_frame sdata4 encoding" -msgstr "%P: відÑтуп %s Ñ” надто великим Ð´Ð»Ñ ÐºÐ¾Ð´ÑƒÐ²Ð°Ð½Ð½Ñ sdata4 .eh_frame" - -#: elf64-ppc.c:11744 +#: elf64-ppc.c:13331 msgid "%P: stubs don't match calculated size\n" msgstr "%P: шаблони не відповідають обчиÑленому розміру\n" -#: elf64-ppc.c:11756 +#: elf64-ppc.c:13343 #, c-format msgid "" "linker stubs in %u group%s\n" @@ -2822,845 +4487,1144 @@ msgid "" " toc adjust %lu\n" " long branch %lu\n" " long toc adj %lu\n" -" plt call %lu" +" plt call %lu\n" +" plt call toc %lu\n" +" global entry %lu" msgstr "" "шаблони компонувальника у %u групах %s\n" " гілка %lu\n" " кориг. toc %lu\n" " довга гілка %lu\n" " д. кор. toc %lu\n" -" plt-виклик %lu" +" plt-виклик %lu\n" +" toc вик. plt %lu\n" +" заг. Ð·Ð°Ð¿Ð¸Ñ %lu" + +#: elf64-ppc.c:13665 +#, c-format +msgid "%H: %s used with TLS symbol `%T'\n" +msgstr "%H: %s викориÑтовуєтьÑÑ Ð· Ñимволом TLS «%T»\n" + +#: elf64-ppc.c:13667 +#, c-format +msgid "%H: %s used with non-TLS symbol `%T'\n" +msgstr "%H: %s викориÑтовуєтьÑÑ Ð· Ñимволом поза 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: у виклику «%T» не виÑтачає nop, Ð²Ñ–Ð´Ð½Ð¾Ð²Ð»ÐµÐ½Ð½Ñ toc неможливе; зберіть повторно з -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 "%P: %H: у виклику «%T» не виÑтачає nop, Ð²Ñ–Ð´Ð½Ð¾Ð²Ð»ÐµÐ½Ð½Ñ toc неможливе (-mcmodel=small Ð´Ð»Ñ ÐºÐ¾Ñ€Ð¸Ð³ÑƒÐ²Ð°Ð½Ð½Ñ ÑˆÐ°Ð±Ð»Ð¾Ð½Ð°)\n" + +#: elf64-ppc.c:14440 +#, c-format +msgid "%P: %B: unknown relocation type %d for `%T'\n" +msgstr "%P: %B: невідомий тип переÑуваннÑ, %d, Ð´Ð»Ñ Â«%T»\n" -#: elf64-ppc.c:12042 -msgid "%P: %H: %s used with TLS symbol %s\n" -msgstr "%P: %H: %s викориÑтовуєтьÑÑ Ð· Ñимволом TLS %s\n" +#: elf64-ppc.c:14994 +#, c-format +msgid "%H: %s for indirect function `%T' unsupported\n" +msgstr "%H: підтримки %s Ð´Ð»Ñ Ð¾Ð¿Ð¾Ñередкованої функції «%T» не передбачено\n" + +#: elf64-ppc.c:15132 +#, c-format +msgid "%P: %B: %s is not supported for `%T'\n" +msgstr "%P: %B: підтримки %s Ð´Ð»Ñ Â«%T» не передбачено\n" -#: elf64-ppc.c:12043 -msgid "%P: %H: %s used with non-TLS symbol %s\n" -msgstr "%P: %H: %s викориÑтовуєтьÑÑ Ð· Ñимволом поза TLS %s\n" +#: elf64-ppc.c:15287 +#, c-format +msgid "%H: error: %s not a multiple of %u\n" +msgstr "%H: помилка: %s не Ñ” кратним до %u\n" -#: elf64-ppc.c:12556 -msgid "%P: %H: automatic multiple TOCs not supported using your crt files; recompile with -mminimal-toc or upgrade gcc\n" -msgstr "%P: %H: автоматичне ÑÑ‚Ð²Ð¾Ñ€ÐµÐ½Ð½Ñ Ð´ÐµÐºÑ–Ð»ÑŒÐºÐ¾Ñ… TOC не можна виконати на оÑнові ваших файлів crt; виконайте повторне Ð·Ð±Ð¸Ñ€Ð°Ð½Ð½Ñ Ð· -mminimal-toc або оновіть gcc\n" +#: elf64-ppc.c:15309 +#, c-format +msgid "%H: unresolvable %s against `%T'\n" +msgstr "%H: нерозв’Ñзне %s щодо «%T»\n" -#: elf64-ppc.c:12562 -msgid "%P: %H: sibling call optimization to `%s' does not allow automatic multiple TOCs; recompile with -mminimal-toc or -fno-optimize-sibling-calls, or make `%s' extern\n" -msgstr "%P: %H: у разі викориÑÑ‚Ð°Ð½Ð½Ñ Ð¾Ð¿Ñ‚Ð¸Ð¼Ñ–Ð·Ð°Ñ†Ñ–Ñ— викликів однакових функцій Ð´Ð»Ñ Â«%s» не даÑÑ‚ÑŒ змоги Ñтворити декілька TOC; виконайте повторне Ð·Ð±Ð¸Ñ€Ð°Ð½Ð½Ñ Ð· -mminimal-toc або -fno-optimize-sibling-calls чи зробіть «%s» зовнішньою (extern)\n" +#: elf64-ppc.c:15406 +#, c-format +msgid "%H: %s against `%T': error %d\n" +msgstr "%H: %s щодо «%T»: помилка %d\n" -#: elf64-ppc.c:13286 -msgid "%P: %B: relocation %s is not supported for symbol %s\n" -msgstr "%P: %B: підтримки переÑÑƒÐ²Ð°Ð½Ð½Ñ %s Ð´Ð»Ñ Ñимволу %s не передбачено\n" +#: elf64-ppc.c:15801 elf64-ppc.c:15830 +msgid "%P: %s offset too large for .eh_frame sdata4 encoding" +msgstr "%P: відÑтуп %s Ñ” надто великим Ð´Ð»Ñ ÐºÐ¾Ð´ÑƒÐ²Ð°Ð½Ð½Ñ sdata4 .eh_frame" -#: elf64-ppc.c:13446 -msgid "%P: %H: error: %s not a multiple of %u\n" -msgstr "%P: %H: помилка: %s не Ñ” кратним до %u\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: переÑÑƒÐ²Ð°Ð½Ð½Ñ Ð½Ðµ-PLT «%s» Ð´Ð»Ñ Ñимволу, визначеного у бібліотеці Ñпільного викориÑтаннÑ, Ñ– доÑтупного з виконуваного файла (Ñлід повторно зібрати файл із -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: помилка: невирівнÑний тип переÑÑƒÐ²Ð°Ð½Ð½Ñ %d у %08x, переÑÑƒÐ²Ð°Ð½Ð½Ñ %08x\n" +msgid "%B: error: unaligned relocation type %d at %08x reloc %08x\n" +msgstr "%B: помилка: невирівнÑний тип переÑÑƒÐ²Ð°Ð½Ð½Ñ %d у %08x, переÑÑƒÐ²Ð°Ð½Ð½Ñ %08x\n" -#: elf64-sparc.c:446 +#: elf64-sparc.c:460 msgid "%B: Only registers %%g[2367] can be declared using STT_REGISTER" msgstr "%B: за допомогою STT_REGISTER можна оголошувати лише регіÑтри %%g[2367]" -#: elf64-sparc.c:466 +#: elf64-sparc.c:481 +#, c-format msgid "Register %%g%d used incompatibly: %s in %B, previously %s in %B" msgstr "ÐеÑуміÑне викориÑÑ‚Ð°Ð½Ð½Ñ Ñ€ÐµÐ³Ñ–Ñтру %%g%d: %s у %B, раніше викориÑтано %s у %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 "Символ «%s» належить до різних типів: REGISTER у %B Ñ– %s раніше у %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 "Символ «s» належить до різних типів: %s у %B Ñ– REGISTER раніше у %B" -#: elf64-sparc.c:687 +#: elf64-sparc.c:707 msgid "%B: linking UltraSPARC specific with HAL specific code" msgstr "%B: ÐºÐ¾Ð¼Ð¿Ð¾Ð½ÑƒÐ²Ð°Ð½Ð½Ñ UltraSPARC-Ñпецифічного та HAL-Ñпецифічного коду" -#: elf64-x86-64.c:1427 +#: elf64-x86-64.c:1923 +msgid "hidden symbol " +msgstr "прихований Ñимвол " + +#: elf64-x86-64.c:1926 +msgid "internal symbol " +msgstr "внутрішній Ñимвол " + +#: elf64-x86-64.c:1929 +msgid "protected symbol " +msgstr "захищений Ñимвол " + +#: elf64-x86-64.c:1932 +msgid "symbol " +msgstr "Ñимвол " + +#: elf64-x86-64.c:1933 elf64-x86-64.c:1943 +msgid "; recompile with -fPIC" +msgstr "; виконайте повторне Ð·Ð±Ð¸Ñ€Ð°Ð½Ð½Ñ Ð· -fPIC" + +#: elf64-x86-64.c:1938 +msgid "undefined " +msgstr "невизначений " + +#: 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 "%B: переÑÑƒÐ²Ð°Ð½Ð½Ñ %s щодо %s%s«%s», не можна викориÑтовувати під Ñ‡Ð°Ñ ÑÑ‚Ð²Ð¾Ñ€ÐµÐ½Ð½Ñ Ð¾Ð±â€™Ñ”ÐºÑ‚Ð° Ñпільного викориÑтаннÑ%s" + +#: elf64-x86-64.c:2510 +#, c-format msgid "%B: relocation %s against symbol `%s' isn't supported in x32 mode" msgstr "%B: підтримки переÑÑƒÐ²Ð°Ð½Ð½Ñ %s щодо Ñимволу «%s» у режимі x32 не передбачено" -#: elf64-x86-64.c:1656 +#: elf64-x86-64.c:2633 +#, c-format msgid "%B: '%s' accessed both as normal and thread local symbol" msgstr "'%B: доÑтуп до «%s» виконуєтьÑÑ Ñк до звичайного Ñимволу та локального Ð´Ð»Ñ Ð¿Ð¾Ñ‚Ð¾ÐºÑƒ Ð²Ð¸ÐºÐ¾Ð½Ð°Ð½Ð½Ñ Ñимволу" -#: elf64-x86-64.c:3150 +#: 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: переÑÑƒÐ²Ð°Ð½Ð½Ñ %s щодо Ñимволу STT_GNU_IFUNC, «%s», міÑтить ненульовий доданок: %d" -#: elf64-x86-64.c:3411 -msgid "%B: relocation R_X86_64_GOTOFF64 against protected function `%s' can not be used when making a shared object" -msgstr "%B: не можна викориÑтовувати R_X86_64_GOTOFF64 переÑÑƒÐ²Ð°Ð½Ð½Ñ Ñ‰Ð¾Ð´Ð¾ захищеної функції «%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_X86_64_GOTOFF64 щодо невизначеного %s, «%s», не можна викориÑтовувати під Ñ‡Ð°Ñ ÑÑ‚Ð²Ð¾Ñ€ÐµÐ½Ð½Ñ Ð¾Ð±â€™Ñ”ÐºÑ‚Ð° Ñпільного викориÑтаннÑ" -#: elf64-x86-64.c:3523 -msgid "; recompile with -fPIC" -msgstr "; виконайте повторне Ð·Ð±Ð¸Ñ€Ð°Ð½Ð½Ñ Ð· -fPIC" +#: 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_X86_64_GOTOFF64 переÑÑƒÐ²Ð°Ð½Ð½Ñ Ñ‰Ð¾Ð´Ð¾ захищеної %s «%s» під Ñ‡Ð°Ñ ÑÑ‚Ð²Ð¾Ñ€ÐµÐ½Ð½Ñ Ð¾Ð±â€™Ñ”ÐºÑ‚Ð° Ñпільного викориÑтаннÑ" + +#: 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: доданок -0x%x у переÑуванні %s щодо Ñимволу «%s» за адреÑою 0x%lx у розділі «%A» перебуває поза межами припуÑтимого діапазону" + +#: 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: доданок 0x%x у переÑуванні %s щодо Ñимволу «%s» за адреÑою 0x%lx у розділі «%A» перебуває поза межами припуÑтимого діапазону" + +#: elf64-x86-64.c:5952 +#, c-format +msgid "%F%B: PC-relative offset overflow in PLT entry for `%s'\n" +msgstr "%F%B: Ð¿ÐµÑ€ÐµÐ¿Ð¾Ð²Ð½ÐµÐ½Ð½Ñ Ð·Ñуву відноÑно PC у запиÑÑ– PLT Ð´Ð»Ñ Â«%s»\n" -#: elf64-x86-64.c:3528 -msgid "%B: relocation %s against %s `%s' can not be used when making a shared object%s" -msgstr "%B: переÑÑƒÐ²Ð°Ð½Ð½Ñ %s щодо %s, «%s», не можна викориÑтовувати під Ñ‡Ð°Ñ ÑÑ‚Ð²Ð¾Ñ€ÐµÐ½Ð½Ñ Ð¾Ð±â€™Ñ”ÐºÑ‚Ð° Ñпільного викориÑтаннÑ%s" +#: elf64-x86-64.c:6019 +#, c-format +msgid "%F%B: branch displacement overflow in PLT entry for `%s'\n" +msgstr "%F%B: Ð¿ÐµÑ€ÐµÐ¿Ð¾Ð²Ð½ÐµÐ½Ð½Ñ Ð¿ÐµÑ€ÐµÐ¼Ñ–Ñ‰ÐµÐ½Ð½Ñ Ð³Ñ–Ð»Ð¾Ðº у запиÑÑ– PLT Ð´Ð»Ñ Â«%s»\n" -#: elf64-x86-64.c:3530 -msgid "%B: relocation %s against undefined %s `%s' can not be used when making a shared object%s" -msgstr "%B: переÑÑƒÐ²Ð°Ð½Ð½Ñ %s щодо невизначеного %s, «%s», не можна викориÑтовувати під Ñ‡Ð°Ñ ÑÑ‚Ð²Ð¾Ñ€ÐµÐ½Ð½Ñ Ð¾Ð±â€™Ñ”ÐºÑ‚Ð° Ñпільного викориÑтаннÑ%s" +#: elf64-x86-64.c:6072 +#, c-format +msgid "%F%B: PC-relative offset overflow in GOT PLT entry for `%s'\n" +msgstr "%F%B: Ð¿ÐµÑ€ÐµÐ¿Ð¾Ð²Ð½ÐµÐ½Ð½Ñ Ð·Ñуву відноÑно PC у запиÑÑ– PLT GOT Ð´Ð»Ñ Â«%s»\n" -#: elfcode.h:767 +#: elf64-x86-64.c:7663 #, c-format -msgid "warning: %s has a corrupt string table index - ignoring" -msgstr "попередженнÑ: покажчик таблиці Ñ€Ñдків %s пошкоджено — ігноруєтьÑÑ" +msgid "%F: failed to create BND PLT section\n" +msgstr "%F: не вдалоÑÑ Ñтворити розділ PLT BND\n" -#: elfcode.h:1177 +#: elf64-x86-64.c:7713 #, c-format -msgid "%s: version count (%ld) does not match symbol count (%ld)" -msgstr "%s: лічильник верÑÑ–Ñ— (%ld) не збігаєтьÑÑ Ð· лічильником Ñимволу (%ld)" +msgid "%F: failed to create BND PLT .eh_frame section\n" +msgstr "%F: не вдалоÑÑ Ñтворити розділ .eh_frame PLT BND\n" + +#: elfcode.h:760 +msgid "warning: %B has a corrupt string table index - ignoring" +msgstr "попередженнÑ: покажчик таблиці Ñ€Ñдків %B пошкоджено — ігноруєтьÑÑ" -#: elfcode.h:1431 +#: elfcode.h:1193 #, c-format -msgid "%s(%s): relocation %d has invalid symbol index %ld" -msgstr "%s(%s): переÑÑƒÐ²Ð°Ð½Ð½Ñ %d міÑтить некоректний Ñ–Ð½Ð´ÐµÐºÑ Ñимволу, %ld" +msgid "%B: version count (%ld) does not match symbol count (%ld)" +msgstr "%B: лічильник верÑÑ–Ñ— (%ld) не збігаєтьÑÑ Ð· лічильником Ñимволу (%ld)" -#: elfcore.h:312 +#: elfcode.h:1448 +#, c-format +msgid "%B(%A): relocation %d has invalid symbol index %ld" +msgstr "%B(%A): переÑÑƒÐ²Ð°Ð½Ð½Ñ %d міÑтить некоректний Ñ–Ð½Ð´ÐµÐºÑ Ñимволу, %ld" + +#: elfcore.h:300 +#, c-format msgid "Warning: %B is truncated: expected core file size >= %lu, found: %lu." msgstr "ПопередженнÑ: %B обрізано: очікуваний розмір оÑновного файла >= %lu, виÑвлено: %lu." -#: elflink.c:1117 +#: elflink.c:1336 +#, c-format msgid "%s: TLS definition in %B section %A mismatches non-TLS definition in %B section %A" msgstr "%s: Ð²Ð¸Ð·Ð½Ð°Ñ‡ÐµÐ½Ð½Ñ TLS у %B, розділ %A, не збігаєтьÑÑ Ð· визначеннÑм не-TLS у розділі %B %A" -#: elflink.c:1121 +#: elflink.c:1342 +#, c-format msgid "%s: TLS reference in %B mismatches non-TLS reference in %B" msgstr "%s: поÑÐ¸Ð»Ð°Ð½Ð½Ñ TLS у %B не збігаєтьÑÑ Ð· поÑиланнÑм не-TLS у %B" -#: elflink.c:1125 +#: elflink.c:1348 +#, c-format msgid "%s: TLS definition in %B section %A mismatches non-TLS reference in %B" msgstr "%s: Ð²Ð¸Ð·Ð½Ð°Ñ‡ÐµÐ½Ð½Ñ TLS у %B, розділ %A, не збігаєтьÑÑ Ð· поÑиланнÑм не-TLS у розділі %B, %A" -#: elflink.c:1129 +#: elflink.c:1354 +#, c-format msgid "%s: TLS reference in %B mismatches non-TLS definition in %B section %A" msgstr "%s: поÑÐ¸Ð»Ð°Ð½Ð½Ñ TLS у %B не збігаєтьÑÑ Ð· визначеннÑм не-TLS у розділі %B %A" -#: elflink.c:1762 +#: elflink.c:2015 +#, c-format msgid "%B: unexpected redefinition of indirect versioned symbol `%s'" msgstr "%B: неочікуване Ð¿ÐµÑ€ÐµÐ²Ð¸Ð·Ð½Ð°Ñ‡ÐµÐ½Ð½Ñ Ñимволу з непрÑмим визначеннÑм верÑÑ–Ñ—, «%s»" -#: elflink.c:2063 +#: elflink.c:2308 +#, c-format msgid "%B: version node not found for symbol %s" msgstr "%B: не знайдено вузла верÑÑ–Ñ— Ð´Ð»Ñ Ñимволу %s" -#: elflink.c:2154 -msgid "%B: bad reloc symbol index (0x%lx >= 0x%lx) for offset 0x%lx in section `%A'" -msgstr "%B: помилковий Ñ–Ð½Ð´ÐµÐºÑ Ñимволу переÑÑƒÐ²Ð°Ð½Ð½Ñ (0x%lx >= 0x%lx) Ð´Ð»Ñ Ð²Ñ–Ð´Ñтупу 0x%lx у розділі «%A»" +#: elflink.c:2397 +#, c-format +msgid "%B: bad reloc symbol index (%#lx >= %#lx) for offset %#Lx in section `%A'" +msgstr "%B: помилковий Ñ–Ð½Ð´ÐµÐºÑ Ñимволу переÑÑƒÐ²Ð°Ð½Ð½Ñ (%#lx >= %#lx) Ð´Ð»Ñ Ð²Ñ–Ð´Ñтупу %#Lx у розділі «%A»" -#: elflink.c:2165 -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: ненульовий Ñ–Ð½Ð´ÐµÐºÑ Ñимволу (0x%lx) Ð´Ð»Ñ Ð²Ñ–Ð´Ñтупу 0x%lx у розділі «%A», але у об’єктному файлі немає таблиці Ñимволів" +#: 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: ненульовий Ñ–Ð½Ð´ÐµÐºÑ Ñимволу (%#lx) Ð´Ð»Ñ Ð²Ñ–Ð´Ñтупу %#Lx у розділі «%A», але у об’єктному файлі немає таблиці Ñимволів" -#: elflink.c:2355 +#: elflink.c:2600 +#, c-format msgid "%B: relocation size mismatch in %B section %A" msgstr "%B: невідповідніÑÑ‚ÑŒ розміру переÑÑƒÐ²Ð°Ð½Ð½Ñ Ñƒ розділі %B %A" -#: elflink.c:2639 +#: elflink.c:2911 #, c-format msgid "warning: type and size of dynamic symbol `%s' are not defined" msgstr "попередженнÑ: тип Ñ– розмір динамічного Ñимволу «%s» не визначено" -#: elflink.c:3391 +#: elflink.c:2976 +msgid "%P: copy reloc against protected `%T' is dangerous\n" +msgstr "%P: переÑÑƒÐ²Ð°Ð½Ð½Ñ Ð· копіюваннÑм щодо захищеного «%T» Ñ” небезпечним\n" + +#: elflink.c:3777 +#, c-format msgid "%P: alternate ELF machine code found (%d) in %B, expecting %d\n" msgstr "%P: виÑвлено альтернативний машинний код ELF (%d) у %B, очікувалоÑÑ %d\n" -#: elflink.c:4037 +#: elflink.c:4438 +#, c-format msgid "%B: %s: invalid version %u (max %d)" msgstr "%B: %s: некоректна верÑÑ–Ñ, %u (макÑимум — %d)" -#: elflink.c:4073 +#: elflink.c:4475 +#, c-format msgid "%B: %s: invalid needed version %d" msgstr "%B: %s: некоректний Ð·Ð°Ð¿Ð¸Ñ Ð¿Ð¾Ñ‚Ñ€Ñ–Ð±Ð½Ð¾Ñ— верÑÑ–Ñ— %d" -#: elflink.c:4269 -msgid "Warning: alignment %u of common symbol `%s' in %B is greater than the alignment (%u) of its section %A" -msgstr "ПопередженнÑ: Ð²Ð¸Ñ€Ñ–Ð²Ð½ÑŽÐ²Ð°Ð½Ð½Ñ %u загального Ñимволу «%s» у %B перевищує Ð²Ð¸Ñ€Ñ–Ð²Ð½ÑŽÐ²Ð°Ð½Ð½Ñ (%u) його розділу %A" - -#: elflink.c:4275 -msgid "Warning: alignment %u of symbol `%s' in %B is smaller than %u in %B" -msgstr "ПопередженнÑ: Ð²Ð¸Ñ€Ñ–Ð²Ð½ÑŽÐ²Ð°Ð½Ð½Ñ %u Ñимволу «%s» у %B Ñ” меншим за %u у %B" - -#: elflink.c:4290 -msgid "Warning: size of symbol `%s' changed from %lu in %B to %lu in %B" -msgstr "ПопередженнÑ: розмір Ñимволу «%s» змінено з %lu у %B на %lu у %B" +#: elflink.c:4754 +#, c-format +msgid "Warning: size of symbol `%s' changed from %Lu in %B to %Lu in %B" +msgstr "ПопередженнÑ: розмір Ñимволу «%s» змінено з %Lu у %B на %Lu у %B" -#: elflink.c:4463 +#: elflink.c:4890 +#, c-format msgid "%B: undefined reference to symbol '%s'" msgstr "%B: невизначене поÑÐ¸Ð»Ð°Ð½Ð½Ñ Ð½Ð° Ñимвол «%s»" -#: elflink.c:4466 -msgid "note: '%s' is defined in DSO %B so try adding it to the linker command line" -msgstr "зауваженнÑ: «%s» визначено у %B DSO, отже Ñпробуємо додати його до командного Ñ€Ñдка компонувальника" +#: elflink.c:5903 +#, c-format +msgid "%B: stack size specified and %s set" +msgstr "%B: вказано розміри Ñтека Ñ– вÑтановлено %s" + +#: elflink.c:5907 +#, c-format +msgid "%B: %s not absolute" +msgstr "%B: %s не Ñ” абÑолютним" -#: elflink.c:5781 +#: elflink.c:6105 #, c-format msgid "%s: undefined version: %s" msgstr "%s: невизначена верÑÑ–Ñ: %s" -#: elflink.c:5849 +#: elflink.c:6682 msgid "%B: .preinit_array section is not allowed in DSO" msgstr "%B: не можна викориÑтовувати розділ .preinit_array у DSO" -#: elflink.c:7604 +#: elflink.c:8122 #, c-format msgid "undefined %s reference in complex symbol: %s" msgstr "невизначене поÑиланнÑ, %s, у Ñкладеному Ñимволі: %s" -#: elflink.c:7758 +#: elflink.c:8277 #, c-format msgid "unknown operator '%c' in complex symbol" msgstr "невідомий оператор, «%c», у Ñкладеному Ñимволі" -#: elflink.c:8097 elflink.c:8114 elflink.c:8151 elflink.c:8168 +#. 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: помилка: переÑÑƒÐ²Ð°Ð½Ð½Ñ Ð¿Ð¾ÑилаєтьÑÑ Ð½Ð° Ñимвол %s, Ñкий було вилучено заÑобом Ð·Ð±Ð¸Ñ€Ð°Ð½Ð½Ñ ÑміттÑ." + +#: elflink.c:8618 +msgid "%B:%A: error: try relinking with --gc-keep-exported enabled." +msgstr "%B:%A: помилка: Ñпробуйте виконати повторне ÐºÐ¾Ð¼Ð¿Ð¾Ð½ÑƒÐ²Ð°Ð½Ð½Ñ Ð· увімкненим --gc-keep-exported." + +#: 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: не вдалоÑÑ Ð²Ð¿Ð¾Ñ€Ñдкувати переÑуваннÑ: їхні розміри не Ñ” однаковими" -#: elflink.c:8128 elflink.c:8182 +#. 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: не вдалоÑÑ Ð²Ð¿Ð¾Ñ€Ñдкувати переÑуваннÑ: їхні розміри невідомі" -#: elflink.c:8233 +#: elflink.c:8998 msgid "Not enough memory to sort relocations" msgstr "ÐедоÑтатньо пам’ÑÑ‚Ñ– Ð´Ð»Ñ Ð²Ð¿Ð¾Ñ€ÑÐ´ÐºÐ¾Ð²ÑƒÐ²Ð°Ð½Ð½Ñ Ð¿ÐµÑ€ÐµÑувань" -#: elflink.c:8426 +#: elflink.c:9266 +#, c-format msgid "%B: Too many sections: %d (>= %d)" msgstr "%B: забагато розділів: %d (>= %d)" -#: elflink.c:8675 +#: elflink.c:9546 +#, c-format msgid "%B: internal symbol `%s' in %B is referenced by DSO" msgstr "%B: на внутрішній Ñимвол «%s» у %B Ñ–Ñнує поÑÐ¸Ð»Ð°Ð½Ð½Ñ Ð· DSO" -#: elflink.c:8677 +#: elflink.c:9549 +#, c-format msgid "%B: hidden symbol `%s' in %B is referenced by DSO" msgstr "%B: на прихований Ñимвол «%s» у %B Ñ–Ñнує поÑÐ¸Ð»Ð°Ð½Ð½Ñ Ð· DSO" -#: elflink.c:8679 +#: elflink.c:9552 +#, c-format msgid "%B: local symbol `%s' in %B is referenced by DSO" msgstr "%B: на локальний Ñимвол «%s» у %B Ñ–Ñнує поÑÐ¸Ð»Ð°Ð½Ð½Ñ Ð· DSO" -#: elflink.c:8776 +#: elflink.c:9638 +#, c-format msgid "%B: could not find output section %A for input section %A" msgstr "%B: не вдалоÑÑ Ð·Ð½Ð°Ð¹Ñ‚Ð¸ розділ Ð²Ð¸Ð²ÐµÐ´ÐµÐ½Ð½Ñ Ð´Ð°Ð½Ð¸Ñ… %A Ð´Ð»Ñ Ñ€Ð¾Ð·Ð´Ñ–Ð»Ñƒ Ð²Ð²ÐµÐ´ÐµÐ½Ð½Ñ Ð´Ð°Ð½Ð¸Ñ… %A" -#: elflink.c:8899 +#: elflink.c:9792 +#, c-format msgid "%B: protected symbol `%s' isn't defined" msgstr "%B: захищений Ñимвол «%s» не визначено" -#: elflink.c:8901 +#: elflink.c:9795 +#, c-format msgid "%B: internal symbol `%s' isn't defined" msgstr "%B: внутрішній Ñимвол «%s» не визначено" -#: elflink.c:8903 +#: elflink.c:9798 +#, c-format msgid "%B: hidden symbol `%s' isn't defined" msgstr "%B: прихований Ñимвол «%s» не визначено" -#: elflink.c:9432 +#: elflink.c:9829 +#, c-format +msgid "%B: No symbol version section for versioned symbol `%s'" +msgstr "%B: немає розділу верÑÑ–Ñ— Ñимволів Ð´Ð»Ñ Ñимволу з верÑією «%s»" + +#: elflink.c:10436 +#, c-format msgid "error: %B: size of section %A is not multiple of address size" msgstr "помилка: %B: розмір розділу %A не Ñ” кратним до розміру адреÑи" -#: elflink.c:9479 -msgid "error: %B contains a reloc (0x%s) for section %A that references a non-existent global symbol" -msgstr "помилка: %B міÑтить переÑÑƒÐ²Ð°Ð½Ð½Ñ (0x%s) Ð´Ð»Ñ Ñ€Ð¾Ð·Ð´Ñ–Ð»Ñƒ %A, Ñке поÑилаєтьÑÑ Ð½Ð° загальний Ñимвол, Ñкого не Ñ–Ñнує" +#: elflink.c:10481 +#, c-format +msgid "error: %B contains a reloc (%#Lx) for section %A that references a non-existent global symbol" +msgstr "помилка: %B міÑтить переÑÑƒÐ²Ð°Ð½Ð½Ñ (%#Lx) Ð´Ð»Ñ Ñ€Ð¾Ð·Ð´Ñ–Ð»Ñƒ %A, Ñке поÑилаєтьÑÑ Ð½Ð° загальний Ñимвол, Ñкого не Ñ–Ñнує" -#: elflink.c:10214 +#: elflink.c:11236 +#, c-format msgid "%A has both ordered [`%A' in %B] and unordered [`%A' in %B] sections" msgstr "%A міÑтить одразу впорÑдкований [«%A» у %B] Ñ– невпорÑдкований [«%A» у %B] розділи" -#: elflink.c:10219 +#: elflink.c:11242 #, c-format msgid "%A has both ordered and unordered sections" msgstr "%A міÑтить одразу впорÑдкований Ñ– невпорÑдкований розділи" -#: elflink.c:10784 +#: elflink.c:11344 +msgid "%B: no symbol found for import library" +msgstr "%B: не знайдено Ñимволів Ð´Ð»Ñ Ð±Ñ–Ð±Ð»Ñ–Ð¾Ñ‚ÐµÐºÐ¸ імпортуваннÑ" + +#: elflink.c:11966 +#, c-format msgid "%B: file class %s incompatible with %s" msgstr "%B: ÐºÐ»Ð°Ñ Ñ„Ð°Ð¹Ð»Ñ–Ð² %s Ñ” неÑуміÑним з %s" -#: elflink.c:11093 elflink.c:11137 -msgid "%B: could not find output section %s" -msgstr "%B: не вдалоÑÑ Ð·Ð½Ð°Ð¹Ñ‚Ð¸ розділ Ð²Ð¸Ð²ÐµÐ´ÐµÐ½Ð½Ñ Ð´Ð°Ð½Ð¸Ñ…, %s" +#: elflink.c:12183 +msgid "%B: failed to generate import library" +msgstr "%B: не вдалоÑÑ Ñтворити бібліотеку імпортуваннÑ" -#: elflink.c:11098 +#: elflink.c:12302 #, c-format msgid "warning: %s section has zero size" msgstr "попередженнÑ: розмір розділу %s Ñ” нульовим" -#: elflink.c:11143 +#: elflink.c:12350 #, c-format msgid "warning: section '%s' is being made into a note" msgstr "попередженнÑ: розділ «%s» перетворено на нотатку" -#: elflink.c:11212 +#: elflink.c:12442 msgid "%P%X: read-only segment has dynamic relocations.\n" msgstr "%P%X: Ñегмент, призначений лише Ð´Ð»Ñ Ñ‡Ð¸Ñ‚Ð°Ð½Ð½Ñ, міÑтить динамічні переÑуваннÑ.\n" -#: elflink.c:11215 +#: elflink.c:12445 msgid "%P: warning: creating a DT_TEXTREL in a shared object.\n" msgstr "%P: попередженнÑ: Ñтворюємо DT_TEXTREL у об’єкті Ñпільного викориÑтаннÑ.\n" -#: elflink.c:11402 +#: elflink.c:12570 msgid "%P%X: can not read symbols: %E\n" msgstr "%P%X: не вдалоÑÑ Ð¿Ñ€Ð¾Ñ‡Ð¸Ñ‚Ð°Ñ‚Ð¸ Ñимволи: %E\n" -#: elflink.c:11792 -msgid "Removing unused section '%s' in file '%B'" -msgstr "Вилучаємо невикориÑтовуваний розділ «%s» у файлі «%B»" +#: elflink.c:12732 +msgid "%F%P: corrupt input: %B\n" +msgstr "%F%P: пошкоджені вхідні дані: %B\n" -#: elflink.c:11998 -msgid "Warning: gc-sections option ignored" -msgstr "ПопередженнÑ: параметр gc-sections проігноровано" +#: elflink.c:13421 +#, c-format +msgid "%B: %A+%#Lx: No symbol found for INHERIT" +msgstr "%B: %A+%#Lx: не знайдено Ñимволу Ð´Ð»Ñ INHERIT" -#: elflink.c:12277 +#: elflink.c:13597 #, c-format msgid "Unrecognized INPUT_SECTION_FLAG %s\n" msgstr "Ðерозпізнаний INPUT_SECTION_FLAG, %s\n" -#: elfxx-mips.c:1234 +#: elfxx-mips.c:1444 msgid "static procedure (no name)" msgstr "Ñтатична процедура (без назви)" -#: elfxx-mips.c:5259 +#: elfxx-mips.c:5627 msgid "MIPS16 and microMIPS functions cannot call each other" msgstr "Функції MIPS16 Ñ– microMIPS не можуть викликати одна одну" -#: elfxx-mips.c:5856 -msgid "%B: %A+0x%lx: Direct jumps between ISA modes are not allowed; consider recompiling with interlinking enabled." -msgstr "%B: %A+0x%lx: безпоÑередні переходи між режимами ISA заборонено; варто виконати повторне Ð·Ð±Ð¸Ñ€Ð°Ð½Ð½Ñ Ð· увімкненим взаємним компонуваннÑм." +#: elfxx-mips.c:6370 +msgid "%X%H: Unsupported JALX to the same ISA mode\n" +msgstr "%X%H: непідтримуваний JALX до того Ñамого режиму ISA\n" + +#: elfxx-mips.c:6403 +msgid "%X%H: Unsupported jump between ISA modes; consider recompiling with interlinking enabled\n" +msgstr "%X%H: непідтримуваний перехід між режимами ISA; Ñпробуйте повторно зібрати з увімкненим взаємним компонуваннÑм\n" + +#: elfxx-mips.c:6444 +msgid "%X%H: Cannot convert branch between ISA modes to JALX: relocation out of range\n" +msgstr "%X%H: не можна перетворювати Ñ€Ð¾Ð·Ð³Ð°Ð»ÑƒÐ¶ÐµÐ½Ð½Ñ Ð¼Ñ–Ð¶ режимами ISA на JALX: переÑÑƒÐ²Ð°Ð½Ð½Ñ Ð·Ð° межі припуÑтимого діапазону\n" + +#: elfxx-mips.c:6456 +msgid "%X%H: Unsupported branch between ISA modes\n" +msgstr "%X%H: непідтримуване Ñ€Ð¾Ð·Ð³Ð°Ð»ÑƒÐ¶ÐµÐ½Ð½Ñ Ð¼Ñ–Ð¶ режимами ISA\n" -#: elfxx-mips.c:6519 elfxx-mips.c:6742 +#: elfxx-mips.c:7134 elfxx-mips.c:7369 +#, c-format msgid "%B: Warning: bad `%s' option size %u smaller than its header" msgstr "%B: попередженнÑ: помилковий розмір «%s», %u, менший за його заголовок" -#: elfxx-mips.c:7495 elfxx-mips.c:7620 +#: elfxx-mips.c:8125 elfxx-mips.c:8251 +#, c-format msgid "%B: Warning: cannot determine the target function for stub section `%s'" msgstr "%B: попередженнÑ: не вдалоÑÑ Ð²Ð¸Ð·Ð½Ð°Ñ‡Ð¸Ñ‚Ð¸ функцію Ð¿Ñ€Ð¸Ð·Ð½Ð°Ñ‡ÐµÐ½Ð½Ñ Ð´Ð»Ñ Ñ€Ð¾Ð·Ð´Ñ–Ð»Ñƒ шаблона, «%s»" -#: elfxx-mips.c:7749 +#: elfxx-mips.c:8383 +#, c-format msgid "%B: Malformed reloc detected for section %s" msgstr "%B: Ð´Ð»Ñ Ñ€Ð¾Ð·Ð´Ñ–Ð»Ñƒ %s виÑвлено помилку у форматуванні перенеÑеннÑ" -#: elfxx-mips.c:7801 +#: elfxx-mips.c:8459 +#, c-format msgid "%B: GOT reloc at 0x%lx not expected in executables" msgstr "%B: переÑÑƒÐ²Ð°Ð½Ð½Ñ GOT у 0x%lx Ñ” неочікуваним у виконуваних файлах" -#: elfxx-mips.c:7930 +#: elfxx-mips.c:8597 +#, c-format msgid "%B: CALL16 reloc at 0x%lx not against global symbol" msgstr "%B: переÑÑƒÐ²Ð°Ð½Ð½Ñ CALL16 у 0x%lx не відноÑно загального Ñимволу" -#: elfxx-mips.c:8645 +#: elfxx-mips.c:9219 #, c-format msgid "non-dynamic relocations refer to dynamic symbol %s" msgstr "нединамічні переÑÑƒÐ²Ð°Ð½Ð½Ñ Ð¿Ð¾ÑилаютьÑÑ Ð½Ð° динамічний Ñимвол, %s" -#: elfxx-mips.c:9347 +#: 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: не вдалоÑÑ Ð·Ð½Ð°Ð¹Ñ‚Ð¸ відповідне переÑÑƒÐ²Ð°Ð½Ð½Ñ LO16 щодо «%s» Ð´Ð»Ñ %s у 0x%lx у розділі «%A»" -#: elfxx-mips.c:9486 +#: elfxx-mips.c:10279 msgid "small-data section exceeds 64KB; lower small-data size limit (see option -G)" msgstr "розділ малих даних перевищує 64 кБ; нижчий за Ð¾Ð±Ð¼ÐµÐ¶ÐµÐ½Ð½Ñ Ñ€Ð¾Ð·Ð¼Ñ–Ñ€Ñƒ малих даних (див. параметр -G)" -#: elfxx-mips.c:9505 -msgid "JALX to a non-word-aligned address" -msgstr "JALX до не вирівнÑної за Ñловом адреÑи" +#: elfxx-mips.c:10298 +msgid "Cannot convert a jump to JALX for a non-word-aligned address" +msgstr "Ðеможливо перетворити перехід на JALX Ð´Ð»Ñ Ð°Ð´Ñ€ÐµÑи, Ñку не вирівнÑно на межу Ñлова" -#: elfxx-mips.c:13266 -#, c-format -msgid "%s: illegal section name `%s'" -msgstr "%s: некоректна назва розділу, «%s»" +#: elfxx-mips.c:10301 +msgid "Jump to a non-word-aligned address" +msgstr "Перехід до не вирівнÑної за Ñловом адреÑи" -#: elfxx-mips.c:13645 elfxx-mips.c:13671 -msgid "Warning: %B uses -msingle-float, %B uses -mdouble-float" -msgstr "ПопередженнÑ: у %B викориÑтано -msingle-float, а у %B — -mdouble-float" +#: elfxx-mips.c:10302 +msgid "Jump to a non-instruction-aligned address" +msgstr "JALX до не вирівнÑної за інÑтрукцією адреÑи" -#: elfxx-mips.c:13657 elfxx-mips.c:13713 -msgid "Warning: %B uses -msingle-float, %B uses -mips32r2 -mfp64" -msgstr "ПопередженнÑ: у %B викориÑтано -msingle-float, а у %B — -mips32r2 -mfp64" +#: elfxx-mips.c:10305 +msgid "Cannot convert a branch to JALX for a non-word-aligned address" +msgstr "Ðеможливо перетворити Ñ€Ð¾Ð·Ð³Ð°Ð»ÑƒÐ¶ÐµÐ½Ð½Ñ Ð½Ð° JALX Ð´Ð»Ñ Ð°Ð´Ñ€ÐµÑи, Ñку не вирівнÑно на межу Ñлова" -#: elfxx-mips.c:13683 elfxx-mips.c:13719 -msgid "Warning: %B uses -mdouble-float, %B uses -mips32r2 -mfp64" -msgstr "ПопередженнÑ: у %B викориÑтано -mdouble-float, а у %B — -mips32r2 -mfp64" +#: elfxx-mips.c:10307 +msgid "Branch to a non-instruction-aligned address" +msgstr "Ð Ð¾Ð·Ð³Ð°Ð»ÑƒÐ¶ÐµÐ½Ð½Ñ Ð´Ð¾ не вирівнÑної за інÑтрукцією адреÑи" -#: elfxx-mips.c:13761 -msgid "%B: endianness incompatible with that of the selected emulation" -msgstr "%B: порÑдок байтів Ñ” неÑуміÑним з порÑдком байтів вибраної емулÑції" +#: elfxx-mips.c:10309 +msgid "PC-relative load from unaligned address" +msgstr "Ð·Ð°Ð²Ð°Ð½Ñ‚Ð°Ð¶ÐµÐ½Ð½Ñ Ð²Ñ–Ð´Ð½Ð¾Ñно PC з невирівнÑної адреÑи" -#: elfxx-mips.c:13772 -msgid "%B: ABI is incompatible with that of the selected emulation" -msgstr "%B: ABI Ñ” неÑуміÑним з ABI вибраної емулÑції" +#: 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» %ld з «%A» перебуває поза межами діапазону ADDIUPC" -#: elfxx-mips.c:13856 +#: elfxx-mips.c:14174 +#, c-format +msgid "%B: Unknown architecture %s" +msgstr "%B: невідома архітектура %s" + +#: elfxx-mips.c:14704 +#, c-format +msgid "%B: illegal section name `%A'" +msgstr "%B: некоректна назва розділу, «%A»" + +#: elfxx-mips.c:14981 msgid "%B: warning: linking abicalls files with non-abicalls files" msgstr "%B: попередженнÑ: ÐºÐ¾Ð¼Ð¿Ð¾Ð½ÑƒÐ²Ð°Ð½Ð½Ñ Ñ„Ð°Ð¹Ð»Ñ–Ð² abicalls з файлами без abicalls" -#: elfxx-mips.c:13873 +#: elfxx-mips.c:14998 msgid "%B: linking 32-bit code with 64-bit code" msgstr "%B: ÐºÐ¾Ð¼Ð¿Ð¾Ð½ÑƒÐ²Ð°Ð½Ð½Ñ 32-бітового коду з 64-бітовим кодом" -#: elfxx-mips.c:13901 +#: 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: компонуємо модуль %s з попередніми модулÑми %s" -#: elfxx-mips.c:13924 +#: elfxx-mips.c:15054 +#, c-format msgid "%B: ABI mismatch: linking %s module with previous %s modules" msgstr "%B: невідповідніÑÑ‚ÑŒ ABI: ÐºÐ¾Ð¼Ð¿Ð¾Ð½ÑƒÐ²Ð°Ð½Ð½Ñ Ð¼Ð¾Ð´ÑƒÐ»Ñ %s з попередніми модулÑми %s" -#: elfxx-mips.c:13948 +#: elfxx-mips.c:15079 +#, c-format msgid "%B: ASE mismatch: linking %s module with previous %s modules" msgstr "%B: невідповідніÑÑ‚ÑŒ ASE: ÐºÐ¾Ð¼Ð¿Ð¾Ð½ÑƒÐ²Ð°Ð½Ð½Ñ Ð¼Ð¾Ð´ÑƒÐ»Ñ %s з попередніми модулÑми %s" -#: elfxx-mips.c:14106 +#: elfxx-mips.c:15214 +msgid "Warning: %B uses unknown floating point ABI %d (set by %B), %B uses unknown floating point ABI %d" +msgstr "ПопередженнÑ: %B викориÑтовує невідомий ABI роботи з чиÑлами з рухомою крапкою, %d, (вÑтановлено %B), а %B викориÑтовує невідомий ABI Ð´Ð»Ñ Ñ‡Ð¸Ñел з рухомою крапкою, %d" + +#: elfxx-mips.c:15220 +#, c-format +msgid "Warning: %B uses unknown floating point ABI %d (set by %B), %B uses %s" +msgstr "ПопередженнÑ: %B викориÑтовує невідомий ABI роботи з чиÑлами з рухомою крапкою, %d, (вÑтановлено %B), а %B викориÑтовує %s" + +#: elfxx-mips.c:15226 +#, c-format +msgid "Warning: %B uses %s (set by %B), %B uses unknown floating point ABI %d" +msgstr "ПопередженнÑ: %B викориÑтовує %s (вÑтановлено %B), а %B викориÑтовує невідомий ABI Ð´Ð»Ñ Ñ€Ð¾Ð±Ð¾Ñ‚Ð¸ з чиÑлами з рухомою крапкою, %d" + +#: elfxx-mips.c:15240 +#, c-format +msgid "Warning: %B uses %s (set by %B), %B uses %s" +msgstr "ПопередженнÑ: %B викориÑтовує %s (вÑтановлено %B), а %B викориÑтовує %s" + +#: elfxx-mips.c:15259 +#, c-format +msgid "Warning: %B uses %s (set by %B), %B uses unknown MSA ABI %d" +msgstr "ПопередженнÑ: %B викориÑтовує %s (вÑтановлено %B), а %B викориÑтовує невідомий ABI MSA, %d" + +#: elfxx-mips.c:15271 +#, c-format +msgid "Warning: %B uses unknown MSA ABI %d (set by %B), %B uses %s" +msgstr "ПопередженнÑ: %B викориÑтовує невідомий ABI MSA, %d, (вÑтановлено %B), а %B викориÑтовує %s" + +#: elfxx-mips.c:15280 +#, c-format +msgid "Warning: %B uses unknown MSA ABI %d (set by %B), %B uses unknown MSA ABI %d" +msgstr "ПопередженнÑ: %B викориÑтовує невідомий ABI MSA %d (вÑтановлено %B), а %B викориÑтовує невідомий ABI MSA, %d" + +#: elfxx-mips.c:15342 +msgid "%B: endianness incompatible with that of the selected emulation" +msgstr "%B: порÑдок байтів Ñ” неÑуміÑним з порÑдком байтів вибраної емулÑції" + +#: elfxx-mips.c:15356 +msgid "%B: ABI is incompatible with that of the selected emulation" +msgstr "%B: ABI Ñ” неÑуміÑним з ABI вибраної емулÑції" + +#: elfxx-mips.c:15408 +msgid "%B: warning: Inconsistent ISA between e_flags and .MIPS.abiflags" +msgstr "%B: попередженнÑ: неÑуміÑніÑÑ‚ÑŒ ISA між e_flags Ñ– .MIPS.abiflags" + +#: elfxx-mips.c:15413 +msgid "%B: warning: Inconsistent FP ABI between .gnu.attributes and .MIPS.abiflags" +msgstr "%B: попередженнÑ: неÑуміÑніÑÑ‚ÑŒ ABI FP між .gnu.attributes Ñ– .MIPS.abiflags" + +#: elfxx-mips.c:15417 +msgid "%B: warning: Inconsistent ASEs between e_flags and .MIPS.abiflags" +msgstr "%B: попередженнÑ: неÑуміÑніÑÑ‚ÑŒ ASE між e_flags Ñ– .MIPS.abiflags" + +#: elfxx-mips.c:15424 +msgid "%B: warning: Inconsistent ISA extensions between e_flags and .MIPS.abiflags" +msgstr "%B: попередженнÑ: неÑуміÑніÑÑ‚ÑŒ розширень ISA між e_flags Ñ– .MIPS.abiflags" + +#: elfxx-mips.c:15428 +msgid "%B: warning: Unexpected flag in the flags2 field of .MIPS.abiflags (0x%lx)" +msgstr "%B: попередженнÑ: неочікуваний прапорець у полі flags2 .MIPS.abiflags (0x%lx)" + +#: elfxx-mips.c:15617 +msgid "-mips32r2 -mfp64 (12 callee-saved)" +msgstr "-mips32r2 -mfp64 (12 безпечних Ð´Ð»Ñ Ð²Ð¸ÐºÐ»Ð¸ÐºÑ–Ð² регіÑтрів)" + +#: elfxx-mips.c:15667 elfxx-mips.c:15678 +msgid "None" +msgstr "Ðемає" + +#: elfxx-mips.c:15669 elfxx-mips.c:15741 +msgid "Unknown" +msgstr "Ðевідомий" + +#: elfxx-mips.c:15752 +#, c-format +msgid "Hard or soft float\n" +msgstr "Ðпаратна або програмна рухома крапка\n" + +#: elfxx-mips.c:15755 +#, c-format +msgid "Hard float (double precision)\n" +msgstr "Ðпаратна рухома крапка (подвійна точніÑÑ‚ÑŒ)\n" + +#: elfxx-mips.c:15758 +#, c-format +msgid "Hard float (single precision)\n" +msgstr "Ðпаратна рухома крапка (одинарна точніÑÑ‚ÑŒ)\n" + +#: elfxx-mips.c:15761 +#, c-format +msgid "Soft float\n" +msgstr "Програма рухома крапка\n" + +#: elfxx-mips.c:15764 +#, c-format +msgid "Hard float (MIPS32r2 64-bit FPU 12 callee-saved)\n" +msgstr "Ðпаратна рухома крапка (64-бітовий ÑпівпроцеÑор MIPS32r2, 12 безпечних Ð´Ð»Ñ Ð²Ð¸ÐºÐ»Ð¸ÐºÑ–Ð² регіÑтрів)\n" + +#: elfxx-mips.c:15767 +#, c-format +msgid "Hard float (32-bit CPU, Any FPU)\n" +msgstr "Ðпаратна рухома крапка (32-бітовий процеÑор, будь-Ñкий FPU)\n" + +#: elfxx-mips.c:15770 +#, c-format +msgid "Hard float (32-bit CPU, 64-bit FPU)\n" +msgstr "Ðпаратна рухома крапка (32-бітовий процеÑор, 64-бітовий FPU)\n" + +#: elfxx-mips.c:15773 +#, c-format +msgid "Hard float compat (32-bit CPU, 64-bit FPU)\n" +msgstr "СуміÑніÑÑ‚ÑŒ апаратної рухомої крапки (32-бітовий процеÑор, 64-бітовий FPU)\n" + +#: elfxx-mips.c:15805 #, c-format msgid " [abi=O32]" msgstr " [abi=O32]" -#: elfxx-mips.c:14108 +#: elfxx-mips.c:15807 #, c-format msgid " [abi=O64]" msgstr " [abi=O64]" -#: elfxx-mips.c:14110 +#: elfxx-mips.c:15809 #, c-format msgid " [abi=EABI32]" msgstr " [abi=EABI32]" -#: elfxx-mips.c:14112 +#: elfxx-mips.c:15811 #, c-format msgid " [abi=EABI64]" msgstr " [abi=EABI64]" -#: elfxx-mips.c:14114 +#: elfxx-mips.c:15813 #, c-format msgid " [abi unknown]" msgstr " [невідомий abi]" -#: elfxx-mips.c:14116 +#: elfxx-mips.c:15815 #, c-format msgid " [abi=N32]" msgstr " [abi=N32]" -#: elfxx-mips.c:14118 +#: elfxx-mips.c:15817 #, c-format msgid " [abi=64]" msgstr " [abi=64]" -#: elfxx-mips.c:14120 +#: elfxx-mips.c:15819 #, c-format msgid " [no abi set]" msgstr " [не вÑтановлено abi]" -#: elfxx-mips.c:14141 +#: elfxx-mips.c:15844 #, c-format msgid " [unknown ISA]" msgstr " [невідомий ISA]" -#: elfxx-mips.c:14155 +#: elfxx-mips.c:15864 #, c-format msgid " [not 32bitmode]" msgstr " [не 32-біт.режим]" -#: elfxx-sparc.c:596 +#: elfxx-riscv.c:948 +#, c-format +msgid "unrecognized relocation (0x%x)" +msgstr "нерозпізнане переÑÑƒÐ²Ð°Ð½Ð½Ñ (0x%x)" + +#: elfxx-sparc.c:639 #, c-format msgid "invalid relocation type %d" msgstr "некоректний тип переÑÑƒÐ²Ð°Ð½Ð½Ñ %d" -#: elfxx-tilegx.c:3952 +#: 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: переÑÑƒÐ²Ð°Ð½Ð½Ñ %s щодо Ñимволу STT_GNU_IFUNC «%s» не оброблÑєтьÑÑ %s" + +#: elfxx-tilegx.c:4436 +#, c-format msgid "%B: Cannot link together %s and %s objects." msgstr "%B: не вдалоÑÑ Ñкомпонувати об’єкти %s та %s." -#: i386linux.c:451 m68klinux.c:456 sparclinux.c:450 +#: i386linux.c:416 m68klinux.c:419 sparclinux.c:412 #, c-format msgid "Output file requires shared library `%s'\n" msgstr "Файлу-результату потрібна бібліотека Ñпільного викориÑÑ‚Ð°Ð½Ð½Ñ Â«%s»\n" -#: i386linux.c:459 m68klinux.c:464 sparclinux.c:458 +#: i386linux.c:424 m68klinux.c:428 sparclinux.c:421 #, c-format msgid "Output file requires shared library `%s.so.%s'\n" msgstr "Файлу-результату потрібна бібліотека Ñпільного викориÑÑ‚Ð°Ð½Ð½Ñ Â«%s.so.%s»\n" -#: i386linux.c:648 i386linux.c:698 m68klinux.c:656 m68klinux.c:704 -#: sparclinux.c:648 sparclinux.c:698 +#: 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 "Символ %s не визначено Ð´Ð»Ñ Ð°Ð´Ñ€ÐµÑних прив’Ñзок\n" -#: i386linux.c:722 m68klinux.c:728 sparclinux.c:722 +#: i386linux.c:685 m68klinux.c:689 sparclinux.c:682 msgid "Warning: fixup count mismatch\n" msgstr "ПопередженнÑ: невідповідніÑÑ‚ÑŒ кількоÑÑ‚Ñ– адреÑних прив’Ñзок\n" #: ieee.c:159 #, c-format -msgid "%s: string too long (%d chars, max 65535)" -msgstr "%s: занадто довгий Ñ€Ñдок (%d Ñимволів, макÑ. к-Ñ‚ÑŒ — 65535)" +msgid "%B: string too long (%d chars, max 65535)" +msgstr "%B: занадто довгий Ñ€Ñдок (%d Ñимволів, макÑ. к-Ñ‚ÑŒ — 65535)" + +#: ieee.c:226 +#, c-format +msgid "IEEE parser: string length: %#lx longer than buffer: %#lx" +msgstr "обробник IEEE: довжина Ñ€Ñдка: %#lx довший за буфер: %#lx" -#: ieee.c:286 +#: ieee.c:302 #, c-format -msgid "%s: unrecognized symbol `%s' flags 0x%x" -msgstr "%s: нерозпізнані прапорці Ñимволу «%s», 0x%x" +msgid "%B: unrecognized symbol `%s' flags 0x%x" +msgstr "%B: нерозпізнані прапорці Ñимволу «%s», 0x%x" -#: ieee.c:792 +#: ieee.c:837 +#, c-format msgid "%B: unimplemented ATI record %u for symbol %u" msgstr "%B: нереалізований Ð·Ð°Ð¿Ð¸Ñ ATI, %u, Ð´Ð»Ñ Ñимволу %u" -#: ieee.c:816 +#: ieee.c:862 +#, c-format msgid "%B: unexpected ATN type %d in external part" msgstr "%B: неочікуваний тип ATN, %d, у зовнішній чаÑтині" -#: ieee.c:838 +#: ieee.c:884 msgid "%B: unexpected type after ATN" msgstr "%B: неочікуваний тип піÑÐ»Ñ ATN" #: ihex.c:230 +#, c-format msgid "%B:%d: unexpected character `%s' in Intel Hex file" msgstr "%B:%d: неочікуваний Ñимвол «%s» у шіÑтнадцÑтковому файлі Intel" -#: ihex.c:337 +#: ihex.c:338 +#, c-format msgid "%B:%u: bad checksum in Intel Hex file (expected %u, found %u)" msgstr "%B:%u: помилкова контрольна Ñума у шіÑтнадцÑтковому файлі Intel (очікувалоÑÑ %u, виÑвлено %u)" -#: ihex.c:392 +#: ihex.c:394 +#, c-format msgid "%B:%u: bad extended address record length in Intel Hex file" msgstr "%B:%u: помилкова довжина запиÑу розширеної адреÑи у шіÑтнадцÑтковому файлі Intel" -#: ihex.c:409 +#: ihex.c:412 +#, c-format msgid "%B:%u: bad extended start address length in Intel Hex file" msgstr "%B:%u: помилкова довжина розширеної початкової адреÑи у шіÑтнадцÑтковому файлі Intel" -#: ihex.c:426 +#: ihex.c:430 +#, c-format msgid "%B:%u: bad extended linear address record length in Intel Hex file" msgstr "%B:%u: помилкова довжина запиÑу розширеної лінійної адреÑи у шіÑтнадцÑтковому файлі Intel" -#: ihex.c:443 +#: ihex.c:448 +#, c-format msgid "%B:%u: bad extended linear start address length in Intel Hex file" msgstr "%B:%u: помилкова довжина розширеної лінійної початкової адреÑи у шіÑтнадцÑтковому файлі Intel" -#: ihex.c:460 +#: ihex.c:466 +#, c-format msgid "%B:%u: unrecognized ihex type %u in Intel Hex file" msgstr "%B:%u: невідомий тип ihex %u у шіÑтнадцÑтковому файлі Intel" -#: ihex.c:579 +#: ihex.c:585 msgid "%B: internal error in ihex_read_section" msgstr "%B: Ð²Ð½ÑƒÑ‚Ñ€Ñ–ÑˆÐ½Ñ Ð¿Ð¾Ð¼Ð¸Ð»ÐºÐ° у ihex_read_section" -#: ihex.c:613 +#: ihex.c:619 msgid "%B: bad section length in ihex_read_section" msgstr "%B: помилкова довжина розділу у 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: адреÑа 0x%s перебуває за межами шіÑтнадцÑткового файла Intel" +msgid "%B: address 0x%s out of range for Intel Hex file" +msgstr "%B: адреÑа 0x%s перебуває за межами шіÑтнадцÑткового файла Intel" -#: libbfd.c:863 +#: libbfd.c:799 +#, c-format msgid "%B: unable to get decompressed section %A" msgstr "%B: не вдалоÑÑ Ð¾Ñ‚Ñ€Ð¸Ð¼Ð°Ñ‚Ð¸ розпакований розділ %A" -#: libbfd.c:1012 -msgid "%B: compiled for a big endian system and target is little endian" -msgstr "%B: зібрано Ð´Ð»Ñ ÑиÑтеми з прÑмим порÑдком байтів, а призначеннÑм Ñ” ÑиÑтема зі зворотним порÑдком байтів" - -#: libbfd.c:1014 -msgid "%B: compiled for a little endian system and target is big endian" -msgstr "%B: зібрано Ð´Ð»Ñ ÑиÑтеми зі зворотним порÑдком байтів, а призначеннÑм Ñ” ÑиÑтема зі прÑмим порÑдком байтів" - -#: libbfd.c:1043 +#: libbfd.c:963 #, c-format msgid "Deprecated %s called at %s line %d in %s\n" msgstr "Викликано заÑтарілу %s у %s, Ñ€Ñдок %d у %s\n" -#: libbfd.c:1046 +#: libbfd.c:966 #, c-format msgid "Deprecated %s called\n" msgstr "Викликано заÑтарілу %s\n" -#: linker.c:1872 +#: linker.c:1669 +#, c-format msgid "%B: indirect symbol `%s' to `%s' is a loop" msgstr "%B: опоÑередкований Ñимвол «%s» Ð´Ð»Ñ Â«%s» Ñ” циклом" -#: linker.c:2736 +#: linker.c:2539 #, c-format msgid "Attempt to do relocatable link with %s input and %s output" msgstr "Спроба ÑÑ‚Ð²Ð¾Ñ€ÐµÐ½Ð½Ñ Ð·Ð²â€™Ñзку переÑÑƒÐ²Ð°Ð½Ð½Ñ Ð· вхідним %s Ñ– вихідним %s" -#: linker.c:3021 +#: linker.c:2825 +#, c-format msgid "%B: ignoring duplicate section `%A'\n" msgstr "%B: ігноруємо дублікат розділу «%A»\n" -#: linker.c:3030 linker.c:3039 +#: linker.c:2835 linker.c:2845 +#, c-format msgid "%B: duplicate section `%A' has different size\n" msgstr "%B: дублікат розділу «%A» має інший розмір\n" -#: linker.c:3047 linker.c:3052 +#: linker.c:2854 linker.c:2860 +#, c-format msgid "%B: could not read contents of section `%A'\n" msgstr "%B: не вдалоÑÑ Ð¿Ñ€Ð¾Ñ‡Ð¸Ñ‚Ð°Ñ‚Ð¸ вміÑÑ‚ розділу «%A»\n" -#: linker.c:3056 +#: linker.c:2865 +#, c-format msgid "%B: duplicate section `%A' has different contents\n" msgstr "%B: дублікат розділу «%A» має інший вміÑÑ‚\n" -#: mach-o.c:407 +#: linker.c:3353 +msgid "%B: compiled for a big endian system and target is little endian" +msgstr "%B: зібрано Ð´Ð»Ñ ÑиÑтеми з прÑмим порÑдком байтів, а призначеннÑм Ñ” ÑиÑтема зі зворотним порÑдком байтів" + +#: linker.c:3356 +msgid "%B: compiled for a little endian system and target is big endian" +msgstr "%B: зібрано Ð´Ð»Ñ ÑиÑтеми зі зворотним порÑдком байтів, а призначеннÑм Ñ” ÑиÑтема зі прÑмим порÑдком байтів" + +#: mach-o.c:779 msgid "bfd_mach_o_canonicalize_symtab: unable to load symbols" msgstr "bfd_mach_o_canonicalize_symtab: не вдалоÑÑ Ð·Ð°Ð²Ð°Ð½Ñ‚Ð°Ð¶Ð¸Ñ‚Ð¸ Ñимволи" -#: mach-o.c:1301 +#: mach-o.c:1981 +msgid "sorry: modtab, toc and extrefsyms are not yet implemented for dysymtab commands." +msgstr "вибечте, modtab, toc та extrefsyms Ð´Ð»Ñ ÐºÐ¾Ð¼Ð°Ð½Ð´ dysymtab у поточній верÑÑ–Ñ— ще не реалізовано." + +#: mach-o.c:2424 +#, c-format +msgid "mach-o: there are too many sections (%u) maximum is 255,\n" +msgstr "mach-o: надто багато розділів (%u), макÑимальна кількіÑÑ‚ÑŒ розділів дорівнює 255,\n" + +#: mach-o.c:2531 +#, c-format +msgid "unable to allocate data for load command 0x%lx" +msgstr "не вдалоÑÑ Ñ€Ð¾Ð·Ð¼Ñ–Ñтити дані Ð´Ð»Ñ ÐºÐ¾Ð¼Ð°Ð½Ð´Ð¸ Ð·Ð°Ð²Ð°Ð½Ñ‚Ð°Ð¶ÐµÐ½Ð½Ñ 0x%lx" + +#: mach-o.c:2636 #, c-format msgid "unable to write unknown load command 0x%lx" msgstr "не вдалоÑÑ Ð·Ð°Ð¿Ð¸Ñати невідому команду завантаженнÑ, 0x%lx" -#: mach-o.c:1789 +#: mach-o.c:2820 +#, c-format +msgid "section address (%lx) below start of segment (%lx)" +msgstr "адреÑа розділу (%lx) нижче за початок Ñегмента (%lx)" + +#: mach-o.c:2961 +#, c-format +msgid "unable to layout unknown load command 0x%lx" +msgstr "не вдалоÑÑ Ñ€Ð¾Ð·Ñ‚Ð°ÑˆÑƒÐ²Ð°Ñ‚Ð¸ невідому команду завантаженнÑ, 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: надто велике Ð·Ð½Ð°Ñ‡ÐµÐ½Ð½Ñ Ð²Ð¸Ñ€Ñ–Ð²Ð½ÑŽÐ²Ð°Ð½Ð½Ñ: 0x%x, викориÑтовуємо заміÑÑ‚ÑŒ нього 32" + +#: 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: надто велике Ð·Ð½Ð°Ñ‡ÐµÐ½Ð½Ñ Ð²Ð¸Ñ€Ñ–Ð²Ð½ÑŽÐ²Ð°Ð½Ð½Ñ: 0x%x, викориÑтовуємо заміÑÑ‚ÑŒ нього 32" + +#: 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: не вдалоÑÑ Ð¿Ñ€Ð¾Ñ‡Ð¸Ñ‚Ð°Ñ‚Ð¸ %d байтів у %lu" -#: mach-o.c:1807 +#: 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: назва за межами доÑтупного діапазону (%lu >= %lu)" -#: mach-o.c:1892 +#: 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: Ñимвол «%s» визначає некоректний розділ %d (max %lu): вÑтановлюємо у невизначене значеннÑ" -#: mach-o.c:1900 -#, c-format -msgid "bfd_mach_o_read_symtab_symbol: symbol \"%s\" is unsupported 'indirect' reference: setting to undefined" -msgstr "bfd_mach_o_read_symtab_symbol: Ñимвол «%s» Ñ” непідтримуваним поÑиланнÑм «indirect»: вÑтановлюємо у невизначене значеннÑ" - -#: mach-o.c:1906 +#: 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: Ñимвол «%s» визначає некоректний тип Ð¿Ð¾Ð»Ñ 0x%x: вÑтановлюємо у невизначене значеннÑ" -#: mach-o.c:1979 +#: mach-o.c:3786 msgid "bfd_mach_o_read_symtab_symbols: unable to allocate memory for symbols" msgstr "bfd_mach_o_read_symtab_symbols: не вдалоÑÑ Ð¾Ñ‚Ñ€Ð¸Ð¼Ð°Ñ‚Ð¸ облаÑÑ‚ÑŒ пам’ÑÑ‚Ñ– Ð´Ð»Ñ Ñимволів" -#: mach-o.c:2014 -#, c-format -msgid "bfd_mach_o_read_dysymtab_symbol: unable to read %lu bytes at %lu" -msgstr "bfd_mach_o_read_dysymtab_symbol: не вдалоÑÑ Ð¿Ñ€Ð¾Ñ‡Ð¸Ñ‚Ð°Ñ‚Ð¸ %lu байтів з %lu" - -#: mach-o.c:2734 -#, c-format -msgid "unable to read unknown load command 0x%lx" -msgstr "не вдалоÑÑ Ð¿Ñ€Ð¾Ñ‡Ð¸Ñ‚Ð°Ñ‚Ð¸ невідому команду завантаженнÑ, 0x%lx" +#: mach-o.c:4759 +msgid "%B: unknown load command 0x%lx" +msgstr "%B: невідома команда завантаженнÑ, 0x%lx" -#: mach-o.c:2915 +#: mach-o.c:4950 #, c-format msgid "bfd_mach_o_scan: unknown architecture 0x%lx/0x%lx" msgstr "bfd_mach_o_scan: невідома архітектура, 0x%lx/0x%lx" -#: mach-o.c:3011 +#: mach-o.c:5055 #, c-format msgid "unknown header byte-order value 0x%lx" msgstr "невідоме Ð·Ð½Ð°Ñ‡ÐµÐ½Ð½Ñ Ð¿Ð¾Ñ€Ñдку байтів у заголовку, 0x%lx" -#: mach-o.c:3577 -msgid "Mach-O header:\n" -msgstr "заголовок Mach-O:\n" - -#: mach-o.c:3578 -#, c-format -msgid " magic : %08lx\n" -msgstr " magic : %08lx\n" - -#: mach-o.c:3579 -#, c-format -msgid " cputype : %08lx (%s)\n" -msgstr " тип проц. : %08lx (%s)\n" - -#: mach-o.c:3581 -#, c-format -msgid " cpusubtype: %08lx\n" -msgstr " підтип проц.: %08lx\n" - -#: mach-o.c:3582 -#, c-format -msgid " filetype : %08lx (%s)\n" -msgstr " тип файла : %08lx (%s)\n" - -#: mach-o.c:3585 -#, c-format -msgid " ncmds : %08lx (%lu)\n" -msgstr " кть_команд: %08lx (%lu)\n" - -#: mach-o.c:3586 +#: merge.c:864 #, c-format -msgid " sizeofcmds: %08lx\n" -msgstr " розмір_кмд: %08lx\n" +msgid "%B: access beyond end of merged section (%ld)" +msgstr "%B: доÑтуп за кінцем об’єднаного розділу (%ld)" -#: mach-o.c:3587 +#: mmo.c:468 #, c-format -msgid " flags : %08lx (" -msgstr " прапорці : %08lx (" +msgid "%B: No core to allocate section name %s\n" +msgstr "%B: немає оÑнови Ð´Ð»Ñ Ð¾Ñ‚Ñ€Ð¸Ð¼Ð°Ð½Ð½Ñ Ð½Ð°Ð·Ð²Ð¸ розділу %s\n" -#: mach-o.c:3589 vms-alpha.c:7674 -msgid ")\n" -msgstr ")\n" - -#: mach-o.c:3590 -#, c-format -msgid " reserved : %08x\n" -msgstr " зарезерв. : %08x\n" - -#: mach-o.c:3600 -msgid "Segments and Sections:\n" -msgstr "Сегменти Ñ– розділи:\n" - -#: mach-o.c:3601 -msgid " #: Segment name Section name Address\n" -msgstr " #: Ðазва Ñегмента Ðазва розділу ÐдреÑа\n" - -#: merge.c:832 -#, c-format -msgid "%s: access beyond end of merged section (%ld)" -msgstr "%s: доÑтуп за кінцем об’єднаного розділу (%ld)" - -#: mmo.c:456 +#: mmo.c:544 #, c-format -msgid "%s: No core to allocate section name %s\n" -msgstr "%s: немає оÑнови Ð´Ð»Ñ Ð¾Ñ‚Ñ€Ð¸Ð¼Ð°Ð½Ð½Ñ Ð½Ð°Ð·Ð²Ð¸ розділу %s\n" +msgid "%B: No core to allocate a symbol %d bytes long\n" +msgstr "%B: немає оÑнови Ð´Ð»Ñ Ð¾Ñ‚Ñ€Ð¸Ð¼Ð°Ð½Ð½Ñ Ñимволу довжиною %d байтів\n" -#: mmo.c:531 +#: mmo.c:958 #, c-format -msgid "%s: No core to allocate a symbol %d bytes long\n" -msgstr "%s: немає оÑнови Ð´Ð»Ñ Ð¾Ñ‚Ñ€Ð¸Ð¼Ð°Ð½Ð½Ñ Ñимволу довжиною %d байтів\n" +msgid "%B: attempt to emit contents at non-multiple-of-4 address 0x%lx\n" +msgstr "%B: Ñпроба надіÑлати дані на некратну до 4 адреÑу 0x%lx\n" -#: mmo.c:1187 -#, c-format -msgid "%s: invalid mmo file: initialization value for $255 is not `Main'\n" -msgstr "%s: некоректний файл mmo: Ð·Ð½Ð°Ñ‡ÐµÐ½Ð½Ñ Ñ–Ð½Ñ–Ñ†Ñ–Ð°Ð»Ñ–Ð·Ð°Ñ†Ñ–Ñ— Ð´Ð»Ñ $255 не дорівнює «Main»\n" +#: mmo.c:1255 +msgid "%B: invalid mmo file: initialization value for $255 is not `Main'\n" +msgstr "%B: некоректний файл mmo: Ð·Ð½Ð°Ñ‡ÐµÐ½Ð½Ñ Ñ–Ð½Ñ–Ñ†Ñ–Ð°Ð»Ñ–Ð·Ð°Ñ†Ñ–Ñ— Ð´Ð»Ñ $255 не дорівнює «Main»\n" -#: mmo.c:1332 +#: mmo.c:1402 #, c-format -msgid "%s: unsupported wide character sequence 0x%02X 0x%02X after symbol name starting with `%s'\n" -msgstr "%s: непідтримувана широка поÑлідовніÑÑ‚ÑŒ Ñимволів 0x%02X 0x%02X піÑÐ»Ñ Ð½Ð°Ð·Ð²Ð¸ Ñимволу, починаючи з «%s»\n" +msgid "%B: unsupported wide character sequence 0x%02X 0x%02X after symbol name starting with `%s'\n" +msgstr "%B: непідтримувана широка поÑлідовніÑÑ‚ÑŒ Ñимволів 0x%02X 0x%02X піÑÐ»Ñ Ð½Ð°Ð·Ð²Ð¸ Ñимволу, починаючи з «%s»\n" -#: mmo.c:1565 +#: mmo.c:1636 #, c-format -msgid "%s: invalid mmo file: unsupported lopcode `%d'\n" -msgstr "%s: некоректний файл mmo: непідтримуване Ð·Ð½Ð°Ñ‡ÐµÐ½Ð½Ñ lopcode, «%d»\n" +msgid "%B: invalid mmo file: unsupported lopcode `%d'\n" +msgstr "%B: некоректний файл mmo: непідтримуване Ð·Ð½Ð°Ñ‡ÐµÐ½Ð½Ñ lopcode, «%d»\n" -#: mmo.c:1575 +#: mmo.c:1647 #, c-format -msgid "%s: invalid mmo file: expected YZ = 1 got YZ = %d for lop_quote\n" -msgstr "%s: некоректний файл mmo: очікувалоÑÑ YZ = 1, отримано YZ = %d Ð´Ð»Ñ lop_quote\n" +msgid "%B: invalid mmo file: expected YZ = 1 got YZ = %d for lop_quote\n" +msgstr "%B: некоректний файл mmo: очікувалоÑÑ YZ = 1, отримано YZ = %d Ð´Ð»Ñ lop_quote\n" -#: mmo.c:1611 +#: mmo.c:1685 #, c-format -msgid "%s: invalid mmo file: expected z = 1 or z = 2, got z = %d for lop_loc\n" -msgstr "%s: некоректний файл mmo: очікувалоÑÑ z = 1 або z = 2, отримано z = %d Ð´Ð»Ñ lop_loc\n" +msgid "%B: invalid mmo file: expected z = 1 or z = 2, got z = %d for lop_loc\n" +msgstr "%B: некоректний файл mmo: очікувалоÑÑ z = 1 або z = 2, отримано z = %d Ð´Ð»Ñ lop_loc\n" -#: mmo.c:1657 +#: mmo.c:1736 #, c-format -msgid "%s: invalid mmo file: expected z = 1 or z = 2, got z = %d for lop_fixo\n" -msgstr "%s: некоректний файл mmo: очікувалоÑÑ z = 1 або z = 2, отримано z = %d Ð´Ð»Ñ lop_fixo\n" +msgid "%B: invalid mmo file: expected z = 1 or z = 2, got z = %d for lop_fixo\n" +msgstr "%B: некоректний файл mmo: очікувалоÑÑ z = 1 або z = 2, отримано z = %d Ð´Ð»Ñ lop_fixo\n" -#: mmo.c:1696 +#: mmo.c:1777 #, c-format -msgid "%s: invalid mmo file: expected y = 0, got y = %d for lop_fixrx\n" -msgstr "%s: некоректний файл mmo: очікувалоÑÑ y=0, отримано y = %d Ð´Ð»Ñ lop_fixrx\n" +msgid "%B: invalid mmo file: expected y = 0, got y = %d for lop_fixrx\n" +msgstr "%B: некоректний файл mmo: очікувалоÑÑ y=0, отримано y = %d Ð´Ð»Ñ lop_fixrx\n" -#: mmo.c:1705 +#: mmo.c:1788 #, c-format -msgid "%s: invalid mmo file: expected z = 16 or z = 24, got z = %d for lop_fixrx\n" -msgstr "%s: некоректний файл mmo: очікувалоÑÑ z = 16 або z = 24, отримано z = %d Ð´Ð»Ñ lop_fixrx\n" +msgid "%B: invalid mmo file: expected z = 16 or z = 24, got z = %d for lop_fixrx\n" +msgstr "%B: некоректний файл mmo: очікувалоÑÑ z = 16 або z = 24, отримано z = %d Ð´Ð»Ñ lop_fixrx\n" -#: mmo.c:1728 +#: mmo.c:1813 #, 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: некоректний файл mmo: початковим байтом Ñлова оператора має бути 0 або 1, отримано ж %d Ð´Ð»Ñ lop_fixrx\n" +msgid "%B: invalid mmo file: leading byte of operand word must be 0 or 1, got %d for lop_fixrx\n" +msgstr "%B: некоректний файл mmo: початковим байтом Ñлова оператора має бути 0 або 1, отримано ж %d Ð´Ð»Ñ lop_fixrx\n" -#: mmo.c:1751 +#: mmo.c:1838 #, c-format -msgid "%s: cannot allocate file name for file number %d, %d bytes\n" -msgstr "%s: не вдалоÑÑ Ñ€Ð¾Ð·Ð¼Ñ–Ñтити назву файла Ð´Ð»Ñ Ñ„Ð°Ð¹Ð»Ð° з номером %d, %d байтів\n" +msgid "%B: cannot allocate file name for file number %d, %d bytes\n" +msgstr "%B: не вдалоÑÑ Ñ€Ð¾Ð·Ð¼Ñ–Ñтити назву файла Ð´Ð»Ñ Ñ„Ð°Ð¹Ð»Ð° з номером %d, %d байтів\n" -#: mmo.c:1771 +#: mmo.c:1860 #, c-format -msgid "%s: invalid mmo file: file number %d `%s', was already entered as `%s'\n" -msgstr "%s: некоректний файл mmo: номер файла %d, «%s», уже здійÑнено вхід Ñк у «%s»\n" +msgid "%B: invalid mmo file: file number %d `%s', was already entered as `%s'\n" +msgstr "%B: некоректний файл mmo: номер файла %d, «%s», уже здійÑнено вхід Ñк у «%s»\n" -#: mmo.c:1784 +#: mmo.c:1874 #, c-format -msgid "%s: invalid mmo file: file name for number %d was not specified before use\n" -msgstr "%s: некоректний файл mmo: назву файла Ð´Ð»Ñ Ð½Ð¾Ð¼ÐµÑ€Ð° %d не було вказано до викориÑтаннÑ\n" +msgid "%B: invalid mmo file: file name for number %d was not specified before use\n" +msgstr "%B: некоректний файл mmo: назву файла Ð´Ð»Ñ Ð½Ð¾Ð¼ÐµÑ€Ð° %d не було вказано до викориÑтаннÑ\n" -#: mmo.c:1890 +#: mmo.c:1981 #, c-format -msgid "%s: invalid mmo file: fields y and z of lop_stab non-zero, y: %d, z: %d\n" -msgstr "%s: некоректний файл mmo: Ð¿Ð¾Ð»Ñ y Ñ– z lop_stab Ñ” ненульовими, y: %d, z: %d\n" +msgid "%B: invalid mmo file: fields y and z of lop_stab non-zero, y: %d, z: %d\n" +msgstr "%B: некоректний файл mmo: Ð¿Ð¾Ð»Ñ y Ñ– z lop_stab Ñ” ненульовими, y: %d, z: %d\n" -#: mmo.c:1926 +#: mmo.c:2018 #, c-format -msgid "%s: invalid mmo file: lop_end not last item in file\n" -msgstr "%s: некоректний файл mmo: lop_end не Ñ” оÑтаннім запиÑом у файлі\n" +msgid "%B: invalid mmo file: lop_end not last item in file\n" +msgstr "%B: некоректний файл mmo: lop_end не Ñ” оÑтаннім запиÑом у файлі\n" -#: mmo.c:1939 +#: mmo.c:2032 #, 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: некоректний файл mmo: YZ lop_end (%ld) не дорівнює кількоÑÑ‚Ñ– тетрад до попереднього lop_stab (%ld)\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: некоректний файл mmo: YZ lop_end (%ld) не дорівнює кількоÑÑ‚Ñ– тетрад до попереднього lop_stab (%ld)\n" -#: mmo.c:2649 +#: mmo.c:2743 #, c-format -msgid "%s: invalid symbol table: duplicate symbol `%s'\n" -msgstr "%s: некоректна Ñ‚Ð°Ð±Ð»Ð¸Ñ†Ñ Ñимволів: Ð´ÑƒÐ±Ð»ÑŽÐ²Ð°Ð½Ð½Ñ Ñимволу «%s»\n" +msgid "%B: invalid symbol table: duplicate symbol `%s'\n" +msgstr "%B: некоректна Ñ‚Ð°Ð±Ð»Ð¸Ñ†Ñ Ñимволів: Ð´ÑƒÐ±Ð»ÑŽÐ²Ð°Ð½Ð½Ñ Ñимволу «%s»\n" -#: mmo.c:2889 +#: mmo.c:2986 #, c-format -msgid "%s: Bad symbol definition: `Main' set to %s rather than the start address %s\n" -msgstr "%s: помилкове Ð²Ð¸Ð·Ð½Ð°Ñ‡ÐµÐ½Ð½Ñ Ñимволу: «Main» вÑтановлено у %s, а не у початкову адреÑу %s\n" +msgid "%B: Bad symbol definition: `Main' set to %s rather than the start address %s\n" +msgstr "%B: помилкове Ð²Ð¸Ð·Ð½Ð°Ñ‡ÐµÐ½Ð½Ñ Ñимволу: «Main» вÑтановлено у %s, а не у початкову адреÑу %s\n" -#: mmo.c:2981 +#: mmo.c:3085 #, 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: попередженнÑ: Ñ‚Ð°Ð±Ð»Ð¸Ñ†Ñ Ñимволів Ñ” надто великою Ð´Ð»Ñ mmo, Ñ—Ñ— розмір перевищує 65535 32-бітових Ñлова: %d. Буде випущено лише «Main».\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: попередженнÑ: Ñ‚Ð°Ð±Ð»Ð¸Ñ†Ñ Ñимволів Ñ” надто великою Ð´Ð»Ñ mmo, Ñ—Ñ— розмір перевищує 65535 32-бітових Ñлова: %d. Буде випущено лише «Main».\n" -#: mmo.c:3026 +#: mmo.c:3131 #, c-format -msgid "%s: internal error, symbol table changed size from %d to %d words\n" -msgstr "%s: Ð²Ð½ÑƒÑ‚Ñ€Ñ–ÑˆÐ½Ñ Ð¿Ð¾Ð¼Ð¸Ð»ÐºÐ°, змінено розмір таблиці Ñимволів з %d до %d Ñлів\n" +msgid "%B: internal error, symbol table changed size from %d to %d words\n" +msgstr "%B: Ð²Ð½ÑƒÑ‚Ñ€Ñ–ÑˆÐ½Ñ Ð¿Ð¾Ð¼Ð¸Ð»ÐºÐ°, змінено розмір таблиці Ñимволів з %d до %d Ñлів\n" -#: mmo.c:3078 +#: mmo.c:3184 #, c-format -msgid "%s: internal error, internal register section %s had contents\n" -msgstr "%s: Ð²Ð½ÑƒÑ‚Ñ€Ñ–ÑˆÐ½Ñ Ð¿Ð¾Ð¼Ð¸Ð»ÐºÐ°, внутрішній розділ регіÑтрів, %s, міÑтив дані\n" +msgid "%B: internal error, internal register section %A had contents\n" +msgstr "%B: Ð²Ð½ÑƒÑ‚Ñ€Ñ–ÑˆÐ½Ñ Ð¿Ð¾Ð¼Ð¸Ð»ÐºÐ°, внутрішній розділ регіÑтрів, %A, міÑтив дані\n" -#: mmo.c:3129 -#, c-format -msgid "%s: no initialized registers; section length 0\n" -msgstr "%s: немає ініціалізованих регіÑтрів, довжина розділу дорівнює 0\n" +#: mmo.c:3235 +msgid "%B: no initialized registers; section length 0\n" +msgstr "%B: немає ініціалізованих регіÑтрів, довжина розділу дорівнює 0\n" -#: mmo.c:3135 +#: mmo.c:3242 #, c-format -msgid "%s: too many initialized registers; section length %ld\n" -msgstr "%s: занадто багато ініціалізованих регіÑтрів; довжина розділу — %ld\n" +msgid "%B: too many initialized registers; section length %ld\n" +msgstr "%B: занадто багато ініціалізованих регіÑтрів; довжина розділу — %ld\n" -#: mmo.c:3140 +#: mmo.c:3247 #, c-format -msgid "%s: invalid start address for initialized registers of length %ld: 0x%lx%08lx\n" -msgstr "%s: некоректна початкова адреÑа Ð´Ð»Ñ Ñ–Ð½Ñ–Ñ†Ñ–Ð°Ð»Ñ–Ð·Ð¾Ð²Ð°Ð½Ð¸Ñ… регіÑтрів довжини %ld: 0x%lx%08lx\n" +msgid "%B: invalid start address for initialized registers of length %ld: 0x%lx%08lx\n" +msgstr "%B: некоректна початкова адреÑа Ð´Ð»Ñ Ñ–Ð½Ñ–Ñ†Ñ–Ð°Ð»Ñ–Ð·Ð¾Ð²Ð°Ð½Ð¸Ñ… регіÑтрів довжини %ld: 0x%lx%08lx\n" -#: oasys.c:882 +#: oasys.c:881 #, c-format -msgid "%s: can not represent section `%s' in oasys" -msgstr "%s: Ð²Ñ–Ð´Ñ‚Ð²Ð¾Ñ€ÐµÐ½Ð½Ñ Ñ€Ð¾Ð·Ð´Ñ–Ð»Ñƒ «%s» у форматі oasys неможливе" +msgid "%B: can not represent section `%A' in oasys" +msgstr "%B: Ð²Ñ–Ð´Ñ‚Ð²Ð¾Ñ€ÐµÐ½Ð½Ñ Ñ€Ð¾Ð·Ð´Ñ–Ð»Ñƒ «%A» у форматі oasys неможливе" -#: osf-core.c:140 +#: osf-core.c:127 #, c-format msgid "Unhandled OSF/1 core file section type %d\n" msgstr "Ðепридатни до обробки тип розділу файла core OSF/1, %d\n" -#: pe-mips.c:607 +#: pe-mips.c:609 msgid "%B: `ld -r' not supported with PE MIPS objects\n" msgstr "%B: підтримки «ld -r» з об’єктами PE MIPS не передбачено\n" @@ -3668,73 +5632,122 @@ msgstr "%B: підтримки «ld -r» з об’єктами PE MIPS не пР#. 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: нереалізований %s\n" -#: pe-mips.c:745 +#: pe-mips.c:746 msgid "%B: jump too far away\n" msgstr "%B: занадто далекий перехід\n" -#: pe-mips.c:771 +#: pe-mips.c:772 msgid "%B: bad pair/reflo after refhi\n" msgstr "%B: помилкове pair/reflo піÑÐ»Ñ refhi\n" -#: pef.c:520 +#: pef.c:526 #, c-format msgid "bfd_pef_scan: unknown architecture 0x%lx" msgstr "bfd_pef_scan: невідома архітектура, 0x%lx" -#: pei-x86_64.c:444 +#. PR 17512: file: 2245-7442-0.004. +#: pei-x86_64.c:281 #, c-format -msgid "warning: .pdata section size (%ld) is not a multiple of %d\n" -msgstr "попередженнÑ: розмір розділу .pdata (%ld) не Ñ” кратним до %d\n" +msgid "Unknown: %x" +msgstr "Ðевідомий: %x" -#: pei-x86_64.c:448 peigen.c:1618 peigen.c:1801 pepigen.c:1618 pepigen.c:1801 -#: pex64igen.c:1618 pex64igen.c:1801 +#: pei-x86_64.c:331 +#, c-format +msgid "warning: xdata section corrupt\n" +msgstr "попередженнÑ: пошкоджено розділ xdata\n" + +#: pei-x86_64.c:341 +#, c-format +msgid "warning: xdata section corrupt" +msgstr "попередженнÑ: пошкоджено розділ xdata" + +#: pei-x86_64.c:401 +#, c-format +msgid "Too many unwind codes (%ld)\n" +msgstr "Забагато кодів Ñ€Ð¾Ð·Ð³Ð¾Ñ€Ñ‚Ð°Ð½Ð½Ñ (%ld)\n" + +#: pei-x86_64.c:491 +#, c-format +msgid "Warning: %s section size (%ld) is not a multiple of %d\n" +msgstr "ПопередженнÑ: розмір розділу %s (%ld) не Ñ” кратним до %d\n" + +#: pei-x86_64.c:498 +#, c-format +msgid "Warning: %s section size is zero\n" +msgstr "ПопередженнÑ: розмір розділу %s Ñ” нульовим\n" + +#: pei-x86_64.c:513 +#, c-format +msgid "Warning: %s section size (%ld) is smaller than virtual size (%ld)\n" +msgstr "ПопередженнÑ: розмір розділу %s (%ld) Ñ” меншим за віртуальний розмір (%ld)\n" + +#: 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" -"Ð¢Ð°Ð±Ð»Ð¸Ñ†Ñ Ñ„ÑƒÐ½ÐºÑ†Ñ–Ð¹ (оброблений вміÑÑ‚ розділу .pdata)\n" +"Ð¢Ð°Ð±Ð»Ð¸Ñ†Ñ Ñ„ÑƒÐ½ÐºÑ†Ñ–Ð¹ (оброблений вміÑÑ‚ розділу %s)\n" -#: pei-x86_64.c:450 +#: pei-x86_64.c:525 #, c-format msgid "vma:\t\t\tBeginAddress\t EndAddress\t UnwindData\n" msgstr "vma:\t\t\tПочаткÐдреÑа\t КінцÐдреÑаs\t ДаніUnwind\n" +#: pei-x86_64.c:654 +#, c-format +msgid "" +"\n" +"Dump of %s\n" +msgstr "" +"\n" +"Дамп %s\n" + #. XXX code yet to be written. -#: peicode.h:751 +#: peicode.h:775 +#, c-format msgid "%B: Unhandled import type; %x" msgstr "%B: непридатний до обробки тип імпортуваннÑ; %x" -#: peicode.h:756 +#: peicode.h:781 +#, c-format msgid "%B: Unrecognised import type; %x" msgstr "%B: нерозпізнаний тип імпортуваннÑ; %x" -#: peicode.h:770 +#: peicode.h:796 +#, c-format msgid "%B: Unrecognised import name type; %x" msgstr "%B: нерозпізнана назва імпортуваннÑ; %x" -#: peicode.h:1166 +#: peicode.h:1217 +#, c-format msgid "%B: Unrecognised machine type (0x%x) in Import Library Format archive" msgstr "%B: нерозпізнаний тип архітектури (0x%x) у архіві Import Library Format" -#: peicode.h:1178 +#: peicode.h:1230 +#, c-format msgid "%B: Recognised but unhandled machine type (0x%x) in Import Library Format archive" msgstr "%B: розпізнаний, але непридатний до обробки тип архітектури (0x%x) у архіві Import Library Format" -#: peicode.h:1196 +#: peicode.h:1248 msgid "%B: size field is zero in Import Library Format header" msgstr "%B: у заголовку Import Library Format поле розміру Ñ” нульовим" -#: peicode.h:1227 +#: peicode.h:1280 msgid "%B: string not null terminated in ILF object file." msgstr "%B: у об’єктному файлі ILF Ñ€Ñдок не завершуєтьÑÑ Ð½ÑƒÐ»ÑŒÐ¾Ð²Ð¸Ð¼ Ñимволом." -#: ppcboot.c:414 +#: peicode.h:1333 +msgid "%B: Error: Debug Data ends beyond end of debug directory." +msgstr "%B: помилка: діагноÑтичні дані завершуютьÑÑ Ð·Ð° кінцем діагноÑтичного каталогу." + +#: ppcboot.c:393 #, c-format msgid "" "\n" @@ -3743,27 +5756,27 @@ msgstr "" "\n" "Заголовок ppcboot:\n" -#: ppcboot.c:415 +#: ppcboot.c:394 #, c-format msgid "Entry offset = 0x%.8lx (%ld)\n" msgstr "ВідÑтуп входу = 0x%.8lx (%ld)\n" -#: ppcboot.c:417 +#: ppcboot.c:396 #, c-format msgid "Length = 0x%.8lx (%ld)\n" msgstr "Довжина = 0x%.8lx (%ld)\n" -#: ppcboot.c:421 +#: ppcboot.c:400 #, c-format msgid "Flag field = 0x%.2x\n" msgstr "Поле прапорців = 0x%.2x\n" -#: ppcboot.c:427 +#: ppcboot.c:406 #, c-format msgid "Partition name = \"%s\"\n" msgstr "Ðазва розділу = \"%s\"\n" -#: ppcboot.c:446 +#: ppcboot.c:426 #, c-format msgid "" "\n" @@ -3772,31 +5785,45 @@ msgstr "" "\n" "Початок розділу[%d] = { 0x%.2x, 0x%.2x, 0x%.2x, 0x%.2x }\n" -#: ppcboot.c:452 +#: ppcboot.c:433 #, c-format msgid "Partition[%d] end = { 0x%.2x, 0x%.2x, 0x%.2x, 0x%.2x }\n" msgstr "Кінець розділу[%d] = { 0x%.2x, 0x%.2x, 0x%.2x, 0x%.2x }\n" -#: ppcboot.c:458 +#: ppcboot.c:440 #, c-format msgid "Partition[%d] sector = 0x%.8lx (%ld)\n" msgstr "Сектор розділу[%d] = 0x%.8lx (%ld)\n" -#: ppcboot.c:460 +#: ppcboot.c:444 #, c-format msgid "Partition[%d] length = 0x%.8lx (%ld)\n" msgstr "Довжина розділу[%d] = 0x%.8lx (%ld)\n" -#: reloc.c:6160 +#: reloc.c:8064 msgid "INPUT_SECTION_FLAGS are not supported.\n" msgstr "Підтримки INPUT_SECTION_FLAGS не передбачено.\n" -#: rs6000-core.c:448 +#: reloc.c:8165 +#, c-format +msgid "%X%P: %B(%A): error: relocation for offset %V has no value\n" +msgstr "%X%P: %B(%A): помилка: переÑÑƒÐ²Ð°Ð½Ð½Ñ Ð´Ð»Ñ Ð·Ñуву %V не має значеннÑ\n" + +#: reloc.c:8241 #, c-format -msgid "%s: warning core file truncated" -msgstr "%s: попередженнÑ: файл core обрізано" +msgid "%X%P: %B(%A): relocation \"%R\" is not supported\n" +msgstr "%X%P: %B(%A): підтримки переÑÑƒÐ²Ð°Ð½Ð½Ñ Â«%R» не передбачено\n" + +#: reloc.c:8250 +#, c-format +msgid "%X%P: %B(%A): relocation \"%R\" returns an unrecognized value %x\n" +msgstr "%X%P: %B(%A): переÑÑƒÐ²Ð°Ð½Ð½Ñ Â«%R» повертає нерозпізнане Ð·Ð½Ð°Ñ‡ÐµÐ½Ð½Ñ %x\n" + +#: rs6000-core.c:471 +msgid "%B: warning core file truncated" +msgstr "%B: попередженнÑ: файл core обрізано" -#: som.c:5471 +#: som.c:5478 #, c-format msgid "" "\n" @@ -3805,19 +5832,27 @@ msgstr "" "\n" "Допоміжний заголовок виконаннÑ\n" -#: som.c:5776 +#: som.c:5787 msgid "som_sizeof_headers unimplemented" msgstr "som_sizeof_headers не реалізовано" -#: srec.c:261 +#: srec.c:260 +#, c-format msgid "%B:%d: Unexpected character `%s' in S-record file\n" msgstr "%B:%d: неочікуваний Ñимвол «%s» у файлі запиÑів S\n" -#: srec.c:567 srec.c:600 +#: srec.c:488 +#, c-format +msgid "%B:%d: byte count %d too small\n" +msgstr "%B:%d: кількіÑÑ‚ÑŒ байтів %d Ñ” надто малою\n" + +#: srec.c:581 srec.c:615 +#, c-format msgid "%B:%d: Bad checksum in S-record file\n" msgstr "%B:%d: помилкова контрольна Ñума у файлі запиÑів S\n" #: stabs.c:279 +#, c-format msgid "%B(%A+0x%lx): Stabs entry has invalid string index." msgstr "%B(%A+0x%lx): Ð·Ð°Ð¿Ð¸Ñ Ñ‚Ð°Ð±Ð»Ð¸Ñ†Ñ– stabs міÑтить некоректний Ñ–Ð½Ð´ÐµÐºÑ Ñ€Ñдка." @@ -3825,32 +5860,60 @@ msgstr "%B(%A+0x%lx): Ð·Ð°Ð¿Ð¸Ñ Ñ‚Ð°Ð±Ð»Ð¸Ñ†Ñ– stabs міÑтить некорРmsgid "Unsupported .stab relocation" msgstr "Ðепідтримуване переÑÑƒÐ²Ð°Ð½Ð½Ñ .stab" -#: vms-alpha.c:1299 +#: vms-alpha.c:652 +#, c-format +msgid "Unable to read EIHS record at offset %#x" +msgstr "Ðе вдалоÑÑ Ð¿Ñ€Ð¾Ñ‡Ð¸Ñ‚Ð°Ñ‚Ð¸ Ð·Ð°Ð¿Ð¸Ñ EIHS зі зÑувом %#x" + +#: vms-alpha.c:1164 +#, c-format +msgid "Corrupt EGSD record: its size (%#x) is too small" +msgstr "Пошкоджений Ð·Ð°Ð¿Ð¸Ñ EGSD: його розмір (%#x) Ñ” надто малим" + +#: vms-alpha.c:1188 +#, c-format +msgid "Corrupt EGSD record: size (%#x) is larger than remaining space (%#x)" +msgstr "Пошкоджений Ð·Ð°Ð¿Ð¸Ñ EGSD: розмір (%#x) Ñ” більшим за залишок міÑÑ†Ñ (%#x)" + +#: vms-alpha.c:1196 +#, c-format +msgid "Corrupt EGSD record: size (%#x) is too small" +msgstr "Пошкоджений Ð·Ð°Ð¿Ð¸Ñ EGSD: розмір (%#x) Ñ” надто малим" + +#: vms-alpha.c:1380 #, c-format msgid "Unknown EGSD subtype %d" msgstr "Ðевідомий підтип EGSD, %d" -#: vms-alpha.c:1330 +#: vms-alpha.c:1413 #, c-format msgid "Stack overflow (%d) in _bfd_vms_push" msgstr "ÐŸÐµÑ€ÐµÐ¿Ð¾Ð²Ð½ÐµÐ½Ð½Ñ Ñтека (%d) у _bfd_vms_push" -#: vms-alpha.c:1343 +#: vms-alpha.c:1426 msgid "Stack underflow in _bfd_vms_pop" msgstr "ÐŸÐµÑ€ÐµÐ¿Ð¾Ð²Ð½ÐµÐ½Ð½Ñ Ñтека у _bfd_vms_pop" #. These names have not yet been added to this switch statement. -#: vms-alpha.c:1580 +#: vms-alpha.c:1665 #, c-format msgid "unknown ETIR command %d" msgstr "невідома команда ETIR, %d" -#: vms-alpha.c:1767 +#: vms-alpha.c:1696 +msgid "Corrupt vms value" +msgstr "Пошкоджене Ð·Ð½Ð°Ñ‡ÐµÐ½Ð½Ñ vms" + +#: vms-alpha.c:1824 +msgid "Corrupt ETIR record encountered" +msgstr "ВиÑвлено пошкоджений Ð·Ð°Ð¿Ð¸Ñ ETIR" + +#: vms-alpha.c:1881 #, c-format msgid "bad section index in %s" msgstr "помилковий номер розділу у %s" -#: vms-alpha.c:1780 +#: vms-alpha.c:1894 #, c-format msgid "unsupported STA cmd %s" msgstr "непідтримувана команда STA, %s" @@ -3860,1393 +5923,1463 @@ msgstr "непідтримувана команда STA, %s" #. Rotate. #. Redefine symbol to current location. #. Define a literal. -#: vms-alpha.c:1956 vms-alpha.c:1987 vms-alpha.c:2234 +#: vms-alpha.c:2074 vms-alpha.c:2105 vms-alpha.c:2196 vms-alpha.c:2354 #, c-format msgid "%s: not supported" msgstr "%s: підтримки не передбачено" -#: vms-alpha.c:1962 +#: vms-alpha.c:2080 #, c-format msgid "%s: not implemented" msgstr "%s: не реалізовано" -#: vms-alpha.c:2218 +#: vms-alpha.c:2338 #, c-format msgid "invalid use of %s with contexts" msgstr "некоректне викориÑÑ‚Ð°Ð½Ð½Ñ %s з контекÑтами" -#: vms-alpha.c:2252 +#: vms-alpha.c:2372 #, c-format msgid "reserved cmd %d" msgstr "зарезервована команда %d" -#: vms-alpha.c:2337 +#: vms-alpha.c:2457 msgid "Object module NOT error-free !\n" msgstr "У об’єктному модулі міÑÑ‚ÑÑ‚ÑŒÑÑ Ð¿Ð¾Ð¼Ð¸Ð»ÐºÐ¸!\n" -#: vms-alpha.c:2766 +#: vms-alpha.c:3778 #, c-format -msgid "Symbol %s replaced by %s\n" -msgstr "Символ %s замінено на %s\n" +msgid "SEC_RELOC with no relocs in section %A" +msgstr "SEC_RELOC без переÑувань у розділі %A" -#: vms-alpha.c:3769 +#: vms-alpha.c:3830 vms-alpha.c:4043 #, c-format -msgid "SEC_RELOC with no relocs in section %s" -msgstr "SEC_RELOC без переÑувань у розділі %s" +msgid "Size error in section %A" +msgstr "Помилка у розмірі у розділі %A" -#: vms-alpha.c:3822 vms-alpha.c:4049 -#, c-format -msgid "Size error in section %s" -msgstr "Помилка у розмірі у розділі %s" - -#: vms-alpha.c:3991 +#: vms-alpha.c:3989 msgid "Spurious ALPHA_R_BSR reloc" msgstr "Фальшиве переÑÑƒÐ²Ð°Ð½Ð½Ñ ALPHA_R_BSR" -#: vms-alpha.c:4036 +#: vms-alpha.c:4030 #, c-format msgid "Unhandled relocation %s" msgstr "Ðепридатне до обробки переÑÑƒÐ²Ð°Ð½Ð½Ñ %s" -#: vms-alpha.c:4326 +#: vms-alpha.c:4323 #, c-format msgid "unknown source command %d" msgstr "невідома початкова команда %d" -#: vms-alpha.c:4387 +#: vms-alpha.c:4384 msgid "DST__K_SET_LINUM_INCR not implemented" msgstr "DST__K_SET_LINUM_INCR не реалізовано" -#: vms-alpha.c:4393 +#: vms-alpha.c:4390 msgid "DST__K_SET_LINUM_INCR_W not implemented" msgstr "DST__K_SET_LINUM_INCR_W не реалізовано" -#: vms-alpha.c:4399 +#: vms-alpha.c:4396 msgid "DST__K_RESET_LINUM_INCR not implemented" msgstr "DST__K_RESET_LINUM_INCR не реалізовано" -#: vms-alpha.c:4405 +#: vms-alpha.c:4402 msgid "DST__K_BEG_STMT_MODE not implemented" msgstr "DST__K_BEG_STMT_MODE не реалізовано" -#: vms-alpha.c:4411 +#: vms-alpha.c:4408 msgid "DST__K_END_STMT_MODE not implemented" msgstr "DST__K_END_STMT_MODE не реалізовано" -#: vms-alpha.c:4438 +#: vms-alpha.c:4435 msgid "DST__K_SET_PC not implemented" msgstr "DST__K_SET_PC не реалізовано" -#: vms-alpha.c:4444 +#: vms-alpha.c:4441 msgid "DST__K_SET_PC_W not implemented" msgstr "DST__K_SET_PC_W не реалізовано" -#: vms-alpha.c:4450 +#: vms-alpha.c:4447 msgid "DST__K_SET_PC_L not implemented" msgstr "DST__K_SET_PC_L не реалізовано" -#: vms-alpha.c:4456 +#: vms-alpha.c:4453 msgid "DST__K_SET_STMTNUM not implemented" msgstr "DST__K_SET_STMTNUM не реалізовано" -#: vms-alpha.c:4499 +#: vms-alpha.c:4496 #, c-format msgid "unknown line command %d" msgstr "невідома Ñ€Ñдкова команда %d" -#: vms-alpha.c:4953 vms-alpha.c:4970 vms-alpha.c:4984 vms-alpha.c:4999 -#: vms-alpha.c:5011 vms-alpha.c:5022 vms-alpha.c:5034 +#: 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 "Ðевідоме переÑÑƒÐ²Ð°Ð½Ð½Ñ %s + %s" -#: vms-alpha.c:5089 +#: vms-alpha.c:5098 #, c-format msgid "Unknown reloc %s" msgstr "Ðевідоме переÑÑƒÐ²Ð°Ð½Ð½Ñ %s" -#: vms-alpha.c:5102 +#: vms-alpha.c:5111 msgid "Invalid section index in ETIR" msgstr "Ðекоректний номер розділу у ETIR" -#: vms-alpha.c:5109 +#: vms-alpha.c:5120 msgid "Relocation for non-REL psect" msgstr "ПереÑÑƒÐ²Ð°Ð½Ð½Ñ Ð´Ð»Ñ psect, Ñкий не Ñ” REL" -#: vms-alpha.c:5156 +#: vms-alpha.c:5167 #, c-format msgid "Unknown symbol in command %s" msgstr "Ðевідомий Ñимвол у команді %s" -#: vms-alpha.c:5671 +#: vms-alpha.c:5577 +#, c-format +msgid "reloc (%d) is *UNKNOWN*" +msgstr "переÑÑƒÐ²Ð°Ð½Ð½Ñ (%d) Ñ” *ÐЕВІДОМИМ*" + +#: vms-alpha.c:5692 #, c-format msgid " EMH %u (len=%u): " msgstr " EMH %u (довж=%u): " -#: vms-alpha.c:5680 +#: vms-alpha.c:5697 +#, c-format +msgid " Error: The length is less than the length of an EMH record\n" +msgstr " Помилка: довжина Ñ” меншою за довжину запиÑу EMH\n" + +#: vms-alpha.c:5708 #, c-format msgid "Module header\n" msgstr "Заголовок модулÑ\n" -#: vms-alpha.c:5681 +#: vms-alpha.c:5709 #, c-format msgid " structure level: %u\n" msgstr " рівень Ñтрукт. : %u\n" -#: vms-alpha.c:5682 +#: vms-alpha.c:5710 #, c-format msgid " max record size: %u\n" msgstr " макÑ. розм. запиÑу: %u\n" -#: vms-alpha.c:5685 +#: vms-alpha.c:5713 #, c-format msgid " module name : %.*s\n" msgstr " назва Ð¼Ð¾Ð´ÑƒÐ»Ñ : %.*s\n" -#: vms-alpha.c:5687 +#: vms-alpha.c:5715 #, c-format msgid " module version : %.*s\n" msgstr " верÑÑ–Ñ Ð¼Ð¾Ð´ÑƒÐ»Ñ : %.*s\n" -#: vms-alpha.c:5689 +#: vms-alpha.c:5717 #, c-format msgid " compile date : %.17s\n" msgstr " дата Ð·Ð±Ð¸Ñ€Ð°Ð½Ð½Ñ : %.17s\n" -#: vms-alpha.c:5694 +#: vms-alpha.c:5722 #, c-format msgid "Language Processor Name\n" msgstr "Ðазва обробника мови\n" -#: vms-alpha.c:5695 +#: vms-alpha.c:5723 #, c-format msgid " language name: %.*s\n" msgstr " назва мови : %.*s\n" -#: vms-alpha.c:5702 +#: vms-alpha.c:5730 #, c-format msgid "Source Files Header\n" msgstr "Заголовок файлів коду\n" -#: vms-alpha.c:5703 +#: vms-alpha.c:5731 #, c-format msgid " file: %.*s\n" msgstr " файл: %.*s\n" -#: vms-alpha.c:5710 +#: vms-alpha.c:5738 #, c-format msgid "Title Text Header\n" msgstr "Заголовок титульного текÑту\n" -#: vms-alpha.c:5711 +#: vms-alpha.c:5739 #, c-format msgid " title: %.*s\n" msgstr " заголовок: %.*s\n" -#: vms-alpha.c:5718 +#: vms-alpha.c:5746 #, c-format msgid "Copyright Header\n" msgstr "Заголовок авторÑьких прав\n" -#: vms-alpha.c:5719 +#: vms-alpha.c:5747 #, c-format msgid " copyright: %.*s\n" msgstr " авторÑькі права: %.*s\n" -#: vms-alpha.c:5725 +#: vms-alpha.c:5753 #, c-format msgid "unhandled emh subtype %u\n" msgstr "непридатний до обробки підтип emh, %u\n" -#: vms-alpha.c:5735 +#: vms-alpha.c:5763 #, c-format msgid " EEOM (len=%u):\n" msgstr " EEOM (довж=%u):\n" -#: vms-alpha.c:5736 +#: vms-alpha.c:5768 +#, c-format +msgid " Error: The length is less than the length of an EEOM record\n" +msgstr " Помилка: довжина Ñ” меншою за довжину запиÑу EEOM\n" + +#: vms-alpha.c:5772 #, c-format msgid " number of cond linkage pairs: %u\n" msgstr " кількіÑÑ‚ÑŒ пар умовного компонуваннÑ: %u\n" -#: vms-alpha.c:5738 +#: vms-alpha.c:5774 #, c-format msgid " completion code: %u\n" msgstr " код завершеннÑ: %u\n" -#: vms-alpha.c:5742 +#: vms-alpha.c:5778 #, c-format msgid " transfer addr flags: 0x%02x\n" msgstr " прапорці Ð¿ÐµÑ€ÐµÐ´Ð°Ð²Ð°Ð½Ð½Ñ Ð°Ð´Ñ€ÐµÑи: 0x%02x\n" -#: vms-alpha.c:5743 +#: vms-alpha.c:5779 #, c-format msgid " transfer addr psect: %u\n" msgstr " psect Ð¿ÐµÑ€ÐµÐ´Ð°Ð²Ð°Ð½Ð½Ñ Ð°Ð´Ñ€ÐµÑи: %u\n" -#: vms-alpha.c:5745 +#: vms-alpha.c:5781 #, c-format msgid " transfer address : 0x%08x\n" msgstr " адреÑа перенеÑÐµÐ½Ð½Ñ : 0x%08x\n" -#: vms-alpha.c:5754 +#: vms-alpha.c:5790 msgid " WEAK" msgstr " WEAK" -#: vms-alpha.c:5756 +#: vms-alpha.c:5792 msgid " DEF" msgstr " DEF" -#: vms-alpha.c:5758 +#: vms-alpha.c:5794 msgid " UNI" msgstr " UNI" -#: vms-alpha.c:5760 vms-alpha.c:5781 +#: vms-alpha.c:5796 vms-alpha.c:5817 msgid " REL" msgstr " REL" -#: vms-alpha.c:5762 +#: vms-alpha.c:5798 msgid " COMM" msgstr " COMM" -#: vms-alpha.c:5764 +#: vms-alpha.c:5800 msgid " VECEP" msgstr " VECEP" -#: vms-alpha.c:5766 +#: vms-alpha.c:5802 msgid " NORM" msgstr " NORM" -#: vms-alpha.c:5768 +#: vms-alpha.c:5804 msgid " QVAL" msgstr " QVAL" -#: vms-alpha.c:5775 +#: vms-alpha.c:5811 msgid " PIC" msgstr " PIC" -#: vms-alpha.c:5777 +#: vms-alpha.c:5813 msgid " LIB" msgstr " LIB" -#: vms-alpha.c:5779 +#: vms-alpha.c:5815 msgid " OVR" msgstr " OVR" -#: vms-alpha.c:5783 +#: vms-alpha.c:5819 msgid " GBL" msgstr " GBL" -#: vms-alpha.c:5785 +#: vms-alpha.c:5821 msgid " SHR" msgstr " SHR" -#: vms-alpha.c:5787 +#: vms-alpha.c:5823 msgid " EXE" msgstr " EXE" -#: vms-alpha.c:5789 +#: vms-alpha.c:5825 msgid " RD" msgstr " RD" -#: vms-alpha.c:5791 +#: vms-alpha.c:5827 msgid " WRT" msgstr " WRT" -#: vms-alpha.c:5793 +#: vms-alpha.c:5829 msgid " VEC" msgstr " VEC" -#: vms-alpha.c:5795 +#: vms-alpha.c:5831 msgid " NOMOD" msgstr " NOMOD" -#: vms-alpha.c:5797 +#: vms-alpha.c:5833 msgid " COM" msgstr " COM" -#: vms-alpha.c:5799 +#: vms-alpha.c:5835 msgid " 64B" msgstr " 64B" -#: vms-alpha.c:5808 +#: vms-alpha.c:5844 #, c-format msgid " EGSD (len=%u):\n" msgstr " EGSD (довж=%u):\n" -#: vms-alpha.c:5820 +#: vms-alpha.c:5857 #, c-format msgid " EGSD entry %2u (type: %u, len: %u): " msgstr " Ð·Ð°Ð¿Ð¸Ñ EGSD %2u (тип: %u, довж: %u): " -#: vms-alpha.c:5832 +#: vms-alpha.c:5863 vms-alpha.c:6114 +#, c-format +msgid " Error: length larger than remaining space in record\n" +msgstr " Помилка: довжина перевищує міÑце, Ñке лишилоÑÑ Ñƒ запиÑÑ–\n" + +#: vms-alpha.c:5875 #, c-format msgid "PSC - Program section definition\n" msgstr "PSC — Ð²Ð¸Ð·Ð½Ð°Ñ‡ÐµÐ½Ð½Ñ Ñ€Ð¾Ð·Ð´Ñ–Ð»Ñƒ програми\n" -#: vms-alpha.c:5833 vms-alpha.c:5850 +#: vms-alpha.c:5876 vms-alpha.c:5893 #, c-format msgid " alignment : 2**%u\n" msgstr " вирівнюваннÑ: 2**%u\n" -#: vms-alpha.c:5834 vms-alpha.c:5851 +#: vms-alpha.c:5877 vms-alpha.c:5894 #, c-format msgid " flags : 0x%04x" msgstr " прапорці : 0x%04x" -#: vms-alpha.c:5838 +#: vms-alpha.c:5881 #, c-format msgid " alloc (len): %u (0x%08x)\n" msgstr " alloc (довжина): %u (0x%08x)\n" -#: vms-alpha.c:5839 vms-alpha.c:5896 vms-alpha.c:5945 +#: vms-alpha.c:5882 vms-alpha.c:5939 vms-alpha.c:5988 #, c-format msgid " name : %.*s\n" msgstr " назва : %.*s\n" -#: vms-alpha.c:5849 +#: vms-alpha.c:5892 #, c-format msgid "SPSC - Shared Image Program section def\n" msgstr "SPSC — Ð²Ð¸Ð·Ð½Ð°Ñ‡ÐµÐ½Ð½Ñ Ð¿Ñ€Ð¾Ð³Ñ€Ð°Ð¼Ð½Ð¾Ð³Ð¾ розділу Ñпільного образу\n" -#: vms-alpha.c:5855 +#: vms-alpha.c:5898 #, c-format msgid " alloc (len) : %u (0x%08x)\n" msgstr " alloc (довжина): %u (0x%08x)\n" -#: vms-alpha.c:5856 +#: vms-alpha.c:5899 #, c-format msgid " image offset : 0x%08x\n" msgstr " відÑтуп образу: 0x%08x\n" -#: vms-alpha.c:5858 +#: vms-alpha.c:5901 #, c-format msgid " symvec offset : 0x%08x\n" msgstr " зÑув symvec : 0x%08x\n" -#: vms-alpha.c:5860 +#: vms-alpha.c:5903 #, c-format msgid " name : %.*s\n" msgstr " назва : %.*s\n" -#: vms-alpha.c:5873 +#: vms-alpha.c:5916 #, c-format msgid "SYM - Global symbol definition\n" msgstr "SYM — Ð²Ð¸Ð·Ð½Ð°Ñ‡ÐµÐ½Ð½Ñ Ð·Ð°Ð³Ð°Ð»ÑŒÐ½Ð¸Ñ… Ñимволів\n" -#: vms-alpha.c:5874 vms-alpha.c:5934 vms-alpha.c:5955 vms-alpha.c:5974 +#: vms-alpha.c:5917 vms-alpha.c:5977 vms-alpha.c:5998 vms-alpha.c:6017 #, c-format msgid " flags: 0x%04x" msgstr " прапорці: 0x%04x" -#: vms-alpha.c:5877 +#: vms-alpha.c:5920 #, c-format msgid " psect offset: 0x%08x\n" msgstr " відÑтуп psect: 0x%08x\n" -#: vms-alpha.c:5881 +#: vms-alpha.c:5924 #, c-format msgid " code address: 0x%08x\n" msgstr " адреÑа коду: 0x%08x\n" -#: vms-alpha.c:5883 +#: vms-alpha.c:5926 #, c-format msgid " psect index for entry point : %u\n" msgstr " Ñ–Ð½Ð´ÐµÐºÑ psect Ð´Ð»Ñ Ñ‚Ð¾Ñ‡ÐºÐ¸ входженнÑ: %u\n" -#: vms-alpha.c:5886 vms-alpha.c:5962 vms-alpha.c:5981 +#: vms-alpha.c:5929 vms-alpha.c:6005 vms-alpha.c:6024 #, c-format msgid " psect index : %u\n" msgstr " Ñ–Ð½Ð´ÐµÐºÑ psect: %u\n" -#: vms-alpha.c:5888 vms-alpha.c:5964 vms-alpha.c:5983 +#: vms-alpha.c:5931 vms-alpha.c:6007 vms-alpha.c:6026 #, c-format msgid " name : %.*s\n" msgstr " назва : %.*s\n" -#: vms-alpha.c:5895 +#: vms-alpha.c:5938 #, c-format msgid "SYM - Global symbol reference\n" msgstr "SYM — поÑÐ¸Ð»Ð°Ð½Ð½Ñ Ð½Ð° загальні Ñимволи\n" -#: vms-alpha.c:5907 +#: vms-alpha.c:5950 #, c-format msgid "IDC - Ident Consistency check\n" msgstr "IDC — перевірка коректноÑÑ‚Ñ– ідентифікаторів\n" -#: vms-alpha.c:5908 +#: vms-alpha.c:5951 #, c-format msgid " flags : 0x%08x" msgstr " прапорці : 0x%08x" -#: vms-alpha.c:5912 +#: vms-alpha.c:5955 #, c-format msgid " id match : %x\n" msgstr " ід. відповідноÑÑ‚Ñ–: %x\n" -#: vms-alpha.c:5914 +#: vms-alpha.c:5957 #, c-format msgid " error severity: %x\n" msgstr " критичніÑÑ‚ÑŒ помилки: %x\n" -#: vms-alpha.c:5917 +#: vms-alpha.c:5960 #, c-format msgid " entity name : %.*s\n" msgstr " назва елемента: %.*s\n" -#: vms-alpha.c:5919 +#: vms-alpha.c:5962 #, c-format msgid " object name : %.*s\n" msgstr " назва об’єкта : %.*s\n" -#: vms-alpha.c:5922 +#: vms-alpha.c:5965 #, c-format msgid " binary ident : 0x%08x\n" msgstr " двійк. ідент. : 0x%08x\n" -#: vms-alpha.c:5925 +#: vms-alpha.c:5968 #, c-format msgid " ascii ident : %.*s\n" msgstr " ідент. ascii : %.*s\n" -#: vms-alpha.c:5933 +#: vms-alpha.c:5976 #, c-format msgid "SYMG - Universal symbol definition\n" msgstr "SYMG — УніверÑальне Ð²Ð¸Ð·Ð½Ð°Ñ‡ÐµÐ½Ð½Ñ Ñимволів\n" -#: vms-alpha.c:5937 +#: vms-alpha.c:5980 #, c-format msgid " symbol vector offset: 0x%08x\n" msgstr " зÑув вектора Ñимволів: 0x%08x\n" -#: vms-alpha.c:5939 +#: vms-alpha.c:5982 #, c-format msgid " entry point: 0x%08x\n" msgstr " точка входу: 0x%08x\n" -#: vms-alpha.c:5941 +#: vms-alpha.c:5984 #, c-format msgid " proc descr : 0x%08x\n" msgstr " деÑкр. процеÑу: 0x%08x\n" -#: vms-alpha.c:5943 +#: vms-alpha.c:5986 #, c-format msgid " psect index: %u\n" msgstr " Ñ–Ð½Ð´ÐµÐºÑ psect: %u\n" -#: vms-alpha.c:5954 +#: vms-alpha.c:5997 #, c-format msgid "SYMV - Vectored symbol definition\n" msgstr "SYMV — Ð²Ð¸Ð·Ð½Ð°Ñ‡ÐµÐ½Ð½Ñ Ð²ÐµÐºÑ‚Ð¾Ñ€Ð¸Ð·Ð¾Ð²Ð°Ð½Ð¾Ð³Ð¾ Ñимволу\n" -#: vms-alpha.c:5958 +#: vms-alpha.c:6001 #, c-format msgid " vector : 0x%08x\n" msgstr " вектор : 0x%08x\n" -#: vms-alpha.c:5960 vms-alpha.c:5979 +#: vms-alpha.c:6003 vms-alpha.c:6022 #, c-format msgid " psect offset: %u\n" msgstr " відÑтуп psect: %u\n" -#: vms-alpha.c:5973 +#: vms-alpha.c:6016 #, c-format msgid "SYMM - Global symbol definition with version\n" msgstr "SYMM — Ð²Ð¸Ð·Ð½Ð°Ñ‡ÐµÐ½Ð½Ñ Ð·Ð°Ð³Ð°Ð»ÑŒÐ½Ð¾Ð³Ð¾ Ñимволу з верÑією\n" -#: vms-alpha.c:5977 +#: vms-alpha.c:6020 #, c-format msgid " version mask: 0x%08x\n" msgstr " маÑка верÑÑ–Ñ—: 0x%08x\n" -#: vms-alpha.c:5988 +#: vms-alpha.c:6031 #, c-format msgid "unhandled egsd entry type %u\n" msgstr "непридатний до обробки тип запиÑу egsd, %u\n" -#: vms-alpha.c:6022 +#: vms-alpha.c:6066 #, c-format msgid " linkage index: %u, replacement insn: 0x%08x\n" msgstr " Ñ–Ð½Ð´ÐµÐºÑ ÐºÐ¾Ð¼Ð¿Ð¾Ð½ÑƒÐ²Ð°Ð½Ð½Ñ: %u, інÑтрукціÑ-замінник: 0x%08x\n" -#: vms-alpha.c:6025 +#: vms-alpha.c:6070 #, c-format msgid " psect idx 1: %u, offset 1: 0x%08x %08x\n" msgstr " інд. psect 1: %u, відÑтуп 1: 0x%08x %08x\n" -#: vms-alpha.c:6029 +#: vms-alpha.c:6075 #, c-format msgid " psect idx 2: %u, offset 2: 0x%08x %08x\n" msgstr " інд. psect 2: %u, відÑтуп 2: 0x%08x %08x\n" -#: vms-alpha.c:6034 +#: vms-alpha.c:6081 #, c-format msgid " psect idx 3: %u, offset 3: 0x%08x %08x\n" msgstr " інд. psect 3: %u, відÑтуп 3: 0x%08x %08x\n" -#: vms-alpha.c:6039 +#: vms-alpha.c:6086 #, c-format msgid " global name: %.*s\n" msgstr " загальна назва: %.*s\n" -#: vms-alpha.c:6049 +#: vms-alpha.c:6097 #, c-format msgid " %s (len=%u+%u):\n" msgstr " %s (довж=%u+%u):\n" -#: vms-alpha.c:6064 +#: vms-alpha.c:6119 #, c-format msgid " (type: %3u, size: 4+%3u): " msgstr " (тип: %3u, розмір: 4+%3u): " -#: vms-alpha.c:6068 +#: vms-alpha.c:6123 #, c-format msgid "STA_GBL (stack global) %.*s\n" msgstr "STA_GBL (загальний Ñтек) %.*s\n" -#: vms-alpha.c:6072 +#: vms-alpha.c:6127 #, c-format msgid "STA_LW (stack longword) 0x%08x\n" msgstr "STA_LW (Ñтек довгих Ñлів) 0x%08x\n" -#: vms-alpha.c:6076 +#: vms-alpha.c:6131 #, c-format msgid "STA_QW (stack quadword) 0x%08x %08x\n" msgstr "STA_QW (Ñтек четверних Ñлів) 0x%08x %08x\n" -#: vms-alpha.c:6081 +#: vms-alpha.c:6136 #, c-format msgid "STA_PQ (stack psect base + offset)\n" msgstr "STA_PQ (Ñтек оÑнови psect + зÑув)\n" -#: vms-alpha.c:6082 +#: vms-alpha.c:6138 #, c-format msgid " psect: %u, offset: 0x%08x %08x\n" msgstr " psect: %u, зÑув: 0x%08x %08x\n" -#: vms-alpha.c:6088 +#: vms-alpha.c:6144 #, c-format msgid "STA_LI (stack literal)\n" msgstr "STA_LI (Ñтек літералів)\n" -#: vms-alpha.c:6091 +#: vms-alpha.c:6147 #, c-format msgid "STA_MOD (stack module)\n" msgstr "STA_MOD (Ñтек модулів)\n" -#: vms-alpha.c:6094 +#: vms-alpha.c:6150 #, c-format msgid "STA_CKARG (compare procedure argument)\n" msgstr "STA_CKARG (аргумент процедури порівнÑннÑ)\n" -#: vms-alpha.c:6098 +#: vms-alpha.c:6154 #, c-format msgid "STO_B (store byte)\n" msgstr "STO_B (збережений байт)\n" -#: vms-alpha.c:6101 +#: vms-alpha.c:6157 #, c-format msgid "STO_W (store word)\n" msgstr "STO_W (збережене Ñлово)\n" -#: vms-alpha.c:6104 +#: vms-alpha.c:6160 #, c-format msgid "STO_LW (store longword)\n" msgstr "STO_LW (збережене longword)\n" -#: vms-alpha.c:6107 +#: vms-alpha.c:6163 #, c-format msgid "STO_QW (store quadword)\n" msgstr "STO_QW (збережене quadword)\n" -#: vms-alpha.c:6113 +#: vms-alpha.c:6169 #, c-format msgid "STO_IMMR (store immediate repeat) %u bytes\n" msgstr "STO_IMMR (збережене негайне повтореннÑ) %u байтів\n" -#: vms-alpha.c:6120 +#: vms-alpha.c:6176 #, c-format msgid "STO_GBL (store global) %.*s\n" msgstr "STO_GBL (загальне збереженнÑ) %.*s\n" -#: vms-alpha.c:6124 +#: vms-alpha.c:6180 #, c-format msgid "STO_CA (store code address) %.*s\n" msgstr "STO_CA (збережена адреÑа коду) %.*s\n" -#: vms-alpha.c:6128 +#: vms-alpha.c:6184 #, c-format msgid "STO_RB (store relative branch)\n" msgstr "STO_RB (збережене відноÑне відгалуженнÑ)\n" -#: vms-alpha.c:6131 +#: vms-alpha.c:6187 #, c-format msgid "STO_AB (store absolute branch)\n" msgstr "STO_AB (збережене абÑолютне відгалуженнÑ)\n" -#: vms-alpha.c:6134 +#: vms-alpha.c:6190 #, c-format msgid "STO_OFF (store offset to psect)\n" msgstr "STO_OFF (збережений зÑув щодо psect)\n" -#: vms-alpha.c:6140 +#: vms-alpha.c:6196 #, c-format msgid "STO_IMM (store immediate) %u bytes\n" msgstr "STO_IMM (негайне збереженнÑ) %u байт\n" -#: vms-alpha.c:6147 +#: vms-alpha.c:6203 #, c-format msgid "STO_GBL_LW (store global longword) %.*s\n" msgstr "STO_GBL_LW (збережене загальне longword) %.*s\n" -#: vms-alpha.c:6151 +#: vms-alpha.c:6207 #, c-format msgid "STO_OFF (store LP with procedure signature)\n" msgstr "STO_OFF (Ð·Ð±ÐµÑ€ÐµÐ¶ÐµÐ½Ð½Ñ LP з підпиÑом підпрограми)\n" -#: vms-alpha.c:6154 +#: vms-alpha.c:6210 #, c-format msgid "STO_BR_GBL (store branch global) *todo*\n" msgstr "STO_BR_GBL (збережене загальне відгалуженнÑ) *ще не реалізовано*\n" -#: vms-alpha.c:6157 +#: vms-alpha.c:6213 #, c-format msgid "STO_BR_PS (store branch psect + offset) *todo*\n" msgstr "STO_BR_PS (збережений psect Ð²Ñ–Ð´Ð³Ð°Ð»ÑƒÐ¶ÐµÐ½Ð½Ñ + зÑув) *ще не реалізовано*\n" -#: vms-alpha.c:6161 +#: vms-alpha.c:6217 #, c-format msgid "OPR_NOP (no-operation)\n" msgstr "OPR_NOP (без операції)\n" -#: vms-alpha.c:6164 +#: vms-alpha.c:6220 #, c-format msgid "OPR_ADD (add)\n" msgstr "OPR_ADD (додаваннÑ)\n" -#: vms-alpha.c:6167 +#: vms-alpha.c:6223 #, c-format msgid "OPR_SUB (substract)\n" msgstr "OPR_SUB (відніманнÑ)\n" -#: vms-alpha.c:6170 +#: vms-alpha.c:6226 #, c-format msgid "OPR_MUL (multiply)\n" msgstr "OPR_MUL (множеннÑ)\n" -#: vms-alpha.c:6173 +#: vms-alpha.c:6229 #, c-format msgid "OPR_DIV (divide)\n" msgstr "OPR_DIV (діленнÑ)\n" -#: vms-alpha.c:6176 +#: vms-alpha.c:6232 #, c-format msgid "OPR_AND (logical and)\n" msgstr "OPR_AND (логічне «І»)\n" -#: vms-alpha.c:6179 +#: vms-alpha.c:6235 #, c-format msgid "OPR_IOR (logical inclusive or)\n" msgstr "OPR_IOR (логічне включне «ÐБО»)\n" -#: vms-alpha.c:6182 +#: vms-alpha.c:6238 #, c-format msgid "OPR_EOR (logical exclusive or)\n" msgstr "OPR_EOR (логічне виключне «ÐБО»)\n" -#: vms-alpha.c:6185 +#: vms-alpha.c:6241 #, c-format msgid "OPR_NEG (negate)\n" msgstr "OPR_NEG (запереченнÑ)\n" -#: vms-alpha.c:6188 +#: vms-alpha.c:6244 #, c-format msgid "OPR_COM (complement)\n" msgstr "OPR_COM (доповненнÑ)\n" -#: vms-alpha.c:6191 +#: vms-alpha.c:6247 #, c-format msgid "OPR_INSV (insert field)\n" msgstr "OPR_INSV (вÑÑ‚Ð°Ð²Ð»ÐµÐ½Ð½Ñ Ð¿Ð¾Ð»Ñ)\n" -#: vms-alpha.c:6194 +#: vms-alpha.c:6250 #, c-format msgid "OPR_ASH (arithmetic shift)\n" msgstr "OPR_ASH (арифметичний зÑув)\n" -#: vms-alpha.c:6197 +#: vms-alpha.c:6253 #, c-format msgid "OPR_USH (unsigned shift)\n" msgstr "OPR_USH (беззнаковий зÑув)\n" -#: vms-alpha.c:6200 +#: vms-alpha.c:6256 #, c-format msgid "OPR_ROT (rotate)\n" msgstr "OPR_ROT (циклічний зÑув)\n" -#: vms-alpha.c:6203 +#: vms-alpha.c:6259 #, c-format msgid "OPR_SEL (select)\n" msgstr "OPR_SEL (вибір)\n" -#: vms-alpha.c:6206 +#: vms-alpha.c:6262 #, c-format msgid "OPR_REDEF (redefine symbol to curr location)\n" msgstr "OPR_REDEF (Ð¿ÐµÑ€ÐµÐ²Ð¸Ð·Ð½Ð°Ñ‡ÐµÐ½Ð½Ñ Ñимволу до поточної позиції)\n" -#: vms-alpha.c:6209 +#: vms-alpha.c:6265 #, c-format msgid "OPR_REDEF (define a literal)\n" msgstr "OPR_REDEF (Ð²Ð¸Ð·Ð½Ð°Ñ‡ÐµÐ½Ð½Ñ Ð»Ñ–Ñ‚ÐµÑ€Ð°Ð»Ð°)\n" -#: vms-alpha.c:6213 +#: vms-alpha.c:6269 #, c-format msgid "STC_LP (store cond linkage pair)\n" msgstr "STC_LP (збережена пара умовного компонуваннÑ)\n" -#: vms-alpha.c:6217 +#: vms-alpha.c:6273 #, c-format msgid "STC_LP_PSB (store cond linkage pair + signature)\n" msgstr "STC_LP_PSB (збережена пара умовного ÐºÐ¾Ð¼Ð¿Ð¾Ð½ÑƒÐ²Ð°Ð½Ð½Ñ + підпиÑ)\n" -#: vms-alpha.c:6218 +#: vms-alpha.c:6275 #, c-format msgid " linkage index: %u, procedure: %.*s\n" msgstr " Ñ–Ð½Ð´ÐµÐºÑ ÐºÐ¾Ð¼Ð¿Ð¾Ð½ÑƒÐ²Ð°Ð½Ð½Ñ: %u, процедура: %.*s\n" -#: vms-alpha.c:6221 +#: vms-alpha.c:6278 #, c-format msgid " signature: %.*s\n" msgstr " підпиÑ: %.*s\n" -#: vms-alpha.c:6224 +#: vms-alpha.c:6281 #, c-format msgid "STC_GBL (store cond global)\n" msgstr "STC_GBL (збережена загальна умова)\n" -#: vms-alpha.c:6225 +#: vms-alpha.c:6283 #, c-format msgid " linkage index: %u, global: %.*s\n" msgstr " Ñ–Ð½Ð´ÐµÐºÑ ÐºÐ¾Ð¼Ð¿Ð¾Ð½ÑƒÐ²Ð°Ð½Ð½Ñ: %u, загальний: %.*s\n" -#: vms-alpha.c:6229 +#: vms-alpha.c:6287 #, c-format msgid "STC_GCA (store cond code address)\n" msgstr "STC_GCA (збережена адреÑа умовного коду)\n" -#: vms-alpha.c:6230 +#: vms-alpha.c:6289 #, c-format msgid " linkage index: %u, procedure name: %.*s\n" msgstr " Ñ–Ð½Ð´ÐµÐºÑ ÐºÐ¾Ð¼Ð¿Ð¾Ð½ÑƒÐ²Ð°Ð½Ð½Ñ: %u, назва підпрограми: %.*s\n" -#: vms-alpha.c:6234 +#: vms-alpha.c:6293 #, c-format msgid "STC_PS (store cond psect + offset)\n" msgstr "STC_PS (збережений умовний psect + зÑув)\n" -#: vms-alpha.c:6236 +#: vms-alpha.c:6296 #, c-format msgid " linkage index: %u, psect: %u, offset: 0x%08x %08x\n" msgstr " Ñ–Ð½Ð´ÐµÐºÑ ÐºÐ¾Ð¼Ð¿Ð¾Ð½ÑƒÐ²Ð°Ð½Ð½Ñ: %u, psect: %u, зÑув: 0x%08x %08x\n" -#: vms-alpha.c:6243 +#: vms-alpha.c:6303 #, c-format msgid "STC_NOP_GBL (store cond NOP at global addr)\n" msgstr "STC_NOP_GBL (збережений умовний NOP за загальною адреÑою)\n" -#: vms-alpha.c:6247 +#: vms-alpha.c:6307 #, c-format msgid "STC_NOP_PS (store cond NOP at psect + offset)\n" msgstr "STC_NOP_PS (збережений умовний NOP за psect + зÑув)\n" -#: vms-alpha.c:6251 +#: vms-alpha.c:6311 #, c-format msgid "STC_BSR_GBL (store cond BSR at global addr)\n" msgstr "STC_BSR_GBL (збережений умовний BSR за загальною адреÑою)\n" -#: vms-alpha.c:6255 +#: vms-alpha.c:6315 #, c-format msgid "STC_BSR_PS (store cond BSR at psect + offset)\n" msgstr "STC_BSR_PS (збережений умовний BSR за psect + зÑув)\n" -#: vms-alpha.c:6259 +#: vms-alpha.c:6319 #, c-format msgid "STC_LDA_GBL (store cond LDA at global addr)\n" msgstr "STC_LDA_GBL (збережений умовний LDA за загальною адреÑою)\n" -#: vms-alpha.c:6263 +#: vms-alpha.c:6323 #, c-format msgid "STC_LDA_PS (store cond LDA at psect + offset)\n" msgstr "STC_LDA_PS (збережена умовна LDA за psect + зÑув)\n" -#: vms-alpha.c:6267 +#: vms-alpha.c:6327 #, c-format msgid "STC_BOH_GBL (store cond BOH at global addr)\n" msgstr "STC_BOH_GBL (збережений умовний BOH за загальною адреÑою)\n" -#: vms-alpha.c:6271 +#: vms-alpha.c:6331 #, c-format msgid "STC_BOH_PS (store cond BOH at psect + offset)\n" msgstr "STC_BOH_PS (збережений умовний BOH за psect + зÑув)\n" -#: vms-alpha.c:6276 +#: vms-alpha.c:6336 #, c-format msgid "STC_NBH_GBL (store cond or hint at global addr)\n" msgstr "STC_NBH_GBL (збережена умова або вказівка за загальною адреÑою)\n" -#: vms-alpha.c:6280 +#: vms-alpha.c:6340 #, c-format msgid "STC_NBH_PS (store cond or hint at psect + offset)\n" msgstr "STC_NBH_PS (збережена умова або вказівка за psect + зÑув)\n" -#: vms-alpha.c:6284 +#: vms-alpha.c:6344 #, c-format msgid "CTL_SETRB (set relocation base)\n" msgstr "CTL_SETRB (вÑÑ‚Ð°Ð½Ð¾Ð²Ð»ÐµÐ½Ð½Ñ Ð¾Ñнови переÑуваннÑ)\n" -#: vms-alpha.c:6290 +#: vms-alpha.c:6350 #, c-format msgid "CTL_AUGRB (augment relocation base) %u\n" msgstr "CTL_AUGRB (Ñ€Ð¾Ð·ÑˆÐ¸Ñ€ÐµÐ½Ð½Ñ Ð¾Ñнови переÑуваннÑ) %u\n" -#: vms-alpha.c:6294 +#: vms-alpha.c:6354 #, c-format msgid "CTL_DFLOC (define location)\n" msgstr "CTL_DFLOC (визначити розташуваннÑ)\n" -#: vms-alpha.c:6297 +#: vms-alpha.c:6357 #, c-format msgid "CTL_STLOC (set location)\n" msgstr "CTL_STLOC (вказати розташуваннÑ)\n" -#: vms-alpha.c:6300 +#: vms-alpha.c:6360 #, c-format msgid "CTL_STKDL (stack defined location)\n" msgstr "CTL_STKDL (розташуваннÑ, визначене Ñтеком)\n" -#: vms-alpha.c:6303 vms-alpha.c:6717 +#: vms-alpha.c:6363 vms-alpha.c:6787 vms-alpha.c:6913 #, c-format msgid "*unhandled*\n" msgstr "*не оброблено*\n" -#: vms-alpha.c:6333 vms-alpha.c:6372 +#: vms-alpha.c:6393 vms-alpha.c:6432 #, c-format msgid "cannot read GST record length\n" msgstr "не вдалоÑÑ Ð¿Ñ€Ð¾Ñ‡Ð¸Ñ‚Ð°Ñ‚Ð¸ довжину запиÑу GST\n" #. Ill-formed. -#: vms-alpha.c:6354 +#: vms-alpha.c:6414 #, c-format msgid "cannot find EMH in first GST record\n" msgstr "не вдалоÑÑ Ð·Ð½Ð°Ð¹Ñ‚Ð¸ EMH у першому запиÑÑ– GST\n" -#: vms-alpha.c:6380 +#: vms-alpha.c:6440 #, c-format msgid "cannot read GST record header\n" msgstr "не вдалоÑÑ Ð¿Ñ€Ð¾Ñ‡Ð¸Ñ‚Ð°Ñ‚Ð¸ заголовок запиÑу GST\n" -#: vms-alpha.c:6393 +#: vms-alpha.c:6453 #, c-format msgid " corrupted GST\n" msgstr " пошкоджений GST\n" -#: vms-alpha.c:6401 +#: vms-alpha.c:6461 #, c-format msgid "cannot read GST record\n" msgstr "не вдалоÑÑ Ð¿Ñ€Ð¾Ñ‡Ð¸Ñ‚Ð°Ñ‚Ð¸ Ð·Ð°Ð¿Ð¸Ñ GST\n" -#: vms-alpha.c:6430 +#: vms-alpha.c:6490 #, c-format msgid " unhandled EOBJ record type %u\n" msgstr " непридатний до обробки тип запиÑу EOBJ, %u\n" -#: vms-alpha.c:6453 +#: vms-alpha.c:6514 #, c-format msgid " bitcount: %u, base addr: 0x%08x\n" msgstr " кількіÑÑ‚ÑŒ бітів: %u, базова адреÑа: 0x%08x\n" -#: vms-alpha.c:6466 +#: vms-alpha.c:6528 #, c-format msgid " bitmap: 0x%08x (count: %u):\n" msgstr " бітовий образ: 0x%08x (лічильник: %u):\n" -#: vms-alpha.c:6473 +#: vms-alpha.c:6535 #, c-format msgid " %08x" msgstr " %08x" -#: vms-alpha.c:6498 +#: vms-alpha.c:6561 #, c-format msgid " image %u (%u entries)\n" msgstr " образ %u (%u запиÑів)\n" -#: vms-alpha.c:6503 +#: vms-alpha.c:6567 #, c-format msgid " offset: 0x%08x, val: 0x%08x\n" msgstr " відÑтуп: 0x%08x, значеннÑ: 0x%08x\n" -#: vms-alpha.c:6524 +#: vms-alpha.c:6589 #, c-format msgid " image %u (%u entries), offsets:\n" msgstr " образ %u (%u запиÑів), відÑтупи:\n" -#: vms-alpha.c:6531 +#: vms-alpha.c:6596 #, c-format msgid " 0x%08x" msgstr " 0x%08x" #. 64 bits. -#: vms-alpha.c:6653 +#: vms-alpha.c:6718 #, c-format msgid "64 bits *unhandled*\n" msgstr "64 біти *не оброблÑєтьÑÑ*\n" -#: vms-alpha.c:6657 +#: vms-alpha.c:6723 #, c-format msgid "class: %u, dtype: %u, length: %u, pointer: 0x%08x\n" msgstr "клаÑ: %u, dtype: %u, довжина: %u, вказівник: 0x%08x\n" -#: vms-alpha.c:6668 +#: vms-alpha.c:6734 #, c-format msgid "non-contiguous array of %s\n" msgstr "розривний маÑив %s\n" -#: vms-alpha.c:6672 +#: vms-alpha.c:6739 #, c-format msgid "dimct: %u, aflags: 0x%02x, digits: %u, scale: %u\n" msgstr "dimct: %u, aflags: 0x%02x, цифр: %u, шкала: %u\n" -#: vms-alpha.c:6676 +#: vms-alpha.c:6744 #, c-format msgid "arsize: %u, a0: 0x%08x\n" msgstr "arsize: %u, a0: 0x%08x\n" -#: vms-alpha.c:6680 +#: vms-alpha.c:6748 #, c-format msgid "Strides:\n" msgstr "Кроки:\n" -#: vms-alpha.c:6685 -#, c-format -msgid "[%u]: %u\n" -msgstr "[%u]: %u\n" - -#: vms-alpha.c:6690 +#: vms-alpha.c:6758 #, c-format msgid "Bounds:\n" msgstr "Межі:\n" -#: vms-alpha.c:6695 +#: vms-alpha.c:6764 #, c-format msgid "[%u]: Lower: %u, upper: %u\n" msgstr "[%u]: нижнÑ: %u, верхнÑ: %u\n" -#: vms-alpha.c:6707 +#: vms-alpha.c:6776 #, c-format msgid "unaligned bit-string of %s\n" msgstr "невирівнÑний бітовий Ñ€Ñдок %s\n" -#: vms-alpha.c:6711 +#: vms-alpha.c:6781 #, c-format msgid "base: %u, pos: %u\n" msgstr "оÑнова: %u, позиціÑ: %u\n" -#: vms-alpha.c:6731 +#: vms-alpha.c:6802 #, c-format msgid "vflags: 0x%02x, value: 0x%08x " msgstr "vflags: 0x%02x, значеннÑ: 0x%08x " -#: vms-alpha.c:6737 +#: vms-alpha.c:6808 #, c-format msgid "(no value)\n" msgstr "(нема значеннÑ)\n" -#: vms-alpha.c:6740 +#: vms-alpha.c:6811 #, c-format msgid "(not active)\n" msgstr "(неактивне)\n" -#: vms-alpha.c:6743 +#: vms-alpha.c:6814 #, c-format msgid "(not allocated)\n" msgstr "(не розміщено)\n" -#: vms-alpha.c:6746 +#: vms-alpha.c:6817 #, c-format msgid "(descriptor)\n" msgstr "(деÑкриптор)\n" -#: vms-alpha.c:6750 +#: vms-alpha.c:6821 #, c-format msgid "(trailing value)\n" msgstr "(хвоÑтове значеннÑ)\n" -#: vms-alpha.c:6753 +#: vms-alpha.c:6824 #, c-format msgid "(value spec follows)\n" msgstr "(далі ÑÐ¿ÐµÑ†Ð¸Ñ„Ñ–ÐºÐ°Ñ†Ñ–Ñ Ð·Ð½Ð°Ñ‡ÐµÐ½ÑŒ)\n" -#: vms-alpha.c:6756 +#: vms-alpha.c:6827 #, c-format msgid "(at bit offset %u)\n" msgstr "(за відÑтупом у бітах %u)\n" -#: vms-alpha.c:6759 +#: vms-alpha.c:6831 #, c-format msgid "(reg: %u, disp: %u, indir: %u, kind: " msgstr "(рег: %u, disp: %u, indir: %u, тип: " -#: vms-alpha.c:6766 +#: vms-alpha.c:6838 msgid "literal" msgstr "літерал" -#: vms-alpha.c:6769 +#: vms-alpha.c:6841 msgid "address" msgstr "адреÑа" -#: vms-alpha.c:6772 +#: vms-alpha.c:6844 msgid "desc" msgstr "деÑк" -#: vms-alpha.c:6775 +#: vms-alpha.c:6847 msgid "reg" msgstr "рег" -#: vms-alpha.c:6850 +#: vms-alpha.c:6864 +#, c-format +msgid "len: %2u, kind: %2u " +msgstr "довж.: %2u, тип: %2u " + +#: vms-alpha.c:6870 +#, c-format +msgid "atomic, type=0x%02x %s\n" +msgstr "атомарний, тип=0x%02x %s\n" + +#: vms-alpha.c:6874 +#, c-format +msgid "indirect, defined at 0x%08x\n" +msgstr "опоÑередкований, визначено тут: 0x%08x\n" + +#: vms-alpha.c:6878 +#, c-format +msgid "typed pointer\n" +msgstr "типізований вказівник\n" + +#: vms-alpha.c:6882 +#, c-format +msgid "pointer\n" +msgstr "вказівник\n" + +#: vms-alpha.c:6890 +#, c-format +msgid "array, dim: %u, bitmap: " +msgstr "маÑив, розмірніÑÑ‚ÑŒ: %u, бітова карта: " + +#: vms-alpha.c:6897 +#, c-format +msgid "array descriptor:\n" +msgstr "деÑкриптор маÑиву:\n" + +#: vms-alpha.c:6904 +#, c-format +msgid "type spec for element:\n" +msgstr "ÑÐ¿ÐµÑ†Ð¸Ñ„Ñ–ÐºÐ°Ñ†Ñ–Ñ Ñ‚Ð¸Ð¿Ñƒ елемента:\n" + +#: vms-alpha.c:6906 +#, c-format +msgid "type spec for subscript %u:\n" +msgstr "ÑÐ¿ÐµÑ†Ð¸Ñ„Ñ–ÐºÐ°Ñ†Ñ–Ñ Ñ‚Ð¸Ð¿Ñƒ Ð´Ð»Ñ ÑпиÑку індекÑів %u:\n" + +#: vms-alpha.c:6924 #, c-format msgid "Debug symbol table:\n" msgstr "Ð¢Ð°Ð±Ð»Ð¸Ñ†Ñ Ñимволів зневаджуваннÑ:\n" -#: vms-alpha.c:6861 +#: vms-alpha.c:6935 #, c-format msgid "cannot read DST header\n" msgstr "не вдалоÑÑ Ð¿Ñ€Ð¾Ñ‡Ð¸Ñ‚Ð°Ñ‚Ð¸ заголовок DST\n" -#: vms-alpha.c:6866 +#: vms-alpha.c:6941 #, c-format msgid " type: %3u, len: %3u (at 0x%08x): " msgstr " тип: %3u, довжина: %3u (за 0x%08x): " -#: vms-alpha.c:6880 +#: vms-alpha.c:6955 #, c-format msgid "cannot read DST symbol\n" msgstr "не вдалоÑÑ Ð¿Ñ€Ð¾Ñ‡Ð¸Ñ‚Ð°Ñ‚Ð¸ Ñимвол DST\n" -#: vms-alpha.c:6923 +#: vms-alpha.c:6998 #, c-format msgid "standard data: %s\n" msgstr "Ñтандартні дані: %s\n" -#: vms-alpha.c:6926 vms-alpha.c:7010 +#: vms-alpha.c:7001 vms-alpha.c:7089 #, c-format msgid " name: %.*s\n" msgstr " назва: %.*s\n" -#: vms-alpha.c:6933 +#: vms-alpha.c:7008 #, c-format msgid "modbeg\n" msgstr "modbeg\n" -#: vms-alpha.c:6934 +#: vms-alpha.c:7010 #, c-format msgid " flags: %d, language: %u, major: %u, minor: %u\n" msgstr " прапорці: %d, мова: %u, Ñтарший: %u, молодший: %u\n" -#: vms-alpha.c:6940 vms-alpha.c:7206 +#: vms-alpha.c:7016 vms-alpha.c:7290 #, c-format msgid " module name: %.*s\n" msgstr " назва модулÑ: %.*s\n" -#: vms-alpha.c:6943 +#: vms-alpha.c:7019 #, c-format msgid " compiler : %.*s\n" msgstr " компілÑтор : %.*s\n" -#: vms-alpha.c:6948 +#: vms-alpha.c:7024 #, c-format msgid "modend\n" msgstr "modend\n" -#: vms-alpha.c:6955 +#: vms-alpha.c:7031 msgid "rtnbeg\n" msgstr "rtnbeg\n" -#: vms-alpha.c:6956 +#: vms-alpha.c:7033 #, c-format msgid " flags: %u, address: 0x%08x, pd-address: 0x%08x\n" msgstr " прапорці: %u, адреÑа: 0x%08x, pd-адреÑа: 0x%08x\n" -#: vms-alpha.c:6961 +#: vms-alpha.c:7038 #, c-format msgid " routine name: %.*s\n" msgstr " назва процедури: %.*s\n" -#: vms-alpha.c:6969 +#: vms-alpha.c:7046 #, c-format msgid "rtnend: size 0x%08x\n" msgstr "rtnend: розмір 0x%08x\n" -#: vms-alpha.c:6977 +#: vms-alpha.c:7054 #, c-format msgid "prolog: bkpt address 0x%08x\n" msgstr "пролог: адреÑа bkpt 0x%08x\n" -#: vms-alpha.c:6985 +#: vms-alpha.c:7063 #, c-format msgid "epilog: flags: %u, count: %u\n" msgstr "епілог: прапорці: %u, лічильник: %u\n" -#: vms-alpha.c:6994 +#: vms-alpha.c:7073 #, c-format msgid "blkbeg: address: 0x%08x, name: %.*s\n" msgstr "blkbeg: адреÑа: 0x%08x, назва: %.*s\n" -#: vms-alpha.c:7003 +#: vms-alpha.c:7082 #, c-format msgid "blkend: size: 0x%08x\n" msgstr "blkend: розмір: 0x%08x\n" -#: vms-alpha.c:7009 +#: vms-alpha.c:7088 #, c-format msgid "typspec (len: %u)\n" msgstr "typspec (довж.: %u)\n" -#: vms-alpha.c:7016 +#: vms-alpha.c:7095 #, c-format msgid "septyp, name: %.*s\n" msgstr "septyp, назва: %.*s\n" -#: vms-alpha.c:7025 +#: vms-alpha.c:7104 #, c-format msgid "recbeg: name: %.*s\n" msgstr "recbeg: назва: %.*s\n" -#: vms-alpha.c:7032 +#: vms-alpha.c:7106 +#, c-format +msgid " len: %u bits\n" +msgstr " довжина: %u бітів\n" + +#: vms-alpha.c:7111 #, c-format msgid "recend\n" msgstr "recend\n" -#: vms-alpha.c:7035 +#: vms-alpha.c:7115 #, c-format msgid "enumbeg, len: %u, name: %.*s\n" msgstr "enumbeg, довжина: %u, назва: %.*s\n" -#: vms-alpha.c:7039 +#: vms-alpha.c:7119 #, c-format msgid "enumelt, name: %.*s\n" msgstr "enumelt, назва: %.*s\n" -#: vms-alpha.c:7043 +#: vms-alpha.c:7123 #, c-format msgid "enumend\n" msgstr "enumend\n" -#: vms-alpha.c:7060 +#: vms-alpha.c:7128 +#, c-format +msgid "label, name: %.*s\n" +msgstr "мітка, назва: %.*s\n" + +#: vms-alpha.c:7130 +#, c-format +msgid " address: 0x%08x\n" +msgstr " адреÑа: 0x%08x\n" + +#: vms-alpha.c:7140 #, c-format msgid "discontiguous range (nbr: %u)\n" msgstr "розривний діапазон (nbr: %u)\n" -#: vms-alpha.c:7062 +#: vms-alpha.c:7143 #, c-format msgid " address: 0x%08x, size: %u\n" msgstr " адреÑа: 0x%08x, розмір: %u\n" -#: vms-alpha.c:7072 +#: vms-alpha.c:7153 #, c-format msgid "line num (len: %u)\n" msgstr "номер Ñ€Ñдка (довжина: %u)\n" -#: vms-alpha.c:7089 +#: vms-alpha.c:7170 #, c-format msgid "delta_pc_w %u\n" msgstr "delta_pc_w %u\n" -#: vms-alpha.c:7096 +#: vms-alpha.c:7177 #, c-format msgid "incr_linum(b): +%u\n" msgstr "incr_linum(b): +%u\n" -#: vms-alpha.c:7102 +#: vms-alpha.c:7183 #, c-format msgid "incr_linum_w: +%u\n" msgstr "incr_linum_w: +%u\n" -#: vms-alpha.c:7108 +#: vms-alpha.c:7189 #, c-format msgid "incr_linum_l: +%u\n" msgstr "incr_linum_l: +%u\n" -#: vms-alpha.c:7114 +#: vms-alpha.c:7195 #, c-format msgid "set_line_num(w) %u\n" msgstr "set_line_num(w) %u\n" -#: vms-alpha.c:7119 +#: vms-alpha.c:7200 #, c-format msgid "set_line_num_b %u\n" msgstr "set_line_num_b %u\n" -#: vms-alpha.c:7124 +#: vms-alpha.c:7205 #, c-format msgid "set_line_num_l %u\n" msgstr "set_line_num_l %u\n" -#: vms-alpha.c:7129 +#: vms-alpha.c:7210 #, c-format msgid "set_abs_pc: 0x%08x\n" msgstr "set_abs_pc: 0x%08x\n" -#: vms-alpha.c:7133 +#: vms-alpha.c:7214 #, c-format msgid "delta_pc_l: +0x%08x\n" msgstr "delta_pc_l: +0x%08x\n" -#: vms-alpha.c:7138 +#: vms-alpha.c:7219 #, c-format msgid "term(b): 0x%02x" msgstr "term(b): 0x%02x" -#: vms-alpha.c:7140 +#: vms-alpha.c:7221 #, c-format msgid " pc: 0x%08x\n" msgstr " pc: 0x%08x\n" -#: vms-alpha.c:7145 +#: vms-alpha.c:7226 #, c-format msgid "term_w: 0x%04x" msgstr "term_w: 0x%04x" -#: vms-alpha.c:7147 +#: vms-alpha.c:7228 #, c-format msgid " pc: 0x%08x\n" msgstr " pc: 0x%08x\n" -#: vms-alpha.c:7153 +#: vms-alpha.c:7234 #, c-format msgid "delta pc +%-4d" msgstr "приріÑÑ‚ pc +%-4d" -#: vms-alpha.c:7156 +#: vms-alpha.c:7238 #, c-format msgid " pc: 0x%08x line: %5u\n" msgstr " pc: 0x%08x Ñ€Ñдок: %5u\n" -#: vms-alpha.c:7161 +#: vms-alpha.c:7243 #, c-format msgid " *unhandled* cmd %u\n" msgstr " *непридатна* команда %u\n" -#: vms-alpha.c:7176 +#: vms-alpha.c:7258 #, c-format msgid "source (len: %u)\n" msgstr "джерело (довжина: %u)\n" -#: vms-alpha.c:7190 +#: vms-alpha.c:7273 #, c-format msgid " declfile: len: %u, flags: %u, fileid: %u\n" msgstr " declfile: довжина: %u, прапорці: %u, ід. файла: %u\n" -#: vms-alpha.c:7194 +#: 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:7203 +#: vms-alpha.c:7287 #, c-format msgid " filename : %.*s\n" msgstr " назва файла: %.*s\n" -#: vms-alpha.c:7212 +#: vms-alpha.c:7296 #, c-format msgid " setfile %u\n" msgstr " setfile %u\n" -#: vms-alpha.c:7217 vms-alpha.c:7222 +#: vms-alpha.c:7301 vms-alpha.c:7306 #, c-format msgid " setrec %u\n" msgstr " setrec %u\n" -#: vms-alpha.c:7227 vms-alpha.c:7232 +#: vms-alpha.c:7311 vms-alpha.c:7316 #, c-format msgid " setlnum %u\n" msgstr " setlnum %u\n" -#: vms-alpha.c:7237 vms-alpha.c:7242 +#: vms-alpha.c:7321 vms-alpha.c:7326 #, c-format msgid " deflines %u\n" msgstr " deflines %u\n" -#: vms-alpha.c:7246 +#: vms-alpha.c:7330 #, c-format msgid " formfeed\n" msgstr " formfeed\n" -#: vms-alpha.c:7250 +#: vms-alpha.c:7334 #, c-format msgid " *unhandled* cmd %u\n" msgstr " *непридатна* команда %u\n" -#: vms-alpha.c:7262 +#: vms-alpha.c:7346 #, c-format msgid "*unhandled* dst type %u\n" msgstr "*непридатний* тип призначеннÑ, %u\n" -#: vms-alpha.c:7294 +#: vms-alpha.c:7378 #, c-format msgid "cannot read EIHD\n" msgstr "не вдалоÑÑ Ð¿Ñ€Ð¾Ñ‡Ð¸Ñ‚Ð°Ñ‚Ð¸ EIHD\n" -#: vms-alpha.c:7297 +#: vms-alpha.c:7382 #, c-format msgid "EIHD: (size: %u, nbr blocks: %u)\n" msgstr "EIHD: (розмір: %u, кількіÑÑ‚ÑŒ блоків: %u)\n" -#: vms-alpha.c:7300 +#: vms-alpha.c:7386 #, c-format msgid " majorid: %u, minorid: %u\n" msgstr " majorid: %u, minorid: %u\n" -#: vms-alpha.c:7308 +#: vms-alpha.c:7394 msgid "executable" msgstr "виконуваний" -#: vms-alpha.c:7311 +#: vms-alpha.c:7397 msgid "linkable image" msgstr "компонований образ" -#: vms-alpha.c:7317 +#: vms-alpha.c:7404 #, c-format msgid " image type: %u (%s)" msgstr " тип образу: %u (%s)" -#: vms-alpha.c:7323 +#: vms-alpha.c:7410 msgid "native" msgstr "Ñтандартний" -#: vms-alpha.c:7326 +#: vms-alpha.c:7413 msgid "CLI" msgstr "CLI" -#: vms-alpha.c:7332 +#: vms-alpha.c:7420 #, c-format msgid ", subtype: %u (%s)\n" msgstr ", підтип: %u (%s)\n" -#: vms-alpha.c:7338 +#: vms-alpha.c:7427 #, c-format msgid " offsets: isd: %u, activ: %u, symdbg: %u, imgid: %u, patch: %u\n" msgstr " зÑуви: isd: %u, activ: %u, symdbg: %u, imgid: %u, patch: %u\n" -#: vms-alpha.c:7342 +#: vms-alpha.c:7431 #, c-format msgid " fixup info rva: " msgstr " дані щодо прив’Ñзки rva: " -#: vms-alpha.c:7344 +#: vms-alpha.c:7433 #, c-format msgid ", symbol vector rva: " msgstr ", вектор Ñимволів rva: " -#: vms-alpha.c:7347 +#: vms-alpha.c:7436 #, c-format msgid "" "\n" @@ -5255,694 +7388,688 @@ msgstr "" "\n" " відÑтуп маÑиву верÑÑ–Ñ—: %u\n" -#: vms-alpha.c:7351 +#: vms-alpha.c:7441 #, c-format msgid " img I/O count: %u, nbr channels: %u, req pri: %08x%08x\n" msgstr " лічильник введеннÑ-Ð²Ð¸Ð²ÐµÐ´ÐµÐ½Ð½Ñ Ð¾Ð±Ñ€Ð°Ð·Ñƒ: %u, к-Ñ‚ÑŒ каналів: %u, пріоритетніÑÑ‚ÑŒ: %08x%08x\n" -#: vms-alpha.c:7357 +#: vms-alpha.c:7447 #, c-format msgid " linker flags: %08x:" msgstr " прапорці компонувальника: %08x:" -#: vms-alpha.c:7387 +#: vms-alpha.c:7478 #, c-format msgid " ident: 0x%08x, sysver: 0x%08x, match ctrl: %u, symvect_size: %u\n" msgstr " ident: 0x%08x, sysver: 0x%08x, match ctrl: %u, symvect_size: %u\n" -#: vms-alpha.c:7393 +#: vms-alpha.c:7484 #, c-format msgid " BPAGE: %u" msgstr " BPAGE: %u" -#: vms-alpha.c:7399 +#: vms-alpha.c:7491 #, c-format msgid ", ext fixup offset: %u, no_opt psect off: %u" msgstr ", зÑув розшир. прив’зÑки: %u, зÑув psect no_opt: %u" -#: vms-alpha.c:7402 +#: vms-alpha.c:7494 #, c-format msgid ", alias: %u\n" msgstr ", пÑевдонім: %u\n" -#: vms-alpha.c:7410 +#: vms-alpha.c:7502 #, c-format msgid "system version array information:\n" msgstr "маÑив даних щодо верÑÑ–Ñ— ÑиÑтеми:\n" -#: vms-alpha.c:7414 +#: vms-alpha.c:7506 #, c-format msgid "cannot read EIHVN header\n" msgstr "не вдалоÑÑ Ð¿Ñ€Ð¾Ñ‡Ð¸Ñ‚Ð°Ñ‚Ð¸ заголовок EIHVN\n" -#: vms-alpha.c:7424 +#: vms-alpha.c:7516 #, c-format msgid "cannot read EIHVN version\n" msgstr "не вдалоÑÑ Ð¿Ñ€Ð¾Ñ‡Ð¸Ñ‚Ð°Ñ‚Ð¸ верÑÑ–ÑŽ EIHVN\n" -#: vms-alpha.c:7427 +#: vms-alpha.c:7519 #, c-format msgid " %02u " msgstr " %02u " -#: vms-alpha.c:7431 +#: vms-alpha.c:7523 msgid "BASE_IMAGE " msgstr "BASE_IMAGE " -#: vms-alpha.c:7434 +#: vms-alpha.c:7526 msgid "MEMORY_MANAGEMENT" msgstr "MEMORY_MANAGEMENT" -#: vms-alpha.c:7437 +#: vms-alpha.c:7529 msgid "IO " msgstr "IO " -#: vms-alpha.c:7440 +#: vms-alpha.c:7532 msgid "FILES_VOLUMES " msgstr "FILES_VOLUMES " -#: vms-alpha.c:7443 +#: vms-alpha.c:7535 msgid "PROCESS_SCHED " msgstr "PROCESS_SCHED " -#: vms-alpha.c:7446 +#: vms-alpha.c:7538 msgid "SYSGEN " msgstr "SYSGEN " -#: vms-alpha.c:7449 +#: vms-alpha.c:7541 msgid "CLUSTERS_LOCKMGR " msgstr "CLUSTERS_LOCKMGR " -#: vms-alpha.c:7452 +#: vms-alpha.c:7544 msgid "LOGICAL_NAMES " msgstr "LOGICAL_NAMES " -#: vms-alpha.c:7455 +#: vms-alpha.c:7547 msgid "SECURITY " msgstr "SECURITY " -#: vms-alpha.c:7458 +#: vms-alpha.c:7550 msgid "IMAGE_ACTIVATOR " msgstr "IMAGE_ACTIVATOR " -#: vms-alpha.c:7461 +#: vms-alpha.c:7553 msgid "NETWORKS " msgstr "NETWORKS " -#: vms-alpha.c:7464 +#: vms-alpha.c:7556 msgid "COUNTERS " msgstr "COUNTERS " -#: vms-alpha.c:7467 +#: vms-alpha.c:7559 msgid "STABLE " msgstr "STABLE " -#: vms-alpha.c:7470 +#: vms-alpha.c:7562 msgid "MISC " msgstr "MISC " -#: vms-alpha.c:7473 +#: vms-alpha.c:7565 msgid "CPU " msgstr "CPU " -#: vms-alpha.c:7476 +#: vms-alpha.c:7568 msgid "VOLATILE " msgstr "VOLATILE " -#: vms-alpha.c:7479 +#: vms-alpha.c:7571 msgid "SHELL " msgstr "SHELL " -#: vms-alpha.c:7482 +#: vms-alpha.c:7574 msgid "POSIX " msgstr "POSIX " -#: vms-alpha.c:7485 +#: vms-alpha.c:7577 msgid "MULTI_PROCESSING " msgstr "MULTI_PROCESSING " -#: vms-alpha.c:7488 +#: vms-alpha.c:7580 msgid "GALAXY " msgstr "GALAXY " -#: vms-alpha.c:7491 +#: vms-alpha.c:7583 msgid "*unknown* " msgstr "*невідомо* " -#: vms-alpha.c:7494 -#, c-format -msgid ": %u.%u\n" -msgstr ": %u.%u\n" - -#: vms-alpha.c:7507 vms-alpha.c:7766 +#: vms-alpha.c:7599 vms-alpha.c:7874 #, c-format msgid "cannot read EIHA\n" msgstr "не вдалоÑÑ Ð¿Ñ€Ð¾Ñ‡Ð¸Ñ‚Ð°Ñ‚Ð¸ EIHA\n" -#: vms-alpha.c:7510 +#: vms-alpha.c:7602 #, c-format msgid "Image activation: (size=%u)\n" msgstr "ÐÐºÑ‚Ð¸Ð²Ð°Ñ†Ñ–Ñ Ð¾Ð±Ñ€Ð°Ð·Ñƒ: (розмір=%u)\n" -#: vms-alpha.c:7512 +#: vms-alpha.c:7605 #, c-format msgid " First address : 0x%08x 0x%08x\n" msgstr " Перша адреÑа: 0x%08x 0x%08x\n" -#: vms-alpha.c:7515 +#: vms-alpha.c:7609 #, c-format msgid " Second address: 0x%08x 0x%08x\n" msgstr " Друга адреÑа: 0x%08x 0x%08x\n" -#: vms-alpha.c:7518 +#: vms-alpha.c:7613 #, c-format msgid " Third address : 0x%08x 0x%08x\n" msgstr " Ð¢Ñ€ÐµÑ‚Ñ Ð°Ð´Ñ€ÐµÑа: 0x%08x 0x%08x\n" -#: vms-alpha.c:7521 +#: vms-alpha.c:7617 #, c-format msgid " Fourth address: 0x%08x 0x%08x\n" msgstr " Четверта адреÑа: 0x%08x 0x%08x\n" -#: vms-alpha.c:7524 +#: vms-alpha.c:7621 #, c-format msgid " Shared image : 0x%08x 0x%08x\n" msgstr " Спільний образ: 0x%08x 0x%08x\n" -#: vms-alpha.c:7535 +#: vms-alpha.c:7632 #, c-format msgid "cannot read EIHI\n" msgstr "не вдалоÑÑ Ð¿Ñ€Ð¾Ñ‡Ð¸Ñ‚Ð°Ñ‚Ð¸ EIHI\n" -#: vms-alpha.c:7538 +#: vms-alpha.c:7636 #, c-format msgid "Image identification: (major: %u, minor: %u)\n" msgstr "Ð†Ð´ÐµÐ½Ñ‚Ð¸Ñ„Ñ–ÐºÐ°Ñ†Ñ–Ñ Ð¾Ð±Ñ€Ð°Ð·Ñƒ: (Ñтарший: %u, молодший: %u)\n" -#: vms-alpha.c:7541 +#: vms-alpha.c:7639 #, c-format msgid " image name : %.*s\n" msgstr " назва образу : %.*s\n" -#: vms-alpha.c:7543 +#: vms-alpha.c:7641 #, c-format msgid " link time : %s\n" msgstr " Ñ‡Ð°Ñ ÐºÐ¾Ð¼Ð¿Ð¾Ð½ÑƒÐ²Ð°Ð½Ð½Ñ : %s\n" -#: vms-alpha.c:7545 +#: vms-alpha.c:7643 #, c-format msgid " image ident : %.*s\n" msgstr " ід. образу : %.*s\n" -#: vms-alpha.c:7547 +#: vms-alpha.c:7645 #, c-format msgid " linker ident : %.*s\n" msgstr " ід. компонувальника: %.*s\n" -#: vms-alpha.c:7549 +#: vms-alpha.c:7647 #, c-format msgid " image build ident: %.*s\n" msgstr " ідентифікатор Ð·Ð±Ð¸Ñ€Ð°Ð½Ð½Ñ Ð¾Ð±Ñ€Ð°Ð·Ñƒ: %.*s\n" -#: vms-alpha.c:7559 +#: vms-alpha.c:7657 #, c-format msgid "cannot read EIHS\n" msgstr "не вдалоÑÑ Ð¿Ñ€Ð¾Ñ‡Ð¸Ñ‚Ð°Ñ‚Ð¸ EIHS\n" -#: vms-alpha.c:7562 +#: vms-alpha.c:7661 #, c-format msgid "Image symbol & debug table: (major: %u, minor: %u)\n" msgstr "Ð¢Ð°Ð±Ð»Ð¸Ñ†Ñ Ñимволів Ñ– діагноÑтики образу (оÑновна: %u, модифікаціÑ: %u)\n" -#: vms-alpha.c:7567 +#: vms-alpha.c:7667 #, c-format msgid " debug symbol table : vbn: %u, size: %u (0x%x)\n" msgstr " Ñ‚Ð°Ð±Ð»Ð¸Ñ†Ñ Ð´Ñ–Ð°Ð³Ð½Ð¾Ñтичних Ñимволів: vbn: %u, розмір: %u (0x%x)\n" -#: vms-alpha.c:7571 +#: vms-alpha.c:7672 #, c-format msgid " global symbol table: vbn: %u, records: %u\n" msgstr " Ñ‚Ð°Ð±Ð»Ð¸Ñ†Ñ Ð·Ð°Ð³Ð°Ð»ÑŒÐ½Ð¸Ñ… Ñимволів: vbn: %u, запиÑів: %u\n" -#: vms-alpha.c:7575 +#: vms-alpha.c:7677 #, c-format msgid " debug module table : vbn: %u, size: %u\n" msgstr " Ñ‚Ð°Ð±Ð»Ð¸Ñ†Ñ Ð´Ñ–Ð°Ð³Ð½Ð¾Ñтики модулів: vbn: %u, розмір: %u\n" -#: vms-alpha.c:7588 +#: vms-alpha.c:7690 #, c-format msgid "cannot read EISD\n" msgstr "не вдалоÑÑ Ð¿Ñ€Ð¾Ñ‡Ð¸Ñ‚Ð°Ñ‚Ð¸ EISD\n" -#: vms-alpha.c:7598 +#: vms-alpha.c:7701 #, c-format msgid "Image section descriptor: (major: %u, minor: %u, size: %u, offset: %u)\n" msgstr "ДеÑкриптор розділу образу: (оÑновна: %u, модифікаціÑ: %u, розмір: %u, відÑтуп: %u)\n" -#: vms-alpha.c:7605 +#: vms-alpha.c:7709 #, c-format msgid " section: base: 0x%08x%08x size: 0x%08x\n" msgstr " розділ: оÑнова: 0x%08x%08x розмір: 0x%08x\n" -#: vms-alpha.c:7610 +#: vms-alpha.c:7714 #, c-format msgid " flags: 0x%04x" msgstr " прапорці: 0x%04x" -#: vms-alpha.c:7647 +#: vms-alpha.c:7752 #, c-format msgid " vbn: %u, pfc: %u, matchctl: %u type: %u (" msgstr " vbn: %u, pfc: %u, matchctl: %u тип: %u (" -#: vms-alpha.c:7653 +#: vms-alpha.c:7758 msgid "NORMAL" msgstr "NORMAL" -#: vms-alpha.c:7656 +#: vms-alpha.c:7761 msgid "SHRFXD" msgstr "SHRFXD" -#: vms-alpha.c:7659 +#: vms-alpha.c:7764 msgid "PRVFXD" msgstr "PRVFXD" -#: vms-alpha.c:7662 +#: vms-alpha.c:7767 msgid "SHRPIC" msgstr "SHRPIC" -#: vms-alpha.c:7665 +#: vms-alpha.c:7770 msgid "PRVPIC" msgstr "PRVPIC" -#: vms-alpha.c:7668 +#: vms-alpha.c:7773 msgid "USRSTACK" msgstr "USRSTACK" -#: vms-alpha.c:7676 +#: vms-alpha.c:7779 +msgid ")\n" +msgstr ")\n" + +#: vms-alpha.c:7782 #, c-format msgid " ident: 0x%08x, name: %.*s\n" msgstr " ідентифікатор: 0x%08x, назва: %.*s\n" -#: vms-alpha.c:7686 +#: vms-alpha.c:7792 #, c-format msgid "cannot read DMT\n" msgstr "не вдалоÑÑ Ð¿Ñ€Ð¾Ñ‡Ð¸Ñ‚Ð°Ñ‚Ð¸ DMT\n" -#: vms-alpha.c:7690 +#: vms-alpha.c:7796 #, c-format msgid "Debug module table:\n" msgstr "Ð¢Ð°Ð±Ð»Ð¸Ñ†Ñ Ð´Ñ–Ð°Ð³Ð½Ð¾Ñтичних Ñимволів:\n" -#: vms-alpha.c:7699 +#: vms-alpha.c:7805 #, c-format msgid "cannot read DMT header\n" msgstr "не вдалоÑÑ Ð¿Ñ€Ð¾Ñ‡Ð¸Ñ‚Ð°Ñ‚Ð¸ заголовок DMT\n" -#: vms-alpha.c:7704 +#: vms-alpha.c:7811 #, c-format msgid " module offset: 0x%08x, size: 0x%08x, (%u psects)\n" msgstr " відÑтуп модулÑ: 0x%08x, розмір: 0x%08x, (%u psect)\n" -#: vms-alpha.c:7714 +#: vms-alpha.c:7821 #, c-format msgid "cannot read DMT psect\n" msgstr "не вдалоÑÑ Ð¿Ñ€Ð¾Ñ‡Ð¸Ñ‚Ð°Ñ‚Ð¸ psect DMT\n" -#: vms-alpha.c:7717 +#: vms-alpha.c:7825 #, c-format msgid " psect start: 0x%08x, length: %u\n" msgstr " початок psect: 0x%08x, довжина: %u\n" -#: vms-alpha.c:7730 +#: vms-alpha.c:7838 #, c-format msgid "cannot read DST\n" msgstr "не вдалоÑÑ Ð¿Ñ€Ð¾Ñ‡Ð¸Ñ‚Ð°Ñ‚Ð¸ DST\n" -#: vms-alpha.c:7740 +#: vms-alpha.c:7848 #, c-format msgid "cannot read GST\n" msgstr "не вдалоÑÑ Ð¿Ñ€Ð¾Ñ‡Ð¸Ñ‚Ð°Ñ‚Ð¸ GST\n" -#: vms-alpha.c:7744 +#: vms-alpha.c:7852 #, c-format msgid "Global symbol table:\n" msgstr "Ð¢Ð°Ð±Ð»Ð¸Ñ†Ñ Ð·Ð°Ð³Ð°Ð»ÑŒÐ½Ð¸Ñ… Ñимволів:\n" -#: vms-alpha.c:7772 +#: vms-alpha.c:7881 #, c-format msgid "Image activator fixup: (major: %u, minor: %u)\n" msgstr "Прив’Ñзка адреÑи активатора образу: (оÑновна: %u, модифікаціÑ: %u)\n" -#: vms-alpha.c:7775 +#: vms-alpha.c:7885 #, c-format msgid " iaflink : 0x%08x %08x\n" msgstr " iaflink : 0x%08x %08x\n" -#: vms-alpha.c:7778 +#: vms-alpha.c:7889 #, c-format msgid " fixuplnk: 0x%08x %08x\n" msgstr " fixuplnk: 0x%08x %08x\n" -#: vms-alpha.c:7781 +#: vms-alpha.c:7892 #, c-format msgid " size : %u\n" msgstr " розмір: %u\n" -#: vms-alpha.c:7783 +#: vms-alpha.c:7894 #, c-format msgid " flags: 0x%08x\n" msgstr " прапорці: 0x%08x\n" -#: vms-alpha.c:7787 +#: vms-alpha.c:7899 #, c-format msgid " qrelfixoff: %5u, lrelfixoff: %5u\n" msgstr " qrelfixoff: %5u, lrelfixoff: %5u\n" -#: vms-alpha.c:7791 +#: vms-alpha.c:7904 #, c-format msgid " qdotadroff: %5u, ldotadroff: %5u\n" msgstr " qdotadroff: %5u, ldotadroff: %5u\n" -#: vms-alpha.c:7795 +#: vms-alpha.c:7909 #, c-format msgid " codeadroff: %5u, lpfixoff : %5u\n" msgstr " codeadroff: %5u, lpfixoff : %5u\n" -#: vms-alpha.c:7798 +#: vms-alpha.c:7912 #, c-format msgid " chgprtoff : %5u\n" msgstr " chgprtoff : %5u\n" -#: vms-alpha.c:7801 +#: vms-alpha.c:7916 #, c-format msgid " shlstoff : %5u, shrimgcnt : %5u\n" msgstr " shlstoff : %5u, shrimgcnt : %5u\n" -#: vms-alpha.c:7803 +#: vms-alpha.c:7919 #, c-format msgid " shlextra : %5u, permctx : %5u\n" msgstr " shlextra : %5u, permctx : %5u\n" -#: vms-alpha.c:7806 +#: vms-alpha.c:7922 #, c-format msgid " base_va : 0x%08x\n" msgstr " base_va : 0x%08x\n" -#: vms-alpha.c:7808 +#: vms-alpha.c:7924 #, c-format msgid " lppsbfixoff: %5u\n" msgstr " lppsbfixoff: %5u\n" -#: vms-alpha.c:7816 +#: vms-alpha.c:7932 #, c-format msgid " Shareable images:\n" msgstr " Образи Ñпільного викориÑтаннÑ:\n" -#: vms-alpha.c:7820 +#: vms-alpha.c:7937 #, c-format msgid " %u: size: %u, flags: 0x%02x, name: %.*s\n" msgstr " %u: розмір: %u, прапорці: 0x%02x, назва: %.*s\n" -#: vms-alpha.c:7827 +#: vms-alpha.c:7944 #, c-format msgid " quad-word relocation fixups:\n" msgstr " прив’Ñзки переÑувань у чотири Ñлова:\n" -#: vms-alpha.c:7832 +#: vms-alpha.c:7949 #, c-format msgid " long-word relocation fixups:\n" msgstr " прив’Ñзки переÑувань у довге Ñлово:\n" -#: vms-alpha.c:7837 +#: vms-alpha.c:7954 #, c-format msgid " quad-word .address reference fixups:\n" msgstr " прив’Ñзки поÑилань .address у чотири Ñлова:\n" -#: vms-alpha.c:7842 +#: vms-alpha.c:7959 #, c-format msgid " long-word .address reference fixups:\n" msgstr " прив’Ñзки поÑилань .address у довге Ñлово:\n" -#: vms-alpha.c:7847 +#: vms-alpha.c:7964 #, c-format msgid " Code Address Reference Fixups:\n" msgstr " Прив’Ñзки Ð°Ð´Ñ€ÐµÑ ÐºÐ¾Ð´Ñƒ:\n" -#: vms-alpha.c:7852 +#: vms-alpha.c:7969 #, c-format -msgid " Linkage Pairs Referece Fixups:\n" +msgid " Linkage Pairs Reference Fixups:\n" msgstr " Прив’Ñзки поÑилань на пари компонуваннÑ:\n" -#: vms-alpha.c:7861 +#: vms-alpha.c:7978 #, c-format msgid " Change Protection (%u entries):\n" msgstr " Зміна захиÑту (%u запиÑи):\n" -#: vms-alpha.c:7866 +#: vms-alpha.c:7984 #, c-format msgid " base: 0x%08x %08x, size: 0x%08x, prot: 0x%08x " msgstr " оÑн.: 0x%08x %08x, розм: 0x%08x, зах.: 0x%08x " #. FIXME: we do not yet support relocatable link. It is not obvious #. how to do it for debug infos. -#: vms-alpha.c:8706 +#: vms-alpha.c:8824 msgid "%P: relocatable link is not supported\n" msgstr "%P: підтримки ÐºÐ¾Ð¼Ð¿Ð¾Ð½ÑƒÐ²Ð°Ð½Ð½Ñ Ð· можливіÑÑ‚ÑŽ переÑÑƒÐ²Ð°Ð½Ð½Ñ Ð½Ðµ передбачено\n" -#: vms-alpha.c:8776 +#: vms-alpha.c:8895 +#, c-format msgid "%P: multiple entry points: in modules %B and %B\n" msgstr "%P: декілька точок входженнÑ: у модулÑÑ… %B Ñ– %B\n" -#: vms-lib.c:1423 +#: vms-lib.c:1445 #, c-format msgid "could not open shared image '%s' from '%s'" msgstr "не вдалоÑÑ Ð²Ñ–Ð´ÐºÑ€Ð¸Ñ‚Ð¸ образ Ñпільного викориÑÑ‚Ð°Ð½Ð½Ñ Â«%s» з «%s»" -#: vms-misc.c:360 +#: vms-misc.c:361 msgid "_bfd_vms_output_counted called with zero bytes" msgstr "_bfd_vms_output_counted викликано Ð´Ð»Ñ Ð½ÑƒÐ»ÑŒÐ¾Ð²Ð¾Ñ— кількоÑÑ‚Ñ– байтів" -#: vms-misc.c:365 +#: vms-misc.c:366 msgid "_bfd_vms_output_counted called with too many bytes" msgstr "_bfd_vms_output_counted викликано Ð´Ð»Ñ Ð·Ð°Ð½Ð°Ð´Ñ‚Ð¾ великої кількоÑÑ‚Ñ– байтів" -#: xcofflink.c:836 -#, c-format -msgid "%s: XCOFF shared object when not producing XCOFF output" -msgstr "%s: Ñпільний об’єкт XCOFF, хоча дані XCOFF не ÑтворюютьÑÑ" +#: xcofflink.c:832 +msgid "%B: XCOFF shared object when not producing XCOFF output" +msgstr "%B: Ñпільний об’єкт XCOFF, хоча дані XCOFF не ÑтворюютьÑÑ" -#: xcofflink.c:857 -#, c-format -msgid "%s: dynamic object with no .loader section" -msgstr "%s: динамічний об’єкт без розділу .loader" +#: xcofflink.c:853 +msgid "%B: dynamic object with no .loader section" +msgstr "%B: динамічний об’єкт без розділу .loader" -#: xcofflink.c:1416 +#: xcofflink.c:1413 +#, c-format msgid "%B: `%s' has line numbers but no enclosing section" msgstr "%B: «%s» міÑтить номери Ñ€Ñдків, але не міÑтить завершального розділу" -#: xcofflink.c:1468 +#: xcofflink.c:1466 +#, c-format msgid "%B: class %d symbol `%s' has no aux entries" msgstr "%B: ÐºÐ»Ð°Ñ %d, Ñимвол «%s» не має допоміжних запиÑів" -#: xcofflink.c:1490 +#: xcofflink.c:1489 +#, c-format msgid "%B: symbol `%s' has unrecognized csect type %d" msgstr "B: Ñимвол «%s» належить до нерозпізнаного типу csect %d" #: xcofflink.c:1502 +#, c-format msgid "%B: bad XTY_ER symbol `%s': class %d scnum %d scnlen %d" msgstr "%B: помилковий Ñимвол XTY_ER «%s»: ÐºÐ»Ð°Ñ %d, номер розділу %d, довжина розділу %d" -#: xcofflink.c:1531 +#: xcofflink.c:1532 +#, c-format msgid "%B: XMC_TC0 symbol `%s' is class %d scnlen %d" msgstr "%B: Ñимвол XMC_TC0 «%s» Ñ” клаÑом %d, довжина розділу %d" -#: xcofflink.c:1677 +#: xcofflink.c:1679 +#, c-format msgid "%B: csect `%s' not in enclosing section" msgstr "%B: csect «%s» не у завершальному розділі" -#: xcofflink.c:1784 +#: xcofflink.c:1787 +#, c-format msgid "%B: misplaced XTY_LD `%s'" msgstr "%B: помилкове Ñ€Ð¾Ð·Ñ‚Ð°ÑˆÑƒÐ²Ð°Ð½Ð½Ñ XTY_LD «%s»" -#: xcofflink.c:2103 +#: xcofflink.c:2108 +#, c-format msgid "%B: reloc %s:%d not in csect" msgstr "%B: переÑÑƒÐ²Ð°Ð½Ð½Ñ %s:%d не у csect" -#: xcofflink.c:3194 +#: xcofflink.c:3198 #, c-format msgid "%s: no such symbol" msgstr "%s: немає такого Ñимволу" -#: xcofflink.c:3299 +#: xcofflink.c:3303 #, c-format msgid "warning: attempt to export undefined symbol `%s'" msgstr "попередженнÑ: Ñпроба екÑÐ¿Ð¾Ñ€Ñ‚ÑƒÐ²Ð°Ð½Ð½Ñ Ð½ÐµÐ²Ð¸Ð·Ð½Ð°Ñ‡ÐµÐ½Ð¾Ð³Ð¾ Ñимволу «%s»" -#: xcofflink.c:3678 +#: xcofflink.c:3682 msgid "error: undefined symbol __rtinit" msgstr "помилка: невизначений Ñимвол __rtinit" -#: xcofflink.c:4057 +#: xcofflink.c:4062 +#, c-format msgid "%B: loader reloc in unrecognized section `%s'" msgstr "%B: переÑÑƒÐ²Ð°Ð½Ð½Ñ Ð·Ð°Ð²Ð°Ð½Ñ‚Ð°Ð¶ÑƒÐ²Ð°Ñ‡Ð° у нерозпізнаному розділі «%s»" -#: xcofflink.c:4068 +#: xcofflink.c:4074 +#, c-format msgid "%B: `%s' in loader reloc but not loader sym" msgstr "%B: «%s» у переÑуванні завантажувача, але не у Ñимволах завантаженнÑ" -#: xcofflink.c:4084 +#: xcofflink.c:4091 +#, c-format msgid "%B: loader reloc in read-only section %A" msgstr "%B: переÑÑƒÐ²Ð°Ð½Ð½Ñ Ð·Ð°Ð²Ð°Ð½Ñ‚Ð°Ð¶ÑƒÐ²Ð°Ñ‡Ð° у розділі, призначеному лише Ð´Ð»Ñ Ñ‡Ð¸Ñ‚Ð°Ð½Ð½Ñ, %A" -#: xcofflink.c:5106 +#: xcofflink.c:5115 #, c-format msgid "TOC overflow: 0x%lx > 0x10000; try -mminimal-toc when compiling" msgstr "ÐŸÐµÑ€ÐµÐ¿Ð¾Ð²Ð½ÐµÐ½Ð½Ñ TOC: 0x%lx > 0x10000; Ñпробуйте параметр -mminimal-toc під Ñ‡Ð°Ñ Ð·Ð±Ð¸Ñ€Ð°Ð½Ð½Ñ" -#: elf32-ia64.c:628 elf64-ia64.c:628 -msgid "%B: Can't relax br at 0x%lx in section `%A'. Please use brl or indirect branch." -msgstr "%B: не вдалоÑÑ Ð¾Ð¿Ñ‚Ð¸Ð¼Ñ–Ð·ÑƒÐ²Ð°Ñ‚Ð¸ br за адреÑою 0x%lx у розділі «%A». Будь лаÑка, ÑкориÑтайтеÑÑ brl або непрÑмим відгалуженнÑм." - -#: elf32-ia64.c:2284 elf64-ia64.c:2284 -msgid "@pltoff reloc against local symbol" -msgstr "переÑÑƒÐ²Ð°Ð½Ð½Ñ @pltoff щодо локального Ñимволу" - -#: elf32-ia64.c:3687 elf64-ia64.c:3687 -#, c-format -msgid "%s: short data segment overflowed (0x%lx >= 0x400000)" -msgstr "%s: переповнено короткий Ñегмент даних (0x%lx >= 0x400000)" - -#: elf32-ia64.c:3698 elf64-ia64.c:3698 +#: /Users/gingold/Repositories/fsf/binutils-gdb.git/bfd/elfnn-aarch64.c:1890 #, c-format -msgid "%s: __gp does not cover short data segment" -msgstr "%s: __gp не вкриває короткого Ñегмента даних" - -#: elf32-ia64.c:3965 elf64-ia64.c:3965 -msgid "%B: non-pic code with imm relocation against dynamic symbol `%s'" -msgstr "%B: не-pic код з переÑуваннÑм imm щодо динамічного Ñимволу «%s»" - -#: elf32-ia64.c:4032 elf64-ia64.c:4032 -msgid "%B: @gprel relocation against dynamic symbol %s" -msgstr "%B: переÑÑƒÐ²Ð°Ð½Ð½Ñ @gprel щодо динамічного Ñимволу %s" +msgid "Invalid AArch64 reloc number: %d" +msgstr "Ðекоректне чиÑло переÑÑƒÐ²Ð°Ð½Ð½Ñ AArch64: %d" -#: elf32-ia64.c:4095 elf64-ia64.c:4095 -msgid "%B: linking non-pic code in a position independent executable" -msgstr "%B: ÐºÐ¾Ð¼Ð¿Ð¾Ð½ÑƒÐ²Ð°Ð½Ð½Ñ Ð½Ðµ-pic коду у виконуваному файлі з незалежним позиціюваннÑм" +#: /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: помилка: замінник Ð´Ð»Ñ Ð¾Ð±Ñ€Ð¾Ð±Ð½Ð¸ÐºÐ° помилки 835769 перебуває поза доÑтупним діапазоном (файл вхідних даних Ñ” надто великим)" -#: elf32-ia64.c:4232 elf64-ia64.c:4232 -msgid "%B: @internal branch to dynamic symbol %s" -msgstr "%B: Ð²Ñ–Ð´Ð³Ð°Ð»ÑƒÐ¶ÐµÐ½Ð½Ñ @internal до динамічного Ñимволу %s" +#: /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: помилка: замінник Ð´Ð»Ñ Ð¾Ð±Ñ€Ð¾Ð±Ð½Ð¸ÐºÐ° помилки 843419 перебуває поза доÑтупним діапазоном (файл вхідних даних Ñ” надто великим)" -#: elf32-ia64.c:4234 elf64-ia64.c:4234 -msgid "%B: speculation fixup to dynamic symbol %s" -msgstr "%B: здогадка щодо адреÑної прив’Ñзки до динамічного Ñимволу %s" +#: /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: переÑÑƒÐ²Ð°Ð½Ð½Ñ %s щодо Ñимволу «%s», Ñкий може прив’ÑзуватиÑÑ Ð·Ð·Ð¾Ð²Ð½Ñ–, не можна викориÑтовувати під Ñ‡Ð°Ñ ÑÑ‚Ð²Ð¾Ñ€ÐµÐ½Ð½Ñ Ð¾Ð±â€™Ñ”ÐºÑ‚Ð° Ñпільного викориÑтаннÑ; повторно зберіть з -fPIC" -#: elf32-ia64.c:4236 elf64-ia64.c:4236 -msgid "%B: @pcrel relocation against dynamic symbol %s" -msgstr "%B: переÑÑƒÐ²Ð°Ð½Ð½Ñ @pcrel щодо динамічного Ñимволу %s" +#: /Users/gingold/Repositories/fsf/binutils-gdb.git/bfd/elfnn-aarch64.c:5431 +#, c-format +msgid "%B: Local symbol descriptor table be NULL when applying relocation %s against local symbol" +msgstr "%B: локальна Ñ‚Ð°Ð±Ð»Ð¸Ñ†Ñ Ð´ÐµÑкрипторів Ñимволів Ñ” NULL під Ñ‡Ð°Ñ Ð·Ð°ÑтоÑÑƒÐ²Ð°Ð½Ð½Ñ Ð¿ÐµÑ€ÐµÑÑƒÐ²Ð°Ð½Ð½Ñ %s щодо локального Ñимволу" -#: elf32-ia64.c:4433 elf64-ia64.c:4433 -msgid "unsupported reloc" -msgstr "непідтримуване переÑуваннÑ" +#: /Users/gingold/Repositories/fsf/binutils-gdb.git/bfd/elfnn-aarch64.c:6459 +msgid "Too many GOT entries for -fpic, please recompile with -fPIC" +msgstr "Забагато запиÑів GOT Ð´Ð»Ñ -fpic. Будь лаÑка, зберіть повторно з -fPIC" -#: elf32-ia64.c:4471 elf64-ia64.c:4471 -msgid "%B: missing TLS section for relocation %s against `%s' at 0x%lx in section `%A'." -msgstr "%B: не виÑтачає розділу TLS Ð´Ð»Ñ Ð¿ÐµÑ€ÐµÑÑƒÐ²Ð°Ð½Ð½Ñ %s щодо «%s» за адреÑою 0x%lx у розділі «%A»." +#: /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 "Однією із можливих причин цієї помилки Ñ” те, що поÑÐ¸Ð»Ð°Ð½Ð½Ñ Ð½Ð° Ñимвол у коді виконуєтьÑÑ Ñ‚Ð°Ðº, наче Ñимвол має більше вирівнюваннÑ, ніж було оголошено там, де його було визначено." -#: elf32-ia64.c:4486 elf64-ia64.c:4486 -msgid "%B: Can't relax br (%s) to `%s' at 0x%lx in section `%A' with size 0x%lx (> 0x1000000)." -msgstr "%B: не вдалоÑÑ Ð¾Ð¿Ñ‚Ð¸Ð¼Ñ–Ð·ÑƒÐ²Ð°Ñ‚Ð¸ br (%s) до «%s» за адреÑою 0x%lx у розділі «%A» з розміром 0x%lx (> 0x1000000)." +#: /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: ABI Ñ” неÑуміÑним із вибраною емулÑцією:\n" +" ціль емулÑції, «%s», не відповідає «%s»" -#: elf32-ia64.c:4748 elf64-ia64.c:4748 -msgid "%B: linking trap-on-NULL-dereference with non-trapping files" -msgstr "%B: ÐºÐ¾Ð¼Ð¿Ð¾Ð½ÑƒÐ²Ð°Ð½Ð½Ñ trap-on-NULL-dereference з файлами без Ð·Ð°Ñ…Ð¾Ð¿Ð»ÐµÐ½Ð½Ñ (trapping)" +#: /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: не можна компонувати модулі із апаратною рухомою крапкою із модулÑми із програмною рухомою крапкою" -#: elf32-ia64.c:4757 elf64-ia64.c:4757 -msgid "%B: linking big-endian files with little-endian files" -msgstr "%B: ÐºÐ¾Ð¼Ð¿Ð¾Ð½ÑƒÐ²Ð°Ð½Ð½Ñ Ñ„Ð°Ð¹Ð»Ñ–Ð² зі прÑмим порÑдком байтів з файлами зі зворотним порÑдком байтів" +#: peigen.c:157 pepigen.c:157 pex64igen.c:157 +msgid "%B: unable to find name for empty section" +msgstr "%B: не вдалоÑÑ Ð·Ð½Ð°Ð¹Ñ‚Ð¸ назву порожнього розділу" -#: elf32-ia64.c:4766 elf64-ia64.c:4766 -msgid "%B: linking 64-bit files with 32-bit files" -msgstr "%B: ÐºÐ¾Ð¼Ð¿Ð¾Ð½ÑƒÐ²Ð°Ð½Ð½Ñ 64-бітових файлів з 32-бітовими файлами" +#: peigen.c:183 pepigen.c:183 pex64igen.c:183 +msgid "%B: out of memory creating name for empty section" +msgstr "%B: вихід за межі облаÑÑ‚Ñ– пам’ÑÑ‚Ñ– під Ñ‡Ð°Ñ Ñпроби Ñтворити назву Ð´Ð»Ñ Ð¿Ð¾Ñ€Ð¾Ð¶Ð½ÑŒÐ¾Ð³Ð¾ розділу" -#: elf32-ia64.c:4775 elf64-ia64.c:4775 -msgid "%B: linking constant-gp files with non-constant-gp files" -msgstr "%B: ÐºÐ¾Ð¼Ð¿Ð¾Ð½ÑƒÐ²Ð°Ð½Ð½Ñ Ñ„Ð°Ð¹Ð»Ñ–Ð² зі Ñталим gp з файлами зі змінним gp" +#: peigen.c:194 pepigen.c:194 pex64igen.c:194 +msgid "%B: unable to create fake empty section" +msgstr "%B: не вдалоÑÑ Ñтворити фіктивний порожній розділ" -#: elf32-ia64.c:4785 elf64-ia64.c:4785 -msgid "%B: linking auto-pic files with non-auto-pic files" -msgstr "%B: ÐºÐ¾Ð¼Ð¿Ð¾Ð½ÑƒÐ²Ð°Ð½Ð½Ñ Ñ„Ð°Ð¹Ð»Ñ–Ð² з автоматичним pic з файлами без автоматичного pic" +#: peigen.c:532 pepigen.c:532 pex64igen.c:532 +msgid "%B: aout header specifies an invalid number of data-directory entries: %d" +msgstr "%B: заголовок aout вказує некоректну кількіÑÑ‚ÑŒ запиÑів каталогу даних: %d" -#: peigen.c:1002 pepigen.c:1002 pex64igen.c:1002 +#: peigen.c:1089 pepigen.c:1089 pex64igen.c:1089 #, c-format -msgid "%s: line number overflow: 0x%lx > 0xffff" -msgstr "%s: Ð¿ÐµÑ€ÐµÐ¿Ð¾Ð²Ð½ÐµÐ½Ð½Ñ Ð½Ð¾Ð¼ÐµÑ€Ñ–Ð² Ñ€Ñдків; 0x%lx > 0xffff" +msgid "%B: line number overflow: 0x%lx > 0xffff" +msgstr "%B: Ð¿ÐµÑ€ÐµÐ¿Ð¾Ð²Ð½ÐµÐ½Ð½Ñ Ð½Ð¾Ð¼ÐµÑ€Ñ–Ð² Ñ€Ñдків; 0x%lx > 0xffff" -#: peigen.c:1029 pepigen.c:1029 pex64igen.c:1029 +#: peigen.c:1233 pepigen.c:1233 pex64igen.c:1233 msgid "Export Directory [.edata (or where ever we found it)]" msgstr "Каталог екÑÐ¿Ð¾Ñ€Ñ‚ÑƒÐ²Ð°Ð½Ð½Ñ [.edata (або інше міÑце, де його знайдено)]" -#: peigen.c:1030 pepigen.c:1030 pex64igen.c:1030 +#: peigen.c:1234 pepigen.c:1234 pex64igen.c:1234 msgid "Import Directory [parts of .idata]" msgstr "Каталог Ñ–Ð¼Ð¿Ð¾Ñ€Ñ‚ÑƒÐ²Ð°Ð½Ð½Ñ [чаÑтини .idata]" -#: peigen.c:1031 pepigen.c:1031 pex64igen.c:1031 +#: peigen.c:1235 pepigen.c:1235 pex64igen.c:1235 msgid "Resource Directory [.rsrc]" msgstr "Каталог реÑурÑів [.rsrc]" -#: peigen.c:1032 pepigen.c:1032 pex64igen.c:1032 +#: peigen.c:1236 pepigen.c:1236 pex64igen.c:1236 msgid "Exception Directory [.pdata]" msgstr "Каталог виключень [.pdata]" -#: peigen.c:1033 pepigen.c:1033 pex64igen.c:1033 +#: peigen.c:1237 pepigen.c:1237 pex64igen.c:1237 msgid "Security Directory" msgstr "Каталог захиÑту" -#: peigen.c:1034 pepigen.c:1034 pex64igen.c:1034 +#: peigen.c:1238 pepigen.c:1238 pex64igen.c:1238 msgid "Base Relocation Directory [.reloc]" msgstr "Каталог базового переÑÑƒÐ²Ð°Ð½Ð½Ñ [.reloc]" -#: peigen.c:1035 pepigen.c:1035 pex64igen.c:1035 +#: peigen.c:1239 pepigen.c:1239 pex64igen.c:1239 msgid "Debug Directory" msgstr "Каталог діагноÑтики" -#: peigen.c:1036 pepigen.c:1036 pex64igen.c:1036 +#: peigen.c:1240 pepigen.c:1240 pex64igen.c:1240 msgid "Description Directory" msgstr "Каталог опиÑів" -#: peigen.c:1037 pepigen.c:1037 pex64igen.c:1037 +#: peigen.c:1241 pepigen.c:1241 pex64igen.c:1241 msgid "Special Directory" msgstr "ОÑобливий каталог" -#: peigen.c:1038 pepigen.c:1038 pex64igen.c:1038 +#: peigen.c:1242 pepigen.c:1242 pex64igen.c:1242 msgid "Thread Storage Directory [.tls]" msgstr "Каталог Ð·Ð±ÐµÑ€Ñ–Ð³Ð°Ð½Ð½Ñ Ð¿Ð¾Ñ‚Ð¾ÐºÑ–Ð² [.tls]" -#: peigen.c:1039 pepigen.c:1039 pex64igen.c:1039 +#: peigen.c:1243 pepigen.c:1243 pex64igen.c:1243 msgid "Load Configuration Directory" msgstr "Каталог Ð·Ð°Ð²Ð°Ð½Ñ‚Ð°Ð¶ÐµÐ½Ð½Ñ Ð½Ð°Ð»Ð°ÑˆÑ‚ÑƒÐ²Ð°Ð½ÑŒ" -#: peigen.c:1040 pepigen.c:1040 pex64igen.c:1040 +#: peigen.c:1244 pepigen.c:1244 pex64igen.c:1244 msgid "Bound Import Directory" msgstr "Каталог вимушеного імпортуваннÑ" -#: peigen.c:1041 pepigen.c:1041 pex64igen.c:1041 +#: peigen.c:1245 pepigen.c:1245 pex64igen.c:1245 msgid "Import Address Table Directory" msgstr "Каталог Ñ–Ð¼Ð¿Ð¾Ñ€Ñ‚ÑƒÐ²Ð°Ð½Ð½Ñ Ñ‚Ð°Ð±Ð»Ð¸Ñ†Ñ– адреÑ" -#: peigen.c:1042 pepigen.c:1042 pex64igen.c:1042 +#: peigen.c:1246 pepigen.c:1246 pex64igen.c:1246 msgid "Delay Import Directory" msgstr "Каталог відкладеного імпортуваннÑ" -#: peigen.c:1043 pepigen.c:1043 pex64igen.c:1043 +#: peigen.c:1247 pepigen.c:1247 pex64igen.c:1247 msgid "CLR Runtime Header" msgstr "Динамічний заголовок CLR" -#: peigen.c:1044 pepigen.c:1044 pex64igen.c:1044 +#: peigen.c:1248 pepigen.c:1248 pex64igen.c:1248 msgid "Reserved" msgstr "Зарезервовано" -#: peigen.c:1104 pepigen.c:1104 pex64igen.c:1104 +#: peigen.c:1308 pepigen.c:1308 pex64igen.c:1308 #, c-format msgid "" "\n" @@ -5951,7 +8078,16 @@ msgstr "" "\n" "ІÑнує Ñ‚Ð°Ð±Ð»Ð¸Ñ†Ñ Ñ–Ð¼Ð¿Ð¾Ñ€Ñ‚ÑƒÐ²Ð°Ð½Ð½Ñ, але розділу, що Ñ—Ñ— міÑтить не знайдено\n" -#: peigen.c:1109 pepigen.c:1109 pex64igen.c:1109 +#: 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" +"У %s Ñ” Ñ‚Ð°Ð±Ð»Ð¸Ñ†Ñ Ñ–Ð¼Ð¿Ð¾Ñ€Ñ‚ÑƒÐ²Ð°Ð½Ð½Ñ, але у цьому розділі немає даних\n" + +#: peigen.c:1321 pepigen.c:1321 pex64igen.c:1321 #, c-format msgid "" "\n" @@ -5960,7 +8096,7 @@ msgstr "" "\n" "У %s зберігаєтьÑÑ Ñ‚Ð°Ð±Ð»Ð¸Ñ†Ñ Ñ–Ð¼Ð¿Ð¾Ñ€Ñ‚ÑƒÐ²Ð°Ð½Ð½Ñ Ñƒ 0x%lx\n" -#: peigen.c:1151 pepigen.c:1151 pex64igen.c:1151 +#: peigen.c:1363 pepigen.c:1363 pex64igen.c:1363 #, c-format msgid "" "\n" @@ -5969,12 +8105,12 @@ msgstr "" "\n" "ДеÑкриптор функції розташовано за початковою адреÑою %04lx\n" -#: peigen.c:1154 pepigen.c:1154 pex64igen.c:1154 +#: peigen.c:1367 pepigen.c:1367 pex64igen.c:1367 #, c-format msgid "\tcode-base %08lx toc (loadable/actual) %08lx/%08lx\n" msgstr "\ttoc оÑнови коду %08lx (завантажуваний/дійÑний) %08lx/%08lx\n" -#: peigen.c:1162 pepigen.c:1162 pex64igen.c:1162 +#: peigen.c:1375 pepigen.c:1375 pex64igen.c:1375 #, c-format msgid "" "\n" @@ -5983,7 +8119,7 @@ msgstr "" "\n" "Ðемає розділу reldata! ДеÑкриптор функції не розшифровано.\n" -#: peigen.c:1167 pepigen.c:1167 pex64igen.c:1167 +#: peigen.c:1380 pepigen.c:1380 pex64igen.c:1380 #, c-format msgid "" "\n" @@ -5992,7 +8128,7 @@ msgstr "" "\n" "Таблиці Ñ–Ð¼Ð¿Ð¾Ñ€Ñ‚ÑƒÐ²Ð°Ð½Ð½Ñ (оброблений вміÑÑ‚ розділу %s)\n" -#: peigen.c:1170 pepigen.c:1170 pex64igen.c:1170 +#: peigen.c:1383 pepigen.c:1383 pex64igen.c:1383 #, c-format msgid "" " vma: Hint Time Forward DLL First\n" @@ -6001,21 +8137,21 @@ msgstr "" " vma: Ð¢Ð°Ð±Ð»Ð¸Ñ†Ñ Ð§Ð°Ñова Ланцюжок Ðазва Перший\n" " вказ. Позначка ÑпрÑм. DLL шлюз\n" -#: peigen.c:1218 pepigen.c:1218 pex64igen.c:1218 +#: peigen.c:1433 pepigen.c:1433 pex64igen.c:1433 #, c-format msgid "" "\n" -"\tDLL Name: %s\n" +"\tDLL Name: %.*s\n" msgstr "" "\n" -"\tÐазва DLL: %s\n" +"\tÐазва DLL: %.*s\n" -#: peigen.c:1229 pepigen.c:1229 pex64igen.c:1229 +#: peigen.c:1449 pepigen.c:1449 pex64igen.c:1449 #, c-format msgid "\tvma: Hint/Ord Member-Name Bound-To\n" msgstr "\tvma: Вказ/Пор Ðазва-елемента Прив’Ñзано-до\n" -#: peigen.c:1254 pepigen.c:1254 pex64igen.c:1254 +#: peigen.c:1474 pepigen.c:1474 pex64igen.c:1474 #, c-format msgid "" "\n" @@ -6024,7 +8160,13 @@ msgstr "" "\n" "ІÑнує Ð·Ð°Ð¿Ð¸Ñ Ð¿ÐµÑ€ÑˆÐ¾Ð³Ð¾ переходу, але розділу, що його міÑтить не знайдено\n" -#: peigen.c:1415 pepigen.c:1415 pex64igen.c:1415 +#: 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<пошкоджено: 0x%04lx>" + +#: peigen.c:1649 pepigen.c:1649 pex64igen.c:1649 #, c-format msgid "" "\n" @@ -6033,7 +8175,16 @@ msgstr "" "\n" "ІÑнує Ð·Ð°Ð¿Ð¸Ñ Ñ‚Ð°Ð±Ð»Ð¸Ñ†Ñ– екÑпортуваннÑ, але розділу, що Ñ—Ñ— міÑтить не знайдено\n" -#: peigen.c:1424 pepigen.c:1424 pex64igen.c:1424 +#: 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" +"У %s Ñ” Ñ‚Ð°Ð±Ð»Ð¸Ñ†Ñ ÐµÐºÑпортуваннÑ, але у цьому розділі немає даних\n" + +#: peigen.c:1665 pepigen.c:1665 pex64igen.c:1665 #, c-format msgid "" "\n" @@ -6042,7 +8193,16 @@ msgstr "" "\n" "У %s зберігаєтьÑÑ Ñ‚Ð°Ð±Ð»Ð¸Ñ†Ñ ÐµÐºÑпортуваннÑ, але Ñ—Ñ— не можна вміÑтити у цьому розділі\n" -#: peigen.c:1430 pepigen.c:1430 pex64igen.c:1430 +#: 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" +"У %s зберігаєтьÑÑ Ñ‚Ð°Ð±Ð»Ð¸Ñ†Ñ ÐµÐºÑпортуваннÑ, але вона Ñ” надто малою (%d)\n" + +#: peigen.c:1682 pepigen.c:1682 pex64igen.c:1682 #, c-format msgid "" "\n" @@ -6051,7 +8211,7 @@ msgstr "" "\n" "У %s зберігаєтьÑÑ Ñ‚Ð°Ð±Ð»Ð¸Ñ†Ñ ÐµÐºÑÐ¿Ð¾Ñ€Ñ‚ÑƒÐ²Ð°Ð½Ð½Ñ Ñƒ 0x%lx\n" -#: peigen.c:1458 pepigen.c:1458 pex64igen.c:1458 +#: peigen.c:1710 pepigen.c:1710 pex64igen.c:1710 #, c-format msgid "" "\n" @@ -6061,67 +8221,67 @@ msgstr "" "\n" "Таблиці екÑÐ¿Ð¾Ñ€Ñ‚ÑƒÐ²Ð°Ð½Ð½Ñ (оброблений вміÑÑ‚ розділу %s)\n" -#: peigen.c:1462 pepigen.c:1462 pex64igen.c:1462 +#: peigen.c:1714 pepigen.c:1714 pex64igen.c:1714 #, c-format msgid "Export Flags \t\t\t%lx\n" msgstr "Прапорці екÑпортуваннÑ\t\t%lx\n" -#: peigen.c:1465 pepigen.c:1465 pex64igen.c:1465 +#: peigen.c:1717 pepigen.c:1717 pex64igen.c:1717 #, c-format msgid "Time/Date stamp \t\t%lx\n" msgstr "Позначка чаÑу/дати\t\t%lx\n" -#: peigen.c:1468 pepigen.c:1468 pex64igen.c:1468 +#: peigen.c:1721 pepigen.c:1721 pex64igen.c:1721 #, c-format msgid "Major/Minor \t\t\t%d/%d\n" msgstr "ОÑновна/ÐœÐ¾Ð´Ð¸Ñ„Ñ–ÐºÐ°Ñ†Ñ–Ñ \t\t\t%d/%d\n" -#: peigen.c:1471 pepigen.c:1471 pex64igen.c:1471 +#: peigen.c:1724 pepigen.c:1724 pex64igen.c:1724 #, c-format msgid "Name \t\t\t\t" msgstr "Ðазва\t\t\t\t" -#: peigen.c:1477 pepigen.c:1477 pex64igen.c:1477 +#: peigen.c:1735 pepigen.c:1735 pex64igen.c:1735 #, c-format msgid "Ordinal Base \t\t\t%ld\n" msgstr "ОÑнова впорÑдковуваннÑ\t\t%ld\n" -#: peigen.c:1480 pepigen.c:1480 pex64igen.c:1480 +#: peigen.c:1738 pepigen.c:1738 pex64igen.c:1738 #, c-format msgid "Number in:\n" msgstr "Ðомер у:\n" -#: peigen.c:1483 pepigen.c:1483 pex64igen.c:1483 +#: peigen.c:1741 pepigen.c:1741 pex64igen.c:1741 #, c-format msgid "\tExport Address Table \t\t%08lx\n" msgstr "\tÐ¢Ð°Ð±Ð»Ð¸Ñ†Ñ ÐµÐºÑпортованих Ð°Ð´Ñ€ÐµÑ \t\t%08lx\n" -#: peigen.c:1487 pepigen.c:1487 pex64igen.c:1487 +#: peigen.c:1745 pepigen.c:1745 pex64igen.c:1745 #, c-format msgid "\t[Name Pointer/Ordinal] Table\t%08lx\n" msgstr "\tÐ¢Ð°Ð±Ð»Ð¸Ñ†Ñ [вказівників назв/порÑдкових номерів]\t%08lx\n" -#: peigen.c:1490 pepigen.c:1490 pex64igen.c:1490 +#: peigen.c:1748 pepigen.c:1748 pex64igen.c:1748 #, c-format msgid "Table Addresses\n" msgstr "Табличні адреÑи\n" -#: peigen.c:1493 pepigen.c:1493 pex64igen.c:1493 +#: peigen.c:1751 pepigen.c:1751 pex64igen.c:1751 #, c-format msgid "\tExport Address Table \t\t" msgstr "\tÐ¢Ð°Ð±Ð»Ð¸Ñ†Ñ ÐµÐºÑпортованих Ð°Ð´Ñ€ÐµÑ \t\t" -#: peigen.c:1498 pepigen.c:1498 pex64igen.c:1498 +#: peigen.c:1756 pepigen.c:1756 pex64igen.c:1756 #, c-format msgid "\tName Pointer Table \t\t" msgstr "\tÐ¢Ð°Ð±Ð»Ð¸Ñ†Ñ Ð²ÐºÐ°Ð·Ñ–Ð²Ð½Ð¸ÐºÑ–Ð² на назви \t\t" -#: peigen.c:1503 pepigen.c:1503 pex64igen.c:1503 +#: peigen.c:1761 pepigen.c:1761 pex64igen.c:1761 #, c-format msgid "\tOrdinal Table \t\t\t" msgstr "\tÐ¢Ð°Ð±Ð»Ð¸Ñ†Ñ Ð½Ð¾Ð¼ÐµÑ€Ñ–Ð² \t\t\t" -#: peigen.c:1517 pepigen.c:1517 pex64igen.c:1517 +#: peigen.c:1775 pepigen.c:1775 pex64igen.c:1775 #, c-format msgid "" "\n" @@ -6130,15 +8290,20 @@ msgstr "" "\n" "Ð¢Ð°Ð±Ð»Ð¸Ñ†Ñ ÐµÐºÑпортованих Ð°Ð´Ñ€ÐµÑ â€” оÑнова порÑдкових номерів: %ld\n" -#: peigen.c:1536 pepigen.c:1536 pex64igen.c:1536 +#: 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 "\tÐекоректне rva (0x%lx) або кількіÑÑ‚ÑŒ запиÑів (0x%lx) таблиці Ð°Ð´Ñ€ÐµÑ ÐµÐºÑпортуваннÑ\n" + +#: peigen.c:1803 pepigen.c:1803 pex64igen.c:1803 msgid "Forwarder RVA" msgstr "ПереÑпрÑмовний RVA" -#: peigen.c:1547 pepigen.c:1547 pex64igen.c:1547 +#: peigen.c:1815 pepigen.c:1815 pex64igen.c:1815 msgid "Export RVA" msgstr "ЕкÑпортований RVA" -#: peigen.c:1554 pepigen.c:1554 pex64igen.c:1554 +#: peigen.c:1822 pepigen.c:1822 pex64igen.c:1822 #, c-format msgid "" "\n" @@ -6147,18 +8312,43 @@ msgstr "" "\n" "Ð¢Ð°Ð±Ð»Ð¸Ñ†Ñ [порÑдкових номерів/вказівників на назви]\n" -#: peigen.c:1614 peigen.c:1797 pepigen.c:1614 pepigen.c:1797 pex64igen.c:1614 -#: pex64igen.c:1797 +#: 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 "\tÐекоректне rva (0x%lx) або кількіÑÑ‚ÑŒ запиÑів (0x%lx) таблиці вказівників на назви\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 "\tÐекоректне rva (0x%lx) або кількіÑÑ‚ÑŒ запиÑів (0x%lx) таблиці порÑдкових даних\n" + +#: peigen.c:1851 pepigen.c:1851 pex64igen.c:1851 +#, c-format +msgid "\t[%4ld] <corrupt offset: %lx>\n" +msgstr "\t[%4ld] <пошкоджений зÑув: %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 "ПопередженнÑ: розмір розділу .pdata (%ld) не Ñ” кратним до %d\n" -#: peigen.c:1621 pepigen.c:1621 pex64igen.c:1621 +#: 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" +"Ð¢Ð°Ð±Ð»Ð¸Ñ†Ñ Ñ„ÑƒÐ½ÐºÑ†Ñ–Ð¹ (оброблений вміÑÑ‚ розділу .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\tПочат. адреÑа Кінц. адреÑа Дані unwind\n" -#: peigen.c:1623 pepigen.c:1623 pex64igen.c:1623 +#: peigen.c:1914 pepigen.c:1914 pex64igen.c:1914 #, c-format msgid "" " vma:\t\tBegin End EH EH PrologEnd Exception\n" @@ -6167,22 +8357,27 @@ msgstr "" " vma:\t\tПоч. Кінц. Обробник Дані ÐдреÑа МаÑка\n" " \t\tадреÑа адреÑа EH EH кінц. прол.виключеннÑ\n" -#: peigen.c:1697 pepigen.c:1697 pex64igen.c:1697 +#: 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 "Віртуальний розмір розділу .pdata (%ld) перевищує реальний розмір (%ld)\n" + +#: peigen.c:1997 pepigen.c:1997 pex64igen.c:1997 #, c-format msgid " Register save millicode" msgstr " Мілікод Ð·Ð±ÐµÑ€ÐµÐ¶ÐµÐ½Ð½Ñ Ñ€ÐµÐ³Ñ–Ñтра" -#: peigen.c:1700 pepigen.c:1700 pex64igen.c:1700 +#: peigen.c:2000 pepigen.c:2000 pex64igen.c:2000 #, c-format msgid " Register restore millicode" msgstr " Мілікод Ð²Ñ–Ð´Ð½Ð¾Ð²Ð»ÐµÐ½Ð½Ñ Ñ€ÐµÐ³Ñ–Ñтра" -#: peigen.c:1703 pepigen.c:1703 pex64igen.c:1703 +#: peigen.c:2003 pepigen.c:2003 pex64igen.c:2003 #, c-format msgid " Glue code sequence" msgstr " ПоÑлідовніÑÑ‚ÑŒ з’єднувального коду" -#: peigen.c:1803 pepigen.c:1803 pex64igen.c:1803 +#: peigen.c:2108 pepigen.c:2108 pex64igen.c:2108 #, c-format msgid "" " vma:\t\tBegin Prolog Function Flags Exception EH\n" @@ -6191,7 +8386,7 @@ msgstr "" " vma:\t\tПоч. Довжина Довжина Прапорці Обробник Дані\n" " \t\tадреÑа прологу функції 32б вик. виключень EH\n" -#: peigen.c:1929 pepigen.c:1929 pex64igen.c:1929 +#: peigen.c:2230 pepigen.c:2230 pex64igen.c:2230 #, c-format msgid "" "\n" @@ -6202,7 +8397,7 @@ msgstr "" "\n" "ПереÑÑƒÐ²Ð°Ð½Ð½Ñ Ñ‰Ð¾Ð´Ð¾ оÑнови файла PE (оброблений вміÑÑ‚ розділу .reloc)\n" -#: peigen.c:1958 pepigen.c:1958 pex64igen.c:1958 +#: peigen.c:2260 pepigen.c:2260 pex64igen.c:2260 #, c-format msgid "" "\n" @@ -6211,15 +8406,142 @@ msgstr "" "\n" "Віртуальна адреÑа: %08lx, розмір фрагмента: %ld (0x%lx), кількіÑÑ‚ÑŒ прив’Ñзок: %ld\n" -#: peigen.c:1971 pepigen.c:1971 pex64igen.c:1971 +#: peigen.c:2278 pepigen.c:2278 pex64igen.c:2278 #, c-format msgid "\treloc %4d offset %4x [%4lx] %s" msgstr "\tпереÑÑƒÐ²Ð°Ð½Ð½Ñ %4d відÑтуп %4x [%4lx] %s" +#: peigen.c:2339 pepigen.c:2339 pex64igen.c:2339 +#, c-format +msgid "%03x %*.s Entry: " +msgstr "Вхід до %03x %*.s: " + +#: peigen.c:2363 pepigen.c:2363 pex64igen.c:2363 +#, c-format +msgid "name: [val: %08lx len %d]: " +msgstr "назва: [значеннÑ: %08lx довжина %d]: " + +#: peigen.c:2383 pepigen.c:2383 pex64igen.c:2383 +#, c-format +msgid "<corrupt string length: %#x>\n" +msgstr "<довжина пошкодженого Ñ€Ñдка: %#x>\n" + +#: peigen.c:2393 pepigen.c:2393 pex64igen.c:2393 +#, c-format +msgid "<corrupt string offset: %#lx>\n" +msgstr "<відÑтуп пошкодженого Ñ€Ñдка: %#lx>\n" + +#: peigen.c:2398 pepigen.c:2398 pex64igen.c:2398 +#, c-format +msgid "ID: %#08lx" +msgstr "Ід.: %#08lx" + +#: peigen.c:2401 pepigen.c:2401 pex64igen.c:2401 +#, c-format +msgid ", Value: %#08lx\n" +msgstr ", ЗначеннÑ: %#08lx\n" + +#: peigen.c:2423 pepigen.c:2423 pex64igen.c:2423 +#, c-format +msgid "%03x %*.s Leaf: Addr: %#08lx, Size: %#08lx, Codepage: %d\n" +msgstr "%03x ЛиÑток %*.s: адреÑа: %#08lx, розмір: %#08lx, кодова Ñторінка: %d\n" + +#: peigen.c:2465 pepigen.c:2465 pex64igen.c:2465 +#, c-format +msgid "<unknown directory type: %d>\n" +msgstr "<невідомий тип каталогу: %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 " ТаблицÑ: хар.: %d, чаÑ: %08lx, верÑÑ–Ñ: %d/%d, чиÑлові назви: %d, ід.: %d\n" + +#: peigen.c:2562 pepigen.c:2562 pex64igen.c:2562 +#, c-format +msgid "Corrupt .rsrc section detected!\n" +msgstr "ВиÑвлено пошкоджений розділ .rsrc!\n" + +#: peigen.c:2586 pepigen.c:2586 pex64igen.c:2586 +#, c-format +msgid "" +"\n" +"WARNING: Extra data in .rsrc section - it will be ignored by Windows:\n" +msgstr "" +"\n" +"ПОПЕРЕДЖЕÐÐЯ: зайві дані у розділі .rsrc — Ñ—Ñ… буде проігноровано Windows:\n" + +#: peigen.c:2592 pepigen.c:2592 pex64igen.c:2592 +#, c-format +msgid " String table starts at offset: %#03x\n" +msgstr " Ð¢Ð°Ð±Ð»Ð¸Ñ†Ñ Ñ€Ñдків починаєтьÑÑ Ð· таким зÑувом: %#03x\n" + +#: peigen.c:2595 pepigen.c:2595 pex64igen.c:2595 +#, c-format +msgid " Resources start at offset: %#03x\n" +msgstr " РеÑурÑи починаютьÑÑ Ð· таким зÑувом: %#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" +"ІÑнує каталог діагноÑтики, але розділу, що його міÑтить не знайдено\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" +"У %s Ñ” каталог діагноÑтики, але у цьому розділі немає даних\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" +"Помилка: у розділі %s міÑтитьÑÑ Ð¿Ð¾Ñ‡Ð°Ñ‚ÐºÐ¾Ð²Ð° адреÑа діагноÑтичних даних, але вона Ñ” надто малою\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" +"ВиÑвлено каталог діагноÑтики у %s за адреÑою 0x%lx\n" +"\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 "Поле розміру діагноÑтичних даних у каталозі діагноÑтики Ñ” надто великим Ð´Ð»Ñ Ñ†ÑŒÐ¾Ð³Ð¾ розділу" + +#: peigen.c:2677 pepigen.c:2677 pex64igen.c:2677 +#, c-format +msgid "Type Size Rva Offset\n" +msgstr "Тип Розм Rva ЗÑув\n" + +#: peigen.c:2725 pepigen.c:2725 pex64igen.c:2725 +#, c-format +msgid "(format %c%c%c%c signature %s age %ld)\n" +msgstr "(формат %c%c%c%c Ð¿Ñ–Ð´Ð¿Ð¸Ñ %s вік %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 "Розмір каталогу діагноÑтики не Ñ” кратним до розміру запиÑу каталогу діагноÑтики\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:2010 pepigen.c:2010 pex64igen.c:2010 +#: peigen.c:2753 pepigen.c:2753 pex64igen.c:2753 #, c-format msgid "" "\n" @@ -6228,29 +8550,231 @@ msgstr "" "\n" "ХарактериÑтики 0x%x\n" -#: peigen.c:2310 pepigen.c:2310 pex64igen.c:2310 +#: 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: розмір каталогу даних (%lx) перевищує розмір міÑцÑ, Ñке лишилоÑÑ Ñƒ розділі (%lx)" + +#: peigen.c:3018 pepigen.c:3018 pex64igen.c:3018 +msgid "Failed to update file offsets in debug directory" +msgstr "Ðе вдалоÑÑ Ð¾Ð½Ð¾Ð²Ð¸Ñ‚Ð¸ зÑуви файлів у каталозі діагноÑтики" + +#: peigen.c:3024 pepigen.c:3024 pex64igen.c:3024 +msgid "%B: Failed to read debug data section" +msgstr "%B: не вдалоÑÑ Ð¿Ñ€Ð¾Ñ‡Ð¸Ñ‚Ð°Ñ‚Ð¸ розділ діагноÑтичних даних" + +#: peigen.c:3840 pepigen.c:3840 pex64igen.c:3840 +#, c-format +msgid ".rsrc merge failure: duplicate string resource: %d" +msgstr "не вдалоÑÑ Ð¾Ð±â€™Ñ”Ð´Ð½Ð°Ñ‚Ð¸ .rsrc: реÑÑƒÑ€Ñ Ð· дублюваннÑм Ñ€Ñдків: %d" + +#: peigen.c:3975 pepigen.c:3975 pex64igen.c:3975 +msgid ".rsrc merge failure: multiple non-default manifests" +msgstr "не вдалоÑÑ Ð¾Ð±â€™Ñ”Ð´Ð½Ð°Ñ‚Ð¸ .rsrc: декілька нетипових маніфеÑтів" + +#: peigen.c:3993 pepigen.c:3993 pex64igen.c:3993 +msgid ".rsrc merge failure: a directory matches a leaf" +msgstr "не вдалоÑÑ Ð¾Ð±â€™Ñ”Ð´Ð½Ð°Ñ‚Ð¸ .rsrc: каталогу відповідає лиÑток" + +#: peigen.c:4035 pepigen.c:4035 pex64igen.c:4035 +msgid ".rsrc merge failure: duplicate leaf" +msgstr "не вдалоÑÑ Ð¾Ð±â€™Ñ”Ð´Ð½Ð°Ñ‚Ð¸ .rsrc: Ð´ÑƒÐ±Ð»ÑŽÐ²Ð°Ð½Ð½Ñ Ð»Ð¸Ñтків" + +#: peigen.c:4037 pepigen.c:4037 pex64igen.c:4037 +#, c-format +msgid ".rsrc merge failure: duplicate leaf: %s" +msgstr "не вдалоÑÑ Ð¾Ð±â€™Ñ”Ð´Ð½Ð°Ñ‚Ð¸ .rsrc: Ð´ÑƒÐ±Ð»ÑŽÐ²Ð°Ð½Ð½Ñ Ð»Ð¸Ñтків: %s" + +#: peigen.c:4103 pepigen.c:4103 pex64igen.c:4103 +msgid ".rsrc merge failure: dirs with differing characteristics\n" +msgstr "не вдалоÑÑ Ð¾Ð±â€™Ñ”Ð´Ð½Ð°Ñ‚Ð¸ .rsrc: каталоги з різними характериÑтиками\n" + +#: peigen.c:4110 pepigen.c:4110 pex64igen.c:4110 +msgid ".rsrc merge failure: differing directory versions\n" +msgstr "не вдалоÑÑ Ð¾Ð±â€™Ñ”Ð´Ð½Ð°Ñ‚Ð¸ .rsrc: відмінноÑÑ‚Ñ– у верÑÑ–ÑÑ… каталогів\n" + +#. Corrupted .rsrc section - cannot merge. +#: peigen.c:4227 pepigen.c:4227 pex64igen.c:4227 +msgid "%B: .rsrc merge failure: corrupt .rsrc section" +msgstr "%B: не вдалоÑÑ Ð¾Ð±â€™Ñ”Ð´Ð½Ð°Ñ‚Ð¸ .rsrc: пошкоджений розділ .rsrc" + +#: peigen.c:4235 pepigen.c:4235 pex64igen.c:4235 +msgid "%B: .rsrc merge failure: unexpected .rsrc size" +msgstr "%B: не вдалоÑÑ Ð¾Ð±â€™Ñ”Ð´Ð½Ð°Ñ‚Ð¸ .rsrc: неочікуваний розмір .rsrc" + +#: peigen.c:4374 pepigen.c:4374 pex64igen.c:4374 msgid "%B: unable to fill in DataDictionary[1] because .idata$2 is missing" msgstr "%B: не вдалоÑÑ Ð·Ð°Ð¿Ð¾Ð²Ð½Ð¸Ñ‚Ð¸ DataDictionary[1], оÑкільки не виÑтачає .idata$2" -#: peigen.c:2330 pepigen.c:2330 pex64igen.c:2330 +#: peigen.c:4394 pepigen.c:4394 pex64igen.c:4394 msgid "%B: unable to fill in DataDictionary[1] because .idata$4 is missing" msgstr "%B: не вдалоÑÑ Ð·Ð°Ð¿Ð¾Ð²Ð½Ð¸Ñ‚Ð¸ DataDictionary[1], оÑкільки не виÑтачає .idata$4" -#: peigen.c:2351 pepigen.c:2351 pex64igen.c:2351 +#: peigen.c:4415 pepigen.c:4415 pex64igen.c:4415 msgid "%B: unable to fill in DataDictionary[12] because .idata$5 is missing" msgstr "%B: не вдалоÑÑ Ð·Ð°Ð¿Ð¾Ð²Ð½Ð¸Ñ‚Ð¸ DataDictionary[12], оÑкільки не виÑтачає .idata$5" -#: peigen.c:2371 pepigen.c:2371 pex64igen.c:2371 +#: 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: не вдалоÑÑ Ð·Ð°Ð¿Ð¾Ð²Ð½Ð¸Ñ‚Ð¸ DataDictionary[PE_IMPORT_ADDRESS_TABLE (12)], оÑкільки не виÑтачає .idata$6" -#: peigen.c:2413 pepigen.c:2413 pex64igen.c:2413 +#: 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: не вдалоÑÑ Ð·Ð°Ð¿Ð¾Ð²Ð½Ð¸Ñ‚Ð¸ DataDictionary[PE_IMPORT_ADDRESS_TABLE(12)], оÑкільки .idata$6 не виÑтачає" -#: peigen.c:2438 pepigen.c:2438 pex64igen.c:2438 +#: peigen.c:4502 pepigen.c:4502 pex64igen.c:4502 msgid "%B: unable to fill in DataDictionary[9] because __tls_used is missing" msgstr "%B: не вдалоÑÑ Ð·Ð°Ð¿Ð¾Ð²Ð½Ð¸Ñ‚Ð¸ DataDictionary[9], оÑкільки не виÑтачає __tls_used" -#~ msgid "%B: error: taking the address of protected function '%s' cannot be done when making a shared library" -#~ msgstr "%B: помилка: не можна виконувати Ð¾Ñ‚Ñ€Ð¸Ð¼Ð°Ð½Ð½Ñ Ð°Ð´Ñ€ÐµÑи захищеної функції «%s» під Ñ‡Ð°Ñ ÑÑ‚Ð²Ð¾Ñ€ÐµÐ½Ð½Ñ Ð±Ñ–Ð±Ð»Ñ–Ð¾Ñ‚ÐµÐºÐ¸ Ñпільного викориÑтаннÑ" +#~ msgid "Unrecognized reloc" +#~ msgstr "Ðерозпізнане переÑуваннÑ" + +#~ msgid "%s: warning: illegal symbol index %ld in relocs" +#~ msgstr "%s: попередженнÑ: некоректний Ñ–Ð½Ð´ÐµÐºÑ Ñимволу %ld у переÑуваннÑÑ…" + +#~ msgid "Dwarf Error: Bad abbrev number: %u." +#~ msgstr "Помилка dwarf: помилковий Ñкорочений номер: %u." + +#~ msgid "%B: don't know how to handle allocated, application specific section `%s' [0x%8x]" +#~ msgstr "%B: ÑпоÑіб обробки розміщеного невідомий, Ñпецифічний Ð´Ð»Ñ Ð¿Ñ€Ð¾Ð³Ñ€Ð°Ð¼Ð¸ розділ «%s» [0x%8x]" + +#~ msgid "%B: don't know how to handle processor specific section `%s' [0x%8x]" +#~ msgstr "%B: ÑпоÑіб обробки Ñпецифічного Ð´Ð»Ñ Ð¿Ñ€Ð¾Ñ†ÐµÑора розділу `%s' [0x%8x] невідомий" + +#~ msgid "%B: don't know how to handle OS specific section `%s' [0x%8x]" +#~ msgstr "%B: ÑпоÑіб обробки Ñпецифічного Ð´Ð»Ñ ÐžÐ¡ розділу «%s» [0x%8x] невідомий" + +#~ msgid "%B: don't know how to handle section `%s' [0x%8x]" +#~ msgstr "%B: ÑпоÑіб обробки розділу «%s» [0x%8x] невідомий" + +#~ msgid " [has entry point]" +#~ msgstr " [має вхідну точку]" + +#~ msgid "error: required section '%s' not found in the linker script" +#~ msgstr "помилка: у Ñкрипті ÐºÐ¾Ð¼Ð¿Ð¾Ð½ÑƒÐ²Ð°Ð½Ð½Ñ Ð½Ðµ знайдено обов’Ñзкового розділу «%s»" + +#~ msgid "%s: uses different e_flags (0x%lx) fields than previous modules (0x%lx)" +#~ msgstr "%s: викориÑтовуютьÑÑ Ñ–Ð½ÑˆÑ– Ð¿Ð¾Ð»Ñ e_flags (0x%lx) ніж у попередніх модулÑÑ… (0x%lx)" + +#~ msgid "%s: unknown relocation type %d" +#~ msgstr "%s: невідомий тип переÑÑƒÐ²Ð°Ð½Ð½Ñ %d" + +#~ msgid "%s: The target (%s) of an %s relocation is in the wrong section (%s)" +#~ msgstr "" +#~ "%s: Ð¿Ñ€Ð¸Ð·Ð½Ð°Ñ‡ÐµÐ½Ð½Ñ (%s) переÑÑƒÐ²Ð°Ð½Ð½Ñ %s перебуває у помилковому розділі (%s)\n" +#~ ")" + +#~ 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): попередженнÑ: оптимізацію придушено Ð´Ð»Ñ Ñ€Ð¾Ð·Ð´Ñ–Ð»Ñ–Ð² Ð²Ð¸Ñ€Ñ–Ð²Ð½ÑŽÐ²Ð°Ð½Ð½Ñ %d-байтовий > 4-байтовий." + +#~ msgid "Warning: %B uses soft float, %B uses single-precision hard float" +#~ msgstr "ПопередженнÑ: у %B викориÑтовуєтьÑÑ Ð¿Ñ€Ð¾Ð³Ñ€Ð°Ð¼Ð½Ð° підтримка дійÑних чиÑел, а у %B — апаратна підтримка Ð´Ð»Ñ Ð´Ñ–Ð¹Ñних чиÑел з одинарною точніÑÑ‚ÑŽ" + +#~ msgid "Warning: %B uses unknown floating point ABI %d" +#~ msgstr "ПопередженнÑ: %B викориÑтовує невідомий ABI роботи з чиÑлами з рухомою крапкою, %d" + +#~ msgid "Warning: %B uses unknown vector ABI %d" +#~ msgstr "ПопередженнÑ: %B викориÑтовує невідомий векторний ABI %d" + +#~ msgid "Warning: %B uses unknown small structure return convention %d" +#~ msgstr "ПопередженнÑ: у %B викориÑтано невідому угоду, %d, щодо Ð¿Ð¾Ð²ÐµÑ€Ð½ÐµÐ½Ð½Ñ Ð¼Ð°Ð»ÐµÐ½ÑŒÐºÐ¸Ñ… Ñтруктур" + +#~ msgid " [G10]" +#~ msgstr " [G10]" + +#~ msgid "%s: Malformed reloc detected for section %s" +#~ msgstr "%s: Ð´Ð»Ñ Ñ€Ð¾Ð·Ð´Ñ–Ð»Ñƒ %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 ", 8-байтове Ð²Ð¸Ñ€Ñ–Ð²Ð½ÑŽÐ²Ð°Ð½Ð½Ñ Ð´Ð°Ð½Ð¸Ñ…" + +#~ msgid "%B: relocation %s against undefined %s `%s' can not be used when making a shared object%s" +#~ msgstr "%B: переÑÑƒÐ²Ð°Ð½Ð½Ñ %s щодо невизначеного %s, «%s», не можна викориÑтовувати під Ñ‡Ð°Ñ ÑÑ‚Ð²Ð¾Ñ€ÐµÐ½Ð½Ñ Ð¾Ð±â€™Ñ”ÐºÑ‚Ð° Ñпільного викориÑтаннÑ%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" +#~ msgstr "" +#~ "%B(%s): попередженнÑ: ÑуміÑну роботу не увімкнено.\n" +#~ " перша згадка: %B: виклик thumb до arm" + +#~ msgid "DIV usage mismatch between %B and %B" +#~ msgstr "розбіжноÑÑ‚Ñ– у викориÑтанні DIV між %B та %B" + +#~ msgid "%P: dynamic variable `%s' is zero size\n" +#~ msgstr "%P: динамічна змінна «%s» має нульовий розмір\n" + +#~ msgid " [dsp]" +#~ msgstr " [dsp]" + +#~ msgid "%P: %H: automatic multiple TOCs not supported using your crt files; recompile with -mminimal-toc or upgrade gcc\n" +#~ msgstr "%P: %H: автоматичне ÑÑ‚Ð²Ð¾Ñ€ÐµÐ½Ð½Ñ Ð´ÐµÐºÑ–Ð»ÑŒÐºÐ¾Ñ… TOC не можна виконати на оÑнові ваших файлів crt; виконайте повторне Ð·Ð±Ð¸Ñ€Ð°Ð½Ð½Ñ Ð· -mminimal-toc або оновіть gcc\n" + +#~ msgid "%P: %H: sibling call optimization to `%s' does not allow automatic multiple TOCs; recompile with -mminimal-toc or -fno-optimize-sibling-calls, or make `%s' extern\n" +#~ msgstr "%P: %H: у разі викориÑÑ‚Ð°Ð½Ð½Ñ Ð¾Ð¿Ñ‚Ð¸Ð¼Ñ–Ð·Ð°Ñ†Ñ–Ñ— викликів однакових функцій Ð´Ð»Ñ Â«%s» не даÑÑ‚ÑŒ змоги Ñтворити декілька TOC; виконайте повторне Ð·Ð±Ð¸Ñ€Ð°Ð½Ð½Ñ Ð· -mminimal-toc або -fno-optimize-sibling-calls чи зробіть «%s» зовнішньою (extern)\n" + +#~ msgid "note: '%s' is defined in DSO %B so try adding it to the linker command line" +#~ msgstr "зауваженнÑ: «%s» визначено у %B DSO, отже Ñпробуємо додати його до командного Ñ€Ñдка компонувальника" + +#~ msgid "Warning: %B uses -msingle-float, %B uses -mips32r2 -mfp64" +#~ msgstr "ПопередженнÑ: у %B викориÑтано -msingle-float, а у %B — -mips32r2 -mfp64" + +#~ msgid "Warning: %B uses -mdouble-float, %B uses -mips32r2 -mfp64" +#~ msgstr "ПопередженнÑ: у %B викориÑтано -mdouble-float, а у %B — -mips32r2 -mfp64" + +#~ msgid "bfd_mach_o_read_symtab_symbol: symbol \"%s\" is unsupported 'indirect' reference: setting to undefined" +#~ msgstr "bfd_mach_o_read_symtab_symbol: Ñимвол «%s» Ñ” непідтримуваним поÑиланнÑм «indirect»: вÑтановлюємо у невизначене значеннÑ" + +#~ msgid "bfd_mach_o_read_dysymtab_symbol: unable to read %lu bytes at %lu" +#~ msgstr "bfd_mach_o_read_dysymtab_symbol: не вдалоÑÑ Ð¿Ñ€Ð¾Ñ‡Ð¸Ñ‚Ð°Ñ‚Ð¸ %lu байтів з %lu" + +#~ msgid "Mach-O header:\n" +#~ msgstr "заголовок Mach-O:\n" + +#~ msgid " magic : %08lx\n" +#~ msgstr " magic : %08lx\n" + +#~ msgid " cputype : %08lx (%s)\n" +#~ msgstr " тип проц. : %08lx (%s)\n" + +#~ msgid " filetype : %08lx (%s)\n" +#~ msgstr " тип файла : %08lx (%s)\n" + +#~ msgid " ncmds : %08lx (%lu)\n" +#~ msgstr " кть_команд: %08lx (%lu)\n" + +#~ msgid " sizeofcmds: %08lx\n" +#~ msgstr " розмір_кмд: %08lx\n" + +#~ msgid " flags : %08lx (" +#~ msgstr " прапорці : %08lx (" + +#~ msgid " reserved : %08x\n" +#~ msgstr " зарезерв. : %08x\n" + +#~ msgid "Segments and Sections:\n" +#~ msgstr "Сегменти Ñ– розділи:\n" + +#~ msgid " #: Segment name Section name Address\n" +#~ msgstr " #: Ðазва Ñегмента Ðазва розділу ÐдреÑа\n" + +#~ msgid "Symbol %s replaced by %s\n" +#~ msgstr "Символ %s замінено на %s\n" diff --git a/bfd/po/vi.po b/bfd/po/vi.po index 4f62e60..79a6622 100644 --- a/bfd/po/vi.po +++ b/bfd/po/vi.po @@ -1,26 +1,25 @@ # Vietnamese translation for BFD. -# Copyright © 2012 Free Software Foundation, Inc. +# Copyright © 2013 Free Software Foundation, Inc. # This file is distributed under the same license as the binutils package. # Phan VÄ©nh Thịnh <teppi@gmail.com>, 2005. # Clytie Siddall <clytie@riverland.net.au>, 2008-2010. -# Trần Ngá»c Quân <vnwildman@gmail.com>, 2012. +# Trần Ngá»c Quân <vnwildman@gmail.com>, 2012-2013. # msgid "" msgstr "" -"Project-Id-Version: bfd-2.22.90\n" +"Project-Id-Version: bfd-2.23.2\n" "Report-Msgid-Bugs-To: bug-binutils@gnu.org\n" "POT-Creation-Date: 2011-10-25 11:58+0100\n" -"PO-Revision-Date: 2012-08-15 14:47+0700\n" +"PO-Revision-Date: 2013-06-01 08:14+0700\n" "Last-Translator: Trần Ngá»c Quân <vnwildman@gmail.com>\n" "Language-Team: Vietnamese <translation-team-vi@lists.sourceforge.net>\n" "Language: vi\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=1; plural=0;\n" -"X-Generator: LocFactoryEditor 1.8\n" -"X-Poedit-Language: Vietnamese\n" -"X-Poedit-Country: VIET NAM\n" +"X-Generator: Poedit 1.5.5\n" "X-Poedit-SourceCharset: utf-8\n" #: aout-adobe.c:127 @@ -43,12 +42,12 @@ msgstr "%B: Äã nháºp mục ghi định vị lại sai: %d" #: aoutx.h:1273 aoutx.h:1611 #, c-format msgid "%s: can not represent section `%s' in a.out object file format" -msgstr "%s: không thể đại diện phân \"%s\" trong định dạng táºp tin đối tượng a.out" +msgstr "%s: không thể đại diện phân “%s†trong định dạng táºp tin đối tượng a.out" #: aoutx.h:1577 #, c-format msgid "%s: can not represent section for symbol `%s' in a.out object file format" -msgstr "%s: không thể đại diện phân cho ký hiệu \"%s\" trong định dạng táºp tin đối tượng a.ou" +msgstr "%s: không thể đại diện phân cho ký hiệu “%s†trong định dạng táºp tin đối tượng a.ou" #: aoutx.h:1579 vms-alpha.c:7671 msgid "*unknown*" @@ -192,13 +191,13 @@ msgstr "không Ä‘ang ánh xạ: chÆ°a đặt biến môi trÆ°á»ng\n" #: binary.c:271 #, c-format msgid "Warning: Writing section `%s' to huge (ie negative) file offset 0x%lx." -msgstr "Cảnh báo: Ä‘ang ghi phần \"%s\" và o khoảng bù táºp tin rất lá»›n (tức là âm) 0x%lx." +msgstr "Cảnh báo: Ä‘ang ghi phần “%s†và o khoảng bù táºp tin rất lá»›n (tức là âm) 0x%lx." #: bout.c:1146 elf-m10300.c:2063 elf32-avr.c:1654 elf32-frv.c:5734 #: elfxx-sparc.c:2802 reloc.c:6115 reloc16.c:162 elf32-ia64.c:360 #: elf64-ia64.c:360 msgid "%P%F: --relax and -r may not be used together\n" -msgstr "%P%F: không thể dùng vá»›i nhau hai tuỳ chá»n \"--relax\" và \"-r\"\n" +msgstr "%P%F: không thể dùng vá»›i nhau hai tuỳ chá»n “--relax†và “-râ€\n" #: cache.c:227 msgid "reopening %B: %s\n" @@ -240,12 +239,12 @@ msgstr "%B: không rõ kiểu định vị lại %d" #: coff-arm.c:1038 #, c-format msgid "%B: unable to find THUMB glue '%s' for `%s'" -msgstr "%B: không tìm thấy keo hồ THUMB \"%s\" cho \"%s\"" +msgstr "%B: không tìm thấy chất kết dÃnh THUMB “%s†cho “%sâ€" #: coff-arm.c:1067 #, c-format msgid "%B: unable to find ARM glue '%s' for `%s'" -msgstr "%B: không tìm thấy keo hồ ARM \"%s\" cho \"%s\"" +msgstr "%B: không tìm thấy chất kết dÃnh ARM “%s†cho “%sâ€" #: coff-arm.c:1369 elf32-arm.c:7023 #, c-format @@ -265,11 +264,11 @@ msgid "" msgstr "" "%B(%s): cảnh báo: chÆ°a báºt dùng ảnh hưởng lẫn nhau.\n" " lần xuất hiện đầu tiên: %B: gá»i thumb tá»›i arm\n" -" coi nhÆ° liên kết lại vá»›i \"--support-old-code\" được báºt" +" coi nhÆ° liên kết lại vá»›i “--support-old-code†được báºt" #: coff-arm.c:1754 coff-tic80.c:695 cofflink.c:3081 msgid "%B: bad reloc address 0x%lx in section `%A'" -msgstr "%B: địa chỉ định vị lại sai 0x%lx trong phần \"%A\"" +msgstr "%B: địa chỉ định vị lại sai 0x%lx trong phần “%Aâ€" #: coff-arm.c:2079 msgid "%B: illegal symbol index in reloc: %d" @@ -368,7 +367,7 @@ msgstr "không thể xá» lý định vị lại R_MEM_INDIRECT khi sá» dụng #: coff-i860.c:147 #, c-format msgid "relocation `%s' not yet implemented" -msgstr "tái định vị `%s' vẫn chÆ°a được viết" +msgstr "tái định vị “%s†vẫn chÆ°a được viết" #: coff-i860.c:605 coff-tic54x.c:398 coffcode.h:5198 msgid "%B: warning: illegal symbol index %ld in relocs" @@ -399,11 +398,11 @@ msgstr "%s: kiểu định vị lại không được há»— trợ 0x%02x" #: coff-rs6000.c:2805 #, c-format msgid "%s: TOC reloc at 0x%x to symbol `%s' with no TOC entry" -msgstr "%s: định vị lại TOC tại 0x%x tá»›i ký hiệu \"%s\" không có mục nháºp TOC" +msgstr "%s: định vị lại TOC tại 0x%x tá»›i ký hiệu “%s†không có mục nháºp TOC" #: coff-rs6000.c:3556 coff64-rs6000.c:2111 msgid "%B: symbol `%s' has unrecognized smclas %d" -msgstr "%B: ký tá»± \"%s\" có smclas không nháºn ra %d" +msgstr "%B: ký tá»± “%s†có smclas không nháºn ra %d" #: coff-sh.c:521 #, c-format @@ -427,7 +426,7 @@ msgstr "Äang lá» Ä‘i định vị lại %s\n" #: coffcode.h:997 msgid "%B: warning: COMDAT symbol '%s' does not match section name '%s'" -msgstr "%B: cảnh báo: ký hiệu COMDAT \"%s\" không tÆ°Æ¡ng ứng vÆ¡i tên phần \"%s\"" +msgstr "%B: cảnh báo: ký hiệu COMDAT “%s†không tÆ°Æ¡ng ứng vÆ¡i tên phần “%sâ€" #. Generate a warning message rather using the 'unhandled' #. variable as this will allow some .sys files generate by @@ -443,7 +442,7 @@ msgstr "%B (%s): Äã lá» Ä‘i cá» của phần %s (0x%x)" #: coffcode.h:2430 #, c-format msgid "Unrecognized TI COFF target id '0x%x'" -msgstr "Không nháºn ra mã số Ä‘Ãch TI COFF \"0x%x\"" +msgstr "Không nháºn ra mã số Ä‘Ãch TI COFF “0x%xâ€" #: coffcode.h:2744 msgid "%B: reloc against a non-existant symbol index: %ld" @@ -467,15 +466,15 @@ msgstr "%B: cảnh báo: chỉ mục ký hiệu cấm %ld trong các số thứ #: coffcode.h:4567 msgid "%B: warning: duplicate line number information for `%s'" -msgstr "%B: cảnh báo: thông tin số thứ tá»± dòng trùng đối vá»›i \"%s\"" +msgstr "%B: cảnh báo: thông tin số thứ tá»± dòng trùng đối vá»›i “%sâ€" #: coffcode.h:4967 msgid "%B: Unrecognized storage class %d for %s symbol `%s'" -msgstr "%B: Không nháºn ra hạng lÆ°u trữ %d cho ký hiệu %s \"%s\"" +msgstr "%B: Không nháºn ra hạng lÆ°u trữ %d cho ký hiệu %s “%sâ€" #: coffcode.h:5093 msgid "warning: %B: local symbol `%s' has no section" -msgstr "cảnh báo: %B: ký hiệu cục bá»™ \"%s\" không có phần Ä‘oạn" +msgstr "cảnh báo: %B: ký hiệu cục bá»™ “%s†không có phần Ä‘oạn" #: coffcode.h:5237 msgid "%B: illegal relocation type %d at address 0x%lx" @@ -491,15 +490,15 @@ msgstr "%F%P: already_linked_table: %E\n" #: cofflink.c:533 elflink.c:4323 msgid "Warning: type of symbol `%s' changed from %d to %d in %B" -msgstr "Cảnh báo: kiểu ký hiệu \"%s\" bị thay đổi từ %d thà nh %d trong %B" +msgstr "Cảnh báo: kiểu ký hiệu “%s†bị thay đổi từ %d thà nh %d trong %B" #: cofflink.c:2329 msgid "%B: relocs in section `%A', but it has no contents" -msgstr "%B: định vị lại trong phần \"%A\", nhÆ°ng nó không có ná»™i dung" +msgstr "%B: định vị lại trong phần “%Aâ€, nhÆ°ng nó không có ná»™i dung" #: cofflink.c:2391 elflink.c:9545 msgid "%X`%s' referenced in section `%A' of %B: defined in discarded section `%A' of %B\n" -msgstr "%X\"%s\" được tham chiếu trong phần \"%A\" của %B: được định nghÄ©a trong phần bị hủy \"%A\" của %B\n" +msgstr "%Xâ€%s†được tham chiếu trong phần “%A†của %B: được định nghÄ©a trong phần bị hủy “%A†của %B\n" #: cofflink.c:2690 coffswap.h:826 #, c-format @@ -560,12 +559,12 @@ msgstr "Lá»—i Dwarf: Không tìm thấy số viết tắt %u." #: dwarf2.c:2355 #, c-format msgid "Dwarf Error: found dwarf version '%u', this reader only handles version 2, 3 and 4 information." -msgstr "Lá»—i Dwarf: tìm thấy dwarf phiên bản \"%u\", nhÆ°ng trình Ä‘á»c nà y chỉ có thể nắm bắt được thông tin của phiên bản 2, 3 và 4." +msgstr "Lá»—i Dwarf: tìm thấy dwarf phiên bản “%uâ€, nhÆ°ng trình Ä‘á»c nà y chỉ có thể nắm bắt được thông tin của phiên bản 2, 3 và 4." #: dwarf2.c:2362 #, c-format msgid "Dwarf Error: found address size '%u', this reader can not handle sizes greater than '%u'." -msgstr "Lá»—i Dwarf: tìm thấy kÃch cỡ địa chỉ \"%u\", nhÆ°ng trình Ä‘á»c nà y không Ä‘iá»u khiển được kÃch cỡ lá»›n hÆ¡n \"%u\"." +msgstr "Lá»—i Dwarf: tìm thấy kÃch cỡ địa chỉ “%uâ€, nhÆ°ng trình Ä‘á»c nà y không Ä‘iá»u khiển được kÃch cỡ lá»›n hÆ¡n “%uâ€." #: dwarf2.c:2385 #, c-format @@ -638,7 +637,7 @@ msgid "" " enum; End+1 symbol: %ld" msgstr "" "\n" -" đếm; ký hiệu End+1: %ld" +" enum; ký hiệu End+1: %ld" #: ecoff.c:1549 #, c-format @@ -651,11 +650,11 @@ msgstr "" #: elf-attrs.c:569 msgid "error: %B: Object has vendor-specific contents that must be processed by the '%s' toolchain" -msgstr "lá»—i: %B: Äối tượng có ná»™i dung \"vendor-specific\" phải được xá» lý bởi toolchain '%s'" +msgstr "lá»—i: %B: Äối tượng có ná»™i dung “vendor-specific†phải được xá» lý bởi toolchain “%sâ€" #: elf-attrs.c:578 msgid "error: %B: Object tag '%d, %s' is incompatible with tag '%d, %s'" -msgstr "lá»—i: %B: thẻ đối tượng \"%d, %s\" không tÆ°Æ¡ng thÃch vá»›i thẻ \"%d, %s\"" +msgstr "lá»—i: %B: Thẻ đối tượng “%d, %s†không tÆ°Æ¡ng thÃch vá»›i thẻ “%d, %sâ€" #: elf-eh-frame.c:917 msgid "%P: error in %B(%A); no .eh_frame_hdr table will be created.\n" @@ -671,7 +670,7 @@ msgstr "%P: DW_EH_PE_datarel chÆ°a định nghÄ©a cho kiến trúc nà y.\n" #: elf-ifunc.c:179 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 "%F%P: ký hiệu STT_GNU_IFUNC Ä‘á»™ng \"%s\" vá»›i tình trạng chất lượng con trá» trong \"%B\" thì không dùng được khi tạo bản thá»±c thi; hãy biên dịch lại vá»›i \"-fPIE\" và liên kết lại vá»›i \"-pie\"\n" +msgstr "%F%P: ký hiệu STT_GNU_IFUNC Ä‘á»™ng “%s†vá»›i tình trạng chất lượng con trá» trong “%B†thì không dùng được khi tạo bản thá»±c thi; hãy biên dịch lại vá»›i “-fPIE†và liên kết lại vá»›i “-pieâ€\n" #: elf-m10200.c:450 elf-m10300.c:1563 elf32-avr.c:1221 elf32-bfin.c:3213 #: elf32-cr16.c:1482 elf32-cr16c.c:780 elf32-cris.c:2081 elf32-crx.c:922 @@ -722,7 +721,7 @@ msgstr "lá»—i ná»™i bá»™: lá»—i không rõ" #: elf32-xtensa.c:3066 elf64-s390.c:2978 elf64-sh64.c:1640 elf64-x86-64.c:4110 #: elfxx-sparc.c:3835 elfxx-tilegx.c:3500 msgid "%B(%A+0x%lx): unresolvable %s relocation against symbol `%s'" -msgstr "%B(%A+0x%lx): định vị lại không thể giải quyết %s đối vá»›i ký hiệu \"%s\"" +msgstr "%B(%A+0x%lx): định vị lại không thể giải quyết %s đối vá»›i ký hiệu “%sâ€" #: elf-m10300.c:1572 msgid "error: inappropriate relocation type for shared library (did you forget -fpic?)" @@ -740,11 +739,11 @@ msgstr "lá»—i ná»™i bá»™: kiểu định vị lại đáng ngỠđược dùng #: elfxx-tilegx.c:2261 #, c-format msgid "dynamic variable `%s' is zero size" -msgstr "biến Ä‘á»™ng \"%s\" có kÃch cỡ số không" +msgstr "biến Ä‘á»™ng “%s†có kÃch cỡ bằng không" #: elf.c:334 msgid "%B: invalid string offset %u >= %lu for section `%s'" -msgstr "%B: khoảng bù chuá»—i không hợp lệ %u≥%lu cho phần \"%s\"" +msgstr "%B: khoảng bù chuá»—i không hợp lệ %u≥%lu cho phần “%sâ€" #: elf.c:446 msgid "%B symbol number %lu references nonexistent SHT_SYMTAB_SHNDX section" @@ -764,15 +763,15 @@ msgstr "%B: không có thông tin nhóm vá» phần %A" #: elf.c:737 elf.c:3121 elflink.c:10135 msgid "%B: warning: sh_link not set for section `%A'" -msgstr "%B: cảnh báo: \"sh_link\" chÆ°a được đặt cho phần \"%A\"" +msgstr "%B: cảnh báo: “sh_link†chÆ°a được đặt cho phần “%Aâ€" #: elf.c:756 msgid "%B: sh_link [%d] in section `%A' is incorrect" -msgstr "%B: sh_link [%d] không đúng trong phần \"%A\"" +msgstr "%B: sh_link [%d] không đúng trong phần “%Aâ€" #: elf.c:791 msgid "%B: unknown [%d] section `%s' in group [%s]" -msgstr "%B: không rõ [%d] phần \"%s\" trong nhóm [%s]" +msgstr "%B: không rõ [%d] phần “%s†trong nhóm [%s]" #: elf.c:1041 msgid "%B: unable to initialize commpress status for section %s" @@ -829,32 +828,32 @@ msgstr "%B: liên kết không hợp lệ %lu cho phần định vị lại %s ( #: elf.c:1966 msgid "%B: don't know how to handle allocated, application specific section `%s' [0x%8x]" -msgstr "%B: không biết cách xá» lý phần đã cấp phát mà đặc trÆ°ng cho ứng dụng \"%s\" [0x%8x]" +msgstr "%B: không biết cách xá» lý phần đã cấp phát mà đặc trÆ°ng cho ứng dụng “%s†[0x%8x]" #: elf.c:1978 msgid "%B: don't know how to handle processor specific section `%s' [0x%8x]" -msgstr "%B: không biết cách xá» lý phần đặc trÆ°ng cho bá»™ xá» lý \"%s\" [0x%8x]" +msgstr "%B: không biết cách xá» lý phần đặc trÆ°ng cho bá»™ xá» lý “%s†[0x%8x]" #: elf.c:1989 msgid "%B: don't know how to handle OS specific section `%s' [0x%8x]" -msgstr "%B: không biết cách xá» lý phần đặc trÆ°ng cho HÄH \"%s\" [0x%8x]" +msgstr "%B: không biết cách xá» lý phần đặc trÆ°ng cho HÄH “%s†[0x%8x]" #: elf.c:1999 msgid "%B: don't know how to handle section `%s' [0x%8x]" -msgstr "%B: không biết cách xá» lý phần \"%s\" [0x%8x]" +msgstr "%B: không biết cách xá» lý phần “%s†[0x%8x]" #: elf.c:2634 #, c-format msgid "warning: section `%A' type changed to PROGBITS" -msgstr "cảnh báo: phần \"%A\" có kiểu bị thay đổi thà nh PROGBITS" +msgstr "cảnh báo: phần “%A†có kiểu bị thay đổi thà nh PROGBITS" #: elf.c:3078 msgid "%B: sh_link of section `%A' points to discarded section `%A' of `%B'" -msgstr "%B: sh_link của phần \"%A\" chỉ tá»›i phần bị hủy \"%A\" của \"%B\"" +msgstr "%B: sh_link của phần “%A†chỉ tá»›i phần bị hủy “%A†của “%Bâ€" #: elf.c:3101 msgid "%B: sh_link of section `%A' points to removed section `%A' of `%B'" -msgstr "%B: sh_link của phần \"%A\" chỉ tá»›i phần bị gỡ bá» \"%A\" của \"%B\"" +msgstr "%B: sh_link của phần “%A†chỉ tá»›i phần bị gỡ bỠ“%A†của “%Bâ€" #: elf.c:4527 msgid "%B: The first section in the PT_DYNAMIC segment is not the .dynamic section" @@ -862,7 +861,7 @@ msgstr "%B: Phần thứ nhất trong Ä‘oạn PT_DYNAMIC không phải là phầ #: elf.c:4554 msgid "%B: Not enough room for program headers, try linking with -N" -msgstr "%B: Không đủ sức chứa cho các phần đầu của chÆ°Æ¡ng trình: hãy thá» liên kết vá»›i \"-N\"" +msgstr "%B: Không đủ sức chứa cho các phần đầu của chÆ°Æ¡ng trình: hãy thá» liên kết vá»›i “-Nâ€" #: elf.c:4641 msgid "%B: section %A lma %#lx adjusted to %#lx" @@ -870,15 +869,15 @@ msgstr "%B: phần %A lma %#lx được sá»a thà nh %#lx" #: elf.c:4776 msgid "%B: section `%A' can't be allocated in segment %d" -msgstr "%B: phần \"%A\" không thể được cấp phát trong Ä‘oạn %d" +msgstr "%B: phần “%A†không thể được cấp phát trong Ä‘oạn %d" #: elf.c:4824 msgid "%B: warning: allocated section `%s' not in segment" -msgstr "%B: cảnh báo: phần đã cấp phát \"%s\" không nằm trong Ä‘oạn" +msgstr "%B: cảnh báo: phần đã cấp phát “%s†không nằm trong Ä‘oạn" #: elf.c:5324 msgid "%B: symbol `%s' required but not present" -msgstr "%B: ký hiệu \"%s\" cần thiết mà không có" +msgstr "%B: ký hiệu “%s†cần thiết mà không có" #: elf.c:5662 msgid "%B: warning: Empty loadable segment detected, is this intentional ?\n" @@ -887,7 +886,7 @@ msgstr "%B: cảnh báo: Phát hiện má»™t Ä‘oạn rá»—ng có thể nạp Ä‘Æ°á #: elf.c:6692 #, c-format msgid "Unable to find equivalent output section for symbol '%s' from section '%s'" -msgstr "Không tìm thấy phần kết xuất tÆ°Æ¡ng Ä‘Æ°Æ¡ng cho ký hiệu \"%s\" từ phần \"%s\"" +msgstr "Không tìm thấy phần kết xuất tÆ°Æ¡ng Ä‘Æ°Æ¡ng cho ký hiệu “%s†từ phần “%sâ€" #: elf.c:7692 msgid "%B: unsupported relocation type %s" @@ -917,12 +916,12 @@ msgstr "%s: không thể tạo mục nháºp mẩu %s" #: elf32-arm.c:5431 #, c-format msgid "unable to find THUMB glue '%s' for '%s'" -msgstr "không tìm thấy keo hồ THUMB \"%s\" cho \"%s\"" +msgstr "không tìm thấy keo hồ THUMB “%s†cho “%sâ€" #: elf32-arm.c:5467 #, c-format msgid "unable to find ARM glue '%s' for '%s'" -msgstr "không tìm thấy keo hồ ARM \"%s\" cho \"%s\"" +msgstr "không tìm thấy keo hồ ARM “%s†cho “%sâ€" #: elf32-arm.c:6005 msgid "%B: BE8 images only valid in big-endian mode." @@ -935,12 +934,12 @@ msgstr "%B: cảnh báo: sá»± khắc phúc các lá»—i VFP11 đã chá»n không c #: elf32-arm.c:6779 elf32-arm.c:6799 msgid "%B: unable to find VFP11 veneer `%s'" -msgstr "%B: không tìm thấy lá»›p gá»— mặt VFP11 \"%s\"" +msgstr "%B: không tìm thấy lá»›p gá»— mặt VFP11 “%sâ€" #: elf32-arm.c:6848 #, c-format msgid "Invalid TARGET2 relocation type '%s'." -msgstr "Kiểu định vị lại TARGET2 không hợp lệ \"%s\"" +msgstr "Kiểu định vị lại TARGET2 không hợp lệ “%sâ€" #: elf32-arm.c:6933 msgid "" @@ -952,27 +951,27 @@ msgstr "" #: elf32-arm.c:7717 msgid "%B(%A+0x%lx):unexpected Thumb instruction '0x%x' in TLS trampoline" -msgstr "%B(%A+0x%lx):chỉ lệnh Thumb không mong đợi '0x%x' trong 'TLS trampoline'" +msgstr "%B(%A+0x%lx):chỉ lệnh Thumb không mong đợi “0x%x†trong “TLS trampolineâ€" #: elf32-arm.c:7756 msgid "%B(%A+0x%lx):unexpected ARM instruction '0x%x' in TLS trampoline" -msgstr "%B(%A+0x%lx):chỉ lệnh ARM không mong đợi '0x%x' trong 'TLS trampoline'" +msgstr "%B(%A+0x%lx):chỉ lệnh ARM không mong đợi “0x%x†trong “TLS trampolineâ€" #: elf32-arm.c:8209 msgid "\\%B: Warning: Arm BLX instruction targets Arm function '%s'." -msgstr "\\%B: Cảnh báo: Chỉ dẫn Arm BLX đăt mục tiêu hà m Arm \"%s\"." +msgstr "\\%B: Cảnh báo: Chỉ dẫn Arm BLX đăt mục tiêu hà m Arm “%sâ€." #: elf32-arm.c:8622 msgid "%B: Warning: Thumb BLX instruction targets thumb function '%s'." -msgstr "%B: Cảnh báo: Chỉ dẫn Thumb BLX đăt mục tiêu hà m thumb \"%s\"." +msgstr "%B: Cảnh báo: Chỉ dẫn Thumb BLX đăt mục tiêu hà m thumb “%sâ€." #: elf32-arm.c:9460 msgid "%B(%A+0x%lx):unexpected Thumb instruction '0x%x' referenced by TLS_GOTDESC" -msgstr "%B(%A+0x%lx):không mong đợi chỉ lệnh Thumb '0x%x' được tham chiếu bởi TLS_GOTDESC" +msgstr "%B(%A+0x%lx):không mong đợi chỉ lệnh Thumb “0x%x†được tham chiếu bởi TLS_GOTDESC" #: elf32-arm.c:9483 msgid "%B(%A+0x%lx):unexpected ARM instruction '0x%x' referenced by TLS_GOTDESC" -msgstr "%B(%A+0x%lx):không mong đợi chỉ lệnh ARM '0x%x' được tham chiếu bởi TLS_GOTDESC" +msgstr "%B(%A+0x%lx):không mong đợi chỉ lệnh ARM “0x%x†được tham chiếu bởi TLS_GOTDESC" #: elf32-arm.c:9512 msgid "%B(%A+0x%lx): R_ARM_TLS_LE32 relocation not permitted in shared object" @@ -1210,7 +1209,7 @@ msgstr "%B: chỉ mục ký hiệu sai: %d" #: elf32-arm.c:12337 elf64-x86-64.c:1561 elf64-x86-64.c:1732 elfxx-mips.c:8223 msgid "%B: relocation %s against `%s' can not be used when making a shared object; recompile with -fPIC" -msgstr "%B: định vị lại %s so vá»›i \"%s\" không thể được dùng khi tạo má»™t đối tượng chia sẻ; hãy biên dịch lại vá»›i \"-fPIC\"" +msgstr "%B: định vị lại %s so vá»›i “%s†không thể được dùng khi tạo má»™t đối tượng chia sẻ; hãy biên dịch lại vá»›i “-fPICâ€" #: elf32-arm.c:13460 #, c-format @@ -1286,16 +1285,16 @@ msgstr "tái định vị phải là số chẵn" #: elf32-bfin.c:1593 msgid "%B(%A+0x%lx): unresolvable relocation against symbol `%s'" -msgstr "%B(%A+0x%lx): định vị lại không thể giải quyết đối vá»›i ký hiệu \"%s\"" +msgstr "%B(%A+0x%lx): định vị lại không thể giải quyết đối vá»›i ký hiệu “%sâ€" #: elf32-bfin.c:1626 elf32-i386.c:4307 elf32-m68k.c:4233 elf32-s390.c:3055 #: elf64-s390.c:3030 elf64-x86-64.c:4151 msgid "%B(%A+0x%lx): reloc against `%s': error %d" -msgstr "%B(%A+0x%lx): định vị lại đối vá»›i \"%s\": lá»—i %d" +msgstr "%B(%A+0x%lx): định vị lại đối vá»›i “%sâ€: lá»—i %d" #: elf32-bfin.c:2725 msgid "%B: relocation at `%A+0x%x' references symbol `%s' with nonzero addend" -msgstr "%B: định vị lại ở \"%A+0x%x\" tham chiếu đến ký hiệu \"%s\" vá»›i số hạng khác không" +msgstr "%B: định vị lại ở “%A+0x%x†tham chiếu đến ký hiệu “%s†vá»›i số hạng khác không" #: elf32-bfin.c:2741 msgid "relocation references symbol not defined in the module" @@ -1346,15 +1345,15 @@ msgstr "*** kiểm tra tái phân bổ nà y %s" #: elf32-cris.c:1176 msgid "%B, section %A: unresolvable relocation %s against symbol `%s'" -msgstr "%B, phần %A: định vị lại không thể giải quyết %s đối vá»›i ký hiệu \"%s\"" +msgstr "%B, phần %A: định vị lại không thể giải quyết %s đối vá»›i ký hiệu “%sâ€" #: elf32-cris.c:1238 msgid "%B, section %A: No PLT nor GOT for relocation %s against symbol `%s'" -msgstr "%B, phần %A: Không có PLT hoặc GOT cho định vị lại %s đối vá»›i ký hiệu \"%s\"" +msgstr "%B, phần %A: Không có PLT hoặc GOT cho định vị lại %s đối vá»›i ký hiệu “%sâ€" #: elf32-cris.c:1240 msgid "%B, section %A: No PLT for relocation %s against symbol `%s'" -msgstr "%B, phần %A: Không có PLT cho định vị lại %s đối vá»›i ký hiệu \"%s\"" +msgstr "%B, phần %A: Không có PLT cho định vị lại %s đối vá»›i ký hiệu “%sâ€" #: elf32-cris.c:1246 elf32-cris.c:1379 elf32-cris.c:1639 elf32-cris.c:1722 #: elf32-cris.c:1875 elf32-tic6x.c:2662 @@ -1367,11 +1366,11 @@ msgstr "%B, phần %A: định vị lại %s vá»›i số hạng khác không %d Ä #: elf32-cris.c:1373 elf32-cris.c:1716 elf32-cris.c:1869 elf32-tic6x.c:2655 msgid "%B, section %A: relocation %s with non-zero addend %d against symbol `%s'" -msgstr "%B, phần %A: định vị lại %s vá»›i số hạng khác không %d đối vá»›i ký hiệu \"%s\"" +msgstr "%B, phần %A: định vị lại %s vá»›i số hạng khác không %d đối vá»›i ký hiệu “%sâ€" #: elf32-cris.c:1399 msgid "%B, section %A: relocation %s is not allowed for global symbol: `%s'" -msgstr "%B, phần %A: định vị lại %s không được phép cho ký hiệu toà n cục: \"%s\"" +msgstr "%B, phần %A: định vị lại %s không được phép cho ký hiệu toà n cục: “%sâ€" #: elf32-cris.c:1415 msgid "%B, section %A: relocation %s with no GOT created" @@ -1380,19 +1379,19 @@ msgstr "%B, phần %A: đã tạo định vị lại %s không có GOT" #. We shouldn't get here for GCC-emitted code. #: elf32-cris.c:1630 msgid "%B, section %A: relocation %s has an undefined reference to `%s', perhaps a declaration mixup?" -msgstr "%B: phần %A: sá»± định vị lại $s có má»™t thà m chiếu chÆ°a xác định đến \"%s\", có thể khai báo không rõ ?" +msgstr "%B: phần %A: sá»± định vị lại $s có má»™t thà m chiếu chÆ°a xác định đến “%sâ€, có thể khai báo không rõ ?" #: elf32-cris.c:2002 msgid "%B, section %A: relocation %s is not allowed for symbol: `%s' which is defined outside the program, perhaps a declaration mixup?" -msgstr "%B, phần %A: sá»± định vị lại %s không được phép cho ký hiệu \"%s\" mà được xác định bên ngoà i chÆ°Æ¡ng trình, có thể khai báo không rõ ?" +msgstr "%B, phần %A: sá»± định vị lại %s không được phép cho ký hiệu “%s†mà được xác định bên ngoà i chÆ°Æ¡ng trình, có thể khai báo không rõ ?" #: elf32-cris.c:2055 msgid "(too many global variables for -fpic: recompile with -fPIC)" -msgstr "(quá nhiá»u biến toà n cục đối vá»›i \"-fpic\": hãy biên dịch lại vá»›i \"-fPIC\")" +msgstr "(quá nhiá»u biến toà n cục đối vá»›i “-fpicâ€: hãy biên dịch lại vá»›i “-fPICâ€)" #: elf32-cris.c:2062 msgid "(thread-local data too big for -fpic or -msmall-tls: recompile with -fPIC or -mno-small-tls)" -msgstr "(dữ liệu cục bá»™ vá»›i mạch cÅ©ng quá lá»›n đối vá»›i \"fpic\" hoặc \"-msmall-tls\": hãy biên dịch lại vá»›i \"-fPIC\" hay \"-mno-small-tls\")" +msgstr "(dữ liệu cục bá»™ vá»›i mạch cÅ©ng quá lá»›n đối vá»›i “fpic†hoặc “-msmall-tlsâ€: hãy biên dịch lại vá»›i “-fPIC†hay “-mno-small-tlsâ€)" #: elf32-cris.c:3261 msgid "" @@ -1408,7 +1407,7 @@ msgid "" " relocation %s not valid in a shared object; typically an option mixup, recompile with -fPIC" msgstr "" "%B, phần %A:\n" -" không được sá» dụng sá»± định vị lại %s trong má»™t đối tượng chia sẻ; bình thÆ°á»ng do khai báo không rõ, hãy biên dịch lại vá»›i \"-fPIC\"" +" không được sá» dụng sá»± định vị lại %s trong má»™t đối tượng chia sẻ; bình thÆ°á»ng do khai báo không rõ, hãy biên dịch lại vá»›i “-fPICâ€" #: elf32-cris.c:3580 msgid "" @@ -1416,15 +1415,15 @@ msgid "" " relocation %s should not be used in a shared object; recompile with -fPIC" msgstr "" "%B, phần %A:\n" -" không được sá» dụng sá»± định vị lại %s trong má»™t đối tượng chia sẻ; hãy biên dịch lại vá»›i \"-fPIC\"" +" không được sá» dụng sá»± định vị lại %s trong má»™t đối tượng chia sẻ; hãy biên dịch lại vá»›i “-fPICâ€" #: elf32-cris.c:4002 msgid "" "%B, section `%A', to symbol `%s':\n" " relocation %s should not be used in a shared object; recompile with -fPIC" msgstr "" -"%B, phần \"%A\", tá»›i ký hiệu \"%s\":\n" -" không được sá» dụng sá»± định vị lại %s trong má»™t đối tượng chia sẻ; hãy biên dịch lại vá»›i \"-fPIC\"" +"%B, phần “%Aâ€, tá»›i ký hiệu “%sâ€:\n" +" không được sá» dụng sá»± định vị lại %s trong má»™t đối tượng chia sẻ; hãy biên dịch lại vá»›i “-fPICâ€" #: elf32-cris.c:4118 msgid "Unexpected machine number" @@ -1482,7 +1481,7 @@ msgstr "định vị lại cần thiết số hạng số không" #: elf32-frv.c:2888 msgid "%H: relocation to `%s+%v' may have caused the error above\n" -msgstr "%H: định vị lại tá»›i \"%s+%x\" có thể gây ra lá»—i trên\n" +msgstr "%H: định vị lại tá»›i “%s+%x†có thể gây ra lá»—i trên\n" #: elf32-frv.c:2905 msgid "%H: relocation references symbol not defined in the module\n" @@ -1554,11 +1553,11 @@ msgstr "%H: R_FRV_FUNCDESC_VALUE tham chiếu đến ký hiệu Ä‘á»™ng vá»›i sá #: elf32-frv.c:3974 msgid "%H: reloc against `%s' references a different segment\n" -msgstr "%H: định vị lại tham chiếu `%s' đến má»™t Ä‘oạn khác\n" +msgstr "%H: định vị lại tham chiếu “%s†đến má»™t Ä‘oạn khác\n" #: elf32-frv.c:4124 msgid "%H: reloc against `%s': %s\n" -msgstr "%H: reloc lại `%s': %s\n" +msgstr "%H: reloc lại “%sâ€: %s\n" #: elf32-frv.c:6400 msgid "%B: unsupported relocation type %i\n" @@ -1591,11 +1590,11 @@ msgstr "%B: Äịnh vị lại trong ELF chung (EM: %d)" #: elf32-hppa.c:850 elf32-hppa.c:3598 msgid "%B(%A+0x%lx): cannot reach %s, recompile with -ffunction-sections" -msgstr "%B(%A+0x%lx): không thể tá»›i %s, hãy biên dịch lại vá»›i \"-ffunction-sections\"" +msgstr "%B(%A+0x%lx): không thể tá»›i %s, hãy biên dịch lại vá»›i “-ffunction-sectionsâ€" #: elf32-hppa.c:1284 msgid "%B: relocation %s can not be used when making a shared object; recompile with -fPIC" -msgstr "%B: không dùng được định vị lại %s khi tạo má»™t đối tượng chia sẽ, hãy biên dịch lại vá»›i \"-fPIC\"" +msgstr "%B: không dùng được định vị lại %s khi tạo má»™t đối tượng chia sẽ, hãy biên dịch lại vá»›i “-fPICâ€" #: elf32-hppa.c:2791 msgid "%B: duplicate export stub %s" @@ -1621,30 +1620,30 @@ msgstr "%B: kiểu định vị lại không hợp lệ %d" #: elf32-i386.c:1404 elf64-x86-64.c:1308 msgid "%B: TLS transition from %s to %s against `%s' at 0x%lx in section `%A' failed" -msgstr "%B: không thà nh công chuyển tiếp TLS từ %s sang %s đối vá»›i \"%s\" ở 0x%lx trong phần \"%A\"" +msgstr "%B: không thà nh công chuyển tiếp TLS từ %s sang %s đối vá»›i “%s†ở 0x%lx trong phần “%Aâ€" #: elf32-i386.c:1549 elf32-i386.c:3244 elf64-x86-64.c:1487 elf64-x86-64.c:3125 #: elfxx-sparc.c:3083 msgid "%B: relocation %s against STT_GNU_IFUNC symbol `%s' isn't handled by %s" -msgstr "%B: sá»± định vị lại %s đối vá»›i ký hiệu STT_GNU_IFUNC \"%s\" không phải được %s quản lý" +msgstr "%B: sá»± định vị lại %s đối vá»›i ký hiệu STT_GNU_IFUNC “%s†không phải được %s quản lý" #: elf32-i386.c:1711 elf32-s390.c:1182 elf32-sh.c:6362 elf32-tilepro.c:1434 #: elf32-xtensa.c:1182 elf64-s390.c:1151 elfxx-sparc.c:1548 #: elfxx-tilegx.c:1701 msgid "%B: `%s' accessed both as normal and thread local symbol" -msgstr "%B: đã truy cáºp \"%s\" theo ký hiệu cả hai kiểu bình thÆ°á»ng và cục bá»™ cho mạch" +msgstr "%B: đã truy cáºp “%s†theo ký hiệu cả hai kiểu bình thÆ°á»ng và cục bá»™ cho mạch" #: elf32-i386.c:2539 elf64-x86-64.c:2506 msgid "%P: %B: warning: relocation against `%s' in readonly section `%A'.\n" -msgstr "%P: %B: cảnh báo: định vị lại dá»±a và o %s trong phần chỉ Ä‘á»c `%A'.\n" +msgstr "%P: %B: cảnh báo: định vị lại dá»±a và o %s trong phần chỉ Ä‘á»c “%Aâ€.\n" #: elf32-i386.c:2629 elf64-x86-64.c:2593 msgid "%P: %B: warning: relocation in readonly section `%A'.\n" -msgstr "%P: %B: cảnh báo: tái định vị trong phần chỉ Ä‘á»c `%A'.\n" +msgstr "%P: %B: cảnh báo: tái định vị trong phần chỉ Ä‘á»c “%Aâ€.\n" #: elf32-i386.c:3086 elf32-tilepro.c:2557 elfxx-tilegx.c:2871 msgid "%B: unrecognized relocation (0x%x) in section `%A'" -msgstr "%B: định vị lại không được nháºn ra (0x%x) trong phần \"%A\"" +msgstr "%B: định vị lại không được nháºn ra (0x%x) trong phần “%Aâ€" #: elf32-i386.c:3494 elf64-x86-64.c:3513 msgid "hidden symbol" @@ -1664,17 +1663,17 @@ msgstr "ký hiệu" #: elf32-i386.c:3508 msgid "%B: relocation R_386_GOTOFF against undefined %s `%s' can not be used when making a shared object" -msgstr "%B: không dùng được định vị lại R_386_GOTOFF đối vá»›i %s chÆ°a xác định \"%s\" khi tạo má»™t đối tượng chia sẻ" +msgstr "%B: không dùng được định vị lại R_386_GOTOFF đối vá»›i %s chÆ°a xác định “%s†khi tạo má»™t đối tượng chia sẻ" #: elf32-i386.c:3518 msgid "%B: relocation R_386_GOTOFF against protected function `%s' can not be used when making a shared object" -msgstr "%B: không dùng được định vị lại R_386_GOTOFF đối vá»›i hà m số đã bảo vệ \"%s\" khi tạo má»™t đối tượng chia sẻ" +msgstr "%B: không dùng được định vị lại R_386_GOTOFF đối vá»›i hà m số đã bảo vệ “%s†khi tạo má»™t đối tượng chia sẻ" #: elf32-i386.c:4839 elf32-tilepro.c:3467 elf64-x86-64.c:4609 #: elfxx-tilegx.c:3847 #, c-format msgid "discarded output section: `%A'" -msgstr "phần kết xuất bị bá» qua: `%A'" +msgstr "phần kết xuất bị bá» qua: “%Aâ€" #: elf32-ip2k.c:857 elf32-ip2k.c:863 elf32-ip2k.c:930 elf32-ip2k.c:936 msgid "ip2k relaxer: switch table without complete matching relocation information." @@ -1746,7 +1745,7 @@ msgstr ": chỉ dẫn m32r2" #: elf32-m68hc1x.c:1050 #, c-format msgid "Reference to the far symbol `%s' using a wrong relocation may result in incorrect execution" -msgstr "Tham chiếu đến ký hiệu ở xa \"%s\" khi sá» dụng má»™t định vị lại sai thì có thể dẫn đến sá»± thá»±c hiện sai" +msgstr "Tham chiếu đến ký hiệu ở xa “%s†khi sá» dụng má»™t định vị lại sai thì có thể dẫn đến sá»± thá»±c hiện sai" #: elf32-m68hc1x.c:1073 #, c-format @@ -1792,7 +1791,7 @@ msgstr "64-bit đôi, " #: elf32-m68hc1x.c:1292 #, c-format msgid "32-bit double, " -msgstr "32-bit đôi, " +msgstr "32-bit kép, " #: elf32-m68hc1x.c:1295 #, c-format @@ -1880,11 +1879,11 @@ msgstr "%s: ÄÃch (%s) của má»™t sá»± định vị lại %s nằm trong phầ #: elf32-microblaze.c:1155 elf32-tilepro.c:2891 elfxx-sparc.c:3457 #: elfxx-tilegx.c:3230 msgid "%B: probably compiled without -fPIC?" -msgstr "%B: rất có thể được biên dịch không có \"-fPIC\" ?" +msgstr "%B: rất có thể được biên dịch không có “-fPIC†?" #: elf32-microblaze.c:2074 msgid "%B: bad relocation section name `%s'" -msgstr "%B: tên phần định vị lại sai \"%s\"" +msgstr "%B: tên phần định vị lại sai “%sâ€" #: elf32-mips.c:1549 elf64-mips.c:2683 elfn32-mips.c:2487 msgid "literal relocation occurs for an external symbol" @@ -1957,7 +1956,7 @@ msgstr "Cảnh báo: %B dùng véc-tÆ¡ không nháºn ra ABI %d" #: elf32-ppc.c:4111 msgid "Warning: %B uses vector ABI \"%s\", %B uses \"%s\"" -msgstr "Cảnh báo: %B dùng véc-tÆ¡ ABI \"%s\", còn %B dùng \"%s\"" +msgstr "Cảnh báo: %B dùng véc-tÆ¡ ABI “%sâ€, còn %B dùng “%sâ€" #: elf32-ppc.c:4128 elf32-ppc.c:4131 msgid "Warning: %B uses r3/r4 for small structure returns, %B uses memory" @@ -1969,11 +1968,11 @@ msgstr "Cảnh báo: %B dùng quy Æ°á»›c trả lại cấu trúc nhá» không rà #: elf32-ppc.c:4192 msgid "%B: compiled with -mrelocatable and linked with modules compiled normally" -msgstr "%B: đã biên dịch vá»›i \"-mrelocatable\" và đã liên kết vá»›i các môđun biên dịch bình thÆ°á»ng" +msgstr "%B: đã biên dịch vá»›i “-mrelocatable†và đã liên kết vá»›i các môđun biên dịch bình thÆ°á»ng" #: elf32-ppc.c:4200 msgid "%B: compiled normally and linked with modules compiled with -mrelocatable" -msgstr "%B: đã biên dịch bình thÆ°á»ng và đã liên kết vá»›i các môđun biên dịch vá»›i \"-mrelocatable\"" +msgstr "%B: đã biên dịch bình thÆ°á»ng và đã liên kết vá»›i các môđun biên dịch vá»›i “-mrelocatableâ€" #: elf32-ppc.c:4309 msgid "%P: bss-plt forced due to %B\n" @@ -1981,7 +1980,7 @@ msgstr "%P: bss-plt bị ép buá»™c bởi vì %B\n" #: elf32-ppc.c:4312 msgid "%P: bss-plt forced by profiling\n" -msgstr "%P: bss-plt được ép buá»™c bởi 'profiling'\n" +msgstr "%P: bss-plt được ép buá»™c bởi “profilingâ€\n" #. Uh oh, we didn't find the expected call. We #. could just mark this symbol to exclude it @@ -1993,7 +1992,7 @@ msgstr "%H arg lost __tls_get_addr, tối Æ°u hóa TLS bị tắt\n" #: elf32-ppc.c:5044 elf64-ppc.c:6528 msgid "%P: dynamic variable `%s' is zero size\n" -msgstr "%P: biến kiểu Ä‘á»™ng `%s' có kÃch thÆ°á»›c là không\n" +msgstr "%P: biến kiểu Ä‘á»™ng “%s†có kÃch thÆ°á»›c là không\n" #: elf32-ppc.c:7263 elf64-ppc.c:12675 msgid "%P: %B: unknown relocation type %d for symbol %s\n" @@ -2001,7 +2000,7 @@ msgstr "%P: %B: không rõ kiểu tái định vị %d cho ký hiệu %s\n" #: elf32-ppc.c:7524 msgid "%P: %H: non-zero addend on %s reloc against `%s'\n" -msgstr "%P: %H: số hạng khác không trên reloc %s dá»±a và o `%s'\n" +msgstr "%P: %H: số hạng khác không trên reloc %s dá»±a và o “%sâ€\n" #: elf32-ppc.c:7720 elf64-ppc.c:13181 msgid "%P: %H: relocation %s for indirect function %s unsupported\n" @@ -2017,11 +2016,11 @@ msgstr "%P: %B: tái định vị %s thì vẫn chÆ°a được há»— trợ cho kà #: elf32-ppc.c:8158 elf64-ppc.c:13467 msgid "%P: %H: unresolvable %s relocation against symbol `%s'\n" -msgstr "%P: %H: không đáp ứng được tái định vị %s dá»±a và o ký hiệu `%s'\n" +msgstr "%P: %H: không đáp ứng được tái định vị %s dá»±a và o ký hiệu “%sâ€\n" #: elf32-ppc.c:8205 elf64-ppc.c:13512 msgid "%P: %H: %s reloc against `%s': error %d\n" -msgstr "%P: %H: %s reloc lại `%s': lá»—i %d\n" +msgstr "%P: %H: %s reloc lại “%sâ€: lá»—i %d\n" #: elf32-ppc.c:8696 msgid "%P: %s not defined in linker created %s\n" @@ -2045,11 +2044,11 @@ msgstr "Cảnh báo: RX_SYM reloc vá»›i má»™t ký hiệu chÆ°a được biết Ä #: elf32-rx.c:1324 msgid "%B(%A): error: call to undefined function '%s'" -msgstr "%B(%A): lá»—i: gá»i hà m chÆ°a được định nghÄ©a '%s'" +msgstr "%B(%A): lá»—i: gá»i hà m chÆ°a được định nghÄ©a “%sâ€" #: elf32-rx.c:1338 msgid "%B(%A): warning: unaligned access to symbol '%s' in the small data area" -msgstr "%B(%A): cảnh báo: unaligned access to symbol '%s' trong vùng dữ liệu nhá»" +msgstr "%B(%A): cảnh báo: unaligned access to symbol “%s†trong vùng dữ liệu nhá»" #: elf32-rx.c:1342 msgid "%B(%A): internal error: out of range error" @@ -2178,29 +2177,29 @@ msgstr "%B: 0x%lx: lá»—i nặng: R_SH_PSHL định vị lại %d không nằm tr #: elf32-sh.c:4519 elf32-sh.c:4989 msgid "%B(%A+0x%lx): cannot emit fixup to `%s' in read-only section" -msgstr "%B(%A+0x%lx): không thể phát ra sá»± sá»a chữa cho`%s' trong phần chỉ Ä‘á»c" +msgstr "%B(%A+0x%lx): không thể phát ra sá»± sá»a chữa cho“%s†trong phần chỉ Ä‘á»c" #: elf32-sh.c:5096 msgid "%B(%A+0x%lx): %s relocation against external symbol \"%s\"" -msgstr "%B(%A+0x%lx): tái định vị %s dá»±a trên ký hiệu bên ngoà i \"%s\"" +msgstr "%B(%A+0x%lx): tái định vị %s dá»±a trên ký hiệu bên ngoà i “%sâ€" #: elf32-sh.c:5569 #, c-format msgid "%X%C: relocation to \"%s\" references a different segment\n" -msgstr "%X%C: định vị lại \"%s\" tham chiếu đến má»™t segment (Ä‘oạn) khác\n" +msgstr "%X%C: định vị lại “%s†tham chiếu đến má»™t segment (Ä‘oạn) khác\n" #: elf32-sh.c:5575 #, c-format msgid "%C: warning: relocation to \"%s\" references a different segment\n" -msgstr "%C: cảnh báo: định vị lại \"%s\" tham chiếu đến má»™t Ä‘oạn khác\n" +msgstr "%C: cảnh báo: định vị lại “%s†tham chiếu đến má»™t Ä‘oạn khác\n" #: elf32-sh.c:6353 elf32-sh.c:6436 msgid "%B: `%s' accessed both as normal and FDPIC symbol" -msgstr "%B: `%s' đã được truy cáºp theo cả hai kiểu bình thÆ°á»ng và ký hiệu FDPIC" +msgstr "%B: “%s†đã được truy cáºp theo cả hai kiểu bình thÆ°á»ng và ký hiệu FDPIC" #: elf32-sh.c:6358 elf32-sh.c:6440 msgid "%B: `%s' accessed both as FDPIC and thread local symbol" -msgstr "%B: \"%s\" đã được truy cáºp theo cả hai kiểu ký hiệu FDPIC và cục bá»™ cho tuyến trình" +msgstr "%B: “%s†đã được truy cáºp theo cả hai kiểu ký hiệu FDPIC và cục bá»™ cho tuyến trình" #: elf32-sh.c:6388 msgid "%B: Function descriptor relocation with non-zero addend" @@ -2397,7 +2396,7 @@ msgstr "gặp lá»—i nghiêm trá»ng trong khi tạo .fixup" #: elf32-spu.c:5008 msgid "%B(%s+0x%lx): unresolvable %s relocation against symbol `%s'" -msgstr "%B(%s+0x%lx): không thể giải quyết định vị lại %s so vá»›i ký hiệu \"%s\"" +msgstr "%B(%s+0x%lx): không thể giải quyết định vị lại %s so vá»›i ký hiệu “%sâ€" #: elf32-tic6x.c:1602 msgid "warning: generating a shared library containing non-PIC code" @@ -2450,27 +2449,27 @@ msgstr "cảnh báo: %B và %B khác nhau ở chá»— mà mã được dịch cho #: elf32-v850.c:173 #, c-format msgid "Variable `%s' cannot occupy in multiple small data regions" -msgstr "Biến \"%s\" không thể chiếm nhiá»u vùng dữ liệu nhá»" +msgstr "Biến “%s†không thể chiếm nhiá»u vùng dữ liệu nhá»" #: elf32-v850.c:176 #, c-format msgid "Variable `%s' can only be in one of the small, zero, and tiny data regions" -msgstr "Biến \"%s\" chỉ có thể nằm trong má»™t của vùng dữ liệu kiểu nhá», số không và rất nhá»" +msgstr "Biến “%s†chỉ có thể nằm trong má»™t của vùng dữ liệu kiểu nhá», số không và rất nhá»" #: elf32-v850.c:179 #, c-format msgid "Variable `%s' cannot be in both small and zero data regions simultaneously" -msgstr "Biến \"%s\" không thể nằm đồng thá»i trong cả hai vùng dữ liệu kiểu nhá» và số không" +msgstr "Biến “%s†không thể nằm đồng thá»i trong cả hai vùng dữ liệu kiểu nhá» và số không" #: elf32-v850.c:182 #, c-format msgid "Variable `%s' cannot be in both small and tiny data regions simultaneously" -msgstr "Biến \"%s\" không thể nằm đồng thá»i trong cả hai vùng dữ liệu kiểu nhá» và rất nhá»" +msgstr "Biến “%s†không thể nằm đồng thá»i trong cả hai vùng dữ liệu kiểu nhá» và rất nhá»" #: elf32-v850.c:185 #, c-format msgid "Variable `%s' cannot be in both zero and tiny data regions simultaneously" -msgstr "Biến \"%s\" không thể nằm đồng thá»i trong cả hai vùng dữ liệu kiểu rất nhá» và số không" +msgstr "Biến “%s†không thể nằm đồng thá»i trong cả hai vùng dữ liệu kiểu rất nhá» và số không" #: elf32-v850.c:483 msgid "FAILED to find previous HI16 reloc" @@ -2541,17 +2540,17 @@ msgstr " [trôi g]" #: elf32-vax.c:655 #, c-format msgid "%s: warning: GOT addend of %ld to `%s' does not match previous GOT addend of %ld" -msgstr "%s: cảnh báo: số hạng GOT của %ld cho \"%s\" không tÆ°Æ¡ng ứng vá»›i số hạng GOT trÆ°á»›c của %ld" +msgstr "%s: cảnh báo: số hạng GOT của %ld cho “%s†không tÆ°Æ¡ng ứng vá»›i số hạng GOT trÆ°á»›c của %ld" #: elf32-vax.c:1585 #, c-format msgid "%s: warning: PLT addend of %d to `%s' from %s section ignored" -msgstr "%s: cảnh báo: số hạng PLT của %d cho \"%s\" từ phần %s bị bá» qua" +msgstr "%s: cảnh báo: số hạng PLT của %d cho “%s†từ phần %s bị bá» qua" #: elf32-vax.c:1712 #, c-format msgid "%s: warning: %s relocation against symbol `%s' from %s section" -msgstr "%s: cảnh báo: định vị lại %s so vá»›i ký hiệu \"%s\" từ phần %s" +msgstr "%s: cảnh báo: định vị lại %s so vá»›i ký hiệu “%s†từ phần %s" #: elf32-vax.c:1718 #, c-format @@ -2671,7 +2670,7 @@ msgid "" msgstr "" "tái định vị kết xuất không hợp lệ khi sản sinh kết xuất định dạng non-ELF, non-mmo.\n" " Xin hãy sá» dụng chÆ°Æ¡ng trình objcopy để chuyển từ ELF hoặc mmo,\n" -" hoặc sá» dụng assemble \"-no-expand\" (cho gcc, \"-Wa,-no-expand\"" +" hoặc sá» dụng assemble “-no-expand†(cho gcc, “-Wa,-no-expandâ€" #: elf64-mmix.c:1218 msgid "" @@ -2681,7 +2680,7 @@ msgid "" msgstr "" "tái định vị kết xuất không hợp lệ khi sản sinh kết xuất định dạng non-ELF, non-mmo.\n" " Xin hãy sá» dụng chÆ°Æ¡ng trình objcopy để chuyển từ ELF hoặc mmo,\n" -" hoặc dịch sá» dụng tùy-chá»n-gcc \"-mno-base-addresses\"." +" hoặc dịch sá» dụng tùy-chá»n-gcc “-mno-base-addressesâ€." #: elf64-mmix.c:1244 #, c-format @@ -2729,7 +2728,7 @@ msgstr "" #, c-format msgid "%s: Error: multiple definition of `%s'; start of %s is set in a earlier linked file\n" msgstr "" -"%s: Lá»—i: định nghÄ©a nhiá»u lần \"%s\"; đầu của %s được đặt\n" +"%s: Lá»—i: định nghÄ©a nhiá»u lần “%sâ€; đầu của %s được đặt\n" "trong má»™t táºp tin đã liên kết sá»›m hÆ¡n\n" #: elf64-mmix.c:2311 @@ -2751,7 +2750,7 @@ msgstr "%P: %B: không thể tạo mục gốc %s\n" #: elf64-ppc.c:6518 msgid "%P: copy reloc against `%s' requires lazy plt linking; avoid setting LD_BIND_NOW=1 or upgrade gcc\n" -msgstr "%P: sao chép reloc (định vị lại) \"%s\" thì cần thiết chức năng liên kết plt uể oải; hãy tránh đặt LD_BIND_NOW=1, hoặc nâng cấp GCC\n" +msgstr "%P: sao chép reloc (định vị lại) “%s†thì cần thiết chức năng liên kết plt uể oải; hãy tránh đặt LD_BIND_NOW=1, hoặc nâng cấp GCC\n" #: elf64-ppc.c:6788 msgid "%B: undefined symbol on R_PPC64_TOCSAVE relocation" @@ -2771,7 +2770,7 @@ msgstr "%B: gặp kiểu định vị lại bất thÆ°á»ng %u trong phần .opd #: elf64-ppc.c:7106 msgid "%B: undefined sym `%s' in .opd section" -msgstr "%B: gặp sym (liên kết má»m?) chÆ°a được xác định \"%s\" trong phần .opd" +msgstr "%B: gặp sym (liên kết má»m?) chÆ°a được xác định “%s†trong phần .opd" #: elf64-ppc.c:7664 msgid "%H __tls_get_addr lost arg, TLS optimization disabled\n" @@ -2792,19 +2791,19 @@ msgstr "%P: không tìm thấy mục opd toc(mục lục) cho %s\n" #: elf64-ppc.c:9680 msgid "%P: long branch stub `%s' offset overflow\n" -msgstr "%P: mẩu nhánh dà i \"%s\" trà n khoảng bù\n" +msgstr "%P: mẩu nhánh dà i “%s†trà n khoảng bù\n" #: elf64-ppc.c:9739 msgid "%P: can't find branch stub `%s'\n" -msgstr "%P: không tìm thấy nhánh gốc `%s'\n" +msgstr "%P: không tìm thấy nhánh gốc “%sâ€\n" #: elf64-ppc.c:9801 elf64-ppc.c:9943 msgid "%P: linkage table error against `%s'\n" -msgstr "%P: bảng liên kết lại sai `%s'\n" +msgstr "%P: bảng liên kết lại sai “%sâ€\n" #: elf64-ppc.c:10126 msgid "%P: can't build branch stub `%s'\n" -msgstr "%P: không thể xây dá»±ng nhánh gốc `%s'\n" +msgstr "%P: không thể xây dá»±ng nhánh gốc “%sâ€\n" #: elf64-ppc.c:10941 msgid "%B section %A exceeds stub group size" @@ -2812,7 +2811,7 @@ msgstr "%B phần %A vượt quá kÃch cỡ nhóm mẩu" #: elf64-ppc.c:11666 elf64-ppc.c:11699 msgid "%P: %s offset too large for .eh_frame sdata4 encoding" -msgstr "%P: %s giá trị bù quá lá»›n cho mã hóa '.eh_frame sdata4'" +msgstr "%P: %s giá trị bù quá lá»›n cho mã hóa “.eh_frame sdata4â€" #: elf64-ppc.c:11744 msgid "%P: stubs don't match calculated size\n" @@ -2845,11 +2844,11 @@ msgstr "%P: %H: %s được sá» dụng vá»›i ký hiệu không-phải-TLS %s\n" #: elf64-ppc.c:12556 msgid "%P: %H: automatic multiple TOCs not supported using your crt files; recompile with -mminimal-toc or upgrade gcc\n" -msgstr "%P: %H: tá»± Ä‘á»™ng tạo nhiá»u TOC không được há»— trợ khi dùng các táºp tin CRT của bạn; hãy biên dịch lại vá»›i \"-mminimal-toc\", hoặc nâng cấp GCC\n" +msgstr "%P: %H: tá»± Ä‘á»™ng tạo nhiá»u TOC không được há»— trợ khi dùng các táºp tin CRT của bạn; hãy biên dịch lại vá»›i “-mminimal-tocâ€, hoặc nâng cấp GCC\n" #: elf64-ppc.c:12562 msgid "%P: %H: sibling call optimization to `%s' does not allow automatic multiple TOCs; recompile with -mminimal-toc or -fno-optimize-sibling-calls, or make `%s' extern\n" -msgstr "%P: %H: tối Æ°u hoá cuá»™c gá»i cùng chá»— (sibling) cho \"%s\" không cho phép tá»± Ä‘á»™ng tạo nhiá»u TOC; hãy biên dịch lại vá»›i \"-mminimal-toc\" hoặc \"-fno-optimize-sibling-calls\", hoặc là m cho \"%s\" bên ngoà i\n" +msgstr "%P: %H: tối Æ°u hoá cuá»™c gá»i cùng chá»— (sibling) cho “%s†không cho phép tá»± Ä‘á»™ng tạo nhiá»u TOC; hãy biên dịch lại vá»›i “-mminimal-toc†hoặc “-fno-optimize-sibling-callsâ€, hoặc là m cho “%s†bên ngoà i\n" #: elf64-ppc.c:13286 msgid "%P: %B: relocation %s is not supported for symbol %s\n" @@ -2874,11 +2873,11 @@ msgstr "Thanh ghi %%g%d được dùng má»™t cách không tÆ°Æ¡ng thÃch: %s tro #: elf64-sparc.c:489 msgid "Symbol `%s' has differing types: REGISTER in %B, previously %s in %B" -msgstr "Ký hiệu \"%s\" có các kiểu khác hau: REGISTER (thanh ghi) trong %B, trÆ°á»›c là %s trong %B" +msgstr "Ký hiệu “%s†có các kiểu khác hau: REGISTER (thanh ghi) trong %B, trÆ°á»›c là %s trong %B" #: elf64-sparc.c:534 msgid "Symbol `%s' has differing types: %s in %B, previously REGISTER in %B" -msgstr "Ký hiệu \"%s\" có các kiểu khác hau: %s trong %b, trÆ°á»›c là REGISTER (thanh ghi) trong %B" +msgstr "Ký hiệu “%s†có các kiểu khác hau: %s trong %b, trÆ°á»›c là REGISTER (thanh ghi) trong %B" #: elf64-sparc.c:687 msgid "%B: linking UltraSPARC specific with HAL specific code" @@ -2886,31 +2885,31 @@ msgstr "%B: Ä‘ang liên kết UltraSPARC dứt khoát vá»›i mã đặc trÆ°ng ch #: elf64-x86-64.c:1427 msgid "%B: relocation %s against symbol `%s' isn't supported in x32 mode" -msgstr "%B: sá»± định vị lại %s dá»±a và o ký hiệu \"%s\" không được há»— trợ trong chế Ä‘á»™ x32" +msgstr "%B: sá»± định vị lại %s dá»±a và o ký hiệu “%s†không được há»— trợ trong chế Ä‘á»™ x32" #: elf64-x86-64.c:1656 msgid "%B: '%s' accessed both as normal and thread local symbol" -msgstr "%B; \"%s\" được truy cáºp nhÆ° là ký hiệu cả hai kiểu bình thÆ°á»ng và mạch cục bá»™" +msgstr "%B; “%s†được truy cáºp nhÆ° là ký hiệu cả hai kiểu bình thÆ°á»ng và mạch cục bá»™" #: elf64-x86-64.c:3150 msgid "%B: relocation %s against STT_GNU_IFUNC symbol `%s' has non-zero addend: %d" -msgstr "%B: sá»± định vị lại %s đối vá»›i ký hiệu STT_GNU_IFUNC \"%s\" có phần cá»™ng khác số không: %d" +msgstr "%B: sá»± định vị lại %s đối vá»›i ký hiệu STT_GNU_IFUNC “%s†có phần cá»™ng khác số không: %d" #: elf64-x86-64.c:3411 msgid "%B: relocation R_X86_64_GOTOFF64 against protected function `%s' can not be used when making a shared object" -msgstr "%B: định vị lại R_X86_64_GOTOFF64 so vá»›i hà m đã bảo vệ \"%s\" thì không thể được dùng khi tạo má»™t đối tượng chia sẻ" +msgstr "%B: định vị lại R_X86_64_GOTOFF64 so vá»›i hà m đã bảo vệ “%s†thì không thể được dùng khi tạo má»™t đối tượng chia sẻ" #: elf64-x86-64.c:3523 msgid "; recompile with -fPIC" -msgstr "; biên dịch lại vá»›i \"-fPIC\"" +msgstr "; biên dịch lại vá»›i “-fPICâ€" #: elf64-x86-64.c:3528 msgid "%B: relocation %s against %s `%s' can not be used when making a shared object%s" -msgstr "%B: không dùng được định vị lại %s đối vá»›i %s \"%s\" khi tạo má»™t đối tượng chia sẻ %s" +msgstr "%B: không dùng được định vị lại %s đối vá»›i %s “%s†khi tạo má»™t đối tượng chia sẻ %s" #: elf64-x86-64.c:3530 msgid "%B: relocation %s against undefined %s `%s' can not be used when making a shared object%s" -msgstr "%B: không dùng được định vị lại %s đối vá»›i %s chÆ°a xác định \"%s\" khi tạo má»™t đối tượng chia sẻ %s" +msgstr "%B: không dùng được định vị lại %s đối vá»›i %s chÆ°a xác định “%s†khi tạo má»™t đối tượng chia sẻ %s" #: elfcode.h:767 #, c-format @@ -2949,7 +2948,7 @@ msgstr "%s: lá»i định nghÄ©a TLS trong %B không tÆ°Æ¡ng ứng vá»›i lá»i Ä #: elflink.c:1762 msgid "%B: unexpected redefinition of indirect versioned symbol `%s'" -msgstr "%B: gặp lá»i định nghÄ©a lại bất thÆ°á»ng của ký hiệu gián tiếp đặt phiên bản \"%s\"" +msgstr "%B: gặp lá»i định nghÄ©a lại bất thÆ°á»ng của ký hiệu gián tiếp đặt phiên bản “%sâ€" #: elflink.c:2063 msgid "%B: version node not found for symbol %s" @@ -2957,11 +2956,11 @@ msgstr "%B: không tìm thấy nút thông tin phiên bản cho ký hiệu %s" #: elflink.c:2154 msgid "%B: bad reloc symbol index (0x%lx >= 0x%lx) for offset 0x%lx in section `%A'" -msgstr "%B: chỉ mục ký hiệu định vị lại sai (0x%lx ≥ 0x%lx) cho khoảng bù 0x%lx trong phần \"%A\"" +msgstr "%B: chỉ mục ký hiệu định vị lại sai (0x%lx ≥ 0x%lx) cho khoảng bù 0x%lx trong phần “%Aâ€" #: elflink.c:2165 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: chỉ mục ký hiệu khác số không (0x%lx) cho hiệu 0x%lx trong phần \"%A\" mà táºp tin đối tượng không có bảng ký hiệu" +msgstr "%B: chỉ mục ký hiệu khác số không (0x%lx) cho hiệu 0x%lx trong phần “%A†mà táºp tin đối tượng không có bảng ký hiệu" #: elflink.c:2355 msgid "%B: relocation size mismatch in %B section %A" @@ -2970,7 +2969,7 @@ msgstr "%B: sai khá»›p kÃch cỡ định vị lại trong %B phần %A" #: elflink.c:2639 #, c-format msgid "warning: type and size of dynamic symbol `%s' are not defined" -msgstr "cảnh báo: chÆ°a xác định kiểu và kÃch cỡ của ký hiệu Ä‘á»™ng \"%s\"" +msgstr "cảnh báo: chÆ°a xác định kiểu và kÃch cỡ của ký hiệu Ä‘á»™ng “%sâ€" #: elflink.c:3391 msgid "%P: alternate ELF machine code found (%d) in %B, expecting %d\n" @@ -2986,23 +2985,23 @@ msgstr "%B: %s: phiên bản cần thiết mà không hợp lệ %d" #: elflink.c:4269 msgid "Warning: alignment %u of common symbol `%s' in %B is greater than the alignment (%u) of its section %A" -msgstr "Cảnh báo: vị trà sắp hà ng %u của ký hiệu dùng chung \"%s\" trong %B là lá»›n hÆ¡n vị trà sắp hà ng (%u) của phần %A của nó" +msgstr "Cảnh báo: vị trà sắp hà ng %u của ký hiệu dùng chung “%s†trong %B là lá»›n hÆ¡n vị trà sắp hà ng (%u) của phần %A của nó" #: elflink.c:4275 msgid "Warning: alignment %u of symbol `%s' in %B is smaller than %u in %B" -msgstr "Cảnh báo: vị trà sắp hà ng %u của ký hiệu \"%s\" trong %B là nhá» hÆ¡n %u trong %B" +msgstr "Cảnh báo: vị trà sắp hà ng %u của ký hiệu “%s†trong %B là nhá» hÆ¡n %u trong %B" #: elflink.c:4290 msgid "Warning: size of symbol `%s' changed from %lu in %B to %lu in %B" -msgstr "Cảnh báo: kÃch cỡ của ký hiệu \"%s\" đã thay đổi từ %lu trong %B thà nh %lu trong %B" +msgstr "Cảnh báo: kÃch cỡ của ký hiệu “%s†đã thay đổi từ %lu trong %B thà nh %lu trong %B" #: elflink.c:4463 msgid "%B: undefined reference to symbol '%s'" -msgstr "%B: chÆ°a định nghÄ©a tham chiếu đến ký hiệu '%s'" +msgstr "%B: chÆ°a định nghÄ©a tham chiếu đến ký hiệu “%sâ€" #: elflink.c:4466 msgid "note: '%s' is defined in DSO %B so try adding it to the linker command line" -msgstr "chú ý: '%s' được định nghÄ©a trong DSO %B do đó hãy thá» thêm nó và o trong dòng lệnh của bá»™ liên kết" +msgstr "chú ý: “%s†được định nghÄ©a trong DSO %B do đó hãy thá» thêm nó và o trong dòng lệnh của bá»™ liên kết" #: elflink.c:5781 #, c-format @@ -3011,7 +3010,7 @@ msgstr "%s: phiên bản chÆ°a được xác định: %s" #: elflink.c:5849 msgid "%B: .preinit_array section is not allowed in DSO" -msgstr "%B: không cho phép phần \".preinit_array\" trong DSO" +msgstr "%B: không cho phép phần “.preinit_array†trong DSO" #: elflink.c:7604 #, c-format @@ -3021,7 +3020,7 @@ msgstr "gặp tham chiếu %s chÆ°a được xác định trong ký hiệu phứ #: elflink.c:7758 #, c-format msgid "unknown operator '%c' in complex symbol" -msgstr "không rõ toán tá» \"%c\" trong ký hiệu phức tạp" +msgstr "không rõ toán tỠ“%c†trong ký hiệu phức tạp" #: elflink.c:8097 elflink.c:8114 elflink.c:8151 elflink.c:8168 msgid "%B: Unable to sort relocs - they are in more than one size" @@ -3041,15 +3040,15 @@ msgstr "%B: Quá nhiá»u phần: %d (≥ %d)" #: elflink.c:8675 msgid "%B: internal symbol `%s' in %B is referenced by DSO" -msgstr "%B: ký hiệu ná»™i tại \"%s\" trong %B được DSO tham chiếu" +msgstr "%B: ký hiệu ná»™i tại “%s†trong %B được DSO tham chiếu" #: elflink.c:8677 msgid "%B: hidden symbol `%s' in %B is referenced by DSO" -msgstr "%B: ký hiệu ẩn `%s' trong %B được DSO tham chiếu" +msgstr "%B: ký hiệu ẩn “%s†trong %B được DSO tham chiếu" #: elflink.c:8679 msgid "%B: local symbol `%s' in %B is referenced by DSO" -msgstr "%B: ký hiệu ná»™i bá»™ `%s' trong %B được tham chiếu bởi DSO" +msgstr "%B: ký hiệu ná»™i bá»™ “%s†trong %B được tham chiếu bởi DSO" #: elflink.c:8776 msgid "%B: could not find output section %A for input section %A" @@ -3057,15 +3056,15 @@ msgstr "%B: không thể tìm thấy phần kết xuất %A cho phần dữ liá» #: elflink.c:8899 msgid "%B: protected symbol `%s' isn't defined" -msgstr "%B: ký hiệu được bảo vệ `%s' chÆ°a được định nghÄ©a" +msgstr "%B: ký hiệu được bảo vệ “%s†chÆ°a được định nghÄ©a" #: elflink.c:8901 msgid "%B: internal symbol `%s' isn't defined" -msgstr "%B: ký hiệu ná»™i tại `%s' chÆ°a được định nghÄ©a" +msgstr "%B: ký hiệu ná»™i tại “%s†chÆ°a được định nghÄ©a" #: elflink.c:8903 msgid "%B: hidden symbol `%s' isn't defined" -msgstr "%B: ký hiệu ẩn `%s' chÆ°a được định nghÄ©a" +msgstr "%B: ký hiệu ẩn “%s†chÆ°a được định nghÄ©a" #: elflink.c:9432 msgid "error: %B: size of section %A is not multiple of address size" @@ -3077,7 +3076,7 @@ msgstr "lá»—i: %B chứa má»™t định vị lại (0x%s) cho phần %A mà tham #: elflink.c:10214 msgid "%A has both ordered [`%A' in %B] and unordered [`%A' in %B] sections" -msgstr "%A có phần cả hai được sắp xếp [\"%A\" trong %B] và chÆ°a sắp xếp [\"%A\" trong %B]" +msgstr "%A có phần cả hai được sắp xếp [â€%A†trong %B] và chÆ°a sắp xếp [â€%A†trong %B]" #: elflink.c:10219 #, c-format @@ -3100,7 +3099,7 @@ msgstr "cảnh báo: phần %s có kÃch cỡ số không" #: elflink.c:11143 #, c-format msgid "warning: section '%s' is being made into a note" -msgstr "cảnh báo: phần \"%s\" bị là m thà nh má»™t ghi chú" +msgstr "cảnh báo: phần “%s†bị là m thà nh má»™t ghi chú" #: elflink.c:11212 msgid "%P%X: read-only segment has dynamic relocations.\n" @@ -3116,7 +3115,7 @@ msgstr "%P%X: không thể Ä‘á»c các ký hiệu: %E\n" #: elflink.c:11792 msgid "Removing unused section '%s' in file '%B'" -msgstr "Äang gỡ bá» phần không dùng \"%s\" trong táºp tin \"%B\"" +msgstr "Äang gỡ bá» phần không dùng “%s†trong táºp tin “%Bâ€" #: elflink.c:11998 msgid "Warning: gc-sections option ignored" @@ -3141,11 +3140,11 @@ msgstr "%B: %A+0x%lx: Nhảy trá»±c tiếp giữa các chế Ä‘á»™ ISA là khôn #: elfxx-mips.c:6519 elfxx-mips.c:6742 msgid "%B: Warning: bad `%s' option size %u smaller than its header" -msgstr "%B: Cảnh báo: kÃch cỡ tùy chá»n \"%s\" sai: nhá» hÆ¡n phần đầu của nó" +msgstr "%B: Cảnh báo: kÃch cỡ tùy chá»n “%s†sai: nhá» hÆ¡n phần đầu của nó" #: elfxx-mips.c:7495 elfxx-mips.c:7620 msgid "%B: Warning: cannot determine the target function for stub section `%s'" -msgstr "%B: cảnh báo: không thể quyết định hà m Ä‘Ãch cho phần mẩu \"%s\"" +msgstr "%B: cảnh báo: không thể quyết định hà m Ä‘Ãch cho phần mẩu “%sâ€" #: elfxx-mips.c:7749 msgid "%B: Malformed reloc detected for section %s" @@ -3166,32 +3165,32 @@ msgstr "định vị lại khác Ä‘á»™ng cÅ©ng tham chiếu đến ký hiệu Ä‘ #: elfxx-mips.c:9347 msgid "%B: Can't find matching LO16 reloc against `%s' for %s at 0x%lx in section `%A'" -msgstr "%B: Không tìm thấy định vị lại LO16 tÆ°Æ¡ng ứng so vá»›i \"%s\" cho %s ở 0x%lx trong phần \"%A\"" +msgstr "%B: Không tìm thấy định vị lại LO16 tÆ°Æ¡ng ứng so vá»›i “%s†cho %s ở 0x%lx trong phần “%Aâ€" #: elfxx-mips.c:9486 msgid "small-data section exceeds 64KB; lower small-data size limit (see option -G)" -msgstr "Phần small-data (dữ liệu nhá») vượt quá 64 KB; hãy giảm giá»›i hạn dữ liệu nhá» (xem tùy chá»n \"-G\")" +msgstr "Phần small-data (dữ liệu nhá») vượt quá 64 KB; hãy giảm giá»›i hạn dữ liệu nhá» (xem tùy chá»n “-Gâ€)" #: elfxx-mips.c:9505 msgid "JALX to a non-word-aligned address" -msgstr "JALX cho địa chỉ 'non-word-aligned'" +msgstr "JALX cho địa chỉ “non-word-alignedâ€" #: elfxx-mips.c:13266 #, c-format msgid "%s: illegal section name `%s'" -msgstr "%s: tên phần cấm \"%s\"" +msgstr "%s: tên phần cấm “%sâ€" #: elfxx-mips.c:13645 elfxx-mips.c:13671 msgid "Warning: %B uses -msingle-float, %B uses -mdouble-float" -msgstr "Cảnh báo: %B dùng \"-msingle-float\", còn %B dùng \"-mdouble-float\"" +msgstr "Cảnh báo: %B dùng “-msingle-floatâ€, còn %B dùng “-mdouble-floatâ€" #: elfxx-mips.c:13657 elfxx-mips.c:13713 msgid "Warning: %B uses -msingle-float, %B uses -mips32r2 -mfp64" -msgstr "Cảnh báo: %B dùng \"-msingle-float\", còn %B dùng \"-mips32r2 -mfp64\"" +msgstr "Cảnh báo: %B dùng “-msingle-floatâ€, còn %B dùng “-mips32r2 -mfp64â€" #: elfxx-mips.c:13683 elfxx-mips.c:13719 msgid "Warning: %B uses -mdouble-float, %B uses -mips32r2 -mfp64" -msgstr "Cảnh báo: %B dùng \"-mdouble-float\", còn %B dùng \"-mips32r2 -mfp64\"" +msgstr "Cảnh báo: %B dùng “-mdouble-floatâ€, còn %B dùng “-mips32r2 -mfp64â€" #: elfxx-mips.c:13761 msgid "%B: endianness incompatible with that of the selected emulation" @@ -3283,12 +3282,12 @@ msgstr "%B: Không thể liên kết hai đối tượng %s và %s vá»›i nhau." #: i386linux.c:451 m68klinux.c:456 sparclinux.c:450 #, c-format msgid "Output file requires shared library `%s'\n" -msgstr "Táºp tin kết xuất cần thiết thÆ° viện chia sẻ \"%s\"\n" +msgstr "Táºp tin kết xuất cần thiết thÆ° viện chia sẻ “%sâ€\n" #: i386linux.c:459 m68klinux.c:464 sparclinux.c:458 #, c-format msgid "Output file requires shared library `%s.so.%s'\n" -msgstr "Táºp tin kết xuất cần thiết thÆ° viện chia sẻ \"%s.so.%s\"\n" +msgstr "Táºp tin kết xuất cần thiết thÆ° viện chia sẻ “%s.so.%sâ€\n" #: i386linux.c:648 i386linux.c:698 m68klinux.c:656 m68klinux.c:704 #: sparclinux.c:648 sparclinux.c:698 @@ -3308,7 +3307,7 @@ msgstr "%s: chuá»—i quá dà i (%d ký tá»±, tối Ä‘a 65535)" #: ieee.c:286 #, c-format msgid "%s: unrecognized symbol `%s' flags 0x%x" -msgstr "%s: không nháºn ra ký hiêu \"%s\" các cá» 0x%x" +msgstr "%s: không nháºn ra ký hiêu “%s†các cá» 0x%x" #: ieee.c:792 msgid "%B: unimplemented ATI record %u for symbol %u" @@ -3387,7 +3386,7 @@ msgstr "%s bị phản đối được gá»i\n" #: linker.c:1872 msgid "%B: indirect symbol `%s' to `%s' is a loop" -msgstr "%B: ký hiệu gián tiếp \"%s\" tá»›i \"%s\" thì tạo má»™t vòng lặp" +msgstr "%B: ký hiệu gián tiếp “%s†tá»›i “%s†thì tạo má»™t vòng lặp" #: linker.c:2736 #, c-format @@ -3396,19 +3395,19 @@ msgstr "Thá» là m liên kết có khả năng định vị lại vá»›i đầu v #: linker.c:3021 msgid "%B: ignoring duplicate section `%A'\n" -msgstr "%B: Ä‘ang bá» qua phần trùng \"%A\"\n" +msgstr "%B: Ä‘ang bá» qua phần trùng “%Aâ€\n" #: linker.c:3030 linker.c:3039 msgid "%B: duplicate section `%A' has different size\n" -msgstr "%B: phần trùng \"%A\" có kÃch cỡ khác\n" +msgstr "%B: phần trùng “%A†có kÃch cỡ khác\n" #: linker.c:3047 linker.c:3052 msgid "%B: could not read contents of section `%A'\n" -msgstr "%B: không thể Ä‘á»c ná»™i dung của phần \"%A\"\n" +msgstr "%B: không thể Ä‘á»c ná»™i dung của phần “%Aâ€\n" #: linker.c:3056 msgid "%B: duplicate section `%A' has different contents\n" -msgstr "%B: phần trùng `%A' có ná»™i dung khác\n" +msgstr "%B: phần trùng “%A†có ná»™i dung khác\n" #: mach-o.c:407 msgid "bfd_mach_o_canonicalize_symtab: unable to load symbols" @@ -3432,17 +3431,17 @@ msgstr "bfd_mach_o_read_symtab_symbol: tên ngoà i phạm vi (%lu >= %lu)" #: mach-o.c:1892 #, 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: ký hiệu \"%s\" đã chỉ ra phần không hợp lệ %d (tối Ä‘a %lu): Ä‘ang đặt thà nh chÆ°a định nghÄ©a" +msgstr "bfd_mach_o_read_symtab_symbol: ký hiệu “%s†đã chỉ ra phần không hợp lệ %d (tối Ä‘a %lu): Ä‘ang đặt thà nh chÆ°a định nghÄ©a" #: mach-o.c:1900 #, c-format msgid "bfd_mach_o_read_symtab_symbol: symbol \"%s\" is unsupported 'indirect' reference: setting to undefined" -msgstr "bfd_mach_o_read_symtab_symbol: ký hiệu \"%s\" không được há»— trợ tham chiếu 'indirect': đặt thà nh chÆ°a định nghÄ©a" +msgstr "bfd_mach_o_read_symtab_symbol: ký hiệu “%s†không được há»— trợ tham chiếu “indirectâ€: đặt thà nh chÆ°a định nghÄ©a" #: mach-o.c:1906 #, 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: ký hiệu \"%s\" đã chỉ định sai kiểu tại trÆ°á»ng 0x%x: đặt thà nh chÆ°a định nghÄ©a" +msgstr "bfd_mach_o_read_symtab_symbol: ký hiệu “%s†đã chỉ định sai kiểu tại trÆ°á»ng 0x%x: đặt thà nh chÆ°a định nghÄ©a" #: mach-o.c:1979 msgid "bfd_mach_o_read_symtab_symbols: unable to allocate memory for symbols" @@ -3475,12 +3474,12 @@ msgstr "Phần đầu Mach-O:\n" #: mach-o.c:3578 #, c-format msgid " magic : %08lx\n" -msgstr " ma thuáºt : %08lx\n" +msgstr " ma thuáºt : %08lx\n" #: mach-o.c:3579 #, c-format msgid " cputype : %08lx (%s)\n" -msgstr " kiểu CPU : %08lx (%s)\n" +msgstr " kiểu CPU : %08lx (%s)\n" #: mach-o.c:3581 #, c-format @@ -3522,7 +3521,7 @@ msgstr "Äoạn và Phần:\n" #: mach-o.c:3601 msgid " #: Segment name Section name Address\n" -msgstr " #: Tên Ä‘oạn Tên phần Äịa chỉ\n" +msgstr " #: Tên Ä‘oạn Tên phần Äịa chỉ\n" #: merge.c:832 #, c-format @@ -3542,17 +3541,17 @@ msgstr "%s: Không có lõi nà o để cấp phát má»™t ký hiệu có chiá»u #: mmo.c:1187 #, c-format msgid "%s: invalid mmo file: initialization value for $255 is not `Main'\n" -msgstr "%s: táºp tin mmo không hợp lệ: giá trị khởi tạo cho $255 không phải là \"Main\" (chÃnh)\n" +msgstr "%s: táºp tin mmo không hợp lệ: giá trị khởi tạo cho $255 không phải là “Main†(chÃnh)\n" #: mmo.c:1332 #, c-format msgid "%s: unsupported wide character sequence 0x%02X 0x%02X after symbol name starting with `%s'\n" -msgstr "%s: dãy ký tá»± rá»™ng không được há»— trợ 0x%02X 0x%02X đằng sau tên ký hiệu bắt đầu vá»›i \"%s\"\n" +msgstr "%s: dãy ký tá»± rá»™ng không được há»— trợ 0x%02X 0x%02X đằng sau tên ký hiệu bắt đầu vá»›i “%sâ€\n" #: mmo.c:1565 #, c-format msgid "%s: invalid mmo file: unsupported lopcode `%d'\n" -msgstr "%s: táºp tin mmo không hợp lệ: mã lop không được há»— trợ \"%d\"\n" +msgstr "%s: táºp tin mmo không hợp lệ: mã lop không được há»— trợ “%dâ€\n" #: mmo.c:1575 #, c-format @@ -3567,7 +3566,7 @@ msgstr "%s: táºp tin mmo không hợp lệ: đợi z=1 hoặc z=2, còn nháºn #: mmo.c:1657 #, c-format msgid "%s: invalid mmo file: expected z = 1 or z = 2, got z = %d for lop_fixo\n" -msgstr "%s: táºp tin mmo không hợp lệ: đợi z=1 hoặc z=2, còn nháºn z=%d đối vá»›i lop_fixo\n" +msgstr "%s: táºp tin mmo không hợp lệ: cần z=1 hoặc z=2, nhÆ°ng nháºn z=%d đối vá»›i lop_fixo\n" #: mmo.c:1696 #, c-format @@ -3592,7 +3591,7 @@ msgstr "%s: không thể cấp phát tên táºp tin cho tên số %d, %d byte\n" #: mmo.c:1771 #, c-format msgid "%s: invalid mmo file: file number %d `%s', was already entered as `%s'\n" -msgstr "%s: táºp tin mmo không hợp lệ: táºp tin số %d \"%s\" đã được nháºp và o dạng \"%s\"\n" +msgstr "%s: táºp tin mmo không hợp lệ: táºp tin số %d “%s†đã được nháºp và o dạng “%sâ€\n" #: mmo.c:1784 #, c-format @@ -3617,17 +3616,17 @@ msgstr "%s: táºp tin mmo không hợp lệ: YZ của lop_end (%ld) không phả #: mmo.c:2649 #, c-format msgid "%s: invalid symbol table: duplicate symbol `%s'\n" -msgstr "%s: bảng ký hiệu không hợp lệ: ký hiệu trùng \"%s\"\n" +msgstr "%s: bảng ký hiệu không hợp lệ: ký hiệu trùng “%sâ€\n" #: mmo.c:2889 #, c-format msgid "%s: Bad symbol definition: `Main' set to %s rather than the start address %s\n" -msgstr "%s: Sai xác định ký hiệu: \"Main\" (chÃnh) được đặt thà nh %s hÆ¡n là địa chỉ đầu %s\n" +msgstr "%s: Sai xác định ký hiệu: “Main†(chÃnh) được đặt thà nh %s hÆ¡n là địa chỉ đầu %s\n" #: mmo.c:2981 #, 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: cảnh báo: bảng ký hiệu quá lá»›n cho mmo, lá»›n hÆ¡n 65535 từ 32-bit: %d, nên chỉ phát ra \"Main\" (chÃnh).\n" +msgstr "%s: cảnh báo: bảng ký hiệu quá lá»›n cho mmo, lá»›n hÆ¡n 65535 từ 32-bit: %d, nên chỉ phát ra “Main†(chÃnh).\n" #: mmo.c:3026 #, c-format @@ -3657,7 +3656,7 @@ msgstr "%s: địa chỉ đầu không hợp lệ cho các thanh ghi đã khởi #: oasys.c:882 #, c-format msgid "%s: can not represent section `%s' in oasys" -msgstr "%s: không thể đại diện phần \"%s\" theo oasys" +msgstr "%s: không thể đại diện phần “%s†theo oasys" #: osf-core.c:140 #, c-format @@ -3666,7 +3665,7 @@ msgstr "Kiểu phần táºp tin lõi OSF/1 không được quản lý %d\n" #: pe-mips.c:607 msgid "%B: `ld -r' not supported with PE MIPS objects\n" -msgstr "%B: \"ld -r\" không được há»— trợ vá»›i đối tượng MIPS PE\n" +msgstr "%B: “ld -r†không được há»— trợ vá»›i đối tượng MIPS PE\n" #. OK, at this point the following variables are set up: #. src = VMA of the memory we're fixing up @@ -3765,7 +3764,7 @@ msgstr "TrÆ°á»ng cá» = 0x%.2x\n" #: ppcboot.c:427 #, c-format msgid "Partition name = \"%s\"\n" -msgstr "Tên phân vùng = \"%s\"\n" +msgstr "Tên phân vùng = “%sâ€\n" #: ppcboot.c:446 #, c-format @@ -3815,7 +3814,7 @@ msgstr "som_sizeof_headers chÆ°a được thá»±c hiện" #: srec.c:261 msgid "%B:%d: Unexpected character `%s' in S-record file\n" -msgstr "%B:%d Gặp ký tá»± bất thÆ°á»ng \"%s\" trong táºp tin S-record\n" +msgstr "%B:%d Gặp ký tá»± bất thÆ°á»ng “%s†trong táºp tin S-record\n" #: srec.c:567 srec.c:600 msgid "%B:%d: Bad checksum in S-record file\n" @@ -3975,7 +3974,7 @@ msgstr "Phần bảng mục lục không hợp lệ trong ETIR" #: vms-alpha.c:5109 msgid "Relocation for non-REL psect" -msgstr "Tái định vị cho 'non-REL psect'" +msgstr "Tái định vị cho “non-REL psectâ€" #: vms-alpha.c:5156 #, c-format @@ -4005,17 +4004,17 @@ msgstr " kÃch thÆ°á»›c bản ghi tối Ä‘a: %u\n" #: vms-alpha.c:5685 #, c-format msgid " module name : %.*s\n" -msgstr " tên mô-Ä‘un : %.*s\n" +msgstr " tên mô-Ä‘un : %.*s\n" #: vms-alpha.c:5687 #, c-format msgid " module version : %.*s\n" -msgstr " phiên bản môđun : %.*s\n" +msgstr " phiên bản môđun : %.*s\n" #: vms-alpha.c:5689 #, c-format msgid " compile date : %.17s\n" -msgstr " ngà y dịch : %.17s\n" +msgstr " ngà y dịch : %.17s\n" #: vms-alpha.c:5694 #, c-format @@ -4025,7 +4024,7 @@ msgstr "Tên ngôn ngữ bá»™ vi xá» lý\n" #: vms-alpha.c:5695 #, c-format msgid " language name: %.*s\n" -msgstr " tên ngôn ngữ: %.*s\n" +msgstr " tên ngôn ngữ: %.*s\n" #: vms-alpha.c:5702 #, c-format @@ -4045,7 +4044,7 @@ msgstr "Phần đầu Chữ Tiêu Ä‘á»\n" #: vms-alpha.c:5711 #, c-format msgid " title: %.*s\n" -msgstr " tiêu Ä‘á»: %.*s\n" +msgstr " tiêu Ä‘á»: %.*s\n" #: vms-alpha.c:5718 #, c-format @@ -4070,7 +4069,7 @@ msgstr " EEOM (dà i=%u):\n" #: vms-alpha.c:5736 #, c-format msgid " number of cond linkage pairs: %u\n" -msgstr " số lượng của cặp liên kết \"cond\": %u\n" +msgstr " số lượng của cặp liên kết “condâ€: %u\n" #: vms-alpha.c:5738 #, c-format @@ -4085,12 +4084,12 @@ msgstr " cá» chuyển đổi địa chỉ: 0x%02x\n" #: vms-alpha.c:5743 #, c-format msgid " transfer addr psect: %u\n" -msgstr " chuyển đổi \"addr psect\": %u\n" +msgstr " chuyển đổi “addr psectâ€: %u\n" #: vms-alpha.c:5745 #, c-format msgid " transfer address : 0x%08x\n" -msgstr " địa chỉ chuyển đổi : 0x%08x\n" +msgstr " địa chỉ chuyển đổi : 0x%08x\n" #: vms-alpha.c:5754 msgid " WEAK" @@ -4190,12 +4189,12 @@ msgstr "PSC - Phần định nghÄ©a chÆ°Æ¡ng trình\n" #: vms-alpha.c:5833 vms-alpha.c:5850 #, c-format msgid " alignment : 2**%u\n" -msgstr " sắp hà ng : 2**%u\n" +msgstr " sắp hà ng : 2**%u\n" #: vms-alpha.c:5834 vms-alpha.c:5851 #, c-format msgid " flags : 0x%04x" -msgstr " cá» : 0x%04x" +msgstr " cá» : 0x%04x" #: vms-alpha.c:5838 #, c-format @@ -4205,7 +4204,7 @@ msgstr " alloc (dà i): %u (0x%08x)\n" #: vms-alpha.c:5839 vms-alpha.c:5896 vms-alpha.c:5945 #, c-format msgid " name : %.*s\n" -msgstr " tên : %.*s\n" +msgstr " tên : %.*s\n" #: vms-alpha.c:5849 #, c-format @@ -4220,17 +4219,17 @@ msgstr " alloc (dà i) : %u (0x%08x)\n" #: vms-alpha.c:5856 #, c-format msgid " image offset : 0x%08x\n" -msgstr " khoảng bù ảnh : 0x%08x\n" +msgstr " khoảng bù ảnh : 0x%08x\n" #: vms-alpha.c:5858 #, c-format msgid " symvec offset : 0x%08x\n" -msgstr " khoảng bù symvec: 0x%08x\n" +msgstr " khoảng bù symvec: 0x%08x\n" #: vms-alpha.c:5860 #, c-format msgid " name : %.*s\n" -msgstr " tên : %.*s\n" +msgstr " tên : %.*s\n" #: vms-alpha.c:5873 #, c-format @@ -4240,7 +4239,7 @@ msgstr "SYM - Äịnh nghÄ©a ký hiệu toà n cục\n" #: vms-alpha.c:5874 vms-alpha.c:5934 vms-alpha.c:5955 vms-alpha.c:5974 #, c-format msgid " flags: 0x%04x" -msgstr " các cá»: 0x%04x" +msgstr " các cá»: 0x%04x" #: vms-alpha.c:5877 #, c-format @@ -4265,7 +4264,7 @@ msgstr " chỉ mục psect : %u\n" #: vms-alpha.c:5888 vms-alpha.c:5964 vms-alpha.c:5983 #, c-format msgid " name : %.*s\n" -msgstr " tên : %.*s\n" +msgstr " tên : %.*s\n" #: vms-alpha.c:5895 #, c-format @@ -4280,17 +4279,17 @@ msgstr "IDC - Kiểm tra tÃnh nhất quán Ident\n" #: vms-alpha.c:5908 #, c-format msgid " flags : 0x%08x" -msgstr " các cá» : 0x%08x" +msgstr " các cá» : 0x%08x" #: vms-alpha.c:5912 #, c-format msgid " id match : %x\n" -msgstr " id khá»›p : %x\n" +msgstr " id khá»›p : %x\n" #: vms-alpha.c:5914 #, c-format msgid " error severity: %x\n" -msgstr " lá»—i nghiêm trá»ng: %x\n" +msgstr " lá»—i nghiêm trá»ng: %x\n" #: vms-alpha.c:5917 #, c-format @@ -4305,7 +4304,7 @@ msgstr " tên đối tượng : %.*s\n" #: vms-alpha.c:5922 #, c-format msgid " binary ident : 0x%08x\n" -msgstr " ident nhị phân : 0x%08x\n" +msgstr " ident nhị phân: 0x%08x\n" #: vms-alpha.c:5925 #, c-format @@ -4325,7 +4324,7 @@ msgstr " khoảng bù véc-tÆ¡ ký hiệu: 0x%08x\n" #: vms-alpha.c:5939 #, c-format msgid " entry point: 0x%08x\n" -msgstr " Ä‘iểm và o: 0x%08x\n" +msgstr " Ä‘iểm và o: 0x%08x\n" #: vms-alpha.c:5941 #, c-format @@ -4958,12 +4957,12 @@ msgstr " cá»: %d, ngôn ngữ: %u, số lá»›n: %u, số nhá»: %u\n" #: vms-alpha.c:6940 vms-alpha.c:7206 #, c-format msgid " module name: %.*s\n" -msgstr " tên mô-Ä‘un : %.*s\n" +msgstr " tên mô-Ä‘un: %.*s\n" #: vms-alpha.c:6943 #, c-format msgid " compiler : %.*s\n" -msgstr " trình dịch : %.*s\n" +msgstr " trình dịch : %.*s\n" #: vms-alpha.c:6948 #, c-format @@ -4977,12 +4976,12 @@ msgstr "rtnbeg\n" #: vms-alpha.c:6956 #, c-format msgid " flags: %u, address: 0x%08x, pd-address: 0x%08x\n" -msgstr " cá»: %u, địa chỉ: 0x%08x, địa chỉ pd: 0x%08x\n" +msgstr " cá»: %u, địa chỉ: 0x%08x, địa chỉ pd: 0x%08x\n" #: vms-alpha.c:6961 #, c-format msgid " routine name: %.*s\n" -msgstr " tên thủ tục: %.*s\n" +msgstr " tên thủ tục: %.*s\n" #: vms-alpha.c:6969 #, c-format @@ -4997,12 +4996,12 @@ msgstr "prolog: địa chỉ bkpt 0x%08x\n" #: vms-alpha.c:6985 #, c-format msgid "epilog: flags: %u, count: %u\n" -msgstr "epilog: cá»: %u, số lượng: %u\n" +msgstr "epilog: cá»: %u,slượng: %u\n" #: vms-alpha.c:6994 #, c-format msgid "blkbeg: address: 0x%08x, name: %.*s\n" -msgstr "blkbeg: địa chỉ: 0x%08x, tên: %.*s\n" +msgstr "blkbeg: địa chỉ: 0x%08x, tên: %.*s\n" #: vms-alpha.c:7003 #, c-format @@ -5032,12 +5031,12 @@ msgstr "recend\n" #: vms-alpha.c:7035 #, c-format msgid "enumbeg, len: %u, name: %.*s\n" -msgstr "enumbeg, dà i: %u, tên: %.*s\n" +msgstr "enumbeg, dà i: %u, tên: %.*s\n" #: vms-alpha.c:7039 #, c-format msgid "enumelt, name: %.*s\n" -msgstr "enumelt, tên: %.*s\n" +msgstr "enumelt, tên: %.*s\n" #: vms-alpha.c:7043 #, c-format @@ -5157,7 +5156,7 @@ msgstr " rms: cdt: 0x%08x %08x, ebk: 0x%08x, ffb: 0x%04x, rfo: %u\n" #: vms-alpha.c:7203 #, c-format msgid " filename : %.*s\n" -msgstr " tên táºp tin : %.*s\n" +msgstr " tên táºp tin: %.*s\n" #: vms-alpha.c:7212 #, c-format @@ -5411,7 +5410,7 @@ msgstr "Hoạt hóa ảnh: (kÃch thÆ°á»›c=%u)\n" #: vms-alpha.c:7512 #, c-format msgid " First address : 0x%08x 0x%08x\n" -msgstr " Äịa chỉ đầu tiên : 0x%08x 0x%08x\n" +msgstr "Äịa chỉ đầu tiên: 0x%08x 0x%08x\n" #: vms-alpha.c:7515 #, c-format @@ -5431,7 +5430,7 @@ msgstr "Äịa chỉ thứ tÆ°: 0x%08x 0x%08x\n" #: vms-alpha.c:7524 #, c-format msgid " Shared image : 0x%08x 0x%08x\n" -msgstr "Ảnh được chia sẻ : 0x%08x 0x%08x\n" +msgstr "Ảnh được chia sẻ: 0x%08x 0x%08x\n" #: vms-alpha.c:7535 #, c-format @@ -5446,27 +5445,27 @@ msgstr "Äịnh danh ảnh: (số lá»›n: %u, số nhá»: %u)\n" #: vms-alpha.c:7541 #, c-format msgid " image name : %.*s\n" -msgstr " tên ảnh : %.*s\n" +msgstr " tên ảnh : %.*s\n" #: vms-alpha.c:7543 #, c-format msgid " link time : %s\n" -msgstr " thá»i gian liên kết : %s\n" +msgstr " thá»i gian liên kết: %s\n" #: vms-alpha.c:7545 #, c-format msgid " image ident : %.*s\n" -msgstr " ident ảnh : %.*s\n" +msgstr " ident ảnh : %.*s\n" #: vms-alpha.c:7547 #, c-format msgid " linker ident : %.*s\n" -msgstr " ident bá»™ liên kết : %.*s\n" +msgstr " ident bá»™ liên kết: %.*s\n" #: vms-alpha.c:7549 #, c-format msgid " image build ident: %.*s\n" -msgstr " ident dá»±ng ảnh: %.*s\n" +msgstr " ident dá»±ng ảnh : %.*s\n" #: vms-alpha.c:7559 #, c-format @@ -5665,7 +5664,7 @@ msgstr "Ảnh có thể chia sẻ:\n" #: vms-alpha.c:7820 #, c-format msgid " %u: size: %u, flags: 0x%02x, name: %.*s\n" -msgstr " %u: kÃch thÆ°á»›c: %u, cá»: 0x%02x, tên: %.*s\n" +msgstr " %u: cỡ: %u, cá»: 0x%02x, tên: %.*s\n" #: vms-alpha.c:7827 #, c-format @@ -5720,7 +5719,7 @@ msgstr "%P: chỉ và o nhiá»u Ä‘iểm: trong mô-Ä‘un %B và %B\n" #: vms-lib.c:1423 #, c-format msgid "could not open shared image '%s' from '%s'" -msgstr "không thể mở ảnh được chia sẻ '%s' từ '%s'" +msgstr "không thể mở ảnh được chia sẻ “%s†từ “%sâ€" #: vms-misc.c:360 msgid "_bfd_vms_output_counted called with zero bytes" @@ -5742,31 +5741,31 @@ msgstr "%s đối tượng Ä‘á»™ng không có phần .loader" #: xcofflink.c:1416 msgid "%B: `%s' has line numbers but no enclosing section" -msgstr "%B: \"%s\" có số thứ tá»± dòng mà không có phần bao bá»c" +msgstr "%B: “%s†có số thứ tá»± dòng mà không có phần bao bá»c" #: xcofflink.c:1468 msgid "%B: class %d symbol `%s' has no aux entries" -msgstr "%B: hạng %d ký hiệu \"%s\" không có mục nháºp phụ" +msgstr "%B: hạng %d ký hiệu “%s†không có mục nháºp phụ" #: xcofflink.c:1490 msgid "%B: symbol `%s' has unrecognized csect type %d" -msgstr "%B: ký hiệu \"%s\" có kiểu csect không được nháºn ra %d" +msgstr "%B: ký hiệu “%s†có kiểu csect không được nháºn ra %d" #: xcofflink.c:1502 msgid "%B: bad XTY_ER symbol `%s': class %d scnum %d scnlen %d" -msgstr "%B: ký hiệu XTY_ER sai \"%s\" hạng %d scnum %d scnlen %d" +msgstr "%B: ký hiệu XTY_ER sai “%s†hạng %d scnum %d scnlen %d" #: xcofflink.c:1531 msgid "%B: XMC_TC0 symbol `%s' is class %d scnlen %d" -msgstr "%B: ký hiệu XMC_TC0 \"%s\" là hạng %d scnlen %d" +msgstr "%B: ký hiệu XMC_TC0 “%s†là hạng %d scnlen %d" #: xcofflink.c:1677 msgid "%B: csect `%s' not in enclosing section" -msgstr "%B: csect \"%s\" không phải trong phần bao bá»c" +msgstr "%B: csect “%s†không phải trong phần bao bá»c" #: xcofflink.c:1784 msgid "%B: misplaced XTY_LD `%s'" -msgstr "%B: không đúng chá»— XTY_LD \"%s\"" +msgstr "%B: không đúng chá»— XTY_LD “%sâ€" #: xcofflink.c:2103 msgid "%B: reloc %s:%d not in csect" @@ -5780,7 +5779,7 @@ msgstr "%s: không có ký hiệu nhÆ° váºy" #: xcofflink.c:3299 #, c-format msgid "warning: attempt to export undefined symbol `%s'" -msgstr "cảnh báo: thá» xuất ký hiệu chÆ°a được xác định \"%s\"" +msgstr "cảnh báo: thá» xuất ký hiệu chÆ°a được xác định “%sâ€" #: xcofflink.c:3678 msgid "error: undefined symbol __rtinit" @@ -5788,11 +5787,11 @@ msgstr "lá»—i: chÆ°a xác định ký hiệu __rtinit" #: xcofflink.c:4057 msgid "%B: loader reloc in unrecognized section `%s'" -msgstr "%B: gặp sá»± định vị lại bá»™ nạp trong phần không được nháºn ra \"%s\"" +msgstr "%B: gặp sá»± định vị lại bá»™ nạp trong phần không được nháºn ra “%sâ€" #: xcofflink.c:4068 msgid "%B: `%s' in loader reloc but not loader sym" -msgstr "%B: \"%s\" trong định vị lại bá»™ nạp nhÆ°ng không phải liên kết má»m đến bá»™ nạp" +msgstr "%B: “%s†trong định vị lại bá»™ nạp nhÆ°ng không phải liên kết má»m đến bá»™ nạp" #: xcofflink.c:4084 msgid "%B: loader reloc in read-only section %A" @@ -5801,11 +5800,11 @@ msgstr "%B: định vị lại bá»™ nạp trong phần chỉ Ä‘á»c %A" #: xcofflink.c:5106 #, c-format msgid "TOC overflow: 0x%lx > 0x10000; try -mminimal-toc when compiling" -msgstr "Trà n TOC: 0x%lx > 0x10000; hãy thá» \"-mminimal-toc\" khi biên dịch" +msgstr "Trà n TOC: 0x%lx > 0x10000; hãy thỠ“-mminimal-toc†khi biên dịch" #: elf32-ia64.c:628 elf64-ia64.c:628 msgid "%B: Can't relax br at 0x%lx in section `%A'. Please use brl or indirect branch." -msgstr "%B: Không thể giảm nhẹ br ở 0x%lx trong phần \"%A\". Hãy dùng brl hoặc nhánh gián tiếp." +msgstr "%B: Không thể giảm nhẹ br ở 0x%lx trong phần “%Aâ€. Hãy dùng brl hoặc nhánh gián tiếp." #: elf32-ia64.c:2284 elf64-ia64.c:2284 msgid "@pltoff reloc against local symbol" @@ -5823,11 +5822,11 @@ msgstr "%s: __gp không trải ra Ä‘oạn dữ liệu ngắn" #: elf32-ia64.c:3965 elf64-ia64.c:3965 msgid "%B: non-pic code with imm relocation against dynamic symbol `%s'" -msgstr "%B: mã khác pic vá»›i định vị lại imm so vá»›i ký hiệu Ä‘á»™ng \"%s\"" +msgstr "%B: mã khác pic vá»›i định vị lại imm so vá»›i ký hiệu Ä‘á»™ng “%sâ€" #: elf32-ia64.c:4032 elf64-ia64.c:4032 msgid "%B: @gprel relocation against dynamic symbol %s" -msgstr "%B: định vị lại @gprel so vá»›i ký hiệu Ä‘á»™ng \"%s\"" +msgstr "%B: định vị lại @gprel so vá»›i ký hiệu Ä‘á»™ng “%sâ€" #: elf32-ia64.c:4095 elf64-ia64.c:4095 msgid "%B: linking non-pic code in a position independent executable" @@ -5851,11 +5850,11 @@ msgstr "định vị lại không được há»— trợ" #: elf32-ia64.c:4471 elf64-ia64.c:4471 msgid "%B: missing TLS section for relocation %s against `%s' at 0x%lx in section `%A'." -msgstr "%B: thiếu phần TLS để định vị lại %s đối vá»›i \"%s\" ở 0x%lx trong phần \"%A\"." +msgstr "%B: thiếu phần TLS để định vị lại %s đối vá»›i “%s†ở 0x%lx trong phần “%Aâ€." #: elf32-ia64.c:4486 elf64-ia64.c:4486 msgid "%B: Can't relax br (%s) to `%s' at 0x%lx in section `%A' with size 0x%lx (> 0x1000000)." -msgstr "%B: Không thể giảm nhẹ br (%s) tá»›i \"%s\" tại 0x%lx trong phần \"%A\" vá»›i kÃch cỡ 0x%lx (> 0x1000000)." +msgstr "%B: Không thể giảm nhẹ br (%s) tá»›i “%s†tại 0x%lx trong phần “%A†vá»›i kÃch cỡ 0x%lx (> 0x1000000)." #: elf32-ia64.c:4748 elf64-ia64.c:4748 msgid "%B: linking trap-on-NULL-dereference with non-trapping files" @@ -6278,16 +6277,16 @@ msgstr "%B: không thể Ä‘iá»n và o DataDictionary[9] vì __tls_used còn thiá #~ msgstr "%B(%A+0x%lx): không thể tá»›i %s" #~ msgid "%s: invalid DSO for symbol `%s' definition" -#~ msgstr "%s: DSO không hợp lệ cho lá»i định nghÄ©a ký hiệu \"%s\"" +#~ msgstr "%s: DSO không hợp lệ cho lá»i định nghÄ©a ký hiệu “%sâ€" #~ msgid "%B: %A+0x%lx: jump to stub routine which is not jal" #~ msgstr "%B: %A+0x%lx: nhảy tá»›i hà m mẩu mà không phải jal" #~ msgid "%B: warning: ignoring duplicate section `%A'\n" -#~ msgstr "%B: cảnh báo: Ä‘ang bá» qua phần trùng \"%A\"\n" +#~ msgstr "%B: cảnh báo: Ä‘ang bá» qua phần trùng “%Aâ€\n" #~ msgid "%B: warning: duplicate section `%A' has different size\n" -#~ msgstr "%B: cảnh báo: phần trùng \"%A\" có kÃch cỡ khác\n" +#~ msgstr "%B: cảnh báo: phần trùng “%A†có kÃch cỡ khác\n" #~ msgid "bfd_make_section (%s) failed" #~ msgstr "bfd_make_section (%s) bị lá»—i" diff --git a/bfd/po/zh_CN.po b/bfd/po/zh_CN.po index 92e159a..882b3cc 100644 --- a/bfd/po/zh_CN.po +++ b/bfd/po/zh_CN.po @@ -14,6 +14,7 @@ msgstr "" "Last-Translator: Mingye Wang (Arthur2e5) <arthur200126@gmail.com>\n" "Language-Team: Chinese (simplified) <i18n-zh@googlegroups.com>\n" "Language: zh_CN\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" diff --git a/bfd/reloc.c b/bfd/reloc.c index aa70fa58..97a17f5 100644 --- a/bfd/reloc.c +++ b/bfd/reloc.c @@ -50,6 +50,7 @@ SECTION #include "bfd.h" #include "bfdlink.h" #include "libbfd.h" +#include "bfdver.h" /* DOCDD INODE @@ -3695,6 +3696,8 @@ ENUMX BFD_RELOC_ARC_S21H_PCREL_PLT ENUMX BFD_RELOC_ARC_NPS_CMEM16 +ENUMX + BFD_RELOC_ARC_JLI_SECTOFF ENUMDOC ARC relocs. @@ -8279,13 +8282,43 @@ DESCRIPTION Installs a new set of internal relocations in SECTION. */ - -void _bfd_generic_set_reloc - (bfd *abfd ATTRIBUTE_UNUSED, - sec_ptr section, - arelent **relptr, - unsigned int count) +void +_bfd_generic_set_reloc (bfd *abfd ATTRIBUTE_UNUSED, + sec_ptr section, + arelent **relptr, + unsigned int count) { section->orelocation = relptr; section->reloc_count = count; } + +/* +INTERNAL_FUNCTION + _bfd_unrecognized_reloc + +SYNOPSIS + bfd_boolean _bfd_unrecognized_reloc + (bfd * abfd, + sec_ptr section, + unsigned int r_type); + +DESCRIPTION + Reports an unrecognized reloc. + Written as a function in order to reduce code duplication. + Returns FALSE so that it can be called from a return statement. +*/ + +bfd_boolean +_bfd_unrecognized_reloc (bfd * abfd, sec_ptr section, unsigned int r_type) +{ + /* xgettext:c-format */ + _bfd_error_handler (_("%B: unrecognized relocation (%#x) in section `%A'"), + abfd, r_type, section); + + /* PR 21803: Suggest the most likely cause of this error. */ + _bfd_error_handler (_("Is this version of the linker - %s - out of date ?"), + BFD_VERSION_STRING); + + bfd_set_error (bfd_error_bad_value); + return FALSE; +} 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; @@ -5012,7 +5012,7 @@ som_set_reloc_info (unsigned char *fixup, push (v); } else - /* An operator. Pop two two values from the stack and + /* An operator. Pop two values from the stack and use them as operands to the given operation. Push the result of the operation back on the stack. */ switch (c) diff --git a/bfd/stabs.c b/bfd/stabs.c index 3139bf5..5a3686f 100644 --- a/bfd/stabs.c +++ b/bfd/stabs.c @@ -276,7 +276,7 @@ _bfd_link_section_stabs (bfd *abfd, { _bfd_error_handler /* xgettext:c-format */ - (_("%B(%A+0x%lx): Stabs entry has invalid string index."), + (_("%B(%A+%#lx): Stabs entry has invalid string index."), abfd, stabsec, (long) (sym - stabbuf)); bfd_set_error (bfd_error_bad_value); goto error_return; diff --git a/bfd/sunos.c b/bfd/sunos.c index 10f4354..6cfc26e 100644 --- a/bfd/sunos.c +++ b/bfd/sunos.c @@ -2314,7 +2314,7 @@ sunos_write_dynamic_symbol (bfd *output_bfd, } /* This is called for each reloc against an external symbol. If this - is a reloc which are are going to copy as a dynamic reloc, then + is a reloc which are going to copy as a dynamic reloc, then copy it over, and tell the caller to not bother processing this reloc. */ 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 ec89203..162a820 100644 --- a/bfd/version.h +++ b/bfd/version.h @@ -1,4 +1,22 @@ -#define BFD_VERSION_DATE 20170705 +/* The date below is automatically updated every day by a bot. During + development, we include the date in the tools' version strings + (visible in 'ld -v' etc.) because people build binutils from a + variety of sources - git, tarballs, distro sources - and we want + something that can easily identify the source they used when they + report bugs. The bfd version plus date is usually good enough for + that purpose. + + During development, this date ends up in libbfd and libopcodes + sonames because people naturally expect shared libraries with the + same soname to have compatible ABIs. We could bump the bfd version + on every ABI change, but that's just another thing contributors and + maintainers would need to remember. Instead, it's much easier for + all if the soname contains the date. This is not perfect but is + good enough. + + In releases, the date is not included in either version strings or + sonames. */ +#define BFD_VERSION_DATE 20170922 #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/vms-alpha.c b/bfd/vms-alpha.c index 91e8b6e..5595b61 100644 --- a/bfd/vms-alpha.c +++ b/bfd/vms-alpha.c @@ -473,6 +473,14 @@ _bfd_vms_slurp_eihd (bfd *abfd, unsigned int *eisd_offset, vms_debug2 ((8, "_bfd_vms_slurp_eihd\n")); + /* PR 21813: Check for an undersized record. */ + if (PRIV (recrd.buf_size) < sizeof (* eihd)) + { + _bfd_error_handler (_("Corrupt EIHD record - size is too small")); + bfd_set_error (bfd_error_bad_value); + return FALSE; + } + size = bfd_getl32 (eihd->size); imgtype = bfd_getl32 (eihd->imgtype); @@ -895,7 +903,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")); @@ -1312,19 +1320,38 @@ _bfd_vms_slurp_egsd (bfd *abfd) if (old_flags & EGSY__V_DEF) { struct vms_esdf *esdf = (struct vms_esdf *)vms_rec; + long psindx; entry->value = bfd_getl64 (esdf->value); if (PRIV (sections) == NULL) return FALSE; - entry->section = PRIV (sections)[bfd_getl32 (esdf->psindx)]; + + psindx = bfd_getl32 (esdf->psindx); + /* PR 21813: Check for an out of range index. */ + if (psindx < 0 || psindx >= (int) PRIV (section_count)) + { + _bfd_error_handler (_("Corrupt EGSD record: its psindx field is too big (%#lx)"), + psindx); + bfd_set_error (bfd_error_bad_value); + return FALSE; + } + entry->section = PRIV (sections)[psindx]; if (old_flags & EGSY__V_NORM) { PRIV (norm_sym_count)++; entry->code_value = bfd_getl64 (esdf->code_address); - entry->code_section = - PRIV (sections)[bfd_getl32 (esdf->ca_psindx)]; + psindx = bfd_getl32 (esdf->ca_psindx); + /* PR 21813: Check for an out of range index. */ + if (psindx < 0 || psindx >= (int) PRIV (section_count)) + { + _bfd_error_handler (_("Corrupt EGSD record: its psindx field is too big (%#lx)"), + psindx); + bfd_set_error (bfd_error_bad_value); + return FALSE; + } + entry->code_section = PRIV (sections)[psindx]; } } } @@ -1351,9 +1378,20 @@ _bfd_vms_slurp_egsd (bfd *abfd) if (old_flags & EGSY__V_REL) { + long psindx; + if (PRIV (sections) == NULL) return FALSE; - entry->section = PRIV (sections)[bfd_getl32 (egst->psindx)]; + psindx = bfd_getl32 (egst->psindx); + /* PR 21813: Check for an out of range index. */ + if (psindx < 0 || psindx >= (int) PRIV (section_count)) + { + _bfd_error_handler (_("Corrupt EGSD record: its psindx field is too big (%#lx)"), + psindx); + bfd_set_error (bfd_error_bad_value); + return FALSE; + } + entry->section = PRIV (sections)[psindx]; } else entry->section = bfd_abs_section_ptr; @@ -1446,6 +1484,9 @@ image_set_ptr (bfd *abfd, bfd_vma vma, int sect, struct bfd_link_info *info) if (PRIV (sections) == NULL) return; + if (sect < 0 || sect >= (int) PRIV (section_count)) + return; + sec = PRIV (sections)[sect]; if (info) @@ -2450,6 +2491,14 @@ _bfd_vms_slurp_eeom (bfd *abfd) vms_debug2 ((2, "EEOM\n")); + /* PR 21813: Check for an undersized record. */ + if (PRIV (recrd.buf_size) < sizeof (* eeom)) + { + _bfd_error_handler (_("Corrupt EEOM record - size is too small")); + bfd_set_error (bfd_error_bad_value); + return FALSE; + } + PRIV (eom_data).eom_l_total_lps = bfd_getl32 (eeom->total_lps); PRIV (eom_data).eom_w_comcod = bfd_getl16 (eeom->comcod); if (PRIV (eom_data).eom_w_comcod > 1) @@ -2630,6 +2679,9 @@ alpha_vms_object_p (bfd *abfd) PRIV (recrd.buf_size) = PRIV (recrd.rec_size); } + /* PR 21813: Check for a truncated record. */ + if (PRIV (recrd.rec_size < test_len)) + goto error_ret; /* Read the remaining record. */ remaining = PRIV (recrd.rec_size) - test_len; to_read = MIN (VMS_BLOCK_SIZE - test_len, remaining); @@ -5173,7 +5225,7 @@ alpha_vms_slurp_relocs (bfd *abfd) } else if (cur_psidx >= 0) { - if (PRIV (sections) == NULL) + if (PRIV (sections) == NULL || cur_psidx >= (int) PRIV (section_count)) return FALSE; reloc->sym_ptr_ptr = PRIV (sections)[cur_psidx]->symbol_ptr_ptr; @@ -5685,8 +5737,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 +5750,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 +6297,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/bfd/vms-misc.c b/bfd/vms-misc.c index 7497f02..91e2ec7 100644 --- a/bfd/vms-misc.c +++ b/bfd/vms-misc.c @@ -135,8 +135,8 @@ _bfd_hexdump (int level, unsigned char *ptr, int size, int offset) #endif -/* Copy sized string (string with fixed size) to new allocated area - size is string size (size of record) */ +/* Copy sized string (string with fixed size) to new allocated area. + Size is string size (size of record). */ char * _bfd_vms_save_sized_string (unsigned char *str, unsigned int size) @@ -151,8 +151,8 @@ _bfd_vms_save_sized_string (unsigned char *str, unsigned int size) return newstr; } -/* Copy counted string (string with size at first byte) to new allocated area - ptr points to size byte on entry */ +/* Copy counted string (string with size at first byte) to new allocated area. + PTR points to size byte on entry. */ char * _bfd_vms_save_counted_string (unsigned char *ptr, unsigned int maxlen) diff --git a/bfd/xcofflink.c b/bfd/xcofflink.c index 8121c7e..c9421ee 100644 --- a/bfd/xcofflink.c +++ b/bfd/xcofflink.c @@ -1499,7 +1499,7 @@ xcoff_link_add_symbols (bfd *abfd, struct bfd_link_info *info) { _bfd_error_handler /* xgettext:c-format */ - (_("%B: bad XTY_ER symbol `%s': class %d scnum %d scnlen %d"), + (_("%B: bad XTY_ER symbol `%s': class %d scnum %d scnlen %Ld"), abfd, name, sym.n_sclass, sym.n_scnum, aux.x_csect.x_scnlen.l); bfd_set_error (bfd_error_bad_value); @@ -1529,7 +1529,7 @@ xcoff_link_add_symbols (bfd *abfd, struct bfd_link_info *info) { _bfd_error_handler /* xgettext:c-format */ - (_("%B: XMC_TC0 symbol `%s' is class %d scnlen %d"), + (_("%B: XMC_TC0 symbol `%s' is class %d scnlen %Ld"), abfd, name, sym.n_sclass, aux.x_csect.x_scnlen.l); bfd_set_error (bfd_error_bad_value); goto error_return; @@ -2105,7 +2105,7 @@ xcoff_link_add_symbols (bfd *abfd, struct bfd_link_info *info) { _bfd_error_handler /* xgettext:c-format */ - (_("%B: reloc %s:%d not in csect"), + (_("%B: reloc %s:%Ld not in csect"), abfd, o->name, i); bfd_set_error (bfd_error_bad_value); goto error_return; @@ -5112,9 +5112,9 @@ xcoff_find_tc0 (bfd *output_bfd, struct xcoff_final_link_info *flinfo) if (best_address > toc_start + 0x8000) { _bfd_error_handler - (_("TOC overflow: 0x%lx > 0x10000; try -mminimal-toc " + (_("TOC overflow: %#Lx > 0x10000; try -mminimal-toc " "when compiling"), - (unsigned long) (toc_end - toc_start)); + toc_end - toc_start); bfd_set_error (bfd_error_file_too_big); return FALSE; } @@ -5310,7 +5310,7 @@ xcoff_write_global_symbol (struct bfd_hash_entry *bh, void * inf) tocoff += h->descriptor->u.toc_offset; /* The first instruction in the glink code needs to be - cooked to to hold the correct offset in the toc. The + cooked to hold the correct offset in the toc. The rest are just output raw. */ bfd_put_32 (output_bfd, bfd_xcoff_glink_code(output_bfd, 0) | (tocoff & 0xffff), p); diff --git a/bfd/xtensa-isa.c b/bfd/xtensa-isa.c index 8da75be..8c6ee88 100644 --- a/bfd/xtensa-isa.c +++ b/bfd/xtensa-isa.c @@ -292,7 +292,8 @@ xtensa_isa_init (xtensa_isa_status *errno_p, char **error_msg_p) xtensa_sysreg_internal *sreg = &isa->sysregs[n]; is_user = sreg->is_user; - isa->sysreg_table[is_user][sreg->number] = n; + if (sreg->number >= 0) + isa->sysreg_table[is_user][sreg->number] = n; } /* Set up the interface lookup table. */ |