diff options
author | H. Peter Anvin <hpa@zytor.com> | 2012-05-28 21:39:40 -0700 |
---|---|---|
committer | H. Peter Anvin <hpa@zytor.com> | 2012-05-28 21:39:40 -0700 |
commit | b7549a33e4660851d80f4626f29b8df841bc706c (patch) | |
tree | eafdfa1afbb815589f9504edbad528be31b39cd2 | |
parent | b6be466444740a34bacd140dccbe57f6629b15bc (diff) | |
download | syslinux-b7549a33e4660851d80f4626f29b8df841bc706c.tar.gz |
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@zytor.com>
-rw-r--r-- | core/syslinux.ld | 9 |
1 files changed, 5 insertions, 4 deletions
diff --git a/core/syslinux.ld b/core/syslinux.ld index 40a01394..11adbcb8 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 = .; } |