]> CyberLeo.Net >> Repos - FreeBSD/FreeBSD.git/blob - sys/i386/linux/linux_locore.s
unfinished sblive driver, playback/mixer only for now - not enabled in
[FreeBSD/FreeBSD.git] / sys / i386 / linux / linux_locore.s
1 /* $FreeBSD$ */
2
3 #include "linux_assym.h"                        /* system definitions */
4 #include <machine/asmacros.h>           /* miscellaneous asm macros */
5
6 #include <i386/linux/linux_syscall.h>           /* system call numbers */
7
8 NON_GPROF_ENTRY(linux_sigcode)
9         call    LINUX_SIGF_HANDLER(%esp)
10         leal    LINUX_SIGF_SC(%esp),%ebx        /* linux scp */
11         movl    LINUX_SC_GS(%ebx),%gs
12         push    %eax                            /* fake ret addr */
13         movl    $LINUX_SYS_linux_sigreturn,%eax /* linux_sigreturn() */
14         int     $0x80                           /* enter kernel with args */
15 0:      jmp     0b
16         ALIGN_TEXT
17 _linux_esigcode:
18
19         .data
20         .globl  _linux_szsigcode
21 _linux_szsigcode:
22         .long   _linux_esigcode-_linux_sigcode
23
24         .text