summaryrefslogtreecommitdiffstats
path: root/libmpeg2
diff options
context:
space:
mode:
authordiego <diego@b3059339-0415-0410-9bf9-f77b7e298cf2>2008-04-01 17:31:37 +0000
committerdiego <diego@b3059339-0415-0410-9bf9-f77b7e298cf2>2008-04-01 17:31:37 +0000
commit01eb667a5516a72ede2ce83391bf3130a2509b90 (patch)
tree64bbb53850e4a560792739a2166f79923c754231 /libmpeg2
parent99901138ab31b54c023dad77f1581e0321f4002f (diff)
downloadmpv-01eb667a5516a72ede2ce83391bf3130a2509b90.tar.bz2
mpv-01eb667a5516a72ede2ce83391bf3130a2509b90.tar.xz
Revert local changes that pointlessly add #ifdefs all over libmpeg2 to disable
code depending on CPU capabilities. Instead, rely on libmpeg2's builtin CPU capability handling. git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@26314 b3059339-0415-0410-9bf9-f77b7e298cf2
Diffstat (limited to 'libmpeg2')
-rw-r--r--libmpeg2/cpu_accel.c2
-rw-r--r--libmpeg2/cpu_state.c2
-rw-r--r--libmpeg2/idct.c9
-rw-r--r--libmpeg2/libmpeg-0.4.1.diff102
-rw-r--r--libmpeg2/motion_comp.c29
5 files changed, 27 insertions, 117 deletions
diff --git a/libmpeg2/cpu_accel.c b/libmpeg2/cpu_accel.c
index 6532ebdbd8..db47a7c03f 100644
--- a/libmpeg2/cpu_accel.c
+++ b/libmpeg2/cpu_accel.c
@@ -137,7 +137,7 @@ static inline uint32_t arch_accel (void)
}
#endif /* ARCH_X86 || ARCH_X86_64 */
-#if defined(ARCH_PPC) || (defined(ARCH_SPARC) && defined(HAVE_VIS))
+#if defined(ARCH_PPC) || defined(ARCH_SPARC)
#include <signal.h>
#include <setjmp.h>
diff --git a/libmpeg2/cpu_state.c b/libmpeg2/cpu_state.c
index 1d3ee2be47..1ef77b7cea 100644
--- a/libmpeg2/cpu_state.c
+++ b/libmpeg2/cpu_state.c
@@ -124,7 +124,7 @@ void mpeg2_cpu_state_init (uint32_t accel)
mpeg2_cpu_state_restore = state_restore_mmx;
}
#endif
-#if defined(ARCH_PPC) && defined(HAVE_ALTIVEC)
+#ifdef ARCH_PPC
if (accel & MPEG2_ACCEL_PPC_ALTIVEC) {
mpeg2_cpu_state_save = state_save_altivec;
mpeg2_cpu_state_restore = state_restore_altivec;
diff --git a/libmpeg2/idct.c b/libmpeg2/idct.c
index deff620f92..5fb4b508af 100644
--- a/libmpeg2/idct.c
+++ b/libmpeg2/idct.c
@@ -239,21 +239,18 @@ static void mpeg2_idct_add_c (const int last, int16_t * block,
void mpeg2_idct_init (uint32_t accel)
{
-#ifdef HAVE_MMX2
+#ifdef ARCH_X86
if (accel & MPEG2_ACCEL_X86_MMXEXT) {
mpeg2_idct_copy = mpeg2_idct_copy_mmxext;
mpeg2_idct_add = mpeg2_idct_add_mmxext;
mpeg2_idct_mmx_init ();
- } else
-#endif
-#ifdef HAVE_MMX
- if (accel & MPEG2_ACCEL_X86_MMX) {
+ } else if (accel & MPEG2_ACCEL_X86_MMX) {
mpeg2_idct_copy = mpeg2_idct_copy_mmx;
mpeg2_idct_add = mpeg2_idct_add_mmx;
mpeg2_idct_mmx_init ();
} else
#endif
-#if defined(ARCH_PPC) && defined(HAVE_ALTIVEC)
+#ifdef ARCH_PPC
if (accel & MPEG2_ACCEL_PPC_ALTIVEC) {
mpeg2_idct_copy = mpeg2_idct_copy_altivec;
mpeg2_idct_add = mpeg2_idct_add_altivec;
diff --git a/libmpeg2/libmpeg-0.4.1.diff b/libmpeg2/libmpeg-0.4.1.diff
index 31ac5757b0..885088bd4a 100644
--- a/libmpeg2/libmpeg-0.4.1.diff
+++ b/libmpeg2/libmpeg-0.4.1.diff
@@ -27,7 +27,7 @@
uint32_t eax, ebx, ecx, edx;
int AMD;
uint32_t caps;
-@@ -105,10 +118,24 @@
+@@ -105,7 +120,21 @@
caps |= MPEG2_ACCEL_X86_MMXEXT;
return caps;
@@ -49,12 +49,8 @@
-#endif /* ARCH_X86 */
+#endif /* ARCH_X86 || ARCH_X86_64 */
--#if defined(ARCH_PPC) || defined(ARCH_SPARC)
-+#if defined(ARCH_PPC) || (defined(ARCH_SPARC) && defined(HAVE_VIS))
- #include <signal.h>
- #include <setjmp.h>
-
-@@ -166,10 +166,10 @@
+ #if defined(ARCH_PPC) || defined(ARCH_SPARC)
+@@ -166,10 +168,10 @@
canjump = 1;
@@ -68,7 +64,7 @@
#endif
asm volatile ("mtspr 256, %0\n\t"
VAND (0, 0, 0)
-@@ -212,7 +243,7 @@
+@@ -212,7 +241,7 @@
accel = 0;
#ifdef ACCEL_DETECT
@@ -123,7 +119,7 @@
#endif
static void state_save_altivec (cpu_state_t * state)
-@@ -115,12 +119,12 @@
+@@ -115,9 +119,9 @@
void mpeg2_cpu_state_init (uint32_t accel)
{
@@ -133,11 +129,7 @@
mpeg2_cpu_state_restore = state_restore_mmx;
}
#endif
--#ifdef ARCH_PPC
-+#if defined(ARCH_PPC) && defined(HAVE_ALTIVEC)
- if (accel & MPEG2_ACCEL_PPC_ALTIVEC) {
- mpeg2_cpu_state_save = state_save_altivec;
- mpeg2_cpu_state_restore = state_restore_altivec;
+ #ifdef ARCH_PPC
--- libmpeg2/decode.c 2006-06-16 20:12:26.000000000 +0200
+++ libmpeg2/decode.c 2006-06-16 20:12:50.000000000 +0200
@@ -351,6 +355,15 @@
@@ -184,26 +176,6 @@
for (j = 0; j < 64; j++)
decoder->quantizer_prescale[index][i][j] =
k * mpeg2dec->quantizer_matrix[index][j];
---- libmpeg2/idct.c 2006-06-16 20:12:26.000000000 +0200
-+++ libmpeg2/idct.c 2006-06-16 20:12:50.000000000 +0200
-@@ -239,12 +239,15 @@
-
- void mpeg2_idct_init (uint32_t accel)
- {
--#ifdef ARCH_X86
-+#ifdef HAVE_MMX2
- if (accel & MPEG2_ACCEL_X86_MMXEXT) {
- mpeg2_idct_copy = mpeg2_idct_copy_mmxext;
- mpeg2_idct_add = mpeg2_idct_add_mmxext;
- mpeg2_idct_mmx_init ();
-- } else if (accel & MPEG2_ACCEL_X86_MMX) {
-+ } else
-+#endif
-+#ifdef HAVE_MMX
-+ if (accel & MPEG2_ACCEL_X86_MMX) {
- mpeg2_idct_copy = mpeg2_idct_copy_mmx;
- mpeg2_idct_add = mpeg2_idct_add_mmx;
- mpeg2_idct_mmx_init ();
--- libmpeg2/idct_mmx.c 2006-06-16 20:12:26.000000000 +0200
+++ libmpeg2/idct_mmx.c 2006-06-16 20:12:50.000000000 +0200
@@ -23,7 +27,7 @@
@@ -217,55 +189,16 @@
--- libmpeg2/motion_comp.c 2006-06-16 20:12:26.000000000 +0200
+++ libmpeg2/motion_comp.c 2006-06-16 20:12:50.000000000 +0200
-@@ -37,16 +37,22 @@
-
- void mpeg2_mc_init (uint32_t accel)
- {
--#ifdef ARCH_X86
-+#ifdef HAVE_MMX2
- if (accel & MPEG2_ACCEL_X86_MMXEXT)
- mpeg2_mc = mpeg2_mc_mmxext;
-- else if (accel & MPEG2_ACCEL_X86_3DNOW)
-+ else
-+#endif
-+#ifdef HAVE_3DNOW
-+ if (accel & MPEG2_ACCEL_X86_3DNOW)
- mpeg2_mc = mpeg2_mc_3dnow;
-- else if (accel & MPEG2_ACCEL_X86_MMX)
-+ else
-+#endif
-+#ifdef HAVE_MMX
-+ if (accel & MPEG2_ACCEL_X86_MMX)
- mpeg2_mc = mpeg2_mc_mmx;
- else
- #endif
--#ifdef ARCH_PPC
-+#if defined(ARCH_PPC) && defined(HAVE_ALTIVEC)
- if (accel & MPEG2_ACCEL_PPC_ALTIVEC)
- mpeg2_mc = mpeg2_mc_altivec;
- else
-@@ -52,7 +62,7 @@
- mpeg2_mc = mpeg2_mc_alpha;
- else
- #endif
--#ifdef ARCH_SPARC
-+#if defined(ARCH_SPARC) && defined(HAVE_VIS)
- if (accel & MPEG2_ACCEL_SPARC_VIS)
- mpeg2_mc = mpeg2_mc_vis;
- else
-@@ -67,6 +67,16 @@
+@@ -67,6 +61,13 @@
mpeg2_mc = mpeg2_mc_vis;
else
#endif
+#ifdef ARCH_ARM
-+ if (accel & MPEG2_ACCEL_ARM) {
-+#ifdef HAVE_IWMMXT
-+ if (accel & MPEG2_ACCEL_ARM_IWMMXT)
-+ mpeg2_mc = mpeg2_mc_iwmmxt;
-+ else
-+#endif
-+ mpeg2_mc = mpeg2_mc_arm;
-+ } else
++ if (accel & MPEG2_ACCEL_ARM_IWMMXT)
++ mpeg2_mc = mpeg2_mc_iwmmxt;
++ else if (accel & MPEG2_ACCEL_ARM)
++ mpeg2_mc = mpeg2_mc_arm;
++ else
+#endif
mpeg2_mc = mpeg2_mc_c;
}
@@ -389,17 +322,6 @@
decoder->motion_parser[4] = motion_reuse_420;
} else if (decoder->picture_structure == FRAME_PICTURE) {
if (decoder->chroma_format == 0) {
---- libmpeg2/idct.c 2006-06-16 20:12:26.000000000 +0200
-+++ libmpeg2/idct.c 2006-06-16 20:12:50.000000000 +0200
-@@ -253,7 +253,7 @@
- mpeg2_idct_mmx_init ();
- } else
- #endif
--#ifdef ARCH_PPC
-+#if defined(ARCH_PPC) && defined(HAVE_ALTIVEC)
- if (accel & MPEG2_ACCEL_PPC_ALTIVEC) {
- mpeg2_idct_copy = mpeg2_idct_copy_altivec;
- mpeg2_idct_add = mpeg2_idct_add_altivec;
--- libmpeg2/idct_altivec.c 2004/08/02 11:26:43 12933
+++ libmpeg2/idct_altivec.c 2005/05/15 20:11:34 15484
@@ -41,7 +41,7 @@
diff --git a/libmpeg2/motion_comp.c b/libmpeg2/motion_comp.c
index 3307c0af8d..7099b2d957 100644
--- a/libmpeg2/motion_comp.c
+++ b/libmpeg2/motion_comp.c
@@ -37,22 +37,16 @@ mpeg2_mc_t mpeg2_mc;
void mpeg2_mc_init (uint32_t accel)
{
-#ifdef HAVE_MMX2
+#ifdef ARCH_X86
if (accel & MPEG2_ACCEL_X86_MMXEXT)
mpeg2_mc = mpeg2_mc_mmxext;
- else
-#endif
-#ifdef HAVE_3DNOW
- if (accel & MPEG2_ACCEL_X86_3DNOW)
+ else if (accel & MPEG2_ACCEL_X86_3DNOW)
mpeg2_mc = mpeg2_mc_3dnow;
- else
-#endif
-#ifdef HAVE_MMX
- if (accel & MPEG2_ACCEL_X86_MMX)
+ else if (accel & MPEG2_ACCEL_X86_MMX)
mpeg2_mc = mpeg2_mc_mmx;
else
#endif
-#if defined(ARCH_PPC) && defined(HAVE_ALTIVEC)
+#ifdef ARCH_PPC
if (accel & MPEG2_ACCEL_PPC_ALTIVEC)
mpeg2_mc = mpeg2_mc_altivec;
else
@@ -62,20 +56,17 @@ void mpeg2_mc_init (uint32_t accel)
mpeg2_mc = mpeg2_mc_alpha;
else
#endif
-#if defined(ARCH_SPARC) && defined(HAVE_VIS)
+#ifdef ARCH_SPARC
if (accel & MPEG2_ACCEL_SPARC_VIS)
mpeg2_mc = mpeg2_mc_vis;
else
#endif
#ifdef ARCH_ARM
- if (accel & MPEG2_ACCEL_ARM) {
-#ifdef HAVE_IWMMXT
- if (accel & MPEG2_ACCEL_ARM_IWMMXT)
- mpeg2_mc = mpeg2_mc_iwmmxt;
- else
-#endif
- mpeg2_mc = mpeg2_mc_arm;
- } else
+ if (accel & MPEG2_ACCEL_ARM_IWMMXT)
+ mpeg2_mc = mpeg2_mc_iwmmxt;
+ else if (accel & MPEG2_ACCEL_ARM)
+ mpeg2_mc = mpeg2_mc_arm;
+ else
#endif
mpeg2_mc = mpeg2_mc_c;
}