mirror of
https://github.com/FFmpeg/FFmpeg.git
synced 2024-12-23 12:43:46 +02:00
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>
This commit is contained in:
commit
e25ed2608c
@ -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).
|
||||
|
@ -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 }
|
||||
};
|
||||
|
||||
|
@ -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;
|
||||
|
@ -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"},
|
||||
|
@ -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 */
|
||||
|
Loading…
Reference in New Issue
Block a user