📄 vfork.s
字号:
/* * libc/sysdeps/linux/nios2/vfork.S -- `vfork' syscall for linux/nios2 * * Copyright (C) 2004 Microtronix Datacom Ltd * * This file is subject to the terms and conditions of the GNU Lesser * General Public License. See the file COPYING.LIB in the main * directory of this archive for more details. * * Written by Wentao Xu <wentao@microtronix.com> */#include <asm/unistd.h>#ifndef __NR_vfork#define __NR_vfork __NR_fork /* uClinux-2.0 only has fork which is vfork */#endif .text .balign 4 .globl errno .globl vfork .globl __libc_vfork#if defined __HAVE_ELF__ .type vfork,@function .type __libc_vfork,@function#endifvfork:__libc_vfork: movui r2, TRAP_ID_SYSCALL movui r3, __NR_vfork trap movi r8, -4096 bltu r8, r2, fix_errno retfix_errno: sub r8, r0, r2 addi sp, sp, -8 stw ra, 4(sp) stw r8, 0(sp)#ifndef __PIC__ call __errno_location#else #endif ldw ra, 4(sp) ldw r8, 0(sp) stw r8, 0(r2) addi r2, r0, -1 addi sp, sp, 8 ret
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -