summaryrefslogtreecommitdiffstats
path: root/sys/powerpc
diff options
context:
space:
mode:
authorgrehan <grehan@FreeBSD.org>2002-09-19 04:36:44 +0000
committergrehan <grehan@FreeBSD.org>2002-09-19 04:36:44 +0000
commit58abd18efafa6b9bdfce74d288224e96544b1ca9 (patch)
treeb53de8a1c87b4dea9b310f0edeb54b9a8eeacbbb /sys/powerpc
parent57116e76b88e8d8c569eabf5acf89b656ffac5a3 (diff)
downloadFreeBSD-src-58abd18efafa6b9bdfce74d288224e96544b1ca9.zip
FreeBSD-src-58abd18efafa6b9bdfce74d288224e96544b1ca9.tar.gz
- use symbol for user-context offset
- fix szsigcode size declaration Approved by: benno
Diffstat (limited to 'sys/powerpc')
-rw-r--r--sys/powerpc/powerpc/sigcode.S9
1 files changed, 7 insertions, 2 deletions
diff --git a/sys/powerpc/powerpc/sigcode.S b/sys/powerpc/powerpc/sigcode.S
index 4c1caee..5dad434 100644
--- a/sys/powerpc/powerpc/sigcode.S
+++ b/sys/powerpc/powerpc/sigcode.S
@@ -34,6 +34,7 @@
#include <machine/asm.h>
#include <sys/syscall.h>
+#include "assym.s"
/*
* The following code gets copied to the top of the user stack on process
@@ -46,9 +47,13 @@
CNAME(sigcode):
addi 1,1,-16 /* reserved space for callee */
blrl
- addi 3,1,16+8 /* compute &sf_sc */
+ addi 3,1,16+SF_UC /* restore sp, and get &frame->sf_uc */
li 0,SYS_sigreturn
sc /* sigreturn(scp) */
li 0,SYS_exit
sc /* exit(errno) */
-CNAME(szsigcode) = . - CNAME(sigcode)
+endsigcode:
+
+ .data
+CNAME(szsigcode):
+ .long endsigcode - CNAME(sigcode)
OpenPOWER on IntegriCloud