# Adapted from mips.sc
#
-# Copyright (C) 2014-2017 Free Software Foundation, Inc.
+# Copyright (C) 2014-2020 Free Software Foundation, Inc.
#
# Copying and distribution of this file, with or without modification,
# are permitted in any medium without royalty provided the copyright
}"
cat <<EOF
-/* Copyright (C) 2014-2017 Free Software Foundation, Inc.
+/* Copyright (C) 2014-2020 Free Software Foundation, Inc.
Copying and distribution of this script, with or without modification,
are permitted in any medium without royalty provided the copyright
${RELOCATING+ENTRY (${ENTRY})}
-_TEXT_START_ADDR = DEFINED(_TEXT_START_ADDR) ? _TEXT_START_ADDR : 0x50;
+${RELOCATING+_TEXT_START_ADDR = DEFINED(_TEXT_START_ADDR) ? _TEXT_START_ADDR : 0x50;
_HEAP_SIZE = DEFINED(_HEAP_SIZE) ? _HEAP_SIZE : 0x0;
-_STACK_SIZE = DEFINED(_STACK_SIZE) ? _STACK_SIZE : 0x400;
+_STACK_SIZE = DEFINED(_STACK_SIZE) ? _STACK_SIZE : 0x400;}
SECTIONS
{
${RELOCATING+ _ftext = .;}
.text : {
- ${RELOCATING+*(.text)}
+ *(.text)
${RELOCATING+*(.text.*)}
${RELOCATING+*(.gnu.linkonce.t.*)}
}
${RELOCATING+ _etext = .;}
- .init : { KEEP (*(.init)) } =0
- .fini : { KEEP (*(.fini)) } =0
+ .init : { KEEP (*(SORT_NONE(.init))) } =0
+ .fini : { KEEP (*(SORT_NONE(.fini))) } =0
${RELOCATING+PROVIDE (__CTOR_LIST__ = .);}
${RELOCATING+PROVIDE (___CTOR_LIST__ = .);}
${RELOCATING+ . = ALIGN(4);}
${RELOCATING+ _frodata = . ;}
.rodata : {
- ${RELOCATING+*(.rodata)}
+ *(.rodata)
${RELOCATING+*(.rodata.*)}
${RELOCATING+*(.gnu.linkonce.r.*)}
- ${CONSTRUCTING+CONSTRUCTORS}; /* Is this needed? */
+ ${CONSTRUCTING+CONSTRUCTORS;} /* Is this needed? */
}
${RELOCATING+ _erodata = .;}
${RELOCATING+. = ALIGN(8);}
${RELOCATING+ _ssrw = .;}
.sdata2 : {
- ${RELOCATING+*(.sdata2)}
+ *(.sdata2)
${RELOCATING+*(.sdata2.*)}
${RELOCATING+*(.gnu.linkonce.s2.*)}
}
${RELOCATING+. = ALIGN(4);}
.sbss2 : {
${RELOCATING+PROVIDE (__sbss2_start = .);}
- ${RELOCATING+*(.sbss2)}
+ *(.sbss2)
${RELOCATING+*(.sbss2.*)}
${RELOCATING+*(.gnu.linkonce.sb2.*)}
${RELOCATING+PROVIDE (__sbss2_end = .);}
${RELOCATING+ . = ALIGN(4);}
${RELOCATING+ _fdata = .;}
.data : {
- ${RELOCATING+*(.data)}
+ *(.data)
${RELOCATING+*(.gnu.linkonce.d.*)}
- ${CONSTRUCTING+CONSTRUCTORS}; /* Is this needed? */
+ ${CONSTRUCTING+CONSTRUCTORS;} /* Is this needed? */
}
${RELOCATING+ _edata = . ;}
/* Added to handle pic code */
.got : {
- ${RELOCATING+*(.got)}
+ *(.got)
}
.got1 : {
- ${RELOCATING+*(.got1)}
+ *(.got1)
}
.got2 : {
- ${RELOCATING+*(.got2)}
+ *(.got2)
}
/* Added by Sathya to handle C++ exceptions */
.eh_frame : {
- ${RELOCATING+*(.eh_frame)}
+ *(.eh_frame)
}
.jcr : {
- ${RELOCATING+*(.jcr)}
+ *(.jcr)
}
.gcc_except_table : {
- ${RELOCATING+*(.gcc_except_table)}
+ *(.gcc_except_table)
}
/* Alignments by 8 to ensure that _SDA_BASE_ on a word boundary */
${RELOCATING+. = ALIGN(8);}
${RELOCATING+ _ssro = .;}
.sdata : {
- ${RELOCATING+*(.sdata)}
+ *(.sdata)
${RELOCATING+*(.sdata.*)}
${RELOCATING+*(.gnu.linkonce.s.*)}
}
${RELOCATING+. = ALIGN(4);}
.sbss : {
${RELOCATING+PROVIDE (__sbss_start = .);}
- ${RELOCATING+*(.sbss)}
+ *(.sbss)
${RELOCATING+*(.sbss.*)}
${RELOCATING+*(.gnu.linkonce.sb.*)}
${RELOCATING+PROVIDE (__sbss_end = .);}
${RELOCATING+ _fbss = .;}
.bss : {
${RELOCATING+PROVIDE (__bss_start = .);}
- ${RELOCATING+*(.bss)}
+ *(.bss)
${RELOCATING+*(.bss.*)}
${RELOCATING+*(.gnu.linkonce.b.*)}
${RELOCATING+*(COMMON)}
${RELOCATING+. = ALIGN(. != 0 ? 4 : 1);}
${RELOCATING+PROVIDE (__bss_end = .);}
-
}
${RELOCATING+ . = ALIGN(4);}
}
.tdata : {
- ${RELOCATING+*(.tdata)}
+ *(.tdata)
${RELOCATING+*(.tdata.*)}
${RELOCATING+*(.gnu.linkonce.td.*)}
}
.tbss : {
- ${RELOCATING+*(.tbss)}
+ *(.tbss)
${RELOCATING+*(.tbss.*)}
${RELOCATING+*(.gnu.linkonce.tb.*)}
}