1 Star 0 Fork 0

eric.pyt/xOS

加入 Gitee
与超过 1200万 开发者一起发现、参与优秀开源项目,私有仓库也完全免费 :)
免费加入
文件
克隆/下载
xos_init.c 1.42 KB
一键复制 编辑 原始数据 按行查看 历史
eric 提交于 11个月前 . 新建
/**
* @file xos_init.c
* @author eric
* @brief
* @version 0.1
* @date 2024-09-18
*
* @copyright Copyright (c) 2024
*
*/
#include "xos_init.h"
void do_init_call(void)
{
#if defined(__CC_ARM) /* ARM Compiler */
extern initcall_t initcall0init$$Base[];
extern initcall_t initcall0init$$Limit[];
extern initcall_t initcall1init$$Base[];
extern initcall_t initcall1init$$Limit[];
extern initcall_t initcall2init$$Base[];
extern initcall_t initcall2init$$Limit[];
initcall_t* fn;
for (fn = initcall0init$$Base; fn < initcall0init$$Limit; fn++) {
if (fn) (*fn)();
}
for (fn = initcall1init$$Base; fn < initcall1init$$Limit; fn++) {
if (fn) (*fn)();
}
for (fn = initcall2init$$Base; fn < initcall2init$$Limit; fn++) {
if (fn) (*fn)();
}
#elif defined(__GNUC__)
extern initcall_t __initcall_start[];
extern initcall_t __initcall_end[];
initcall_t* is_start = __initcall_start;
initcall_t* end = __initcall_end;
initcall_t* fn;
for (fn = is_start; fn < end; fn++) {
printf("initcall fn 0x%x\r\n", fn);
(*fn)();
}
#endif // defined
}
void do_app_init_call(void)
{
#if defined(__CC_ARM)
initcall_t* fn;
extern initcall_t initcall3init$$Base[];
extern initcall_t initcall3init$$Limit[];
for (fn = initcall3init$$Base; fn < initcall3init$$Limit; fn++) {
if (fn) (*fn)();
}
#endif
}
Loading...
马建仓 AI 助手
尝试更多
代码解读
代码找茬
代码优化
C
1
https://gitee.com/eric_pyt/xOS.git
git@gitee.com:eric_pyt/xOS.git
eric_pyt
xOS
xOS
master

搜索帮助