summaryrefslogtreecommitdiffstats
path: root/loader
diff options
context:
space:
mode:
authorrtognimp <rtognimp@b3059339-0415-0410-9bf9-f77b7e298cf2>2004-10-23 15:47:08 +0000
committerrtognimp <rtognimp@b3059339-0415-0410-9bf9-f77b7e298cf2>2004-10-23 15:47:08 +0000
commit64039d15941aa065b1677e9882914c07670d839e (patch)
treef65c13e730cf24c082e05eea6c8c20897d339289 /loader
parent6943b13bb531dc01d51fc038adbf13dc8cb6c432 (diff)
downloadmpv-64039d15941aa065b1677e9882914c07670d839e.tar.bz2
mpv-64039d15941aa065b1677e9882914c07670d839e.tar.xz
Fix for Windows media audio 9 voice codec (format 0x0a)
Tested with dll version 9.0.0.2926 git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@13740 b3059339-0415-0410-9bf9-f77b7e298cf2
Diffstat (limited to 'loader')
-rw-r--r--loader/win32.c11
1 files changed, 8 insertions, 3 deletions
diff --git a/loader/win32.c b/loader/win32.c
index 4b6e1e1723..ca5f0e05e9 100644
--- a/loader/win32.c
+++ b/loader/win32.c
@@ -4315,10 +4315,15 @@ static void exp_ftol(void)
);
}
-#warning check for _CIpow
-static double exp_CIpow(double x, double y)
+#define FPU_DOUBLES(var1,var2) double var1,var2; \
+ __asm__ __volatile__( "fstpl %0;fwait" : "=m" (var2) : ); \
+ __asm__ __volatile__( "fstpl %0;fwait" : "=m" (var1) : )
+
+static double exp_CIpow(void)
{
- /*printf("Pow %f %f 0x%Lx 0x%Lx => %f\n", x, y, *((int64_t*)&x), *((int64_t*)&y), pow(x, y));*/
+ FPU_DOUBLES(x,y);
+
+ dbgprintf("_CIpow(%lf, %lf)\n", x, y);
return pow(x, y);
}