1992-09-10 02:59:11 +08:00
|
|
|
# This is totally made up, from the a29k stuff. If you know better,
|
|
|
|
# tell us about it.
|
|
|
|
cat <<EOF
|
|
|
|
OUTPUT_FORMAT("${OUTPUT_FORMAT}")
|
|
|
|
${LIB_SEARCH_DIRS}
|
|
|
|
|
|
|
|
MEMORY {
|
|
|
|
text : ORIGIN = 0x1000000, LENGTH = 0x1000000
|
|
|
|
talias : ORIGIN = 0x2000000, LENGTH = 0x1000000
|
|
|
|
data : ORIGIN = 0x3000000, LENGTH = 0x1000000
|
|
|
|
mstack : ORIGIN = 0x4000000, LENGTH = 0x1000000
|
|
|
|
rstack : ORIGIN = 0x5000000, LENGTH = 0x1000000
|
|
|
|
}
|
|
|
|
SECTIONS
|
|
|
|
{
|
|
|
|
.text : {
|
|
|
|
*(.text)
|
1993-06-11 05:02:59 +08:00
|
|
|
${RELOCATING+ etext = .;}
|
|
|
|
${CONSTRUCTING+ __CTOR_LIST__ = .;}
|
|
|
|
${CONSTRUCTING+ LONG((__CTOR_END__ - __CTOR_LIST__) / 4 - 2)}
|
|
|
|
*(.ctors)
|
|
|
|
${CONSTRUCTING+ LONG(0)}
|
|
|
|
${CONSTRUCTING+ __CTOR_END__ = .;}
|
|
|
|
${CONSTRUCTING+ __DTOR_LIST__ = .;}
|
|
|
|
${CONSTRUCTING+ LONG((__DTOR_END__ - __DTOR_LIST__) / 4 - 2)}
|
|
|
|
*(.dtors)
|
|
|
|
${CONSTRUCTING+ LONG(0)}
|
|
|
|
${CONSTRUCTING+ __DTOR_END__ = .;}
|
1992-09-10 02:59:11 +08:00
|
|
|
*(.lit)
|
|
|
|
*(.shdata)
|
|
|
|
} ${RELOCATING+ > text}
|
|
|
|
.shbss SIZEOF(.text) + ADDR(.text) : {
|
|
|
|
*(.shbss)
|
|
|
|
}
|
|
|
|
.talias : { } ${RELOCATING+ > talias}
|
|
|
|
.data : {
|
|
|
|
*(.data)
|
1992-10-21 01:57:28 +08:00
|
|
|
${RELOCATING+ edata = .};
|
1992-09-10 02:59:11 +08:00
|
|
|
} ${RELOCATING+ > data}
|
|
|
|
.bss SIZEOF(.data) + ADDR(.data) :
|
|
|
|
{
|
1992-10-06 05:08:41 +08:00
|
|
|
${RELOCATING+ __bss_start = .};
|
1992-09-10 02:59:11 +08:00
|
|
|
*(.bss)
|
|
|
|
*(COMMON)
|
1992-10-21 01:57:28 +08:00
|
|
|
${RELOCATING+ end = ALIGN(0x8)};
|
1992-12-29 03:43:59 +08:00
|
|
|
${RELOCATING+ _end = ALIGN(0x8)};
|
1992-09-10 02:59:11 +08:00
|
|
|
}
|
|
|
|
.mstack : { } ${RELOCATING+ > mstack}
|
|
|
|
.rstack : { } ${RELOCATING+ > rstack}
|
|
|
|
}
|
|
|
|
EOF
|