[syslinux:master] core: add support for .init/fini_table

syslinux-bot for H. Peter Anvin hpa at zytor.com
Mon May 28 21:42:04 PDT 2012


Commit-ID:  b7549a33e4660851d80f4626f29b8df841bc706c
Gitweb:     http://www.syslinux.org/commit/b7549a33e4660851d80f4626f29b8df841bc706c
Author:     H. Peter Anvin <hpa at zytor.com>
AuthorDate: Mon, 28 May 2012 21:39:40 -0700
Committer:  H. Peter Anvin <hpa at zytor.com>
CommitDate: Mon, 28 May 2012 21:39:40 -0700

core: add support for .init/fini_table

We don't actually have any constructors/destructors in the core at
this time, but handle .init/fini_table in case that happens...

Signed-off-by: H. Peter Anvin <hpa at zytor.com>

---
 core/syslinux.ld |    9 +++++----
 1 files changed, 5 insertions(+), 4 deletions(-)

diff --git a/core/syslinux.ld b/core/syslinux.ld
index 40a0139..11adbcb 100644
--- a/core/syslinux.ld
+++ b/core/syslinux.ld
@@ -280,8 +280,9 @@ SECTIONS
 	__ctors_lma = __ctors_vma + __text_lma - __text_vma;
 	.ctors : AT(__ctors_lma) {
 		__ctors_start = .;
-		KEEP (*(SORT(.ctors.*)))
-		KEEP (*(.ctors))
+		KEEP (*(SORT(.preinit_array*)))
+		KEEP (*(SORT(.init_array*)))
+		KEEP (*(SORT(.ctors*)))
 		__ctors_end = .;
 	}
 
@@ -289,8 +290,8 @@ SECTIONS
 	__dtors_lma = __dtors_vma + __text_lma - __text_vma;
 	.dtors : AT(__dtors_lma) {
 		__dtors_start = .;
-		KEEP (*(SORT(.dtors.*)))
-		KEEP (*(.dtors))
+		KEEP (*(SORT(.fini_array*)))
+		KEEP (*(SORT(.dtors*)))
 		__dtors_end = .;
 	}
 


More information about the Syslinux-commits mailing list