diff options
author | Sebastian Huber <sebastian.huber@embedded-brains.de> | 2019-12-19 12:05:45 +0100 |
---|---|---|
committer | Sebastian Huber <sebastian.huber@embedded-brains.de> | 2019-12-19 14:21:05 +0100 |
commit | 86abbb6e1e48d3acdf91ad2887f75dbdc42d85b7 (patch) | |
tree | 67104584a11db9a4c3bf883a70240cc338cb73bd /bsps/powerpc/virtex5/start/linkcmds | |
parent | config: Improve EDF SMP scheduler configuration (diff) | |
download | rtems-86abbb6e1e48d3acdf91ad2887f75dbdc42d85b7.tar.bz2 |
bsps/powerpc: Support constructors with priority
Close #3339.
Diffstat (limited to '')
-rw-r--r-- | bsps/powerpc/virtex5/start/linkcmds | 27 |
1 files changed, 9 insertions, 18 deletions
diff --git a/bsps/powerpc/virtex5/start/linkcmds b/bsps/powerpc/virtex5/start/linkcmds index 9a5edf7643..7bb0eda2ab 100644 --- a/bsps/powerpc/virtex5/start/linkcmds +++ b/bsps/powerpc/virtex5/start/linkcmds @@ -161,29 +161,20 @@ SECTIONS .dynamic : { *(.dynamic) } > RAM - .ctors : { /* gcc uses crtbegin.o to find the start of - * the constructors, so we make sure it is - * first. Because this is a wildcard, it - * doesn't matter if the user does not - * actually link against crtbegin.o; the - * linker won't look for a file to match a - * wildcard. The wildcard also means that it - * doesn't matter which directory crtbegin.o - * is in. - */ + .ctors : { + KEEP (*ecrti.o(.ctors)) KEEP (*crtbegin.o(.ctors)) - /* We don't want to include the .ctor section from - * the crtend.o file until after the sorted ctors. - * The .ctor section from the crtend file contains the - * end of ctors marker and it must be last. - */ - KEEP (*(EXCLUDE_FILE (*crtend.o ) .ctors)) + KEEP (*crtbegin?.o(.ctors)) + KEEP (*(EXCLUDE_FILE (*crtend.o *crtend?.o *ecrtn.o) .ctors)) KEEP (*(SORT(.ctors.*))) KEEP (*(.ctors)) } > RAM - .dtors : { KEEP (*crtbegin.o(.dtors)) - KEEP (*(EXCLUDE_FILE (*crtend.o ) .dtors)) + .dtors : { + KEEP (*ecrti.o(.dtors)) + KEEP (*crtbegin.o(.dtors)) + KEEP (*crtbegin?.o(.dtors)) + KEEP (*(EXCLUDE_FILE (*crtend.o *crtend?.o *ecrtn.o) .dtors)) KEEP (*(SORT(.dtors.*))) KEEP (*(.dtors)) } > RAM |