forked from Imagelibrary/rtems
2011-12-12 Gedare Bloom <gedare@rtems.org>
PR bsps/1989 * shared/start/start.S, shared/startup/linkcmds: Boot stack and heap space improvements.
This commit is contained in:
@@ -1,3 +1,9 @@
|
||||
2011-12-12 Gedare Bloom <gedare@rtems.org>
|
||||
|
||||
PR bsps/1989
|
||||
* shared/start/start.S, shared/startup/linkcmds: Boot stack and heap
|
||||
space improvements.
|
||||
|
||||
2011-12-12 Gedare Bloom <gedare@rtems.org>
|
||||
|
||||
PR bsps/1988
|
||||
|
||||
@@ -53,20 +53,6 @@
|
||||
.register %g6, #scratch
|
||||
.register %g7, #scratch
|
||||
|
||||
#if 0
|
||||
#define _BSP_DEBUG
|
||||
#endif
|
||||
|
||||
#if _BSP_DEBUG
|
||||
/*
|
||||
* This is for debug and script support to identify RTEMS app termination
|
||||
*/
|
||||
.section .data
|
||||
.align 8
|
||||
_end_token_string:
|
||||
.asciz "END_TOKEN\n"
|
||||
#endif
|
||||
|
||||
.section BOOTSTRAP, "ax"
|
||||
|
||||
PUBLIC(_start)
|
||||
@@ -148,20 +134,20 @@ setstack:
|
||||
call SYM(boot_card)
|
||||
sub %sp, 0x60, %sp ! make room on stack (necessary?)
|
||||
|
||||
#if _BSP_DEBUG
|
||||
/* execution returns here when RTEMS terminates */
|
||||
sethi %hi(_end_token_string), %g1
|
||||
add %g1, %lo(_end_token_string), %o0
|
||||
call SYM(printk)
|
||||
nop
|
||||
#endif
|
||||
|
||||
call SYM(halt)
|
||||
nop
|
||||
|
||||
halted: nop
|
||||
b SYM(halted)
|
||||
|
||||
.section BOOTSTRAP
|
||||
.align CPU_ALIGNMENT
|
||||
.space 32768 - CPU_MINIMUM_STACK_FRAME_SIZE ! 32K boot stack grows down
|
||||
.global StackStart
|
||||
StackStart:
|
||||
.space CPU_MINIMUM_STACK_FRAME_SIZE ! initial stack frame
|
||||
|
||||
.section BOOTSTRAP
|
||||
.align CPU_ALIGNMENT
|
||||
param_space:
|
||||
.space 8
|
||||
|
||||
@@ -14,8 +14,7 @@
|
||||
*/
|
||||
RamBase = DEFINED(RamBase) ? RamBase : 0x0;
|
||||
RamSize = DEFINED(RamSize) ? RamSize : 12M;
|
||||
HeapSize = DEFINED(HeapSize) ? HeapSize : 1M;
|
||||
StackSize = DEFINED(StackSize) ? StackSize : 1M;
|
||||
HeapSize = DEFINED(HeapSize) ? HeapSize : 2M;
|
||||
|
||||
RAM_END = RamBase + RamSize;
|
||||
|
||||
@@ -24,10 +23,9 @@ OUTPUT_FORMAT("elf64-sparc")
|
||||
ENTRY(start)
|
||||
|
||||
MEMORY
|
||||
{
|
||||
ram : ORIGIN = 0x0, LENGTH = 12M
|
||||
}
|
||||
|
||||
{
|
||||
ram : ORIGIN = 0x0, LENGTH = 12M
|
||||
}
|
||||
|
||||
SECTIONS
|
||||
{
|
||||
@@ -151,7 +149,7 @@ SECTIONS
|
||||
. = ALIGN (16);
|
||||
_endtext = . ;
|
||||
_etext = . ;
|
||||
} > ram
|
||||
} > ram
|
||||
|
||||
.data : AT (ADDR (.text) + SIZEOF (.text))
|
||||
{
|
||||
@@ -196,9 +194,6 @@ SECTIONS
|
||||
. += HeapSize;
|
||||
PROVIDE (HeapBase = .);
|
||||
. += HeapSize;
|
||||
. += StackSize;
|
||||
PROVIDE (__stack = .);
|
||||
PROVIDE (StackStart = .);
|
||||
} > ram
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user