MANGLE() the 3dnow code

git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@5292 b3059339-0415-0410-9bf9-f77b7e298cf2
This commit is contained in:
arpi 2002-03-23 21:48:55 +00:00
parent ea4b9eb45f
commit 27a401bacb
2 changed files with 8 additions and 4 deletions

View File

@ -9,6 +9,8 @@
*/
#define real float /* ugly - but only way */
#include "../mangle.h"
static unsigned long long int __attribute__((aligned(8))) x_plus_minus_3dnow = 0x8000000000000000ULL;
static float plus_1f = 1.0;
@ -21,7 +23,7 @@ void __attribute__ (( __stdcall__ )) dct64_MMX_3dnow(real *a,real *b,real *c)
" leal 128+%3,%%edx\n\t"
" movl %0,%%esi\n\t"
" movl %1,%%edi\n\t"
" movl $costab_mmx,%%ebx\n\t"
" movl $"MANGLE(costab_mmx)",%%ebx\n\t"
" leal %3,%%ecx\n\t"
/* Phase 1*/
@ -500,7 +502,7 @@ void __attribute__ (( __stdcall__ )) dct64_MMX_3dnow(real *a,real *b,real *c)
/* Phase 6. This is the end of easy road. */
/* Code below is coded in scalar mode. Should be optimized */
" movd plus_1f, %%mm6\n\t"
" movd "MANGLE(plus_1f)", %%mm6\n\t"
" punpckldq 120(%%ebx), %%mm6\n\t" /* mm6 = 1.0 | 120(%%ebx)*/
" movq x_plus_minus_3dnow, %%mm7\n\t" /* mm7 = +1 | -1 */

View File

@ -9,6 +9,8 @@
*/
#define real float /* ugly - but only way */
#include "../mangle.h"
static unsigned long long int __attribute__((aligned(8))) x_plus_minus_3dnow = 0x8000000000000000ULL;
static float plus_1f = 1.0;
@ -21,7 +23,7 @@ void __attribute__ (( __stdcall__ )) dct64_MMX_3dnowex(real *a,real *b,real *c)
" leal 128+%3,%%edx\n\t"
" movl %0,%%esi\n\t"
" movl %1,%%edi\n\t"
" movl $costab_mmx,%%ebx\n\t"
" movl $"MANGLE(costab_mmx)",%%ebx\n\t"
" leal %3,%%ecx\n\t"
/* Phase 1*/
@ -378,7 +380,7 @@ void __attribute__ (( __stdcall__ )) dct64_MMX_3dnowex(real *a,real *b,real *c)
/* Phase 6. This is the end of easy road. */
/* Code below is coded in scalar mode. Should be optimized */
" movd plus_1f, %%mm6\n\t"
" movd "MANGLE(plus_1f)", %%mm6\n\t"
" punpckldq 120(%%ebx), %%mm6\n\t" /* mm6 = 1.0 | 120(%%ebx)*/
" movq x_plus_minus_3dnow, %%mm7\n\t" /* mm7 = +1 | -1 */