[PATCHv3 2/2] msvcrt: Export -f suffixed float functions functions on arm64
Martin Storsjo
martin at martin.st
Wed Aug 2 07:21:52 CDT 2017
Signed-off-by: Martin Storsjo <martin at martin.st>
---
Manually checked the list of functions against the import library
in the windows 10 sdk and omitted _isnanf, _nextafterf, _scalbf and
frexpf.
---
.../api-ms-win-crt-math-l1-1-0.spec | 44 ++++++++++----------
dlls/msvcr100/msvcr100.spec | 46 ++++++++++-----------
dlls/msvcr110/msvcr110.spec | 48 +++++++++++-----------
dlls/msvcr120/msvcr120.spec | 44 ++++++++++----------
dlls/msvcr120_app/msvcr120_app.spec | 44 ++++++++++----------
dlls/msvcr80/msvcr80.spec | 46 ++++++++++-----------
dlls/msvcr90/msvcr90.spec | 44 ++++++++++----------
dlls/msvcrt/math.c | 4 +-
dlls/msvcrt/msvcrt.spec | 48 +++++++++++-----------
dlls/ucrtbase/ucrtbase.spec | 44 ++++++++++----------
10 files changed, 206 insertions(+), 206 deletions(-)
diff --git a/dlls/api-ms-win-crt-math-l1-1-0/api-ms-win-crt-math-l1-1-0.spec b/dlls/api-ms-win-crt-math-l1-1-0/api-ms-win-crt-math-l1-1-0.spec
index 3d2a58f..7bae4ff 100644
--- a/dlls/api-ms-win-crt-math-l1-1-0/api-ms-win-crt-math-l1-1-0.spec
+++ b/dlls/api-ms-win-crt-math-l1-1-0/api-ms-win-crt-math-l1-1-0.spec
@@ -77,7 +77,7 @@
@ cdecl _fdtest(ptr) ucrtbase._fdtest
@ stub _fdunscale
@ cdecl _finite(double) ucrtbase._finite
-@ cdecl -arch=arm,x86_64 _finitef(float) ucrtbase._finitef
+@ cdecl -arch=arm,x86_64,arm64 _finitef(float) ucrtbase._finitef
@ cdecl _fpclass(double) ucrtbase._fpclass
@ stub _fpclassf
@ cdecl -arch=i386 -ret64 _ftol() ucrtbase._ftol
@@ -112,7 +112,7 @@
@ cdecl -arch=i386 -norelay _libm_sse2_sqrt_precise() ucrtbase._libm_sse2_sqrt_precise
@ cdecl -arch=i386 -norelay _libm_sse2_tan_precise() ucrtbase._libm_sse2_tan_precise
@ cdecl _logb(double) ucrtbase._logb
-@ cdecl -arch=arm,x86_64 _logbf(float) ucrtbase._logbf
+@ cdecl -arch=arm,x86_64,arm64 _logbf(float) ucrtbase._logbf
@ cdecl _nextafter(double double) ucrtbase._nextafter
@ cdecl -arch=x86_64 _nextafterf(float float) ucrtbase._nextafterf
@ cdecl _scalb(double long) ucrtbase._scalb
@@ -123,19 +123,19 @@
@ cdecl _y1(double) ucrtbase._y1
@ cdecl _yn(long double) ucrtbase._yn
@ cdecl acos(double) ucrtbase.acos
-@ cdecl -arch=arm,x86_64 acosf(float) ucrtbase.acosf
+@ cdecl -arch=arm,x86_64,arm64 acosf(float) ucrtbase.acosf
@ cdecl acosh(double) ucrtbase.acosh
@ cdecl acoshf(float) ucrtbase.acoshf
@ cdecl acoshl(double) ucrtbase.acoshl
@ cdecl asin(double) ucrtbase.asin
-@ cdecl -arch=arm,x86_64 asinf(float) ucrtbase.asinf
+@ cdecl -arch=arm,x86_64,arm64 asinf(float) ucrtbase.asinf
@ cdecl asinh(double) ucrtbase.asinh
@ cdecl asinhf(float) ucrtbase.asinhf
@ cdecl asinhl(double) ucrtbase.asinhl
@ cdecl atan(double) ucrtbase.atan
@ cdecl atan2(double double) ucrtbase.atan2
-@ cdecl -arch=arm,x86_64 atan2f(float float) ucrtbase.atan2f
-@ cdecl -arch=arm,x86_64 atanf(float) ucrtbase.atanf
+@ cdecl -arch=arm,x86_64,arm64 atan2f(float float) ucrtbase.atan2f
+@ cdecl -arch=arm,x86_64,arm64 atanf(float) ucrtbase.atanf
@ cdecl atanh(double) ucrtbase.atanh
@ cdecl atanhf(float) ucrtbase.atanhf
@ cdecl atanhl(double) ucrtbase.atanhl
@@ -173,7 +173,7 @@
@ stub ccoshl
@ stub ccosl
@ cdecl ceil(double) ucrtbase.ceil
-@ cdecl -arch=arm,x86_64 ceilf(float) ucrtbase.ceilf
+@ cdecl -arch=arm,x86_64,arm64 ceilf(float) ucrtbase.ceilf
@ stub cexp
@ stub cexpf
@ stub cexpl
@@ -193,9 +193,9 @@
@ cdecl copysignf(float float) ucrtbase.copysignf
@ cdecl copysignl(double double) ucrtbase.copysignl
@ cdecl cos(double) ucrtbase.cos
-@ cdecl -arch=arm,x86_64 cosf(float) ucrtbase.cosf
+@ cdecl -arch=arm,x86_64,arm64 cosf(float) ucrtbase.cosf
@ cdecl cosh(double) ucrtbase.cosh
-@ cdecl -arch=arm,x86_64 coshf(float) ucrtbase.coshf
+@ cdecl -arch=arm,x86_64,arm64 coshf(float) ucrtbase.coshf
@ stub cpow
@ stub cpowf
@ stub cpowl
@@ -230,17 +230,17 @@
@ cdecl exp2(double) ucrtbase.exp2
@ cdecl exp2f(float) ucrtbase.exp2f
@ cdecl exp2l(double) ucrtbase.exp2l
-@ cdecl -arch=arm,x86_64 expf(float) ucrtbase.expf
+@ cdecl -arch=arm,x86_64,arm64 expf(float) ucrtbase.expf
@ cdecl expm1(double) ucrtbase.expm1
@ cdecl expm1f(float) ucrtbase.expm1f
@ cdecl expm1l(double) ucrtbase.expm1l
@ cdecl fabs(double) ucrtbase.fabs
-@ cdecl -arch=arm fabsf(float) ucrtbase.fabsf
+@ cdecl -arch=arm,arm64 fabsf(float) ucrtbase.fabsf
@ stub fdim
@ stub fdimf
@ stub fdiml
@ cdecl floor(double) ucrtbase.floor
-@ cdecl -arch=arm,x86_64 floorf(float) ucrtbase.floorf
+@ cdecl -arch=arm,x86_64,arm64 floorf(float) ucrtbase.floorf
@ stub fma
@ stub fmaf
@ stub fmal
@@ -251,7 +251,7 @@
@ cdecl fminf(float float) ucrtbase.fminf
@ cdecl fminl(double double) ucrtbase.fminl
@ cdecl fmod(double double) ucrtbase.fmod
-@ cdecl -arch=arm,x86_64 fmodf(float float) ucrtbase.fmodf
+@ cdecl -arch=arm,x86_64,arm64 fmodf(float float) ucrtbase.fmodf
@ cdecl frexp(double ptr) ucrtbase.frexp
@ cdecl hypot(double double) ucrtbase.hypot
@ stub ilogb
@@ -269,7 +269,7 @@
@ cdecl -ret64 llroundl(double) ucrtbase.llroundl
@ cdecl log(double) ucrtbase.log
@ cdecl log10(double) ucrtbase.log10
-@ cdecl -arch=arm,x86_64 log10f(float) ucrtbase.log10f
+@ cdecl -arch=arm,x86_64,arm64 log10f(float) ucrtbase.log10f
@ cdecl log1p(double) ucrtbase.log1p
@ cdecl log1pf(float) ucrtbase.log1pf
@ cdecl log1pl(double) ucrtbase.log1pl
@@ -279,7 +279,7 @@
@ stub logb
@ stub logbf
@ stub logbl
-@ cdecl -arch=arm,x86_64 logf(float) ucrtbase.logf
+@ cdecl -arch=arm,x86_64,arm64 logf(float) ucrtbase.logf
@ cdecl lrint(double) ucrtbase.lrint
@ cdecl lrintf(float) ucrtbase.lrintf
@ cdecl lrintl(double) ucrtbase.lrintl
@@ -287,7 +287,7 @@
@ cdecl lroundf(float) ucrtbase.lroundf
@ cdecl lroundl(double) ucrtbase.lroundl
@ cdecl modf(double ptr) ucrtbase.modf
-@ cdecl -arch=arm,x86_64 modff(float ptr) ucrtbase.modff
+@ cdecl -arch=arm,x86_64,arm64 modff(float ptr) ucrtbase.modff
@ cdecl nan(str) ucrtbase.nan
@ cdecl nanf(str) ucrtbase.nanf
@ cdecl nanl(str) ucrtbase.nanl
@@ -304,7 +304,7 @@
@ stub normf
@ stub norml
@ cdecl pow(double double) ucrtbase.pow
-@ cdecl -arch=arm,x86_64 powf(float float) ucrtbase.powf
+@ cdecl -arch=arm,x86_64,arm64 powf(float float) ucrtbase.powf
@ cdecl remainder(double double) ucrtbase.remainder
@ cdecl remainderf(float float) ucrtbase.remainderf
@ cdecl remainderl(double double) ucrtbase.remainderl
@@ -324,15 +324,15 @@
@ cdecl scalbnf(float long) ucrtbase.scalbnf
@ cdecl scalbnl(double long) ucrtbase.scalbnl
@ cdecl sin(double) ucrtbase.sin
-@ cdecl -arch=arm,x86_64 sinf(float) ucrtbase.sinf
+@ cdecl -arch=arm,x86_64,arm64 sinf(float) ucrtbase.sinf
@ cdecl sinh(double) ucrtbase.sinh
-@ cdecl -arch=arm,x86_64 sinhf(float) ucrtbase.sinhf
+@ cdecl -arch=arm,x86_64,arm64 sinhf(float) ucrtbase.sinhf
@ cdecl sqrt(double) ucrtbase.sqrt
-@ cdecl -arch=arm,x86_64 sqrtf(float) ucrtbase.sqrtf
+@ cdecl -arch=arm,x86_64,arm64 sqrtf(float) ucrtbase.sqrtf
@ cdecl tan(double) ucrtbase.tan
-@ cdecl -arch=arm,x86_64 tanf(float) ucrtbase.tanf
+@ cdecl -arch=arm,x86_64,arm64 tanf(float) ucrtbase.tanf
@ cdecl tanh(double) ucrtbase.tanh
-@ cdecl -arch=arm,x86_64 tanhf(float) ucrtbase.tanhf
+@ cdecl -arch=arm,x86_64,arm64 tanhf(float) ucrtbase.tanhf
@ stub tgamma
@ stub tgammaf
@ stub tgammal
diff --git a/dlls/msvcr100/msvcr100.spec b/dlls/msvcr100/msvcr100.spec
index f6200ad..7379774 100644
--- a/dlls/msvcr100/msvcr100.spec
+++ b/dlls/msvcr100/msvcr100.spec
@@ -720,7 +720,7 @@
@ cdecl _chdir(str) MSVCRT__chdir
@ cdecl _chdrive(long) MSVCRT__chdrive
@ cdecl _chgsign(double) MSVCRT__chgsign
-@ cdecl -arch=arm,x86_64 _chgsignf(float) MSVCRT__chgsignf
+@ cdecl -arch=arm,x86_64,arm64 _chgsignf(float) MSVCRT__chgsignf
@ cdecl -arch=i386 -norelay _chkesp()
@ cdecl _chmod(str long) MSVCRT__chmod
@ cdecl _chsize(long long) MSVCRT__chsize
@@ -734,7 +734,7 @@
@ cdecl _controlfp(long long)
@ cdecl _controlfp_s(ptr long long)
@ cdecl _copysign(double double) MSVCRT__copysign
-@ cdecl -arch=arm,x86_64 _copysignf(float float) MSVCRT__copysignf
+@ cdecl -arch=arm,x86_64,arm64 _copysignf(float float) MSVCRT__copysignf
@ varargs _cprintf(str)
@ stub _cprintf_l
@ stub _cprintf_p
@@ -819,7 +819,7 @@
@ cdecl _findnext64(long ptr) MSVCRT__findnext64
@ cdecl _findnext64i32(long ptr) MSVCRT__findnext64i32
@ cdecl _finite(double) MSVCRT__finite
-@ cdecl -arch=arm,x86_64 _finitef(float) MSVCRT__finitef
+@ cdecl -arch=arm,x86_64,arm64 _finitef(float) MSVCRT__finitef
@ cdecl _flsbuf(long ptr) MSVCRT__flsbuf
@ cdecl _flushall() MSVCRT__flushall
@ extern _fmode MSVCRT__fmode
@@ -1053,7 +1053,7 @@
@ cdecl _lock_file(ptr) MSVCRT__lock_file
@ cdecl _locking(long long long) MSVCRT__locking
@ cdecl _logb(double) MSVCRT__logb
-@ cdecl -arch=arm,x86_64 _logbf(float) MSVCRT__logbf
+@ cdecl -arch=arm,x86_64,arm64 _logbf(float) MSVCRT__logbf
@ cdecl -arch=i386 _longjmpex(ptr long) MSVCRT_longjmp
@ cdecl _lrotl(long long) MSVCRT__lrotl
@ cdecl _lrotr(long long) MSVCRT__lrotr
@@ -1627,15 +1627,15 @@
@ cdecl abort() MSVCRT_abort
@ cdecl abs(long) MSVCRT_abs
@ cdecl acos(double) MSVCRT_acos
-@ cdecl -arch=arm,x86_64 acosf(float) MSVCRT_acosf
+@ cdecl -arch=arm,x86_64,arm64 acosf(float) MSVCRT_acosf
@ cdecl asctime(ptr) MSVCRT_asctime
@ cdecl asctime_s(ptr long ptr) MSVCRT_asctime_s
@ cdecl asin(double) MSVCRT_asin
-@ cdecl -arch=arm,x86_64 asinf(float) MSVCRT_asinf
+@ cdecl -arch=arm,x86_64,arm64 asinf(float) MSVCRT_asinf
@ cdecl atan(double) MSVCRT_atan
-@ cdecl -arch=arm,x86_64 atanf(float) MSVCRT_atanf
+@ cdecl -arch=arm,x86_64,arm64 atanf(float) MSVCRT_atanf
@ cdecl atan2(double double) MSVCRT_atan2
-@ cdecl -arch=arm,x86_64 atan2f(float float) MSVCRT_atan2f
+@ cdecl -arch=arm,x86_64,arm64 atan2f(float float) MSVCRT_atan2f
@ cdecl -private atexit(ptr) MSVCRT_atexit # not imported to avoid conflicts with Mingw
@ cdecl atof(str) MSVCRT_atof
@ cdecl atoi(str) MSVCRT_atoi
@@ -1645,18 +1645,18 @@
@ cdecl btowc(long) MSVCRT_btowc
@ cdecl calloc(long long) MSVCRT_calloc
@ cdecl ceil(double) MSVCRT_ceil
-@ cdecl -arch=arm,x86_64 ceilf(float) MSVCRT_ceilf
+@ cdecl -arch=arm,x86_64,arm64 ceilf(float) MSVCRT_ceilf
@ cdecl clearerr(ptr) MSVCRT_clearerr
@ stub clearerr_s
@ cdecl clock() MSVCRT_clock
@ cdecl cos(double) MSVCRT_cos
-@ cdecl -arch=arm,x86_64 cosf(float) MSVCRT_cosf
+@ cdecl -arch=arm,x86_64,arm64 cosf(float) MSVCRT_cosf
@ cdecl cosh(double) MSVCRT_cosh
-@ cdecl -arch=arm,x86_64 coshf(float) MSVCRT_coshf
+@ cdecl -arch=arm,x86_64,arm64 coshf(float) MSVCRT_coshf
@ cdecl -ret64 div(long long) MSVCRT_div
@ cdecl exit(long) MSVCRT_exit
@ cdecl exp(double) MSVCRT_exp
-@ cdecl -arch=arm,x86_64 expf(float) MSVCRT_expf
+@ cdecl -arch=arm,x86_64,arm64 expf(float) MSVCRT_expf
@ cdecl fabs(double) MSVCRT_fabs
@ cdecl fclose(ptr) MSVCRT_fclose
@ cdecl feof(ptr) MSVCRT_feof
@@ -1668,9 +1668,9 @@
@ cdecl fgetwc(ptr) MSVCRT_fgetwc
@ cdecl fgetws(ptr long ptr) MSVCRT_fgetws
@ cdecl floor(double) MSVCRT_floor
-@ cdecl -arch=arm,x86_64 floorf(float) MSVCRT_floorf
+@ cdecl -arch=arm,x86_64,arm64 floorf(float) MSVCRT_floorf
@ cdecl fmod(double double) MSVCRT_fmod
-@ cdecl -arch=arm,x86_64 fmodf(float float) MSVCRT_fmodf
+@ cdecl -arch=arm,x86_64,arm64 fmodf(float float) MSVCRT_fmodf
@ cdecl fopen(str str) MSVCRT_fopen
@ cdecl fopen_s(ptr str str) MSVCRT_fopen_s
@ varargs fprintf(ptr str) MSVCRT_fprintf
@@ -1736,9 +1736,9 @@
@ cdecl lldiv(int64 int64) MSVCRT_lldiv
@ cdecl localeconv() MSVCRT_localeconv
@ cdecl log(double) MSVCRT_log
-@ cdecl -arch=arm,x86_64 logf(float) MSVCRT_logf
+@ cdecl -arch=arm,x86_64,arm64 logf(float) MSVCRT_logf
@ cdecl log10(double) MSVCRT_log10
-@ cdecl -arch=arm,x86_64 log10f(float) MSVCRT_log10f
+@ cdecl -arch=arm,x86_64,arm64 log10f(float) MSVCRT_log10f
@ cdecl -arch=i386,x86_64,arm longjmp(ptr long) MSVCRT_longjmp
@ cdecl malloc(long) MSVCRT_malloc
@ cdecl mblen(ptr long) MSVCRT_mblen
@@ -1757,10 +1757,10 @@
@ cdecl memmove_s(ptr long ptr long) MSVCRT_memmove_s
@ cdecl memset(ptr long long) MSVCRT_memset
@ cdecl modf(double ptr) MSVCRT_modf
-@ cdecl -arch=arm,x86_64 modff(float ptr) MSVCRT_modff
+@ cdecl -arch=arm,x86_64,arm64 modff(float ptr) MSVCRT_modff
@ cdecl perror(str) MSVCRT_perror
@ cdecl pow(double double) MSVCRT_pow
-@ cdecl -arch=arm,x86_64 powf(float float) MSVCRT_powf
+@ cdecl -arch=arm,x86_64,arm64 powf(float float) MSVCRT_powf
@ varargs printf(str) MSVCRT_printf
@ varargs printf_s(str) MSVCRT_printf_s
@ cdecl putc(long ptr) MSVCRT_putc
@@ -1785,13 +1785,13 @@
@ cdecl setvbuf(ptr str long long) MSVCRT_setvbuf
@ cdecl signal(long long) MSVCRT_signal
@ cdecl sin(double) MSVCRT_sin
-@ cdecl -arch=arm,x86_64 sinf(float) MSVCRT_sinf
+@ cdecl -arch=arm,x86_64,arm64 sinf(float) MSVCRT_sinf
@ cdecl sinh(double) MSVCRT_sinh
-@ cdecl -arch=arm,x86_64 sinhf(float) MSVCRT_sinhf
+@ cdecl -arch=arm,x86_64,arm64 sinhf(float) MSVCRT_sinhf
@ varargs sprintf(ptr str) MSVCRT_sprintf
@ varargs sprintf_s(ptr long str) MSVCRT_sprintf_s
@ cdecl sqrt(double) MSVCRT_sqrt
-@ cdecl -arch=arm,x86_64 sqrtf(float) MSVCRT_sqrtf
+@ cdecl -arch=arm,x86_64,arm64 sqrtf(float) MSVCRT_sqrtf
@ cdecl srand(long) MSVCRT_srand
@ varargs sscanf(str str) MSVCRT_sscanf
@ varargs sscanf_s(str str) MSVCRT_sscanf_s
@@ -1828,9 +1828,9 @@
@ varargs swscanf_s(wstr wstr) MSVCRT_swscanf_s
@ cdecl system(str) MSVCRT_system
@ cdecl tan(double) MSVCRT_tan
-@ cdecl -arch=arm,x86_64 tanf(float) MSVCRT_tanf
+@ cdecl -arch=arm,x86_64,arm64 tanf(float) MSVCRT_tanf
@ cdecl tanh(double) MSVCRT_tanh
-@ cdecl -arch=arm,x86_64 tanhf(float) MSVCRT_tanhf
+@ cdecl -arch=arm,x86_64,arm64 tanhf(float) MSVCRT_tanhf
@ cdecl tmpfile() MSVCRT_tmpfile
@ cdecl tmpfile_s(ptr) MSVCRT_tmpfile_s
@ cdecl tmpnam(ptr) MSVCRT_tmpnam
diff --git a/dlls/msvcr110/msvcr110.spec b/dlls/msvcr110/msvcr110.spec
index ba69912..0a307ec 100644
--- a/dlls/msvcr110/msvcr110.spec
+++ b/dlls/msvcr110/msvcr110.spec
@@ -1068,7 +1068,7 @@
@ cdecl _chdir(str) MSVCRT__chdir
@ cdecl _chdrive(long) MSVCRT__chdrive
@ cdecl _chgsign(double) MSVCRT__chgsign
-@ cdecl -arch=arm,x86_64 _chgsignf(float) MSVCRT__chgsignf
+@ cdecl -arch=arm,x86_64,arm64 _chgsignf(float) MSVCRT__chgsignf
@ cdecl -arch=i386 -norelay _chkesp()
@ cdecl _chmod(str long) MSVCRT__chmod
@ cdecl _chsize(long long) MSVCRT__chsize
@@ -1082,7 +1082,7 @@
@ cdecl _controlfp(long long)
@ cdecl _controlfp_s(ptr long long)
@ cdecl _copysign(double double) MSVCRT__copysign
-@ cdecl -arch=arm,x86_64 _copysignf(float float) MSVCRT__copysignf
+@ cdecl -arch=arm,x86_64,arm64 _copysignf(float float) MSVCRT__copysignf
@ varargs _cprintf(str)
@ stub _cprintf_l
@ stub _cprintf_p
@@ -1166,7 +1166,7 @@
@ cdecl _findnext64(long ptr) MSVCRT__findnext64
@ cdecl _findnext64i32(long ptr) MSVCRT__findnext64i32
@ cdecl _finite(double) MSVCRT__finite
-@ cdecl -arch=arm,x86_64 _finitef(float) MSVCRT__finitef
+@ cdecl -arch=arm,x86_64,arm64 _finitef(float) MSVCRT__finitef
@ cdecl _flsbuf(long ptr) MSVCRT__flsbuf
@ cdecl _flushall() MSVCRT__flushall
@ extern _fmode MSVCRT__fmode
@@ -1410,7 +1410,7 @@
@ cdecl _lock_file(ptr) MSVCRT__lock_file
@ cdecl _locking(long long long) MSVCRT__locking
@ cdecl _logb(double) MSVCRT__logb
-@ cdecl -arch=arm,x86_64 _logbf(float) MSVCRT__logbf
+@ cdecl -arch=arm,x86_64,arm64 _logbf(float) MSVCRT__logbf
@ cdecl -arch=i386 _longjmpex(ptr long) MSVCRT_longjmp
@ cdecl _lrotl(long long) MSVCRT__lrotl
@ cdecl _lrotr(long long) MSVCRT__lrotr
@@ -1984,15 +1984,15 @@
@ cdecl abort() MSVCRT_abort
@ cdecl abs(long) MSVCRT_abs
@ cdecl acos(double) MSVCRT_acos
-@ cdecl -arch=arm,x86_64 acosf(float) MSVCRT_acosf
+@ cdecl -arch=arm,x86_64,arm64 acosf(float) MSVCRT_acosf
@ cdecl asctime(ptr) MSVCRT_asctime
@ cdecl asctime_s(ptr long ptr) MSVCRT_asctime_s
@ cdecl asin(double) MSVCRT_asin
-@ cdecl -arch=arm,x86_64 asinf(float) MSVCRT_asinf
+@ cdecl -arch=arm,x86_64,arm64 asinf(float) MSVCRT_asinf
@ cdecl atan(double) MSVCRT_atan
-@ cdecl -arch=arm,x86_64 atanf(float) MSVCRT_atanf
+@ cdecl -arch=arm,x86_64,arm64 atanf(float) MSVCRT_atanf
@ cdecl atan2(double double) MSVCRT_atan2
-@ cdecl -arch=arm,x86_64 atan2f(float float) MSVCRT_atan2f
+@ cdecl -arch=arm,x86_64,arm64 atan2f(float float) MSVCRT_atan2f
@ cdecl -private atexit(ptr) MSVCRT_atexit # not imported to avoid conflicts with Mingw
@ cdecl atof(str) MSVCRT_atof
@ cdecl atoi(str) MSVCRT_atoi
@@ -2002,20 +2002,20 @@
@ cdecl btowc(long) MSVCRT_btowc
@ cdecl calloc(long long) MSVCRT_calloc
@ cdecl ceil(double) MSVCRT_ceil
-@ cdecl -arch=arm,x86_64 ceilf(float) MSVCRT_ceilf
+@ cdecl -arch=arm,x86_64,arm64 ceilf(float) MSVCRT_ceilf
@ cdecl clearerr(ptr) MSVCRT_clearerr
@ stub clearerr_s
@ cdecl clock() MSVCRT_clock
@ cdecl cos(double) MSVCRT_cos
-@ cdecl -arch=arm,x86_64 cosf(float) MSVCRT_cosf
+@ cdecl -arch=arm,x86_64,arm64 cosf(float) MSVCRT_cosf
@ cdecl cosh(double) MSVCRT_cosh
-@ cdecl -arch=arm,x86_64 coshf(float) MSVCRT_coshf
+@ cdecl -arch=arm,x86_64,arm64 coshf(float) MSVCRT_coshf
@ cdecl -ret64 div(long long) MSVCRT_div
@ cdecl exit(long) MSVCRT_exit
@ cdecl exp(double) MSVCRT_exp
-@ cdecl -arch=arm,x86_64 expf(float) MSVCRT_expf
+@ cdecl -arch=arm,x86_64,arm64 expf(float) MSVCRT_expf
@ cdecl fabs(double) MSVCRT_fabs
-@ cdecl -arch=arm,x86_64 fabsf(float) MSVCRT_fabsf
+@ cdecl -arch=arm,x86_64,arm64 fabsf(float) MSVCRT_fabsf
@ cdecl fclose(ptr) MSVCRT_fclose
@ cdecl feof(ptr) MSVCRT_feof
@ cdecl ferror(ptr) MSVCRT_ferror
@@ -2026,9 +2026,9 @@
@ cdecl fgetwc(ptr) MSVCRT_fgetwc
@ cdecl fgetws(ptr long ptr) MSVCRT_fgetws
@ cdecl floor(double) MSVCRT_floor
-@ cdecl -arch=arm,x86_64 floorf(float) MSVCRT_floorf
+@ cdecl -arch=arm,x86_64,arm64 floorf(float) MSVCRT_floorf
@ cdecl fmod(double double) MSVCRT_fmod
-@ cdecl -arch=arm,x86_64 fmodf(float float) MSVCRT_fmodf
+@ cdecl -arch=arm,x86_64,arm64 fmodf(float float) MSVCRT_fmodf
@ cdecl fopen(str str) MSVCRT_fopen
@ cdecl fopen_s(ptr str str) MSVCRT_fopen_s
@ varargs fprintf(ptr str) MSVCRT_fprintf
@@ -2094,9 +2094,9 @@
@ cdecl lldiv(int64 int64) MSVCRT_lldiv
@ cdecl localeconv() MSVCRT_localeconv
@ cdecl log(double) MSVCRT_log
-@ cdecl -arch=arm,x86_64 logf(float) MSVCRT_logf
+@ cdecl -arch=arm,x86_64,arm64 logf(float) MSVCRT_logf
@ cdecl log10(double) MSVCRT_log10
-@ cdecl -arch=arm,x86_64 log10f(float) MSVCRT_log10f
+@ cdecl -arch=arm,x86_64,arm64 log10f(float) MSVCRT_log10f
@ cdecl -arch=i386,x86_64,arm longjmp(ptr long) MSVCRT_longjmp
@ cdecl malloc(long) MSVCRT_malloc
@ cdecl mblen(ptr long) MSVCRT_mblen
@@ -2115,10 +2115,10 @@
@ cdecl memmove_s(ptr long ptr long) MSVCRT_memmove_s
@ cdecl memset(ptr long long) MSVCRT_memset
@ cdecl modf(double ptr) MSVCRT_modf
-@ cdecl -arch=arm,x86_64 modff(float ptr) MSVCRT_modff
+@ cdecl -arch=arm,x86_64,arm64 modff(float ptr) MSVCRT_modff
@ cdecl perror(str) MSVCRT_perror
@ cdecl pow(double double) MSVCRT_pow
-@ cdecl -arch=arm,x86_64 powf(float float) MSVCRT_powf
+@ cdecl -arch=arm,x86_64,arm64 powf(float float) MSVCRT_powf
@ varargs printf(str) MSVCRT_printf
@ varargs printf_s(str) MSVCRT_printf_s
@ cdecl putc(long ptr) MSVCRT_putc
@@ -2143,13 +2143,13 @@
@ cdecl setvbuf(ptr str long long) MSVCRT_setvbuf
@ cdecl signal(long long) MSVCRT_signal
@ cdecl sin(double) MSVCRT_sin
-@ cdecl -arch=arm,x86_64 sinf(float) MSVCRT_sinf
+@ cdecl -arch=arm,x86_64,arm64 sinf(float) MSVCRT_sinf
@ cdecl sinh(double) MSVCRT_sinh
-@ cdecl -arch=arm,x86_64 sinhf(float) MSVCRT_sinhf
+@ cdecl -arch=arm,x86_64,arm64 sinhf(float) MSVCRT_sinhf
@ varargs sprintf(ptr str) MSVCRT_sprintf
@ varargs sprintf_s(ptr long str) MSVCRT_sprintf_s
@ cdecl sqrt(double) MSVCRT_sqrt
-@ cdecl -arch=arm,x86_64 sqrtf(float) MSVCRT_sqrtf
+@ cdecl -arch=arm,x86_64,arm64 sqrtf(float) MSVCRT_sqrtf
@ cdecl srand(long) MSVCRT_srand
@ varargs sscanf(str str) MSVCRT_sscanf
@ varargs sscanf_s(str str) MSVCRT_sscanf_s
@@ -2186,9 +2186,9 @@
@ varargs swscanf_s(wstr wstr) MSVCRT_swscanf_s
@ cdecl system(str) MSVCRT_system
@ cdecl tan(double) MSVCRT_tan
-@ cdecl -arch=arm,x86_64 tanf(float) MSVCRT_tanf
+@ cdecl -arch=arm,x86_64,arm64 tanf(float) MSVCRT_tanf
@ cdecl tanh(double) MSVCRT_tanh
-@ cdecl -arch=arm,x86_64 tanhf(float) MSVCRT_tanhf
+@ cdecl -arch=arm,x86_64,arm64 tanhf(float) MSVCRT_tanhf
@ cdecl tmpfile() MSVCRT_tmpfile
@ cdecl tmpfile_s(ptr) MSVCRT_tmpfile_s
@ cdecl tmpnam(ptr) MSVCRT_tmpnam
diff --git a/dlls/msvcr120/msvcr120.spec b/dlls/msvcr120/msvcr120.spec
index 726926f..81bef04 100644
--- a/dlls/msvcr120/msvcr120.spec
+++ b/dlls/msvcr120/msvcr120.spec
@@ -1166,7 +1166,7 @@
@ cdecl _findnext64(long ptr) MSVCRT__findnext64
@ cdecl _findnext64i32(long ptr) MSVCRT__findnext64i32
@ cdecl _finite(double) MSVCRT__finite
-@ cdecl -arch=arm,x86_64 _finitef(float) MSVCRT__finitef
+@ cdecl -arch=arm,x86_64,arm64 _finitef(float) MSVCRT__finitef
@ cdecl _flsbuf(long ptr) MSVCRT__flsbuf
@ cdecl _flushall() MSVCRT__flushall
@ extern _fmode MSVCRT__fmode
@@ -1420,7 +1420,7 @@
@ cdecl _lock_file(ptr) MSVCRT__lock_file
@ cdecl _locking(long long long) MSVCRT__locking
@ cdecl _logb(double) MSVCRT__logb
-@ cdecl -arch=arm,x86_64 _logbf(float) MSVCRT__logbf
+@ cdecl -arch=arm,x86_64,arm64 _logbf(float) MSVCRT__logbf
@ cdecl -arch=i386 _longjmpex(ptr long) MSVCRT_longjmp
@ cdecl _lrotl(long long) MSVCRT__lrotl
@ cdecl _lrotr(long long) MSVCRT__lrotr
@@ -2010,21 +2010,21 @@
@ cdecl abort() MSVCRT_abort
@ cdecl abs(long) MSVCRT_abs
@ cdecl acos(double) MSVCRT_acos
-@ cdecl -arch=arm,x86_64 acosf(float) MSVCRT_acosf
+@ cdecl -arch=arm,x86_64,arm64 acosf(float) MSVCRT_acosf
@ cdecl acosh(double) MSVCR120_acosh
@ cdecl acoshf(float) MSVCR120_acoshf
@ cdecl acoshl(double) MSVCR120_acoshl
@ cdecl asctime(ptr) MSVCRT_asctime
@ cdecl asctime_s(ptr long ptr) MSVCRT_asctime_s
@ cdecl asin(double) MSVCRT_asin
-@ cdecl -arch=arm,x86_64 asinf(float) MSVCRT_asinf
+@ cdecl -arch=arm,x86_64,arm64 asinf(float) MSVCRT_asinf
@ cdecl asinh(double) MSVCR120_asinh
@ cdecl asinhf(float) MSVCR120_asinhf
@ cdecl asinhl(double) MSVCR120_asinhl
@ cdecl atan(double) MSVCRT_atan
-@ cdecl -arch=arm,x86_64 atanf(float) MSVCRT_atanf
+@ cdecl -arch=arm,x86_64,arm64 atanf(float) MSVCRT_atanf
@ cdecl atan2(double double) MSVCRT_atan2
-@ cdecl -arch=arm,x86_64 atan2f(float float) MSVCRT_atan2f
+@ cdecl -arch=arm,x86_64,arm64 atan2f(float float) MSVCRT_atan2f
@ cdecl atanh(double) MSVCR120_atanh
@ cdecl atanhf(float) MSVCR120_atanhf
@ cdecl atanhl(double) MSVCR120_atanhl
@@ -2071,7 +2071,7 @@
@ stub ccoshl
@ stub ccosl
@ cdecl ceil(double) MSVCRT_ceil
-@ cdecl -arch=arm,x86_64 ceilf(float) MSVCRT_ceilf
+@ cdecl -arch=arm,x86_64,arm64 ceilf(float) MSVCRT_ceilf
@ stub cexp
@ stub cexpf
@ stub cexpl
@@ -2094,9 +2094,9 @@
@ cdecl copysignf(float float) MSVCRT__copysignf
@ cdecl copysignl(double double) MSVCRT__copysign
@ cdecl cos(double) MSVCRT_cos
-@ cdecl -arch=arm,x86_64 cosf(float) MSVCRT_cosf
+@ cdecl -arch=arm,x86_64,arm64 cosf(float) MSVCRT_cosf
@ cdecl cosh(double) MSVCRT_cosh
-@ cdecl -arch=arm,x86_64 coshf(float) MSVCRT_coshf
+@ cdecl -arch=arm,x86_64,arm64 coshf(float) MSVCRT_coshf
@ stub cpow
@ stub cpowf
@ stub cpowl
@@ -2133,12 +2133,12 @@
@ cdecl exp2(double) MSVCR120_exp2
@ cdecl exp2f(float) MSVCR120_exp2f
@ cdecl exp2l(double) MSVCR120_exp2l
-@ cdecl -arch=arm,x86_64 expf(float) MSVCRT_expf
+@ cdecl -arch=arm,x86_64,arm64 expf(float) MSVCRT_expf
@ cdecl expm1(double) MSVCR120_expm1
@ cdecl expm1f(float) MSVCR120_expm1f
@ cdecl expm1l(double) MSVCR120_expm1l
@ cdecl fabs(double) MSVCRT_fabs
-@ cdecl -arch=arm,x86_64 fabsf(float) MSVCRT_fabsf
+@ cdecl -arch=arm,x86_64,arm64 fabsf(float) MSVCRT_fabsf
@ cdecl fclose(ptr) MSVCRT_fclose
@ stub fdim
@ stub fdimf
@@ -2163,7 +2163,7 @@
@ cdecl fgetwc(ptr) MSVCRT_fgetwc
@ cdecl fgetws(ptr long ptr) MSVCRT_fgetws
@ cdecl floor(double) MSVCRT_floor
-@ cdecl -arch=arm,x86_64 floorf(float) MSVCRT_floorf
+@ cdecl -arch=arm,x86_64,arm64 floorf(float) MSVCRT_floorf
@ stub fma
@ stub fmaf
@ stub fmal
@@ -2174,7 +2174,7 @@
@ cdecl fminf(float float) MSVCR120_fminf
@ cdecl fminl(double double) MSVCR120_fmin
@ cdecl fmod(double double) MSVCRT_fmod
-@ cdecl -arch=arm,x86_64 fmodf(float float) MSVCRT_fmodf
+@ cdecl -arch=arm,x86_64,arm64 fmodf(float float) MSVCRT_fmodf
@ cdecl fopen(str str) MSVCRT_fopen
@ cdecl fopen_s(ptr str str) MSVCRT_fopen_s
@ varargs fprintf(ptr str) MSVCRT_fprintf
@@ -2256,9 +2256,9 @@
@ cdecl -ret64 llroundl(double) MSVCR120_llroundl
@ cdecl localeconv() MSVCRT_localeconv
@ cdecl log(double) MSVCRT_log
-@ cdecl -arch=arm,x86_64 logf(float) MSVCRT_logf
+@ cdecl -arch=arm,x86_64,arm64 logf(float) MSVCRT_logf
@ cdecl log10(double) MSVCRT_log10
-@ cdecl -arch=arm,x86_64 log10f(float) MSVCRT_log10f
+@ cdecl -arch=arm,x86_64,arm64 log10f(float) MSVCRT_log10f
@ cdecl log1p(double) MSVCR120_log1p
@ cdecl log1pf(float) MSVCR120_log1pf
@ cdecl log1pl(double) MSVCR120_log1pl
@@ -2292,7 +2292,7 @@
@ cdecl memmove_s(ptr long ptr long) MSVCRT_memmove_s
@ cdecl memset(ptr long long) MSVCRT_memset
@ cdecl modf(double ptr) MSVCRT_modf
-@ cdecl -arch=arm,x86_64 modff(float ptr) MSVCRT_modff
+@ cdecl -arch=arm,x86_64,arm64 modff(float ptr) MSVCRT_modff
@ cdecl nan(str) MSVCR120_nan
@ cdecl nanf(str) MSVCR120_nanf
@ cdecl nanl(str) MSVCR120_nan
@@ -2310,7 +2310,7 @@
@ stub norml
@ cdecl perror(str) MSVCRT_perror
@ cdecl pow(double double) MSVCRT_pow
-@ cdecl -arch=arm,x86_64 powf(float float) MSVCRT_powf
+@ cdecl -arch=arm,x86_64,arm64 powf(float float) MSVCRT_powf
@ varargs printf(str) MSVCRT_printf
@ varargs printf_s(str) MSVCRT_printf_s
@ cdecl putc(long ptr) MSVCRT_putc
@@ -2353,13 +2353,13 @@
@ cdecl setvbuf(ptr str long long) MSVCRT_setvbuf
@ cdecl signal(long long) MSVCRT_signal
@ cdecl sin(double) MSVCRT_sin
-@ cdecl -arch=arm,x86_64 sinf(float) MSVCRT_sinf
+@ cdecl -arch=arm,x86_64,arm64 sinf(float) MSVCRT_sinf
@ cdecl sinh(double) MSVCRT_sinh
-@ cdecl -arch=arm,x86_64 sinhf(float) MSVCRT_sinhf
+@ cdecl -arch=arm,x86_64,arm64 sinhf(float) MSVCRT_sinhf
@ varargs sprintf(ptr str) MSVCRT_sprintf
@ varargs sprintf_s(ptr long str) MSVCRT_sprintf_s
@ cdecl sqrt(double) MSVCRT_sqrt
-@ cdecl -arch=arm,x86_64 sqrtf(float) MSVCRT_sqrtf
+@ cdecl -arch=arm,x86_64,arm64 sqrtf(float) MSVCRT_sqrtf
@ cdecl srand(long) MSVCRT_srand
@ varargs sscanf(str str) MSVCRT_sscanf
@ varargs sscanf_s(str str) MSVCRT_sscanf_s
@@ -2402,9 +2402,9 @@
@ varargs swscanf_s(wstr wstr) MSVCRT_swscanf_s
@ cdecl system(str) MSVCRT_system
@ cdecl tan(double) MSVCRT_tan
-@ cdecl -arch=arm,x86_64 tanf(float) MSVCRT_tanf
+@ cdecl -arch=arm,x86_64,arm64 tanf(float) MSVCRT_tanf
@ cdecl tanh(double) MSVCRT_tanh
-@ cdecl -arch=arm,x86_64 tanhf(float) MSVCRT_tanhf
+@ cdecl -arch=arm,x86_64,arm64 tanhf(float) MSVCRT_tanhf
@ stub tgamma
@ stub tgammaf
@ stub tgammal
diff --git a/dlls/msvcr120_app/msvcr120_app.spec b/dlls/msvcr120_app/msvcr120_app.spec
index 3a44a04..98678d1 100644
--- a/dlls/msvcr120_app/msvcr120_app.spec
+++ b/dlls/msvcr120_app/msvcr120_app.spec
@@ -1094,7 +1094,7 @@
@ cdecl _findnext64(long ptr) msvcr120._findnext64
@ cdecl _findnext64i32(long ptr) msvcr120._findnext64i32
@ cdecl _finite(double) msvcr120._finite
-@ cdecl -arch=arm,x86_64 _finitef(float) msvcr120._finitef
+@ cdecl -arch=arm,x86_64,arm64 _finitef(float) msvcr120._finitef
@ cdecl _flsbuf(long ptr) msvcr120._flsbuf
@ cdecl _flushall() msvcr120._flushall
@ extern _fmode msvcr120._fmode
@@ -1283,7 +1283,7 @@
@ cdecl _lock_file(ptr) msvcr120._lock_file
@ cdecl _locking(long long long) msvcr120._locking
@ cdecl _logb(double) msvcr120._logb
-@ cdecl -arch=arm,x86_64 _logbf(float) msvcr120._logbf
+@ cdecl -arch=arm,x86_64,arm64 _logbf(float) msvcr120._logbf
@ cdecl -arch=i386 _longjmpex(ptr long) msvcr120._longjmpex
@ cdecl _lrotl(long long) msvcr120._lrotl
@ cdecl _lrotr(long long) msvcr120._lrotr
@@ -1676,21 +1676,21 @@
@ cdecl abort() msvcr120.abort
@ cdecl abs(long) msvcr120.abs
@ cdecl acos(double) msvcr120.acos
-@ cdecl -arch=arm,x86_64 acosf(float) msvcr120.acosf
+@ cdecl -arch=arm,x86_64,arm64 acosf(float) msvcr120.acosf
@ cdecl acosh(double) msvcr120.acosh
@ cdecl acoshf(float) msvcr120.acoshf
@ cdecl acoshl(double) msvcr120.acoshl
@ cdecl asctime(ptr) msvcr120.asctime
@ cdecl asctime_s(ptr long ptr) msvcr120.asctime_s
@ cdecl asin(double) msvcr120.asin
-@ cdecl -arch=arm,x86_64 asinf(float) msvcr120.asinf
+@ cdecl -arch=arm,x86_64,arm64 asinf(float) msvcr120.asinf
@ cdecl asinh(double) msvcr120.asinh
@ cdecl asinhf(float) msvcr120.asinhf
@ cdecl asinhl(double) msvcr120.asinhl
@ cdecl atan(double) msvcr120.atan
-@ cdecl -arch=arm,x86_64 atanf(float) msvcr120.atanf
+@ cdecl -arch=arm,x86_64,arm64 atanf(float) msvcr120.atanf
@ cdecl atan2(double double) msvcr120.atan2
-@ cdecl -arch=arm,x86_64 atan2f(float float) msvcr120.atan2f
+@ cdecl -arch=arm,x86_64,arm64 atan2f(float float) msvcr120.atan2f
@ cdecl atanh(double) msvcr120.atanh
@ cdecl atanhf(float) msvcr120.atanhf
@ cdecl atanhl(double) msvcr120.atanhl
@@ -1737,7 +1737,7 @@
@ stub ccoshl
@ stub ccosl
@ cdecl ceil(double) msvcr120.ceil
-@ cdecl -arch=arm,x86_64 ceilf(float) msvcr120.ceilf
+@ cdecl -arch=arm,x86_64,arm64 ceilf(float) msvcr120.ceilf
@ stub cexp
@ stub cexpf
@ stub cexpl
@@ -1760,9 +1760,9 @@
@ cdecl copysignf(float float) msvcr120.copysignf
@ cdecl copysignl(double double) msvcr120.copysignl
@ cdecl cos(double) msvcr120.cos
-@ cdecl -arch=arm,x86_64 cosf(float) msvcr120.cosf
+@ cdecl -arch=arm,x86_64,arm64 cosf(float) msvcr120.cosf
@ cdecl cosh(double) msvcr120.cosh
-@ cdecl -arch=arm,x86_64 coshf(float) msvcr120.coshf
+@ cdecl -arch=arm,x86_64,arm64 coshf(float) msvcr120.coshf
@ stub cpow
@ stub cpowf
@ stub cpowl
@@ -1799,12 +1799,12 @@
@ cdecl exp2(double) msvcr120.exp2
@ cdecl exp2f(float) msvcr120.exp2f
@ cdecl exp2l(double) msvcr120.exp2l
-@ cdecl -arch=arm,x86_64 expf(float) msvcr120.expf
+@ cdecl -arch=arm,x86_64,arm64 expf(float) msvcr120.expf
@ cdecl expm1(double) msvcr120.expm1
@ cdecl expm1f(float) msvcr120.expm1f
@ cdecl expm1l(double) msvcr120.expm1l
@ cdecl fabs(double) msvcr120.fabs
-@ cdecl -arch=arm,x86_64 fabsf(float) msvcr120.fabsf
+@ cdecl -arch=arm,x86_64,arm64 fabsf(float) msvcr120.fabsf
@ cdecl fclose(ptr) msvcr120.fclose
@ stub fdim
@ stub fdimf
@@ -1829,7 +1829,7 @@
@ cdecl fgetwc(ptr) msvcr120.fgetwc
@ cdecl fgetws(ptr long ptr) msvcr120.fgetws
@ cdecl floor(double) msvcr120.floor
-@ cdecl -arch=arm,x86_64 floorf(float) msvcr120.floorf
+@ cdecl -arch=arm,x86_64,arm64 floorf(float) msvcr120.floorf
@ stub fma
@ stub fmaf
@ stub fmal
@@ -1840,7 +1840,7 @@
@ cdecl fminf(float float) msvcr120.fminf
@ cdecl fminl(double double) msvcr120.fminl
@ cdecl fmod(double double) msvcr120.fmod
-@ cdecl -arch=arm,x86_64 fmodf(float float) msvcr120.fmodf
+@ cdecl -arch=arm,x86_64,arm64 fmodf(float float) msvcr120.fmodf
@ cdecl fopen(str str) msvcr120.fopen
@ cdecl fopen_s(ptr str str) msvcr120.fopen_s
@ varargs fprintf(ptr str) msvcr120.fprintf
@@ -1919,9 +1919,9 @@
@ cdecl -ret64 llroundl(double) msvcr120.llroundl
@ cdecl localeconv() msvcr120.localeconv
@ cdecl log(double) msvcr120.log
-@ cdecl -arch=arm,x86_64 logf(float) msvcr120.logf
+@ cdecl -arch=arm,x86_64,arm64 logf(float) msvcr120.logf
@ cdecl log10(double) msvcr120.log10
-@ cdecl -arch=arm,x86_64 log10f(float) msvcr120.log10f
+@ cdecl -arch=arm,x86_64,arm64 log10f(float) msvcr120.log10f
@ cdecl log1p(double) msvcr120.log1p
@ cdecl log1pf(float) msvcr120.log1pf
@ cdecl log1pl(double) msvcr120.log1pl
@@ -1955,7 +1955,7 @@
@ cdecl memmove_s(ptr long ptr long) msvcr120.memmove_s
@ cdecl memset(ptr long long) msvcr120.memset
@ cdecl modf(double ptr) msvcr120.modf
-@ cdecl -arch=arm,x86_64 modff(float ptr) msvcr120.modff
+@ cdecl -arch=arm,x86_64,arm64 modff(float ptr) msvcr120.modff
@ cdecl nan(str) msvcr120.nan
@ cdecl nanf(str) msvcr120.nanf
@ cdecl nanl(str) msvcr120.nanl
@@ -1973,7 +1973,7 @@
@ stub norml
@ cdecl perror(str) msvcr120.perror
@ cdecl pow(double double) msvcr120.pow
-@ cdecl -arch=arm,x86_64 powf(float float) msvcr120.powf
+@ cdecl -arch=arm,x86_64,arm64 powf(float float) msvcr120.powf
@ varargs printf(str) msvcr120.printf
@ varargs printf_s(str) msvcr120.printf_s
@ cdecl putc(long ptr) msvcr120.putc
@@ -2016,13 +2016,13 @@
@ cdecl setvbuf(ptr str long long) msvcr120.setvbuf
@ cdecl signal(long long) msvcr120.signal
@ cdecl sin(double) msvcr120.sin
-@ cdecl -arch=arm,x86_64 sinf(float) msvcr120.sinf
+@ cdecl -arch=arm,x86_64,arm64 sinf(float) msvcr120.sinf
@ cdecl sinh(double) msvcr120.sinh
-@ cdecl -arch=arm,x86_64 sinhf(float) msvcr120.sinhf
+@ cdecl -arch=arm,x86_64,arm64 sinhf(float) msvcr120.sinhf
@ varargs sprintf(ptr str) msvcr120.sprintf
@ varargs sprintf_s(ptr long str) msvcr120.sprintf_s
@ cdecl sqrt(double) msvcr120.sqrt
-@ cdecl -arch=arm,x86_64 sqrtf(float) msvcr120.sqrtf
+@ cdecl -arch=arm,x86_64,arm64 sqrtf(float) msvcr120.sqrtf
@ cdecl srand(long) msvcr120.srand
@ varargs sscanf(str str) msvcr120.sscanf
@ varargs sscanf_s(str str) msvcr120.sscanf_s
@@ -2064,9 +2064,9 @@
@ varargs swscanf(wstr wstr) msvcr120.swscanf
@ varargs swscanf_s(wstr wstr) msvcr120.swscanf_s
@ cdecl tan(double) msvcr120.tan
-@ cdecl -arch=arm,x86_64 tanf(float) msvcr120.tanf
+@ cdecl -arch=arm,x86_64,arm64 tanf(float) msvcr120.tanf
@ cdecl tanh(double) msvcr120.tanh
-@ cdecl -arch=arm,x86_64 tanhf(float) msvcr120.tanhf
+@ cdecl -arch=arm,x86_64,arm64 tanhf(float) msvcr120.tanhf
@ stub tgamma
@ stub tgammaf
@ stub tgammal
diff --git a/dlls/msvcr80/msvcr80.spec b/dlls/msvcr80/msvcr80.spec
index 0096bf0..744eb64 100644
--- a/dlls/msvcr80/msvcr80.spec
+++ b/dlls/msvcr80/msvcr80.spec
@@ -384,7 +384,7 @@
@ cdecl _chdir(str) MSVCRT__chdir
@ cdecl _chdrive(long) MSVCRT__chdrive
@ cdecl _chgsign(double) MSVCRT__chgsign
-@ cdecl -arch=arm,x86_64 _chgsignf(float) MSVCRT__chgsignf
+@ cdecl -arch=arm,x86_64,arm64 _chgsignf(float) MSVCRT__chgsignf
@ cdecl -arch=i386 -norelay _chkesp()
@ cdecl _chmod(str long) MSVCRT__chmod
@ cdecl _chsize(long long) MSVCRT__chsize
@@ -398,7 +398,7 @@
@ cdecl _controlfp(long long)
@ cdecl _controlfp_s(ptr long long)
@ cdecl _copysign(double double) MSVCRT__copysign
-@ cdecl -arch=arm,x86_64 _copysignf(float float) MSVCRT__copysignf
+@ cdecl -arch=arm,x86_64,arm64 _copysignf(float float) MSVCRT__copysignf
@ varargs _cprintf(str)
@ stub _cprintf_l
@ stub _cprintf_p
@@ -485,7 +485,7 @@
@ cdecl _findnext64(long ptr) MSVCRT__findnext64
@ cdecl _findnext64i32(long ptr) MSVCRT__findnext64i32
@ cdecl _finite(double) MSVCRT__finite
-@ cdecl -arch=arm,x86_64 _finitef(float) MSVCRT__finitef
+@ cdecl -arch=arm,x86_64,arm64 _finitef(float) MSVCRT__finitef
@ cdecl _flsbuf(long ptr) MSVCRT__flsbuf
@ cdecl _flushall() MSVCRT__flushall
@ extern _fmode MSVCRT__fmode
@@ -725,7 +725,7 @@
@ cdecl _lock_file(ptr) MSVCRT__lock_file
@ cdecl _locking(long long long) MSVCRT__locking
@ cdecl _logb(double) MSVCRT__logb
-@ cdecl -arch=arm,x86_64 _logbf(float) MSVCRT__logbf
+@ cdecl -arch=arm,x86_64,arm64 _logbf(float) MSVCRT__logbf
@ cdecl -arch=i386 _longjmpex(ptr long) MSVCRT_longjmp
@ cdecl _lrotl(long long) MSVCRT__lrotl
@ cdecl _lrotr(long long) MSVCRT__lrotr
@@ -1309,15 +1309,15 @@
@ cdecl abort() MSVCRT_abort
@ cdecl abs(long) MSVCRT_abs
@ cdecl acos(double) MSVCRT_acos
-@ cdecl -arch=arm,x86_64 acosf(float) MSVCRT_acosf
+@ cdecl -arch=arm,x86_64,arm64 acosf(float) MSVCRT_acosf
@ cdecl asctime(ptr) MSVCRT_asctime
@ cdecl asctime_s(ptr long ptr) MSVCRT_asctime_s
@ cdecl asin(double) MSVCRT_asin
-@ cdecl -arch=arm,x86_64 asinf(float) MSVCRT_asinf
+@ cdecl -arch=arm,x86_64,arm64 asinf(float) MSVCRT_asinf
@ cdecl atan(double) MSVCRT_atan
-@ cdecl -arch=arm,x86_64 atanf(float) MSVCRT_atanf
+@ cdecl -arch=arm,x86_64,arm64 atanf(float) MSVCRT_atanf
@ cdecl atan2(double double) MSVCRT_atan2
-@ cdecl -arch=arm,x86_64 atan2f(float float) MSVCRT_atan2f
+@ cdecl -arch=arm,x86_64,arm64 atan2f(float float) MSVCRT_atan2f
@ cdecl -private atexit(ptr) MSVCRT_atexit # not imported to avoid conflicts with Mingw
@ cdecl atof(str) MSVCRT_atof
@ cdecl atoi(str) MSVCRT_atoi
@@ -1327,18 +1327,18 @@
@ cdecl btowc(long) MSVCRT_btowc
@ cdecl calloc(long long) MSVCRT_calloc
@ cdecl ceil(double) MSVCRT_ceil
-@ cdecl -arch=arm,x86_64 ceilf(float) MSVCRT_ceilf
+@ cdecl -arch=arm,x86_64,arm64 ceilf(float) MSVCRT_ceilf
@ cdecl clearerr(ptr) MSVCRT_clearerr
@ stub clearerr_s
@ cdecl clock() MSVCRT_clock
@ cdecl cos(double) MSVCRT_cos
-@ cdecl -arch=arm,x86_64 cosf(float) MSVCRT_cosf
+@ cdecl -arch=arm,x86_64,arm64 cosf(float) MSVCRT_cosf
@ cdecl cosh(double) MSVCRT_cosh
-@ cdecl -arch=arm,x86_64 coshf(float) MSVCRT_coshf
+@ cdecl -arch=arm,x86_64,arm64 coshf(float) MSVCRT_coshf
@ cdecl -ret64 div(long long) MSVCRT_div
@ cdecl exit(long) MSVCRT_exit
@ cdecl exp(double) MSVCRT_exp
-@ cdecl -arch=arm,x86_64 expf(float) MSVCRT_expf
+@ cdecl -arch=arm,x86_64,arm64 expf(float) MSVCRT_expf
@ cdecl fabs(double) MSVCRT_fabs
@ cdecl fclose(ptr) MSVCRT_fclose
@ cdecl feof(ptr) MSVCRT_feof
@@ -1350,9 +1350,9 @@
@ cdecl fgetwc(ptr) MSVCRT_fgetwc
@ cdecl fgetws(ptr long ptr) MSVCRT_fgetws
@ cdecl floor(double) MSVCRT_floor
-@ cdecl -arch=arm,x86_64 floorf(float) MSVCRT_floorf
+@ cdecl -arch=arm,x86_64,arm64 floorf(float) MSVCRT_floorf
@ cdecl fmod(double double) MSVCRT_fmod
-@ cdecl -arch=arm,x86_64 fmodf(float float) MSVCRT_fmodf
+@ cdecl -arch=arm,x86_64,arm64 fmodf(float float) MSVCRT_fmodf
@ cdecl fopen(str str) MSVCRT_fopen
@ cdecl fopen_s(ptr str str) MSVCRT_fopen_s
@ varargs fprintf(ptr str) MSVCRT_fprintf
@@ -1416,9 +1416,9 @@
@ cdecl ldiv(long long) MSVCRT_ldiv
@ cdecl localeconv() MSVCRT_localeconv
@ cdecl log(double) MSVCRT_log
-@ cdecl -arch=arm,x86_64 logf(float) MSVCRT_logf
+@ cdecl -arch=arm,x86_64,arm64 logf(float) MSVCRT_logf
@ cdecl log10(double) MSVCRT_log10
-@ cdecl -arch=arm,x86_64 log10f(float) MSVCRT_log10f
+@ cdecl -arch=arm,x86_64,arm64 log10f(float) MSVCRT_log10f
@ cdecl -arch=i386,x86_64,arm longjmp(ptr long) MSVCRT_longjmp
@ cdecl malloc(long) MSVCRT_malloc
@ cdecl mblen(ptr long) MSVCRT_mblen
@@ -1437,10 +1437,10 @@
@ cdecl memmove_s(ptr long ptr long) MSVCRT_memmove_s
@ cdecl memset(ptr long long) MSVCRT_memset
@ cdecl modf(double ptr) MSVCRT_modf
-@ cdecl -arch=arm,x86_64 modff(float ptr) MSVCRT_modff
+@ cdecl -arch=arm,x86_64,arm64 modff(float ptr) MSVCRT_modff
@ cdecl perror(str) MSVCRT_perror
@ cdecl pow(double double) MSVCRT_pow
-@ cdecl -arch=arm,x86_64 powf(float float) MSVCRT_powf
+@ cdecl -arch=arm,x86_64,arm64 powf(float float) MSVCRT_powf
@ varargs printf(str) MSVCRT_printf
@ varargs printf_s(str) MSVCRT_printf_s
@ cdecl putc(long ptr) MSVCRT_putc
@@ -1465,13 +1465,13 @@
@ cdecl setvbuf(ptr str long long) MSVCRT_setvbuf
@ cdecl signal(long long) MSVCRT_signal
@ cdecl sin(double) MSVCRT_sin
-@ cdecl -arch=arm,x86_64 sinf(float) MSVCRT_sinf
+@ cdecl -arch=arm,x86_64,arm64 sinf(float) MSVCRT_sinf
@ cdecl sinh(double) MSVCRT_sinh
-@ cdecl -arch=arm,x86_64 sinhf(float) MSVCRT_sinhf
+@ cdecl -arch=arm,x86_64,arm64 sinhf(float) MSVCRT_sinhf
@ varargs sprintf(ptr str) MSVCRT_sprintf
@ varargs sprintf_s(ptr long str) MSVCRT_sprintf_s
@ cdecl sqrt(double) MSVCRT_sqrt
-@ cdecl -arch=arm,x86_64 sqrtf(float) MSVCRT_sqrtf
+@ cdecl -arch=arm,x86_64,arm64 sqrtf(float) MSVCRT_sqrtf
@ cdecl srand(long) MSVCRT_srand
@ varargs sscanf(str str) MSVCRT_sscanf
@ varargs sscanf_s(str str) MSVCRT_sscanf_s
@@ -1508,9 +1508,9 @@
@ varargs swscanf_s(wstr wstr) MSVCRT_swscanf_s
@ cdecl system(str) MSVCRT_system
@ cdecl tan(double) MSVCRT_tan
-@ cdecl -arch=arm,x86_64 tanf(float) MSVCRT_tanf
+@ cdecl -arch=arm,x86_64,arm64 tanf(float) MSVCRT_tanf
@ cdecl tanh(double) MSVCRT_tanh
-@ cdecl -arch=arm,x86_64 tanhf(float) MSVCRT_tanhf
+@ cdecl -arch=arm,x86_64,arm64 tanhf(float) MSVCRT_tanhf
@ cdecl tmpfile() MSVCRT_tmpfile
@ cdecl tmpfile_s(ptr) MSVCRT_tmpfile_s
@ cdecl tmpnam(ptr) MSVCRT_tmpnam
diff --git a/dlls/msvcr90/msvcr90.spec b/dlls/msvcr90/msvcr90.spec
index cf8d8b8..e405b2d 100644
--- a/dlls/msvcr90/msvcr90.spec
+++ b/dlls/msvcr90/msvcr90.spec
@@ -381,7 +381,7 @@
@ cdecl _controlfp(long long)
@ cdecl _controlfp_s(ptr long long)
@ cdecl _copysign(double double) MSVCRT__copysign
-@ cdecl -arch=arm,x86_64 _copysignf(float float) MSVCRT__copysignf
+@ cdecl -arch=arm,x86_64,arm64 _copysignf(float float) MSVCRT__copysignf
@ varargs _cprintf(str)
@ stub _cprintf_l
@ stub _cprintf_p
@@ -468,7 +468,7 @@
@ cdecl _findnext64(long ptr) MSVCRT__findnext64
@ cdecl _findnext64i32(long ptr) MSVCRT__findnext64i32
@ cdecl _finite(double) MSVCRT__finite
-@ cdecl -arch=arm,x86_64 _finitef(float) MSVCRT__finitef
+@ cdecl -arch=arm,x86_64,arm64 _finitef(float) MSVCRT__finitef
@ cdecl _flsbuf(long ptr) MSVCRT__flsbuf
@ cdecl _flushall() MSVCRT__flushall
@ extern _fmode MSVCRT__fmode
@@ -703,7 +703,7 @@
@ cdecl _lock_file(ptr) MSVCRT__lock_file
@ cdecl _locking(long long long) MSVCRT__locking
@ cdecl _logb(double) MSVCRT__logb
-@ cdecl -arch=arm,x86_64 _logbf(float) MSVCRT__logbf
+@ cdecl -arch=arm,x86_64,arm64 _logbf(float) MSVCRT__logbf
@ cdecl -arch=i386 _longjmpex(ptr long) MSVCRT_longjmp
@ cdecl _lrotl(long long) MSVCRT__lrotl
@ cdecl _lrotr(long long) MSVCRT__lrotr
@@ -1282,15 +1282,15 @@
@ cdecl abort() MSVCRT_abort
@ cdecl abs(long) MSVCRT_abs
@ cdecl acos(double) MSVCRT_acos
-@ cdecl -arch=arm,x86_64 acosf(float) MSVCRT_acosf
+@ cdecl -arch=arm,x86_64,arm64 acosf(float) MSVCRT_acosf
@ cdecl asctime(ptr) MSVCRT_asctime
@ cdecl asctime_s(ptr long ptr) MSVCRT_asctime_s
@ cdecl asin(double) MSVCRT_asin
@ cdecl atan(double) MSVCRT_atan
@ cdecl atan2(double double) MSVCRT_atan2
-@ cdecl -arch=arm,x86_64 asinf(float) MSVCRT_asinf
-@ cdecl -arch=arm,x86_64 atan2f(float float) MSVCRT_atan2f
-@ cdecl -arch=arm,x86_64 atanf(float) MSVCRT_atanf
+@ cdecl -arch=arm,x86_64,arm64 asinf(float) MSVCRT_asinf
+@ cdecl -arch=arm,x86_64,arm64 atan2f(float float) MSVCRT_atan2f
+@ cdecl -arch=arm,x86_64,arm64 atanf(float) MSVCRT_atanf
@ cdecl -private atexit(ptr) MSVCRT_atexit # not imported to avoid conflicts with Mingw
@ cdecl atof(str) MSVCRT_atof
@ cdecl atoi(str) MSVCRT_atoi
@@ -1300,18 +1300,18 @@
@ cdecl btowc(long) MSVCRT_btowc
@ cdecl calloc(long long) MSVCRT_calloc
@ cdecl ceil(double) MSVCRT_ceil
-@ cdecl -arch=arm,x86_64 ceilf(float) MSVCRT_ceilf
+@ cdecl -arch=arm,x86_64,arm64 ceilf(float) MSVCRT_ceilf
@ cdecl clearerr(ptr) MSVCRT_clearerr
@ stub clearerr_s
@ cdecl clock() MSVCRT_clock
@ cdecl cos(double) MSVCRT_cos
@ cdecl cosh(double) MSVCRT_cosh
-@ cdecl -arch=arm,x86_64 cosf(float) MSVCRT_cosf
-@ cdecl -arch=arm,x86_64 coshf(float) MSVCRT_coshf
+@ cdecl -arch=arm,x86_64,arm64 cosf(float) MSVCRT_cosf
+@ cdecl -arch=arm,x86_64,arm64 coshf(float) MSVCRT_coshf
@ cdecl -ret64 div(long long) MSVCRT_div
@ cdecl exit(long) MSVCRT_exit
@ cdecl exp(double) MSVCRT_exp
-@ cdecl -arch=arm,x86_64 expf(float) MSVCRT_expf
+@ cdecl -arch=arm,x86_64,arm64 expf(float) MSVCRT_expf
@ cdecl fabs(double) MSVCRT_fabs
@ cdecl fclose(ptr) MSVCRT_fclose
@ cdecl feof(ptr) MSVCRT_feof
@@ -1323,9 +1323,9 @@
@ cdecl fgetwc(ptr) MSVCRT_fgetwc
@ cdecl fgetws(ptr long ptr) MSVCRT_fgetws
@ cdecl floor(double) MSVCRT_floor
-@ cdecl -arch=arm,x86_64 floorf(float) MSVCRT_floorf
+@ cdecl -arch=arm,x86_64,arm64 floorf(float) MSVCRT_floorf
@ cdecl fmod(double double) MSVCRT_fmod
-@ cdecl -arch=arm,x86_64 fmodf(float float) MSVCRT_fmodf
+@ cdecl -arch=arm,x86_64,arm64 fmodf(float float) MSVCRT_fmodf
@ cdecl fopen(str str) MSVCRT_fopen
@ cdecl fopen_s(ptr str str) MSVCRT_fopen_s
@ varargs fprintf(ptr str) MSVCRT_fprintf
@@ -1390,8 +1390,8 @@
@ cdecl localeconv() MSVCRT_localeconv
@ cdecl log(double) MSVCRT_log
@ cdecl log10(double) MSVCRT_log10
-@ cdecl -arch=arm,x86_64 log10f(float) MSVCRT_log10f
-@ cdecl -arch=arm,x86_64 logf(float) MSVCRT_logf
+@ cdecl -arch=arm,x86_64,arm64 log10f(float) MSVCRT_log10f
+@ cdecl -arch=arm,x86_64,arm64 logf(float) MSVCRT_logf
@ cdecl -arch=i386,x86_64,arm longjmp(ptr long) MSVCRT_longjmp
@ cdecl malloc(long) MSVCRT_malloc
@ cdecl mblen(ptr long) MSVCRT_mblen
@@ -1410,10 +1410,10 @@
@ cdecl memmove_s(ptr long ptr long) MSVCRT_memmove_s
@ cdecl memset(ptr long long) MSVCRT_memset
@ cdecl modf(double ptr) MSVCRT_modf
-@ cdecl -arch=arm,x86_64 modff(float ptr) MSVCRT_modff
+@ cdecl -arch=arm,x86_64,arm64 modff(float ptr) MSVCRT_modff
@ cdecl perror(str) MSVCRT_perror
@ cdecl pow(double double) MSVCRT_pow
-@ cdecl -arch=arm,x86_64 powf(float float) MSVCRT_powf
+@ cdecl -arch=arm,x86_64,arm64 powf(float float) MSVCRT_powf
@ varargs printf(str) MSVCRT_printf
@ varargs printf_s(str) MSVCRT_printf_s
@ cdecl putc(long ptr) MSVCRT_putc
@@ -1439,12 +1439,12 @@
@ cdecl signal(long long) MSVCRT_signal
@ cdecl sin(double) MSVCRT_sin
@ cdecl sinh(double) MSVCRT_sinh
-@ cdecl -arch=arm,x86_64 sinf(float) MSVCRT_sinf
-@ cdecl -arch=arm,x86_64 sinhf(float) MSVCRT_sinhf
+@ cdecl -arch=arm,x86_64,arm64 sinf(float) MSVCRT_sinf
+@ cdecl -arch=arm,x86_64,arm64 sinhf(float) MSVCRT_sinhf
@ varargs sprintf(ptr str) MSVCRT_sprintf
@ varargs sprintf_s(ptr long str) MSVCRT_sprintf_s
@ cdecl sqrt(double) MSVCRT_sqrt
-@ cdecl -arch=arm,x86_64 sqrtf(float) MSVCRT_sqrtf
+@ cdecl -arch=arm,x86_64,arm64 sqrtf(float) MSVCRT_sqrtf
@ cdecl srand(long) MSVCRT_srand
@ varargs sscanf(str str) MSVCRT_sscanf
@ varargs sscanf_s(str str) MSVCRT_sscanf_s
@@ -1481,9 +1481,9 @@
@ varargs swscanf_s(wstr wstr) MSVCRT_swscanf_s
@ cdecl system(str) MSVCRT_system
@ cdecl tan(double) MSVCRT_tan
-@ cdecl -arch=arm,x86_64 tanf(float) MSVCRT_tanf
+@ cdecl -arch=arm,x86_64,arm64 tanf(float) MSVCRT_tanf
@ cdecl tanh(double) MSVCRT_tanh
-@ cdecl -arch=arm,x86_64 tanhf(float) MSVCRT_tanhf
+@ cdecl -arch=arm,x86_64,arm64 tanhf(float) MSVCRT_tanhf
@ cdecl tmpfile() MSVCRT_tmpfile
@ cdecl tmpfile_s(ptr) MSVCRT_tmpfile_s
@ cdecl tmpnam(ptr) MSVCRT_tmpnam
diff --git a/dlls/msvcrt/math.c b/dlls/msvcrt/math.c
index c141fea..237c90c 100644
--- a/dlls/msvcrt/math.c
+++ b/dlls/msvcrt/math.c
@@ -84,7 +84,7 @@ int CDECL MSVCRT__set_FMA3_enable(int flag)
}
#endif
-#if defined(__x86_64__) || defined(__arm__) || _MSVCR_VER>=120
+#if defined(__x86_64__) || defined(__arm__) || defined(__aarch64__) || _MSVCR_VER>=120
/*********************************************************************
* _chgsignf (MSVCRT.@)
@@ -115,7 +115,7 @@ float CDECL MSVCRT__nextafterf( float num, float next )
}
#endif
-#if defined(__x86_64__) || defined(__arm__)
+#if defined(__x86_64__) || defined(__arm__) || defined(__aarch64__)
/*********************************************************************
* _finitef (MSVCRT.@)
diff --git a/dlls/msvcrt/msvcrt.spec b/dlls/msvcrt/msvcrt.spec
index c812650..bdef9be 100644
--- a/dlls/msvcrt/msvcrt.spec
+++ b/dlls/msvcrt/msvcrt.spec
@@ -352,7 +352,7 @@
@ cdecl _chdir(str) MSVCRT__chdir
@ cdecl _chdrive(long) MSVCRT__chdrive
@ cdecl _chgsign(double) MSVCRT__chgsign
-@ cdecl -arch=arm,x86_64 _chgsignf(float) MSVCRT__chgsignf
+@ cdecl -arch=arm,x86_64,arm64 _chgsignf(float) MSVCRT__chgsignf
@ cdecl -arch=i386 -norelay _chkesp()
@ cdecl _chmod(str long) MSVCRT__chmod
@ cdecl _chsize(long long) MSVCRT__chsize
@@ -367,7 +367,7 @@
@ cdecl _controlfp(long long)
@ cdecl _controlfp_s(ptr long long)
@ cdecl _copysign(double double) MSVCRT__copysign
-@ cdecl -arch=arm,x86_64 _copysignf(float float) MSVCRT__copysignf
+@ cdecl -arch=arm,x86_64,arm64 _copysignf(float float) MSVCRT__copysignf
@ varargs _cprintf(str)
# stub _cprintf_l(str ptr)
# stub _cprintf_p(str)
@@ -451,7 +451,7 @@
@ cdecl _findnext64i32(long ptr) MSVCRT__findnext64i32
@ cdecl _findnexti64(long ptr) MSVCRT__findnexti64
@ cdecl _finite(double) MSVCRT__finite
-@ cdecl -arch=arm,x86_64 _finitef(float) MSVCRT__finitef
+@ cdecl -arch=arm,x86_64,arm64 _finitef(float) MSVCRT__finitef
@ cdecl _flsbuf(long ptr) MSVCRT__flsbuf
@ cdecl _flushall() MSVCRT__flushall
@ extern _fmode MSVCRT__fmode
@@ -668,7 +668,7 @@
@ cdecl _lock_file(ptr) MSVCRT__lock_file
@ cdecl _locking(long long long) MSVCRT__locking
@ cdecl _logb(double) MSVCRT__logb
-@ cdecl -arch=arm,x86_64 _logbf(float) MSVCRT__logbf
+@ cdecl -arch=arm,x86_64,arm64 _logbf(float) MSVCRT__logbf
@ cdecl -arch=i386 _longjmpex(ptr long) MSVCRT_longjmp
@ cdecl _lrotl(long long) MSVCRT__lrotl
@ cdecl _lrotr(long long) MSVCRT__lrotr
@@ -1244,15 +1244,15 @@
@ cdecl abort() MSVCRT_abort
@ cdecl abs(long) MSVCRT_abs
@ cdecl acos(double) MSVCRT_acos
-@ cdecl -arch=arm,x86_64 acosf(float) MSVCRT_acosf
+@ cdecl -arch=arm,x86_64,arm64 acosf(float) MSVCRT_acosf
@ cdecl asctime(ptr) MSVCRT_asctime
@ cdecl asctime_s(ptr long ptr) MSVCRT_asctime_s
@ cdecl asin(double) MSVCRT_asin
@ cdecl atan(double) MSVCRT_atan
@ cdecl atan2(double double) MSVCRT_atan2
-@ cdecl -arch=arm,x86_64 asinf(float) MSVCRT_asinf
-@ cdecl -arch=arm,x86_64 atanf(float) MSVCRT_atanf
-@ cdecl -arch=arm,x86_64 atan2f(float float) MSVCRT_atan2f
+@ cdecl -arch=arm,x86_64,arm64 asinf(float) MSVCRT_asinf
+@ cdecl -arch=arm,x86_64,arm64 atanf(float) MSVCRT_atanf
+@ cdecl -arch=arm,x86_64,arm64 atan2f(float float) MSVCRT_atan2f
@ cdecl -private atexit(ptr) MSVCRT_atexit # not imported to avoid conflicts with Mingw
@ cdecl atof(str) MSVCRT_atof
@ cdecl atoi(str) MSVCRT_atoi
@@ -1262,22 +1262,22 @@
@ cdecl btowc(long) MSVCRT_btowc
@ cdecl calloc(long long) MSVCRT_calloc
@ cdecl ceil(double) MSVCRT_ceil
-@ cdecl -arch=arm,x86_64 ceilf(float) MSVCRT_ceilf
+@ cdecl -arch=arm,x86_64,arm64 ceilf(float) MSVCRT_ceilf
@ cdecl clearerr(ptr) MSVCRT_clearerr
# stub clearerr_s(ptr)
@ cdecl clock() MSVCRT_clock
@ cdecl cos(double) MSVCRT_cos
@ cdecl cosh(double) MSVCRT_cosh
-@ cdecl -arch=arm,x86_64 cosf(float) MSVCRT_cosf
-@ cdecl -arch=arm,x86_64 coshf(float) MSVCRT_coshf
+@ cdecl -arch=arm,x86_64,arm64 cosf(float) MSVCRT_cosf
+@ cdecl -arch=arm,x86_64,arm64 coshf(float) MSVCRT_coshf
@ cdecl ctime(ptr) MSVCRT_ctime
@ cdecl difftime(long long) MSVCRT_difftime
@ cdecl -ret64 div(long long) MSVCRT_div
@ cdecl exit(long) MSVCRT_exit
@ cdecl exp(double) MSVCRT_exp
-@ cdecl -arch=arm,x86_64 expf(float) MSVCRT_expf
+@ cdecl -arch=arm,x86_64,arm64 expf(float) MSVCRT_expf
@ cdecl fabs(double) MSVCRT_fabs
-@ cdecl -arch=arm,x86_64 fabsf(float) MSVCRT_fabsf
+@ cdecl -arch=arm,x86_64,arm64 fabsf(float) MSVCRT_fabsf
@ cdecl fclose(ptr) MSVCRT_fclose
@ cdecl feof(ptr) MSVCRT_feof
@ cdecl ferror(ptr) MSVCRT_ferror
@@ -1288,9 +1288,9 @@
@ cdecl fgetwc(ptr) MSVCRT_fgetwc
@ cdecl fgetws(ptr long ptr) MSVCRT_fgetws
@ cdecl floor(double) MSVCRT_floor
-@ cdecl -arch=arm,x86_64 floorf(float) MSVCRT_floorf
+@ cdecl -arch=arm,x86_64,arm64 floorf(float) MSVCRT_floorf
@ cdecl fmod(double double) MSVCRT_fmod
-@ cdecl -arch=arm,x86_64 fmodf(float float) MSVCRT_fmodf
+@ cdecl -arch=arm,x86_64,arm64 fmodf(float float) MSVCRT_fmodf
@ cdecl fopen(str str) MSVCRT_fopen
@ cdecl fopen_s(ptr str str) MSVCRT_fopen_s
@ varargs fprintf(ptr str) MSVCRT_fprintf
@@ -1356,8 +1356,8 @@
@ cdecl localtime(ptr) MSVCRT_localtime
@ cdecl log(double) MSVCRT_log
@ cdecl log10(double) MSVCRT_log10
-@ cdecl -arch=arm,x86_64 logf(float) MSVCRT_logf
-@ cdecl -arch=arm,x86_64 log10f(float) MSVCRT_log10f
+@ cdecl -arch=arm,x86_64,arm64 logf(float) MSVCRT_logf
+@ cdecl -arch=arm,x86_64,arm64 log10f(float) MSVCRT_log10f
@ cdecl -arch=i386,x86_64,arm longjmp(ptr long) MSVCRT_longjmp
@ cdecl malloc(long) MSVCRT_malloc
@ cdecl mblen(ptr long) MSVCRT_mblen
@@ -1378,10 +1378,10 @@
@ cdecl memset(ptr long long) MSVCRT_memset
@ cdecl mktime(ptr) MSVCRT_mktime
@ cdecl modf(double ptr) MSVCRT_modf
-@ cdecl -arch=arm,x86_64 modff(float ptr) MSVCRT_modff
+@ cdecl -arch=arm,x86_64,arm64 modff(float ptr) MSVCRT_modff
@ cdecl perror(str) MSVCRT_perror
@ cdecl pow(double double) MSVCRT_pow
-@ cdecl -arch=arm,x86_64 powf(float float) MSVCRT_powf
+@ cdecl -arch=arm,x86_64,arm64 powf(float float) MSVCRT_powf
@ varargs printf(str) MSVCRT_printf
@ varargs printf_s(str) MSVCRT_printf_s
@ cdecl putc(long ptr) MSVCRT_putc
@@ -1407,12 +1407,12 @@
@ cdecl signal(long long) MSVCRT_signal
@ cdecl sin(double) MSVCRT_sin
@ cdecl sinh(double) MSVCRT_sinh
-@ cdecl -arch=arm,x86_64 sinf(float) MSVCRT_sinf
-@ cdecl -arch=arm,x86_64 sinhf(float) MSVCRT_sinhf
+@ cdecl -arch=arm,x86_64,arm64 sinf(float) MSVCRT_sinf
+@ cdecl -arch=arm,x86_64,arm64 sinhf(float) MSVCRT_sinhf
@ varargs sprintf(ptr str) MSVCRT_sprintf
@ varargs sprintf_s(ptr long str) MSVCRT_sprintf_s
@ cdecl sqrt(double) MSVCRT_sqrt
-@ cdecl -arch=arm,x86_64 sqrtf(float) MSVCRT_sqrtf
+@ cdecl -arch=arm,x86_64,arm64 sqrtf(float) MSVCRT_sqrtf
@ cdecl srand(long) MSVCRT_srand
@ varargs sscanf(str str) MSVCRT_sscanf
@ varargs sscanf_s(str str) MSVCRT_sscanf_s
@@ -1451,8 +1451,8 @@
@ cdecl system(str) MSVCRT_system
@ cdecl tan(double) MSVCRT_tan
@ cdecl tanh(double) MSVCRT_tanh
-@ cdecl -arch=arm,x86_64 tanf(float) MSVCRT_tanf
-@ cdecl -arch=arm,x86_64 tanhf(float) MSVCRT_tanhf
+@ cdecl -arch=arm,x86_64,arm64 tanf(float) MSVCRT_tanf
+@ cdecl -arch=arm,x86_64,arm64 tanhf(float) MSVCRT_tanhf
@ cdecl time(ptr) MSVCRT_time
@ cdecl tmpfile() MSVCRT_tmpfile
@ cdecl tmpfile_s(ptr) MSVCRT_tmpfile_s
diff --git a/dlls/ucrtbase/ucrtbase.spec b/dlls/ucrtbase/ucrtbase.spec
index 6b9ea7f..a8e4e21 100644
--- a/dlls/ucrtbase/ucrtbase.spec
+++ b/dlls/ucrtbase/ucrtbase.spec
@@ -321,7 +321,7 @@
@ cdecl _findnext64(long ptr) MSVCRT__findnext64
@ cdecl _findnext64i32(long ptr) MSVCRT__findnext64i32
@ cdecl _finite(double) MSVCRT__finite
-@ cdecl -arch=arm,x86_64 _finitef(float) MSVCRT__finitef
+@ cdecl -arch=arm,x86_64,arm64 _finitef(float) MSVCRT__finitef
@ cdecl _flushall() MSVCRT__flushall
@ cdecl _fpclass(double) MSVCRT__fpclass
@ stub _fpclassf
@@ -566,7 +566,7 @@
@ cdecl _lock_locales()
@ cdecl _locking(long long long) MSVCRT__locking
@ cdecl _logb(double) MSVCRT__logb
-@ cdecl -arch=arm,x86_64 _logbf(float) MSVCRT__logbf
+@ cdecl -arch=arm,x86_64,arm64 _logbf(float) MSVCRT__logbf
@ cdecl -arch=i386 _longjmpex(ptr long) MSVCRT_longjmp
@ cdecl _lrotl(long long) MSVCRT__lrotl
@ cdecl _lrotr(long long) MSVCRT__lrotr
@@ -2152,21 +2152,21 @@
@ cdecl abort() MSVCRT_abort
@ cdecl abs(long) MSVCRT_abs
@ cdecl acos(double) MSVCRT_acos
-@ cdecl -arch=arm,x86_64 acosf(float) MSVCRT_acosf
+@ cdecl -arch=arm,x86_64,arm64 acosf(float) MSVCRT_acosf
@ cdecl acosh(double) MSVCR120_acosh
@ cdecl acoshf(float) MSVCR120_acoshf
@ cdecl acoshl(double) MSVCR120_acoshl
@ cdecl asctime(ptr) MSVCRT_asctime
@ cdecl asctime_s(ptr long ptr) MSVCRT_asctime_s
@ cdecl asin(double) MSVCRT_asin
-@ cdecl -arch=arm,x86_64 asinf(float) MSVCRT_asinf
+@ cdecl -arch=arm,x86_64,arm64 asinf(float) MSVCRT_asinf
@ cdecl asinh(double) MSVCR120_asinh
@ cdecl asinhf(float) MSVCR120_asinhf
@ cdecl asinhl(double) MSVCR120_asinhl
@ cdecl atan(double) MSVCRT_atan
@ cdecl atan2(double double) MSVCRT_atan2
-@ cdecl -arch=arm,x86_64 atan2f(float float) MSVCRT_atan2f
-@ cdecl -arch=arm,x86_64 atanf(float) MSVCRT_atanf
+@ cdecl -arch=arm,x86_64,arm64 atan2f(float float) MSVCRT_atan2f
+@ cdecl -arch=arm,x86_64,arm64 atanf(float) MSVCRT_atanf
@ cdecl atanh(double) MSVCR120_atanh
@ cdecl atanhf(float) MSVCR120_atanhf
@ cdecl atanhl(double) MSVCR120_atanhl
@@ -2214,7 +2214,7 @@
@ stub ccoshl
@ stub ccosl
@ cdecl ceil(double) MSVCRT_ceil
-@ cdecl -arch=arm,x86_64 ceilf(float) MSVCRT_ceilf
+@ cdecl -arch=arm,x86_64,arm64 ceilf(float) MSVCRT_ceilf
@ stub cexp
@ stub cexpf
@ stub cexpl
@@ -2237,9 +2237,9 @@
@ cdecl copysignf(float float) MSVCRT__copysignf
@ cdecl copysignl(double double) MSVCRT__copysign
@ cdecl cos(double) MSVCRT_cos
-@ cdecl -arch=arm,x86_64 cosf(float) MSVCRT_cosf
+@ cdecl -arch=arm,x86_64,arm64 cosf(float) MSVCRT_cosf
@ cdecl cosh(double) MSVCRT_cosh
-@ cdecl -arch=arm,x86_64 coshf(float) MSVCRT_coshf
+@ cdecl -arch=arm,x86_64,arm64 coshf(float) MSVCRT_coshf
@ stub cpow
@ stub cpowf
@ stub cpowl
@@ -2276,12 +2276,12 @@
@ cdecl exp2(double) MSVCR120_exp2
@ cdecl exp2f(float) MSVCR120_exp2f
@ cdecl exp2l(double) MSVCR120_exp2l
-@ cdecl -arch=arm,x86_64 expf(float) MSVCRT_expf
+@ cdecl -arch=arm,x86_64,arm64 expf(float) MSVCRT_expf
@ cdecl expm1(double) MSVCR120_expm1
@ cdecl expm1f(float) MSVCR120_expm1f
@ cdecl expm1l(double) MSVCR120_expm1l
@ cdecl fabs(double) MSVCRT_fabs
-@ cdecl -arch=arm fabsf(float) MSVCRT_fabsf
+@ cdecl -arch=arm,arm64 fabsf(float) MSVCRT_fabsf
@ cdecl fclose(ptr) MSVCRT_fclose
@ stub fdim
@ stub fdimf
@@ -2304,7 +2304,7 @@
@ cdecl fgetwc(ptr) MSVCRT_fgetwc
@ cdecl fgetws(ptr long ptr) MSVCRT_fgetws
@ cdecl floor(double) MSVCRT_floor
-@ cdecl -arch=arm,x86_64 floorf(float) MSVCRT_floorf
+@ cdecl -arch=arm,x86_64,arm64 floorf(float) MSVCRT_floorf
@ stub fma
@ stub fmaf
@ stub fmal
@@ -2315,7 +2315,7 @@
@ cdecl fminf(float float) MSVCR120_fminf
@ cdecl fminl(double double) MSVCR120_fmin
@ cdecl fmod(double double) MSVCRT_fmod
-@ cdecl -arch=arm,x86_64 fmodf(float float) MSVCRT_fmodf
+@ cdecl -arch=arm,x86_64,arm64 fmodf(float float) MSVCRT_fmodf
@ cdecl fopen(str str) MSVCRT_fopen
@ cdecl fopen_s(ptr str str) MSVCRT_fopen_s
@ cdecl fputc(long ptr) MSVCRT_fputc
@@ -2391,7 +2391,7 @@
@ cdecl localeconv() MSVCRT_localeconv
@ cdecl log(double) MSVCRT_log
@ cdecl log10(double) MSVCRT_log10
-@ cdecl -arch=arm,x86_64 log10f(float) MSVCRT_log10f
+@ cdecl -arch=arm,x86_64,arm64 log10f(float) MSVCRT_log10f
@ cdecl log1p(double) MSVCR120_log1p
@ cdecl log1pf(float) MSVCR120_log1pf
@ cdecl log1pl(double) MSVCR120_log1pl
@@ -2401,7 +2401,7 @@
@ stub logb
@ stub logbf
@ stub logbl
-@ cdecl -arch=arm,x86_64 logf(float) MSVCRT_logf
+@ cdecl -arch=arm,x86_64,arm64 logf(float) MSVCRT_logf
@ cdecl -arch=i386,x86_64,arm longjmp(ptr long) MSVCRT_longjmp
@ cdecl lrint(double) MSVCR120_lrint
@ cdecl lrintf(float) MSVCR120_lrintf
@@ -2428,7 +2428,7 @@
@ cdecl memmove_s(ptr long ptr long) MSVCRT_memmove_s
@ cdecl memset(ptr long long) MSVCRT_memset
@ cdecl modf(double ptr) MSVCRT_modf
-@ cdecl -arch=arm,x86_64 modff(float ptr) MSVCRT_modff
+@ cdecl -arch=arm,x86_64,arm64 modff(float ptr) MSVCRT_modff
@ cdecl nan(str) MSVCR120_nan
@ cdecl nanf(str) MSVCR120_nanf
@ cdecl nanl(str) MSVCR120_nan
@@ -2446,7 +2446,7 @@
@ stub norml
@ cdecl perror(str) MSVCRT_perror
@ cdecl pow(double double) MSVCRT_pow
-@ cdecl -arch=arm,x86_64 powf(float float) MSVCRT_powf
+@ cdecl -arch=arm,x86_64,arm64 powf(float float) MSVCRT_powf
@ cdecl putc(long ptr) MSVCRT_putc
@ cdecl putchar(long) MSVCRT_putchar
@ cdecl puts(str) MSVCRT_puts
@@ -2488,11 +2488,11 @@
@ cdecl setvbuf(ptr str long long) MSVCRT_setvbuf
@ cdecl signal(long long) MSVCRT_signal
@ cdecl sin(double) MSVCRT_sin
-@ cdecl -arch=arm,x86_64 sinf(float) MSVCRT_sinf
+@ cdecl -arch=arm,x86_64,arm64 sinf(float) MSVCRT_sinf
@ cdecl sinh(double) MSVCRT_sinh
-@ cdecl -arch=arm,x86_64 sinhf(float) MSVCRT_sinhf
+@ cdecl -arch=arm,x86_64,arm64 sinhf(float) MSVCRT_sinhf
@ cdecl sqrt(double) MSVCRT_sqrt
-@ cdecl -arch=arm,x86_64 sqrtf(float) MSVCRT_sqrtf
+@ cdecl -arch=arm,x86_64,arm64 sqrtf(float) MSVCRT_sqrtf
@ cdecl srand(long) MSVCRT_srand
@ cdecl strcat(str str) ntdll.strcat
@ cdecl strcat_s(str long str) MSVCRT_strcat_s
@@ -2530,9 +2530,9 @@
@ cdecl strxfrm(ptr str long) MSVCRT_strxfrm
@ cdecl system(str) MSVCRT_system
@ cdecl tan(double) MSVCRT_tan
-@ cdecl -arch=arm,x86_64 tanf(float) MSVCRT_tanf
+@ cdecl -arch=arm,x86_64,arm64 tanf(float) MSVCRT_tanf
@ cdecl tanh(double) MSVCRT_tanh
-@ cdecl -arch=arm,x86_64 tanhf(float) MSVCRT_tanhf
+@ cdecl -arch=arm,x86_64,arm64 tanhf(float) MSVCRT_tanhf
@ cdecl terminate() MSVCRT_terminate
@ stub tgamma
@ stub tgammaf
--
2.7.4
More information about the wine-patches
mailing list