… | |
… | |
81 | * 2012-12-21 valgrind stack registering was broken. |
81 | * 2012-12-21 valgrind stack registering was broken. |
82 | * 2015-12-05 experimental asm be for arm7, based on a patch by Nick Zavaritsky. |
82 | * 2015-12-05 experimental asm be for arm7, based on a patch by Nick Zavaritsky. |
83 | * use __name__ for predefined symbols, as in libecb. |
83 | * use __name__ for predefined symbols, as in libecb. |
84 | * enable guard pages on arm, aarch64 and mips. |
84 | * enable guard pages on arm, aarch64 and mips. |
85 | * 2016-08-27 try to disable _FORTIFY_SOURCE with CORO_SJLJ, as it |
85 | * 2016-08-27 try to disable _FORTIFY_SOURCE with CORO_SJLJ, as it |
86 | * breaks setjmp/longjmp. |
86 | * breaks setjmp/longjmp. Also disable CORO_ASM for asm by default, |
|
|
87 | * as it was reported to crash. |
87 | */ |
88 | */ |
88 | |
89 | |
89 | #ifndef CORO_H |
90 | #ifndef CORO_H |
90 | #define CORO_H |
91 | #define CORO_H |
91 | |
92 | |
… | |
… | |
306 | && !defined CORO_PTHREAD && !defined CORO_FIBER |
307 | && !defined CORO_PTHREAD && !defined CORO_FIBER |
307 | # if defined WINDOWS && (defined __i386__ || (__x86_64__ || defined _M_IX86 || defined _M_AMD64) |
308 | # if defined WINDOWS && (defined __i386__ || (__x86_64__ || defined _M_IX86 || defined _M_AMD64) |
308 | # define CORO_ASM 1 |
309 | # define CORO_ASM 1 |
309 | # elif defined WINDOWS || defined _WIN32 |
310 | # elif defined WINDOWS || defined _WIN32 |
310 | # define CORO_LOSER 1 /* you don't win with windoze */ |
311 | # define CORO_LOSER 1 /* you don't win with windoze */ |
311 | # elif __linux && (__i386__ || (__x86_64__ && !__ILP32__) || (__arm__ && __ARM_ARCH == 7)) |
312 | # elif __linux && (__i386__ || (__x86_64__ && !__ILP32__) /*|| (__arm__ && __ARM_ARCH == 7)), not working */ |
312 | # define CORO_ASM 1 |
313 | # define CORO_ASM 1 |
313 | # elif defined HAVE_UCONTEXT_H |
314 | # elif defined HAVE_UCONTEXT_H |
314 | # define CORO_UCONTEXT 1 |
315 | # define CORO_UCONTEXT 1 |
315 | # elif defined HAVE_SETJMP_H && defined HAVE_SIGALTSTACK |
316 | # elif defined HAVE_SETJMP_H && defined HAVE_SIGALTSTACK |
316 | # define CORO_SJLJ 1 |
317 | # define CORO_SJLJ 1 |