| /* SPDX-License-Identifier: GPL-2.0 */ |
| /* |
| * This file provides both A32 and T32 versions, in accordance with the |
| * arm sigreturn code. |
| * |
| * Copyright (C) 2018 ARM Limited |
| */ |
| |
| #include <linux/linkage.h> |
| #include <asm/asm-offsets.h> |
| #include <asm/unistd.h> |
| |
| .text |
| |
| .arm |
| .fnstart |
| .save {r0-r15} |
| .pad #COMPAT_SIGFRAME_REGS_OFFSET |
| nop |
| SYM_FUNC_START(__kernel_sigreturn_arm) |
| mov r7, #__NR_compat_sigreturn |
| svc #0 |
| .fnend |
| SYM_FUNC_END(__kernel_sigreturn_arm) |
| |
| .fnstart |
| .save {r0-r15} |
| .pad #COMPAT_RT_SIGFRAME_REGS_OFFSET |
| nop |
| SYM_FUNC_START(__kernel_rt_sigreturn_arm) |
| mov r7, #__NR_compat_rt_sigreturn |
| svc #0 |
| .fnend |
| SYM_FUNC_END(__kernel_rt_sigreturn_arm) |
| |
| .thumb |
| .fnstart |
| .save {r0-r15} |
| .pad #COMPAT_SIGFRAME_REGS_OFFSET |
| nop |
| SYM_FUNC_START(__kernel_sigreturn_thumb) |
| mov r7, #__NR_compat_sigreturn |
| svc #0 |
| .fnend |
| SYM_FUNC_END(__kernel_sigreturn_thumb) |
| |
| .fnstart |
| .save {r0-r15} |
| .pad #COMPAT_RT_SIGFRAME_REGS_OFFSET |
| nop |
| SYM_FUNC_START(__kernel_rt_sigreturn_thumb) |
| mov r7, #__NR_compat_rt_sigreturn |
| svc #0 |
| .fnend |
| SYM_FUNC_END(__kernel_rt_sigreturn_thumb) |