Lines Matching +full:25 +full:- +full:18
1 /* SPDX-License-Identifier: GPL-2.0 */
5 * Kernel entry-points.
8 #include <asm/asm-offsets.h>
34 .cfi_rel_offset $18, 40
39 .size \func, . - \func
43 * This defines the normal kernel pt-regs layout.
45 * regs 9-15 preserved by C code
46 * regs 16-18 saved by PAL-code
47 * regs 29-30 saved and set up by PAL-code
48 * JRP - Save regs 16-18 in a special area of the stack, so that
49 * the palcode-provided values are available to the signal handler.
79 stq $25, 120($sp)
85 stq $18, 176($sp)
96 .cfi_rel_offset $25, 120
125 ldq $25, 120($sp)
145 .cfi_restore $25
149 .cfi_adjust_cfa_offset -SP_OFF
174 .cfi_adjust_cfa_offset -SWITCH_STACK_SIZE
178 * Non-syscall kernel entry points.
195 mov $sp, $18
201 /* save $9 - $15 so the inline exception code can manipulate them. */
239 .cfi_adjust_cfa_offset -56
254 lda $sp, -256($sp)
265 bne $0, entUnaUser /* yup -> do user-level unaligned fault */
277 /* 16-18 PAL-saved */
284 stq $25, 200($sp)
311 .cfi_rel_offset $25, 25*8
336 /* 16-18 PAL-saved */
343 ldq $25, 200($sp)
370 .cfi_restore $25
375 .cfi_adjust_cfa_offset -256
384 .cfi_adjust_cfa_offset -256
386 lda $sp, -56($sp)
421 .cfi_adjust_cfa_offset -56
442 * Note that a0-a2 are not saved by PALcode as with the other entry points.
465 stq $18, SP_OFF+40($sp)
468 .cfi_rel_offset $18, SP_OFF+40
485 cmovne $26, 0, $18 /* $18 = 0 => non-restartable */
517 ldq $18, 0($sp) /* old syscall nr (zero if success) */
518 beq $18, $ret_success
539 * $18: The old syscall number, or zero if this is not a return
554 * restarts for us, so let $18 and $19 burn.
557 mov 0, $18
582 ldq $18, SP_OFF+40($sp)
612 ldq $18, 0($sp) /* old syscall nr (zero if success) */
613 beq $18, $strace_success
622 mov $18, $9 /* save old syscall number */
625 mov $9, $18
634 * Save and restore the switch stack -- aka the balance of the user context.
644 lda $sp, -SWITCH_STACK_SIZE($sp)
690 .size do_switch_stack, .-do_switch_stack
742 .size undo_switch_stack, .-undo_switch_stack
761 .size alpha_switch_to, .-alpha_switch_to
777 * ... and new kernel threads - here
823 lda $sp, -SWITCH_STACK_SIZE($sp)
845 Store a non-zero there - -ENOSYS we need in register
848 lda $0, -ENOSYS