asmstartup.s
来自「使用广泛的日本著名的开源嵌入式实时操作系统T-Kernel的源码」· S 代码 · 共 60 行
S
60 行
/* *---------------------------------------------------------------------- * T-Kernel * * Copyright (C) 2004-2006 by Ken Sakamura. All rights reserved. * T-Kernel is distributed under the T-License. *---------------------------------------------------------------------- * * Version: 1.02.02 * Released by T-Engine Forum(http://www.t-engine.org) at 2006/8/9. * *---------------------------------------------------------------------- *//* * @(#)asmstartup.S (crttk/MB87Q1100) * * Driver/manager startup */#include <machine.h>#include <tk/asm.h> .text .balign 4 .globl Csym(_C_startup) .type Csym(_C_startup), %functionCsym(_C_startup): cmp r0, #0 blt l_noinit // Initialization sequence is performed only when ac >= 0 ldr r4, =__data_org // When data area does not need to be moved, ldr r5, =__data_start // OS loads cmp r4, r5 beq l_noinit ldr r6, =_edata // initialize data area cmp r5, r6 bhs nocopy_data copy_data: ldr ip, [r4], #4 str ip, [r5], #4 cmp r5, r6 blo copy_data nocopy_data: ldr ip, =0 // clear bss area ldr r4, =__bss_start ldr r5, =_end cmp r4, r5 bhs nobss clrbss: str ip, [r4], #4 cmp r4, r5 blo clrbss nobss: l_noinit: b Csym(_P_startup)
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?