msvcrt: implement _ftol in msvcrt instead of forwarding to ntdll (1/2) (try 3)

Austin English austinenglish at gmail.com
Thu Dec 13 22:02:53 CST 2012


Now in math.c

-- 
-Austin
-------------- next part --------------
From bcba34ad67ede42df21b405bbe8f3b1a0b481964 Mon Sep 17 00:00:00 2001
From: Austin English <austinenglish at gmail.com>
Date: Thu, 13 Dec 2012 20:01:26 -0800
Subject: [PATCH 1/2] msvcrt: implement _ftol in msvcrt instead of forwarding
 to ntdll (1/2) (try 3)

---
 dlls/msvcrt/math.c      |    9 +++++++++
 dlls/msvcrt/msvcrt.spec |    6 +++---
 2 files changed, 12 insertions(+), 3 deletions(-)

diff --git a/dlls/msvcrt/math.c b/dlls/msvcrt/math.c
index 230d405..4570da0 100644
--- a/dlls/msvcrt/math.c
+++ b/dlls/msvcrt/math.c
@@ -629,6 +629,15 @@ double CDECL _CItanh(void)
   return MSVCRT_tanh(x);
 }
 
+/*********************************************************************
+ *                  _ftol   (MSVCRT.@)
+ */
+LONGLONG CDECL MSVCRT__ftol(void)
+{
+    FPU_DOUBLE(x);
+    return (LONGLONG)x;
+}
+
 #endif /* defined(__GNUC__) && defined(__i386__) */
 
 /*********************************************************************
diff --git a/dlls/msvcrt/msvcrt.spec b/dlls/msvcrt/msvcrt.spec
index 06d26b4..c4d0332 100644
--- a/dlls/msvcrt/msvcrt.spec
+++ b/dlls/msvcrt/msvcrt.spec
@@ -453,9 +453,9 @@
 @ cdecl _ftime32_s(ptr) MSVCRT__ftime32_s
 @ cdecl _ftime64(ptr) MSVCRT__ftime64
 @ cdecl _ftime64_s(ptr) MSVCRT__ftime64_s
-@ cdecl -ret64 _ftol() ntdll._ftol
-@ cdecl -ret64 _ftol2() ntdll._ftol
-@ cdecl -ret64 _ftol2_sse() ntdll._ftol #FIXME: SSE variant should be implemented
+@ cdecl -arch=i386 -ret64 _ftol() MSVCRT__ftol
+@ cdecl -arch=i386 -ret64 _ftol2() MSVCRT__ftol
+@ cdecl -arch=i386 -ret64 _ftol2_sse() MSVCRT__ftol #FIXME: SSE variant should be implemented
 # stub _ftol2_sse_excpt
 @ cdecl _fullpath(ptr str long)
 # stub _fullpath_dbg(ptr str long long str long)
-- 
1.7.8.6


More information about the wine-patches mailing list