forked from Imagelibrary/rtems
2011-08-15 Sebastian Huber <sebastian.huber@embedded-brains.de>
* libcsupport/src/newlibc_exit.c, score/src/threadhandler.c: Added init/fini array support for ARM EABI. The __libc_init_array() and __libc_fini_array() functions are provided by Newlib.
This commit is contained in:
@@ -1,3 +1,9 @@
|
|||||||
|
2011-08-15 Sebastian Huber <sebastian.huber@embedded-brains.de>
|
||||||
|
|
||||||
|
* libcsupport/src/newlibc_exit.c, score/src/threadhandler.c: Added
|
||||||
|
init/fini array support for ARM EABI. The __libc_init_array() and
|
||||||
|
__libc_fini_array() functions are provided by Newlib.
|
||||||
|
|
||||||
2011-08-02 Joel Sherrill <joel.sherrill@oarcorp.com>
|
2011-08-02 Joel Sherrill <joel.sherrill@oarcorp.com>
|
||||||
|
|
||||||
PR 1877/cpukit
|
PR 1877/cpukit
|
||||||
|
|||||||
@@ -128,6 +128,8 @@ void libc_wrapup(void)
|
|||||||
#if defined(__USE_INIT_FINI__)
|
#if defined(__USE_INIT_FINI__)
|
||||||
#if defined(__m32r__)
|
#if defined(__m32r__)
|
||||||
#define FINI_SYMBOL __fini
|
#define FINI_SYMBOL __fini
|
||||||
|
#elif defined(__ARM_EABI__)
|
||||||
|
#define FINI_SYMBOL __libc_fini_array
|
||||||
#else
|
#else
|
||||||
#define FINI_SYMBOL _fini
|
#define FINI_SYMBOL _fini
|
||||||
#endif
|
#endif
|
||||||
@@ -141,7 +143,7 @@ void EXIT_SYMBOL(int status)
|
|||||||
* If the toolset uses init/fini sections, then we need to
|
* If the toolset uses init/fini sections, then we need to
|
||||||
* run the global destructors now.
|
* run the global destructors now.
|
||||||
*/
|
*/
|
||||||
#if defined(__USE_INIT_FINI__)
|
#if defined(FINI_SYMBOL)
|
||||||
FINI_SYMBOL();
|
FINI_SYMBOL();
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
|||||||
@@ -37,6 +37,8 @@
|
|||||||
#if defined(__USE_INIT_FINI__)
|
#if defined(__USE_INIT_FINI__)
|
||||||
#if defined(__M32R__)
|
#if defined(__M32R__)
|
||||||
#define INIT_NAME __init
|
#define INIT_NAME __init
|
||||||
|
#elif defined(__ARM_EABI__)
|
||||||
|
#define INIT_NAME __libc_init_array
|
||||||
#else
|
#else
|
||||||
#define INIT_NAME _init
|
#define INIT_NAME _init
|
||||||
#endif
|
#endif
|
||||||
|
|||||||
Reference in New Issue
Block a user