[PATCH] msvcr110: Implement _libm_sse2_sqrt_precise
Martin Storsjo
martin at martin.st
Wed Jan 8 08:11:45 CST 2014
---
dlls/msvcr110/msvcr110.spec | 2 +-
dlls/msvcrt/math.c | 11 +++++++++++
dlls/msvcrt/msvcrt.spec | 1 +
3 files changed, 13 insertions(+), 1 deletion(-)
diff --git a/dlls/msvcr110/msvcr110.spec b/dlls/msvcr110/msvcr110.spec
index ba588f9..771d454 100644
--- a/dlls/msvcr110/msvcr110.spec
+++ b/dlls/msvcr110/msvcr110.spec
@@ -1394,7 +1394,7 @@
@ cdecl -arch=i386 _libm_sse2_log_precise() msvcrt.__libm_sse2_log
@ cdecl -arch=i386 _libm_sse2_pow_precise() msvcrt.__libm_sse2_pow
@ cdecl -arch=i386 _libm_sse2_sin_precise() msvcrt.__libm_sse2_sin
-@ stub -arch=i386 _libm_sse2_sqrt_precise
+@ cdecl -arch=i386 _libm_sse2_sqrt_precise() msvcrt.__libm_sse2_sqrt
@ cdecl -arch=i386 _libm_sse2_tan_precise() msvcrt.__libm_sse2_tan
@ cdecl _loaddll(str) msvcrt._loaddll
@ cdecl -arch=x86_64 _local_unwind(ptr ptr) msvcrt._local_unwind
diff --git a/dlls/msvcrt/math.c b/dlls/msvcrt/math.c
index 6bcc2b7..bb9f1ce 100644
--- a/dlls/msvcrt/math.c
+++ b/dlls/msvcrt/math.c
@@ -2164,6 +2164,17 @@ void __cdecl __libm_sse2_sinf(void)
}
/***********************************************************************
+ * __libm_sse2_sqrt (MSVCRT.@)
+ */
+void __cdecl __libm_sse2_sqrt(void)
+{
+ double d;
+ __asm__ __volatile__( "movq %%xmm0,%0" : "=m" (d) );
+ d = sqrt( d );
+ __asm__ __volatile__( "movq %0,%%xmm0" : : "m" (d) );
+}
+
+/***********************************************************************
* __libm_sse2_tan (MSVCRT.@)
*/
void __cdecl __libm_sse2_tan(void)
diff --git a/dlls/msvcrt/msvcrt.spec b/dlls/msvcrt/msvcrt.spec
index e482784..81cff64 100644
--- a/dlls/msvcrt/msvcrt.spec
+++ b/dlls/msvcrt/msvcrt.spec
@@ -242,6 +242,7 @@
@ cdecl -arch=i386 __libm_sse2_powf()
@ cdecl -arch=i386 __libm_sse2_sin()
@ cdecl -arch=i386 __libm_sse2_sinf()
+@ cdecl -arch=i386 __libm_sse2_sqrt()
@ cdecl -arch=i386 __libm_sse2_tan()
@ cdecl -arch=i386 __libm_sse2_tanf()
@ extern __mb_cur_max MSVCRT___mb_cur_max
--
1.8.1.2
More information about the wine-patches
mailing list