Compare commits
1 Commits
Author | SHA256 | Date | |
---|---|---|---|
5e410d3c25 |
@@ -1,56 +0,0 @@
|
|||||||
Change default common-page-size to 64K on aarch64. This enables the use
|
|
||||||
of RELRO since we are using 64K pages.
|
|
||||||
|
|
||||||
Index: binutils-2.41/bfd/elfnn-aarch64.c
|
|
||||||
===================================================================
|
|
||||||
--- binutils-2.41.orig/bfd/elfnn-aarch64.c 2023-07-03 01:00:00.000000000 +0200
|
|
||||||
+++ binutils-2.41/bfd/elfnn-aarch64.c 2023-08-16 16:31:51.238779641 +0200
|
|
||||||
@@ -10251,7 +10251,7 @@ const struct elf_size_info elfNN_aarch64
|
|
||||||
#define ELF_ARCH bfd_arch_aarch64
|
|
||||||
#define ELF_MACHINE_CODE EM_AARCH64
|
|
||||||
#define ELF_MAXPAGESIZE 0x10000
|
|
||||||
-#define ELF_COMMONPAGESIZE 0x1000
|
|
||||||
+#define ELF_COMMONPAGESIZE 0x10000
|
|
||||||
|
|
||||||
#define bfd_elfNN_bfd_free_cached_info \
|
|
||||||
elfNN_aarch64_bfd_free_cached_info
|
|
||||||
Index: binutils-2.41/gold/aarch64.cc
|
|
||||||
===================================================================
|
|
||||||
--- binutils-2.41.orig/gold/aarch64.cc 2023-07-03 01:00:00.000000000 +0200
|
|
||||||
+++ binutils-2.41/gold/aarch64.cc 2023-08-16 16:28:35.959450565 +0200
|
|
||||||
@@ -3555,7 +3555,7 @@ const Target::Target_info Target_aarch64
|
|
||||||
"/lib/ld.so.1", // program interpreter
|
|
||||||
0x400000, // default_text_segment_address
|
|
||||||
0x10000, // abi_pagesize (overridable by -z max-page-size)
|
|
||||||
- 0x1000, // common_pagesize (overridable by -z common-page-size)
|
|
||||||
+ 0x10000, // common_pagesize (overridable by -z common-page-size)
|
|
||||||
false, // isolate_execinstr
|
|
||||||
0, // rosegment_gap
|
|
||||||
elfcpp::SHN_UNDEF, // small_common_shndx
|
|
||||||
@@ -3584,7 +3584,7 @@ const Target::Target_info Target_aarch64
|
|
||||||
"/lib/ld.so.1", // program interpreter
|
|
||||||
0x400000, // default_text_segment_address
|
|
||||||
0x10000, // abi_pagesize (overridable by -z max-page-size)
|
|
||||||
- 0x1000, // common_pagesize (overridable by -z common-page-size)
|
|
||||||
+ 0x10000, // common_pagesize (overridable by -z common-page-size)
|
|
||||||
false, // isolate_execinstr
|
|
||||||
0, // rosegment_gap
|
|
||||||
elfcpp::SHN_UNDEF, // small_common_shndx
|
|
||||||
@@ -3613,7 +3613,7 @@ const Target::Target_info Target_aarch64
|
|
||||||
"/lib/ld.so.1", // program interpreter
|
|
||||||
0x400000, // default_text_segment_address
|
|
||||||
0x10000, // abi_pagesize (overridable by -z max-page-size)
|
|
||||||
- 0x1000, // common_pagesize (overridable by -z common-page-size)
|
|
||||||
+ 0x10000, // common_pagesize (overridable by -z common-page-size)
|
|
||||||
false, // isolate_execinstr
|
|
||||||
0, // rosegment_gap
|
|
||||||
elfcpp::SHN_UNDEF, // small_common_shndx
|
|
||||||
@@ -3642,7 +3642,7 @@ const Target::Target_info Target_aarch64
|
|
||||||
"/lib/ld.so.1", // program interpreter
|
|
||||||
0x400000, // default_text_segment_address
|
|
||||||
0x10000, // abi_pagesize (overridable by -z max-page-size)
|
|
||||||
- 0x1000, // common_pagesize (overridable by -z common-page-size)
|
|
||||||
+ 0x10000, // common_pagesize (overridable by -z common-page-size)
|
|
||||||
false, // isolate_execinstr
|
|
||||||
0, // rosegment_gap
|
|
||||||
elfcpp::SHN_UNDEF, // small_common_shndx
|
|
@@ -1,7 +1,28 @@
|
|||||||
|
-------------------------------------------------------------------
|
||||||
|
Thu Jul 10 05:26:01 UTC 2025 - Bernhard Wiedemann <bwiedemann@suse.com>
|
||||||
|
|
||||||
|
- Skip PGO with %want_reproducible_builds (boo#1040589)
|
||||||
|
|
||||||
|
-------------------------------------------------------------------
|
||||||
|
Wed Jun 18 09:30:37 UTC 2025 - Andreas Schwab <schwab@suse.de>
|
||||||
|
|
||||||
|
- pr33029.patch: Fix crash in assembler with -gdwarf-5
|
||||||
|
|
||||||
|
-------------------------------------------------------------------
|
||||||
|
Tue Jun 3 09:07:07 UTC 2025 - Andreas Schwab <schwab@suse.de>
|
||||||
|
|
||||||
|
- Drop aarch64-common-pagesize.patch, aarch64 no longer uses 64K page size
|
||||||
|
|
||||||
|
-------------------------------------------------------------------
|
||||||
|
Tue May 6 14:33:48 UTC 2025 - Michael Matz <matz@suse.com>
|
||||||
|
|
||||||
|
- Add -std=gnu17 to move gcc15 forward, as temporary measure until
|
||||||
|
the binutils version can be updated [bsc#1241916].
|
||||||
|
|
||||||
-------------------------------------------------------------------
|
-------------------------------------------------------------------
|
||||||
Thu Feb 13 09:39:06 UTC 2025 - Richard Biener <rguenther@suse.com>
|
Thu Feb 13 09:39:06 UTC 2025 - Richard Biener <rguenther@suse.com>
|
||||||
|
|
||||||
- Do not build binutils-gold for openSUSE Factory or SLFO.
|
- Do not build binutils-gold for SLFO.
|
||||||
|
|
||||||
-------------------------------------------------------------------
|
-------------------------------------------------------------------
|
||||||
Fri Jan 10 08:54:55 UTC 2025 - JS <obs.coke518@passinbox.com>
|
Fri Jan 10 08:54:55 UTC 2025 - JS <obs.coke518@passinbox.com>
|
||||||
|
@@ -143,7 +143,6 @@ Patch12: s390-pic-dso.diff
|
|||||||
Patch14: binutils-build-as-needed.diff
|
Patch14: binutils-build-as-needed.diff
|
||||||
Patch15: binutils-znow.patch
|
Patch15: binutils-znow.patch
|
||||||
Patch22: binutils-bfd_h.patch
|
Patch22: binutils-bfd_h.patch
|
||||||
Patch34: aarch64-common-pagesize.patch
|
|
||||||
Patch37: binutils-revert-plt32-in-branches.diff
|
Patch37: binutils-revert-plt32-in-branches.diff
|
||||||
Patch38: binutils-fix-invalid-op-errata.diff
|
Patch38: binutils-fix-invalid-op-errata.diff
|
||||||
Patch39: binutils-revert-nm-symversion.diff
|
Patch39: binutils-revert-nm-symversion.diff
|
||||||
@@ -153,6 +152,7 @@ Patch42: binutils-compat-old-behaviour.diff
|
|||||||
Patch43: binutils-revert-hlasm-insns.diff
|
Patch43: binutils-revert-hlasm-insns.diff
|
||||||
Patch44: binutils-revert-rela.diff
|
Patch44: binutils-revert-rela.diff
|
||||||
Patch60: binutils-disable-code-arch-error.diff
|
Patch60: binutils-disable-code-arch-error.diff
|
||||||
|
Patch61: pr33029.patch
|
||||||
Patch90: cross-avr-nesc-as.patch
|
Patch90: cross-avr-nesc-as.patch
|
||||||
Patch92: cross-avr-omit_section_dynsym.patch
|
Patch92: cross-avr-omit_section_dynsym.patch
|
||||||
Patch93: cross-avr-size.patch
|
Patch93: cross-avr-size.patch
|
||||||
@@ -178,7 +178,8 @@ Requires: alts
|
|||||||
%else
|
%else
|
||||||
PreReq: update-alternatives
|
PreReq: update-alternatives
|
||||||
%endif
|
%endif
|
||||||
%if 0%{!?cross:1} && 0%{?suse_version} < 1600
|
# We want gold for SLE15 and (newer) openSUSE, but not SLE16
|
||||||
|
%if 0%{!?cross:1} && 0%{?suse_version} >= 1310 && ( 0%{?suse_version} < 1600 || 0%{?is_opensuse} )
|
||||||
%define gold_archs %ix86 aarch64 %arm x86_64 %x86_64 ppc ppc64 ppc64le s390x %sparc
|
%define gold_archs %ix86 aarch64 %arm x86_64 %x86_64 ppc ppc64 ppc64le s390x %sparc
|
||||||
%endif
|
%endif
|
||||||
|
|
||||||
@@ -268,7 +269,6 @@ cp ld/ldgram.y ld/ldgram.y.orig
|
|||||||
%patch -P 14
|
%patch -P 14
|
||||||
%patch -P 15
|
%patch -P 15
|
||||||
%patch -P 22
|
%patch -P 22
|
||||||
%patch -P 34 -p1
|
|
||||||
%if %{suse_version} < 1550
|
%if %{suse_version} < 1550
|
||||||
%patch -P 37 -p1
|
%patch -P 37 -p1
|
||||||
%endif
|
%endif
|
||||||
@@ -282,6 +282,7 @@ cp ld/ldgram.y ld/ldgram.y.orig
|
|||||||
%patch -P 44 -p1
|
%patch -P 44 -p1
|
||||||
%endif
|
%endif
|
||||||
%patch -P 60 -p1
|
%patch -P 60 -p1
|
||||||
|
%patch -P 61 -p1
|
||||||
%if "%{TARGET}" == "avr"
|
%if "%{TARGET}" == "avr"
|
||||||
cp gas/config/tc-avr.h gas/config/tc-avr-nesc.h
|
cp gas/config/tc-avr.h gas/config/tc-avr-nesc.h
|
||||||
%patch -P 90
|
%patch -P 90
|
||||||
@@ -302,6 +303,14 @@ diff -u ld/ldgram.y ld/ldgram.y.orig
|
|||||||
sed -i -e '/BFD_VERSION_DATE/s/$/-%(echo %release | sed 's/\.[0-9]*$//')/' bfd/version.h
|
sed -i -e '/BFD_VERSION_DATE/s/$/-%(echo %release | sed 's/\.[0-9]*$//')/' bfd/version.h
|
||||||
RPM_OPT_FLAGS="$RPM_OPT_FLAGS -Wno-error"
|
RPM_OPT_FLAGS="$RPM_OPT_FLAGS -Wno-error"
|
||||||
|
|
||||||
|
# gcc15 and up default to c23, these older binutils would need patches
|
||||||
|
# for that. As an impeding version update fixes that as well, simply
|
||||||
|
# override the compiler instead of bothering with backports
|
||||||
|
%if %{suse_version} > 1600
|
||||||
|
CC="gcc -std=gnu17"
|
||||||
|
export CC
|
||||||
|
%endif
|
||||||
|
|
||||||
%if 0%{!?cross:1}
|
%if 0%{!?cross:1}
|
||||||
# Building native binutils
|
# Building native binutils
|
||||||
echo "Building native binutils."
|
echo "Building native binutils."
|
||||||
@@ -380,7 +389,7 @@ cd build-dir
|
|||||||
%endif
|
%endif
|
||||||
--enable-shared \
|
--enable-shared \
|
||||||
%if %{suse_version} > 1500
|
%if %{suse_version} > 1500
|
||||||
%if %{with bootstrap} && 0%{?do_profiling}
|
%if %{with bootstrap} && 0%{?do_profiling} && !0%{?want_reproducible_builds}
|
||||||
--enable-pgo-build=lto \
|
--enable-pgo-build=lto \
|
||||||
%endif
|
%endif
|
||||||
--enable-colored-disassembly \
|
--enable-colored-disassembly \
|
||||||
|
43
pr33029.patch
Normal file
43
pr33029.patch
Normal file
@@ -0,0 +1,43 @@
|
|||||||
|
From f601ffb52199a883f16df385b73a14e756b3e19a Mon Sep 17 00:00:00 2001
|
||||||
|
From: Alan Modra <amodra@gmail.com>
|
||||||
|
Date: Wed, 28 May 2025 18:20:17 +0930
|
||||||
|
Subject: [PATCH] PR 33029 segv in dwarf2_finish with --gdwarf-5
|
||||||
|
|
||||||
|
Specifying --gdwarf-5 with a source lacking a ".file 0" directive
|
||||||
|
results in this segfault.
|
||||||
|
|
||||||
|
* dwarf2dbg.c (out_debug_str): Use files[1] if files[0] is
|
||||||
|
empty regardless of dwarf level.
|
||||||
|
---
|
||||||
|
gas/dwarf2dbg.c | 8 ++++++--
|
||||||
|
1 file changed, 6 insertions(+), 2 deletions(-)
|
||||||
|
|
||||||
|
diff --git a/gas/dwarf2dbg.c b/gas/dwarf2dbg.c
|
||||||
|
index fd1f96d80c5..a40fe6967d5 100644
|
||||||
|
--- a/gas/dwarf2dbg.c
|
||||||
|
+++ b/gas/dwarf2dbg.c
|
||||||
|
@@ -3019,6 +3019,11 @@ out_debug_str (segT str_seg, symbolS **name_sym, symbolS **comp_dir_sym,
|
||||||
|
int len;
|
||||||
|
int first_file = DWARF2_LINE_VERSION > 4 ? 0 : 1;
|
||||||
|
|
||||||
|
+ if (files_in_use == 0)
|
||||||
|
+ abort ();
|
||||||
|
+ if (first_file == 0 && files[first_file].filename == NULL)
|
||||||
|
+ first_file = 1;
|
||||||
|
+
|
||||||
|
subseg_set (str_seg, 0);
|
||||||
|
|
||||||
|
/* DW_AT_name. We don't have the actual file name that was present
|
||||||
|
@@ -3026,8 +3031,7 @@ out_debug_str (segT str_seg, symbolS **name_sym, symbolS **comp_dir_sym,
|
||||||
|
We're not supposed to get called unless at least one line number
|
||||||
|
entry was emitted, so this should always be defined. */
|
||||||
|
*name_sym = symbol_temp_new_now_octets ();
|
||||||
|
- if (files_in_use == 0)
|
||||||
|
- abort ();
|
||||||
|
+
|
||||||
|
if (files[first_file].dir)
|
||||||
|
{
|
||||||
|
char *dirname = remap_debug_filename (dirs[files[first_file].dir]);
|
||||||
|
--
|
||||||
|
2.50.0
|
||||||
|
|
Reference in New Issue
Block a user