crt: Move ARM long double symbol aliases to def-include/msvcrt-common.def.in
Deduplicate aliases from msvcrt.def.in and ucrtbase.def.in to
def-include/msvcrt-common.def.in.
Note that powl alias was defined only in ucrtbase.def.in, so do not define
it for non-UCRT builds.
Signed-off-by: Martin Storsjö <martin@martin.st>
diff --git a/mingw-w64-crt/def-include/msvcrt-common.def.in b/mingw-w64-crt/def-include/msvcrt-common.def.in
index b44c0da..34636ae 100644
--- a/mingw-w64-crt/def-include/msvcrt-common.def.in
+++ b/mingw-w64-crt/def-include/msvcrt-common.def.in
@@ -200,6 +200,28 @@
; ADD_UNDERSCORE(logb)
ADD_UNDERSCORE(nextafter)
+#if defined(DEF_ARM32) || defined(DEF_ARM64)
+; This is list of symbol aliases for C99 ARM long double functions
+; They are defined as aliases to regular double symbols as on ARM, long double is equal to regular double
+acosl == acos
+asinl == asin
+atan2l == atan2
+atanl == atan
+ceill == ceil
+cosl == cos
+expl == exp
+floorl == floor
+fmodl == fmod
+log10l == log10
+logl == log
+; FIXME: Why is powl alias defined only for UCRT?
+#ifdef UCRTBASE
+powl == pow
+#endif
+sinl == sin
+tanl == tan
+#endif
+
; This is list of symbol aliases for POSIX functions
ADD_DOUBLE_UNDERSCORE(isascii)
ADD_DOUBLE_UNDERSCORE(toascii)
diff --git a/mingw-w64-crt/lib-common/msvcrt.def.in b/mingw-w64-crt/lib-common/msvcrt.def.in
index 186761c..29d1076 100644
--- a/mingw-w64-crt/lib-common/msvcrt.def.in
+++ b/mingw-w64-crt/lib-common/msvcrt.def.in
@@ -1843,18 +1843,3 @@
F64(_ftime_s == _ftime64_s)
snwprintf == _snwprintf
vsnwprintf == _vsnwprintf
-
-; This is list of ARM long double symbols defined as alias to regular double symbols as on ARM, long double is equal to regular double
-F_ARM_ANY(acosl == acos)
-F_ARM_ANY(asinl == asin)
-F_ARM_ANY(atan2l == atan2)
-F_ARM_ANY(atanl == atan)
-F_ARM_ANY(ceill == ceil)
-F_ARM_ANY(cosl == cos)
-F_ARM_ANY(expl == exp)
-F_ARM_ANY(floorl == floor)
-F_ARM_ANY(fmodl == fmod)
-F_ARM_ANY(log10l == log10)
-F_ARM_ANY(logl == log)
-F_ARM_ANY(sinl == sin)
-F_ARM_ANY(tanl == tan)
diff --git a/mingw-w64-crt/lib-common/ucrtbase.def.in b/mingw-w64-crt/lib-common/ucrtbase.def.in
index b5aff62..c415cfc 100644
--- a/mingw-w64-crt/lib-common/ucrtbase.def.in
+++ b/mingw-w64-crt/lib-common/ucrtbase.def.in
@@ -2172,7 +2172,6 @@
abs
acos
F_NON_I386(acosf)
-F_ARM_ANY(acosl == acos)
acosh
acoshf
acoshl F_X86_ANY(DATA)
@@ -2180,16 +2179,13 @@
asctime_s
asin
F_NON_I386(asinf)
-F_ARM_ANY(asinl == asin)
asinh
asinhf
asinhl F_X86_ANY(DATA)
atan
atan2
F_NON_I386(atan2f)
-F_ARM_ANY(atan2l == atan2)
F_NON_I386(atanf)
-F_ARM_ANY(atanl == atan)
atanh
atanhf
atanhl F_X86_ANY(DATA)
@@ -2238,7 +2234,6 @@
ccosl
ceil
F_NON_I386(ceilf)
-F_ARM_ANY(ceill == ceil)
cexp
cexpf
cexpl
@@ -2262,7 +2257,6 @@
copysignl F_X86_ANY(DATA)
cos
F_NON_I386(cosf)
-F_ARM_ANY(cosl == cos)
cosh
F_NON_I386(coshf)
cpow
@@ -2302,7 +2296,6 @@
exp2f
exp2l F_X86_ANY(DATA)
F_NON_I386(expf)
-F_ARM_ANY(expl == exp)
expm1
expm1f
expm1l F_X86_ANY(DATA)
@@ -2334,7 +2327,6 @@
fgetws
floor
F_NON_I386(floorf)
-F_ARM_ANY(floorl == floor)
fma
fmaf
fmal F_X86_ANY(DATA)
@@ -2346,7 +2338,6 @@
fminl F_X86_ANY(DATA)
fmod
F_NON_I386(fmodf)
-F_ARM_ANY(fmodl == fmod)
fopen
fopen_s
fputc
@@ -2425,7 +2416,6 @@
log
log10
F_NON_I386(log10f)
-F_ARM_ANY(log10l == log10)
log1p
log1pf
log1pl F_X86_ANY(DATA)
@@ -2436,7 +2426,6 @@
logbf
logbl F_X86_ANY(DATA)
F_NON_I386(logf)
-F_ARM_ANY(logl == log)
longjmp
lrint
lrintf
@@ -2484,7 +2473,6 @@
perror
pow
F_NON_I386(powf)
-F_ARM_ANY(powl == pow)
putc
putchar
puts
@@ -2527,7 +2515,6 @@
signal
sin
F_NON_I386(sinf)
-F_ARM_ANY(sinl == sin)
; if we implement sinh, we can set it DATA only.
sinh
F_NON_I386(sinhf)
@@ -2572,7 +2559,6 @@
system
tan
F_NON_I386(tanf)
-F_ARM_ANY(tanl == tan)
; if we implement tanh, we can set it to DATA only.
tanh
F_NON_I386(tanhf)