diff options
Diffstat (limited to 'src/libthread/label.h')
-rw-r--r-- | src/libthread/label.h | 24 |
1 files changed, 24 insertions, 0 deletions
diff --git a/src/libthread/label.h b/src/libthread/label.h new file mode 100644 index 00000000..0c9f3030 --- /dev/null +++ b/src/libthread/label.h @@ -0,0 +1,24 @@ +/* + * setjmp and longjmp, but our own because some (stupid) c libraries + * assume longjmp is only used to move up the stack, and error out + * if you do otherwise. + */ + +typedef struct Label Label; +#define LABELDPC 0 + +#if defined (__i386__) && (defined(__FreeBSD__) || defined(__linux__)) +struct Label +{ + ulong pc; + ulong bx; + ulong sp; + ulong bp; + ulong si; + ulong di; +}; +#else +#error "Unknown or unsupported architecture" +#endif + + |