4524 lines
64 KiB
ArmAsm
4524 lines
64 KiB
ArmAsm
/* Generated by gensyscalls.py. Do not edit. */
|
|
#include <private/bionic_asm.h>
|
|
|
|
ENTRY(execve)
|
|
.set push
|
|
.set noreorder
|
|
li $v0, __NR_execve
|
|
syscall
|
|
bnez $a3, 1f
|
|
move $a0, $v0
|
|
j $ra
|
|
nop
|
|
1:
|
|
move $t0, $ra
|
|
bal 2f
|
|
nop
|
|
2:
|
|
.cpsetup $ra, $t1, 2b
|
|
LA $t9, __set_errno_internal
|
|
.cpreturn
|
|
j $t9
|
|
move $ra, $t0
|
|
.set pop
|
|
END(execve)
|
|
|
|
ENTRY(getuid)
|
|
.set push
|
|
.set noreorder
|
|
li $v0, __NR_getuid
|
|
syscall
|
|
bnez $a3, 1f
|
|
move $a0, $v0
|
|
j $ra
|
|
nop
|
|
1:
|
|
move $t0, $ra
|
|
bal 2f
|
|
nop
|
|
2:
|
|
.cpsetup $ra, $t1, 2b
|
|
LA $t9, __set_errno_internal
|
|
.cpreturn
|
|
j $t9
|
|
move $ra, $t0
|
|
.set pop
|
|
END(getuid)
|
|
|
|
ENTRY(getgid)
|
|
.set push
|
|
.set noreorder
|
|
li $v0, __NR_getgid
|
|
syscall
|
|
bnez $a3, 1f
|
|
move $a0, $v0
|
|
j $ra
|
|
nop
|
|
1:
|
|
move $t0, $ra
|
|
bal 2f
|
|
nop
|
|
2:
|
|
.cpsetup $ra, $t1, 2b
|
|
LA $t9, __set_errno_internal
|
|
.cpreturn
|
|
j $t9
|
|
move $ra, $t0
|
|
.set pop
|
|
END(getgid)
|
|
|
|
ENTRY(geteuid)
|
|
.set push
|
|
.set noreorder
|
|
li $v0, __NR_geteuid
|
|
syscall
|
|
bnez $a3, 1f
|
|
move $a0, $v0
|
|
j $ra
|
|
nop
|
|
1:
|
|
move $t0, $ra
|
|
bal 2f
|
|
nop
|
|
2:
|
|
.cpsetup $ra, $t1, 2b
|
|
LA $t9, __set_errno_internal
|
|
.cpreturn
|
|
j $t9
|
|
move $ra, $t0
|
|
.set pop
|
|
END(geteuid)
|
|
|
|
ENTRY(getegid)
|
|
.set push
|
|
.set noreorder
|
|
li $v0, __NR_getegid
|
|
syscall
|
|
bnez $a3, 1f
|
|
move $a0, $v0
|
|
j $ra
|
|
nop
|
|
1:
|
|
move $t0, $ra
|
|
bal 2f
|
|
nop
|
|
2:
|
|
.cpsetup $ra, $t1, 2b
|
|
LA $t9, __set_errno_internal
|
|
.cpreturn
|
|
j $t9
|
|
move $ra, $t0
|
|
.set pop
|
|
END(getegid)
|
|
|
|
ENTRY(getresuid)
|
|
.set push
|
|
.set noreorder
|
|
li $v0, __NR_getresuid
|
|
syscall
|
|
bnez $a3, 1f
|
|
move $a0, $v0
|
|
j $ra
|
|
nop
|
|
1:
|
|
move $t0, $ra
|
|
bal 2f
|
|
nop
|
|
2:
|
|
.cpsetup $ra, $t1, 2b
|
|
LA $t9, __set_errno_internal
|
|
.cpreturn
|
|
j $t9
|
|
move $ra, $t0
|
|
.set pop
|
|
END(getresuid)
|
|
|
|
ENTRY(getresgid)
|
|
.set push
|
|
.set noreorder
|
|
li $v0, __NR_getresgid
|
|
syscall
|
|
bnez $a3, 1f
|
|
move $a0, $v0
|
|
j $ra
|
|
nop
|
|
1:
|
|
move $t0, $ra
|
|
bal 2f
|
|
nop
|
|
2:
|
|
.cpsetup $ra, $t1, 2b
|
|
LA $t9, __set_errno_internal
|
|
.cpreturn
|
|
j $t9
|
|
move $ra, $t0
|
|
.set pop
|
|
END(getresgid)
|
|
|
|
ENTRY(readahead)
|
|
.set push
|
|
.set noreorder
|
|
li $v0, __NR_readahead
|
|
syscall
|
|
bnez $a3, 1f
|
|
move $a0, $v0
|
|
j $ra
|
|
nop
|
|
1:
|
|
move $t0, $ra
|
|
bal 2f
|
|
nop
|
|
2:
|
|
.cpsetup $ra, $t1, 2b
|
|
LA $t9, __set_errno_internal
|
|
.cpreturn
|
|
j $t9
|
|
move $ra, $t0
|
|
.set pop
|
|
END(readahead)
|
|
|
|
ENTRY(getgroups)
|
|
.set push
|
|
.set noreorder
|
|
li $v0, __NR_getgroups
|
|
syscall
|
|
bnez $a3, 1f
|
|
move $a0, $v0
|
|
j $ra
|
|
nop
|
|
1:
|
|
move $t0, $ra
|
|
bal 2f
|
|
nop
|
|
2:
|
|
.cpsetup $ra, $t1, 2b
|
|
LA $t9, __set_errno_internal
|
|
.cpreturn
|
|
j $t9
|
|
move $ra, $t0
|
|
.set pop
|
|
END(getgroups)
|
|
|
|
ENTRY(getpgid)
|
|
.set push
|
|
.set noreorder
|
|
li $v0, __NR_getpgid
|
|
syscall
|
|
bnez $a3, 1f
|
|
move $a0, $v0
|
|
j $ra
|
|
nop
|
|
1:
|
|
move $t0, $ra
|
|
bal 2f
|
|
nop
|
|
2:
|
|
.cpsetup $ra, $t1, 2b
|
|
LA $t9, __set_errno_internal
|
|
.cpreturn
|
|
j $t9
|
|
move $ra, $t0
|
|
.set pop
|
|
END(getpgid)
|
|
|
|
ENTRY(getppid)
|
|
.set push
|
|
.set noreorder
|
|
li $v0, __NR_getppid
|
|
syscall
|
|
bnez $a3, 1f
|
|
move $a0, $v0
|
|
j $ra
|
|
nop
|
|
1:
|
|
move $t0, $ra
|
|
bal 2f
|
|
nop
|
|
2:
|
|
.cpsetup $ra, $t1, 2b
|
|
LA $t9, __set_errno_internal
|
|
.cpreturn
|
|
j $t9
|
|
move $ra, $t0
|
|
.set pop
|
|
END(getppid)
|
|
|
|
ENTRY(getsid)
|
|
.set push
|
|
.set noreorder
|
|
li $v0, __NR_getsid
|
|
syscall
|
|
bnez $a3, 1f
|
|
move $a0, $v0
|
|
j $ra
|
|
nop
|
|
1:
|
|
move $t0, $ra
|
|
bal 2f
|
|
nop
|
|
2:
|
|
.cpsetup $ra, $t1, 2b
|
|
LA $t9, __set_errno_internal
|
|
.cpreturn
|
|
j $t9
|
|
move $ra, $t0
|
|
.set pop
|
|
END(getsid)
|
|
|
|
ENTRY(setsid)
|
|
.set push
|
|
.set noreorder
|
|
li $v0, __NR_setsid
|
|
syscall
|
|
bnez $a3, 1f
|
|
move $a0, $v0
|
|
j $ra
|
|
nop
|
|
1:
|
|
move $t0, $ra
|
|
bal 2f
|
|
nop
|
|
2:
|
|
.cpsetup $ra, $t1, 2b
|
|
LA $t9, __set_errno_internal
|
|
.cpreturn
|
|
j $t9
|
|
move $ra, $t0
|
|
.set pop
|
|
END(setsid)
|
|
|
|
ENTRY(setgid)
|
|
.set push
|
|
.set noreorder
|
|
li $v0, __NR_setgid
|
|
syscall
|
|
bnez $a3, 1f
|
|
move $a0, $v0
|
|
j $ra
|
|
nop
|
|
1:
|
|
move $t0, $ra
|
|
bal 2f
|
|
nop
|
|
2:
|
|
.cpsetup $ra, $t1, 2b
|
|
LA $t9, __set_errno_internal
|
|
.cpreturn
|
|
j $t9
|
|
move $ra, $t0
|
|
.set pop
|
|
END(setgid)
|
|
|
|
ENTRY(setuid)
|
|
.set push
|
|
.set noreorder
|
|
li $v0, __NR_setuid
|
|
syscall
|
|
bnez $a3, 1f
|
|
move $a0, $v0
|
|
j $ra
|
|
nop
|
|
1:
|
|
move $t0, $ra
|
|
bal 2f
|
|
nop
|
|
2:
|
|
.cpsetup $ra, $t1, 2b
|
|
LA $t9, __set_errno_internal
|
|
.cpreturn
|
|
j $t9
|
|
move $ra, $t0
|
|
.set pop
|
|
END(setuid)
|
|
|
|
ENTRY(setreuid)
|
|
.set push
|
|
.set noreorder
|
|
li $v0, __NR_setreuid
|
|
syscall
|
|
bnez $a3, 1f
|
|
move $a0, $v0
|
|
j $ra
|
|
nop
|
|
1:
|
|
move $t0, $ra
|
|
bal 2f
|
|
nop
|
|
2:
|
|
.cpsetup $ra, $t1, 2b
|
|
LA $t9, __set_errno_internal
|
|
.cpreturn
|
|
j $t9
|
|
move $ra, $t0
|
|
.set pop
|
|
END(setreuid)
|
|
|
|
ENTRY(setresuid)
|
|
.set push
|
|
.set noreorder
|
|
li $v0, __NR_setresuid
|
|
syscall
|
|
bnez $a3, 1f
|
|
move $a0, $v0
|
|
j $ra
|
|
nop
|
|
1:
|
|
move $t0, $ra
|
|
bal 2f
|
|
nop
|
|
2:
|
|
.cpsetup $ra, $t1, 2b
|
|
LA $t9, __set_errno_internal
|
|
.cpreturn
|
|
j $t9
|
|
move $ra, $t0
|
|
.set pop
|
|
END(setresuid)
|
|
|
|
ENTRY(setresgid)
|
|
.set push
|
|
.set noreorder
|
|
li $v0, __NR_setresgid
|
|
syscall
|
|
bnez $a3, 1f
|
|
move $a0, $v0
|
|
j $ra
|
|
nop
|
|
1:
|
|
move $t0, $ra
|
|
bal 2f
|
|
nop
|
|
2:
|
|
.cpsetup $ra, $t1, 2b
|
|
LA $t9, __set_errno_internal
|
|
.cpreturn
|
|
j $t9
|
|
move $ra, $t0
|
|
.set pop
|
|
END(setresgid)
|
|
|
|
ENTRY(__brk)
|
|
.set push
|
|
.set noreorder
|
|
li $v0, __NR_brk
|
|
syscall
|
|
bnez $a3, 1f
|
|
move $a0, $v0
|
|
j $ra
|
|
nop
|
|
1:
|
|
move $t0, $ra
|
|
bal 2f
|
|
nop
|
|
2:
|
|
.cpsetup $ra, $t1, 2b
|
|
LA $t9, __set_errno_internal
|
|
.cpreturn
|
|
j $t9
|
|
move $ra, $t0
|
|
.set pop
|
|
END(__brk)
|
|
.hidden __brk
|
|
|
|
ENTRY(kill)
|
|
.set push
|
|
.set noreorder
|
|
li $v0, __NR_kill
|
|
syscall
|
|
bnez $a3, 1f
|
|
move $a0, $v0
|
|
j $ra
|
|
nop
|
|
1:
|
|
move $t0, $ra
|
|
bal 2f
|
|
nop
|
|
2:
|
|
.cpsetup $ra, $t1, 2b
|
|
LA $t9, __set_errno_internal
|
|
.cpreturn
|
|
j $t9
|
|
move $ra, $t0
|
|
.set pop
|
|
END(kill)
|
|
|
|
ENTRY(tgkill)
|
|
.set push
|
|
.set noreorder
|
|
li $v0, __NR_tgkill
|
|
syscall
|
|
bnez $a3, 1f
|
|
move $a0, $v0
|
|
j $ra
|
|
nop
|
|
1:
|
|
move $t0, $ra
|
|
bal 2f
|
|
nop
|
|
2:
|
|
.cpsetup $ra, $t1, 2b
|
|
LA $t9, __set_errno_internal
|
|
.cpreturn
|
|
j $t9
|
|
move $ra, $t0
|
|
.set pop
|
|
END(tgkill)
|
|
|
|
ENTRY(__ptrace)
|
|
.set push
|
|
.set noreorder
|
|
li $v0, __NR_ptrace
|
|
syscall
|
|
bnez $a3, 1f
|
|
move $a0, $v0
|
|
j $ra
|
|
nop
|
|
1:
|
|
move $t0, $ra
|
|
bal 2f
|
|
nop
|
|
2:
|
|
.cpsetup $ra, $t1, 2b
|
|
LA $t9, __set_errno_internal
|
|
.cpreturn
|
|
j $t9
|
|
move $ra, $t0
|
|
.set pop
|
|
END(__ptrace)
|
|
.hidden __ptrace
|
|
|
|
ENTRY(getrusage)
|
|
.set push
|
|
.set noreorder
|
|
li $v0, __NR_getrusage
|
|
syscall
|
|
bnez $a3, 1f
|
|
move $a0, $v0
|
|
j $ra
|
|
nop
|
|
1:
|
|
move $t0, $ra
|
|
bal 2f
|
|
nop
|
|
2:
|
|
.cpsetup $ra, $t1, 2b
|
|
LA $t9, __set_errno_internal
|
|
.cpreturn
|
|
j $t9
|
|
move $ra, $t0
|
|
.set pop
|
|
END(getrusage)
|
|
|
|
ENTRY(__getpriority)
|
|
.set push
|
|
.set noreorder
|
|
li $v0, __NR_getpriority
|
|
syscall
|
|
bnez $a3, 1f
|
|
move $a0, $v0
|
|
j $ra
|
|
nop
|
|
1:
|
|
move $t0, $ra
|
|
bal 2f
|
|
nop
|
|
2:
|
|
.cpsetup $ra, $t1, 2b
|
|
LA $t9, __set_errno_internal
|
|
.cpreturn
|
|
j $t9
|
|
move $ra, $t0
|
|
.set pop
|
|
END(__getpriority)
|
|
.hidden __getpriority
|
|
|
|
ENTRY(setpriority)
|
|
.set push
|
|
.set noreorder
|
|
li $v0, __NR_setpriority
|
|
syscall
|
|
bnez $a3, 1f
|
|
move $a0, $v0
|
|
j $ra
|
|
nop
|
|
1:
|
|
move $t0, $ra
|
|
bal 2f
|
|
nop
|
|
2:
|
|
.cpsetup $ra, $t1, 2b
|
|
LA $t9, __set_errno_internal
|
|
.cpreturn
|
|
j $t9
|
|
move $ra, $t0
|
|
.set pop
|
|
END(setpriority)
|
|
|
|
ENTRY(getrlimit)
|
|
.set push
|
|
.set noreorder
|
|
li $v0, __NR_getrlimit
|
|
syscall
|
|
bnez $a3, 1f
|
|
move $a0, $v0
|
|
j $ra
|
|
nop
|
|
1:
|
|
move $t0, $ra
|
|
bal 2f
|
|
nop
|
|
2:
|
|
.cpsetup $ra, $t1, 2b
|
|
LA $t9, __set_errno_internal
|
|
.cpreturn
|
|
j $t9
|
|
move $ra, $t0
|
|
.set pop
|
|
END(getrlimit)
|
|
|
|
ALIAS_SYMBOL(getrlimit64, getrlimit)
|
|
|
|
ENTRY(setrlimit)
|
|
.set push
|
|
.set noreorder
|
|
li $v0, __NR_setrlimit
|
|
syscall
|
|
bnez $a3, 1f
|
|
move $a0, $v0
|
|
j $ra
|
|
nop
|
|
1:
|
|
move $t0, $ra
|
|
bal 2f
|
|
nop
|
|
2:
|
|
.cpsetup $ra, $t1, 2b
|
|
LA $t9, __set_errno_internal
|
|
.cpreturn
|
|
j $t9
|
|
move $ra, $t0
|
|
.set pop
|
|
END(setrlimit)
|
|
|
|
ALIAS_SYMBOL(setrlimit64, setrlimit)
|
|
|
|
ENTRY(prlimit64)
|
|
.set push
|
|
.set noreorder
|
|
li $v0, __NR_prlimit64
|
|
syscall
|
|
bnez $a3, 1f
|
|
move $a0, $v0
|
|
j $ra
|
|
nop
|
|
1:
|
|
move $t0, $ra
|
|
bal 2f
|
|
nop
|
|
2:
|
|
.cpsetup $ra, $t1, 2b
|
|
LA $t9, __set_errno_internal
|
|
.cpreturn
|
|
j $t9
|
|
move $ra, $t0
|
|
.set pop
|
|
END(prlimit64)
|
|
|
|
ALIAS_SYMBOL(prlimit, prlimit64)
|
|
|
|
ENTRY(setgroups)
|
|
.set push
|
|
.set noreorder
|
|
li $v0, __NR_setgroups
|
|
syscall
|
|
bnez $a3, 1f
|
|
move $a0, $v0
|
|
j $ra
|
|
nop
|
|
1:
|
|
move $t0, $ra
|
|
bal 2f
|
|
nop
|
|
2:
|
|
.cpsetup $ra, $t1, 2b
|
|
LA $t9, __set_errno_internal
|
|
.cpreturn
|
|
j $t9
|
|
move $ra, $t0
|
|
.set pop
|
|
END(setgroups)
|
|
|
|
ENTRY(setpgid)
|
|
.set push
|
|
.set noreorder
|
|
li $v0, __NR_setpgid
|
|
syscall
|
|
bnez $a3, 1f
|
|
move $a0, $v0
|
|
j $ra
|
|
nop
|
|
1:
|
|
move $t0, $ra
|
|
bal 2f
|
|
nop
|
|
2:
|
|
.cpsetup $ra, $t1, 2b
|
|
LA $t9, __set_errno_internal
|
|
.cpreturn
|
|
j $t9
|
|
move $ra, $t0
|
|
.set pop
|
|
END(setpgid)
|
|
|
|
ENTRY(setregid)
|
|
.set push
|
|
.set noreorder
|
|
li $v0, __NR_setregid
|
|
syscall
|
|
bnez $a3, 1f
|
|
move $a0, $v0
|
|
j $ra
|
|
nop
|
|
1:
|
|
move $t0, $ra
|
|
bal 2f
|
|
nop
|
|
2:
|
|
.cpsetup $ra, $t1, 2b
|
|
LA $t9, __set_errno_internal
|
|
.cpreturn
|
|
j $t9
|
|
move $ra, $t0
|
|
.set pop
|
|
END(setregid)
|
|
|
|
ENTRY(chroot)
|
|
.set push
|
|
.set noreorder
|
|
li $v0, __NR_chroot
|
|
syscall
|
|
bnez $a3, 1f
|
|
move $a0, $v0
|
|
j $ra
|
|
nop
|
|
1:
|
|
move $t0, $ra
|
|
bal 2f
|
|
nop
|
|
2:
|
|
.cpsetup $ra, $t1, 2b
|
|
LA $t9, __set_errno_internal
|
|
.cpreturn
|
|
j $t9
|
|
move $ra, $t0
|
|
.set pop
|
|
END(chroot)
|
|
|
|
ENTRY(prctl)
|
|
.set push
|
|
.set noreorder
|
|
li $v0, __NR_prctl
|
|
syscall
|
|
bnez $a3, 1f
|
|
move $a0, $v0
|
|
j $ra
|
|
nop
|
|
1:
|
|
move $t0, $ra
|
|
bal 2f
|
|
nop
|
|
2:
|
|
.cpsetup $ra, $t1, 2b
|
|
LA $t9, __set_errno_internal
|
|
.cpreturn
|
|
j $t9
|
|
move $ra, $t0
|
|
.set pop
|
|
END(prctl)
|
|
|
|
ENTRY(capget)
|
|
.set push
|
|
.set noreorder
|
|
li $v0, __NR_capget
|
|
syscall
|
|
bnez $a3, 1f
|
|
move $a0, $v0
|
|
j $ra
|
|
nop
|
|
1:
|
|
move $t0, $ra
|
|
bal 2f
|
|
nop
|
|
2:
|
|
.cpsetup $ra, $t1, 2b
|
|
LA $t9, __set_errno_internal
|
|
.cpreturn
|
|
j $t9
|
|
move $ra, $t0
|
|
.set pop
|
|
END(capget)
|
|
|
|
ENTRY(capset)
|
|
.set push
|
|
.set noreorder
|
|
li $v0, __NR_capset
|
|
syscall
|
|
bnez $a3, 1f
|
|
move $a0, $v0
|
|
j $ra
|
|
nop
|
|
1:
|
|
move $t0, $ra
|
|
bal 2f
|
|
nop
|
|
2:
|
|
.cpsetup $ra, $t1, 2b
|
|
LA $t9, __set_errno_internal
|
|
.cpreturn
|
|
j $t9
|
|
move $ra, $t0
|
|
.set pop
|
|
END(capset)
|
|
|
|
ENTRY(sigaltstack)
|
|
.set push
|
|
.set noreorder
|
|
li $v0, __NR_sigaltstack
|
|
syscall
|
|
bnez $a3, 1f
|
|
move $a0, $v0
|
|
j $ra
|
|
nop
|
|
1:
|
|
move $t0, $ra
|
|
bal 2f
|
|
nop
|
|
2:
|
|
.cpsetup $ra, $t1, 2b
|
|
LA $t9, __set_errno_internal
|
|
.cpreturn
|
|
j $t9
|
|
move $ra, $t0
|
|
.set pop
|
|
END(sigaltstack)
|
|
|
|
ENTRY(acct)
|
|
.set push
|
|
.set noreorder
|
|
li $v0, __NR_acct
|
|
syscall
|
|
bnez $a3, 1f
|
|
move $a0, $v0
|
|
j $ra
|
|
nop
|
|
1:
|
|
move $t0, $ra
|
|
bal 2f
|
|
nop
|
|
2:
|
|
.cpsetup $ra, $t1, 2b
|
|
LA $t9, __set_errno_internal
|
|
.cpreturn
|
|
j $t9
|
|
move $ra, $t0
|
|
.set pop
|
|
END(acct)
|
|
|
|
ENTRY(read)
|
|
.set push
|
|
.set noreorder
|
|
li $v0, __NR_read
|
|
syscall
|
|
bnez $a3, 1f
|
|
move $a0, $v0
|
|
j $ra
|
|
nop
|
|
1:
|
|
move $t0, $ra
|
|
bal 2f
|
|
nop
|
|
2:
|
|
.cpsetup $ra, $t1, 2b
|
|
LA $t9, __set_errno_internal
|
|
.cpreturn
|
|
j $t9
|
|
move $ra, $t0
|
|
.set pop
|
|
END(read)
|
|
|
|
ENTRY(write)
|
|
.set push
|
|
.set noreorder
|
|
li $v0, __NR_write
|
|
syscall
|
|
bnez $a3, 1f
|
|
move $a0, $v0
|
|
j $ra
|
|
nop
|
|
1:
|
|
move $t0, $ra
|
|
bal 2f
|
|
nop
|
|
2:
|
|
.cpsetup $ra, $t1, 2b
|
|
LA $t9, __set_errno_internal
|
|
.cpreturn
|
|
j $t9
|
|
move $ra, $t0
|
|
.set pop
|
|
END(write)
|
|
|
|
ENTRY(pread64)
|
|
.set push
|
|
.set noreorder
|
|
li $v0, __NR_pread64
|
|
syscall
|
|
bnez $a3, 1f
|
|
move $a0, $v0
|
|
j $ra
|
|
nop
|
|
1:
|
|
move $t0, $ra
|
|
bal 2f
|
|
nop
|
|
2:
|
|
.cpsetup $ra, $t1, 2b
|
|
LA $t9, __set_errno_internal
|
|
.cpreturn
|
|
j $t9
|
|
move $ra, $t0
|
|
.set pop
|
|
END(pread64)
|
|
|
|
ALIAS_SYMBOL(pread, pread64)
|
|
|
|
ENTRY(pwrite64)
|
|
.set push
|
|
.set noreorder
|
|
li $v0, __NR_pwrite64
|
|
syscall
|
|
bnez $a3, 1f
|
|
move $a0, $v0
|
|
j $ra
|
|
nop
|
|
1:
|
|
move $t0, $ra
|
|
bal 2f
|
|
nop
|
|
2:
|
|
.cpsetup $ra, $t1, 2b
|
|
LA $t9, __set_errno_internal
|
|
.cpreturn
|
|
j $t9
|
|
move $ra, $t0
|
|
.set pop
|
|
END(pwrite64)
|
|
|
|
ALIAS_SYMBOL(pwrite, pwrite64)
|
|
|
|
ENTRY(preadv)
|
|
.set push
|
|
.set noreorder
|
|
li $v0, __NR_preadv
|
|
syscall
|
|
bnez $a3, 1f
|
|
move $a0, $v0
|
|
j $ra
|
|
nop
|
|
1:
|
|
move $t0, $ra
|
|
bal 2f
|
|
nop
|
|
2:
|
|
.cpsetup $ra, $t1, 2b
|
|
LA $t9, __set_errno_internal
|
|
.cpreturn
|
|
j $t9
|
|
move $ra, $t0
|
|
.set pop
|
|
END(preadv)
|
|
|
|
ALIAS_SYMBOL(preadv64, preadv)
|
|
|
|
ENTRY(pwritev)
|
|
.set push
|
|
.set noreorder
|
|
li $v0, __NR_pwritev
|
|
syscall
|
|
bnez $a3, 1f
|
|
move $a0, $v0
|
|
j $ra
|
|
nop
|
|
1:
|
|
move $t0, $ra
|
|
bal 2f
|
|
nop
|
|
2:
|
|
.cpsetup $ra, $t1, 2b
|
|
LA $t9, __set_errno_internal
|
|
.cpreturn
|
|
j $t9
|
|
move $ra, $t0
|
|
.set pop
|
|
END(pwritev)
|
|
|
|
ALIAS_SYMBOL(pwritev64, pwritev)
|
|
|
|
ENTRY(___close)
|
|
.set push
|
|
.set noreorder
|
|
li $v0, __NR_close
|
|
syscall
|
|
bnez $a3, 1f
|
|
move $a0, $v0
|
|
j $ra
|
|
nop
|
|
1:
|
|
move $t0, $ra
|
|
bal 2f
|
|
nop
|
|
2:
|
|
.cpsetup $ra, $t1, 2b
|
|
LA $t9, __set_errno_internal
|
|
.cpreturn
|
|
j $t9
|
|
move $ra, $t0
|
|
.set pop
|
|
END(___close)
|
|
.hidden ___close
|
|
|
|
ENTRY(__getpid)
|
|
.set push
|
|
.set noreorder
|
|
li $v0, __NR_getpid
|
|
syscall
|
|
bnez $a3, 1f
|
|
move $a0, $v0
|
|
j $ra
|
|
nop
|
|
1:
|
|
move $t0, $ra
|
|
bal 2f
|
|
nop
|
|
2:
|
|
.cpsetup $ra, $t1, 2b
|
|
LA $t9, __set_errno_internal
|
|
.cpreturn
|
|
j $t9
|
|
move $ra, $t0
|
|
.set pop
|
|
END(__getpid)
|
|
.hidden __getpid
|
|
|
|
ENTRY(munmap)
|
|
.set push
|
|
.set noreorder
|
|
li $v0, __NR_munmap
|
|
syscall
|
|
bnez $a3, 1f
|
|
move $a0, $v0
|
|
j $ra
|
|
nop
|
|
1:
|
|
move $t0, $ra
|
|
bal 2f
|
|
nop
|
|
2:
|
|
.cpsetup $ra, $t1, 2b
|
|
LA $t9, __set_errno_internal
|
|
.cpreturn
|
|
j $t9
|
|
move $ra, $t0
|
|
.set pop
|
|
END(munmap)
|
|
|
|
ENTRY(___mremap)
|
|
.set push
|
|
.set noreorder
|
|
li $v0, __NR_mremap
|
|
syscall
|
|
bnez $a3, 1f
|
|
move $a0, $v0
|
|
j $ra
|
|
nop
|
|
1:
|
|
move $t0, $ra
|
|
bal 2f
|
|
nop
|
|
2:
|
|
.cpsetup $ra, $t1, 2b
|
|
LA $t9, __set_errno_internal
|
|
.cpreturn
|
|
j $t9
|
|
move $ra, $t0
|
|
.set pop
|
|
END(___mremap)
|
|
.hidden ___mremap
|
|
|
|
ENTRY(msync)
|
|
.set push
|
|
.set noreorder
|
|
li $v0, __NR_msync
|
|
syscall
|
|
bnez $a3, 1f
|
|
move $a0, $v0
|
|
j $ra
|
|
nop
|
|
1:
|
|
move $t0, $ra
|
|
bal 2f
|
|
nop
|
|
2:
|
|
.cpsetup $ra, $t1, 2b
|
|
LA $t9, __set_errno_internal
|
|
.cpreturn
|
|
j $t9
|
|
move $ra, $t0
|
|
.set pop
|
|
END(msync)
|
|
|
|
ENTRY(mprotect)
|
|
.set push
|
|
.set noreorder
|
|
li $v0, __NR_mprotect
|
|
syscall
|
|
bnez $a3, 1f
|
|
move $a0, $v0
|
|
j $ra
|
|
nop
|
|
1:
|
|
move $t0, $ra
|
|
bal 2f
|
|
nop
|
|
2:
|
|
.cpsetup $ra, $t1, 2b
|
|
LA $t9, __set_errno_internal
|
|
.cpreturn
|
|
j $t9
|
|
move $ra, $t0
|
|
.set pop
|
|
END(mprotect)
|
|
|
|
ENTRY(madvise)
|
|
.set push
|
|
.set noreorder
|
|
li $v0, __NR_madvise
|
|
syscall
|
|
bnez $a3, 1f
|
|
move $a0, $v0
|
|
j $ra
|
|
nop
|
|
1:
|
|
move $t0, $ra
|
|
bal 2f
|
|
nop
|
|
2:
|
|
.cpsetup $ra, $t1, 2b
|
|
LA $t9, __set_errno_internal
|
|
.cpreturn
|
|
j $t9
|
|
move $ra, $t0
|
|
.set pop
|
|
END(madvise)
|
|
|
|
ENTRY(mlock)
|
|
.set push
|
|
.set noreorder
|
|
li $v0, __NR_mlock
|
|
syscall
|
|
bnez $a3, 1f
|
|
move $a0, $v0
|
|
j $ra
|
|
nop
|
|
1:
|
|
move $t0, $ra
|
|
bal 2f
|
|
nop
|
|
2:
|
|
.cpsetup $ra, $t1, 2b
|
|
LA $t9, __set_errno_internal
|
|
.cpreturn
|
|
j $t9
|
|
move $ra, $t0
|
|
.set pop
|
|
END(mlock)
|
|
|
|
ENTRY(munlock)
|
|
.set push
|
|
.set noreorder
|
|
li $v0, __NR_munlock
|
|
syscall
|
|
bnez $a3, 1f
|
|
move $a0, $v0
|
|
j $ra
|
|
nop
|
|
1:
|
|
move $t0, $ra
|
|
bal 2f
|
|
nop
|
|
2:
|
|
.cpsetup $ra, $t1, 2b
|
|
LA $t9, __set_errno_internal
|
|
.cpreturn
|
|
j $t9
|
|
move $ra, $t0
|
|
.set pop
|
|
END(munlock)
|
|
|
|
ENTRY(mlockall)
|
|
.set push
|
|
.set noreorder
|
|
li $v0, __NR_mlockall
|
|
syscall
|
|
bnez $a3, 1f
|
|
move $a0, $v0
|
|
j $ra
|
|
nop
|
|
1:
|
|
move $t0, $ra
|
|
bal 2f
|
|
nop
|
|
2:
|
|
.cpsetup $ra, $t1, 2b
|
|
LA $t9, __set_errno_internal
|
|
.cpreturn
|
|
j $t9
|
|
move $ra, $t0
|
|
.set pop
|
|
END(mlockall)
|
|
|
|
ENTRY(munlockall)
|
|
.set push
|
|
.set noreorder
|
|
li $v0, __NR_munlockall
|
|
syscall
|
|
bnez $a3, 1f
|
|
move $a0, $v0
|
|
j $ra
|
|
nop
|
|
1:
|
|
move $t0, $ra
|
|
bal 2f
|
|
nop
|
|
2:
|
|
.cpsetup $ra, $t1, 2b
|
|
LA $t9, __set_errno_internal
|
|
.cpreturn
|
|
j $t9
|
|
move $ra, $t0
|
|
.set pop
|
|
END(munlockall)
|
|
|
|
ENTRY(mincore)
|
|
.set push
|
|
.set noreorder
|
|
li $v0, __NR_mincore
|
|
syscall
|
|
bnez $a3, 1f
|
|
move $a0, $v0
|
|
j $ra
|
|
nop
|
|
1:
|
|
move $t0, $ra
|
|
bal 2f
|
|
nop
|
|
2:
|
|
.cpsetup $ra, $t1, 2b
|
|
LA $t9, __set_errno_internal
|
|
.cpreturn
|
|
j $t9
|
|
move $ra, $t0
|
|
.set pop
|
|
END(mincore)
|
|
|
|
ENTRY(__ioctl)
|
|
.set push
|
|
.set noreorder
|
|
li $v0, __NR_ioctl
|
|
syscall
|
|
bnez $a3, 1f
|
|
move $a0, $v0
|
|
j $ra
|
|
nop
|
|
1:
|
|
move $t0, $ra
|
|
bal 2f
|
|
nop
|
|
2:
|
|
.cpsetup $ra, $t1, 2b
|
|
LA $t9, __set_errno_internal
|
|
.cpreturn
|
|
j $t9
|
|
move $ra, $t0
|
|
.set pop
|
|
END(__ioctl)
|
|
.hidden __ioctl
|
|
|
|
ENTRY(readv)
|
|
.set push
|
|
.set noreorder
|
|
li $v0, __NR_readv
|
|
syscall
|
|
bnez $a3, 1f
|
|
move $a0, $v0
|
|
j $ra
|
|
nop
|
|
1:
|
|
move $t0, $ra
|
|
bal 2f
|
|
nop
|
|
2:
|
|
.cpsetup $ra, $t1, 2b
|
|
LA $t9, __set_errno_internal
|
|
.cpreturn
|
|
j $t9
|
|
move $ra, $t0
|
|
.set pop
|
|
END(readv)
|
|
|
|
ENTRY(writev)
|
|
.set push
|
|
.set noreorder
|
|
li $v0, __NR_writev
|
|
syscall
|
|
bnez $a3, 1f
|
|
move $a0, $v0
|
|
j $ra
|
|
nop
|
|
1:
|
|
move $t0, $ra
|
|
bal 2f
|
|
nop
|
|
2:
|
|
.cpsetup $ra, $t1, 2b
|
|
LA $t9, __set_errno_internal
|
|
.cpreturn
|
|
j $t9
|
|
move $ra, $t0
|
|
.set pop
|
|
END(writev)
|
|
|
|
ENTRY(fcntl)
|
|
.set push
|
|
.set noreorder
|
|
li $v0, __NR_fcntl
|
|
syscall
|
|
bnez $a3, 1f
|
|
move $a0, $v0
|
|
j $ra
|
|
nop
|
|
1:
|
|
move $t0, $ra
|
|
bal 2f
|
|
nop
|
|
2:
|
|
.cpsetup $ra, $t1, 2b
|
|
LA $t9, __set_errno_internal
|
|
.cpreturn
|
|
j $t9
|
|
move $ra, $t0
|
|
.set pop
|
|
END(fcntl)
|
|
|
|
ENTRY(flock)
|
|
.set push
|
|
.set noreorder
|
|
li $v0, __NR_flock
|
|
syscall
|
|
bnez $a3, 1f
|
|
move $a0, $v0
|
|
j $ra
|
|
nop
|
|
1:
|
|
move $t0, $ra
|
|
bal 2f
|
|
nop
|
|
2:
|
|
.cpsetup $ra, $t1, 2b
|
|
LA $t9, __set_errno_internal
|
|
.cpreturn
|
|
j $t9
|
|
move $ra, $t0
|
|
.set pop
|
|
END(flock)
|
|
|
|
ENTRY(___fchmod)
|
|
.set push
|
|
.set noreorder
|
|
li $v0, __NR_fchmod
|
|
syscall
|
|
bnez $a3, 1f
|
|
move $a0, $v0
|
|
j $ra
|
|
nop
|
|
1:
|
|
move $t0, $ra
|
|
bal 2f
|
|
nop
|
|
2:
|
|
.cpsetup $ra, $t1, 2b
|
|
LA $t9, __set_errno_internal
|
|
.cpreturn
|
|
j $t9
|
|
move $ra, $t0
|
|
.set pop
|
|
END(___fchmod)
|
|
.hidden ___fchmod
|
|
|
|
ENTRY(dup)
|
|
.set push
|
|
.set noreorder
|
|
li $v0, __NR_dup
|
|
syscall
|
|
bnez $a3, 1f
|
|
move $a0, $v0
|
|
j $ra
|
|
nop
|
|
1:
|
|
move $t0, $ra
|
|
bal 2f
|
|
nop
|
|
2:
|
|
.cpsetup $ra, $t1, 2b
|
|
LA $t9, __set_errno_internal
|
|
.cpreturn
|
|
j $t9
|
|
move $ra, $t0
|
|
.set pop
|
|
END(dup)
|
|
|
|
ENTRY(pipe2)
|
|
.set push
|
|
.set noreorder
|
|
li $v0, __NR_pipe2
|
|
syscall
|
|
bnez $a3, 1f
|
|
move $a0, $v0
|
|
j $ra
|
|
nop
|
|
1:
|
|
move $t0, $ra
|
|
bal 2f
|
|
nop
|
|
2:
|
|
.cpsetup $ra, $t1, 2b
|
|
LA $t9, __set_errno_internal
|
|
.cpreturn
|
|
j $t9
|
|
move $ra, $t0
|
|
.set pop
|
|
END(pipe2)
|
|
|
|
ENTRY(dup3)
|
|
.set push
|
|
.set noreorder
|
|
li $v0, __NR_dup3
|
|
syscall
|
|
bnez $a3, 1f
|
|
move $a0, $v0
|
|
j $ra
|
|
nop
|
|
1:
|
|
move $t0, $ra
|
|
bal 2f
|
|
nop
|
|
2:
|
|
.cpsetup $ra, $t1, 2b
|
|
LA $t9, __set_errno_internal
|
|
.cpreturn
|
|
j $t9
|
|
move $ra, $t0
|
|
.set pop
|
|
END(dup3)
|
|
|
|
ENTRY(fsync)
|
|
.set push
|
|
.set noreorder
|
|
li $v0, __NR_fsync
|
|
syscall
|
|
bnez $a3, 1f
|
|
move $a0, $v0
|
|
j $ra
|
|
nop
|
|
1:
|
|
move $t0, $ra
|
|
bal 2f
|
|
nop
|
|
2:
|
|
.cpsetup $ra, $t1, 2b
|
|
LA $t9, __set_errno_internal
|
|
.cpreturn
|
|
j $t9
|
|
move $ra, $t0
|
|
.set pop
|
|
END(fsync)
|
|
|
|
ENTRY(fdatasync)
|
|
.set push
|
|
.set noreorder
|
|
li $v0, __NR_fdatasync
|
|
syscall
|
|
bnez $a3, 1f
|
|
move $a0, $v0
|
|
j $ra
|
|
nop
|
|
1:
|
|
move $t0, $ra
|
|
bal 2f
|
|
nop
|
|
2:
|
|
.cpsetup $ra, $t1, 2b
|
|
LA $t9, __set_errno_internal
|
|
.cpreturn
|
|
j $t9
|
|
move $ra, $t0
|
|
.set pop
|
|
END(fdatasync)
|
|
|
|
ENTRY(fchown)
|
|
.set push
|
|
.set noreorder
|
|
li $v0, __NR_fchown
|
|
syscall
|
|
bnez $a3, 1f
|
|
move $a0, $v0
|
|
j $ra
|
|
nop
|
|
1:
|
|
move $t0, $ra
|
|
bal 2f
|
|
nop
|
|
2:
|
|
.cpsetup $ra, $t1, 2b
|
|
LA $t9, __set_errno_internal
|
|
.cpreturn
|
|
j $t9
|
|
move $ra, $t0
|
|
.set pop
|
|
END(fchown)
|
|
|
|
ENTRY(sync)
|
|
.set push
|
|
.set noreorder
|
|
li $v0, __NR_sync
|
|
syscall
|
|
bnez $a3, 1f
|
|
move $a0, $v0
|
|
j $ra
|
|
nop
|
|
1:
|
|
move $t0, $ra
|
|
bal 2f
|
|
nop
|
|
2:
|
|
.cpsetup $ra, $t1, 2b
|
|
LA $t9, __set_errno_internal
|
|
.cpreturn
|
|
j $t9
|
|
move $ra, $t0
|
|
.set pop
|
|
END(sync)
|
|
|
|
ENTRY(syncfs)
|
|
.set push
|
|
.set noreorder
|
|
li $v0, __NR_syncfs
|
|
syscall
|
|
bnez $a3, 1f
|
|
move $a0, $v0
|
|
j $ra
|
|
nop
|
|
1:
|
|
move $t0, $ra
|
|
bal 2f
|
|
nop
|
|
2:
|
|
.cpsetup $ra, $t1, 2b
|
|
LA $t9, __set_errno_internal
|
|
.cpreturn
|
|
j $t9
|
|
move $ra, $t0
|
|
.set pop
|
|
END(syncfs)
|
|
|
|
ENTRY(___fsetxattr)
|
|
.set push
|
|
.set noreorder
|
|
li $v0, __NR_fsetxattr
|
|
syscall
|
|
bnez $a3, 1f
|
|
move $a0, $v0
|
|
j $ra
|
|
nop
|
|
1:
|
|
move $t0, $ra
|
|
bal 2f
|
|
nop
|
|
2:
|
|
.cpsetup $ra, $t1, 2b
|
|
LA $t9, __set_errno_internal
|
|
.cpreturn
|
|
j $t9
|
|
move $ra, $t0
|
|
.set pop
|
|
END(___fsetxattr)
|
|
.hidden ___fsetxattr
|
|
|
|
ENTRY(___fgetxattr)
|
|
.set push
|
|
.set noreorder
|
|
li $v0, __NR_fgetxattr
|
|
syscall
|
|
bnez $a3, 1f
|
|
move $a0, $v0
|
|
j $ra
|
|
nop
|
|
1:
|
|
move $t0, $ra
|
|
bal 2f
|
|
nop
|
|
2:
|
|
.cpsetup $ra, $t1, 2b
|
|
LA $t9, __set_errno_internal
|
|
.cpreturn
|
|
j $t9
|
|
move $ra, $t0
|
|
.set pop
|
|
END(___fgetxattr)
|
|
.hidden ___fgetxattr
|
|
|
|
ENTRY(___flistxattr)
|
|
.set push
|
|
.set noreorder
|
|
li $v0, __NR_flistxattr
|
|
syscall
|
|
bnez $a3, 1f
|
|
move $a0, $v0
|
|
j $ra
|
|
nop
|
|
1:
|
|
move $t0, $ra
|
|
bal 2f
|
|
nop
|
|
2:
|
|
.cpsetup $ra, $t1, 2b
|
|
LA $t9, __set_errno_internal
|
|
.cpreturn
|
|
j $t9
|
|
move $ra, $t0
|
|
.set pop
|
|
END(___flistxattr)
|
|
.hidden ___flistxattr
|
|
|
|
ENTRY(fremovexattr)
|
|
.set push
|
|
.set noreorder
|
|
li $v0, __NR_fremovexattr
|
|
syscall
|
|
bnez $a3, 1f
|
|
move $a0, $v0
|
|
j $ra
|
|
nop
|
|
1:
|
|
move $t0, $ra
|
|
bal 2f
|
|
nop
|
|
2:
|
|
.cpsetup $ra, $t1, 2b
|
|
LA $t9, __set_errno_internal
|
|
.cpreturn
|
|
j $t9
|
|
move $ra, $t0
|
|
.set pop
|
|
END(fremovexattr)
|
|
|
|
ENTRY(__getdents64)
|
|
.set push
|
|
.set noreorder
|
|
li $v0, __NR_getdents64
|
|
syscall
|
|
bnez $a3, 1f
|
|
move $a0, $v0
|
|
j $ra
|
|
nop
|
|
1:
|
|
move $t0, $ra
|
|
bal 2f
|
|
nop
|
|
2:
|
|
.cpsetup $ra, $t1, 2b
|
|
LA $t9, __set_errno_internal
|
|
.cpreturn
|
|
j $t9
|
|
move $ra, $t0
|
|
.set pop
|
|
END(__getdents64)
|
|
.hidden __getdents64
|
|
|
|
ENTRY(__openat)
|
|
.set push
|
|
.set noreorder
|
|
li $v0, __NR_openat
|
|
syscall
|
|
bnez $a3, 1f
|
|
move $a0, $v0
|
|
j $ra
|
|
nop
|
|
1:
|
|
move $t0, $ra
|
|
bal 2f
|
|
nop
|
|
2:
|
|
.cpsetup $ra, $t1, 2b
|
|
LA $t9, __set_errno_internal
|
|
.cpreturn
|
|
j $t9
|
|
move $ra, $t0
|
|
.set pop
|
|
END(__openat)
|
|
.hidden __openat
|
|
|
|
ENTRY(___faccessat)
|
|
.set push
|
|
.set noreorder
|
|
li $v0, __NR_faccessat
|
|
syscall
|
|
bnez $a3, 1f
|
|
move $a0, $v0
|
|
j $ra
|
|
nop
|
|
1:
|
|
move $t0, $ra
|
|
bal 2f
|
|
nop
|
|
2:
|
|
.cpsetup $ra, $t1, 2b
|
|
LA $t9, __set_errno_internal
|
|
.cpreturn
|
|
j $t9
|
|
move $ra, $t0
|
|
.set pop
|
|
END(___faccessat)
|
|
.hidden ___faccessat
|
|
|
|
ENTRY(___fchmodat)
|
|
.set push
|
|
.set noreorder
|
|
li $v0, __NR_fchmodat
|
|
syscall
|
|
bnez $a3, 1f
|
|
move $a0, $v0
|
|
j $ra
|
|
nop
|
|
1:
|
|
move $t0, $ra
|
|
bal 2f
|
|
nop
|
|
2:
|
|
.cpsetup $ra, $t1, 2b
|
|
LA $t9, __set_errno_internal
|
|
.cpreturn
|
|
j $t9
|
|
move $ra, $t0
|
|
.set pop
|
|
END(___fchmodat)
|
|
.hidden ___fchmodat
|
|
|
|
ENTRY(fchownat)
|
|
.set push
|
|
.set noreorder
|
|
li $v0, __NR_fchownat
|
|
syscall
|
|
bnez $a3, 1f
|
|
move $a0, $v0
|
|
j $ra
|
|
nop
|
|
1:
|
|
move $t0, $ra
|
|
bal 2f
|
|
nop
|
|
2:
|
|
.cpsetup $ra, $t1, 2b
|
|
LA $t9, __set_errno_internal
|
|
.cpreturn
|
|
j $t9
|
|
move $ra, $t0
|
|
.set pop
|
|
END(fchownat)
|
|
|
|
ENTRY(linkat)
|
|
.set push
|
|
.set noreorder
|
|
li $v0, __NR_linkat
|
|
syscall
|
|
bnez $a3, 1f
|
|
move $a0, $v0
|
|
j $ra
|
|
nop
|
|
1:
|
|
move $t0, $ra
|
|
bal 2f
|
|
nop
|
|
2:
|
|
.cpsetup $ra, $t1, 2b
|
|
LA $t9, __set_errno_internal
|
|
.cpreturn
|
|
j $t9
|
|
move $ra, $t0
|
|
.set pop
|
|
END(linkat)
|
|
|
|
ENTRY(mkdirat)
|
|
.set push
|
|
.set noreorder
|
|
li $v0, __NR_mkdirat
|
|
syscall
|
|
bnez $a3, 1f
|
|
move $a0, $v0
|
|
j $ra
|
|
nop
|
|
1:
|
|
move $t0, $ra
|
|
bal 2f
|
|
nop
|
|
2:
|
|
.cpsetup $ra, $t1, 2b
|
|
LA $t9, __set_errno_internal
|
|
.cpreturn
|
|
j $t9
|
|
move $ra, $t0
|
|
.set pop
|
|
END(mkdirat)
|
|
|
|
ENTRY(mknodat)
|
|
.set push
|
|
.set noreorder
|
|
li $v0, __NR_mknodat
|
|
syscall
|
|
bnez $a3, 1f
|
|
move $a0, $v0
|
|
j $ra
|
|
nop
|
|
1:
|
|
move $t0, $ra
|
|
bal 2f
|
|
nop
|
|
2:
|
|
.cpsetup $ra, $t1, 2b
|
|
LA $t9, __set_errno_internal
|
|
.cpreturn
|
|
j $t9
|
|
move $ra, $t0
|
|
.set pop
|
|
END(mknodat)
|
|
|
|
ENTRY(readlinkat)
|
|
.set push
|
|
.set noreorder
|
|
li $v0, __NR_readlinkat
|
|
syscall
|
|
bnez $a3, 1f
|
|
move $a0, $v0
|
|
j $ra
|
|
nop
|
|
1:
|
|
move $t0, $ra
|
|
bal 2f
|
|
nop
|
|
2:
|
|
.cpsetup $ra, $t1, 2b
|
|
LA $t9, __set_errno_internal
|
|
.cpreturn
|
|
j $t9
|
|
move $ra, $t0
|
|
.set pop
|
|
END(readlinkat)
|
|
|
|
ENTRY(renameat)
|
|
.set push
|
|
.set noreorder
|
|
li $v0, __NR_renameat
|
|
syscall
|
|
bnez $a3, 1f
|
|
move $a0, $v0
|
|
j $ra
|
|
nop
|
|
1:
|
|
move $t0, $ra
|
|
bal 2f
|
|
nop
|
|
2:
|
|
.cpsetup $ra, $t1, 2b
|
|
LA $t9, __set_errno_internal
|
|
.cpreturn
|
|
j $t9
|
|
move $ra, $t0
|
|
.set pop
|
|
END(renameat)
|
|
|
|
ENTRY(symlinkat)
|
|
.set push
|
|
.set noreorder
|
|
li $v0, __NR_symlinkat
|
|
syscall
|
|
bnez $a3, 1f
|
|
move $a0, $v0
|
|
j $ra
|
|
nop
|
|
1:
|
|
move $t0, $ra
|
|
bal 2f
|
|
nop
|
|
2:
|
|
.cpsetup $ra, $t1, 2b
|
|
LA $t9, __set_errno_internal
|
|
.cpreturn
|
|
j $t9
|
|
move $ra, $t0
|
|
.set pop
|
|
END(symlinkat)
|
|
|
|
ENTRY(unlinkat)
|
|
.set push
|
|
.set noreorder
|
|
li $v0, __NR_unlinkat
|
|
syscall
|
|
bnez $a3, 1f
|
|
move $a0, $v0
|
|
j $ra
|
|
nop
|
|
1:
|
|
move $t0, $ra
|
|
bal 2f
|
|
nop
|
|
2:
|
|
.cpsetup $ra, $t1, 2b
|
|
LA $t9, __set_errno_internal
|
|
.cpreturn
|
|
j $t9
|
|
move $ra, $t0
|
|
.set pop
|
|
END(unlinkat)
|
|
|
|
ENTRY(utimensat)
|
|
.set push
|
|
.set noreorder
|
|
li $v0, __NR_utimensat
|
|
syscall
|
|
bnez $a3, 1f
|
|
move $a0, $v0
|
|
j $ra
|
|
nop
|
|
1:
|
|
move $t0, $ra
|
|
bal 2f
|
|
nop
|
|
2:
|
|
.cpsetup $ra, $t1, 2b
|
|
LA $t9, __set_errno_internal
|
|
.cpreturn
|
|
j $t9
|
|
move $ra, $t0
|
|
.set pop
|
|
END(utimensat)
|
|
|
|
ENTRY(lseek)
|
|
.set push
|
|
.set noreorder
|
|
li $v0, __NR_lseek
|
|
syscall
|
|
bnez $a3, 1f
|
|
move $a0, $v0
|
|
j $ra
|
|
nop
|
|
1:
|
|
move $t0, $ra
|
|
bal 2f
|
|
nop
|
|
2:
|
|
.cpsetup $ra, $t1, 2b
|
|
LA $t9, __set_errno_internal
|
|
.cpreturn
|
|
j $t9
|
|
move $ra, $t0
|
|
.set pop
|
|
END(lseek)
|
|
|
|
ALIAS_SYMBOL(lseek64, lseek)
|
|
|
|
ENTRY(ftruncate)
|
|
.set push
|
|
.set noreorder
|
|
li $v0, __NR_ftruncate
|
|
syscall
|
|
bnez $a3, 1f
|
|
move $a0, $v0
|
|
j $ra
|
|
nop
|
|
1:
|
|
move $t0, $ra
|
|
bal 2f
|
|
nop
|
|
2:
|
|
.cpsetup $ra, $t1, 2b
|
|
LA $t9, __set_errno_internal
|
|
.cpreturn
|
|
j $t9
|
|
move $ra, $t0
|
|
.set pop
|
|
END(ftruncate)
|
|
|
|
ALIAS_SYMBOL(ftruncate64, ftruncate)
|
|
|
|
ENTRY(sendfile)
|
|
.set push
|
|
.set noreorder
|
|
li $v0, __NR_sendfile
|
|
syscall
|
|
bnez $a3, 1f
|
|
move $a0, $v0
|
|
j $ra
|
|
nop
|
|
1:
|
|
move $t0, $ra
|
|
bal 2f
|
|
nop
|
|
2:
|
|
.cpsetup $ra, $t1, 2b
|
|
LA $t9, __set_errno_internal
|
|
.cpreturn
|
|
j $t9
|
|
move $ra, $t0
|
|
.set pop
|
|
END(sendfile)
|
|
|
|
ALIAS_SYMBOL(sendfile64, sendfile)
|
|
|
|
ENTRY(truncate)
|
|
.set push
|
|
.set noreorder
|
|
li $v0, __NR_truncate
|
|
syscall
|
|
bnez $a3, 1f
|
|
move $a0, $v0
|
|
j $ra
|
|
nop
|
|
1:
|
|
move $t0, $ra
|
|
bal 2f
|
|
nop
|
|
2:
|
|
.cpsetup $ra, $t1, 2b
|
|
LA $t9, __set_errno_internal
|
|
.cpreturn
|
|
j $t9
|
|
move $ra, $t0
|
|
.set pop
|
|
END(truncate)
|
|
|
|
ALIAS_SYMBOL(truncate64, truncate)
|
|
|
|
ENTRY(mmap)
|
|
.set push
|
|
.set noreorder
|
|
li $v0, __NR_mmap
|
|
syscall
|
|
bnez $a3, 1f
|
|
move $a0, $v0
|
|
j $ra
|
|
nop
|
|
1:
|
|
move $t0, $ra
|
|
bal 2f
|
|
nop
|
|
2:
|
|
.cpsetup $ra, $t1, 2b
|
|
LA $t9, __set_errno_internal
|
|
.cpreturn
|
|
j $t9
|
|
move $ra, $t0
|
|
.set pop
|
|
END(mmap)
|
|
|
|
ALIAS_SYMBOL(mmap64, mmap)
|
|
|
|
ENTRY(fallocate)
|
|
.set push
|
|
.set noreorder
|
|
li $v0, __NR_fallocate
|
|
syscall
|
|
bnez $a3, 1f
|
|
move $a0, $v0
|
|
j $ra
|
|
nop
|
|
1:
|
|
move $t0, $ra
|
|
bal 2f
|
|
nop
|
|
2:
|
|
.cpsetup $ra, $t1, 2b
|
|
LA $t9, __set_errno_internal
|
|
.cpreturn
|
|
j $t9
|
|
move $ra, $t0
|
|
.set pop
|
|
END(fallocate)
|
|
|
|
ALIAS_SYMBOL(fallocate64, fallocate)
|
|
|
|
ENTRY(__fadvise64)
|
|
.set push
|
|
.set noreorder
|
|
li $v0, __NR_fadvise64
|
|
syscall
|
|
bnez $a3, 1f
|
|
move $a0, $v0
|
|
j $ra
|
|
nop
|
|
1:
|
|
move $t0, $ra
|
|
bal 2f
|
|
nop
|
|
2:
|
|
.cpsetup $ra, $t1, 2b
|
|
LA $t9, __set_errno_internal
|
|
.cpreturn
|
|
j $t9
|
|
move $ra, $t0
|
|
.set pop
|
|
END(__fadvise64)
|
|
.hidden __fadvise64
|
|
|
|
ENTRY(__fstatfs)
|
|
.set push
|
|
.set noreorder
|
|
li $v0, __NR_fstatfs
|
|
syscall
|
|
bnez $a3, 1f
|
|
move $a0, $v0
|
|
j $ra
|
|
nop
|
|
1:
|
|
move $t0, $ra
|
|
bal 2f
|
|
nop
|
|
2:
|
|
.cpsetup $ra, $t1, 2b
|
|
LA $t9, __set_errno_internal
|
|
.cpreturn
|
|
j $t9
|
|
move $ra, $t0
|
|
.set pop
|
|
END(__fstatfs)
|
|
.hidden __fstatfs
|
|
|
|
ENTRY(__statfs)
|
|
.set push
|
|
.set noreorder
|
|
li $v0, __NR_statfs
|
|
syscall
|
|
bnez $a3, 1f
|
|
move $a0, $v0
|
|
j $ra
|
|
nop
|
|
1:
|
|
move $t0, $ra
|
|
bal 2f
|
|
nop
|
|
2:
|
|
.cpsetup $ra, $t1, 2b
|
|
LA $t9, __set_errno_internal
|
|
.cpreturn
|
|
j $t9
|
|
move $ra, $t0
|
|
.set pop
|
|
END(__statfs)
|
|
.hidden __statfs
|
|
|
|
ENTRY(chdir)
|
|
.set push
|
|
.set noreorder
|
|
li $v0, __NR_chdir
|
|
syscall
|
|
bnez $a3, 1f
|
|
move $a0, $v0
|
|
j $ra
|
|
nop
|
|
1:
|
|
move $t0, $ra
|
|
bal 2f
|
|
nop
|
|
2:
|
|
.cpsetup $ra, $t1, 2b
|
|
LA $t9, __set_errno_internal
|
|
.cpreturn
|
|
j $t9
|
|
move $ra, $t0
|
|
.set pop
|
|
END(chdir)
|
|
|
|
ENTRY(mount)
|
|
.set push
|
|
.set noreorder
|
|
li $v0, __NR_mount
|
|
syscall
|
|
bnez $a3, 1f
|
|
move $a0, $v0
|
|
j $ra
|
|
nop
|
|
1:
|
|
move $t0, $ra
|
|
bal 2f
|
|
nop
|
|
2:
|
|
.cpsetup $ra, $t1, 2b
|
|
LA $t9, __set_errno_internal
|
|
.cpreturn
|
|
j $t9
|
|
move $ra, $t0
|
|
.set pop
|
|
END(mount)
|
|
|
|
ENTRY(umount2)
|
|
.set push
|
|
.set noreorder
|
|
li $v0, __NR_umount2
|
|
syscall
|
|
bnez $a3, 1f
|
|
move $a0, $v0
|
|
j $ra
|
|
nop
|
|
1:
|
|
move $t0, $ra
|
|
bal 2f
|
|
nop
|
|
2:
|
|
.cpsetup $ra, $t1, 2b
|
|
LA $t9, __set_errno_internal
|
|
.cpreturn
|
|
j $t9
|
|
move $ra, $t0
|
|
.set pop
|
|
END(umount2)
|
|
|
|
ENTRY(__getcwd)
|
|
.set push
|
|
.set noreorder
|
|
li $v0, __NR_getcwd
|
|
syscall
|
|
bnez $a3, 1f
|
|
move $a0, $v0
|
|
j $ra
|
|
nop
|
|
1:
|
|
move $t0, $ra
|
|
bal 2f
|
|
nop
|
|
2:
|
|
.cpsetup $ra, $t1, 2b
|
|
LA $t9, __set_errno_internal
|
|
.cpreturn
|
|
j $t9
|
|
move $ra, $t0
|
|
.set pop
|
|
END(__getcwd)
|
|
.hidden __getcwd
|
|
|
|
ENTRY(fchdir)
|
|
.set push
|
|
.set noreorder
|
|
li $v0, __NR_fchdir
|
|
syscall
|
|
bnez $a3, 1f
|
|
move $a0, $v0
|
|
j $ra
|
|
nop
|
|
1:
|
|
move $t0, $ra
|
|
bal 2f
|
|
nop
|
|
2:
|
|
.cpsetup $ra, $t1, 2b
|
|
LA $t9, __set_errno_internal
|
|
.cpreturn
|
|
j $t9
|
|
move $ra, $t0
|
|
.set pop
|
|
END(fchdir)
|
|
|
|
ENTRY(setxattr)
|
|
.set push
|
|
.set noreorder
|
|
li $v0, __NR_setxattr
|
|
syscall
|
|
bnez $a3, 1f
|
|
move $a0, $v0
|
|
j $ra
|
|
nop
|
|
1:
|
|
move $t0, $ra
|
|
bal 2f
|
|
nop
|
|
2:
|
|
.cpsetup $ra, $t1, 2b
|
|
LA $t9, __set_errno_internal
|
|
.cpreturn
|
|
j $t9
|
|
move $ra, $t0
|
|
.set pop
|
|
END(setxattr)
|
|
|
|
ENTRY(lsetxattr)
|
|
.set push
|
|
.set noreorder
|
|
li $v0, __NR_lsetxattr
|
|
syscall
|
|
bnez $a3, 1f
|
|
move $a0, $v0
|
|
j $ra
|
|
nop
|
|
1:
|
|
move $t0, $ra
|
|
bal 2f
|
|
nop
|
|
2:
|
|
.cpsetup $ra, $t1, 2b
|
|
LA $t9, __set_errno_internal
|
|
.cpreturn
|
|
j $t9
|
|
move $ra, $t0
|
|
.set pop
|
|
END(lsetxattr)
|
|
|
|
ENTRY(getxattr)
|
|
.set push
|
|
.set noreorder
|
|
li $v0, __NR_getxattr
|
|
syscall
|
|
bnez $a3, 1f
|
|
move $a0, $v0
|
|
j $ra
|
|
nop
|
|
1:
|
|
move $t0, $ra
|
|
bal 2f
|
|
nop
|
|
2:
|
|
.cpsetup $ra, $t1, 2b
|
|
LA $t9, __set_errno_internal
|
|
.cpreturn
|
|
j $t9
|
|
move $ra, $t0
|
|
.set pop
|
|
END(getxattr)
|
|
|
|
ENTRY(lgetxattr)
|
|
.set push
|
|
.set noreorder
|
|
li $v0, __NR_lgetxattr
|
|
syscall
|
|
bnez $a3, 1f
|
|
move $a0, $v0
|
|
j $ra
|
|
nop
|
|
1:
|
|
move $t0, $ra
|
|
bal 2f
|
|
nop
|
|
2:
|
|
.cpsetup $ra, $t1, 2b
|
|
LA $t9, __set_errno_internal
|
|
.cpreturn
|
|
j $t9
|
|
move $ra, $t0
|
|
.set pop
|
|
END(lgetxattr)
|
|
|
|
ENTRY(listxattr)
|
|
.set push
|
|
.set noreorder
|
|
li $v0, __NR_listxattr
|
|
syscall
|
|
bnez $a3, 1f
|
|
move $a0, $v0
|
|
j $ra
|
|
nop
|
|
1:
|
|
move $t0, $ra
|
|
bal 2f
|
|
nop
|
|
2:
|
|
.cpsetup $ra, $t1, 2b
|
|
LA $t9, __set_errno_internal
|
|
.cpreturn
|
|
j $t9
|
|
move $ra, $t0
|
|
.set pop
|
|
END(listxattr)
|
|
|
|
ENTRY(llistxattr)
|
|
.set push
|
|
.set noreorder
|
|
li $v0, __NR_llistxattr
|
|
syscall
|
|
bnez $a3, 1f
|
|
move $a0, $v0
|
|
j $ra
|
|
nop
|
|
1:
|
|
move $t0, $ra
|
|
bal 2f
|
|
nop
|
|
2:
|
|
.cpsetup $ra, $t1, 2b
|
|
LA $t9, __set_errno_internal
|
|
.cpreturn
|
|
j $t9
|
|
move $ra, $t0
|
|
.set pop
|
|
END(llistxattr)
|
|
|
|
ENTRY(removexattr)
|
|
.set push
|
|
.set noreorder
|
|
li $v0, __NR_removexattr
|
|
syscall
|
|
bnez $a3, 1f
|
|
move $a0, $v0
|
|
j $ra
|
|
nop
|
|
1:
|
|
move $t0, $ra
|
|
bal 2f
|
|
nop
|
|
2:
|
|
.cpsetup $ra, $t1, 2b
|
|
LA $t9, __set_errno_internal
|
|
.cpreturn
|
|
j $t9
|
|
move $ra, $t0
|
|
.set pop
|
|
END(removexattr)
|
|
|
|
ENTRY(lremovexattr)
|
|
.set push
|
|
.set noreorder
|
|
li $v0, __NR_lremovexattr
|
|
syscall
|
|
bnez $a3, 1f
|
|
move $a0, $v0
|
|
j $ra
|
|
nop
|
|
1:
|
|
move $t0, $ra
|
|
bal 2f
|
|
nop
|
|
2:
|
|
.cpsetup $ra, $t1, 2b
|
|
LA $t9, __set_errno_internal
|
|
.cpreturn
|
|
j $t9
|
|
move $ra, $t0
|
|
.set pop
|
|
END(lremovexattr)
|
|
|
|
ENTRY(swapon)
|
|
.set push
|
|
.set noreorder
|
|
li $v0, __NR_swapon
|
|
syscall
|
|
bnez $a3, 1f
|
|
move $a0, $v0
|
|
j $ra
|
|
nop
|
|
1:
|
|
move $t0, $ra
|
|
bal 2f
|
|
nop
|
|
2:
|
|
.cpsetup $ra, $t1, 2b
|
|
LA $t9, __set_errno_internal
|
|
.cpreturn
|
|
j $t9
|
|
move $ra, $t0
|
|
.set pop
|
|
END(swapon)
|
|
|
|
ENTRY(swapoff)
|
|
.set push
|
|
.set noreorder
|
|
li $v0, __NR_swapoff
|
|
syscall
|
|
bnez $a3, 1f
|
|
move $a0, $v0
|
|
j $ra
|
|
nop
|
|
1:
|
|
move $t0, $ra
|
|
bal 2f
|
|
nop
|
|
2:
|
|
.cpsetup $ra, $t1, 2b
|
|
LA $t9, __set_errno_internal
|
|
.cpreturn
|
|
j $t9
|
|
move $ra, $t0
|
|
.set pop
|
|
END(swapoff)
|
|
|
|
ENTRY(settimeofday)
|
|
.set push
|
|
.set noreorder
|
|
li $v0, __NR_settimeofday
|
|
syscall
|
|
bnez $a3, 1f
|
|
move $a0, $v0
|
|
j $ra
|
|
nop
|
|
1:
|
|
move $t0, $ra
|
|
bal 2f
|
|
nop
|
|
2:
|
|
.cpsetup $ra, $t1, 2b
|
|
LA $t9, __set_errno_internal
|
|
.cpreturn
|
|
j $t9
|
|
move $ra, $t0
|
|
.set pop
|
|
END(settimeofday)
|
|
|
|
ENTRY(times)
|
|
.set push
|
|
.set noreorder
|
|
li $v0, __NR_times
|
|
syscall
|
|
bnez $a3, 1f
|
|
move $a0, $v0
|
|
j $ra
|
|
nop
|
|
1:
|
|
move $t0, $ra
|
|
bal 2f
|
|
nop
|
|
2:
|
|
.cpsetup $ra, $t1, 2b
|
|
LA $t9, __set_errno_internal
|
|
.cpreturn
|
|
j $t9
|
|
move $ra, $t0
|
|
.set pop
|
|
END(times)
|
|
|
|
ENTRY(nanosleep)
|
|
.set push
|
|
.set noreorder
|
|
li $v0, __NR_nanosleep
|
|
syscall
|
|
bnez $a3, 1f
|
|
move $a0, $v0
|
|
j $ra
|
|
nop
|
|
1:
|
|
move $t0, $ra
|
|
bal 2f
|
|
nop
|
|
2:
|
|
.cpsetup $ra, $t1, 2b
|
|
LA $t9, __set_errno_internal
|
|
.cpreturn
|
|
j $t9
|
|
move $ra, $t0
|
|
.set pop
|
|
END(nanosleep)
|
|
|
|
ENTRY(clock_settime)
|
|
.set push
|
|
.set noreorder
|
|
li $v0, __NR_clock_settime
|
|
syscall
|
|
bnez $a3, 1f
|
|
move $a0, $v0
|
|
j $ra
|
|
nop
|
|
1:
|
|
move $t0, $ra
|
|
bal 2f
|
|
nop
|
|
2:
|
|
.cpsetup $ra, $t1, 2b
|
|
LA $t9, __set_errno_internal
|
|
.cpreturn
|
|
j $t9
|
|
move $ra, $t0
|
|
.set pop
|
|
END(clock_settime)
|
|
|
|
ENTRY(___clock_nanosleep)
|
|
.set push
|
|
.set noreorder
|
|
li $v0, __NR_clock_nanosleep
|
|
syscall
|
|
bnez $a3, 1f
|
|
move $a0, $v0
|
|
j $ra
|
|
nop
|
|
1:
|
|
move $t0, $ra
|
|
bal 2f
|
|
nop
|
|
2:
|
|
.cpsetup $ra, $t1, 2b
|
|
LA $t9, __set_errno_internal
|
|
.cpreturn
|
|
j $t9
|
|
move $ra, $t0
|
|
.set pop
|
|
END(___clock_nanosleep)
|
|
.hidden ___clock_nanosleep
|
|
|
|
ENTRY(getitimer)
|
|
.set push
|
|
.set noreorder
|
|
li $v0, __NR_getitimer
|
|
syscall
|
|
bnez $a3, 1f
|
|
move $a0, $v0
|
|
j $ra
|
|
nop
|
|
1:
|
|
move $t0, $ra
|
|
bal 2f
|
|
nop
|
|
2:
|
|
.cpsetup $ra, $t1, 2b
|
|
LA $t9, __set_errno_internal
|
|
.cpreturn
|
|
j $t9
|
|
move $ra, $t0
|
|
.set pop
|
|
END(getitimer)
|
|
|
|
ENTRY(setitimer)
|
|
.set push
|
|
.set noreorder
|
|
li $v0, __NR_setitimer
|
|
syscall
|
|
bnez $a3, 1f
|
|
move $a0, $v0
|
|
j $ra
|
|
nop
|
|
1:
|
|
move $t0, $ra
|
|
bal 2f
|
|
nop
|
|
2:
|
|
.cpsetup $ra, $t1, 2b
|
|
LA $t9, __set_errno_internal
|
|
.cpreturn
|
|
j $t9
|
|
move $ra, $t0
|
|
.set pop
|
|
END(setitimer)
|
|
|
|
ENTRY(__timer_create)
|
|
.set push
|
|
.set noreorder
|
|
li $v0, __NR_timer_create
|
|
syscall
|
|
bnez $a3, 1f
|
|
move $a0, $v0
|
|
j $ra
|
|
nop
|
|
1:
|
|
move $t0, $ra
|
|
bal 2f
|
|
nop
|
|
2:
|
|
.cpsetup $ra, $t1, 2b
|
|
LA $t9, __set_errno_internal
|
|
.cpreturn
|
|
j $t9
|
|
move $ra, $t0
|
|
.set pop
|
|
END(__timer_create)
|
|
.hidden __timer_create
|
|
|
|
ENTRY(__timer_settime)
|
|
.set push
|
|
.set noreorder
|
|
li $v0, __NR_timer_settime
|
|
syscall
|
|
bnez $a3, 1f
|
|
move $a0, $v0
|
|
j $ra
|
|
nop
|
|
1:
|
|
move $t0, $ra
|
|
bal 2f
|
|
nop
|
|
2:
|
|
.cpsetup $ra, $t1, 2b
|
|
LA $t9, __set_errno_internal
|
|
.cpreturn
|
|
j $t9
|
|
move $ra, $t0
|
|
.set pop
|
|
END(__timer_settime)
|
|
.hidden __timer_settime
|
|
|
|
ENTRY(__timer_gettime)
|
|
.set push
|
|
.set noreorder
|
|
li $v0, __NR_timer_gettime
|
|
syscall
|
|
bnez $a3, 1f
|
|
move $a0, $v0
|
|
j $ra
|
|
nop
|
|
1:
|
|
move $t0, $ra
|
|
bal 2f
|
|
nop
|
|
2:
|
|
.cpsetup $ra, $t1, 2b
|
|
LA $t9, __set_errno_internal
|
|
.cpreturn
|
|
j $t9
|
|
move $ra, $t0
|
|
.set pop
|
|
END(__timer_gettime)
|
|
.hidden __timer_gettime
|
|
|
|
ENTRY(__timer_getoverrun)
|
|
.set push
|
|
.set noreorder
|
|
li $v0, __NR_timer_getoverrun
|
|
syscall
|
|
bnez $a3, 1f
|
|
move $a0, $v0
|
|
j $ra
|
|
nop
|
|
1:
|
|
move $t0, $ra
|
|
bal 2f
|
|
nop
|
|
2:
|
|
.cpsetup $ra, $t1, 2b
|
|
LA $t9, __set_errno_internal
|
|
.cpreturn
|
|
j $t9
|
|
move $ra, $t0
|
|
.set pop
|
|
END(__timer_getoverrun)
|
|
.hidden __timer_getoverrun
|
|
|
|
ENTRY(__timer_delete)
|
|
.set push
|
|
.set noreorder
|
|
li $v0, __NR_timer_delete
|
|
syscall
|
|
bnez $a3, 1f
|
|
move $a0, $v0
|
|
j $ra
|
|
nop
|
|
1:
|
|
move $t0, $ra
|
|
bal 2f
|
|
nop
|
|
2:
|
|
.cpsetup $ra, $t1, 2b
|
|
LA $t9, __set_errno_internal
|
|
.cpreturn
|
|
j $t9
|
|
move $ra, $t0
|
|
.set pop
|
|
END(__timer_delete)
|
|
.hidden __timer_delete
|
|
|
|
ENTRY(timerfd_create)
|
|
.set push
|
|
.set noreorder
|
|
li $v0, __NR_timerfd_create
|
|
syscall
|
|
bnez $a3, 1f
|
|
move $a0, $v0
|
|
j $ra
|
|
nop
|
|
1:
|
|
move $t0, $ra
|
|
bal 2f
|
|
nop
|
|
2:
|
|
.cpsetup $ra, $t1, 2b
|
|
LA $t9, __set_errno_internal
|
|
.cpreturn
|
|
j $t9
|
|
move $ra, $t0
|
|
.set pop
|
|
END(timerfd_create)
|
|
|
|
ENTRY(timerfd_settime)
|
|
.set push
|
|
.set noreorder
|
|
li $v0, __NR_timerfd_settime
|
|
syscall
|
|
bnez $a3, 1f
|
|
move $a0, $v0
|
|
j $ra
|
|
nop
|
|
1:
|
|
move $t0, $ra
|
|
bal 2f
|
|
nop
|
|
2:
|
|
.cpsetup $ra, $t1, 2b
|
|
LA $t9, __set_errno_internal
|
|
.cpreturn
|
|
j $t9
|
|
move $ra, $t0
|
|
.set pop
|
|
END(timerfd_settime)
|
|
|
|
ENTRY(timerfd_gettime)
|
|
.set push
|
|
.set noreorder
|
|
li $v0, __NR_timerfd_gettime
|
|
syscall
|
|
bnez $a3, 1f
|
|
move $a0, $v0
|
|
j $ra
|
|
nop
|
|
1:
|
|
move $t0, $ra
|
|
bal 2f
|
|
nop
|
|
2:
|
|
.cpsetup $ra, $t1, 2b
|
|
LA $t9, __set_errno_internal
|
|
.cpreturn
|
|
j $t9
|
|
move $ra, $t0
|
|
.set pop
|
|
END(timerfd_gettime)
|
|
|
|
ENTRY(adjtimex)
|
|
.set push
|
|
.set noreorder
|
|
li $v0, __NR_adjtimex
|
|
syscall
|
|
bnez $a3, 1f
|
|
move $a0, $v0
|
|
j $ra
|
|
nop
|
|
1:
|
|
move $t0, $ra
|
|
bal 2f
|
|
nop
|
|
2:
|
|
.cpsetup $ra, $t1, 2b
|
|
LA $t9, __set_errno_internal
|
|
.cpreturn
|
|
j $t9
|
|
move $ra, $t0
|
|
.set pop
|
|
END(adjtimex)
|
|
|
|
ENTRY(clock_adjtime)
|
|
.set push
|
|
.set noreorder
|
|
li $v0, __NR_clock_adjtime
|
|
syscall
|
|
bnez $a3, 1f
|
|
move $a0, $v0
|
|
j $ra
|
|
nop
|
|
1:
|
|
move $t0, $ra
|
|
bal 2f
|
|
nop
|
|
2:
|
|
.cpsetup $ra, $t1, 2b
|
|
LA $t9, __set_errno_internal
|
|
.cpreturn
|
|
j $t9
|
|
move $ra, $t0
|
|
.set pop
|
|
END(clock_adjtime)
|
|
|
|
ENTRY(__rt_sigaction)
|
|
.set push
|
|
.set noreorder
|
|
li $v0, __NR_rt_sigaction
|
|
syscall
|
|
bnez $a3, 1f
|
|
move $a0, $v0
|
|
j $ra
|
|
nop
|
|
1:
|
|
move $t0, $ra
|
|
bal 2f
|
|
nop
|
|
2:
|
|
.cpsetup $ra, $t1, 2b
|
|
LA $t9, __set_errno_internal
|
|
.cpreturn
|
|
j $t9
|
|
move $ra, $t0
|
|
.set pop
|
|
END(__rt_sigaction)
|
|
.hidden __rt_sigaction
|
|
|
|
ENTRY(__rt_sigpending)
|
|
.set push
|
|
.set noreorder
|
|
li $v0, __NR_rt_sigpending
|
|
syscall
|
|
bnez $a3, 1f
|
|
move $a0, $v0
|
|
j $ra
|
|
nop
|
|
1:
|
|
move $t0, $ra
|
|
bal 2f
|
|
nop
|
|
2:
|
|
.cpsetup $ra, $t1, 2b
|
|
LA $t9, __set_errno_internal
|
|
.cpreturn
|
|
j $t9
|
|
move $ra, $t0
|
|
.set pop
|
|
END(__rt_sigpending)
|
|
.hidden __rt_sigpending
|
|
|
|
ENTRY(__rt_sigprocmask)
|
|
.set push
|
|
.set noreorder
|
|
li $v0, __NR_rt_sigprocmask
|
|
syscall
|
|
bnez $a3, 1f
|
|
move $a0, $v0
|
|
j $ra
|
|
nop
|
|
1:
|
|
move $t0, $ra
|
|
bal 2f
|
|
nop
|
|
2:
|
|
.cpsetup $ra, $t1, 2b
|
|
LA $t9, __set_errno_internal
|
|
.cpreturn
|
|
j $t9
|
|
move $ra, $t0
|
|
.set pop
|
|
END(__rt_sigprocmask)
|
|
.hidden __rt_sigprocmask
|
|
|
|
ENTRY(__rt_sigsuspend)
|
|
.set push
|
|
.set noreorder
|
|
li $v0, __NR_rt_sigsuspend
|
|
syscall
|
|
bnez $a3, 1f
|
|
move $a0, $v0
|
|
j $ra
|
|
nop
|
|
1:
|
|
move $t0, $ra
|
|
bal 2f
|
|
nop
|
|
2:
|
|
.cpsetup $ra, $t1, 2b
|
|
LA $t9, __set_errno_internal
|
|
.cpreturn
|
|
j $t9
|
|
move $ra, $t0
|
|
.set pop
|
|
END(__rt_sigsuspend)
|
|
.hidden __rt_sigsuspend
|
|
|
|
ENTRY(__rt_sigtimedwait)
|
|
.set push
|
|
.set noreorder
|
|
li $v0, __NR_rt_sigtimedwait
|
|
syscall
|
|
bnez $a3, 1f
|
|
move $a0, $v0
|
|
j $ra
|
|
nop
|
|
1:
|
|
move $t0, $ra
|
|
bal 2f
|
|
nop
|
|
2:
|
|
.cpsetup $ra, $t1, 2b
|
|
LA $t9, __set_errno_internal
|
|
.cpreturn
|
|
j $t9
|
|
move $ra, $t0
|
|
.set pop
|
|
END(__rt_sigtimedwait)
|
|
.hidden __rt_sigtimedwait
|
|
|
|
ENTRY(___rt_sigqueueinfo)
|
|
.set push
|
|
.set noreorder
|
|
li $v0, __NR_rt_sigqueueinfo
|
|
syscall
|
|
bnez $a3, 1f
|
|
move $a0, $v0
|
|
j $ra
|
|
nop
|
|
1:
|
|
move $t0, $ra
|
|
bal 2f
|
|
nop
|
|
2:
|
|
.cpsetup $ra, $t1, 2b
|
|
LA $t9, __set_errno_internal
|
|
.cpreturn
|
|
j $t9
|
|
move $ra, $t0
|
|
.set pop
|
|
END(___rt_sigqueueinfo)
|
|
.hidden ___rt_sigqueueinfo
|
|
|
|
ENTRY(__signalfd4)
|
|
.set push
|
|
.set noreorder
|
|
li $v0, __NR_signalfd4
|
|
syscall
|
|
bnez $a3, 1f
|
|
move $a0, $v0
|
|
j $ra
|
|
nop
|
|
1:
|
|
move $t0, $ra
|
|
bal 2f
|
|
nop
|
|
2:
|
|
.cpsetup $ra, $t1, 2b
|
|
LA $t9, __set_errno_internal
|
|
.cpreturn
|
|
j $t9
|
|
move $ra, $t0
|
|
.set pop
|
|
END(__signalfd4)
|
|
.hidden __signalfd4
|
|
|
|
ENTRY(__socket)
|
|
.set push
|
|
.set noreorder
|
|
li $v0, __NR_socket
|
|
syscall
|
|
bnez $a3, 1f
|
|
move $a0, $v0
|
|
j $ra
|
|
nop
|
|
1:
|
|
move $t0, $ra
|
|
bal 2f
|
|
nop
|
|
2:
|
|
.cpsetup $ra, $t1, 2b
|
|
LA $t9, __set_errno_internal
|
|
.cpreturn
|
|
j $t9
|
|
move $ra, $t0
|
|
.set pop
|
|
END(__socket)
|
|
.hidden __socket
|
|
|
|
ENTRY(socketpair)
|
|
.set push
|
|
.set noreorder
|
|
li $v0, __NR_socketpair
|
|
syscall
|
|
bnez $a3, 1f
|
|
move $a0, $v0
|
|
j $ra
|
|
nop
|
|
1:
|
|
move $t0, $ra
|
|
bal 2f
|
|
nop
|
|
2:
|
|
.cpsetup $ra, $t1, 2b
|
|
LA $t9, __set_errno_internal
|
|
.cpreturn
|
|
j $t9
|
|
move $ra, $t0
|
|
.set pop
|
|
END(socketpair)
|
|
|
|
ENTRY(bind)
|
|
.set push
|
|
.set noreorder
|
|
li $v0, __NR_bind
|
|
syscall
|
|
bnez $a3, 1f
|
|
move $a0, $v0
|
|
j $ra
|
|
nop
|
|
1:
|
|
move $t0, $ra
|
|
bal 2f
|
|
nop
|
|
2:
|
|
.cpsetup $ra, $t1, 2b
|
|
LA $t9, __set_errno_internal
|
|
.cpreturn
|
|
j $t9
|
|
move $ra, $t0
|
|
.set pop
|
|
END(bind)
|
|
|
|
ENTRY(__connect)
|
|
.set push
|
|
.set noreorder
|
|
li $v0, __NR_connect
|
|
syscall
|
|
bnez $a3, 1f
|
|
move $a0, $v0
|
|
j $ra
|
|
nop
|
|
1:
|
|
move $t0, $ra
|
|
bal 2f
|
|
nop
|
|
2:
|
|
.cpsetup $ra, $t1, 2b
|
|
LA $t9, __set_errno_internal
|
|
.cpreturn
|
|
j $t9
|
|
move $ra, $t0
|
|
.set pop
|
|
END(__connect)
|
|
.hidden __connect
|
|
|
|
ENTRY(listen)
|
|
.set push
|
|
.set noreorder
|
|
li $v0, __NR_listen
|
|
syscall
|
|
bnez $a3, 1f
|
|
move $a0, $v0
|
|
j $ra
|
|
nop
|
|
1:
|
|
move $t0, $ra
|
|
bal 2f
|
|
nop
|
|
2:
|
|
.cpsetup $ra, $t1, 2b
|
|
LA $t9, __set_errno_internal
|
|
.cpreturn
|
|
j $t9
|
|
move $ra, $t0
|
|
.set pop
|
|
END(listen)
|
|
|
|
ENTRY(__accept4)
|
|
.set push
|
|
.set noreorder
|
|
li $v0, __NR_accept4
|
|
syscall
|
|
bnez $a3, 1f
|
|
move $a0, $v0
|
|
j $ra
|
|
nop
|
|
1:
|
|
move $t0, $ra
|
|
bal 2f
|
|
nop
|
|
2:
|
|
.cpsetup $ra, $t1, 2b
|
|
LA $t9, __set_errno_internal
|
|
.cpreturn
|
|
j $t9
|
|
move $ra, $t0
|
|
.set pop
|
|
END(__accept4)
|
|
.hidden __accept4
|
|
|
|
ENTRY(getsockname)
|
|
.set push
|
|
.set noreorder
|
|
li $v0, __NR_getsockname
|
|
syscall
|
|
bnez $a3, 1f
|
|
move $a0, $v0
|
|
j $ra
|
|
nop
|
|
1:
|
|
move $t0, $ra
|
|
bal 2f
|
|
nop
|
|
2:
|
|
.cpsetup $ra, $t1, 2b
|
|
LA $t9, __set_errno_internal
|
|
.cpreturn
|
|
j $t9
|
|
move $ra, $t0
|
|
.set pop
|
|
END(getsockname)
|
|
|
|
ENTRY(getpeername)
|
|
.set push
|
|
.set noreorder
|
|
li $v0, __NR_getpeername
|
|
syscall
|
|
bnez $a3, 1f
|
|
move $a0, $v0
|
|
j $ra
|
|
nop
|
|
1:
|
|
move $t0, $ra
|
|
bal 2f
|
|
nop
|
|
2:
|
|
.cpsetup $ra, $t1, 2b
|
|
LA $t9, __set_errno_internal
|
|
.cpreturn
|
|
j $t9
|
|
move $ra, $t0
|
|
.set pop
|
|
END(getpeername)
|
|
|
|
ENTRY(sendto)
|
|
.set push
|
|
.set noreorder
|
|
li $v0, __NR_sendto
|
|
syscall
|
|
bnez $a3, 1f
|
|
move $a0, $v0
|
|
j $ra
|
|
nop
|
|
1:
|
|
move $t0, $ra
|
|
bal 2f
|
|
nop
|
|
2:
|
|
.cpsetup $ra, $t1, 2b
|
|
LA $t9, __set_errno_internal
|
|
.cpreturn
|
|
j $t9
|
|
move $ra, $t0
|
|
.set pop
|
|
END(sendto)
|
|
|
|
ENTRY(recvfrom)
|
|
.set push
|
|
.set noreorder
|
|
li $v0, __NR_recvfrom
|
|
syscall
|
|
bnez $a3, 1f
|
|
move $a0, $v0
|
|
j $ra
|
|
nop
|
|
1:
|
|
move $t0, $ra
|
|
bal 2f
|
|
nop
|
|
2:
|
|
.cpsetup $ra, $t1, 2b
|
|
LA $t9, __set_errno_internal
|
|
.cpreturn
|
|
j $t9
|
|
move $ra, $t0
|
|
.set pop
|
|
END(recvfrom)
|
|
|
|
ENTRY(shutdown)
|
|
.set push
|
|
.set noreorder
|
|
li $v0, __NR_shutdown
|
|
syscall
|
|
bnez $a3, 1f
|
|
move $a0, $v0
|
|
j $ra
|
|
nop
|
|
1:
|
|
move $t0, $ra
|
|
bal 2f
|
|
nop
|
|
2:
|
|
.cpsetup $ra, $t1, 2b
|
|
LA $t9, __set_errno_internal
|
|
.cpreturn
|
|
j $t9
|
|
move $ra, $t0
|
|
.set pop
|
|
END(shutdown)
|
|
|
|
ENTRY(setsockopt)
|
|
.set push
|
|
.set noreorder
|
|
li $v0, __NR_setsockopt
|
|
syscall
|
|
bnez $a3, 1f
|
|
move $a0, $v0
|
|
j $ra
|
|
nop
|
|
1:
|
|
move $t0, $ra
|
|
bal 2f
|
|
nop
|
|
2:
|
|
.cpsetup $ra, $t1, 2b
|
|
LA $t9, __set_errno_internal
|
|
.cpreturn
|
|
j $t9
|
|
move $ra, $t0
|
|
.set pop
|
|
END(setsockopt)
|
|
|
|
ENTRY(getsockopt)
|
|
.set push
|
|
.set noreorder
|
|
li $v0, __NR_getsockopt
|
|
syscall
|
|
bnez $a3, 1f
|
|
move $a0, $v0
|
|
j $ra
|
|
nop
|
|
1:
|
|
move $t0, $ra
|
|
bal 2f
|
|
nop
|
|
2:
|
|
.cpsetup $ra, $t1, 2b
|
|
LA $t9, __set_errno_internal
|
|
.cpreturn
|
|
j $t9
|
|
move $ra, $t0
|
|
.set pop
|
|
END(getsockopt)
|
|
|
|
ENTRY(recvmsg)
|
|
.set push
|
|
.set noreorder
|
|
li $v0, __NR_recvmsg
|
|
syscall
|
|
bnez $a3, 1f
|
|
move $a0, $v0
|
|
j $ra
|
|
nop
|
|
1:
|
|
move $t0, $ra
|
|
bal 2f
|
|
nop
|
|
2:
|
|
.cpsetup $ra, $t1, 2b
|
|
LA $t9, __set_errno_internal
|
|
.cpreturn
|
|
j $t9
|
|
move $ra, $t0
|
|
.set pop
|
|
END(recvmsg)
|
|
|
|
ENTRY(sendmsg)
|
|
.set push
|
|
.set noreorder
|
|
li $v0, __NR_sendmsg
|
|
syscall
|
|
bnez $a3, 1f
|
|
move $a0, $v0
|
|
j $ra
|
|
nop
|
|
1:
|
|
move $t0, $ra
|
|
bal 2f
|
|
nop
|
|
2:
|
|
.cpsetup $ra, $t1, 2b
|
|
LA $t9, __set_errno_internal
|
|
.cpreturn
|
|
j $t9
|
|
move $ra, $t0
|
|
.set pop
|
|
END(sendmsg)
|
|
|
|
ENTRY(recvmmsg)
|
|
.set push
|
|
.set noreorder
|
|
li $v0, __NR_recvmmsg
|
|
syscall
|
|
bnez $a3, 1f
|
|
move $a0, $v0
|
|
j $ra
|
|
nop
|
|
1:
|
|
move $t0, $ra
|
|
bal 2f
|
|
nop
|
|
2:
|
|
.cpsetup $ra, $t1, 2b
|
|
LA $t9, __set_errno_internal
|
|
.cpreturn
|
|
j $t9
|
|
move $ra, $t0
|
|
.set pop
|
|
END(recvmmsg)
|
|
|
|
ENTRY(sendmmsg)
|
|
.set push
|
|
.set noreorder
|
|
li $v0, __NR_sendmmsg
|
|
syscall
|
|
bnez $a3, 1f
|
|
move $a0, $v0
|
|
j $ra
|
|
nop
|
|
1:
|
|
move $t0, $ra
|
|
bal 2f
|
|
nop
|
|
2:
|
|
.cpsetup $ra, $t1, 2b
|
|
LA $t9, __set_errno_internal
|
|
.cpreturn
|
|
j $t9
|
|
move $ra, $t0
|
|
.set pop
|
|
END(sendmmsg)
|
|
|
|
ENTRY(sched_setscheduler)
|
|
.set push
|
|
.set noreorder
|
|
li $v0, __NR_sched_setscheduler
|
|
syscall
|
|
bnez $a3, 1f
|
|
move $a0, $v0
|
|
j $ra
|
|
nop
|
|
1:
|
|
move $t0, $ra
|
|
bal 2f
|
|
nop
|
|
2:
|
|
.cpsetup $ra, $t1, 2b
|
|
LA $t9, __set_errno_internal
|
|
.cpreturn
|
|
j $t9
|
|
move $ra, $t0
|
|
.set pop
|
|
END(sched_setscheduler)
|
|
|
|
ENTRY(sched_getscheduler)
|
|
.set push
|
|
.set noreorder
|
|
li $v0, __NR_sched_getscheduler
|
|
syscall
|
|
bnez $a3, 1f
|
|
move $a0, $v0
|
|
j $ra
|
|
nop
|
|
1:
|
|
move $t0, $ra
|
|
bal 2f
|
|
nop
|
|
2:
|
|
.cpsetup $ra, $t1, 2b
|
|
LA $t9, __set_errno_internal
|
|
.cpreturn
|
|
j $t9
|
|
move $ra, $t0
|
|
.set pop
|
|
END(sched_getscheduler)
|
|
|
|
ENTRY(sched_yield)
|
|
.set push
|
|
.set noreorder
|
|
li $v0, __NR_sched_yield
|
|
syscall
|
|
bnez $a3, 1f
|
|
move $a0, $v0
|
|
j $ra
|
|
nop
|
|
1:
|
|
move $t0, $ra
|
|
bal 2f
|
|
nop
|
|
2:
|
|
.cpsetup $ra, $t1, 2b
|
|
LA $t9, __set_errno_internal
|
|
.cpreturn
|
|
j $t9
|
|
move $ra, $t0
|
|
.set pop
|
|
END(sched_yield)
|
|
|
|
ENTRY(sched_setparam)
|
|
.set push
|
|
.set noreorder
|
|
li $v0, __NR_sched_setparam
|
|
syscall
|
|
bnez $a3, 1f
|
|
move $a0, $v0
|
|
j $ra
|
|
nop
|
|
1:
|
|
move $t0, $ra
|
|
bal 2f
|
|
nop
|
|
2:
|
|
.cpsetup $ra, $t1, 2b
|
|
LA $t9, __set_errno_internal
|
|
.cpreturn
|
|
j $t9
|
|
move $ra, $t0
|
|
.set pop
|
|
END(sched_setparam)
|
|
|
|
ENTRY(sched_getparam)
|
|
.set push
|
|
.set noreorder
|
|
li $v0, __NR_sched_getparam
|
|
syscall
|
|
bnez $a3, 1f
|
|
move $a0, $v0
|
|
j $ra
|
|
nop
|
|
1:
|
|
move $t0, $ra
|
|
bal 2f
|
|
nop
|
|
2:
|
|
.cpsetup $ra, $t1, 2b
|
|
LA $t9, __set_errno_internal
|
|
.cpreturn
|
|
j $t9
|
|
move $ra, $t0
|
|
.set pop
|
|
END(sched_getparam)
|
|
|
|
ENTRY(sched_get_priority_max)
|
|
.set push
|
|
.set noreorder
|
|
li $v0, __NR_sched_get_priority_max
|
|
syscall
|
|
bnez $a3, 1f
|
|
move $a0, $v0
|
|
j $ra
|
|
nop
|
|
1:
|
|
move $t0, $ra
|
|
bal 2f
|
|
nop
|
|
2:
|
|
.cpsetup $ra, $t1, 2b
|
|
LA $t9, __set_errno_internal
|
|
.cpreturn
|
|
j $t9
|
|
move $ra, $t0
|
|
.set pop
|
|
END(sched_get_priority_max)
|
|
|
|
ENTRY(sched_get_priority_min)
|
|
.set push
|
|
.set noreorder
|
|
li $v0, __NR_sched_get_priority_min
|
|
syscall
|
|
bnez $a3, 1f
|
|
move $a0, $v0
|
|
j $ra
|
|
nop
|
|
1:
|
|
move $t0, $ra
|
|
bal 2f
|
|
nop
|
|
2:
|
|
.cpsetup $ra, $t1, 2b
|
|
LA $t9, __set_errno_internal
|
|
.cpreturn
|
|
j $t9
|
|
move $ra, $t0
|
|
.set pop
|
|
END(sched_get_priority_min)
|
|
|
|
ENTRY(sched_rr_get_interval)
|
|
.set push
|
|
.set noreorder
|
|
li $v0, __NR_sched_rr_get_interval
|
|
syscall
|
|
bnez $a3, 1f
|
|
move $a0, $v0
|
|
j $ra
|
|
nop
|
|
1:
|
|
move $t0, $ra
|
|
bal 2f
|
|
nop
|
|
2:
|
|
.cpsetup $ra, $t1, 2b
|
|
LA $t9, __set_errno_internal
|
|
.cpreturn
|
|
j $t9
|
|
move $ra, $t0
|
|
.set pop
|
|
END(sched_rr_get_interval)
|
|
|
|
ENTRY(sched_setaffinity)
|
|
.set push
|
|
.set noreorder
|
|
li $v0, __NR_sched_setaffinity
|
|
syscall
|
|
bnez $a3, 1f
|
|
move $a0, $v0
|
|
j $ra
|
|
nop
|
|
1:
|
|
move $t0, $ra
|
|
bal 2f
|
|
nop
|
|
2:
|
|
.cpsetup $ra, $t1, 2b
|
|
LA $t9, __set_errno_internal
|
|
.cpreturn
|
|
j $t9
|
|
move $ra, $t0
|
|
.set pop
|
|
END(sched_setaffinity)
|
|
|
|
ENTRY(setns)
|
|
.set push
|
|
.set noreorder
|
|
li $v0, __NR_setns
|
|
syscall
|
|
bnez $a3, 1f
|
|
move $a0, $v0
|
|
j $ra
|
|
nop
|
|
1:
|
|
move $t0, $ra
|
|
bal 2f
|
|
nop
|
|
2:
|
|
.cpsetup $ra, $t1, 2b
|
|
LA $t9, __set_errno_internal
|
|
.cpreturn
|
|
j $t9
|
|
move $ra, $t0
|
|
.set pop
|
|
END(setns)
|
|
|
|
ENTRY(unshare)
|
|
.set push
|
|
.set noreorder
|
|
li $v0, __NR_unshare
|
|
syscall
|
|
bnez $a3, 1f
|
|
move $a0, $v0
|
|
j $ra
|
|
nop
|
|
1:
|
|
move $t0, $ra
|
|
bal 2f
|
|
nop
|
|
2:
|
|
.cpsetup $ra, $t1, 2b
|
|
LA $t9, __set_errno_internal
|
|
.cpreturn
|
|
j $t9
|
|
move $ra, $t0
|
|
.set pop
|
|
END(unshare)
|
|
|
|
ENTRY(__sched_getaffinity)
|
|
.set push
|
|
.set noreorder
|
|
li $v0, __NR_sched_getaffinity
|
|
syscall
|
|
bnez $a3, 1f
|
|
move $a0, $v0
|
|
j $ra
|
|
nop
|
|
1:
|
|
move $t0, $ra
|
|
bal 2f
|
|
nop
|
|
2:
|
|
.cpsetup $ra, $t1, 2b
|
|
LA $t9, __set_errno_internal
|
|
.cpreturn
|
|
j $t9
|
|
move $ra, $t0
|
|
.set pop
|
|
END(__sched_getaffinity)
|
|
.hidden __sched_getaffinity
|
|
|
|
ENTRY(__getcpu)
|
|
.set push
|
|
.set noreorder
|
|
li $v0, __NR_getcpu
|
|
syscall
|
|
bnez $a3, 1f
|
|
move $a0, $v0
|
|
j $ra
|
|
nop
|
|
1:
|
|
move $t0, $ra
|
|
bal 2f
|
|
nop
|
|
2:
|
|
.cpsetup $ra, $t1, 2b
|
|
LA $t9, __set_errno_internal
|
|
.cpreturn
|
|
j $t9
|
|
move $ra, $t0
|
|
.set pop
|
|
END(__getcpu)
|
|
.hidden __getcpu
|
|
|
|
ENTRY(uname)
|
|
.set push
|
|
.set noreorder
|
|
li $v0, __NR_uname
|
|
syscall
|
|
bnez $a3, 1f
|
|
move $a0, $v0
|
|
j $ra
|
|
nop
|
|
1:
|
|
move $t0, $ra
|
|
bal 2f
|
|
nop
|
|
2:
|
|
.cpsetup $ra, $t1, 2b
|
|
LA $t9, __set_errno_internal
|
|
.cpreturn
|
|
j $t9
|
|
move $ra, $t0
|
|
.set pop
|
|
END(uname)
|
|
|
|
ENTRY(umask)
|
|
.set push
|
|
.set noreorder
|
|
li $v0, __NR_umask
|
|
syscall
|
|
bnez $a3, 1f
|
|
move $a0, $v0
|
|
j $ra
|
|
nop
|
|
1:
|
|
move $t0, $ra
|
|
bal 2f
|
|
nop
|
|
2:
|
|
.cpsetup $ra, $t1, 2b
|
|
LA $t9, __set_errno_internal
|
|
.cpreturn
|
|
j $t9
|
|
move $ra, $t0
|
|
.set pop
|
|
END(umask)
|
|
|
|
ENTRY(__reboot)
|
|
.set push
|
|
.set noreorder
|
|
li $v0, __NR_reboot
|
|
syscall
|
|
bnez $a3, 1f
|
|
move $a0, $v0
|
|
j $ra
|
|
nop
|
|
1:
|
|
move $t0, $ra
|
|
bal 2f
|
|
nop
|
|
2:
|
|
.cpsetup $ra, $t1, 2b
|
|
LA $t9, __set_errno_internal
|
|
.cpreturn
|
|
j $t9
|
|
move $ra, $t0
|
|
.set pop
|
|
END(__reboot)
|
|
.hidden __reboot
|
|
|
|
ENTRY(init_module)
|
|
.set push
|
|
.set noreorder
|
|
li $v0, __NR_init_module
|
|
syscall
|
|
bnez $a3, 1f
|
|
move $a0, $v0
|
|
j $ra
|
|
nop
|
|
1:
|
|
move $t0, $ra
|
|
bal 2f
|
|
nop
|
|
2:
|
|
.cpsetup $ra, $t1, 2b
|
|
LA $t9, __set_errno_internal
|
|
.cpreturn
|
|
j $t9
|
|
move $ra, $t0
|
|
.set pop
|
|
END(init_module)
|
|
|
|
ENTRY(delete_module)
|
|
.set push
|
|
.set noreorder
|
|
li $v0, __NR_delete_module
|
|
syscall
|
|
bnez $a3, 1f
|
|
move $a0, $v0
|
|
j $ra
|
|
nop
|
|
1:
|
|
move $t0, $ra
|
|
bal 2f
|
|
nop
|
|
2:
|
|
.cpsetup $ra, $t1, 2b
|
|
LA $t9, __set_errno_internal
|
|
.cpreturn
|
|
j $t9
|
|
move $ra, $t0
|
|
.set pop
|
|
END(delete_module)
|
|
|
|
ENTRY(klogctl)
|
|
.set push
|
|
.set noreorder
|
|
li $v0, __NR_syslog
|
|
syscall
|
|
bnez $a3, 1f
|
|
move $a0, $v0
|
|
j $ra
|
|
nop
|
|
1:
|
|
move $t0, $ra
|
|
bal 2f
|
|
nop
|
|
2:
|
|
.cpsetup $ra, $t1, 2b
|
|
LA $t9, __set_errno_internal
|
|
.cpreturn
|
|
j $t9
|
|
move $ra, $t0
|
|
.set pop
|
|
END(klogctl)
|
|
|
|
ENTRY(sysinfo)
|
|
.set push
|
|
.set noreorder
|
|
li $v0, __NR_sysinfo
|
|
syscall
|
|
bnez $a3, 1f
|
|
move $a0, $v0
|
|
j $ra
|
|
nop
|
|
1:
|
|
move $t0, $ra
|
|
bal 2f
|
|
nop
|
|
2:
|
|
.cpsetup $ra, $t1, 2b
|
|
LA $t9, __set_errno_internal
|
|
.cpreturn
|
|
j $t9
|
|
move $ra, $t0
|
|
.set pop
|
|
END(sysinfo)
|
|
|
|
ENTRY(personality)
|
|
.set push
|
|
.set noreorder
|
|
li $v0, __NR_personality
|
|
syscall
|
|
bnez $a3, 1f
|
|
move $a0, $v0
|
|
j $ra
|
|
nop
|
|
1:
|
|
move $t0, $ra
|
|
bal 2f
|
|
nop
|
|
2:
|
|
.cpsetup $ra, $t1, 2b
|
|
LA $t9, __set_errno_internal
|
|
.cpreturn
|
|
j $t9
|
|
move $ra, $t0
|
|
.set pop
|
|
END(personality)
|
|
|
|
ENTRY(tee)
|
|
.set push
|
|
.set noreorder
|
|
li $v0, __NR_tee
|
|
syscall
|
|
bnez $a3, 1f
|
|
move $a0, $v0
|
|
j $ra
|
|
nop
|
|
1:
|
|
move $t0, $ra
|
|
bal 2f
|
|
nop
|
|
2:
|
|
.cpsetup $ra, $t1, 2b
|
|
LA $t9, __set_errno_internal
|
|
.cpreturn
|
|
j $t9
|
|
move $ra, $t0
|
|
.set pop
|
|
END(tee)
|
|
|
|
ENTRY(splice)
|
|
.set push
|
|
.set noreorder
|
|
li $v0, __NR_splice
|
|
syscall
|
|
bnez $a3, 1f
|
|
move $a0, $v0
|
|
j $ra
|
|
nop
|
|
1:
|
|
move $t0, $ra
|
|
bal 2f
|
|
nop
|
|
2:
|
|
.cpsetup $ra, $t1, 2b
|
|
LA $t9, __set_errno_internal
|
|
.cpreturn
|
|
j $t9
|
|
move $ra, $t0
|
|
.set pop
|
|
END(splice)
|
|
|
|
ENTRY(vmsplice)
|
|
.set push
|
|
.set noreorder
|
|
li $v0, __NR_vmsplice
|
|
syscall
|
|
bnez $a3, 1f
|
|
move $a0, $v0
|
|
j $ra
|
|
nop
|
|
1:
|
|
move $t0, $ra
|
|
bal 2f
|
|
nop
|
|
2:
|
|
.cpsetup $ra, $t1, 2b
|
|
LA $t9, __set_errno_internal
|
|
.cpreturn
|
|
j $t9
|
|
move $ra, $t0
|
|
.set pop
|
|
END(vmsplice)
|
|
|
|
ENTRY(epoll_create1)
|
|
.set push
|
|
.set noreorder
|
|
li $v0, __NR_epoll_create1
|
|
syscall
|
|
bnez $a3, 1f
|
|
move $a0, $v0
|
|
j $ra
|
|
nop
|
|
1:
|
|
move $t0, $ra
|
|
bal 2f
|
|
nop
|
|
2:
|
|
.cpsetup $ra, $t1, 2b
|
|
LA $t9, __set_errno_internal
|
|
.cpreturn
|
|
j $t9
|
|
move $ra, $t0
|
|
.set pop
|
|
END(epoll_create1)
|
|
|
|
ENTRY(epoll_ctl)
|
|
.set push
|
|
.set noreorder
|
|
li $v0, __NR_epoll_ctl
|
|
syscall
|
|
bnez $a3, 1f
|
|
move $a0, $v0
|
|
j $ra
|
|
nop
|
|
1:
|
|
move $t0, $ra
|
|
bal 2f
|
|
nop
|
|
2:
|
|
.cpsetup $ra, $t1, 2b
|
|
LA $t9, __set_errno_internal
|
|
.cpreturn
|
|
j $t9
|
|
move $ra, $t0
|
|
.set pop
|
|
END(epoll_ctl)
|
|
|
|
ENTRY(__epoll_pwait)
|
|
.set push
|
|
.set noreorder
|
|
li $v0, __NR_epoll_pwait
|
|
syscall
|
|
bnez $a3, 1f
|
|
move $a0, $v0
|
|
j $ra
|
|
nop
|
|
1:
|
|
move $t0, $ra
|
|
bal 2f
|
|
nop
|
|
2:
|
|
.cpsetup $ra, $t1, 2b
|
|
LA $t9, __set_errno_internal
|
|
.cpreturn
|
|
j $t9
|
|
move $ra, $t0
|
|
.set pop
|
|
END(__epoll_pwait)
|
|
.hidden __epoll_pwait
|
|
|
|
ENTRY(eventfd)
|
|
.set push
|
|
.set noreorder
|
|
li $v0, __NR_eventfd2
|
|
syscall
|
|
bnez $a3, 1f
|
|
move $a0, $v0
|
|
j $ra
|
|
nop
|
|
1:
|
|
move $t0, $ra
|
|
bal 2f
|
|
nop
|
|
2:
|
|
.cpsetup $ra, $t1, 2b
|
|
LA $t9, __set_errno_internal
|
|
.cpreturn
|
|
j $t9
|
|
move $ra, $t0
|
|
.set pop
|
|
END(eventfd)
|
|
|
|
ENTRY(_exit)
|
|
.set push
|
|
.set noreorder
|
|
li $v0, __NR_exit_group
|
|
syscall
|
|
bnez $a3, 1f
|
|
move $a0, $v0
|
|
j $ra
|
|
nop
|
|
1:
|
|
move $t0, $ra
|
|
bal 2f
|
|
nop
|
|
2:
|
|
.cpsetup $ra, $t1, 2b
|
|
LA $t9, __set_errno_internal
|
|
.cpreturn
|
|
j $t9
|
|
move $ra, $t0
|
|
.set pop
|
|
END(_exit)
|
|
|
|
ALIAS_SYMBOL(_Exit, _exit)
|
|
|
|
ENTRY(__exit)
|
|
.set push
|
|
.set noreorder
|
|
li $v0, __NR_exit
|
|
syscall
|
|
bnez $a3, 1f
|
|
move $a0, $v0
|
|
j $ra
|
|
nop
|
|
1:
|
|
move $t0, $ra
|
|
bal 2f
|
|
nop
|
|
2:
|
|
.cpsetup $ra, $t1, 2b
|
|
LA $t9, __set_errno_internal
|
|
.cpreturn
|
|
j $t9
|
|
move $ra, $t0
|
|
.set pop
|
|
END(__exit)
|
|
.hidden __exit
|
|
|
|
ENTRY(inotify_init1)
|
|
.set push
|
|
.set noreorder
|
|
li $v0, __NR_inotify_init1
|
|
syscall
|
|
bnez $a3, 1f
|
|
move $a0, $v0
|
|
j $ra
|
|
nop
|
|
1:
|
|
move $t0, $ra
|
|
bal 2f
|
|
nop
|
|
2:
|
|
.cpsetup $ra, $t1, 2b
|
|
LA $t9, __set_errno_internal
|
|
.cpreturn
|
|
j $t9
|
|
move $ra, $t0
|
|
.set pop
|
|
END(inotify_init1)
|
|
|
|
ENTRY(inotify_add_watch)
|
|
.set push
|
|
.set noreorder
|
|
li $v0, __NR_inotify_add_watch
|
|
syscall
|
|
bnez $a3, 1f
|
|
move $a0, $v0
|
|
j $ra
|
|
nop
|
|
1:
|
|
move $t0, $ra
|
|
bal 2f
|
|
nop
|
|
2:
|
|
.cpsetup $ra, $t1, 2b
|
|
LA $t9, __set_errno_internal
|
|
.cpreturn
|
|
j $t9
|
|
move $ra, $t0
|
|
.set pop
|
|
END(inotify_add_watch)
|
|
|
|
ENTRY(inotify_rm_watch)
|
|
.set push
|
|
.set noreorder
|
|
li $v0, __NR_inotify_rm_watch
|
|
syscall
|
|
bnez $a3, 1f
|
|
move $a0, $v0
|
|
j $ra
|
|
nop
|
|
1:
|
|
move $t0, $ra
|
|
bal 2f
|
|
nop
|
|
2:
|
|
.cpsetup $ra, $t1, 2b
|
|
LA $t9, __set_errno_internal
|
|
.cpreturn
|
|
j $t9
|
|
move $ra, $t0
|
|
.set pop
|
|
END(inotify_rm_watch)
|
|
|
|
ENTRY(__pselect6)
|
|
.set push
|
|
.set noreorder
|
|
li $v0, __NR_pselect6
|
|
syscall
|
|
bnez $a3, 1f
|
|
move $a0, $v0
|
|
j $ra
|
|
nop
|
|
1:
|
|
move $t0, $ra
|
|
bal 2f
|
|
nop
|
|
2:
|
|
.cpsetup $ra, $t1, 2b
|
|
LA $t9, __set_errno_internal
|
|
.cpreturn
|
|
j $t9
|
|
move $ra, $t0
|
|
.set pop
|
|
END(__pselect6)
|
|
.hidden __pselect6
|
|
|
|
ENTRY(__ppoll)
|
|
.set push
|
|
.set noreorder
|
|
li $v0, __NR_ppoll
|
|
syscall
|
|
bnez $a3, 1f
|
|
move $a0, $v0
|
|
j $ra
|
|
nop
|
|
1:
|
|
move $t0, $ra
|
|
bal 2f
|
|
nop
|
|
2:
|
|
.cpsetup $ra, $t1, 2b
|
|
LA $t9, __set_errno_internal
|
|
.cpreturn
|
|
j $t9
|
|
move $ra, $t0
|
|
.set pop
|
|
END(__ppoll)
|
|
.hidden __ppoll
|
|
|
|
ENTRY(process_vm_readv)
|
|
.set push
|
|
.set noreorder
|
|
li $v0, __NR_process_vm_readv
|
|
syscall
|
|
bnez $a3, 1f
|
|
move $a0, $v0
|
|
j $ra
|
|
nop
|
|
1:
|
|
move $t0, $ra
|
|
bal 2f
|
|
nop
|
|
2:
|
|
.cpsetup $ra, $t1, 2b
|
|
LA $t9, __set_errno_internal
|
|
.cpreturn
|
|
j $t9
|
|
move $ra, $t0
|
|
.set pop
|
|
END(process_vm_readv)
|
|
|
|
ENTRY(process_vm_writev)
|
|
.set push
|
|
.set noreorder
|
|
li $v0, __NR_process_vm_writev
|
|
syscall
|
|
bnez $a3, 1f
|
|
move $a0, $v0
|
|
j $ra
|
|
nop
|
|
1:
|
|
move $t0, $ra
|
|
bal 2f
|
|
nop
|
|
2:
|
|
.cpsetup $ra, $t1, 2b
|
|
LA $t9, __set_errno_internal
|
|
.cpreturn
|
|
j $t9
|
|
move $ra, $t0
|
|
.set pop
|
|
END(process_vm_writev)
|
|
|
|
ENTRY(quotactl)
|
|
.set push
|
|
.set noreorder
|
|
li $v0, __NR_quotactl
|
|
syscall
|
|
bnez $a3, 1f
|
|
move $a0, $v0
|
|
j $ra
|
|
nop
|
|
1:
|
|
move $t0, $ra
|
|
bal 2f
|
|
nop
|
|
2:
|
|
.cpsetup $ra, $t1, 2b
|
|
LA $t9, __set_errno_internal
|
|
.cpreturn
|
|
j $t9
|
|
move $ra, $t0
|
|
.set pop
|
|
END(quotactl)
|
|
|
|
ENTRY(__set_tid_address)
|
|
.set push
|
|
.set noreorder
|
|
li $v0, __NR_set_tid_address
|
|
syscall
|
|
bnez $a3, 1f
|
|
move $a0, $v0
|
|
j $ra
|
|
nop
|
|
1:
|
|
move $t0, $ra
|
|
bal 2f
|
|
nop
|
|
2:
|
|
.cpsetup $ra, $t1, 2b
|
|
LA $t9, __set_errno_internal
|
|
.cpreturn
|
|
j $t9
|
|
move $ra, $t0
|
|
.set pop
|
|
END(__set_tid_address)
|
|
.hidden __set_tid_address
|
|
|
|
ENTRY(setfsgid)
|
|
.set push
|
|
.set noreorder
|
|
li $v0, __NR_setfsgid
|
|
syscall
|
|
bnez $a3, 1f
|
|
move $a0, $v0
|
|
j $ra
|
|
nop
|
|
1:
|
|
move $t0, $ra
|
|
bal 2f
|
|
nop
|
|
2:
|
|
.cpsetup $ra, $t1, 2b
|
|
LA $t9, __set_errno_internal
|
|
.cpreturn
|
|
j $t9
|
|
move $ra, $t0
|
|
.set pop
|
|
END(setfsgid)
|
|
|
|
ENTRY(setfsuid)
|
|
.set push
|
|
.set noreorder
|
|
li $v0, __NR_setfsuid
|
|
syscall
|
|
bnez $a3, 1f
|
|
move $a0, $v0
|
|
j $ra
|
|
nop
|
|
1:
|
|
move $t0, $ra
|
|
bal 2f
|
|
nop
|
|
2:
|
|
.cpsetup $ra, $t1, 2b
|
|
LA $t9, __set_errno_internal
|
|
.cpreturn
|
|
j $t9
|
|
move $ra, $t0
|
|
.set pop
|
|
END(setfsuid)
|
|
|
|
ENTRY(setdomainname)
|
|
.set push
|
|
.set noreorder
|
|
li $v0, __NR_setdomainname
|
|
syscall
|
|
bnez $a3, 1f
|
|
move $a0, $v0
|
|
j $ra
|
|
nop
|
|
1:
|
|
move $t0, $ra
|
|
bal 2f
|
|
nop
|
|
2:
|
|
.cpsetup $ra, $t1, 2b
|
|
LA $t9, __set_errno_internal
|
|
.cpreturn
|
|
j $t9
|
|
move $ra, $t0
|
|
.set pop
|
|
END(setdomainname)
|
|
|
|
ENTRY(sethostname)
|
|
.set push
|
|
.set noreorder
|
|
li $v0, __NR_sethostname
|
|
syscall
|
|
bnez $a3, 1f
|
|
move $a0, $v0
|
|
j $ra
|
|
nop
|
|
1:
|
|
move $t0, $ra
|
|
bal 2f
|
|
nop
|
|
2:
|
|
.cpsetup $ra, $t1, 2b
|
|
LA $t9, __set_errno_internal
|
|
.cpreturn
|
|
j $t9
|
|
move $ra, $t0
|
|
.set pop
|
|
END(sethostname)
|
|
|
|
ENTRY(__sync_file_range)
|
|
.set push
|
|
.set noreorder
|
|
li $v0, __NR_sync_file_range
|
|
syscall
|
|
bnez $a3, 1f
|
|
move $a0, $v0
|
|
j $ra
|
|
nop
|
|
1:
|
|
move $t0, $ra
|
|
bal 2f
|
|
nop
|
|
2:
|
|
.cpsetup $ra, $t1, 2b
|
|
LA $t9, __set_errno_internal
|
|
.cpreturn
|
|
j $t9
|
|
move $ra, $t0
|
|
.set pop
|
|
END(__sync_file_range)
|
|
.hidden __sync_file_range
|
|
|
|
ENTRY(wait4)
|
|
.set push
|
|
.set noreorder
|
|
li $v0, __NR_wait4
|
|
syscall
|
|
bnez $a3, 1f
|
|
move $a0, $v0
|
|
j $ra
|
|
nop
|
|
1:
|
|
move $t0, $ra
|
|
bal 2f
|
|
nop
|
|
2:
|
|
.cpsetup $ra, $t1, 2b
|
|
LA $t9, __set_errno_internal
|
|
.cpreturn
|
|
j $t9
|
|
move $ra, $t0
|
|
.set pop
|
|
END(wait4)
|
|
|
|
ENTRY(__waitid)
|
|
.set push
|
|
.set noreorder
|
|
li $v0, __NR_waitid
|
|
syscall
|
|
bnez $a3, 1f
|
|
move $a0, $v0
|
|
j $ra
|
|
nop
|
|
1:
|
|
move $t0, $ra
|
|
bal 2f
|
|
nop
|
|
2:
|
|
.cpsetup $ra, $t1, 2b
|
|
LA $t9, __set_errno_internal
|
|
.cpreturn
|
|
j $t9
|
|
move $ra, $t0
|
|
.set pop
|
|
END(__waitid)
|
|
.hidden __waitid
|
|
|
|
ENTRY(__set_tls)
|
|
.set push
|
|
.set noreorder
|
|
li $v0, __NR_set_thread_area
|
|
syscall
|
|
bnez $a3, 1f
|
|
move $a0, $v0
|
|
j $ra
|
|
nop
|
|
1:
|
|
move $t0, $ra
|
|
bal 2f
|
|
nop
|
|
2:
|
|
.cpsetup $ra, $t1, 2b
|
|
LA $t9, __set_errno_internal
|
|
.cpreturn
|
|
j $t9
|
|
move $ra, $t0
|
|
.set pop
|
|
END(__set_tls)
|
|
.hidden __set_tls
|
|
|
|
ENTRY(__clock_getres)
|
|
.set push
|
|
.set noreorder
|
|
li $v0, __NR_clock_getres
|
|
syscall
|
|
bnez $a3, 1f
|
|
move $a0, $v0
|
|
j $ra
|
|
nop
|
|
1:
|
|
move $t0, $ra
|
|
bal 2f
|
|
nop
|
|
2:
|
|
.cpsetup $ra, $t1, 2b
|
|
LA $t9, __set_errno_internal
|
|
.cpreturn
|
|
j $t9
|
|
move $ra, $t0
|
|
.set pop
|
|
END(__clock_getres)
|
|
.hidden __clock_getres
|
|
|
|
ENTRY(__clock_gettime)
|
|
.set push
|
|
.set noreorder
|
|
li $v0, __NR_clock_gettime
|
|
syscall
|
|
bnez $a3, 1f
|
|
move $a0, $v0
|
|
j $ra
|
|
nop
|
|
1:
|
|
move $t0, $ra
|
|
bal 2f
|
|
nop
|
|
2:
|
|
.cpsetup $ra, $t1, 2b
|
|
LA $t9, __set_errno_internal
|
|
.cpreturn
|
|
j $t9
|
|
move $ra, $t0
|
|
.set pop
|
|
END(__clock_gettime)
|
|
.hidden __clock_gettime
|
|
|
|
ENTRY(__gettimeofday)
|
|
.set push
|
|
.set noreorder
|
|
li $v0, __NR_gettimeofday
|
|
syscall
|
|
bnez $a3, 1f
|
|
move $a0, $v0
|
|
j $ra
|
|
nop
|
|
1:
|
|
move $t0, $ra
|
|
bal 2f
|
|
nop
|
|
2:
|
|
.cpsetup $ra, $t1, 2b
|
|
LA $t9, __set_errno_internal
|
|
.cpreturn
|
|
j $t9
|
|
move $ra, $t0
|
|
.set pop
|
|
END(__gettimeofday)
|
|
.hidden __gettimeofday
|
|
|
|
ENTRY(getrandom)
|
|
.set push
|
|
.set noreorder
|
|
li $v0, __NR_getrandom
|
|
syscall
|
|
bnez $a3, 1f
|
|
move $a0, $v0
|
|
j $ra
|
|
nop
|
|
1:
|
|
move $t0, $ra
|
|
bal 2f
|
|
nop
|
|
2:
|
|
.cpsetup $ra, $t1, 2b
|
|
LA $t9, __set_errno_internal
|
|
.cpreturn
|
|
j $t9
|
|
move $ra, $t0
|
|
.set pop
|
|
END(getrandom)
|