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)
55 typedef unsigned char jmp_buf[6];
56 #elif defined (__SDCC_ds390) || defined (__SDCC_stm8) && defined (__SDCC_MODEL_LARGE)
57 typedef unsigned char jmp_buf[5];
58 #elif defined (__SDCC_stm8) || defined (__SDCC_sm83) || defined (__SDCC_hc08) || defined (__SDCC_s08)
59 typedef unsigned char jmp_buf[4];
60 #elif defined (__SDCC_pdk13) || defined (__SDCC_pdk14) || defined (__SDCC_pdk15)
61 typedef 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 RET_SIZE
Definition: setjmp.h:51
unsigned char jmp_buf[RET_SIZE+SP_SIZE+BP_SIZE+SPX_SIZE+BPX_SIZE]
Definition: setjmp.h:63
#define SPX_SIZE
Definition: setjmp.h:43
#define BP_SIZE
Definition: setjmp.h:37
_Noreturn void longjmp(jmp_buf, int) OLDCALL
#define SP_SIZE
Definition: setjmp.h:32
int __setjmp(jmp_buf) OLDCALL