1
2
3
4
5
6
7
8
9 #include <linux/linkage.h>
10 #include <asm/asm-offsets.h>
11 #include <asm/unistd.h>
12
13 #define ARM_ENTRY(name) \
14 ENTRY(name)
15
16 #define ARM_ENDPROC(name) \
17 .type name, %function; \
18 END(name)
19
20 .text
21
22 .arm
23 .fnstart
24 .save {r0-r15}
25 .pad #COMPAT_SIGFRAME_REGS_OFFSET
26 nop
27 ARM_ENTRY(__kernel_sigreturn_arm)
28 mov r7, #__NR_compat_sigreturn
29 svc #0
30 .fnend
31 ARM_ENDPROC(__kernel_sigreturn_arm)
32
33 .fnstart
34 .save {r0-r15}
35 .pad #COMPAT_RT_SIGFRAME_REGS_OFFSET
36 nop
37 ARM_ENTRY(__kernel_rt_sigreturn_arm)
38 mov r7, #__NR_compat_rt_sigreturn
39 svc #0
40 .fnend
41 ARM_ENDPROC(__kernel_rt_sigreturn_arm)
42
43 .thumb
44 .fnstart
45 .save {r0-r15}
46 .pad #COMPAT_SIGFRAME_REGS_OFFSET
47 nop
48 ARM_ENTRY(__kernel_sigreturn_thumb)
49 mov r7, #__NR_compat_sigreturn
50 svc #0
51 .fnend
52 ARM_ENDPROC(__kernel_sigreturn_thumb)
53
54 .fnstart
55 .save {r0-r15}
56 .pad #COMPAT_RT_SIGFRAME_REGS_OFFSET
57 nop
58 ARM_ENTRY(__kernel_rt_sigreturn_thumb)
59 mov r7, #__NR_compat_rt_sigreturn
60 svc #0
61 .fnend
62 ARM_ENDPROC(__kernel_rt_sigreturn_thumb)