… | |
… | |
772 | coro_mortal = 0; |
772 | coro_mortal = 0; |
773 | } |
773 | } |
774 | UNLOCK; |
774 | UNLOCK; |
775 | } |
775 | } |
776 | |
776 | |
|
|
777 | /* use this function pointer to call the above function */ |
|
|
778 | /* this is done to increase chances of the compiler not inlining the call */ |
777 | void (*coro_state_transfer)(pTHX_ struct coro *prev, struct coro *next, int flags) = transfer_impl; |
779 | void (*coro_state_transfer)(pTHX_ struct coro *prev, struct coro *next, int flags) = transfer_impl; |
778 | |
780 | |
779 | #define SV_CORO(sv,func) \ |
781 | #define SV_CORO(sv,func) \ |
780 | do { \ |
782 | do { \ |
781 | if (SvROK (sv)) \ |
783 | if (SvROK (sv)) \ |