[Mingw-w64-public] [PATCH 6/7] crt: msvcrt.def.in: Add comments for symbols provided by mingw-w64

2024-06-22 Thread Pali Rohár
--- mingw-w64-crt/lib-common/msvcrt.def.in | 38 +- 1 file changed, 19 insertions(+), 19 deletions(-) diff --git a/mingw-w64-crt/lib-common/msvcrt.def.in b/mingw-w64-crt/lib-common/msvcrt.def.in index e0ed8c185eab..59515cc3f16e 100644 --- a/mingw-w64-crt/lib-common/msvcrt

[Mingw-w64-public] [PATCH 3/7] crt: msvcrt.def.in: Fix list of ARM64 symbols

2024-06-22 Thread Pali Rohár
Include all ARM64 C++ mangled symbols. Add _local_unwind symbol which is present also in ARM64 version. And remove _setjmp, setjmp and __jump_unwind symbols which are not present in any ARM64 version. As a reference were checked msvcrt.dll versions 7.0.17083.1000 and 7.0.19041.546 and all have sam

[Mingw-w64-public] [PATCH 2/7] crt: msvcrt.def.in: Symbols _memcpy_strict_align and fabsf are available on ARM since Win RT 8.0

2024-06-22 Thread Pali Rohár
--- mingw-w64-crt/lib-common/msvcrt.def.in | 7 ++- 1 file changed, 2 insertions(+), 5 deletions(-) diff --git a/mingw-w64-crt/lib-common/msvcrt.def.in b/mingw-w64-crt/lib-common/msvcrt.def.in index bc548589e439..8b0b85b20bee 100644 --- a/mingw-w64-crt/lib-common/msvcrt.def.in +++ b/mingw-w6

[Mingw-w64-public] [PATCH 4/7] crt: msvcrt.def.in: Remove Windows 10 TODO

2024-06-22 Thread Pali Rohár
There are no new i386/x64/arm32/arm64 symbols in Windows 10 (up to 22H2 version) since Windows 8.1. --- mingw-w64-crt/lib-common/msvcrt.def.in | 3 --- 1 file changed, 3 deletions(-) diff --git a/mingw-w64-crt/lib-common/msvcrt.def.in b/mingw-w64-crt/lib-common/msvcrt.def.in index c7a78e2dc794..

[Mingw-w64-public] [PATCH 5/7] crt: msvcrt.def.in: Do not use emulation of Vista+ symbols on ARM32/64

2024-06-22 Thread Pali Rohár
ARM32 and ARM64 always contain all Vista symbols. So use them directly instead of the mingw-w64 emulation. The only Vista+ symbol which is not enabled right now is vsnprintf. It needs to be inspected if this Vista+ symbol is C99 compatible vsnprintf() function or MSVC variant _vsnprintf() which do

[Mingw-w64-public] [PATCH 7/7] crt: msvcrt.def.in: Replace F_I386+F_ARM_ANY by new F_NON_X64() macro

2024-06-22 Thread Pali Rohár
--- mingw-w64-crt/def-include/func.def.in | 7 +++ mingw-w64-crt/lib-common/msvcrt.def.in | 3 +-- 2 files changed, 8 insertions(+), 2 deletions(-) diff --git a/mingw-w64-crt/def-include/func.def.in b/mingw-w64-crt/def-include/func.def.in index aae896bdb953..0b45da35ac1f 100644 --- a/mingw-

[Mingw-w64-public] [PATCH 1/7] crt: msvcrt.def.in: Use F_I386() instead of #ifdef DEF_I386

2024-06-22 Thread Pali Rohár
Usage of F_I386() macro per symbol allows to easily identify via "git grep" if the particular symbol is available for specific architecture or not. "#ifdef DEF_I386" prevents easy usage of "git grep". So change remaining "#ifdef DEF_I386" blocks by per-symbol F_I386() macros. --- mingw-w64-crt/li

[Mingw-w64-public] nexttoward/nexttowardf on UCRT

2024-06-22 Thread Nakai Yuta
Hi, We can use the UCRT function for nexttoward as well as nexttoward on ARM/ARM64. Also, on x86, we need to use mingw implementation due to long double. Why is nexttoward included in libmingwex and nexttowardf in libucrt? Regards, Yuta ___ Mingw-w64-pu