aboutsummaryrefslogtreecommitdiff
path: root/bfd
diff options
context:
space:
mode:
Diffstat (limited to 'bfd')
-rw-r--r--bfd/ChangeLog32
-rw-r--r--bfd/bfd-in2.h5
-rw-r--r--bfd/bpf-reloc.def15
-rw-r--r--bfd/coffcode.h12
-rw-r--r--bfd/config.bfd22
-rwxr-xr-xbfd/configure20
-rw-r--r--bfd/development.sh4
-rw-r--r--bfd/elf64-bpf.c3
-rw-r--r--bfd/elf64-x86-64.c39
-rw-r--r--bfd/elfnn-loongarch.c67
-rw-r--r--bfd/elfxx-loongarch.c4
-rw-r--r--bfd/elfxx-riscv.c84
-rw-r--r--bfd/libbfd.h2
-rw-r--r--bfd/peXXigen.c15
-rw-r--r--bfd/po/bfd.pot277
-rw-r--r--bfd/reloc.c4
-rw-r--r--bfd/section.c3
-rw-r--r--bfd/version.h2
-rw-r--r--bfd/version.m42
19 files changed, 244 insertions, 368 deletions
diff --git a/bfd/ChangeLog b/bfd/ChangeLog
index 56c858e..3e5d841 100644
--- a/bfd/ChangeLog
+++ b/bfd/ChangeLog
@@ -1,26 +1,26 @@
-2023-07-24 Johannes Schauer Marin Rodrigues <josch@debian.org>
+2023-07-30 Nick Clifton <nickc@redhat.com>
- * peXXigen.c (_bfd_XXi_only_swap_filehdr_out): If inserting a
- timestamp, use the value held in the SOURCE_DATE_EPOCH environment
- variable, if it is defined.
-
-2023-07-24 Jose E. Marchesi <jose.marchesi@oracle.com>
+ This is the 2.41 release.
+ * configure: Regenerate.
+ * development.sh: Set variables to false.
+ * po/bfd.pot: Regenerate.
+ * version.m4: Set version number to 2.41.
- * reloc.c: New reloc BFD_RELOC_BPF_DISPCALL32.
- * elf64-bpf.c (bpf_reloc_type_lookup): Handle the new reloc.
- * libbfd.h (bfd_reloc_code_real_names): Regenerate.
+2023-07-24 Nick Clifton <nickc@redhat.com>
-2023-07-09 Fangrui Song <maskray@google.com>
+ Import from mainline:
+ * elfnn-loongarch.c (RELOCATE_CALC_PC32_HI20): Redefined.
+ (RELOCATE_CALC_PC64_HI32): Redefined.
- PR 30592
- * section.c: Define SEC_ELF_LARGE.
- * bfd-in2.h: Regenerate.
- * elf64-x86-64.c (elf_x86_64_section_flags, elf_x86_64_fake_sections,
- elf_x86_64_copy_private_section_data): New.
+ * elfxx-loongarch.c (reloc_bits_pcrel20_s2): Delete.
+ (reloc_bits_b16): Delete.
+ (reloc_bits_b21): Delete.
+ (reloc_bits_b26): Delete.
+ (reloc_sign_bits): New.
2023-07-03 Nick Clifton <nickc@redhat.com>
- * version.m4: Update version number to 2.41.50.
+ * version.m4: Update version number to 2.40.90.
* configure: Regenerate.
* bfd/po/bfd.pot: Regenerate.
diff --git a/bfd/bfd-in2.h b/bfd/bfd-in2.h
index 5f49807..b34c8ef 100644
--- a/bfd/bfd-in2.h
+++ b/bfd/bfd-in2.h
@@ -625,9 +625,6 @@ typedef struct bfd_section
TMS320C54X only. */
#define SEC_TIC54X_BLOCK 0x10000000
- /* This section has the SHF_X86_64_LARGE flag. This is ELF x86-64 only. */
-#define SEC_ELF_LARGE 0x10000000
-
/* Conditionally link this section; do not link if there are no
references found to any symbol in the section. This is for TI
TMS320C54X only. */
@@ -7148,8 +7145,6 @@ assembler and not (currently) written to any object files. */
/* Linux eBPF relocations. */
BFD_RELOC_BPF_64,
BFD_RELOC_BPF_DISP32,
- BFD_RELOC_BPF_DISPCALL32,
- BFD_RELOC_BPF_DISP16,
/* Adapteva EPIPHANY - 8 bit signed pc-relative displacement */
BFD_RELOC_EPIPHANY_SIMM8,
diff --git a/bfd/bpf-reloc.def b/bfd/bpf-reloc.def
index 31f761d..b1be2eb 100644
--- a/bfd/bpf-reloc.def
+++ b/bfd/bpf-reloc.def
@@ -72,18 +72,3 @@
0xffffffff, /* src_mask */
0xffffffff, /* dst_mask */
true) /* pcrel_offset */
-
- /* 16-bit PC-relative address in load instructions. */
- BPF_HOWTO (R_BPF_GNU_64_16, /* type */
- 0, /* rightshift */
- 2, /* size */
- 16, /* bitsize */
- true, /* pc_relative */
- 16, /* bitpos */
- complain_overflow_signed, /* complain_on_overflow */
- bpf_elf_generic_reloc, /* special_function */
- "R_BPF_GNU_64_16", /* name */
- true, /* partial_inplace */
- 0xffff, /* src_mask */
- 0xffff, /* dst_mask */
- true) /* pcrel_offset */
diff --git a/bfd/coffcode.h b/bfd/coffcode.h
index 6c8080c..6272025 100644
--- a/bfd/coffcode.h
+++ b/bfd/coffcode.h
@@ -3176,9 +3176,8 @@ coff_compute_section_file_positions (bfd * abfd)
created and not just improve performances with gdb.
*/
- if ((current->flags & SEC_LOAD) != 0
- && (!strcmp (current->name, _TEXT)
- || !strcmp (current->name, _DATA))
+ if ((!strcmp (current->name, _TEXT)
+ || !strcmp (current->name, _DATA))
&& (previous == NULL || strcmp(previous->name, _TDATA)))
{
bfd_vma align = 4096;
@@ -3191,8 +3190,7 @@ coff_compute_section_file_positions (bfd * abfd)
sofar += align + vma_off - sofar_off;
}
#endif
- if (previous != NULL
- && (previous->flags & SEC_LOAD) != 0)
+ if (previous != NULL)
previous->size += sofar - old_sofar;
}
@@ -4697,7 +4695,7 @@ coff_slurp_symbol_table (bfd * abfd)
#endif
#ifdef RS6000COFF_C
case C_HIDEXT:
-#ifndef AIX_WEAK_SUPPORT
+#if ! defined _AIX52 && ! defined AIX_WEAK_SUPPORT
case C_AIX_WEAKEXT:
#endif
#endif
@@ -5023,7 +5021,7 @@ coff_classify_symbol (bfd *abfd,
#endif
#ifdef RS6000COFF_C
case C_HIDEXT:
-#ifndef AIX_WEAK_SUPPORT
+#if ! defined _AIX52 && ! defined AIX_WEAK_SUPPORT
case C_AIX_WEAKEXT:
#endif
#endif
diff --git a/bfd/config.bfd b/bfd/config.bfd
index 3b39ff3..bdee539 100644
--- a/bfd/config.bfd
+++ b/bfd/config.bfd
@@ -1098,11 +1098,10 @@ case "${targ}" in
targ_selvecs="rs6000_xcoff64_aix_vec"
want64=true
;;
- powerpc-*-aix[5-9]* | rs6000-*-aix[5-9]*)
- targ_cflags=-DAIX_WEAK_SUPPORT
- targ_defvec=rs6000_xcoff_vec
- targ_selvecs="rs6000_xcoff64_aix_vec"
- want64=true
+ powerpc-*-haiku*)
+ targ_defvec=powerpc_elf32_vec
+ targ_selvecs="rs6000_xcoff_vec powerpc_elf32_le_vec pef_vec pef_xlib_vec powerpc_xcoff_vec powerpc_boot_vec"
+ targ_cflags=-D__HAIKU_TARGET__
;;
#ifdef BFD64
powerpc64-*-aix5.[01])
@@ -1110,6 +1109,14 @@ case "${targ}" in
targ_selvecs="rs6000_xcoff_vec"
want64=true
;;
+#endif
+ powerpc-*-aix[5-9]* | rs6000-*-aix[5-9]*)
+ targ_cflags=-DAIX_WEAK_SUPPORT
+ targ_defvec=rs6000_xcoff_vec
+ targ_selvecs="rs6000_xcoff64_aix_vec"
+ want64=true
+ ;;
+#ifdef BFD64
powerpc64-*-aix[5-9]*)
targ_cflags=-DAIX_WEAK_SUPPORT
targ_defvec=rs6000_xcoff64_aix_vec
@@ -1169,11 +1176,6 @@ case "${targ}" in
targ_selvecs="rs6000_xcoff_vec powerpc_elf32_le_vec powerpc_boot_vec"
targ64_selvecs="powerpc_elf64_vec powerpc_elf64_le_vec"
;;
- powerpc-*-haiku*)
- targ_defvec=powerpc_elf32_vec
- targ_selvecs="rs6000_xcoff_vec powerpc_elf32_le_vec pef_vec pef_xlib_vec powerpc_xcoff_vec powerpc_boot_vec"
- targ_cflags=-D__HAIKU_TARGET__
- ;;
powerpc-*-kaos*)
targ_defvec=powerpc_elf32_vec
targ_selvecs="powerpc_elf32_le_vec powerpc_boot_vec"
diff --git a/bfd/configure b/bfd/configure
index 3d6ec57..910af3c 100755
--- a/bfd/configure
+++ b/bfd/configure
@@ -1,6 +1,6 @@
#! /bin/sh
# Guess values for system-dependent variables and create Makefiles.
-# Generated by GNU Autoconf 2.69 for bfd 2.41.50.
+# Generated by GNU Autoconf 2.69 for bfd 2.41.
#
#
# Copyright (C) 1992-1996, 1998-2012 Free Software Foundation, Inc.
@@ -587,8 +587,8 @@ MAKEFLAGS=
# Identity of this package.
PACKAGE_NAME='bfd'
PACKAGE_TARNAME='bfd'
-PACKAGE_VERSION='2.41.50'
-PACKAGE_STRING='bfd 2.41.50'
+PACKAGE_VERSION='2.41'
+PACKAGE_STRING='bfd 2.41'
PACKAGE_BUGREPORT=''
PACKAGE_URL=''
@@ -1400,7 +1400,7 @@ if test "$ac_init_help" = "long"; then
# Omit some internal or obsolete options to make the list less imposing.
# This message is too long to be a string in the A/UX 3.1 sh.
cat <<_ACEOF
-\`configure' configures bfd 2.41.50 to adapt to many kinds of systems.
+\`configure' configures bfd 2.41 to adapt to many kinds of systems.
Usage: $0 [OPTION]... [VAR=VALUE]...
@@ -1471,7 +1471,7 @@ fi
if test -n "$ac_init_help"; then
case $ac_init_help in
- short | recursive ) echo "Configuration of bfd 2.41.50:";;
+ short | recursive ) echo "Configuration of bfd 2.41:";;
esac
cat <<\_ACEOF
@@ -1608,7 +1608,7 @@ fi
test -n "$ac_init_help" && exit $ac_status
if $ac_init_version; then
cat <<\_ACEOF
-bfd configure 2.41.50
+bfd configure 2.41
generated by GNU Autoconf 2.69
Copyright (C) 2012 Free Software Foundation, Inc.
@@ -2202,7 +2202,7 @@ cat >config.log <<_ACEOF
This file contains any messages produced by compilers while
running configure, to aid debugging if configure makes a mistake.
-It was created by bfd $as_me 2.41.50, which was
+It was created by bfd $as_me 2.41, which was
generated by GNU Autoconf 2.69. Invocation command line was
$ $0 $@
@@ -3184,7 +3184,7 @@ fi
# Define the identity of the package.
PACKAGE='bfd'
- VERSION='2.41.50'
+ VERSION='2.41'
cat >>confdefs.h <<_ACEOF
@@ -16103,7 +16103,7 @@ cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1
# report actual input values of CONFIG_FILES etc. instead of their
# values after options handling.
ac_log="
-This file was extended by bfd $as_me 2.41.50, which was
+This file was extended by bfd $as_me 2.41, which was
generated by GNU Autoconf 2.69. Invocation command line was
CONFIG_FILES = $CONFIG_FILES
@@ -16169,7 +16169,7 @@ _ACEOF
cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1
ac_cs_config="`$as_echo "$ac_configure_args" | sed 's/^ //; s/[\\""\`\$]/\\\\&/g'`"
ac_cs_version="\\
-bfd config.status 2.41.50
+bfd config.status 2.41
configured by $0, generated by GNU Autoconf 2.69,
with options \\"\$ac_cs_config\\"
diff --git a/bfd/development.sh b/bfd/development.sh
index f638a57..c0da031 100644
--- a/bfd/development.sh
+++ b/bfd/development.sh
@@ -16,7 +16,7 @@
# along with this program. If not, see <http://www.gnu.org/licenses/>.
# Controls whether to enable development-mode features by default.
-development=true
+development=false
# Indicate whether this is a release branch.
-experimental=true
+experimental=false
diff --git a/bfd/elf64-bpf.c b/bfd/elf64-bpf.c
index aefad7d..65418d1 100644
--- a/bfd/elf64-bpf.c
+++ b/bfd/elf64-bpf.c
@@ -88,10 +88,7 @@ bpf_reloc_type_lookup (bfd * abfd ATTRIBUTE_UNUSED,
case BFD_RELOC_BPF_64:
return &bpf_elf_howto_table[ (int) R_BPF_64_64_IDX];
case BFD_RELOC_BPF_DISP32:
- case BFD_RELOC_BPF_DISPCALL32:
return &bpf_elf_howto_table[ (int) R_BPF_64_32_IDX];
- case BFD_RELOC_BPF_DISP16:
- return &bpf_elf_howto_table[ (int) R_BPF_GNU_64_16_IDX];
default:
/* Pacify gcc -Wall. */
diff --git a/bfd/elf64-x86-64.c b/bfd/elf64-x86-64.c
index e7a0a91..f926464 100644
--- a/bfd/elf64-x86-64.c
+++ b/bfd/elf64-x86-64.c
@@ -5281,39 +5281,6 @@ elf_x86_64_merge_symbol (struct elf_link_hash_entry *h,
return true;
}
-static bool
-elf_x86_64_section_flags (const Elf_Internal_Shdr *hdr)
-{
- if ((hdr->sh_flags & SHF_X86_64_LARGE) != 0)
- hdr->bfd_section->flags |= SEC_ELF_LARGE;
-
- return true;
-}
-
-static bool
-elf_x86_64_fake_sections (bfd *abfd ATTRIBUTE_UNUSED,
- Elf_Internal_Shdr *hdr, asection *sec)
-{
- if (sec->flags & SEC_ELF_LARGE)
- hdr->sh_flags |= SHF_X86_64_LARGE;
-
- return true;
-}
-
-static bool
-elf_x86_64_copy_private_section_data (bfd *ibfd, asection *isec,
- bfd *obfd, asection *osec)
-{
- if (!_bfd_elf_copy_private_section_data (ibfd, isec, obfd, osec))
- return false;
-
- /* objcopy --set-section-flags without "large" drops SHF_X86_64_LARGE. */
- if (ibfd != obfd)
- elf_section_flags (osec) &= ~SHF_X86_64_LARGE;
-
- return true;
-}
-
static int
elf_x86_64_additional_program_headers (bfd *abfd,
struct bfd_link_info *info ATTRIBUTE_UNUSED)
@@ -5441,8 +5408,6 @@ elf_x86_64_special_sections[]=
#define elf_info_to_howto elf_x86_64_info_to_howto
-#define bfd_elf64_bfd_copy_private_section_data \
- elf_x86_64_copy_private_section_data
#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
@@ -5483,8 +5448,6 @@ elf_x86_64_special_sections[]=
elf_x86_64_merge_symbol
#define elf_backend_special_sections \
elf_x86_64_special_sections
-#define elf_backend_section_flags elf_x86_64_section_flags
-#define elf_backend_fake_sections elf_x86_64_fake_sections
#define elf_backend_additional_program_headers \
elf_x86_64_additional_program_headers
#define elf_backend_setup_gnu_properties \
@@ -5601,8 +5564,6 @@ elf64_x86_64_copy_solaris_special_section_fields (const bfd *ibfd ATTRIBUTE_UNUS
#undef ELF_TARGET_OS
#undef ELF_OSABI
-#define bfd_elf32_bfd_copy_private_section_data \
- elf_x86_64_copy_private_section_data
#define bfd_elf32_bfd_reloc_type_lookup \
elf_x86_64_reloc_type_lookup
#define bfd_elf32_bfd_reloc_name_lookup \
diff --git a/bfd/elfnn-loongarch.c b/bfd/elfnn-loongarch.c
index 70a6662..e9c408b 100644
--- a/bfd/elfnn-loongarch.c
+++ b/bfd/elfnn-loongarch.c
@@ -1538,7 +1538,7 @@ elfNN_allocate_ifunc_dynrelocs (struct elf_link_hash_entry *h, void *inf)
/* Allocate space in .plt, .got and associated reloc sections for
ifunc dynamic relocs. */
-static int
+static bool
elfNN_allocate_local_ifunc_dynrelocs (void **slot, void *inf)
{
struct elf_link_hash_entry *h = (struct elf_link_hash_entry *) *slot;
@@ -1700,7 +1700,7 @@ loongarch_elf_size_dynamic_sections (bfd *output_bfd,
/* Allocate .plt and .got entries, and space for local ifunc symbols. */
htab_traverse (htab->loc_hash_table,
- elfNN_allocate_local_ifunc_dynrelocs, info);
+ (void *) elfNN_allocate_local_ifunc_dynrelocs, info);
/* Don't allocate .got.plt section if there are no PLT. */
if (htab->elf.sgotplt && htab->elf.sgotplt->size == GOTPLT_HEADER_SIZE
@@ -4040,6 +4040,12 @@ loongarch_elf_finish_dynamic_symbol (bfd *output_bfd,
{
struct loongarch_elf_link_hash_table *htab = loongarch_elf_hash_table (info);
const struct elf_backend_data *bed = get_elf_backend_data (output_bfd);
+ asection *rela_dyn = bfd_get_section_by_name (output_bfd, ".rela.dyn");
+ struct bfd_link_order *lo = NULL;
+ Elf_Internal_Rela *slot = NULL, *last_slot = NULL;
+
+ if (rela_dyn)
+ lo = rela_dyn->map_head.link_order;
if (h->plt.offset != MINUS_ONE)
{
@@ -4049,6 +4055,7 @@ loongarch_elf_finish_dynamic_symbol (bfd *output_bfd,
uint32_t plt_entry[PLT_ENTRY_INSNS];
bfd_byte *loc;
Elf_Internal_Rela rela;
+ asection *rela_sec = NULL;
if (htab->elf.splt)
{
@@ -4106,7 +4113,26 @@ loongarch_elf_finish_dynamic_symbol (bfd *output_bfd,
+ h->root.u.def.section->output_section->vma
+ h->root.u.def.section->output_offset);
- loongarch_elf_append_rela (output_bfd, relplt, &rela);
+ /* Find the space after dyn sort. */
+ while (slot == last_slot || slot->r_offset != 0)
+ {
+ if (slot != last_slot)
+ {
+ slot++;
+ continue;
+ }
+
+ BFD_ASSERT (lo != NULL);
+ rela_sec = lo->u.indirect.section;
+ lo = lo->next;
+
+ slot = (Elf_Internal_Rela *)rela_sec->contents;
+ last_slot = (Elf_Internal_Rela *)(rela_sec->contents +
+ rela_sec->size);
+ }
+
+ bed->s->swap_reloca_out (output_bfd, &rela, (bfd_byte *)slot);
+ rela_sec->reloc_count++;
}
else
{
@@ -4273,7 +4299,7 @@ loongarch_finish_dyn (bfd *output_bfd, struct bfd_link_info *info, bfd *dynobj,
/* Finish up local dynamic symbol handling. We set the contents of
various dynamic sections here. */
-static int
+static bool
elfNN_loongarch_finish_local_dynamic_symbol (void **slot, void *inf)
{
struct elf_link_hash_entry *h = (struct elf_link_hash_entry *) *slot;
@@ -4282,33 +4308,6 @@ elfNN_loongarch_finish_local_dynamic_symbol (void **slot, void *inf)
return loongarch_elf_finish_dynamic_symbol (info->output_bfd, info, h, NULL);
}
-/* Value of struct elf_backend_data->elf_backend_output_arch_local_syms,
- this function is called before elf_link_sort_relocs.
- So relocation R_LARCH_IRELATIVE for local ifunc can be append to
- .rela.dyn (.rela.got) by loongarch_elf_append_rela. */
-
-static bool
-elf_loongarch_output_arch_local_syms
- (bfd *output_bfd ATTRIBUTE_UNUSED,
- struct bfd_link_info *info,
- void *flaginfo ATTRIBUTE_UNUSED,
- int (*func) (void *, const char *,
- Elf_Internal_Sym *,
- asection *,
- struct elf_link_hash_entry *) ATTRIBUTE_UNUSED)
-{
- struct loongarch_elf_link_hash_table *htab = loongarch_elf_hash_table (info);
- if (htab == NULL)
- return false;
-
- /* Fill PLT and GOT entries for local STT_GNU_IFUNC symbols. */
- htab_traverse (htab->loc_hash_table,
- elfNN_loongarch_finish_local_dynamic_symbol,
- info);
-
- return true;
-}
-
static bool
loongarch_elf_finish_dynamic_sections (bfd *output_bfd,
struct bfd_link_info *info)
@@ -4387,6 +4386,10 @@ loongarch_elf_finish_dynamic_sections (bfd *output_bfd,
elf_section_data (output_section)->this_hdr.sh_entsize = GOT_ENTRY_SIZE;
}
+ /* Fill PLT and GOT entries for local STT_GNU_IFUNC symbols. */
+ htab_traverse (htab->loc_hash_table,
+ (void *) elfNN_loongarch_finish_local_dynamic_symbol, info);
+
return true;
}
@@ -4651,8 +4654,6 @@ elf_loongarch64_hash_symbol (struct elf_link_hash_entry *h)
#define elf_backend_size_dynamic_sections loongarch_elf_size_dynamic_sections
#define elf_backend_relocate_section loongarch_elf_relocate_section
#define elf_backend_finish_dynamic_symbol loongarch_elf_finish_dynamic_symbol
-#define elf_backend_output_arch_local_syms \
- elf_loongarch_output_arch_local_syms
#define elf_backend_finish_dynamic_sections \
loongarch_elf_finish_dynamic_sections
#define elf_backend_object_p loongarch_elf_object_p
diff --git a/bfd/elfxx-loongarch.c b/bfd/elfxx-loongarch.c
index f27c9fd..2d29905 100644
--- a/bfd/elfxx-loongarch.c
+++ b/bfd/elfxx-loongarch.c
@@ -1711,12 +1711,10 @@ reloc_sign_bits (bfd *abfd, reloc_howto_type *howto, bfd_vma *fix_val)
{
case R_LARCH_SOP_POP_32_S_0_10_10_16_S2:
case R_LARCH_B26:
- /* Perform insn bits field. 15:0<<10, 25:16>>16. */
+ /* Perform insn bits field. 25:16>>16, 15:0<<10. */
val = ((val & 0xffff) << 10) | ((val >> 16) & 0x3ff);
break;
- case R_LARCH_SOP_POP_32_S_0_5_10_16_S2:
case R_LARCH_B21:
- /* Perform insn bits field. 15:0<<10, 20:16>>16. */
val = ((val & 0xffff) << 10) | ((val >> 16) & 0x1f);
break;
default:
diff --git a/bfd/elfxx-riscv.c b/bfd/elfxx-riscv.c
index ba51657..b34898a 100644
--- a/bfd/elfxx-riscv.c
+++ b/bfd/elfxx-riscv.c
@@ -1132,8 +1132,6 @@ static struct riscv_implicit_subset riscv_implicit_subsets[] =
{"zvl256b", "zvl128b", check_implicit_always},
{"zvl128b", "zvl64b", check_implicit_always},
{"zvl64b", "zvl32b", check_implicit_always},
- {"zcd", "d", check_implicit_always},
- {"zcf", "f", check_implicit_always},
{"zfa", "f", check_implicit_always},
{"d", "f", check_implicit_always},
{"zfh", "zfhmin", check_implicit_always},
@@ -1175,9 +1173,6 @@ static struct riscv_implicit_subset riscv_implicit_subsets[] =
{"zvksg", "zvkg", check_implicit_always},
{"zvksc", "zvks", check_implicit_always},
{"zvksc", "zvbc", check_implicit_always},
- {"zcf", "zca", check_implicit_always},
- {"zcd", "zca", check_implicit_always},
- {"zcb", "zca", check_implicit_always},
{"smaia", "ssaia", check_implicit_always},
{"smstateen", "ssstateen", check_implicit_always},
{"smepmp", "zicsr", check_implicit_always},
@@ -1312,10 +1307,6 @@ static struct riscv_supported_ext riscv_supported_std_z_ext[] =
{"zvl32768b", ISA_SPEC_CLASS_DRAFT, 1, 0, 0 },
{"zvl65536b", ISA_SPEC_CLASS_DRAFT, 1, 0, 0 },
{"ztso", ISA_SPEC_CLASS_DRAFT, 0, 1, 0 },
- {"zca", ISA_SPEC_CLASS_DRAFT, 1, 0, 0 },
- {"zcb", ISA_SPEC_CLASS_DRAFT, 1, 0, 0 },
- {"zcf", ISA_SPEC_CLASS_DRAFT, 1, 0, 0 },
- {"zcd", ISA_SPEC_CLASS_DRAFT, 1, 0, 0 },
{NULL, 0, 0, 0, 0}
};
@@ -1951,13 +1942,6 @@ riscv_parse_check_conflicts (riscv_parse_subset_t *rps)
rps->error_handler (_("rv%d does not support the `q' extension"), xlen);
no_conflict = false;
}
- if (riscv_lookup_subset (rps->subset_list, "zcf", &subset)
- && xlen > 32)
- {
- rps->error_handler
- (_("rv%d does not support the `zcf' extension"), xlen);
- no_conflict = false;
- }
if (riscv_lookup_subset (rps->subset_list, "zfinx", &subset)
&& riscv_lookup_subset (rps->subset_list, "f", &subset))
{
@@ -2403,16 +2387,13 @@ riscv_multi_subset_supports (riscv_parse_subset_t *rps,
case INSN_CLASS_Q:
return riscv_subset_supports (rps, "q");
case INSN_CLASS_C:
- return (riscv_subset_supports (rps, "c")
- || riscv_subset_supports (rps, "zca"));
+ return riscv_subset_supports (rps, "c");
case INSN_CLASS_F_AND_C:
return (riscv_subset_supports (rps, "f")
- && (riscv_subset_supports (rps, "c")
- || riscv_subset_supports (rps, "zcf")));
+ && riscv_subset_supports (rps, "c"));
case INSN_CLASS_D_AND_C:
return (riscv_subset_supports (rps, "d")
- && (riscv_subset_supports (rps, "c")
- || riscv_subset_supports (rps, "zcd")));
+ && riscv_subset_supports (rps, "c"));
case INSN_CLASS_F_INX:
return (riscv_subset_supports (rps, "f")
|| riscv_subset_supports (rps, "zfinx"));
@@ -2501,6 +2482,10 @@ riscv_multi_subset_supports (riscv_parse_subset_t *rps,
return riscv_subset_supports (rps, "zvkg");
case INSN_CLASS_ZVKNED:
return riscv_subset_supports (rps, "zvkned");
+ case INSN_CLASS_ZVKNHA:
+ return riscv_subset_supports (rps, "zvknha");
+ case INSN_CLASS_ZVKNHB:
+ return riscv_subset_supports (rps, "zvknhb");
case INSN_CLASS_ZVKNHA_OR_ZVKNHB:
return (riscv_subset_supports (rps, "zvknha")
|| riscv_subset_supports (rps, "zvknhb"));
@@ -2508,17 +2493,6 @@ riscv_multi_subset_supports (riscv_parse_subset_t *rps,
return riscv_subset_supports (rps, "zvksed");
case INSN_CLASS_ZVKSH:
return riscv_subset_supports (rps, "zvksh");
- case INSN_CLASS_ZCB:
- return riscv_subset_supports (rps, "zcb");
- case INSN_CLASS_ZCB_AND_ZBB:
- return (riscv_subset_supports (rps, "zcb")
- && riscv_subset_supports (rps, "zbb"));
- case INSN_CLASS_ZCB_AND_ZBA:
- return (riscv_subset_supports (rps, "zcb")
- && riscv_subset_supports (rps, "zba"));
- case INSN_CLASS_ZCB_AND_ZMMUL:
- return (riscv_subset_supports (rps, "zcb")
- && riscv_subset_supports (rps, "zmmul"));
case INSN_CLASS_SVINVAL:
return riscv_subset_supports (rps, "svinval");
case INSN_CLASS_H:
@@ -2598,27 +2572,21 @@ riscv_multi_subset_supports_ext (riscv_parse_subset_t *rps,
case INSN_CLASS_C:
return "c";
case INSN_CLASS_F_AND_C:
- if (!riscv_subset_supports (rps, "f"))
- {
- if (!riscv_subset_supports (rps, "c")
- && !riscv_subset_supports (rps, "zcf"))
- return _("f' and `c', or `f' and `zcf");
- else
- return "f";
- }
+ if (!riscv_subset_supports (rps, "f")
+ && !riscv_subset_supports (rps, "c"))
+ return _("f' and `c");
+ else if (!riscv_subset_supports (rps, "f"))
+ return "f";
else
- return _("c' or `zcf");
+ return "c";
case INSN_CLASS_D_AND_C:
- if (!riscv_subset_supports (rps, "d"))
- {
- if (!riscv_subset_supports (rps, "c")
- && !riscv_subset_supports (rps, "zcd"))
- return _("d' and `c', or `d' and `zcd");
- else
- return "d";
- }
+ if (!riscv_subset_supports (rps, "d")
+ && !riscv_subset_supports (rps, "c"))
+ return _("d' and `c");
+ else if (!riscv_subset_supports (rps, "d"))
+ return "d";
else
- return _("c' or `zcd");
+ return "c";
case INSN_CLASS_F_INX:
return _("f' or `zfinx");
case INSN_CLASS_D_INX:
@@ -2721,20 +2689,14 @@ riscv_multi_subset_supports_ext (riscv_parse_subset_t *rps,
return _("zvkg");
case INSN_CLASS_ZVKNED:
return _("zvkned");
- case INSN_CLASS_ZVKNHA_OR_ZVKNHB:
- return _("zvknha' or `zvknhb");
+ case INSN_CLASS_ZVKNHA:
+ return _("zvknha");
+ case INSN_CLASS_ZVKNHB:
+ return _("zvknhb");
case INSN_CLASS_ZVKSED:
return _("zvksed");
case INSN_CLASS_ZVKSH:
return _("zvksh");
- case INSN_CLASS_ZCB:
- return "zcb";
- case INSN_CLASS_ZCB_AND_ZBA:
- return _("zcb' and `zba");
- case INSN_CLASS_ZCB_AND_ZBB:
- return _("zcb' and `zbb");
- case INSN_CLASS_ZCB_AND_ZMMUL:
- return _("zcb' and `zmmul', or `zcb' and `m");
case INSN_CLASS_SVINVAL:
return "svinval";
case INSN_CLASS_H:
diff --git a/bfd/libbfd.h b/bfd/libbfd.h
index 1fc88a8..d4fb310 100644
--- a/bfd/libbfd.h
+++ b/bfd/libbfd.h
@@ -3346,8 +3346,6 @@ static const char *const bfd_reloc_code_real_names[] = { "@@uninitialized@@",
"BFD_RELOC_TILEGX_IMM8_Y1_TLS_ADD",
"BFD_RELOC_BPF_64",
"BFD_RELOC_BPF_DISP32",
- "BFD_RELOC_BPF_DISPCALL32",
- "BFD_RELOC_BPF_DISP16",
"BFD_RELOC_EPIPHANY_SIMM8",
"BFD_RELOC_EPIPHANY_SIMM24",
"BFD_RELOC_EPIPHANY_HIGH",
diff --git a/bfd/peXXigen.c b/bfd/peXXigen.c
index cdd89f8..da53f34 100644
--- a/bfd/peXXigen.c
+++ b/bfd/peXXigen.c
@@ -838,20 +838,7 @@ _bfd_XXi_only_swap_filehdr_out (bfd * abfd, void * in, void * out)
/* Use a real timestamp by default, unless the no-insert-timestamp
option was chosen. */
if ((pe_data (abfd)->timestamp) == -1)
- {
- time_t now;
- char *source_date_epoch;
-
- /* If the SOURCE_DATE_EPOCH environment variable is
- defined then use that as the time, otherwise use
- the current time. */
- source_date_epoch = getenv ("SOURCE_DATE_EPOCH");
- if (source_date_epoch)
- now = (time_t) strtoll (source_date_epoch, NULL, 10);
- else
- now = time (NULL);
- H_PUT_32 (abfd, now, filehdr_out->f_timdat);
- }
+ H_PUT_32 (abfd, time (0), filehdr_out->f_timdat);
else
H_PUT_32 (abfd, pe_data (abfd)->timestamp, filehdr_out->f_timdat);
diff --git a/bfd/po/bfd.pot b/bfd/po/bfd.pot
index d324c06..7c09d65 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: https://sourceware.org/bugzilla/\n"
-"POT-Creation-Date: 2023-07-03 11:38+0100\n"
+"POT-Creation-Date: 2023-07-30 14:35+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"
@@ -69,7 +69,7 @@ msgstr ""
#. Unknown relocation.
#: aoutx.h:4400 coff-alpha.c:601 coff-alpha.c:1521 coff-mips.c:356
-#: coff-rs6000.c:3029 coff-sh.c:504 coff-tic4x.c:184 coff-tic54x.c:262
+#: coff-rs6000.c:3048 coff-sh.c:504 coff-tic4x.c:184 coff-tic54x.c:262
#: elf-hppa.h:798 elf-hppa.h:826 elf-m10200.c:226 elf-m10300.c:813
#: elf32-arc.c:532 elf32-arm.c:1985 elf32-avr.c:962 elf32-bfin.c:1063
#: elf32-bfin.c:4686 elf32-cr16.c:654 elf32-cr16.c:684 elf32-cris.c:467
@@ -95,7 +95,7 @@ msgstr ""
#: elf64-ia64-vms.c:3426 elf64-mips.c:3965 elf64-mips.c:3981 elf64-mmix.c:1264
#: elf64-nfp.c:151 elf64-ppc.c:1031 elf64-ppc.c:1385 elf64-ppc.c:1394
#: elf64-s390.c:328 elf64-s390.c:378 elf64-x86-64.c:269 elfn32-mips.c:3799
-#: elfxx-ia64.c:324 elfxx-loongarch.c:1574 elfxx-riscv.c:980 elfxx-sparc.c:589
+#: elfxx-ia64.c:324 elfxx-loongarch.c:1568 elfxx-riscv.c:980 elfxx-sparc.c:589
#: elfxx-sparc.c:639 elfxx-tilegx.c:907 elfxx-tilegx.c:947
#: elfnn-aarch64.c:2215 elfnn-aarch64.c:2313 elfnn-ia64.c:214
#: elfnn-ia64.c:3821
@@ -307,32 +307,32 @@ msgstr ""
msgid "%pB: unsupported swap_aux_out for storage class %#x"
msgstr ""
-#: coff-rs6000.c:3119
+#: coff-rs6000.c:3138
#, c-format
msgid "%pB: TOC reloc at %#<PRIx64> to symbol `%s' with no TOC entry"
msgstr ""
-#: coff-rs6000.c:3243 coff64-rs6000.c:848
+#: coff-rs6000.c:3262 coff64-rs6000.c:848
#, c-format
msgid "Unable to find the stub entry targeting %s"
msgstr ""
-#: coff-rs6000.c:3358
+#: coff-rs6000.c:3377
#, c-format
msgid "%pB: TLS relocation at 0x%<PRIx64> over non-TLS symbol %s (0x%x)\n"
msgstr ""
-#: coff-rs6000.c:3371
+#: coff-rs6000.c:3390
#, c-format
msgid "%pB: TLS local relocation at 0x%<PRIx64> over imported symbol %s\n"
msgstr ""
-#: coff-rs6000.c:3777
+#: coff-rs6000.c:3796
#, c-format
msgid "%pB: relocation (%d) at 0x%<PRIx64> has wrong r_rsize (0x%x)\n"
msgstr ""
-#: coff-rs6000.c:4039 coff64-rs6000.c:2031
+#: coff-rs6000.c:4058 coff64-rs6000.c:2031
#, c-format
msgid "%pB: symbol `%s' has unrecognized smclas %d"
msgstr ""
@@ -397,13 +397,13 @@ msgstr ""
msgid "R_AMD64_IMAGEBASE with __ImageBase undefined"
msgstr ""
-#: coff-z80.c:351 coff-z8k.c:214 elf32-nds32.c:13189 elfxx-mips.c:13513
+#: coff-z80.c:351 coff-z8k.c:214 elf32-nds32.c:13189 elfxx-mips.c:13515
#: reloc.c:8495 reloc16.c:314
#, c-format
msgid "%X%P: %pB(%pA): relocation \"%pR\" goes out of range\n"
msgstr ""
-#: coff-z80.c:477 coff-z8k.c:378 elfxx-mips.c:13523 reloc.c:8505
+#: coff-z80.c:477 coff-z8k.c:378 elfxx-mips.c:13525 reloc.c:8505
#, c-format
msgid "%X%P: %pB(%pA): relocation \"%pR\" is not supported\n"
msgstr ""
@@ -938,7 +938,7 @@ msgstr ""
#: elf32-moxie.c:292 elf32-msp430.c:1510 elf32-nds32.c:6097 elf32-or1k.c:1901
#: elf32-score.c:2738 elf32-score7.c:2549 elf32-spu.c:5089
#: elf32-tilepro.c:3376 elf32-v850.c:2298 elf32-visium.c:684
-#: elf32-xstormy16.c:934 elf64-mmix.c:1545 elfxx-mips.c:10651
+#: elf32-xstormy16.c:934 elf64-mmix.c:1545 elfxx-mips.c:10653
#: elfxx-tilegx.c:3746
msgid "internal error: unsupported relocation error"
msgstr ""
@@ -1111,7 +1111,7 @@ msgstr ""
msgid "%pB: invalid string offset %u >= %<PRIu64> for section `%s'"
msgstr ""
-#: elf.c:517 elf32-arm.c:17730 elfnn-aarch64.c:8291 elfnn-loongarch.c:4391
+#: elf.c:517 elf32-arm.c:17730 elfnn-aarch64.c:8291 elfnn-loongarch.c:4430
#, c-format
msgid "%pB symbol number %lu references nonexistent SHT_SYMTAB_SHNDX section"
msgstr ""
@@ -1558,7 +1558,7 @@ msgid ""
msgstr ""
#: elf32-arc.c:938 elf32-iq2000.c:844 elf32-m32c.c:889 elf32-m68hc1x.c:1390
-#: elf32-ppc.c:3856 elf64-sparc.c:737 elfxx-mips.c:15685
+#: elf32-ppc.c:3856 elf64-sparc.c:737 elfxx-mips.c:15687
#, c-format
msgid "%pB: uses different e_flags (%#x) fields than previous modules (%#x)"
msgstr ""
@@ -2356,7 +2356,7 @@ msgstr ""
#. Ignore init flag - it may not be set, despite the flags field containing valid data.
#: elf32-bfin.c:4728 elf32-cris.c:3862 elf32-m68hc1x.c:1415 elf32-m68k.c:1265
#: elf32-score.c:3987 elf32-score7.c:3794 elf32-vax.c:536 elf32-xgate.c:494
-#: elfxx-mips.c:16371
+#: elfxx-mips.c:16373
#, c-format
msgid "private flags = %lx:"
msgstr ""
@@ -3774,12 +3774,12 @@ msgstr ""
#: elf32-sh.c:5013
#, c-format
-msgid "%X%C: relocation to \"%s\" references a different segment\n"
+msgid "%X%H: relocation to \"%s\" references a different segment\n"
msgstr ""
#: elf32-sh.c:5020
#, c-format
-msgid "%C: warning: relocation to \"%s\" references a different segment\n"
+msgid "%H: warning: relocation to \"%s\" references a different segment\n"
msgstr ""
#: elf32-sh.c:5488 elf32-sh.c:5570
@@ -4036,7 +4036,7 @@ msgid "warning: %pB and %pB differ in whether code is compiled for DSBT"
msgstr ""
#: elf32-tilepro.c:3627 elfxx-tilegx.c:4017 elfxx-x86.c:2710
-#: elfnn-aarch64.c:9999 elfnn-loongarch.c:4317 elfnn-riscv.c:3458
+#: elfnn-aarch64.c:9999 elfnn-loongarch.c:4356 elfnn-riscv.c:3458
#, c-format
msgid "discarded output section: `%pA'"
msgstr ""
@@ -4893,7 +4893,7 @@ msgid ""
"%pB(%pA+%#<PRIx64>): misaligned symbol `%s' (%#<PRIx64>) for relocation %s"
msgstr ""
-#: elf64-sparc.c:134 elfcode.h:1582
+#: elf64-sparc.c:134 elfcode.h:1593
#, c-format
msgid "%pB(%pA): relocation %d has invalid symbol index %ld"
msgstr ""
@@ -5041,17 +5041,17 @@ msgstr ""
msgid "warning: %pB has a corrupt string table index"
msgstr ""
-#: elfcode.h:837
+#: elfcode.h:838
#, c-format
msgid "warning: %pB has a program header with invalid alignment"
msgstr ""
-#: elfcode.h:1039
+#: elfcode.h:1050
#, c-format
msgid "%pB: %pA+%<PRIx64>: relocation addend %<PRIx64> too large"
msgstr ""
-#: elfcode.h:1302
+#: elfcode.h:1313
#, c-format
msgid "%pB: version count (%<PRId64>) does not match symbol count (%ld)"
msgstr ""
@@ -5418,28 +5418,27 @@ msgstr ""
msgid "error: %pB: <corrupt AArch64 used size: 0x%x>"
msgstr ""
-#: elfxx-loongarch.c:1590
+#: elfxx-loongarch.c:1584
#, c-format
msgid "%pB: unsupported relocation type %s"
msgstr ""
-#: elfxx-loongarch.c:1619
+#: elfxx-loongarch.c:1613
#, c-format
msgid "%pB: unsupported bfd relocation type %#x"
msgstr ""
-#: elfxx-loongarch.c:1638
+#: elfxx-loongarch.c:1632
#, c-format
msgid "%pB: unsupported relocation type name %s"
msgstr ""
-#: elfxx-loongarch.c:1689
+#: elfxx-loongarch.c:1685
#, c-format
msgid "%pB: relocation %s right shift %d error 0x%lx"
msgstr ""
-#: elfxx-loongarch.c:1699 elfxx-loongarch.c:1735 elfxx-loongarch.c:1770
-#: elfxx-loongarch.c:1807
+#: elfxx-loongarch.c:1699
#, c-format
msgid "%pB: relocation %s overflow 0x%lx"
msgstr ""
@@ -5472,533 +5471,533 @@ msgstr ""
msgid "%X%H: unsupported branch between ISA modes\n"
msgstr ""
-#: elfxx-mips.c:7344
+#: elfxx-mips.c:7345
#, c-format
msgid ""
"%pB: incorrect `.reginfo' section size; expected %<PRIu64>, got %<PRIu64>"
msgstr ""
-#: elfxx-mips.c:7388
+#: elfxx-mips.c:7389
#, c-format
msgid "%pB: warning: bad `%s' option size %u smaller than its header"
msgstr ""
-#: elfxx-mips.c:7624
+#: elfxx-mips.c:7625
#, c-format
msgid "%pB: warning: truncated `%s' option"
msgstr ""
-#: elfxx-mips.c:8447 elfxx-mips.c:8573
+#: elfxx-mips.c:8449 elfxx-mips.c:8575
#, c-format
msgid ""
"%pB: warning: cannot determine the target function for stub section `%s'"
msgstr ""
-#: elfxx-mips.c:8705
+#: elfxx-mips.c:8707
#, c-format
msgid "%pB: malformed reloc detected for section %s"
msgstr ""
-#: elfxx-mips.c:8805
+#: elfxx-mips.c:8807
#, c-format
msgid "%pB: GOT reloc at %#<PRIx64> not expected in executables"
msgstr ""
-#: elfxx-mips.c:8945
+#: elfxx-mips.c:8947
#, c-format
msgid "%pB: CALL16 reloc at %#<PRIx64> not against global symbol"
msgstr ""
-#: elfxx-mips.c:9248
+#: elfxx-mips.c:9250
#, c-format
msgid ""
"%X%H: relocation %s against `%s' cannot be used when making a shared object; "
"recompile with -fPIC\n"
msgstr ""
-#: elfxx-mips.c:9374
+#: elfxx-mips.c:9376
#, c-format
msgid "IFUNC symbol %s in dynamic symbol table - IFUNCS are not supported"
msgstr ""
-#: elfxx-mips.c:9377
+#: elfxx-mips.c:9379
#, c-format
msgid "non-dynamic symbol %s in dynamic symbol table"
msgstr ""
-#: elfxx-mips.c:9597
+#: elfxx-mips.c:9599
#, c-format
msgid "non-dynamic relocations refer to dynamic symbol %s"
msgstr ""
-#: elfxx-mips.c:10532
+#: elfxx-mips.c:10534
#, c-format
msgid ""
"%pB: can't find matching LO16 reloc against `%s' for %s at %#<PRIx64> in "
"section `%pA'"
msgstr ""
-#: elfxx-mips.c:10672
+#: elfxx-mips.c:10674
msgid ""
"small-data section exceeds 64KB; lower small-data size limit (see option -G)"
msgstr ""
-#: elfxx-mips.c:10691
+#: elfxx-mips.c:10693
msgid "cannot convert a jump to JALX for a non-word-aligned address"
msgstr ""
-#: elfxx-mips.c:10694
+#: elfxx-mips.c:10696
msgid "jump to a non-word-aligned address"
msgstr ""
-#: elfxx-mips.c:10695
+#: elfxx-mips.c:10697
msgid "jump to a non-instruction-aligned address"
msgstr ""
-#: elfxx-mips.c:10698
+#: elfxx-mips.c:10700
msgid "cannot convert a branch to JALX for a non-word-aligned address"
msgstr ""
-#: elfxx-mips.c:10700
+#: elfxx-mips.c:10702
msgid "branch to a non-instruction-aligned address"
msgstr ""
-#: elfxx-mips.c:10702
+#: elfxx-mips.c:10704
msgid "PC-relative load from unaligned address"
msgstr ""
-#: elfxx-mips.c:11002
+#: elfxx-mips.c:11004
#, c-format
msgid ""
"%pB: `%pA' entry VMA of %#<PRIx64> outside the 32-bit range supported; "
"consider using `-Ttext-segment=...'"
msgstr ""
-#: elfxx-mips.c:11117 elfxx-mips.c:11704
+#: elfxx-mips.c:11119 elfxx-mips.c:11706
#, c-format
msgid "%pB: `%pA' offset of %<PRId64> from `%pA' beyond the range of ADDIUPC"
msgstr ""
-#: elfxx-mips.c:11676
+#: elfxx-mips.c:11678
#, c-format
msgid ""
"%pB: `%pA' start VMA of %#<PRIx64> outside the 32-bit range supported; "
"consider using `-Ttext-segment=...'"
msgstr ""
-#: elfxx-mips.c:13422 reloc.c:8417
+#: elfxx-mips.c:13424 reloc.c:8417
#, c-format
msgid "%X%P: %pB(%pA): error: relocation for offset %V has no value\n"
msgstr ""
-#: elfxx-mips.c:13532 reloc.c:8514
+#: elfxx-mips.c:13534 reloc.c:8514
#, c-format
msgid "%X%P: %pB(%pA): relocation \"%pR\" returns an unrecognized value %x\n"
msgstr ""
-#: elfxx-mips.c:14734
+#: elfxx-mips.c:14736
#, c-format
msgid "%pB: unknown architecture %s"
msgstr ""
-#: elfxx-mips.c:15262
+#: elfxx-mips.c:15264
#, c-format
msgid "%pB: illegal section name `%pA'"
msgstr ""
-#: elfxx-mips.c:15539
+#: elfxx-mips.c:15541
#, c-format
msgid "%pB: warning: linking abicalls files with non-abicalls files"
msgstr ""
-#: elfxx-mips.c:15556
+#: elfxx-mips.c:15558
#, c-format
msgid "%pB: linking 32-bit code with 64-bit code"
msgstr ""
-#: elfxx-mips.c:15588 elfxx-mips.c:15654 elfxx-mips.c:15669
+#: elfxx-mips.c:15590 elfxx-mips.c:15656 elfxx-mips.c:15671
#, c-format
msgid "%pB: linking %s module with previous %s modules"
msgstr ""
-#: elfxx-mips.c:15612
+#: elfxx-mips.c:15614
#, c-format
msgid "%pB: ABI mismatch: linking %s module with previous %s modules"
msgstr ""
-#: elfxx-mips.c:15637
+#: elfxx-mips.c:15639
#, c-format
msgid "%pB: ASE mismatch: linking %s module with previous %s modules"
msgstr ""
-#: elfxx-mips.c:15771
+#: elfxx-mips.c:15773
#, c-format
msgid ""
"warning: %pB uses unknown floating point ABI %d (set by %pB), %pB uses "
"unknown floating point ABI %d"
msgstr ""
-#: elfxx-mips.c:15777
+#: elfxx-mips.c:15779
#, c-format
msgid ""
"warning: %pB uses unknown floating point ABI %d (set by %pB), %pB uses %s"
msgstr ""
-#: elfxx-mips.c:15783
+#: elfxx-mips.c:15785
#, c-format
msgid ""
"warning: %pB uses %s (set by %pB), %pB uses unknown floating point ABI %d"
msgstr ""
-#: elfxx-mips.c:15797
+#: elfxx-mips.c:15799
#, c-format
msgid "warning: %pB uses %s (set by %pB), %pB uses %s"
msgstr ""
-#: elfxx-mips.c:15816
+#: elfxx-mips.c:15818
#, c-format
msgid "warning: %pB uses %s (set by %pB), %pB uses unknown MSA ABI %d"
msgstr ""
-#: elfxx-mips.c:15828
+#: elfxx-mips.c:15830
#, c-format
msgid "warning: %pB uses unknown MSA ABI %d (set by %pB), %pB uses %s"
msgstr ""
-#: elfxx-mips.c:15837
+#: elfxx-mips.c:15839
#, c-format
msgid ""
"warning: %pB uses unknown MSA ABI %d (set by %pB), %pB uses unknown MSA ABI %"
"d"
msgstr ""
-#: elfxx-mips.c:15899
+#: elfxx-mips.c:15901
#, c-format
msgid "%pB: endianness incompatible with that of the selected emulation"
msgstr ""
-#: elfxx-mips.c:15913
+#: elfxx-mips.c:15915
#, c-format
msgid "%pB: ABI is incompatible with that of the selected emulation"
msgstr ""
-#: elfxx-mips.c:15966
+#: elfxx-mips.c:15968
#, c-format
msgid "%pB: warning: inconsistent ISA between e_flags and .MIPS.abiflags"
msgstr ""
-#: elfxx-mips.c:15971
+#: elfxx-mips.c:15973
#, c-format
msgid ""
"%pB: warning: inconsistent FP ABI between .gnu.attributes and .MIPS.abiflags"
msgstr ""
-#: elfxx-mips.c:15975
+#: elfxx-mips.c:15977
#, c-format
msgid "%pB: warning: inconsistent ASEs between e_flags and .MIPS.abiflags"
msgstr ""
-#: elfxx-mips.c:15982
+#: elfxx-mips.c:15984
#, c-format
msgid ""
"%pB: warning: inconsistent ISA extensions between e_flags and .MIPS.abiflags"
msgstr ""
-#: elfxx-mips.c:15986
+#: elfxx-mips.c:15988
#, c-format
msgid ""
"%pB: warning: unexpected flag in the flags2 field of .MIPS.abiflags (0x%lx)"
msgstr ""
-#: elfxx-mips.c:16177
+#: elfxx-mips.c:16179
msgid "-mips32r2 -mfp64 (12 callee-saved)"
msgstr ""
-#: elfxx-mips.c:16239 elfxx-mips.c:16250
+#: elfxx-mips.c:16241 elfxx-mips.c:16252
msgid "None"
msgstr ""
-#: elfxx-mips.c:16241 elfxx-mips.c:16310
+#: elfxx-mips.c:16243 elfxx-mips.c:16312
msgid "Unknown"
msgstr ""
-#: elfxx-mips.c:16321
+#: elfxx-mips.c:16323
#, c-format
msgid "Hard or soft float\n"
msgstr ""
-#: elfxx-mips.c:16324
+#: elfxx-mips.c:16326
#, c-format
msgid "Hard float (double precision)\n"
msgstr ""
-#: elfxx-mips.c:16327
+#: elfxx-mips.c:16329
#, c-format
msgid "Hard float (single precision)\n"
msgstr ""
-#: elfxx-mips.c:16330
+#: elfxx-mips.c:16332
#, c-format
msgid "Soft float\n"
msgstr ""
-#: elfxx-mips.c:16333
+#: elfxx-mips.c:16335
#, c-format
msgid "Hard float (MIPS32r2 64-bit FPU 12 callee-saved)\n"
msgstr ""
-#: elfxx-mips.c:16336
+#: elfxx-mips.c:16338
#, c-format
msgid "Hard float (32-bit CPU, Any FPU)\n"
msgstr ""
-#: elfxx-mips.c:16339
+#: elfxx-mips.c:16341
#, c-format
msgid "Hard float (32-bit CPU, 64-bit FPU)\n"
msgstr ""
-#: elfxx-mips.c:16342
+#: elfxx-mips.c:16344
#, c-format
msgid "Hard float compat (32-bit CPU, 64-bit FPU)\n"
msgstr ""
-#: elfxx-mips.c:16374
+#: elfxx-mips.c:16376
#, c-format
msgid " [abi=O32]"
msgstr ""
-#: elfxx-mips.c:16376
+#: elfxx-mips.c:16378
#, c-format
msgid " [abi=O64]"
msgstr ""
-#: elfxx-mips.c:16378
+#: elfxx-mips.c:16380
#, c-format
msgid " [abi=EABI32]"
msgstr ""
-#: elfxx-mips.c:16380
+#: elfxx-mips.c:16382
#, c-format
msgid " [abi=EABI64]"
msgstr ""
-#: elfxx-mips.c:16382
+#: elfxx-mips.c:16384
#, c-format
msgid " [abi unknown]"
msgstr ""
-#: elfxx-mips.c:16384
+#: elfxx-mips.c:16386
#, c-format
msgid " [abi=N32]"
msgstr ""
-#: elfxx-mips.c:16386
+#: elfxx-mips.c:16388
#, c-format
msgid " [abi=64]"
msgstr ""
-#: elfxx-mips.c:16388
+#: elfxx-mips.c:16390
#, c-format
msgid " [no abi set]"
msgstr ""
-#: elfxx-mips.c:16413
+#: elfxx-mips.c:16415
#, c-format
msgid " [unknown ISA]"
msgstr ""
-#: elfxx-mips.c:16433
+#: elfxx-mips.c:16435
#, c-format
msgid " [not 32bitmode]"
msgstr ""
-#: elfxx-riscv.c:1657
+#: elfxx-riscv.c:1660
#, c-format
msgid "x ISA extension `%s' must be set with the versions"
msgstr ""
-#: elfxx-riscv.c:1663
+#: elfxx-riscv.c:1666
#, c-format
msgid "cannot find default versions of the ISA extension `%s'"
msgstr ""
-#: elfxx-riscv.c:1769
+#: elfxx-riscv.c:1772
#, c-format
msgid "%s: first ISA extension must be `e', `i' or `g'"
msgstr ""
-#: elfxx-riscv.c:1793
+#: elfxx-riscv.c:1796
#, c-format
msgid "%s: unknown standard ISA extension or prefix class `%c'"
msgstr ""
-#: elfxx-riscv.c:1829
+#: elfxx-riscv.c:1832
#, c-format
msgid "%s: invalid prefixed ISA extension `%s' ends with <number>p"
msgstr ""
-#: elfxx-riscv.c:1853
+#: elfxx-riscv.c:1856
#, c-format
msgid "%s: unknown prefixed ISA extension `%s'"
msgstr ""
-#: elfxx-riscv.c:1877
+#: elfxx-riscv.c:1880
#, c-format
msgid "%s: prefixed ISA extension must separate with _"
msgstr ""
-#: elfxx-riscv.c:1931
+#: elfxx-riscv.c:1934
#, c-format
msgid "rv%d does not support the `e' extension"
msgstr ""
-#: elfxx-riscv.c:1939
+#: elfxx-riscv.c:1942
#, c-format
msgid "rv%d does not support the `q' extension"
msgstr ""
-#: elfxx-riscv.c:1946
+#: elfxx-riscv.c:1949
msgid "`zfinx' is conflict with the `f/d/q/zfh/zfhmin' extension"
msgstr ""
-#: elfxx-riscv.c:1967
+#: elfxx-riscv.c:1970
msgid "zvl*b extensions need to enable either `v' or `zve' extension"
msgstr ""
-#: elfxx-riscv.c:2029
+#: elfxx-riscv.c:2032
#, c-format
msgid "%s: ISA string cannot contain uppercase letters"
msgstr ""
-#: elfxx-riscv.c:2057
+#: elfxx-riscv.c:2060
#, c-format
msgid "%s: ISA string must begin with rv32 or rv64"
msgstr ""
-#: elfxx-riscv.c:2283
+#: elfxx-riscv.c:2286
#, c-format
msgid "invalid ISA extension ends with <number>p in .option arch `%s'"
msgstr ""
-#: elfxx-riscv.c:2306
+#: elfxx-riscv.c:2309
#, c-format
msgid "unknown ISA extension `%s' in .option arch `%s'"
msgstr ""
-#: elfxx-riscv.c:2317
+#: elfxx-riscv.c:2320
#, c-format
msgid "cannot + or - base extension `%s' in .option arch `%s'"
msgstr ""
-#: elfxx-riscv.c:2525 elfxx-riscv.c:2727
+#: elfxx-riscv.c:2528 elfxx-riscv.c:2730
msgid "internal: unreachable INSN_CLASS_*"
msgstr ""
-#: elfxx-riscv.c:2558
+#: elfxx-riscv.c:2561
msgid "m' or `zmmul"
msgstr ""
-#: elfxx-riscv.c:2574
+#: elfxx-riscv.c:2577
msgid "f' and `c"
msgstr ""
-#: elfxx-riscv.c:2582
+#: elfxx-riscv.c:2585
msgid "d' and `c"
msgstr ""
-#: elfxx-riscv.c:2588
+#: elfxx-riscv.c:2591
msgid "f' or `zfinx"
msgstr ""
-#: elfxx-riscv.c:2590
+#: elfxx-riscv.c:2593
msgid "d' or `zdinx"
msgstr ""
-#: elfxx-riscv.c:2592
+#: elfxx-riscv.c:2595
msgid "q' or `zqinx"
msgstr ""
-#: elfxx-riscv.c:2594
+#: elfxx-riscv.c:2597
msgid "zfh' or `zhinx"
msgstr ""
-#: elfxx-riscv.c:2598
+#: elfxx-riscv.c:2601
msgid "zfhmin' or `zhinxmin"
msgstr ""
-#: elfxx-riscv.c:2609
+#: elfxx-riscv.c:2612
msgid "zfhmin' and `d', or `zhinxmin' and `zdinx"
msgstr ""
-#: elfxx-riscv.c:2620
+#: elfxx-riscv.c:2623
msgid "zfhmin' and `q', or `zhinxmin' and `zqinx"
msgstr ""
-#: elfxx-riscv.c:2626
+#: elfxx-riscv.c:2629
msgid "d' and `zfa"
msgstr ""
-#: elfxx-riscv.c:2634
+#: elfxx-riscv.c:2637
msgid "q' and `zfa"
msgstr ""
-#: elfxx-riscv.c:2642
+#: elfxx-riscv.c:2645
msgid "zfh' and `zfa"
msgstr ""
-#: elfxx-riscv.c:2662
+#: elfxx-riscv.c:2665
msgid "zbb' or `zbkb"
msgstr ""
-#: elfxx-riscv.c:2664
+#: elfxx-riscv.c:2667
msgid "zbc' or `zbkc"
msgstr ""
-#: elfxx-riscv.c:2672
+#: elfxx-riscv.c:2675
msgid "zknd' or `zkne"
msgstr ""
-#: elfxx-riscv.c:2678
+#: elfxx-riscv.c:2681
msgid "v' or `zve64x' or `zve32x"
msgstr ""
-#: elfxx-riscv.c:2680
+#: elfxx-riscv.c:2683
msgid "v' or `zve64d' or `zve64f' or `zve32f"
msgstr ""
-#: elfxx-riscv.c:2682
+#: elfxx-riscv.c:2685
msgid "zvbb"
msgstr ""
-#: elfxx-riscv.c:2684
+#: elfxx-riscv.c:2687
msgid "zvbc"
msgstr ""
-#: elfxx-riscv.c:2686
+#: elfxx-riscv.c:2689
msgid "zvkg"
msgstr ""
-#: elfxx-riscv.c:2688
+#: elfxx-riscv.c:2691
msgid "zvkned"
msgstr ""
-#: elfxx-riscv.c:2690
+#: elfxx-riscv.c:2693
msgid "zvknha"
msgstr ""
-#: elfxx-riscv.c:2692
+#: elfxx-riscv.c:2695
msgid "zvknhb"
msgstr ""
-#: elfxx-riscv.c:2694
+#: elfxx-riscv.c:2697
msgid "zvksed"
msgstr ""
-#: elfxx-riscv.c:2696
+#: elfxx-riscv.c:2699
msgid "zvksh"
msgstr ""
-#: elfxx-riscv.c:2700
+#: elfxx-riscv.c:2703
msgid "h"
msgstr ""
@@ -9101,7 +9100,7 @@ msgstr ""
msgid "Internal error: unreachable."
msgstr ""
-#: elfnn-loongarch.c:3809 elfnn-riscv.c:4766
+#: elfnn-loongarch.c:3848 elfnn-riscv.c:4766
#, c-format
msgid ""
"%pB(%pA+%#<PRIx64>): %<PRId64> bytes required for alignment to %<PRId64>-"
diff --git a/bfd/reloc.c b/bfd/reloc.c
index 07d35e4..fbc67ac 100644
--- a/bfd/reloc.c
+++ b/bfd/reloc.c
@@ -7753,10 +7753,6 @@ ENUM
BFD_RELOC_BPF_64
ENUMX
BFD_RELOC_BPF_DISP32
-ENUMX
- BFD_RELOC_BPF_DISPCALL32
-ENUMX
- BFD_RELOC_BPF_DISP16
ENUMDOC
Linux eBPF relocations.
diff --git a/bfd/section.c b/bfd/section.c
index e9af59d..7377029 100644
--- a/bfd/section.c
+++ b/bfd/section.c
@@ -359,9 +359,6 @@ CODE_FRAGMENT
. TMS320C54X only. *}
.#define SEC_TIC54X_BLOCK 0x10000000
.
-. {* This section has the SHF_X86_64_LARGE flag. This is ELF x86-64 only. *}
-.#define SEC_ELF_LARGE 0x10000000
-.
. {* Conditionally link this section; do not link if there are no
. references found to any symbol in the section. This is for TI
. TMS320C54X only. *}
diff --git a/bfd/version.h b/bfd/version.h
index bf956a9..352e681 100644
--- a/bfd/version.h
+++ b/bfd/version.h
@@ -16,7 +16,7 @@
In releases, the date is not included in either version strings or
sonames. */
-#define BFD_VERSION_DATE 20230802
+#define BFD_VERSION_DATE 20230730
#define BFD_VERSION @bfd_version@
#define BFD_VERSION_STRING @bfd_version_package@ @bfd_version_string@
#define REPORT_BUGS_TO @report_bugs_to@
diff --git a/bfd/version.m4 b/bfd/version.m4
index 435efec..d8dfc1c 100644
--- a/bfd/version.m4
+++ b/bfd/version.m4
@@ -1 +1 @@
-m4_define([BFD_VERSION], [2.41.50])
+m4_define([BFD_VERSION], [2.41])