summaryrefslogtreecommitdiff
path: root/libavcodec
diff options
context:
space:
mode:
authorMichael Niedermayer <michaelni@gmx.at>2013-11-14 02:39:41 +0100
committerMichael Niedermayer <michaelni@gmx.at>2013-11-14 02:55:42 +0100
commite25ed2608c960302d6f4832a5435c9672d78e282 (patch)
treec1a47f794e12416578691bc9d53c36db5e33d150 /libavcodec
parenta7663ad9cf74bb0a25c07085e7a8f2b235d0c0cb (diff)
parentc7f7bfc9e3a3150ba72bc34366c13fb2210c66ac (diff)
Merge commit 'c7f7bfc9e3a3150ba72bc34366c13fb2210c66ac'
* commit 'c7f7bfc9e3a3150ba72bc34366c13fb2210c66ac': Remove all Alpha architecture optimizations Conflicts: libavcodec/alpha/asm.h libavcodec/alpha/dsputil_alpha.c libavcodec/alpha/dsputil_alpha.h libavcodec/alpha/dsputil_alpha_asm.S libavcodec/alpha/hpeldsp_alpha.c libavcodec/alpha/hpeldsp_alpha.h libavcodec/alpha/hpeldsp_alpha_asm.S libavcodec/alpha/motion_est_alpha.c libavcodec/alpha/motion_est_mvi_asm.S libavcodec/alpha/mpegvideo_alpha.c libavcodec/alpha/regdef.h libavcodec/alpha/simple_idct_alpha.c We have a qemu based fate alpha client. And various failures on alpha have previously pointed to issues in generic C code. Thus IMHO it makes sense to keep alpha code as long as someone is willing to do the little bit of maintaince it needs Merged-by: Michael Niedermayer <michaelni@gmx.at>
Diffstat (limited to 'libavcodec')
-rw-r--r--libavcodec/avcodec.h2
-rw-r--r--libavcodec/dct-test.c6
-rw-r--r--libavcodec/msmpeg4.c5
-rw-r--r--libavcodec/options_table.h2
-rw-r--r--libavcodec/version.h3
5 files changed, 8 insertions, 10 deletions
diff --git a/libavcodec/avcodec.h b/libavcodec/avcodec.h
index 67472b09da..b3d99b0074 100644
--- a/libavcodec/avcodec.h
+++ b/libavcodec/avcodec.h
@@ -2589,7 +2589,9 @@ typedef struct AVCodecContext {
#define FF_IDCT_SIMPLEVIS 18
#define FF_IDCT_FAAN 20
#define FF_IDCT_SIMPLENEON 22
+#if FF_API_ARCH_ALPHA
#define FF_IDCT_SIMPLEALPHA 23
+#endif
/**
* bits per sample/pixel from the demuxer (needed for huffyuv).
diff --git a/libavcodec/dct-test.c b/libavcodec/dct-test.c
index f323366c5f..547ea02a21 100644
--- a/libavcodec/dct-test.c
+++ b/libavcodec/dct-test.c
@@ -61,8 +61,6 @@ void ff_simple_idct_armv5te(int16_t *data);
void ff_simple_idct_armv6(int16_t *data);
void ff_simple_idct_neon(int16_t *data);
-void ff_simple_idct_axp(int16_t *data);
-
struct algo {
const char *name;
void (*func)(int16_t *block);
@@ -156,10 +154,6 @@ static const struct algo idct_tab[] = {
{ "SIMPLE-NEON", ff_simple_idct_neon, PARTTRANS_PERM, AV_CPU_FLAG_NEON },
#endif
-#if ARCH_ALPHA
- { "SIMPLE-ALPHA", ff_simple_idct_axp, NO_PERM },
-#endif
-
{ 0 }
};
diff --git a/libavcodec/msmpeg4.c b/libavcodec/msmpeg4.c
index f2110e7f3e..b071d74c92 100644
--- a/libavcodec/msmpeg4.c
+++ b/libavcodec/msmpeg4.c
@@ -240,10 +240,7 @@ int ff_msmpeg4_pred_dc(MpegEncContext *s, int n,
: "%eax", "%edx"
);
#else
- /* #elif ARCH_ALPHA */
- /* Divisions are extremely costly on Alpha; optimize the most
- common case. But they are costly everywhere...
- */
+ /* Divisions are costly everywhere; optimize the most common case. */
if (scale == 8) {
a = (a + (8 >> 1)) / 8;
b = (b + (8 >> 1)) / 8;
diff --git a/libavcodec/options_table.h b/libavcodec/options_table.h
index c616830d56..39c25d1ad9 100644
--- a/libavcodec/options_table.h
+++ b/libavcodec/options_table.h
@@ -201,7 +201,9 @@ static const AVOption avcodec_options[] = {
{"simplearmv5te", NULL, 0, AV_OPT_TYPE_CONST, {.i64 = FF_IDCT_SIMPLEARMV5TE }, INT_MIN, INT_MAX, V|E|D, "idct"},
{"simplearmv6", NULL, 0, AV_OPT_TYPE_CONST, {.i64 = FF_IDCT_SIMPLEARMV6 }, INT_MIN, INT_MAX, V|E|D, "idct"},
{"simpleneon", NULL, 0, AV_OPT_TYPE_CONST, {.i64 = FF_IDCT_SIMPLENEON }, INT_MIN, INT_MAX, V|E|D, "idct"},
+#if FF_API_ARCH_ALPHA
{"simplealpha", NULL, 0, AV_OPT_TYPE_CONST, {.i64 = FF_IDCT_SIMPLEALPHA }, INT_MIN, INT_MAX, V|E|D, "idct"},
+#endif
{"ipp", NULL, 0, AV_OPT_TYPE_CONST, {.i64 = FF_IDCT_IPP }, INT_MIN, INT_MAX, V|E|D, "idct"},
{"xvidmmx", NULL, 0, AV_OPT_TYPE_CONST, {.i64 = FF_IDCT_XVIDMMX }, INT_MIN, INT_MAX, V|E|D, "idct"},
{"faani", "floating point AAN IDCT", 0, AV_OPT_TYPE_CONST, {.i64 = FF_IDCT_FAAN }, INT_MIN, INT_MAX, V|D|E, "idct"},
diff --git a/libavcodec/version.h b/libavcodec/version.h
index d378130a4e..3ce9ad4f08 100644
--- a/libavcodec/version.h
+++ b/libavcodec/version.h
@@ -114,5 +114,8 @@
#ifndef FF_API_CODEC_PKT
#define FF_API_CODEC_PKT (LIBAVCODEC_VERSION_MAJOR < 56)
#endif
+#ifndef FF_API_ARCH_ALPHA
+#define FF_API_ARCH_ALPHA (LIBAVCODEC_VERSION_MAJOR < 56)
+#endif
#endif /* AVCODEC_VERSION_H */