1/* SPDX-License-Identifier: GPL-2.0 */
2#include <asm/unistd.h>
3
4 .text
5 .balign 32
6 .globl __kernel_sigreturn
7 .type __kernel_sigreturn,@function
8__kernel_sigreturn:
9.LSTART_sigreturn:
10 mov.w 1f, r3
11 trapa #0x10
12 or r0, r0
13 or r0, r0
14 or r0, r0
15 or r0, r0
16 or r0, r0
17
181: .short __NR_sigreturn
19.LEND_sigreturn:
20 .size __kernel_sigreturn,.-.LSTART_sigreturn
21
22 .balign 32
23 .globl __kernel_rt_sigreturn
24 .type __kernel_rt_sigreturn,@function
25__kernel_rt_sigreturn:
26.LSTART_rt_sigreturn:
27 mov.w 1f, r3
28 trapa #0x10
29 or r0, r0
30 or r0, r0
31 or r0, r0
32 or r0, r0
33 or r0, r0
34
351: .short __NR_rt_sigreturn
36.LEND_rt_sigreturn:
37 .size __kernel_rt_sigreturn,.-.LSTART_rt_sigreturn
38 .previous
39
40 .section .eh_frame,"a",@progbits
41.LCIE1:
42 .ualong .LCIE1_end - .LCIE1_start
43.LCIE1_start:
44 .ualong 0 /* CIE ID */
45 .byte 0x1 /* Version number */
46 .string "zRS" /* NUL-terminated augmentation string */
47 .uleb128 0x1 /* Code alignment factor */
48 .sleb128 -4 /* Data alignment factor */
49 .byte 0x11 /* Return address register column */
50 .uleb128 0x1 /* Augmentation length and data */
51 .byte 0x1b /* DW_EH_PE_pcrel | DW_EH_PE_sdata4. */
52 .byte 0xc, 0xf, 0x0 /* DW_CFA_def_cfa: r15 ofs 0 */
53
54 .align 2
55.LCIE1_end:
56
57 .ualong .LFDE0_end-.LFDE0_start /* Length FDE0 */
58.LFDE0_start:
59 .ualong .LFDE0_start-.LCIE1 /* CIE pointer */
60 .ualong .LSTART_sigreturn-. /* PC-relative start address */
61 .ualong .LEND_sigreturn-.LSTART_sigreturn
62 .uleb128 0 /* Augmentation */
63 .align 2
64.LFDE0_end:
65
66 .ualong .LFDE1_end-.LFDE1_start /* Length FDE1 */
67.LFDE1_start:
68 .ualong .LFDE1_start-.LCIE1 /* CIE pointer */
69 .ualong .LSTART_rt_sigreturn-. /* PC-relative start address */
70 .ualong .LEND_rt_sigreturn-.LSTART_rt_sigreturn
71 .uleb128 0 /* Augmentation */
72 .align 2
73.LFDE1_end:
74
75 .previous
76

source code of linux/arch/sh/kernel/vsyscall/vsyscall-sigreturn.S