1/*- 2 * $NetBSD: setjmp.h,v 1.3 1998/09/16 23:51:27 thorpej Exp $ 3 * $FreeBSD$ 4 */ 5 6#ifndef _MACHINE_SETJMP_H_ 7#define _MACHINE_SETJMP_H_ 8 9#include <sys/cdefs.h> 10 11#ifdef _KERNEL 12#define _JBLEN 25 /* Kernel doesn't save FP and Altivec regs */ 13#else 14#define _JBLEN 100 15#endif 16 17/* 18 * jmp_buf and sigjmp_buf are encapsulated in different structs to force 19 * compile-time diagnostics for mismatches. The structs are the same 20 * internally to avoid some run-time errors for mismatches. 21 */ 22#if __BSD_VISIBLE || __POSIX_VISIBLE || __XSI_VISIBLE 23typedef struct _sigjmp_buf { long _sjb[_JBLEN + 1]; } sigjmp_buf[1]; 24#endif 25 26typedef struct _jmp_buf { long _jb[_JBLEN + 1]; } jmp_buf[1]; 27 28#endif /* !_MACHINE_SETJMP_H_ */ 29