This patch series cleanup setjmp.h header file which defines setjmp()
and longjmp() macros, then it adds setjmp() support for crtdll.dll and
msvcrt10.dll builds and fixes setjmpex.h support for all platforms.
I tested it on 32-bit and 64-bit x86 builds. ARM is not tested.
Pali Rohár (10):
headers: Fix declaration of i386 _setjmp3() function
headers: Do not declare _setjmp3() function for non-i386 builds
crt: Remove __intrinsic_setjmp symbol from arm64 ucrtapp's setjmp.S
crt: Add __intrinsic_setjmpex symbol to arm32 ucrtapp's setjmp.S
crt: Move amd64 setjmp and i386 _setjmp3 symbols definition to the top
of the setjmp.S file
crt: Add _setjmp and _setjmpex symbol aliases for UCRT builds
headers: Remove redefinition of _setjmp via macro for UCRT builds
crt: Allow to use C setjmp() with crtdll.dll and msvcrt10.dll builds
headers: Fix setjmpex.h support
headers: Fix i386 declaration of _setjmp in intrin.h
mingw-w64-crt/def-include/crt-aliases.def.in | 19 ++++
.../api-ms-win-crt-private-l1-1-0.def.in | 2 +
mingw-w64-crt/lib32/crtdll.def.in | 1 +
mingw-w64-crt/lib32/msvcrt10.def.in | 1 +
mingw-w64-crt/misc/setjmp.S | 31 ++++-
mingw-w64-headers/crt/intrin.h | 3 +-
mingw-w64-headers/crt/setjmp.h | 106 ++++++++++--------
mingw-w64-headers/crt/setjmpex.h | 16 +--
8 files changed, 112 insertions(+), 67 deletions(-)
--
2.20.1
_______________________________________________
Mingw-w64-public mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/mingw-w64-public