Ruby: wasm/asyncify.h Source File

Ruby 3.2.5p208 (2024-07-26 revision 31d0f1a2e7dbfb60731d1f05b868e1d578cda493)

asyncify.h
1#ifndef RB_WASM_SUPPORT_ASYNCIFY_H
2#define RB_WASM_SUPPORT_ASYNCIFY_H
3
4 __attribute__((import_module("asyncify"), import_name("start_unwind")))
5void asyncify_start_unwind(void *buf);
6#define asyncify_start_unwind(buf) do { \
7 extern void *rb_asyncify_unwind_buf; \
8 rb_asyncify_unwind_buf = (buf); \
9 asyncify_start_unwind((buf)); \
10 } while (0)
11 __attribute__((import_module("asyncify"), import_name("stop_unwind")))
12void asyncify_stop_unwind(void);
13#define asyncify_stop_unwind() do { \
14 extern void *rb_asyncify_unwind_buf; \
15 rb_asyncify_unwind_buf = NULL; \
16 asyncify_stop_unwind(); \
17 } while (0)
18 __attribute__((import_module("asyncify"), import_name("start_rewind")))
19void asyncify_start_rewind(void *buf);
20 __attribute__((import_module("asyncify"), import_name("stop_rewind")))
21void asyncify_stop_rewind(void);
22
23#endif
__attribute__
Definition vm_insnhelper.c:2198