crt0.s

来自「文件内包含了nuclues的内核代码和针对Power PC的编译器。需要用Vir」· S 代码 · 共 54 行

S
54
字号
# Start-up function for an embedded environment

	.file		"crt0.c"
	.text
	.globl		_start
	.align		2
	addi		r0,r0,0
_start:
# init stack pointer
	addis		r11,r0,__SP_INIT@ha
	addi		r1,r11,__SP_INIT@l
	addis		r13,r0,_SDA_BASE_@ha
	addi		r13,r13,_SDA_BASE_@l
	addis		r2,r0,_SDA2_BASE_@ha
	addi		r2,r2,_SDA2_BASE_@l
	addi		r0,r0,0
	stwu		r0,-64(r1)

#
# insert other init code here
#
# do rest in C
	bl		__init_main
	b		exit		# never returns
	bl		main		# dummy to pull in main()

	.section	.init,2,C
	.globl		__init
	.align		2
__init:
	mfspr		r0,8
	stwu		r1,-64(r1)
	stw		r0,68(r1)

	.section	.fini,2,C
# Return from __init
	lwz		r0,68(r1)
	addi		r1,r1,64
	mtspr		8,r0
	blr
	.globl		__fini
__fini:
	mfspr		r0,8
	stwu		r1,-64(r1)
	stw		r0,68(r1)

	.section	.eini,2,C
# Return from __fini
	lwz		r0,68(r1)
	addi		r1,r1,64
	mtspr		8,r0
	blr

⌨️ 快捷键说明

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