crt0.s

来自「LEON3 SOC environment, PCI bridges.」· S 代码 · 共 61 行

S
61
字号
	.text	.global _start, main_start:	save	%sp, -64, %sp        /* clear the bss */         sethi %hi(edata),%g2        or    %g2,%lo(edata),%g2  ! g2 = start of bss        sethi %hi(_end),%g3        or    %g3,%lo(_end),%g3         ! g3 = end of bss        mov   %g0,%g1                   ! so std has two zeroszerobss:        std    %g0,[%g2]        add    %g2,8,%g2        cmp    %g2,%g3        bleu,a zerobss        nop        /* move data segment to proper location */ relocd:        set (_endtext),%g2 		! g2 = start of data in aout file        set (_environ),%g4		! g4 = start of where data should go        set (_edata),%g3 		! g3 = end of where data should go	subcc	%g3, %g4, %g5		! g5 = length of data	subcc	%g4, %g2, %g0		! need to relocate data ?	ble	initok	ld	[%g4], %g6!	subcc	%g6, 1, %g0!	be	initokmvdata:	subcc	%g5, 8, %g5	ldd	[%g2 + %g5], %g6	bg	mvdata        std    	%g6, [%g4 + %g5]initok:        call    main        nop	ret	nop        .seg    "data"        .global .bdata.bdata:        .align  8        .global _environ                ! first symbol in sdata_environ:        .word   1        .global _errno                  ! not defined elsewhere ..?_errno:        .word   0 

⌨️ 快捷键说明

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