changeset 23441:1b739c2dc613

Correct dct64 functions' declarations
author zuxy
date Mon, 04 Jun 2007 03:05:16 +0000
parents 1a4f46c395eb
children b4cd44be30d4
files mp3lib/dct64_3dnow.c mp3lib/dct64_MMX.c mp3lib/dct64_k7.c mp3lib/dct64_sse.c mp3lib/sr1.c
diffstat 5 files changed, 10 insertions(+), 13 deletions(-) [+]
line wrap: on
line diff
--- a/mp3lib/dct64_3dnow.c	Sun Jun 03 08:48:44 2007 +0000
+++ b/mp3lib/dct64_3dnow.c	Mon Jun 04 03:05:16 2007 +0000
@@ -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(
--- a/mp3lib/dct64_MMX.c	Sun Jun 03 08:48:44 2007 +0000
+++ b/mp3lib/dct64_MMX.c	Mon Jun 04 03:05:16 2007 +0000
@@ -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(
--- a/mp3lib/dct64_k7.c	Sun Jun 03 08:48:44 2007 +0000
+++ b/mp3lib/dct64_k7.c	Mon Jun 04 03:05:16 2007 +0000
@@ -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(
--- a/mp3lib/dct64_sse.c	Sun Jun 03 08:48:44 2007 +0000
+++ b/mp3lib/dct64_sse.c	Mon Jun 04 03:05:16 2007 +0000
@@ -30,15 +30,12 @@
 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 @@
         "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
--- a/mp3lib/sr1.c	Sun Jun 03 08:48:44 2007 +0000
+++ b/mp3lib/sr1.c	Mon Jun 04 03:05:16 2007 +0000
@@ -393,11 +393,11 @@
 /******************************************************************************/
 
 /* 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"