Commit b3c38ec9 authored by Sam Hocevar's avatar Sam Hocevar

* ./include/mmx.h, ./plugins/imdct/*: gcc-3.1 compilation fixes courtesy

   of Yves Duret and other Mandrakesoft guys I don't know.
parent f1baee06
......@@ -41,16 +41,16 @@ typedef union {
#define mmx_i2r(op,imm,reg) \
__asm__ __volatile__ (#op " %0, %%" #reg \
: /* nothing */ \
: "X" (imm) )
: "i" (imm) )
#define mmx_m2r(op,mem,reg) \
__asm__ __volatile__ (#op " %0, %%" #reg \
: /* nothing */ \
: "X" (mem))
: "m" (mem))
#define mmx_r2m(op,reg,mem) \
__asm__ __volatile__ (#op " %%" #reg ", %0" \
: "=X" (mem) \
: "=m" (mem) \
: /* nothing */ )
#define mmx_r2r(op,regs,regd) \
......
......@@ -2,7 +2,7 @@
* ac3_imdct_3dn.c: accelerated 3D Now! ac3 DCT
*****************************************************************************
* Copyright (C) 1999, 2000 VideoLAN
* $Id: ac3_imdct_3dn.c,v 1.9 2001/12/30 07:09:55 sam Exp $
* $Id: ac3_imdct_3dn.c,v 1.10 2002/05/14 18:11:15 sam Exp $
*
* Authors: Renaud Dartus <reno@videolan.org>
*
......@@ -88,7 +88,7 @@ static void imdct512_pre_ifft_twiddle_3dn (const int *pmt, complex_t *buf, float
"movl $128, %%ebx\n" /* loop counter */
".align 16\n"
".loop:\n"
"0:\n"
"movl (%%eax), %%esi\n"
"movd (%%ecx, %%esi, 8), %%mm1\n" /* 2j */
"punpckldq %%mm1, %%mm1\n" /* 2j | 2j */
......@@ -111,7 +111,7 @@ static void imdct512_pre_ifft_twiddle_3dn (const int *pmt, complex_t *buf, float
"movq %%mm0, -8(%%edi)\n"
"decl %%ebx\n"
"jnz .loop\n"
"jnz 0b\n"
"popl %%esi\n"
"popl %%ebx\n"
......@@ -129,7 +129,7 @@ static void imdct512_post_ifft_twiddle_3dn (complex_t *buf, float *xcos_sin_sse)
"movl $64, %%ebx\n" /* loop counter */
".align 16\n"
".loop1:\n"
"0:\n"
"movq (%%eax), %%mm0\n" /* im0 | re0 */
"movq %%mm0, %%mm1\n" /* im0 | re0 */
"punpckldq %%mm0, %%mm0\n" /* re0 | re0 */
......@@ -168,7 +168,7 @@ static void imdct512_post_ifft_twiddle_3dn (complex_t *buf, float *xcos_sin_sse)
"addl $32, %%ecx\n"
"addl $16, %%eax\n"
"decl %%ebx\n"
"jnz .loop1\n"
"jnz 0b\n"
"popl %%ebx\n"
"femms\n"
......
......@@ -2,7 +2,7 @@
* ac3_imdct_sse.c: accelerated SSE ac3 DCT
*****************************************************************************
* Copyright (C) 1999, 2000 VideoLAN
* $Id: ac3_imdct_sse.c,v 1.10 2001/12/30 07:09:55 sam Exp $
* $Id: ac3_imdct_sse.c,v 1.11 2002/05/14 18:11:15 sam Exp $
*
* Authors: Renaud Dartus <reno@videolan.org>
* Aaron Holtzman <aholtzma@engr.uvic.ca>
......@@ -103,7 +103,7 @@ static void imdct512_pre_ifft_twiddle_sse (const int *pmt, complex_t *buf, float
"movl $64, -4(%%ebp)\n"
".align 16\n"
".loop:\n"
"0:\n"
"movl (%%eax), %%esi\n"
"movl 4(%%eax), %%edi\n"
"movss (%%ecx, %%esi, 8), %%xmm1\n" /* 2j */
......@@ -135,7 +135,7 @@ static void imdct512_pre_ifft_twiddle_sse (const int *pmt, complex_t *buf, float
"movaps %%xmm0, -16(%%ebx)\n"
"decl -4(%%ebp)\n"
"jnz .loop\n"
"jnz 0b\n"
"popl %%esi\n"
"popl %%edi\n"
......@@ -159,7 +159,7 @@ static void imdct512_post_ifft_twiddle_sse (complex_t *buf, float *xcos_sin_sse)
"movl $32, %%ebx\n" /* loop counter */
".align 16\n"
".loop1:\n"
"0:\n"
"movaps (%%eax), %%xmm0\n" /* im1 | re1 | im0 | re0 */
"movaps (%%ecx), %%xmm2\n" /* -c | -s | -s | c */
......@@ -210,7 +210,7 @@ static void imdct512_post_ifft_twiddle_sse (complex_t *buf, float *xcos_sin_sse)
"addl $64, %%ecx\n"
"addl $32, %%eax\n"
"decl %%ebx\n"
"jnz .loop1\n"
"jnz 0b\n"
"popl %%ebx\n"
: "=a" (buf)
......
......@@ -2,7 +2,7 @@
* ac3_srfft_sse.c: accelerated SSE ac3 fft functions
*****************************************************************************
* Copyright (C) 1999-2001 VideoLAN
* $Id: ac3_srfft_sse.c,v 1.11 2001/12/30 07:09:55 sam Exp $
* $Id: ac3_srfft_sse.c,v 1.12 2002/05/14 18:11:15 sam Exp $
*
* Authors: Renaud Dartus <reno@videolan.org>
* Aaron Holtzman <aholtzma@engr.uvic.ca>
......@@ -274,7 +274,7 @@ static void fft_asmb_sse (ck_sse_t * ck, int k, complex_t *x, complex_t *wTB,
"decl -8(%%ebp)\n"
".align 16\n"
".loop:\n"
"0:\n"
"movaps (%%edi), %%xmm0\n" /* wT[1] | wT[0] */
"movaps (%%edx), %%xmm1\n" /* d[1] | d[0] */
......@@ -341,10 +341,10 @@ static void fft_asmb_sse (ck_sse_t * ck, int k, complex_t *x, complex_t *wTB,
"addl $16, %%eax\n"
"decl -8(%%ebp)\n"
"jnz .loop\n"
"jnz 0b\n"
".align 16\n"
".end:\n"
"1:\n"
"popl %%edi\n"
"popl %%esi\n"
"popl %%edx\n"
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment