rtems_crti.s

来自「RTEMS (Real-Time Executive for Multiproc」· S 代码 · 共 36 行

S
36
字号
/* rtems_crti.S */#include <asm.h>#include <rtems/score/cpu.h>#include <libcpu/io.h>	/* terminate the __init() function and create	 * a new head '_init' for use by RTEMS to 	 * invoke C++ global constructors	 * NOTE: it is essential that this snippet	 * is hooked between ecrti and crtbegin	 * 	 * ecrti has the following .init section:	 * __init:	 *    stwu r1,-16(r1)	 *    mflr r0	 *    stw  r0,20(r1)	 *	 * The reason for this is that we want to call	 * __eabi() at an early stage but prevent __eabi()	 * from branching to __init (C++ exception init	 * and global CTORs). Hence we make __init a no-op	 * and create a new entry point:	 */	.section ".init","ax"	.align 2	lwz		r0,r20(r1)	mtlr	r0	addi	r1,r1,16	blr	.globl	_init	.type	_init,@function_init:	stwu	r1,-16(r1)	mflr	r0	stw		r0,20(r1)	

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?