Page MenuHomeFreeBSD

D37864.id114515.diff
No OneTemporary

D37864.id114515.diff

diff --git a/stand/efi/loader/arch/amd64/ldscript.amd64 b/stand/efi/loader/arch/amd64/ldscript.amd64
--- a/stand/efi/loader/arch/amd64/ldscript.amd64
+++ b/stand/efi/loader/arch/amd64/ldscript.amd64
@@ -11,8 +11,16 @@
. = ALIGN(4096);
.eh_frame :
{
- *(.eh_frame)
+ __eh_frame_start = .;
+ KEEP(*(.eh_frame))
+ __eh_frame_end = .;
}
+ .eh_frame_hdr :
+ {
+ KEEP(*(.eh_frame_hdr))
+ }
+ __eh_frame_hdr_start = SIZEOF(.eh_frame_hdr) > 0 ? ADDR(.eh_frame_hdr) : 0;
+ __eh_frame_hdr_end = SIZEOF(.eh_frame_hdr) > 0 ? . : 0;
. = ALIGN(4096);
.text : {
*(.text .stub .text.* .gnu.linkonce.t.*)
diff --git a/stand/efi/loader/arch/arm/ldscript.arm b/stand/efi/loader/arch/arm/ldscript.arm
--- a/stand/efi/loader/arch/arm/ldscript.arm
+++ b/stand/efi/loader/arch/arm/ldscript.arm
@@ -13,6 +13,18 @@
*(.gnu.warning)
*(.gnu.linkonce.t*)
} =0
+ .eh_frame :
+ {
+ __eh_frame_start = .;
+ KEEP(*(.eh_frame))
+ __eh_frame_end = .;
+ }
+ .eh_frame_hdr :
+ {
+ KEEP(*(.eh_frame_hdr))
+ }
+ __eh_frame_hdr_start = SIZEOF(.eh_frame_hdr) > 0 ? ADDR(.eh_frame_hdr) : 0;
+ __eh_frame_hdr_end = SIZEOF(.eh_frame_hdr) > 0 ? . : 0;
_etext = .;
PROVIDE (etext = .);
. = ALIGN(16);
diff --git a/stand/efi/loader/arch/arm64/ldscript.arm64 b/stand/efi/loader/arch/arm64/ldscript.arm64
--- a/stand/efi/loader/arch/arm64/ldscript.arm64
+++ b/stand/efi/loader/arch/arm64/ldscript.arm64
@@ -17,6 +17,19 @@
*(.plt)
} =0xD4200000
. = ALIGN(16);
+ .eh_frame :
+ {
+ __eh_frame_start = .;
+ KEEP(*(.eh_frame))
+ __eh_frame_end = .;
+ }
+ .eh_frame_hdr :
+ {
+ KEEP(*(.eh_frame_hdr))
+ }
+ __eh_frame_hdr_start = SIZEOF(.eh_frame_hdr) > 0 ? ADDR(.eh_frame_hdr) : 0;
+ __eh_frame_hdr_end = SIZEOF(.eh_frame_hdr) > 0 ? . : 0;
+ . = ALIGN(16);
.data : {
*(.rodata .rodata.* .gnu.linkonce.r.*)
*(.rodata1)
diff --git a/stand/efi/loader/arch/i386/ldscript.i386 b/stand/efi/loader/arch/i386/ldscript.i386
--- a/stand/efi/loader/arch/i386/ldscript.i386
+++ b/stand/efi/loader/arch/i386/ldscript.i386
@@ -9,6 +9,19 @@
ImageBase = .;
. = SIZEOF_HEADERS;
. = ALIGN(4096);
+ .eh_frame :
+ {
+ __eh_frame_start = .;
+ KEEP(*(.eh_frame))
+ __eh_frame_end = .;
+ }
+ .eh_frame_hdr :
+ {
+ KEEP(*(.eh_frame_hdr))
+ }
+ __eh_frame_hdr_start = SIZEOF(.eh_frame_hdr) > 0 ? ADDR(.eh_frame_hdr) : 0;
+ __eh_frame_hdr_end = SIZEOF(.eh_frame_hdr) > 0 ? . : 0;
+ . = ALIGN(4096);
.text : {
*(.text .stub .text.* .gnu.linkonce.t.*)
/* .gnu.warning sections are handled specially by elf32.em. */
diff --git a/stand/efi/loader/arch/riscv/ldscript.riscv b/stand/efi/loader/arch/riscv/ldscript.riscv
--- a/stand/efi/loader/arch/riscv/ldscript.riscv
+++ b/stand/efi/loader/arch/riscv/ldscript.riscv
@@ -15,6 +15,19 @@
*(.plt)
} =0x9090
. = ALIGN(16);
+ .eh_frame :
+ {
+ __eh_frame_start = .;
+ KEEP(*(.eh_frame))
+ __eh_frame_end = .;
+ }
+ .eh_frame_hdr :
+ {
+ KEEP(*(.eh_frame_hdr))
+ }
+ __eh_frame_hdr_start = SIZEOF(.eh_frame_hdr) > 0 ? ADDR(.eh_frame_hdr) : 0;
+ __eh_frame_hdr_end = SIZEOF(.eh_frame_hdr) > 0 ? . : 0;
+ . = ALIGN(16);
.data : {
*(.rodata .rodata.* .gnu.linkonce.r.*)
*(.rodata1)
diff --git a/stand/kboot/arch/aarch64/ldscript.aarch64 b/stand/kboot/arch/aarch64/ldscript.aarch64
--- a/stand/kboot/arch/aarch64/ldscript.aarch64
+++ b/stand/kboot/arch/aarch64/ldscript.aarch64
@@ -11,8 +11,16 @@
. = ALIGN(4096);
.eh_frame :
{
- *(.eh_frame)
+ __eh_frame_start = .;
+ KEEP(*(.eh_frame))
+ __eh_frame_end = .;
}
+ .eh_frame_hdr :
+ {
+ KEEP(*(.eh_frame_hdr))
+ }
+ __eh_frame_hdr_start = SIZEOF(.eh_frame_hdr) > 0 ? ADDR(.eh_frame_hdr) : 0;
+ __eh_frame_hdr_end = SIZEOF(.eh_frame_hdr) > 0 ? . : 0;
. = ALIGN(4096);
.text : {
*(.text .stub .text.* .gnu.linkonce.t.*)
diff --git a/stand/kboot/arch/amd64/ldscript.amd64 b/stand/kboot/arch/amd64/ldscript.amd64
--- a/stand/kboot/arch/amd64/ldscript.amd64
+++ b/stand/kboot/arch/amd64/ldscript.amd64
@@ -11,8 +11,16 @@
. = ALIGN(4096);
.eh_frame :
{
- *(.eh_frame)
+ __eh_frame_start = .;
+ KEEP(*(.eh_frame))
+ __eh_frame_end = .;
}
+ .eh_frame_hdr :
+ {
+ KEEP(*(.eh_frame_hdr))
+ }
+ __eh_frame_hdr_start = SIZEOF(.eh_frame_hdr) > 0 ? ADDR(.eh_frame_hdr) : 0;
+ __eh_frame_hdr_end = SIZEOF(.eh_frame_hdr) > 0 ? . : 0;
. = ALIGN(4096);
.text : {
*(.text .stub .text.* .gnu.linkonce.t.*)

File Metadata

Mime Type
text/plain
Expires
Sat, Apr 25, 6:48 AM (19 h, 5 m)
Storage Engine
blob
Storage Format
Raw Data
Storage Handle
32115161
Default Alt Text
D37864.id114515.diff (4 KB)

Event Timeline