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>
|
||||
|
||||
- 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>
|
||||
|
@@ -143,7 +143,6 @@ Patch12: s390-pic-dso.diff
|
||||
Patch14: binutils-build-as-needed.diff
|
||||
Patch15: binutils-znow.patch
|
||||
Patch22: binutils-bfd_h.patch
|
||||
Patch34: aarch64-common-pagesize.patch
|
||||
Patch37: binutils-revert-plt32-in-branches.diff
|
||||
Patch38: binutils-fix-invalid-op-errata.diff
|
||||
Patch39: binutils-revert-nm-symversion.diff
|
||||
@@ -153,6 +152,7 @@ Patch42: binutils-compat-old-behaviour.diff
|
||||
Patch43: binutils-revert-hlasm-insns.diff
|
||||
Patch44: binutils-revert-rela.diff
|
||||
Patch60: binutils-disable-code-arch-error.diff
|
||||
Patch61: pr33029.patch
|
||||
Patch90: cross-avr-nesc-as.patch
|
||||
Patch92: cross-avr-omit_section_dynsym.patch
|
||||
Patch93: cross-avr-size.patch
|
||||
@@ -178,7 +178,8 @@ Requires: alts
|
||||
%else
|
||||
PreReq: update-alternatives
|
||||
%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
|
||||
%endif
|
||||
|
||||
@@ -268,7 +269,6 @@ cp ld/ldgram.y ld/ldgram.y.orig
|
||||
%patch -P 14
|
||||
%patch -P 15
|
||||
%patch -P 22
|
||||
%patch -P 34 -p1
|
||||
%if %{suse_version} < 1550
|
||||
%patch -P 37 -p1
|
||||
%endif
|
||||
@@ -282,6 +282,7 @@ cp ld/ldgram.y ld/ldgram.y.orig
|
||||
%patch -P 44 -p1
|
||||
%endif
|
||||
%patch -P 60 -p1
|
||||
%patch -P 61 -p1
|
||||
%if "%{TARGET}" == "avr"
|
||||
cp gas/config/tc-avr.h gas/config/tc-avr-nesc.h
|
||||
%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
|
||||
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}
|
||||
# Building native binutils
|
||||
echo "Building native binutils."
|
||||
@@ -380,7 +389,7 @@ cd build-dir
|
||||
%endif
|
||||
--enable-shared \
|
||||
%if %{suse_version} > 1500
|
||||
%if %{with bootstrap} && 0%{?do_profiling}
|
||||
%if %{with bootstrap} && 0%{?do_profiling} && !0%{?want_reproducible_builds}
|
||||
--enable-pgo-build=lto \
|
||||
%endif
|
||||
--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