summaryrefslogtreecommitdiffstats
path: root/core/armelf.x
diff options
context:
space:
mode:
Diffstat (limited to 'core/armelf.x')
-rw-r--r--core/armelf.x10
1 files changed, 8 insertions, 2 deletions
diff --git a/core/armelf.x b/core/armelf.x
index d38dc1d..b484776 100644
--- a/core/armelf.x
+++ b/core/armelf.x
@@ -93,10 +93,16 @@ SECTIONS
.preinit_array : { KEEP (*(.preinit_array)) }
PROVIDE (__preinit_array_end = .);
PROVIDE (__init_array_start = .);
- .init_array : { KEEP (*(.init_array)) }
+ .init_array : {
+ KEEP (*(SORT(.init_array.*)))
+ KEEP (*(.init_array))
+ }
PROVIDE (__init_array_end = .);
PROVIDE (__fini_array_start = .);
- .fini_array : { KEEP (*(.fini_array)) }
+ .fini_array : {
+ KEEP (*(.fini_array))
+ KEEP (*(SORT(.fini_array.*)))
+ }
PROVIDE (__fini_array_end = .);
.ctors :
{