Lines Matching +full:architecturally +full:- +full:defined

1 /* SPDX-License-Identifier: GPL-2.0-only */
5 * Copyright (C) 1996-2003 Russell King
24 #include <linux/irqchip/arm-gic-v3-prio.h>
35 /* AArch32-specific ptrace requests */
68 #define PSR_AA32_IT_MASK 0x0600fc00 /* If-Then execution state mask */
90 * a syscall -- i.e., its most recent entry into the kernel from
93 * This must have the value -1, for ABI compatibility with ptrace etc.
95 #define NO_SYSCALL (-1)
106 /* Architecturally defined mapping between AArch32 and AArch64 registers */
179 return regs->syscallno != NO_SYSCALL; in in_syscall()
184 regs->syscallno = NO_SYSCALL; in forget_syscall()
193 (((regs)->pstate & PSR_AA32_T_BIT))
199 (((regs)->pstate & PSR_MODE_MASK) == PSR_MODE_EL0t)
202 (((regs)->pstate & (PSR_MODE32_BIT | PSR_MODE_MASK)) == \
206 ((regs)->pstate & PSR_MODE_MASK)
210 (regs)->pmr == GIC_PRIO_IRQON : \
215 return (regs->pstate & PSR_I_BIT) || !irqs_priority_unmasked(regs); in regs_irqs_disabled()
223 return regs->compat_sp; in user_stack_pointer()
224 return regs->sp; in user_stack_pointer()
232 * regs_get_register() - get register value from its offset
249 val = regs->regs[offset]; in regs_get_register()
252 val = regs->sp; in regs_get_register()
255 val = regs->pc; in regs_get_register()
258 val = regs->pstate; in regs_get_register()
273 return (r == 31) ? 0 : regs->regs[r]; in pt_regs_read_reg()
284 regs->regs[r] = val; in pt_regs_write_reg()
290 return regs->sp; in kernel_stack_pointer()
295 unsigned long val = regs->regs[0]; in regs_return_value()
299 * syscall_get_return_value(). Apply the same sign-extension here until in regs_return_value()
310 regs->regs[0] = rc; in regs_set_return_value()
314 * regs_get_kernel_argument() - get Nth function argument in kernel
341 return regs->pc; in instruction_pointer()
346 regs->pc = val; in instruction_pointer_set()
351 return regs->regs[29]; in frame_pointer()
354 #define procedure_link_pointer(regs) ((regs)->regs[30])