arch.h: Make _sinit/_einit as an offical interface

Signed-off-by: Xiang Xiao <xiaoxiang@xiaomi.com>
This commit is contained in:
Xiang Xiao 2022-09-21 06:12:43 +08:00 committed by archer
parent a7bbd33f1b
commit 4c44c6f709
2 changed files with 10 additions and 15 deletions

View File

@ -96,6 +96,7 @@
typedef CODE void (*sig_deliver_t)(FAR struct tcb_s *tcb);
typedef CODE void (*phy_enable_t)(bool enable);
typedef CODE void (*initializer_t)(void);
/****************************************************************************
* Public Data
@ -149,6 +150,15 @@ EXTERN volatile bool g_rtc_enabled;
#endif
#ifdef CONFIG_HAVE_CXXINITIALIZE
/* _sinit and _einit are symbols exported by the linker script that mark the
* beginning and the end of the C++ initialization section.
*/
extern initializer_t _sinit;
extern initializer_t _einit;
#endif
/****************************************************************************
* Public Function Prototypes
****************************************************************************/

View File

@ -31,25 +31,10 @@
#include "libc.h"
/****************************************************************************
* Private Types
****************************************************************************/
/* This type defines one entry in initialization array */
typedef CODE void (*initializer_t)(void);
/****************************************************************************
* External References
****************************************************************************/
/* _sinit and _einit are symbols exported by the linker script that mark the
* beginning and the end of the C++ initialization section.
*/
extern initializer_t _sinit;
extern initializer_t _einit;
#if defined(CONFIG_ARCH_SIM) && defined(CONFIG_HOST_MACOS)
extern void macho_call_saved_init_funcs(void);
#endif