CVS: main/mp3lib dct64_MMX.c,1.1,1.2 decode_MMX.c,1.1,1.2 decode_i586.c,1.1,1.2 tabinit_MMX.c,1.2,1.3
Update of /cvsroot/mplayer/main/mp3lib In directory mplayer:/var/tmp.root/cvs-serv27499/mp3lib Modified Files: dct64_MMX.c decode_MMX.c decode_i586.c tabinit_MMX.c Log Message: mangling in mp3lib + stdcall undefined fix with cygwin Index: dct64_MMX.c =================================================================== RCS file: /cvsroot/mplayer/main/mp3lib/dct64_MMX.c,v retrieving revision 1.1 retrieving revision 1.2 diff -u -r1.1 -r1.2 --- dct64_MMX.c 15 Jan 2002 09:01:39 -0000 1.1 +++ dct64_MMX.c 19 Jan 2002 04:47:32 -0000 1.2 @@ -3,9 +3,15 @@ * See ChangeLog of mpg123-0.59s-pre.1 for detail * Applied to mplayer by Nick Kurshev <nickols_k@mail.ru> */ +#include "../mangle.h" #define real float /* ugly - but only way */ +#ifdef __CYGWIN__ +/* will probably cause sig11 with debuggingsymbols, but otherwise undef. ref */ +void dct64_MMX(real *a,real *b,real *c) +#else void __attribute__ (( __stdcall__ )) dct64_MMX(real *a,real *b,real *c) +#endif { char tmp[256]; __asm __volatile( @@ -19,7 +25,7 @@ " movl %1,%%edi\n\t" " flds 4(%%eax)\n\t" -" movl $costab_mmx,%%ebx\n\t" +" movl $"MANGLE(costab_mmx)",%%ebx\n\t" " fadds 120(%%eax)\n\t" " orl %%ecx,%%ecx\n\t" " fstps 4(%%edx)\n\t" Index: decode_MMX.c =================================================================== RCS file: /cvsroot/mplayer/main/mp3lib/decode_MMX.c,v retrieving revision 1.1 retrieving revision 1.2 diff -u -r1.1 -r1.2 --- decode_MMX.c 13 Jan 2002 18:26:58 -0000 1.1 +++ decode_MMX.c 19 Jan 2002 04:47:32 -0000 1.2 @@ -7,6 +7,7 @@ * Local ChangeLog: * - Partial loops unrolling and removing MOVW insn from loops */ +#include "../mangle.h" #define real float /* ugly - but only way */ static unsigned long long __attribute__((aligned(8))) null_one = 0x0000ffff0000ffffULL; @@ -81,11 +82,11 @@ "emms\n\t" "pushl %%edx\n\t" "pushl %%ecx\n\t" - "call *dct64_MMX_func\n\t" + "call *"MANGLE(dct64_MMX_func)"\n\t" "leal 1(%%ebx), %%ecx\n\t" "subl %%ebp,%%ebx\n\t" "pushl %%ecx\n\t" - "leal decwins(%%ebx,%%ebx,1), %%edx\n\t" + "leal "MANGLE(decwins)"(%%ebx,%%ebx,1), %%edx\n\t" "shrl $1, %%ecx\n\t" ".align 16\n\t" ".L3:\n\t" @@ -124,8 +125,8 @@ "movq (%%edi), %%mm1\n\t" "punpckldq %%mm4, %%mm0\n\t" - "pand one_null, %%mm1\n\t" - "pand null_one, %%mm0\n\t" + "pand "MANGLE(one_null)", %%mm1\n\t" + "pand "MANGLE(null_one)", %%mm0\n\t" "por %%mm0, %%mm1\n\t" "movq %%mm1,(%%edi)\n\t" @@ -206,8 +207,8 @@ "movq (%%edi), %%mm1\n\t" "punpckldq %%mm4, %%mm0\n\t" - "pand one_null, %%mm1\n\t" - "pand null_one, %%mm0\n\t" + "pand "MANGLE(one_null)", %%mm1\n\t" + "pand "MANGLE(null_one)", %%mm0\n\t" "por %%mm0, %%mm1\n\t" "movq %%mm1,(%%edi)\n\t" Index: decode_i586.c =================================================================== RCS file: /cvsroot/mplayer/main/mp3lib/decode_i586.c,v retrieving revision 1.1 retrieving revision 1.2 diff -u -r1.1 -r1.2 --- decode_i586.c 14 Jan 2002 09:32:51 -0000 1.1 +++ decode_i586.c 19 Jan 2002 04:47:32 -0000 1.2 @@ -23,6 +23,7 @@ * * $Id$ */ +#include "../mangle.h" #define real float /* ugly - but only way */ static long buffs[1088]; @@ -36,17 +37,17 @@ " movl %1,%%eax\n\t"/*bandPtr*/ " movl %3,%%esi\n\t" " xorl %%edi,%%edi\n\t" -" movl bo,%%ebp\n\t" +" movl "MANGLE(bo)",%%ebp\n\t" " cmpl %%edi,%2\n\t" " jne .L48\n\t" " decl %%ebp\n\t" " andl $15,%%ebp\n\t" -" movl %%ebp,bo\n\t" -" movl $buffs,%%ecx\n\t" +" movl %%ebp,"MANGLE(bo)"\n\t" +" movl $"MANGLE(buffs)",%%ecx\n\t" " jmp .L49\n\t" ".L48:\n\t" " addl $2,%%esi\n\t" -" movl $buffs+2176,%%ecx\n\t" +" movl $"MANGLE(buffs)"+2176,%%ecx\n\t" ".L49:\n\t" " testl $1,%%ebp\n\t" " je .L50\n\t" @@ -72,11 +73,11 @@ " leal (%%ecx,%%ebp,4),%%eax\n\t" ".L74:\n\t" " pushl %%eax\n\t" -" call dct64\n\t" +" call "MANGLE(dct64)"\n\t" " addl $12,%%esp\n\t" " movl %4,%%edx\n\t" " leal 0(,%%edx,4),%%edx\n\t" -" movl $decwin+64,%%eax\n\t" +" movl $"MANGLE(decwin)"+64,%%eax\n\t" " movl %%eax,%%ecx\n\t" " subl %%edx,%%ecx\n\t" " movl $16,%%ebp\n\t" Index: tabinit_MMX.c =================================================================== RCS file: /cvsroot/mplayer/main/mp3lib/tabinit_MMX.c,v retrieving revision 1.2 retrieving revision 1.3 diff -u -r1.2 -r1.3 --- tabinit_MMX.c 13 Jan 2002 17:23:32 -0000 1.2 +++ tabinit_MMX.c 19 Jan 2002 04:47:32 -0000 1.3 @@ -3,6 +3,7 @@ * See ChangeLog of mpg123-0.59s-pre.1 for detail * Applied to mplayer by Nick Kurshev <nickols_k@mail.ru> */ +#include "../mangle.h" long __attribute__((aligned(8))) decwins [544]; @@ -66,7 +67,7 @@ ".L01:\n\t" "pushl %%eax\n\t" "fildl (%%esp)\n\t" - "fdivs intwindiv\n\t" + "fdivs "MANGLE(intwindiv)"\n\t" "popl %%eax\n\t" "fimull %2\n\t" "fsts %1(,%%ecx,4)\n\t"
Hello, Atmosfear! On Sat, 19 Jan 2002 05:47:34 +0100 you wrote:
Update of /cvsroot/mplayer/main/mp3lib In directory mplayer:/var/tmp.root/cvs-serv27499/mp3lib
Modified Files: dct64_MMX.c decode_MMX.c decode_i586.c tabinit_MMX.c Log Message: mangling in mp3lib + stdcall undefined fix with cygwin
Index: dct64_MMX.c =================================================================== RCS file: /cvsroot/mplayer/main/mp3lib/dct64_MMX.c,v retrieving revision 1.1 retrieving revision 1.2 diff -u -r1.1 -r1.2 --- dct64_MMX.c 15 Jan 2002 09:01:39 -0000 1.1 +++ dct64_MMX.c 19 Jan 2002 04:47:32 -0000 1.2 @@ -3,9 +3,15 @@ * See ChangeLog of mpg123-0.59s-pre.1 for detail * Applied to mplayer by Nick Kurshev <nickols_k@mail.ru> */ +#include "../mangle.h" #define real float /* ugly - but only way */
+#ifdef __CYGWIN__ +/* will probably cause sig11 with debuggingsymbols, but otherwise undef. ref */ +void dct64_MMX(real *a,real *b,real *c) +#else void __attribute__ (( __stdcall__ )) dct64_MMX(real *a,real *b,real *c) +#endif { What you've done? Please unroll this patch! For cygwin there are lots of ways to avoid this problem: for example: WINAPI function modifier or any other. Try study cygwin's headers first!
_______________________________________________ Mplayer-cvslog mailing list Mplayer-cvslog@mplayerhq.hu http://mplayerhq.hu/mailman/listinfo/mplayer-cvslog
Best regards! Nick
On Saturday, 19. January 2002 08:53, Nick Kurshev wrote:
Hello, Atmosfear!
On Sat, 19 Jan 2002 05:47:34 +0100 you wrote:
Update of /cvsroot/mplayer/main/mp3lib In directory mplayer:/var/tmp.root/cvs-serv27499/mp3lib
Modified Files: dct64_MMX.c decode_MMX.c decode_i586.c tabinit_MMX.c Log Message: mangling in mp3lib + stdcall undefined fix with cygwin
Index: dct64_MMX.c =================================================================== RCS file: /cvsroot/mplayer/main/mp3lib/dct64_MMX.c,v retrieving revision 1.1 retrieving revision 1.2 diff -u -r1.1 -r1.2 --- dct64_MMX.c 15 Jan 2002 09:01:39 -0000 1.1 +++ dct64_MMX.c 19 Jan 2002 04:47:32 -0000 1.2 @@ -3,9 +3,15 @@ * See ChangeLog of mpg123-0.59s-pre.1 for detail * Applied to mplayer by Nick Kurshev <nickols_k@mail.ru> */ +#include "../mangle.h" #define real float /* ugly - but only way */
+#ifdef __CYGWIN__ +/* will probably cause sig11 with debuggingsymbols, but otherwise undef. ref */ +void dct64_MMX(real *a,real *b,real *c) +#else void __attribute__ (( __stdcall__ )) dct64_MMX(real *a,real *b,real *c) +#endif {
What you've done? Please unroll this patch! For cygwin there are lots of ways to avoid this problem: for example: WINAPI function modifier or any other. Try study cygwin's headers first! Yes, you're right, but I'll leave it like this until I found solution (at least it compiles like this but sig11 on playback of course...) -- Best Regards, Atmos
- MPlayer Developer - http://mplayerhq.hu/ - ____________________________________________
participants (3)
-
Atmosfear -
Felix Buenemann -
Nick Kurshev