* scripttempl (h8300.sc, h8300h.sc): Place .rodata sections
before .text sections in main ram. Gets "read only" data out of the instruction stream -- improves relaxing linker. HMSE.
This commit is contained in:
parent
f4597f8c05
commit
d38d6b7a85
3 changed files with 20 additions and 8 deletions
|
@ -1,3 +1,8 @@
|
||||||
|
Tue May 7 11:35:46 1996 Jeffrey A Law (law@cygnus.com)
|
||||||
|
|
||||||
|
* scripttempl (h8300.sc, h8300h.sc): Place .rodata sections
|
||||||
|
before .text sections in main ram.
|
||||||
|
|
||||||
Mon May 6 23:32:30 1996 Jeffrey A Law (law@cygnus.com)
|
Mon May 6 23:32:30 1996 Jeffrey A Law (law@cygnus.com)
|
||||||
|
|
||||||
* scripttempl/h8300h.sc: Use "eight", not "eightbit" for the
|
* scripttempl/h8300h.sc: Use "eight", not "eightbit" for the
|
||||||
|
|
|
@ -6,25 +6,28 @@ MEMORY
|
||||||
{
|
{
|
||||||
/* 0xc4 is a magic entry. We should have the linker just
|
/* 0xc4 is a magic entry. We should have the linker just
|
||||||
skip over it one day... */
|
skip over it one day... */
|
||||||
vectors : o = 0x0000, l = 196
|
vectors : o = 0x0000, l = 0xc4
|
||||||
magicvectors : o = 0xc4, l = 60
|
magicvectors : o = 0xc4, l = 0x3c
|
||||||
ram : o = 0x0100, l = 65536 - 256 - 4
|
ram : o = 0x0100, l = 0xfdfc
|
||||||
topram : o = 0xfffc, l = 4
|
/* The stack starts at the top of main ram. */
|
||||||
|
topram : o = 0xfefc, l = 0x4
|
||||||
|
/* At the very to of the address space is the 8-bit area. */
|
||||||
|
eight : o = 0xff00, l = 0x100
|
||||||
}
|
}
|
||||||
|
|
||||||
SECTIONS
|
SECTIONS
|
||||||
{
|
{
|
||||||
.vectors : {
|
.vectors : {
|
||||||
/* Use something like this to place a specific function's address
|
/* Use something like this to place a specific function's address
|
||||||
into the vector table.
|
into the vector table.
|
||||||
|
|
||||||
SHORT(ABSOLUTE(_foobar))
|
SHORT(ABSOLUTE(_foobar)) */
|
||||||
*/
|
|
||||||
|
|
||||||
*(.vectors)
|
*(.vectors)
|
||||||
} ${RELOCATING+ > vectors}
|
} ${RELOCATING+ > vectors}
|
||||||
|
|
||||||
.text : {
|
.text : {
|
||||||
|
*(.rodata)
|
||||||
*(.text)
|
*(.text)
|
||||||
*(.strings)
|
*(.strings)
|
||||||
${RELOCATING+ _etext = . ; }
|
${RELOCATING+ _etext = . ; }
|
||||||
|
@ -51,6 +54,9 @@ SECTIONS
|
||||||
${RELOCATING+ _stack = . ; }
|
${RELOCATING+ _stack = . ; }
|
||||||
*(.stack)
|
*(.stack)
|
||||||
} ${RELOCATING+ > topram}
|
} ${RELOCATING+ > topram}
|
||||||
|
.eight : {
|
||||||
|
*(.eight)
|
||||||
|
} ${RELOCATING+ > eight}
|
||||||
.stab 0 ${RELOCATING+(NOLOAD)} : {
|
.stab 0 ${RELOCATING+(NOLOAD)} : {
|
||||||
[ .stab ]
|
[ .stab ]
|
||||||
}
|
}
|
||||||
|
|
|
@ -30,6 +30,7 @@ SECTIONS
|
||||||
*(.vectors)
|
*(.vectors)
|
||||||
} ${RELOCATING+ > vectors}
|
} ${RELOCATING+ > vectors}
|
||||||
.text : {
|
.text : {
|
||||||
|
*(.rodata)
|
||||||
*(.text)
|
*(.text)
|
||||||
*(.strings)
|
*(.strings)
|
||||||
${RELOCATING+ _etext = . ; }
|
${RELOCATING+ _etext = . ; }
|
||||||
|
|
Loading…
Reference in a new issue