diff options
| author | ptitSeb <sebastien.chev@gmail.com> | 2023-10-13 21:23:42 +0200 |
|---|---|---|
| committer | ptitSeb <sebastien.chev@gmail.com> | 2023-10-13 21:23:42 +0200 |
| commit | 9209e57bd965964b3853d8affecea571e6021b58 (patch) | |
| tree | 5ce7c260cd0b742675684266906de37e3972b8ae /src/include/myalign.h | |
| parent | 1e1ad7694b59dba4af4e70c978fdb1b2c7d17b5b (diff) | |
| download | box64-9209e57bd965964b3853d8affecea571e6021b58.tar.gz box64-9209e57bd965964b3853d8affecea571e6021b58.zip | |
Various changes on pthread cancel and tls destructor, should be easier to maintain
Diffstat (limited to 'src/include/myalign.h')
| -rw-r--r-- | src/include/myalign.h | 22 |
1 files changed, 22 insertions, 0 deletions
diff --git a/src/include/myalign.h b/src/include/myalign.h index 247ea1b9..9293139a 100644 --- a/src/include/myalign.h +++ b/src/include/myalign.h @@ -214,4 +214,26 @@ void AlignSemidDs(void *dest, const void* source); uintptr_t getVArgs(x64emu_t* emu, int pos, uintptr_t* b, int N); +// longjmp / setjmp +typedef struct jump_buff_x64_s { + uint64_t save_rbx; + uint64_t save_rbp; + uint64_t save_r12; + uint64_t save_r13; + uint64_t save_r14; + uint64_t save_r15; + uint64_t save_rsp; + uint64_t save_rip; +} jump_buff_x64_t; + +typedef struct __jmp_buf_tag_s { + jump_buff_x64_t __jmpbuf; + int __mask_was_saved; + #ifdef ANDROID + sigset_t __saved_mask; + #else + __sigset_t __saved_mask; + #endif +} __jmp_buf_tag_t; + #endif //__MY_ALIGN__H_ |