diff options
author | Michael Niedermayer <michaelni@gmx.at> | 2014-06-03 20:19:21 +0400 |
---|---|---|
committer | Michael Niedermayer <michaelni@gmx.at> | 2014-06-03 20:19:21 +0400 |
commit | 83e8650f7703b47d9762d9ef0e520b67f92b5aba (patch) | |
tree | 1a22542120bd137455cd54f25c761bc58c06c330 /libavcodec/arm | |
parent | bcbd7dbce5461ba91ab2179737f916b374572a2e (diff) | |
parent | 896a5bff64264f4d01ed98eacc97a67260c1e17e (diff) |
Merge commit '896a5bff64264f4d01ed98eacc97a67260c1e17e'
* commit '896a5bff64264f4d01ed98eacc97a67260c1e17e':
arm: check if AS supports .dn
Conflicts:
configure
libavcodec/arm/vc1dsp_init_neon.c
Merged-by: Michael Niedermayer <michaelni@gmx.at>
Diffstat (limited to 'libavcodec/arm')
-rw-r--r-- | libavcodec/arm/vc1dsp_init_neon.c | 4 | ||||
-rw-r--r-- | libavcodec/arm/vc1dsp_neon.S | 4 |
2 files changed, 8 insertions, 0 deletions
diff --git a/libavcodec/arm/vc1dsp_init_neon.c b/libavcodec/arm/vc1dsp_init_neon.c index 3b280770c5..bb873e687e 100644 --- a/libavcodec/arm/vc1dsp_init_neon.c +++ b/libavcodec/arm/vc1dsp_init_neon.c @@ -22,6 +22,8 @@ #include "libavcodec/vc1dsp.h" #include "vc1dsp.h" +#include "config.h" + void ff_vc1_inv_trans_8x8_neon(int16_t *block); void ff_vc1_inv_trans_4x8_neon(uint8_t *dest, int linesize, int16_t *block); void ff_vc1_inv_trans_8x4_neon(uint8_t *dest, int linesize, int16_t *block); @@ -93,6 +95,7 @@ av_cold void ff_vc1dsp_init_neon(VC1DSPContext *dsp) dsp->vc1_inv_trans_4x4_dc = ff_vc1_inv_trans_4x4_dc_neon; dsp->put_vc1_mspel_pixels_tab[1][ 0] = ff_put_pixels8x8_neon; + if (HAVE_AS_DN_DIRECTIVE) { FN_ASSIGN(1, 0); FN_ASSIGN(2, 0); FN_ASSIGN(3, 0); @@ -111,6 +114,7 @@ av_cold void ff_vc1dsp_init_neon(VC1DSPContext *dsp) FN_ASSIGN(1, 3); FN_ASSIGN(2, 3); FN_ASSIGN(3, 3); + } dsp->put_no_rnd_vc1_chroma_pixels_tab[0] = ff_put_vc1_chroma_mc8_neon; dsp->avg_no_rnd_vc1_chroma_pixels_tab[0] = ff_avg_vc1_chroma_mc8_neon; diff --git a/libavcodec/arm/vc1dsp_neon.S b/libavcodec/arm/vc1dsp_neon.S index 3fba41fa66..c4f4db9c8e 100644 --- a/libavcodec/arm/vc1dsp_neon.S +++ b/libavcodec/arm/vc1dsp_neon.S @@ -24,6 +24,8 @@ #include "libavutil/arm/asm.S" #include "neon.S" +#include "config.h" + @ Transpose rows into columns of a matrix of 16-bit elements. For 4x4, pass @ double-word registers, for 8x4, pass quad-word registers. .macro transpose16 r0, r1, r2, r3 @@ -661,6 +663,7 @@ function ff_vc1_inv_trans_4x4_neon, export=1 bx lr endfunc +#if HAVE_AS_DN_DIRECTIVE @ The absolute value of multiplication constants from vc1_mspel_filter and vc1_mspel_{ver,hor}_filter_16bits. @ The sign is embedded in the code below that carries out the multiplication (mspel_filter{,.16}). #define MSPEL_MODE_1_MUL_CONSTANTS 4 53 18 3 @@ -984,6 +987,7 @@ PUT_VC1_MSPEL_MC_V_ONLY(2) PUT_VC1_MSPEL_MC_V_ONLY(3) #undef PUT_VC1_MSPEL_MC_V_ONLY +#endif function ff_put_pixels8x8_neon, export=1 vld1.64 {d0}, [r1], r2 |