artiq/soc/runtime/exceptions.h

20 lines
457 B
C
Raw Normal View History

#ifndef __EXCEPTIONS_H
#define __EXCEPTIONS_H
2014-09-22 13:18:48 +08:00
enum {
EID_OUT_OF_MEMORY = 0,
EID_RTIO_UNDERFLOW = 1,
2014-10-21 23:41:02 +08:00
EID_RTIO_SEQUENCE_ERROR = 2,
EID_RTIO_OVERFLOW = 3,
};
int exception_setjmp(void *jb) __attribute__((returns_twice));
void exception_longjmp(void *jb) __attribute__((noreturn));
2014-09-22 13:18:48 +08:00
void *exception_push(void);
void exception_pop(int levels);
2014-09-22 13:18:48 +08:00
int exception_getid(void);
void exception_raise(int id) __attribute__((noreturn));
#endif /* __EXCEPTIONS_H */