Add support for d30velf_{e,o} emulations to control whether text/data/et. al go in external memory or onchip memory

This commit is contained in:
Michael Meissner 1997-12-09 22:57:58 +00:00
parent e48412a2b2
commit 98d38753e4
4 changed files with 45 additions and 2 deletions

View File

@ -9,7 +9,11 @@ start-sanitize-d30v
end-sanitize-tic80
start-sanitize-d30v
* Makefile.{am,in}: (ALL_EMULATIONS): Add ed30velf.o.
* Makefile.{am,in}: (ALL_EMULATIONS): Add ed30velf{,_e,_o}.o.
(ed30velf_e.c): Like d30velf, except .text/.data/etc always go in
external memory.
(ed30velf_o.c): Like d30velf, except .text/.data/etc always go in
onchip memory.
* emulparams/d30velf.sh (STACK_START_ADDR): Top of default
stack.
@ -17,6 +21,15 @@ start-sanitize-d30v
({TEXT,DATA,BSS}_MEMORY): Which memory region .text, .data, and
.bss should go in.
* emulparams/d30velf_{e,o}.sh: New files to be explicit whether
.text, .data, etc go in external memory or onchip memory.
* configure.tgt (d30v-*-*ext*): New configuration to default
.text, .data, etc. in external memory.
(d30v-*-*onchip*): New configuration to default .text, .data,
etc. in onchip memory.
(d30v-*-*): Add d30velf_{e,o} emulations.
* scripttempl/elfd30v.sc: Allow .text, .data, .bss to be put in
either the onchip text/data areas or the external memory area.
(MEMORY): Get sizes from d30velf.sh.

View File

@ -15,7 +15,7 @@
Do-first:
d30v_files="d30velf.sh"
d30v_files="d30velf.sh d30velf_o.sh d30velf_e.sh"
if ( echo $* | grep keep\-d30v > /dev/null ) ; then
keep_these_too="${d30v_files} ${keep_these_too}"

View File

@ -0,0 +1,15 @@
MACHINE=
SCRIPT_NAME=elfd30v
OUTPUT_FORMAT="elf32-d30v"
TEXT_START_ADDR=0x00000000
DATA_START_ADDR=0x20000000
EMEM_START_ADDR=0x80000000
STACK_START_ADDR=0x20008000
TEXT_SIZE=64K
DATA_SIZE=32K
EMEM_SIZE=8M
TEXT_MEMORY=emem
DATA_MEMORY=emem
BSS_MEMORY=emem
ARCH=d30v
EMBEDDED=t

View File

@ -0,0 +1,15 @@
MACHINE=
SCRIPT_NAME=elfd30v
OUTPUT_FORMAT="elf32-d30v"
TEXT_START_ADDR=0x00000000
DATA_START_ADDR=0x20000000
EMEM_START_ADDR=0x80000000
STACK_START_ADDR=0x20008000
TEXT_SIZE=64K
DATA_SIZE=32K
EMEM_SIZE=8M
TEXT_MEMORY=text
DATA_MEMORY=data
BSS_MEMORY=data
ARCH=d30v
EMBEDDED=t