diff options
author | rtognimp <rtognimp@b3059339-0415-0410-9bf9-f77b7e298cf2> | 2004-10-23 15:47:08 +0000 |
---|---|---|
committer | rtognimp <rtognimp@b3059339-0415-0410-9bf9-f77b7e298cf2> | 2004-10-23 15:47:08 +0000 |
commit | 64039d15941aa065b1677e9882914c07670d839e (patch) | |
tree | f65c13e730cf24c082e05eea6c8c20897d339289 /loader | |
parent | 6943b13bb531dc01d51fc038adbf13dc8cb6c432 (diff) | |
download | mpv-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.c | 11 |
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); } |