28 lines
405 B
ArmAsm
28 lines
405 B
ArmAsm
! execve.S
|
|
! This function is invoked by the other exec*() fns.
|
|
!
|
|
! If sizeof(char *) == 64, we invoke a new Shade function until the real one
|
|
! is defined.
|
|
|
|
#include "sys/syscallasm.h"
|
|
|
|
TEXT_SECTION
|
|
ALIGN (4)
|
|
GLOBAL (ASM_SYMBOL (execve))
|
|
ASM_SYMBOL (execve):
|
|
mov SYS_execve,%g1
|
|
#if TARGET_PTR_SIZE == 64
|
|
ta 42
|
|
#else
|
|
ta SYSCALL_TRAP
|
|
#endif
|
|
|
|
bcc noerr
|
|
nop
|
|
|
|
seterrno()
|
|
|
|
noerr:
|
|
jmpl %o7+8,%g0
|
|
nop
|