aboutsummaryrefslogtreecommitdiffhomepage
path: root/mp3lib
diff options
context:
space:
mode:
authorGravatar zuxy <zuxy@b3059339-0415-0410-9bf9-f77b7e298cf2>2007-06-04 03:05:16 +0000
committerGravatar zuxy <zuxy@b3059339-0415-0410-9bf9-f77b7e298cf2>2007-06-04 03:05:16 +0000
commit08301d00561bbd7e8ea130b3bd1bf0b4cc91697f (patch)
treef5d6e7def9993301184273f4ffa637b24530944b /mp3lib
parentd36bb9b2016367a7861c1b6b2d4235e74c6a76ea (diff)
Correct dct64 functions' declarations
git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@23459 b3059339-0415-0410-9bf9-f77b7e298cf2
Diffstat (limited to 'mp3lib')
-rw-r--r--mp3lib/dct64_3dnow.c2
-rw-r--r--mp3lib/dct64_MMX.c2
-rw-r--r--mp3lib/dct64_k7.c2
-rw-r--r--mp3lib/dct64_sse.c7
-rw-r--r--mp3lib/sr1.c10
5 files changed, 10 insertions, 13 deletions
diff --git a/mp3lib/dct64_3dnow.c b/mp3lib/dct64_3dnow.c
index 841fa98b00..3ccd03cf88 100644
--- a/mp3lib/dct64_3dnow.c
+++ b/mp3lib/dct64_3dnow.c
@@ -15,7 +15,7 @@
static unsigned long long int attribute_used __attribute__((aligned(8))) x_plus_minus_3dnow = 0x8000000000000000ULL;
static float attribute_used plus_1f = 1.0;
-void dct64_MMX_3dnow(real *a,real *b,real *c)
+void dct64_MMX_3dnow(short *a,short *b,real *c)
{
char tmp[256];
__asm __volatile(
diff --git a/mp3lib/dct64_MMX.c b/mp3lib/dct64_MMX.c
index 2014c0fcde..2650ce6c37 100644
--- a/mp3lib/dct64_MMX.c
+++ b/mp3lib/dct64_MMX.c
@@ -6,7 +6,7 @@
#include "mangle.h"
#define real float /* ugly - but only way */
-void dct64_MMX(real *a,real *b,real *c)
+void dct64_MMX(short *a,short *b,real *c)
{
char tmp[256];
__asm __volatile(
diff --git a/mp3lib/dct64_k7.c b/mp3lib/dct64_k7.c
index 1fa270f715..f668f8b27d 100644
--- a/mp3lib/dct64_k7.c
+++ b/mp3lib/dct64_k7.c
@@ -15,7 +15,7 @@
static unsigned long long int attribute_used __attribute__((aligned(8))) x_plus_minus_3dnow = 0x8000000000000000ULL;
static float attribute_used plus_1f = 1.0;
-void dct64_MMX_3dnowex(real *a,real *b,real *c)
+void dct64_MMX_3dnowex(short *a,short *b,real *c)
{
char tmp[256];
__asm __volatile(
diff --git a/mp3lib/dct64_sse.c b/mp3lib/dct64_sse.c
index a4f5eab6f4..4a9b3a092e 100644
--- a/mp3lib/dct64_sse.c
+++ b/mp3lib/dct64_sse.c
@@ -30,15 +30,12 @@ static const int pnpn[4] __attribute__((aligned(16))) =
static const int nnnn[4] __attribute__((aligned(16))) =
{ 1 << 31, 1 << 31, 1 << 31, 1 << 31 };
-void dct64_sse(real *a,real *b,real *c)
+void dct64_sse(short *out0,short *out1,real *c)
{
static real __attribute__ ((aligned(16))) b1[0x20];
static real __attribute__ ((aligned(16))) b2[0x20];
static real const one = 1.f;
- short *out0 = (short*)a;
- short *out1 = (short*)b;
-
{
real *costab = costab_mmx;
int i;
@@ -428,7 +425,7 @@ void dct64_sse(real *a,real *b,real *c)
"fistp 416(%4)\n\t"
".byte 0xdf, 0xc0\n\t" // ffreep %%st(0)
:
- :"m"(costab_mmx[30]), "r"(b1), "r"(b2), "r"(a), "r"(b)
+ :"m"(costab_mmx[30]), "r"(b1), "r"(b2), "r"(out0), "r"(out1)
:"memory"
);
#endif
diff --git a/mp3lib/sr1.c b/mp3lib/sr1.c
index 70058955ed..dae9bd86b4 100644
--- a/mp3lib/sr1.c
+++ b/mp3lib/sr1.c
@@ -393,11 +393,11 @@ static int _has_mmx = 0; // used by layer2.c, layer3.c to pre-scale coeffs
/******************************************************************************/
/* It's hidden from gcc in assembler */
-extern void dct64_MMX(real *, real *, real *);
-extern void dct64_MMX_3dnow(real *, real *, real *);
-extern void dct64_MMX_3dnowex(real *, real *, real *);
-extern void dct64_sse(real *, real *, real *);
-void (*dct64_MMX_func)(real *, real *, real *);
+extern void dct64_MMX(short *, short *, real *);
+extern void dct64_MMX_3dnow(short *, short *, real *);
+extern void dct64_MMX_3dnowex(short *, short *, real *);
+extern void dct64_sse(short *, short *, real *);
+void (*dct64_MMX_func)(short *, short *, real *);
#include "cpudetect.h"