summaryrefslogtreecommitdiffstats
path: root/lib/libc/sparc64
diff options
context:
space:
mode:
authorkmacy <kmacy@FreeBSD.org>2006-11-03 23:43:18 +0000
committerkmacy <kmacy@FreeBSD.org>2006-11-03 23:43:18 +0000
commit73954d8d2247ed8b2cef305851a4edf742210415 (patch)
tree73d5e89e699c029e4a8962c58d8ab082bd84a975 /lib/libc/sparc64
parent78fce1a4a66554d3f9032c176e3fd9d071385816 (diff)
downloadFreeBSD-src-73954d8d2247ed8b2cef305851a4edf742210415.zip
FreeBSD-src-73954d8d2247ed8b2cef305851a4edf742210415.tar.gz
- change ABI for user trap handler for sun4v (eventually will sync sparc64 no
hardware set up to test at the moment) Approved by: scottl (standing in for mentor rwatson)
Diffstat (limited to 'lib/libc/sparc64')
-rw-r--r--lib/libc/sparc64/sys/Makefile.inc3
-rw-r--r--lib/libc/sparc64/sys/__sparc_utrap_gen.S4
2 files changed, 7 insertions, 0 deletions
diff --git a/lib/libc/sparc64/sys/Makefile.inc b/lib/libc/sparc64/sys/Makefile.inc
index f677df1..8e5901e 100644
--- a/lib/libc/sparc64/sys/Makefile.inc
+++ b/lib/libc/sparc64/sys/Makefile.inc
@@ -11,6 +11,9 @@ SRCS+= __sparc_sigtramp_setup.c \
sigcode.S
CFLAGS+= -I${.CURDIR}/sparc64/fpu
+.if ${MACHINE} == "sun4v"
+CFLAGS+= -DSUN4V
+.endif
MDASM+= brk.S cerror.S exect.S pipe.S ptrace.S sbrk.S setlogin.S sigaction.S
diff --git a/lib/libc/sparc64/sys/__sparc_utrap_gen.S b/lib/libc/sparc64/sys/__sparc_utrap_gen.S
index 6f6f0e3..4fb128d 100644
--- a/lib/libc/sparc64/sys/__sparc_utrap_gen.S
+++ b/lib/libc/sparc64/sys/__sparc_utrap_gen.S
@@ -38,6 +38,10 @@ __FBSDID("$FreeBSD$");
#include "assym.s"
ENTRY(__sparc_utrap_gen)
+#ifdef SUN4V
+ save
+ ta %xcc, ST_FPEMU_CONTEXT
+#endif
sub %sp, UF_SIZEOF, %sp
stx %o0, [%sp + SPOFF + CCFSZ + UF_TYPE]
OpenPOWER on IntegriCloud