Fix MinGW-related portability issues.
Create and use FMT* macros that are equivalent to the PRI* macros that inttypes.h defines. This allows uniform use of the Unix-specific format specifiers, e.g. "%zu", as well as avoiding Windows-specific definitions of e.g. PRIu64. Add ffs()/ffsl() support for compiling with gcc. Extract compatibility definitions of ENOENT, EINVAL, EAGAIN, EPERM, ENOMEM, and ENORANGE into include/msvc_compat/windows_extra.h and use the file for tests as well as for core jemalloc code.
This commit is contained in:
@@ -31,8 +31,8 @@ compare_funcs(uint64_t nwarmup, uint64_t niter, const char *name_a,
|
||||
time_func(&timer_b, nwarmup, niter, func_b);
|
||||
|
||||
timer_ratio(&timer_a, &timer_b, ratio_buf, sizeof(ratio_buf));
|
||||
malloc_printf("%"PRIu64" iterations, %s=%"PRIu64"us, "
|
||||
"%s=%"PRIu64"us, ratio=1:%s\n",
|
||||
malloc_printf("%"FMTu64" iterations, %s=%"FMTu64"us, "
|
||||
"%s=%"FMTu64"us, ratio=1:%s\n",
|
||||
niter, name_a, timer_usec(&timer_a), name_b, timer_usec(&timer_b),
|
||||
ratio_buf);
|
||||
|
||||
|
Reference in New Issue
Block a user