29#ifndef __SDCC_SETJMP_H
30#define __SDCC_SETJMP_H
34#ifdef __SDCC_STACK_AUTO
35#define BP_SIZE SP_SIZE
40#ifdef __SDCC_USE_XSTACK
46#define BPX_SIZE SPX_SIZE
48#ifdef __SDCC_MODEL_HUGE
54#if defined (__SDCC_z80) || defined (__SDCC_z180) || defined (__SDCC_r2k) || defined (__SDCC_r3ka) || defined (__SDCC_tlcs90) || defined (__SDCC_ez80_z80) || defined (__SDCC_z80n)
55typedef unsigned char jmp_buf[6];
56#elif defined (__SDCC_ds390) || defined (__SDCC_stm8) && defined (__SDCC_MODEL_LARGE)
57typedef unsigned char jmp_buf[5];
58#elif defined (__SDCC_stm8) || defined (__SDCC_sm83) || defined (__SDCC_hc08) || defined (__SDCC_s08)
59typedef unsigned char jmp_buf[4];
60#elif defined (__SDCC_pdk13) || defined (__SDCC_pdk14) || defined (__SDCC_pdk15)
61typedef unsigned char jmp_buf[3];
70#define setjmp(jump_buf) __setjmp(jump_buf)
72#ifndef __SDCC_HIDE_LONGJMP
#define OLDCALL
Definition: types.h:21
#define BPX_SIZE
Definition: setjmp.h:46
#define BP_SIZE
Definition: setjmp.h:37
#define RET_SIZE
Definition: setjmp.h:51
#define SPX_SIZE
Definition: setjmp.h:43
#define SP_SIZE
Definition: setjmp.h:32
int __setjmp(jmp_buf) OLDCALL
unsigned char jmp_buf[RET_SIZE+SP_SIZE+BP_SIZE+SPX_SIZE+BPX_SIZE]
Definition: setjmp.h:63
_Noreturn void longjmp(jmp_buf, int) OLDCALL