diff options
Diffstat (limited to 'gpxe/src/arch/i386/include/setjmp.h')
-rw-r--r-- | gpxe/src/arch/i386/include/setjmp.h | 40 |
1 files changed, 0 insertions, 40 deletions
diff --git a/gpxe/src/arch/i386/include/setjmp.h b/gpxe/src/arch/i386/include/setjmp.h deleted file mode 100644 index 5d3c11b6..00000000 --- a/gpxe/src/arch/i386/include/setjmp.h +++ /dev/null @@ -1,40 +0,0 @@ -#ifndef ETHERBOOT_SETJMP_H -#define ETHERBOOT_SETJMP_H - -FILE_LICENCE ( GPL2_OR_LATER ); - -#include <stdint.h> -#include <realmode.h> - -/** A jump buffer */ -typedef struct { - uint32_t retaddr; - uint32_t ebx; - uint32_t esp; - uint32_t ebp; - uint32_t esi; - uint32_t edi; -} jmp_buf[1]; - -/** A real-mode-extended jump buffer */ -typedef struct { - jmp_buf env; - uint16_t rm_ss; - uint16_t rm_sp; -} rmjmp_buf[1]; - -extern int __asmcall setjmp ( jmp_buf env ); -extern void __asmcall longjmp ( jmp_buf env, int val ); - -#define rmsetjmp( _env ) ( { \ - (_env)->rm_ss = rm_ss; \ - (_env)->rm_sp = rm_sp; \ - setjmp ( (_env)->env ); } ) \ - -#define rmlongjmp( _env, _val ) do { \ - rm_ss = (_env)->rm_ss; \ - rm_sp = (_env)->rm_sp; \ - longjmp ( (_env)->env, (_val) ); \ - } while ( 0 ) - -#endif /* ETHERBOOT_SETJMP_H */ |