git://scm.lunaixsky.com
/
lunaix-os.git
/ blob
commit
grep
author
committer
pickaxe
?
search:
re
3ff23e27adc6463df2d75beb436b481ffeb3b6dd
[lunaix-os.git]
/
lunaix-os
/
usr
/
libc
/
arch
/
i386
/
trampoline.S
1
#include <lunaix/syscallid.h>
2
3
.section .text
4
.global sigtrampoline
5
sigtrampoline:
6
movl %esp, %eax
7
andl $0xfffffff0, %esp
8
pushl %eax
9
10
leal 4(%eax), %eax
11
pushl %eax
12
pushl $0
13
pushl -4(%eax)
14
call sig_dohandling
15
16
addl $12, %esp
17
18
movl $__SYSCALL_sigreturn, %eax
19
popl %ebx
20
int $33
21
22
.global th_trampoline
23
th_trampoline:
24
movl (%esp), %eax
25
movl 4(%esp), %ebx
26
pushl %ebx
27
28
calll *%eax
29
30
movl %eax, %ebx
31
movl $__SYSCALL_th_exit, %eax
32
int $33