summaryrefslogtreecommitdiff
path: root/ld/scripttempl/h8500c.sc
diff options
context:
space:
mode:
Diffstat (limited to 'ld/scripttempl/h8500c.sc')
-rw-r--r--ld/scripttempl/h8500c.sc21
1 files changed, 13 insertions, 8 deletions
diff --git a/ld/scripttempl/h8500c.sc b/ld/scripttempl/h8500c.sc
index 03880e3f068..bc696499986 100644
--- a/ld/scripttempl/h8500c.sc
+++ b/ld/scripttempl/h8500c.sc
@@ -1,3 +1,11 @@
+TORS="
+ ___ctors = . ;
+ *(.ctors)
+ ___ctors_end = . ;
+ ___dtors = . ;
+ *(.dtors)
+ ___dtors_end = . ;"
+
cat <<EOF
OUTPUT_FORMAT("${OUTPUT_FORMAT}")
OUTPUT_ARCH(${ARCH})
@@ -20,15 +28,12 @@ SECTIONS
${RELOCATING+ _edata = . ; }
} ${RELOCATING+ > ram}
-.rdata 0x30000 : {
+.rdata 0x30000 :
+ {
*(.rdata);
- ___ctors = . ;
- *(.ctors)
- ___ctors_end = . ;
- ___dtors = . ;
- *(.dtors)
- ___dtors_end = . ;
-} ${RELOCATING+ > ram}
+
+ ${CONSTRUCTING+${TORS}}
+ } ${RELOCATING+ > ram}
.bss 0x40000 :
{