在 2025-3-21 23:25, Jacek Caban 写道:
mingw-w64-crt implements a number of functions that the compiler considers built-in. Currently, we must be cautious about compiler optimizations, as they may not align with our intentions. In theory, the compiler could optimize an implementation of such a function back into a call to itself.Rather than second-guessing the optimizer and reimplementing problematic functions in assembly, disable built-in functions globally for mingw-w64-crt. --- mingw-w64-crt/Makefile.am | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-)
While this change might be safe, we have code that calls `memset()` to clear small structures such as `mbstate_t` (stdio/mingw_pformat.c) or `struct tm` (secapi/_gmtime32_s.c). If we mean to disable all builts, these operations will become real function calls, which is probably not very good.
As part of this change we probably want to turn those references to `__builtin_` ones. -- Best regards, LIU Hao
OpenPGP_signature.asc
Description: OpenPGP digital signature
_______________________________________________ Mingw-w64-public mailing list Mingw-w64-public@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/mingw-w64-public