[Zrouter-src-freebsd] ZRouter.org: push to FreeBSD HEAD tree
zrouter-src-freebsd at zrouter.org
zrouter-src-freebsd at zrouter.org
Wed Feb 1 10:56:17 UTC 2012
details: http://zrouter.org/hg/FreeBSD/head//rev/3316ea33d242
changeset: 301:3316ea33d242
user: ray at terran.dlink.ua
date: Wed Feb 01 11:29:01 2012 +0200
description:
Update powerpc platform code
diffstat:
head/sys/powerpc/aim/locore64.S | 6 +++---
head/sys/powerpc/aim/mmu_oea64.c | 9 ++++++++-
head/sys/powerpc/aim/swtch64.S | 11 ++++++-----
head/sys/powerpc/aim/trap_subr64.S | 4 ++--
head/sys/powerpc/booke/machdep.c | 7 ++++++-
head/sys/powerpc/include/_types.h | 4 ++--
head/sys/powerpc/include/asm.h | 26 +++++++++++++++++++++++---
head/sys/powerpc/include/float.h | 27 +++++++++++++++++++++------
head/sys/powerpc/include/profile.h | 3 ++-
head/sys/powerpc/ofw/ofw_machdep.c | 6 +++---
head/sys/powerpc/ofw/ofwcall64.S | 6 +++---
head/sys/powerpc/powermac/macio.c | 4 ++--
head/sys/powerpc/powerpc/atomic.S | 18 +++++++++---------
head/sys/powerpc/powerpc/setjmp.S | 6 +++---
14 files changed, 93 insertions(+), 44 deletions(-)
diffs (507 lines):
diff -r 6b8317170ea4 -r 3316ea33d242 head/sys/powerpc/aim/locore64.S
--- a/head/sys/powerpc/aim/locore64.S Wed Feb 01 11:28:20 2012 +0200
+++ b/head/sys/powerpc/aim/locore64.S Wed Feb 01 11:29:01 2012 +0200
@@ -1,4 +1,4 @@
-/* $FreeBSD: head/sys/powerpc/aim/locore64.S 224216 2011-07-19 12:41:57Z attilio $ */
+/* $FreeBSD: head/sys/powerpc/aim/locore64.S 230400 2012-01-20 22:34:19Z andreast $ */
/* $NetBSD: locore.S,v 1.24 2000/05/31 05:09:17 thorpej Exp $ */
/*-
@@ -115,7 +115,7 @@
* segment!
*/
.text
-ASENTRY(__start)
+ASENTRY_NOPROF(__start)
li 8,0
li 9,0x100
mtctr 9
@@ -202,7 +202,7 @@
* or the (currently used) C code optimized, so it doesn't use any non-volatile
* registers.
*/
-ASENTRY(setfault)
+ASENTRY_NOPROF(setfault)
mflr 0
mfcr 12
mfsprg 4,0
diff -r 6b8317170ea4 -r 3316ea33d242 head/sys/powerpc/aim/mmu_oea64.c
--- a/head/sys/powerpc/aim/mmu_oea64.c Wed Feb 01 11:28:20 2012 +0200
+++ b/head/sys/powerpc/aim/mmu_oea64.c Wed Feb 01 11:29:01 2012 +0200
@@ -91,7 +91,7 @@
*/
#include <sys/cdefs.h>
-__FBSDID("$FreeBSD: head/sys/powerpc/aim/mmu_oea64.c 228522 2011-12-15 05:07:16Z alc $");
+__FBSDID("$FreeBSD: head/sys/powerpc/aim/mmu_oea64.c 230779 2012-01-30 19:31:17Z kib $");
/*
* Manages physical address maps.
@@ -114,6 +114,7 @@
* correct.
*/
+#include "opt_compat.h"
#include "opt_kstack_pages.h"
#include <sys/param.h>
@@ -1445,6 +1446,8 @@
return (void *)va;
}
+extern int elf32_nxstack;
+
void
moea64_init(mmu_t mmu)
{
@@ -1464,6 +1467,10 @@
uma_zone_set_allocf(moea64_mpvo_zone,moea64_uma_page_alloc);
}
+#ifdef COMPAT_FREEBSD32
+ elf32_nxstack = 1;
+#endif
+
moea64_initialized = TRUE;
}
diff -r 6b8317170ea4 -r 3316ea33d242 head/sys/powerpc/aim/swtch64.S
--- a/head/sys/powerpc/aim/swtch64.S Wed Feb 01 11:28:20 2012 +0200
+++ b/head/sys/powerpc/aim/swtch64.S Wed Feb 01 11:29:01 2012 +0200
@@ -1,4 +1,4 @@
-/* $FreeBSD: head/sys/powerpc/aim/swtch64.S 223485 2011-06-23 22:21:28Z nwhitehorn $ */
+/* $FreeBSD: head/sys/powerpc/aim/swtch64.S 230400 2012-01-20 22:34:19Z andreast $ */
/* $NetBSD: locore.S,v 1.24 2000/05/31 05:09:17 thorpej Exp $ */
/*-
@@ -68,7 +68,7 @@
/*
* void cpu_throw(struct thread *old, struct thread *new)
*/
-ENTRY(cpu_throw)
+ENTRY_NOPROF(cpu_throw)
mr %r13, %r4
b cpu_switchin
@@ -79,7 +79,7 @@
*
* Switch to a new thread saving the current state in the old thread.
*/
-ENTRY(cpu_switch)
+ENTRY_NOPROF(cpu_switch)
ld %r6,TD_PCB(%r3) /* Get the old thread's PCB ptr */
std %r12,PCB_CONTEXT(%r6) /* Save the non-volatile GP regs.
These can now be used for scratch */
@@ -237,7 +237,7 @@
* savectx(pcb)
* Update pcb, saving current processor state
*/
-ENTRY(savectx)
+ENTRY_NOPROF(savectx)
std %r12,PCB_CONTEXT(%r3) /* Save the non-volatile GP regs. */
std %r13,PCB_CONTEXT+1*8(%r3)
std %r14,PCB_CONTEXT+2*8(%r3)
@@ -268,7 +268,8 @@
* fork_trampoline()
* Set up the return from cpu_fork()
*/
-ENTRY(fork_trampoline)
+
+ENTRY_NOPROF(fork_trampoline)
ld %r3,CF_FUNC(%r1)
ld %r4,CF_ARG0(%r1)
ld %r5,CF_ARG1(%r1)
diff -r 6b8317170ea4 -r 3316ea33d242 head/sys/powerpc/aim/trap_subr64.S
--- a/head/sys/powerpc/aim/trap_subr64.S Wed Feb 01 11:28:20 2012 +0200
+++ b/head/sys/powerpc/aim/trap_subr64.S Wed Feb 01 11:29:01 2012 +0200
@@ -1,4 +1,4 @@
-/* $FreeBSD: head/sys/powerpc/aim/trap_subr64.S 230123 2012-01-15 00:08:14Z nwhitehorn $ */
+/* $FreeBSD: head/sys/powerpc/aim/trap_subr64.S 230400 2012-01-20 22:34:19Z andreast $ */
/* $NetBSD: trap_subr.S,v 1.20 2002/04/22 23:20:08 kleink Exp $ */
/*-
@@ -703,7 +703,7 @@
/*
* Deliberate entry to dbtrap
*/
-ASENTRY(breakpoint)
+ASENTRY_NOPROF(breakpoint)
mtsprg1 %r1
mfmsr %r3
mtsrr1 %r3
diff -r 6b8317170ea4 -r 3316ea33d242 head/sys/powerpc/booke/machdep.c
--- a/head/sys/powerpc/booke/machdep.c Wed Feb 01 11:28:20 2012 +0200
+++ b/head/sys/powerpc/booke/machdep.c Wed Feb 01 11:29:01 2012 +0200
@@ -79,7 +79,7 @@
*/
#include <sys/cdefs.h>
-__FBSDID("$FreeBSD: head/sys/powerpc/booke/machdep.c 222400 2011-05-28 04:10:44Z marcel $");
+__FBSDID("$FreeBSD: head/sys/powerpc/booke/machdep.c 230767 2012-01-30 07:56:00Z kib $");
#include "opt_compat.h"
#include "opt_ddb.h"
@@ -192,6 +192,8 @@
void print_kenv(void);
u_int booke_init(uint32_t, uint32_t);
+extern int elf32_nxstack;
+
static void
cpu_e500_startup(void *dummy)
{
@@ -227,6 +229,9 @@
/* Set up buffers, so they can be used to read disk labels. */
bufinit();
vm_pager_bufferinit();
+
+ /* Cpu supports execution permissions on the pages. */
+ elf32_nxstack = 1;
}
static char *
diff -r 6b8317170ea4 -r 3316ea33d242 head/sys/powerpc/include/_types.h
--- a/head/sys/powerpc/include/_types.h Wed Feb 01 11:28:20 2012 +0200
+++ b/head/sys/powerpc/include/_types.h Wed Feb 01 11:29:01 2012 +0200
@@ -33,7 +33,7 @@
*
* From: @(#)ansi.h 8.2 (Berkeley) 1/4/94
* From: @(#)types.h 8.3 (Berkeley) 1/5/94
- * $FreeBSD: head/sys/powerpc/include/_types.h 228469 2011-12-13 13:38:03Z ed $
+ * $FreeBSD: head/sys/powerpc/include/_types.h 230229 2012-01-16 20:17:51Z das $
*/
#ifndef _MACHINE__TYPES_H_
@@ -73,7 +73,7 @@
*/
typedef __uint32_t __clock_t; /* clock()... */
typedef double __double_t;
-typedef double __float_t;
+typedef float __float_t;
#ifdef __LP64__
typedef __int64_t __critical_t;
typedef __int64_t __intfptr_t;
diff -r 6b8317170ea4 -r 3316ea33d242 head/sys/powerpc/include/asm.h
--- a/head/sys/powerpc/include/asm.h Wed Feb 01 11:28:20 2012 +0200
+++ b/head/sys/powerpc/include/asm.h Wed Feb 01 11:29:01 2012 +0200
@@ -29,7 +29,7 @@
* ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
*
* $NetBSD: asm.h,v 1.6.18.1 2000/07/25 08:37:14 kleink Exp $
- * $FreeBSD$
+ * $FreeBSD: head/sys/powerpc/include/asm.h 230400 2012-01-20 22:34:19Z andreast $
*/
#ifndef _MACHINE_ASM_H_
@@ -76,15 +76,35 @@
#endif
#if defined(PROF) || (defined(_KERNEL) && defined(GPROF))
-# define _PROF_PROLOGUE mflr 0; stw 0,4(1); bl _mcount
+# ifdef __powerpc64__
+# define _PROF_PROLOGUE mflr 0; \
+ std 3,48(1); \
+ std 4,56(1); \
+ std 5,64(1); \
+ std 0,16(1); \
+ stdu 1,-112(1); \
+ bl _mcount; \
+ nop; \
+ ld 0,112+16(1); \
+ ld 3,112+48(1); \
+ ld 4,112+56(1); \
+ ld 5,112+64(1); \
+ mtlr 0; \
+ addi 1,1,112
+# else
+# define _PROF_PROLOGUE mflr 0; stw 0,4(1); bl _mcount
+# endif
#else
# define _PROF_PROLOGUE
#endif
+#define ASENTRY(y) _ENTRY(ASMNAME(y)); _PROF_PROLOGUE
#define ENTRY(y) _ENTRY(CNAME(y)); _PROF_PROLOGUE
-#define ASENTRY(y) _ENTRY(ASMNAME(y)); _PROF_PROLOGUE
#define GLOBAL(y) _GLOBAL(CNAME(y))
+#define ASENTRY_NOPROF(y) _ENTRY(ASMNAME(y))
+#define ENTRY_NOPROF(y) _ENTRY(CNAME(y))
+
#define ASMSTR .asciz
#define RCSID(x) .text; .asciz x
diff -r 6b8317170ea4 -r 3316ea33d242 head/sys/powerpc/include/float.h
--- a/head/sys/powerpc/include/float.h Wed Feb 01 11:28:20 2012 +0200
+++ b/head/sys/powerpc/include/float.h Wed Feb 01 11:29:01 2012 +0200
@@ -28,7 +28,7 @@
*
* from: @(#)float.h 7.1 (Berkeley) 5/8/90
* from: FreeBSD: src/sys/i386/include/float.h,v 1.8 1999/08/28 00:44:11
- * $FreeBSD$
+ * $FreeBSD: head/sys/powerpc/include/float.h 230475 2012-01-23 06:36:41Z das $
*/
#ifndef _MACHINE_FLOAT_H_
@@ -42,12 +42,12 @@
__END_DECLS
#define FLT_ROUNDS __flt_rounds()
#else
-#define FLT_ROUNDS -1
+#define FLT_ROUNDS (-1)
#endif
#define FLT_RADIX 2 /* b */
#if __ISO_C_VISIBLE >= 1999
-#define FLT_EVAL_METHOD 1 /* operands promoted to double */
+#define FLT_EVAL_METHOD 0
#define DECIMAL_DIG 17 /* max precision in decimal digits */
#endif
@@ -60,6 +60,11 @@
#define FLT_MAX_EXP 128 /* emax */
#define FLT_MAX 3.40282347E+38F /* (1-b**(-p))*b**emax */
#define FLT_MAX_10_EXP 38 /* floor(log10((1-b**(-p))*b**emax)) */
+#if __ISO_C_VISIBLE >= 2011
+#define FLT_TRUE_MIN 1.40129846E-45F /* b**(emin-p) */
+#define FLT_DECIMAL_DIG 9 /* ceil(1+p*log10(b)) */
+#define FLT_HAS_SUBNORM 1
+#endif /* __ISO_C_VISIBLE >= 2011 */
#define DBL_MANT_DIG 53
#define DBL_EPSILON 2.2204460492503131E-16
@@ -70,15 +75,25 @@
#define DBL_MAX_EXP 1024
#define DBL_MAX 1.7976931348623157E+308
#define DBL_MAX_10_EXP 308
+#if __ISO_C_VISIBLE >= 2011
+#define DBL_TRUE_MIN 4.9406564584124654E-324
+#define DBL_DECIMAL_DIG 17
+#define DBL_HAS_SUBNORM 1
+#endif /* __ISO_C_VISIBLE >= 2011 */
#define LDBL_MANT_DIG DBL_MANT_DIG
-#define LDBL_EPSILON (long double)DBL_EPSILON
+#define LDBL_EPSILON ((long double)DBL_EPSILON)
#define LDBL_DIG DBL_DIG
#define LDBL_MIN_EXP DBL_MIN_EXP
-#define LDBL_MIN (long double)DBL_MIN
+#define LDBL_MIN ((long double)DBL_MIN)
#define LDBL_MIN_10_EXP DBL_MIN_10_EXP
#define LDBL_MAX_EXP DBL_MAX_EXP
-#define LDBL_MAX (long double)DBL_MAX
+#define LDBL_MAX ((long double)DBL_MAX)
#define LDBL_MAX_10_EXP DBL_MAX_10_EXP
+#if __ISO_C_VISIBLE >= 2011
+#define LDBL_TRUE_MIN ((long double)DBL_TRUE_MIN)
+#define LDBL_DECIMAL_DIG DBL_DECIMAL_DIG
+#define LDBL_HAS_SUBNORM DBL_HAS_SUBNORM
+#endif /* __ISO_C_VISIBLE >= 2011 */
#endif /* _MACHINE_FLOAT_H_ */
diff -r 6b8317170ea4 -r 3316ea33d242 head/sys/powerpc/include/profile.h
--- a/head/sys/powerpc/include/profile.h Wed Feb 01 11:28:20 2012 +0200
+++ b/head/sys/powerpc/include/profile.h Wed Feb 01 11:29:01 2012 +0200
@@ -26,7 +26,7 @@
*
* from: NetBSD: profile.h,v 1.9 1997/04/06 08:47:37 cgd Exp
* from: FreeBSD: src/sys/alpha/include/profile.h,v 1.4 1999/12/29
- * $FreeBSD$
+ * $FreeBSD: head/sys/powerpc/include/profile.h 230400 2012-01-20 22:34:19Z andreast $
*/
#ifndef _MACHINE_PROFILE_H_
@@ -85,6 +85,7 @@
"_mcount: \n" \
" .quad .L._mcount,.TOC. at tocbase,0\n" \
" .previous \n" \
+ " .size main,24 \n" \
" .type _mcount, at function \n" \
" .align 4 \n" \
".L._mcount: \n" \
diff -r 6b8317170ea4 -r 3316ea33d242 head/sys/powerpc/ofw/ofw_machdep.c
--- a/head/sys/powerpc/ofw/ofw_machdep.c Wed Feb 01 11:28:20 2012 +0200
+++ b/head/sys/powerpc/ofw/ofw_machdep.c Wed Feb 01 11:29:01 2012 +0200
@@ -32,7 +32,7 @@
*/
#include <sys/cdefs.h>
-__FBSDID("$FreeBSD: head/sys/powerpc/ofw/ofw_machdep.c 222667 2011-06-04 04:00:40Z nwhitehorn $");
+__FBSDID("$FreeBSD: head/sys/powerpc/ofw/ofw_machdep.c 230398 2012-01-20 22:24:39Z nwhitehorn $");
#include <sys/param.h>
#include <sys/bus.h>
@@ -171,10 +171,10 @@
*/
phandle = OF_finddevice("/");
if (OF_getprop(phandle, "#address-cells", &address_cells,
- sizeof(address_cells)) < sizeof(address_cells))
+ sizeof(address_cells)) < (ssize_t)sizeof(address_cells))
address_cells = 1;
if (OF_getprop(phandle, "#size-cells", &size_cells,
- sizeof(size_cells)) < sizeof(size_cells))
+ sizeof(size_cells)) < (ssize_t)sizeof(size_cells))
size_cells = 1;
/*
diff -r 6b8317170ea4 -r 3316ea33d242 head/sys/powerpc/ofw/ofwcall64.S
--- a/head/sys/powerpc/ofw/ofwcall64.S Wed Feb 01 11:28:20 2012 +0200
+++ b/head/sys/powerpc/ofw/ofwcall64.S Wed Feb 01 11:29:01 2012 +0200
@@ -22,7 +22,7 @@
* OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
* ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
*
- * $FreeBSD: head/sys/powerpc/ofw/ofwcall64.S 222613 2011-06-02 14:12:37Z nwhitehorn $
+ * $FreeBSD: head/sys/powerpc/ofw/ofwcall64.S 230400 2012-01-20 22:34:19Z andreast $
*/
#include <sys/syscall.h>
@@ -56,7 +56,7 @@
* Open Firmware Real-mode Entry Point. This is a huge pain.
*/
-ASENTRY(ofwcall)
+ASENTRY_NOPROF(ofwcall)
mflr %r0
std %r0,16(%r1)
stdu %r1,-208(%r1)
@@ -175,7 +175,7 @@
* C prototype: int rtascall(void *callbuffer, void *rtas_privdat);
*/
-ASENTRY(rtascall)
+ASENTRY_NOPROF(rtascall)
mflr %r0
std %r0,16(%r1)
stdu %r1,-208(%r1)
diff -r 6b8317170ea4 -r 3316ea33d242 head/sys/powerpc/powermac/macio.c
--- a/head/sys/powerpc/powermac/macio.c Wed Feb 01 11:28:20 2012 +0200
+++ b/head/sys/powerpc/powermac/macio.c Wed Feb 01 11:29:01 2012 +0200
@@ -24,7 +24,7 @@
* OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
* SUCH DAMAGE.
*
- * $FreeBSD: head/sys/powerpc/powermac/macio.c 221519 2011-05-06 03:26:24Z nwhitehorn $
+ * $FreeBSD: head/sys/powerpc/powermac/macio.c 230398 2012-01-20 22:24:39Z nwhitehorn $
*/
/*
@@ -293,7 +293,7 @@
* Locate the device node and it's base address
*/
if (OF_getprop(root, "assigned-addresses",
- reg, sizeof(reg)) < sizeof(reg)) {
+ reg, sizeof(reg)) < (ssize_t)sizeof(reg)) {
return (ENXIO);
}
diff -r 6b8317170ea4 -r 3316ea33d242 head/sys/powerpc/powerpc/atomic.S
--- a/head/sys/powerpc/powerpc/atomic.S Wed Feb 01 11:28:20 2012 +0200
+++ b/head/sys/powerpc/powerpc/atomic.S Wed Feb 01 11:29:01 2012 +0200
@@ -23,14 +23,14 @@
* OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
* SUCH DAMAGE.
*
- * $FreeBSD$
+ * $FreeBSD: head/sys/powerpc/powerpc/atomic.S 230400 2012-01-20 22:34:19Z andreast $
*/
#include <machine/asm.h>
.text
-ASENTRY(atomic_set_8)
+ASENTRY_NOPROF(atomic_set_8)
0: lwarx 0, 0, 3 /* load old value */
slwi 4, 4, 24 /* shift the byte so it's in the right place */
or 0, 0, 4 /* generate new value */
@@ -40,7 +40,7 @@
sync
blr /* return */
-ASENTRY(atomic_clear_8)
+ASENTRY_NOPROF(atomic_clear_8)
0: lwarx 0, 0, 3 /* load old value */
slwi 4, 4, 24 /* shift the byte so it's in the right place */
andc 0, 0, 4 /* generate new value */
@@ -50,7 +50,7 @@
sync
blr /* return */
-ASENTRY(atomic_add_8)
+ASENTRY_NOPROF(atomic_add_8)
0: lwarx 9, 0, 3 /* load old value */
srwi 0, 9, 24 /* byte alignment */
add 0, 4, 0 /* calculate new value */
@@ -63,7 +63,7 @@
sync
blr /* return */
-ASENTRY(atomic_subtract_8)
+ASENTRY_NOPROF(atomic_subtract_8)
0: lwarx 9, 0, 3 /* load old value */
srwi 0, 9, 24 /* byte alignment */
subf 0, 4, 0 /* calculate new value */
@@ -76,7 +76,7 @@
sync
blr /* return */
-ASENTRY(atomic_set_16)
+ASENTRY_NOPROF(atomic_set_16)
li 11, 3 /* mask to test for alignment */
andc. 11, 3, 11 /* force address to be word-aligned */
0: lwarx 12, 0, 11 /* load old value */
@@ -89,7 +89,7 @@
sync
blr /* return */
-ASENTRY(atomic_clear_16)
+ASENTRY_NOPROF(atomic_clear_16)
li 11, 3 /* mask to test for alignment */
andc. 11, 3, 11 /* force address to be word-aligned */
0: lwarx 12, 0, 11 /* load old value */
@@ -102,7 +102,7 @@
sync
blr /* return */
-ASENTRY(atomic_add_16)
+ASENTRY_NOPROF(atomic_add_16)
li 11, 3 /* mask to test for alignment */
andc. 11, 3, 11 /* force address to be word-aligned */
0: lwarx 12, 0, 11 /* load old value */
@@ -119,7 +119,7 @@
sync
blr /* return */
-ASENTRY(atomic_subtract_16)
+ASENTRY_NOPROF(atomic_subtract_16)
li 11, 3 /* mask to test for alignment */
andc. 11, 3, 11 /* force address to be word-aligned */
0: lwarx 12, 0, 11 /* load old value */
diff -r 6b8317170ea4 -r 3316ea33d242 head/sys/powerpc/powerpc/setjmp.S
--- a/head/sys/powerpc/powerpc/setjmp.S Wed Feb 01 11:28:20 2012 +0200
+++ b/head/sys/powerpc/powerpc/setjmp.S Wed Feb 01 11:29:01 2012 +0200
@@ -1,4 +1,4 @@
-/* $FreeBSD$ */
+/* $FreeBSD: head/sys/powerpc/powerpc/setjmp.S 230400 2012-01-20 22:34:19Z andreast $ */
/* from: NetBSD: setjmp.S,v 1.1 1998/01/27 15:13:12 sakamoto Exp $ */
/* from: OpenBSD: setjmp.S,v 1.2 1996/12/28 06:22:18 rahnds Exp */
/* kernel version of this file, does not have signal goop */
@@ -42,7 +42,7 @@
#define JMP_xer 24*REGWIDTH
#define JMP_sig 25*REGWIDTH
-ASENTRY(setjmp)
+ASENTRY_NOPROF(setjmp)
ST_REG 31, JMP_r31(3)
/* r1, r2, r14-r30 */
ST_REG 1, JMP_r1 (3)
@@ -79,7 +79,7 @@
.extern sigsetmask
-ASENTRY(longjmp)
+ASENTRY_NOPROF(longjmp)
LD_REG 31, JMP_r31(3)
/* r1, r2, r14-r30 */
LD_REG 1, JMP_r1 (3)
More information about the Zrouter-src-freebsd
mailing list