Implement getcontext, setcontext, makecontext, swapcontext

* common.din (getcontext): Export.
        (makecontext): Export.
        (setcontext): Export.
        (swapcontext): Export.
        * exceptions.cc (__unwind_single_frame): New static functions, 64 bit
        only.
        (setcontext): New function.
        (getcontext): New function.
        (swapcontext): New function.
        (__cont_link_context): New function.
        (makecontext): New function.
        * include/cygwin/version.h (CYGWIN_VERSION_DLL_MAJOR): Bump to 2002.
        (CYGWIN_VERSION_API_MINOR): Bump.
        * include/ucontext.h (getcontext): Add prototype.
        (setcontext): Ditto.
        (swapcontext): Ditto.
        (makecontext): Ditto.
        * ntdll.h (NtContinue): Ditto.

        * new-features.xml (ov-new2.2): Add new section.  Document getcontext,
        setcontext, makecontext, swapcontext.
        * posix.xml (std-deprec): Add getcontext, setcontext, makecontext,
        swapcontext.

Signed-off-by: Corinna Vinschen <corinna@vinschen.de>
This commit is contained in:
Corinna Vinschen
2015-07-17 14:31:12 +02:00
parent 9a69aac0ed
commit 1020bb292a
10 changed files with 301 additions and 2 deletions

View File

@@ -503,6 +503,7 @@ getc SIGFE
getc_unlocked SIGFE
getchar SIGFE
getchar_unlocked SIGFE
getcontext NOSIGFE
getcwd SIGFE
getdelim = __getdelim SIGFE
getdomainname SIGFE
@@ -717,6 +718,7 @@ lsetxattr SIGFE
lstat SIGFE
lutimes SIGFE
madvise = posix_madvise SIGFE
makecontext NOSIGFE
mallinfo SIGFE
malloc SIGFE
malloc_stats SIGFE
@@ -1054,6 +1056,7 @@ sendmsg = cygwin_sendmsg SIGFE
sendto = cygwin_sendto SIGFE
setbuf SIGFE
setbuffer SIGFE
setcontext NOSIGFE
sethostname SIGFE
setdtablesize SIGFE
setegid SIGFE
@@ -1199,6 +1202,7 @@ strtoumax = strtoull NOSIGFE
strupr NOSIGFE
strxfrm NOSIGFE
swab NOSIGFE
swapcontext NOSIGFE
swprintf SIGFE
swscanf SIGFE
symlink SIGFE