Uzytkownik "Noob" <root@127.0.0.1> napisal w wiadomosci
news:ka7744$178$...
>> Where I can find setjmp, longjmp, sigsetjmp implementation?
>
> e.g. http://sourceware.org/git/?p=glibc.git;a=tree;f=setjmp
This call low level functions, longjmp.c :
#include <setjmp.h>
void
__libc_siglongjmp (sigjmp_buf env, int val)
{
/* Perform any cleanups needed by the frames being unwound. */
_longjmp_unwind (env, val);
if (env[0].__mask_was_saved)
/* Restore the saved signal mask. */
(void) __sigprocmask (SIG_SETMASK, &env[0].__saved_mask,
(sigset_t *) NULL);
/* Call the machine-dependent function to restore machine state. */
__longjmp (env[0].__jmpbuf, val ?: 1);
}
longjmp_unwind ,__sigprocmask, __longjmp are in other library? In assembly?