- Separate some _CI* functions into their own files and export them from ntdll. Patch by Vincenzo Cotugno.
See issue #7085 for more details.
svn path=/trunk/; revision=56961
@ stdcall ZwWriteRequestData(ptr ptr long ptr long ptr)
@ stdcall ZwWriteVirtualMemory(long ptr ptr long ptr)
@ stdcall ZwYieldExecution()
-;@ cdecl _CIcos
-;@ cdecl _CIlog
-;@ cdecl -private -arch=i386 _CIpow()
-;@ cdecl _CIsin
-;@ cdecl _CIsqrt
+@ cdecl -arch=i386 _CIcos()
+@ cdecl -arch=i386 _CIlog()
+@ cdecl -arch=i386 _CIpow()
+@ cdecl -arch=i386 _CIsin()
+@ cdecl -arch=i386 _CIsqrt()
@ cdecl -arch=x86_64 __C_specific_handler(ptr long ptr ptr)
@ cdecl __isascii(long)
@ cdecl __iscsym(long)
misc/stubs.c
misc/tls.c
printf/_cprintf.c
- printf/_cwprintf.c
+ printf/_cwprintf.c
printf/_snprintf.c
printf/_snwprintf.c
printf/_vcprintf.c
- printf/_vcwprintf.c
+ printf/_vcwprintf.c
printf/_vscprintf.c
printf/_vscwprintf.c
printf/_vsnprintf.c
math/i386/tan_asm.s
math/i386/atan2_asm.s
math/i386/ci.c
+ math/i386/cicos.c
+ math/i386/cilog.c
+ math/i386/cipow.c
+ math/i386/cisin.c
+ math/i386/cisqrt.c
math/i386/exp_asm.s
math/i386/fmod_asm.s
math/i386/fmodf_asm.s
int _isnanl (long double); /* not exported */
int _isinfl (long double); /* not exported */
+#if defined(__GNUC__)
+#define FPU_DOUBLE(var) double var; \
+ __asm__ __volatile__( "fstpl %0;fwait" : "=m" (var) : )
+#define FPU_DOUBLES(var1,var2) double var1,var2; \
+ __asm__ __volatile__( "fstpl %0;fwait" : "=m" (var2) : ); \
+ __asm__ __volatile__( "fstpl %0;fwait" : "=m" (var1) : )
+#elif defined(_MSC_VER)
+#define FPU_DOUBLE(var) double var; \
+ __asm { fstp [var] }; __asm { fwait };
+#define FPU_DOUBLES(var1,var2) double var1,var2; \
+ __asm { fstp [var1] }; __asm { fwait }; \
+ __asm { fstp [var2] }; __asm { fwait };
+#endif
+
#endif
math/i386/sqrt_asm.s
math/i386/tan_asm.s
math/i386/ci.c
+ math/i386/cicos.c
+ math/i386/cilog.c
+ math/i386/cipow.c
+ math/i386/cisin.c
+ math/i386/cisqrt.c
misc/i386/readcr4.S)
if(NOT MSVC)
list(APPEND LIBCNTPR_SOURCE except/i386/chkstk_ms.s)
#include <precomp.h>
-#include <math.h>
-#if defined(__GNUC__)
-#define FPU_DOUBLE(var) double var; \
- __asm__ __volatile__( "fstpl %0;fwait" : "=m" (var) : )
-#define FPU_DOUBLES(var1,var2) double var1,var2; \
- __asm__ __volatile__( "fstpl %0;fwait" : "=m" (var2) : ); \
- __asm__ __volatile__( "fstpl %0;fwait" : "=m" (var1) : )
-#elif defined(_MSC_VER)
-#define FPU_DOUBLE(var) double var; \
- __asm { fstp [var] }; __asm { fwait };
-#define FPU_DOUBLES(var1,var2) double var1,var2; \
- __asm { fstp [var1] }; __asm { fwait }; \
- __asm { fstp [var2] }; __asm { fwait };
-#endif
-
-/*
- * @implemented
- */
-double CDECL _CIsin(void)
-{
- FPU_DOUBLE(x);
- return sin(x);
-}
-/*
- * @implemented
- */
-double CDECL _CIcos(void)
-{
- FPU_DOUBLE(x);
- return cos(x);
-}
/*
* @implemented
*/
FPU_DOUBLE(x);
return exp(x);
}
-/*
- * @implemented
- */
-double CDECL _CIlog(void)
-{
- FPU_DOUBLE(x);
- return log(x);
-}
/*
* @implemented
*/
FPU_DOUBLE(x);
return log10(x);
}
-/*
- * @implemented
- */
-double CDECL _CIpow(void)
-{
- FPU_DOUBLES(x, y);
- return pow(x, y);
-}
-/*
- * @implemented
- */
-double CDECL _CIsqrt(void)
-{
- FPU_DOUBLE(x);
- return sqrt(x);
-}
/*
* @implemented
*/
--- /dev/null
+#include <precomp.h>
+
+/*
+ * @implemented
+ */
+double CDECL _CIcos(void)
+{
+ FPU_DOUBLE(x);
+ return cos(x);
+}
--- /dev/null
+#include <precomp.h>
+
+/*
+ * @implemented
+ */
+double CDECL _CIlog(void)
+{
+ FPU_DOUBLE(x);
+ return log(x);
+}
--- /dev/null
+#include <precomp.h>
+
+/*
+ * @implemented
+ */
+double CDECL _CIpow(void)
+{
+ FPU_DOUBLES(x, y);
+ return pow(x, y);
+}
--- /dev/null
+#include <precomp.h>
+
+/*
+ * @implemented
+ */
+double CDECL _CIsin(void)
+{
+ FPU_DOUBLE(x);
+ return sin(x);
+}
--- /dev/null
+#include <precomp.h>
+
+/*
+ * @implemented
+ */
+double CDECL _CIsqrt(void)
+{
+ FPU_DOUBLE(x);
+ return sqrt(x);
+}
except/i386/chkstk_asm.s
except/i386/chkstk_ms.s
math/i386/ci.c
+ math/i386/cicos.c
+ math/i386/cilog.c
+ math/i386/cipow.c
+ math/i386/cisin.c
+ math/i386/cisqrt.c
math/i386/ftol2_asm.s
math/i386/alldiv_asm.s)
elseif(ARCH MATCHES amd64)