vfork.s

来自「klibc精简化的c程序库」· S 代码 · 共 32 行

S
32
字号
/* * arch/parisc/vfork.S, "vfork() me harder. ugh." -- kyle * * %r20 contains the system call number, %rp contains whence we came, * %rp is saved and restored across the syscall, thankfully. * */	.text	.align 64				; cache-width aligned	.globl	vfork	.type	vfork,@functionvfork:	/* pid_t vfork(void) */	ble		0x100(%sr2, %r0)	; jump to gateway page	nop	ldi		-0x1000,%r19		; %r19 = -4096	sub		%r0,%ret0,%r22		; %r22 = -%ret0	cmpb,>>=,n	%r19,%ret0,1f		; if %ret0 >= -4096UL	ldi		-1,%ret0		; nullified on taken forward	/* store %r22 to errno... */	ldil		L%errno,%r1	ldo		R%errno(%r1),%r1	stw		%r22,0(%r1)1:	bv		%r0(%rp)		; jump back	nop	.size vfork,.-vfork

⌨️ 快捷键说明

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