oops omitted in previous delta
This commit is contained in:
parent
8b77cd2503
commit
b244a68909
|
@ -180,13 +180,23 @@ __change_mode:
|
||||||
bhi .LC13
|
bhi .LC13
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#ifdef __USES_INITFINI__
|
||||||
|
/* Some arm/elf targets use the .init and .fini sections
|
||||||
|
to create constructors and destructors, and for these
|
||||||
|
targets we need to call the _init function and arrange
|
||||||
|
for _fini to be called at program exit. */
|
||||||
|
ldr r0, .Lfini
|
||||||
|
bl FUNCTION (atexit)
|
||||||
|
bl FUNCTION (_init)
|
||||||
#endif
|
#endif
|
||||||
bl FUNCTION (main)
|
bl FUNCTION (main)
|
||||||
|
|
||||||
bl FUNCTION (exit) /* Should not return */
|
bl FUNCTION (exit) /* Should not return. */
|
||||||
|
|
||||||
#ifdef __thumb__
|
#ifdef __thumb__
|
||||||
/* Come out of Thumb mode... This code should be redundant... */
|
/* Come out of Thumb mode. This code should be redundant. */
|
||||||
|
|
||||||
mov a4, pc
|
mov a4, pc
|
||||||
bx a4
|
bx a4
|
||||||
|
@ -195,11 +205,9 @@ __change_mode:
|
||||||
.global change_back
|
.global change_back
|
||||||
change_back:
|
change_back:
|
||||||
/* Halt the execution. This code should never be executed. */
|
/* Halt the execution. This code should never be executed. */
|
||||||
/*
|
/* With no debug monitor, this probably aborts (eventually).
|
||||||
** With no debug monitor, this probably aborts (eventually).
|
With a Demon debug monitor, this halts cleanly.
|
||||||
** With a Demon debug monitor, this halts cleanly.
|
With an Angel debug monitor, this will report 'Unknown SWI'. */
|
||||||
** With an Angel debug monitor, this will report 'Unknown SWI'.
|
|
||||||
*/
|
|
||||||
swi SWI_Exit
|
swi SWI_Exit
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
@ -215,7 +223,7 @@ change_back:
|
||||||
#ifdef __pe__
|
#ifdef __pe__
|
||||||
.word 0x800000
|
.word 0x800000
|
||||||
#else
|
#else
|
||||||
/* .word 0x80000 */ /* Top of RAM on the PIE board */
|
/* .word 0x80000 */ /* Top of RAM on the PIE board. */
|
||||||
#endif
|
#endif
|
||||||
#endif
|
#endif
|
||||||
#endif
|
#endif
|
||||||
|
@ -223,19 +231,23 @@ change_back:
|
||||||
.word __bss_start__
|
.word __bss_start__
|
||||||
.LC2:
|
.LC2:
|
||||||
.word __bss_end__
|
.word __bss_end__
|
||||||
|
#ifdef __USES_INITFINI__
|
||||||
|
.Lfini:
|
||||||
|
.word FUNCTION(_fini)
|
||||||
|
#endif
|
||||||
#ifdef ARM_RDI_MONITOR
|
#ifdef ARM_RDI_MONITOR
|
||||||
.LC30: .word CommandLine
|
.LC30:
|
||||||
|
.word CommandLine
|
||||||
.word 255
|
.word 255
|
||||||
|
|
||||||
/* Workspace for Angel calls. */
|
/* Workspace for Angel calls. */
|
||||||
.data
|
.data
|
||||||
/* Data returned by monitor SWI */
|
/* Data returned by monitor SWI. */
|
||||||
HeapBase: .word 0
|
HeapBase: .word 0
|
||||||
HeapLimit: .word 0
|
HeapLimit: .word 0
|
||||||
StackBase: .word 0
|
StackBase: .word 0
|
||||||
StackLimit: .word 0
|
StackLimit: .word 0
|
||||||
CommandLine: .space 256,0 /* Maximum length of 255 chars handled */
|
CommandLine: .space 256,0 /* Maximum length of 255 chars handled. */
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
#ifdef __pe__
|
#ifdef __pe__
|
||||||
|
|
Loading…
Reference in New Issue