-/* $OpenBSD: locore.S,v 1.142 2023/12/10 16:56:01 deraadt Exp $ */
+/* $OpenBSD: locore.S,v 1.143 2023/12/12 07:37:20 deraadt Exp $ */
/* $NetBSD: locore.S,v 1.13 2004/03/25 18:33:17 drochner Exp $ */
/*
syscall
.globl sigcoderet
sigcoderet:
- movq $SYS_exit,%rax
- syscall
- _ALIGN_TRAPS
+ int3
1: JMP_RETPOLINE(rax)
.globl esigcode
esigcode:
-
.globl sigfill
sigfill:
int3
-/* $OpenBSD: sigcode.S,v 1.13 2023/12/10 16:56:01 deraadt Exp $ */
+/* $OpenBSD: sigcode.S,v 1.14 2023/12/12 07:37:20 deraadt Exp $ */
/* $NetBSD: sigcode.S,v 1.6 2003/10/05 19:44:58 matt Exp $ */
/*
isb
.globl sigcoderet
sigcoderet:
- /* Well if that failed we better exit quick ! */
- mov r12, #SYS_exit
- swi 0
- dsb nsh
- isb
.global esigcode
esigcode:
-
+ /* FALLTHROUGH */
.globl sigfill
sigfill:
udf #0
-/* $OpenBSD: locore.S,v 1.44 2023/12/10 16:56:01 deraadt Exp $ */
+/* $OpenBSD: locore.S,v 1.45 2023/12/12 07:37:20 deraadt Exp $ */
/*-
* Copyright (c) 2012-2014 Andrew Turner
* All rights reserved.
isb
.globl sigcoderet
sigcoderet:
-
- /* sigreturn failed, exit */
- mov x8, #SYS_exit
- svc 0
- dsb nsh
- isb
END(sigcode)
.global esigcode
esigcode:
-
+ /* FALLTHROUGH */
.globl sigfill
sigfill:
udf #0
-/* $OpenBSD: locore.S,v 1.206 2023/12/10 16:56:01 deraadt Exp $ */
+/* $OpenBSD: locore.S,v 1.207 2023/12/12 07:37:20 deraadt Exp $ */
/*
* Copyright (c) 1998-2004 Michael Shalayeff
ldi SYS_sigreturn, t1
.globl sigcoderet
sigcoderet:
-
- ldil L%SYSCALLGATE, r1
- copy ret0, arg0
- .call
- ble 4(sr7, r1)
- ldi SYS_exit, t1
+ break 0,0
ALTENTRY(esigcode)
-EXIT(sigcode)
+EXIT(sigcode)
.globl sigfill
sigfill:
break 0,0
-/* $OpenBSD: locore.s,v 1.203 2023/12/10 16:56:01 deraadt Exp $ */
+/* $OpenBSD: locore.s,v 1.204 2023/12/12 07:37:20 deraadt Exp $ */
/* $NetBSD: locore.s,v 1.145 1996/05/03 19:41:19 christos Exp $ */
/*-
int $0x80 # enter kernel with args on stack
.globl sigcoderet
sigcoderet:
- movl $SYS_exit,%eax
- int $0x80 # exit if sigreturn fails
.globl esigcode
esigcode:
-
+ /* FALLTHROUGH */
.globl sigfill
sigfill:
int3
-/* $OpenBSD: subr.S,v 1.30 2023/12/10 16:56:01 deraadt Exp $ */
+/* $OpenBSD: subr.S,v 1.31 2023/12/12 07:37:21 deraadt Exp $ */
/*
* Mach Operating System
* Copyright (c) 1993-1992 Carnegie Mellon University
#ifdef dontbother /* sigreturn will not return unless it fails */
NOP | success return
#endif
- or %r13, %r0, SYS_exit
- tb0 0, %r0, 450 /* syscall trap, exit */
- /*
- * this never returns, but we need to provide fetchable instructions
- * for the 88100 pipeline.
- */
- NOP
- NOP
GLOBAL(esigcode)
-
+ /* FALLTHROUGH */
GLOBAL(sigfill)
tb0 0, %r0, 130 /* breakpoint */
GLOBAL(sigfillsiz)
-/* $OpenBSD: locore.S,v 1.63 2023/12/10 16:56:01 deraadt Exp $ */
+/* $OpenBSD: locore.S,v 1.64 2023/12/12 07:37:21 deraadt Exp $ */
/* $NetBSD: locore.S,v 1.2 1996/10/16 19:33:09 ws Exp $ */
/*
sc /* sigreturn(scp) */
.globl sigcoderet
sigcoderet:
- li %r0,SYS_exit
- sc /* exit(errno) */
esigcode:
-
+ /* FALLTHROUGH */
.globl sigfill
sigfill:
.long 0 # illegal
-/* $OpenBSD: lcore_access.S,v 1.35 2023/12/10 16:56:01 deraadt Exp $ */
+/* $OpenBSD: lcore_access.S,v 1.36 2023/12/12 07:37:21 deraadt Exp $ */
/*
* Copyright (c) 2001-2003 Opsycon AB (www.opsycon.se / www.opsycon.com)
syscall
.globl sigcoderet
sigcoderet:
- LI v0, SYS_exit # just in case sigreturn fails
- syscall
.globl esigcode
esigcode:
-
+ /* FALLTHROUGH */
.globl sigfill
sigfill:
teq zero, zero, 0x52
-/* $OpenBSD: locore.S,v 1.47 2023/12/10 16:56:01 deraadt Exp $ */
+/* $OpenBSD: locore.S,v 1.48 2023/12/12 07:37:21 deraadt Exp $ */
/*
* Copyright (c) 2020 Mark Kettenis <kettenis@openbsd.org>
sc
.globl sigcoderet
sigcoderet:
- li %r0, SYS_exit
- sc
.globl esigcode
esigcode:
-
+ /* FALLTHROUGH */
.globl sigfill
sigfill:
.long 0
-/* $OpenBSD: locore.S,v 1.16 2023/12/10 16:56:02 deraadt Exp $ */
+/* $OpenBSD: locore.S,v 1.17 2023/12/12 07:37:21 deraadt Exp $ */
/*-
* Copyright (c) 2015-2018 Ruslan Bukin <br@bsdpad.com>
.space USPACE
initstack_end:
- .globl sigfill
-sigfill:
- unimp
-esigfill:
- .globl sigfillsiz
-sigfillsiz:
- .data
- .word esigfill - sigfill
-
.text
ENTRY(sigcode)
mv a0, sp
ecall
.globl sigcoderet
sigcoderet:
- /* sigreturn failed, exit */
- li t0, SYS_exit
- ecall
+ unimp
END(sigcode)
.globl esigcode
esigcode:
+ .globl sigfill
+sigfill:
+ unimp
+esigfill:
+ .globl sigfillsiz
+sigfillsiz:
+ .data
+ .word esigfill - sigfill
+
.data
.global esym
esym:
-/* $OpenBSD: locore_subr.S,v 1.18 2023/12/10 16:56:02 deraadt Exp $ */
+/* $OpenBSD: locore_subr.S,v 1.19 2023/12/12 07:37:21 deraadt Exp $ */
/* $NetBSD: locore_subr.S,v 1.28 2006/01/23 22:52:09 uwe Exp $ */
/*
#include "assym.h"
-#include <sys/syscall.h> /* SYS_sigreturn, SYS_exit */
+#include <sys/syscall.h> /* SYS_sigreturn */
#include <sh/asm.h>
#include <sh/locore.h>
#include <sh/param.h> /* UPAGES */
trapa #0x80 /* and call sigreturn() */
.globl sigcoderet
sigcoderet:
- mov.l .L_SYS_exit, r0
- trapa #0x80 /* exit if sigreturn fails */
+ sleep /* privileged -> illegal? */
/* NOTREACHED */
.align 2
.L_SYS_sigreturn: .long SYS_sigreturn
-.L_SYS_exit: .long SYS_exit
/* LINTSTUB: Var: char esigcode[1] */
.globl esigcode
-/* $OpenBSD: locore.s,v 1.203 2023/12/10 16:56:02 deraadt Exp $ */
+/* $OpenBSD: locore.s,v 1.204 2023/12/12 07:37:21 deraadt Exp $ */
/* $NetBSD: locore.s,v 1.137 2001/08/13 06:10:10 jdolecek Exp $ */
/*
sigcodecall:
t ST_SYSCALL ! sigreturn(scp)
! sigreturn does not return unless it fails
- mov SYS_exit, %g1 ! exit(errno)
- t ST_SYSCALL
.globl esigcode
esigcode:
-
+ /* FALLTHROUGH */
.globl sigfill
sigfill:
unimp