@ -119,8 +119,8 @@ void ff_hevc_put_hevc_bi_##name##W##_##bitd##_##opt(uint8_t *_dst, ptrdiff_t dst
}
# define mc_rep_funcs(name, bitd, step, W, opt) \
mc_rep_func ( name , bitd , step , W , opt ) ; \
mc_rep_uni_func ( name , bitd , step , W , opt ) ; \
mc_rep_func ( name , bitd , step , W , opt ) \
mc_rep_uni_func ( name , bitd , step , W , opt ) \
mc_rep_bi_func ( name , bitd , step , W , opt )
# define mc_rep_func2(name, bitd, step1, step2, W, opt) \
@ -153,14 +153,9 @@ void ff_hevc_put_hevc_bi_##name##W##_##bitd##_##opt(uint8_t *dst, ptrdiff_t dsts
src2 + step1 , height , mx , my , width ) ; \
}
# define mc_rep_funcs(name, bitd, step, W, opt) \
mc_rep_func ( name , bitd , step , W , opt ) ; \
mc_rep_uni_func ( name , bitd , step , W , opt ) ; \
mc_rep_bi_func ( name , bitd , step , W , opt )
# define mc_rep_funcs2(name, bitd, step1, step2, W, opt) \
mc_rep_func2 ( name , bitd , step1 , step2 , W , opt ) ; \
mc_rep_uni_func2 ( name , bitd , step1 , step2 , W , opt ) ; \
mc_rep_func2 ( name , bitd , step1 , step2 , W , opt ) \
mc_rep_uni_func2 ( name , bitd , step1 , step2 , W , opt ) \
mc_rep_bi_func2 ( name , bitd , step1 , step2 , W , opt )
# if ARCH_X86_64 && HAVE_SSE4_EXTERNAL
@ -196,9 +191,9 @@ void ff_hevc_put_hevc_uni_##name##width1##_10_##opt1(uint8_t *dst, ptrdiff_t dst
height , mx , my , width ) ; \
}
# define mc_rep_mixs_10(name, width1, width2, width3, opt1, opt2, width4) \
mc_rep_mix_10 ( name , width1 , width2 , width3 , opt1 , opt2 , width4 ) ; \
mc_bi_rep_mix_10 ( name , width1 , width2 , width3 , opt1 , opt2 , width4 ) ; \
# define mc_rep_mixs_10(name, width1, width2, width3, opt1, opt2, width4) \
mc_rep_mix_10 ( name , width1 , width2 , width3 , opt1 , opt2 , width4 ) \
mc_bi_rep_mix_10 ( name , width1 , width2 , width3 , opt1 , opt2 , width4 ) \
mc_uni_rep_mix_10 ( name , width1 , width2 , width3 , opt1 , opt2 , width4 )
# define mc_rep_mix_8(name, width1, width2, width3, opt1, opt2) \
@ -232,199 +227,199 @@ void ff_hevc_put_hevc_uni_##name##width1##_8_##opt1(uint8_t *dst, ptrdiff_t dsts
height , mx , my , width ) ; \
}
# define mc_rep_mixs_8(name, width1, width2, width3, opt1, opt2) \
mc_rep_mix_8 ( name , width1 , width2 , width3 , opt1 , opt2 ) ; \
mc_bi_rep_mix_8 ( name , width1 , width2 , width3 , opt1 , opt2 ) ; \
# define mc_rep_mixs_8(name, width1, width2, width3, opt1, opt2) \
mc_rep_mix_8 ( name , width1 , width2 , width3 , opt1 , opt2 ) \
mc_bi_rep_mix_8 ( name , width1 , width2 , width3 , opt1 , opt2 ) \
mc_uni_rep_mix_8 ( name , width1 , width2 , width3 , opt1 , opt2 )
# if HAVE_AVX2_EXTERNAL
mc_rep_mixs_8 ( pel_pixels , 48 , 32 , 16 , avx2 , sse4 ) ;
mc_rep_mixs_8 ( epel_hv , 48 , 32 , 16 , avx2 , sse4 ) ;
mc_rep_mixs_8 ( epel_h , 48 , 32 , 16 , avx2 , sse4 ) ;
mc_rep_mixs_8 ( epel_v , 48 , 32 , 16 , avx2 , sse4 ) ;
mc_rep_mixs_8 ( pel_pixels , 48 , 32 , 16 , avx2 , sse4 )
mc_rep_mixs_8 ( epel_hv , 48 , 32 , 16 , avx2 , sse4 )
mc_rep_mixs_8 ( epel_h , 48 , 32 , 16 , avx2 , sse4 )
mc_rep_mixs_8 ( epel_v , 48 , 32 , 16 , avx2 , sse4 )
mc_rep_mix_10 ( pel_pixels , 24 , 16 , 8 , avx2 , sse4 , 32 ) ;
mc_bi_rep_mix_10 ( pel_pixels , 24 , 16 , 8 , avx2 , sse4 , 32 ) ;
mc_rep_mixs_10 ( epel_hv , 24 , 16 , 8 , avx2 , sse4 , 32 ) ;
mc_rep_mixs_10 ( epel_h , 24 , 16 , 8 , avx2 , sse4 , 32 ) ;
mc_rep_mixs_10 ( epel_v , 24 , 16 , 8 , avx2 , sse4 , 32 ) ;
mc_rep_mix_10 ( pel_pixels , 24 , 16 , 8 , avx2 , sse4 , 32 )
mc_bi_rep_mix_10 ( pel_pixels , 24 , 16 , 8 , avx2 , sse4 , 32 )
mc_rep_mixs_10 ( epel_hv , 24 , 16 , 8 , avx2 , sse4 , 32 )
mc_rep_mixs_10 ( epel_h , 24 , 16 , 8 , avx2 , sse4 , 32 )
mc_rep_mixs_10 ( epel_v , 24 , 16 , 8 , avx2 , sse4 , 32 )
mc_rep_mixs_10 ( qpel_h , 24 , 16 , 8 , avx2 , sse4 , 32 ) ;
mc_rep_mixs_10 ( qpel_v , 24 , 16 , 8 , avx2 , sse4 , 32 ) ;
mc_rep_mixs_10 ( qpel_hv , 24 , 16 , 8 , avx2 , sse4 , 32 ) ;
mc_rep_mixs_10 ( qpel_h , 24 , 16 , 8 , avx2 , sse4 , 32 )
mc_rep_mixs_10 ( qpel_v , 24 , 16 , 8 , avx2 , sse4 , 32 )
mc_rep_mixs_10 ( qpel_hv , 24 , 16 , 8 , avx2 , sse4 , 32 )
mc_rep_uni_func ( pel_pixels , 8 , 64 , 128 , avx2 ) ; //used for 10bit
mc_rep_uni_func ( pel_pixels , 8 , 32 , 96 , avx2 ) ; //used for 10bit
mc_rep_uni_func ( pel_pixels , 8 , 64 , 128 , avx2 ) //used for 10bit
mc_rep_uni_func ( pel_pixels , 8 , 32 , 96 , avx2 ) //used for 10bit
mc_rep_funcs ( pel_pixels , 8 , 32 , 64 , avx2 ) ;
mc_rep_funcs ( pel_pixels , 8 , 32 , 64 , avx2 )
mc_rep_func ( pel_pixels , 10 , 16 , 32 , avx2 ) ;
mc_rep_func ( pel_pixels , 10 , 16 , 48 , avx2 ) ;
mc_rep_func ( pel_pixels , 10 , 32 , 64 , avx2 ) ;
mc_rep_func ( pel_pixels , 10 , 16 , 32 , avx2 )
mc_rep_func ( pel_pixels , 10 , 16 , 48 , avx2 )
mc_rep_func ( pel_pixels , 10 , 32 , 64 , avx2 )
mc_rep_bi_func ( pel_pixels , 10 , 16 , 32 , avx2 ) ;
mc_rep_bi_func ( pel_pixels , 10 , 16 , 48 , avx2 ) ;
mc_rep_bi_func ( pel_pixels , 10 , 32 , 64 , avx2 ) ;
mc_rep_bi_func ( pel_pixels , 10 , 16 , 32 , avx2 )
mc_rep_bi_func ( pel_pixels , 10 , 16 , 48 , avx2 )
mc_rep_bi_func ( pel_pixels , 10 , 32 , 64 , avx2 )
mc_rep_funcs ( epel_h , 8 , 32 , 64 , avx2 ) ;
mc_rep_funcs ( epel_h , 8 , 32 , 64 , avx2 )
mc_rep_funcs ( epel_v , 8 , 32 , 64 , avx2 ) ;
mc_rep_funcs ( epel_v , 8 , 32 , 64 , avx2 )
mc_rep_funcs ( epel_h , 10 , 16 , 32 , avx2 ) ;
mc_rep_funcs ( epel_h , 10 , 16 , 48 , avx2 ) ;
mc_rep_funcs ( epel_h , 10 , 32 , 64 , avx2 ) ;
mc_rep_funcs ( epel_h , 10 , 16 , 32 , avx2 )
mc_rep_funcs ( epel_h , 10 , 16 , 48 , avx2 )
mc_rep_funcs ( epel_h , 10 , 32 , 64 , avx2 )
mc_rep_funcs ( epel_v , 10 , 16 , 32 , avx2 ) ;
mc_rep_funcs ( epel_v , 10 , 16 , 48 , avx2 ) ;
mc_rep_funcs ( epel_v , 10 , 32 , 64 , avx2 ) ;
mc_rep_funcs ( epel_v , 10 , 16 , 32 , avx2 )
mc_rep_funcs ( epel_v , 10 , 16 , 48 , avx2 )
mc_rep_funcs ( epel_v , 10 , 32 , 64 , avx2 )
mc_rep_funcs ( epel_hv , 8 , 32 , 64 , avx2 ) ;
mc_rep_funcs ( epel_hv , 8 , 32 , 64 , avx2 )
mc_rep_funcs ( epel_hv , 10 , 16 , 32 , avx2 ) ;
mc_rep_funcs ( epel_hv , 10 , 16 , 48 , avx2 ) ;
mc_rep_funcs ( epel_hv , 10 , 32 , 64 , avx2 ) ;
mc_rep_funcs ( epel_hv , 10 , 16 , 32 , avx2 )
mc_rep_funcs ( epel_hv , 10 , 16 , 48 , avx2 )
mc_rep_funcs ( epel_hv , 10 , 32 , 64 , avx2 )
mc_rep_funcs ( qpel_h , 8 , 32 , 64 , avx2 ) ;
mc_rep_mixs_8 ( qpel_h , 48 , 32 , 16 , avx2 , sse4 ) ;
mc_rep_funcs ( qpel_h , 8 , 32 , 64 , avx2 )
mc_rep_mixs_8 ( qpel_h , 48 , 32 , 16 , avx2 , sse4 )
mc_rep_funcs ( qpel_v , 8 , 32 , 64 , avx2 ) ;
mc_rep_mixs_8 ( qpel_v , 48 , 32 , 16 , avx2 , sse4 ) ;
mc_rep_funcs ( qpel_v , 8 , 32 , 64 , avx2 )
mc_rep_mixs_8 ( qpel_v , 48 , 32 , 16 , avx2 , sse4 )
mc_rep_funcs ( qpel_h , 10 , 16 , 32 , avx2 ) ;
mc_rep_funcs ( qpel_h , 10 , 16 , 48 , avx2 ) ;
mc_rep_funcs ( qpel_h , 10 , 32 , 64 , avx2 ) ;
mc_rep_funcs ( qpel_h , 10 , 16 , 32 , avx2 )
mc_rep_funcs ( qpel_h , 10 , 16 , 48 , avx2 )
mc_rep_funcs ( qpel_h , 10 , 32 , 64 , avx2 )
mc_rep_funcs ( qpel_v , 10 , 16 , 32 , avx2 ) ;
mc_rep_funcs ( qpel_v , 10 , 16 , 48 , avx2 ) ;
mc_rep_funcs ( qpel_v , 10 , 32 , 64 , avx2 ) ;
mc_rep_funcs ( qpel_v , 10 , 16 , 32 , avx2 )
mc_rep_funcs ( qpel_v , 10 , 16 , 48 , avx2 )
mc_rep_funcs ( qpel_v , 10 , 32 , 64 , avx2 )
mc_rep_funcs ( qpel_hv , 10 , 16 , 32 , avx2 ) ;
mc_rep_funcs ( qpel_hv , 10 , 16 , 48 , avx2 ) ;
mc_rep_funcs ( qpel_hv , 10 , 32 , 64 , avx2 ) ;
mc_rep_funcs ( qpel_hv , 10 , 16 , 32 , avx2 )
mc_rep_funcs ( qpel_hv , 10 , 16 , 48 , avx2 )
mc_rep_funcs ( qpel_hv , 10 , 32 , 64 , avx2 )
# endif //AVX2
mc_rep_funcs ( pel_pixels , 8 , 16 , 64 , sse4 ) ;
mc_rep_funcs ( pel_pixels , 8 , 16 , 48 , sse4 ) ;
mc_rep_funcs ( pel_pixels , 8 , 16 , 32 , sse4 ) ;
mc_rep_funcs ( pel_pixels , 8 , 8 , 24 , sse4 ) ;
mc_rep_funcs ( pel_pixels , 10 , 8 , 64 , sse4 ) ;
mc_rep_funcs ( pel_pixels , 10 , 8 , 48 , sse4 ) ;
mc_rep_funcs ( pel_pixels , 10 , 8 , 32 , sse4 ) ;
mc_rep_funcs ( pel_pixels , 10 , 8 , 24 , sse4 ) ;
mc_rep_funcs ( pel_pixels , 10 , 8 , 16 , sse4 ) ;
mc_rep_funcs ( pel_pixels , 10 , 4 , 12 , sse4 ) ;
mc_rep_funcs ( pel_pixels , 12 , 8 , 64 , sse4 ) ;
mc_rep_funcs ( pel_pixels , 12 , 8 , 48 , sse4 ) ;
mc_rep_funcs ( pel_pixels , 12 , 8 , 32 , sse4 ) ;
mc_rep_funcs ( pel_pixels , 12 , 8 , 24 , sse4 ) ;
mc_rep_funcs ( pel_pixels , 12 , 8 , 16 , sse4 ) ;
mc_rep_funcs ( pel_pixels , 12 , 4 , 12 , sse4 ) ;
mc_rep_funcs ( epel_h , 8 , 16 , 64 , sse4 ) ;
mc_rep_funcs ( epel_h , 8 , 16 , 48 , sse4 ) ;
mc_rep_funcs ( epel_h , 8 , 16 , 32 , sse4 ) ;
mc_rep_funcs ( epel_h , 8 , 8 , 24 , sse4 ) ;
mc_rep_funcs ( epel_h , 10 , 8 , 64 , sse4 ) ;
mc_rep_funcs ( epel_h , 10 , 8 , 48 , sse4 ) ;
mc_rep_funcs ( epel_h , 10 , 8 , 32 , sse4 ) ;
mc_rep_funcs ( epel_h , 10 , 8 , 24 , sse4 ) ;
mc_rep_funcs ( epel_h , 10 , 8 , 16 , sse4 ) ;
mc_rep_funcs ( epel_h , 10 , 4 , 12 , sse4 ) ;
mc_rep_funcs ( epel_h , 12 , 8 , 64 , sse4 ) ;
mc_rep_funcs ( epel_h , 12 , 8 , 48 , sse4 ) ;
mc_rep_funcs ( epel_h , 12 , 8 , 32 , sse4 ) ;
mc_rep_funcs ( epel_h , 12 , 8 , 24 , sse4 ) ;
mc_rep_funcs ( epel_h , 12 , 8 , 16 , sse4 ) ;
mc_rep_funcs ( epel_h , 12 , 4 , 12 , sse4 ) ;
mc_rep_funcs ( epel_v , 8 , 16 , 64 , sse4 ) ;
mc_rep_funcs ( epel_v , 8 , 16 , 48 , sse4 ) ;
mc_rep_funcs ( epel_v , 8 , 16 , 32 , sse4 ) ;
mc_rep_funcs ( epel_v , 8 , 8 , 24 , sse4 ) ;
mc_rep_funcs ( epel_v , 10 , 8 , 64 , sse4 ) ;
mc_rep_funcs ( epel_v , 10 , 8 , 48 , sse4 ) ;
mc_rep_funcs ( epel_v , 10 , 8 , 32 , sse4 ) ;
mc_rep_funcs ( epel_v , 10 , 8 , 24 , sse4 ) ;
mc_rep_funcs ( epel_v , 10 , 8 , 16 , sse4 ) ;
mc_rep_funcs ( epel_v , 10 , 4 , 12 , sse4 ) ;
mc_rep_funcs ( epel_v , 12 , 8 , 64 , sse4 ) ;
mc_rep_funcs ( epel_v , 12 , 8 , 48 , sse4 ) ;
mc_rep_funcs ( epel_v , 12 , 8 , 32 , sse4 ) ;
mc_rep_funcs ( epel_v , 12 , 8 , 24 , sse4 ) ;
mc_rep_funcs ( epel_v , 12 , 8 , 16 , sse4 ) ;
mc_rep_funcs ( epel_v , 12 , 4 , 12 , sse4 ) ;
mc_rep_funcs ( epel_hv , 8 , 16 , 64 , sse4 ) ;
mc_rep_funcs ( epel_hv , 8 , 16 , 48 , sse4 ) ;
mc_rep_funcs ( epel_hv , 8 , 16 , 32 , sse4 ) ;
mc_rep_funcs ( epel_hv , 8 , 8 , 24 , sse4 ) ;
mc_rep_funcs2 ( epel_hv , 8 , 8 , 4 , 12 , sse4 ) ;
mc_rep_funcs ( epel_hv , 10 , 8 , 64 , sse4 ) ;
mc_rep_funcs ( epel_hv , 10 , 8 , 48 , sse4 ) ;
mc_rep_funcs ( epel_hv , 10 , 8 , 32 , sse4 ) ;
mc_rep_funcs ( epel_hv , 10 , 8 , 24 , sse4 ) ;
mc_rep_funcs ( epel_hv , 10 , 8 , 16 , sse4 ) ;
mc_rep_funcs ( epel_hv , 10 , 4 , 12 , sse4 ) ;
mc_rep_funcs ( epel_hv , 12 , 8 , 64 , sse4 ) ;
mc_rep_funcs ( epel_hv , 12 , 8 , 48 , sse4 ) ;
mc_rep_funcs ( epel_hv , 12 , 8 , 32 , sse4 ) ;
mc_rep_funcs ( epel_hv , 12 , 8 , 24 , sse4 ) ;
mc_rep_funcs ( epel_hv , 12 , 8 , 16 , sse4 ) ;
mc_rep_funcs ( epel_hv , 12 , 4 , 12 , sse4 ) ;
mc_rep_funcs ( qpel_h , 8 , 16 , 64 , sse4 ) ;
mc_rep_funcs ( qpel_h , 8 , 16 , 48 , sse4 ) ;
mc_rep_funcs ( qpel_h , 8 , 16 , 32 , sse4 ) ;
mc_rep_funcs ( qpel_h , 8 , 8 , 24 , sse4 ) ;
mc_rep_funcs ( qpel_h , 10 , 8 , 64 , sse4 ) ;
mc_rep_funcs ( qpel_h , 10 , 8 , 48 , sse4 ) ;
mc_rep_funcs ( qpel_h , 10 , 8 , 32 , sse4 ) ;
mc_rep_funcs ( qpel_h , 10 , 8 , 24 , sse4 ) ;
mc_rep_funcs ( qpel_h , 10 , 8 , 16 , sse4 ) ;
mc_rep_funcs ( qpel_h , 10 , 4 , 12 , sse4 ) ;
mc_rep_funcs ( qpel_h , 12 , 8 , 64 , sse4 ) ;
mc_rep_funcs ( qpel_h , 12 , 8 , 48 , sse4 ) ;
mc_rep_funcs ( qpel_h , 12 , 8 , 32 , sse4 ) ;
mc_rep_funcs ( qpel_h , 12 , 8 , 24 , sse4 ) ;
mc_rep_funcs ( qpel_h , 12 , 8 , 16 , sse4 ) ;
mc_rep_funcs ( qpel_h , 12 , 4 , 12 , sse4 ) ;
mc_rep_funcs ( qpel_v , 8 , 16 , 64 , sse4 ) ;
mc_rep_funcs ( qpel_v , 8 , 16 , 48 , sse4 ) ;
mc_rep_funcs ( qpel_v , 8 , 16 , 32 , sse4 ) ;
mc_rep_funcs ( qpel_v , 8 , 8 , 24 , sse4 ) ;
mc_rep_funcs ( qpel_v , 10 , 8 , 64 , sse4 ) ;
mc_rep_funcs ( qpel_v , 10 , 8 , 48 , sse4 ) ;
mc_rep_funcs ( qpel_v , 10 , 8 , 32 , sse4 ) ;
mc_rep_funcs ( qpel_v , 10 , 8 , 24 , sse4 ) ;
mc_rep_funcs ( qpel_v , 10 , 8 , 16 , sse4 ) ;
mc_rep_funcs ( qpel_v , 10 , 4 , 12 , sse4 ) ;
mc_rep_funcs ( qpel_v , 12 , 8 , 64 , sse4 ) ;
mc_rep_funcs ( qpel_v , 12 , 8 , 48 , sse4 ) ;
mc_rep_funcs ( qpel_v , 12 , 8 , 32 , sse4 ) ;
mc_rep_funcs ( qpel_v , 12 , 8 , 24 , sse4 ) ;
mc_rep_funcs ( qpel_v , 12 , 8 , 16 , sse4 ) ;
mc_rep_funcs ( qpel_v , 12 , 4 , 12 , sse4 ) ;
mc_rep_funcs ( qpel_hv , 8 , 8 , 64 , sse4 ) ;
mc_rep_funcs ( qpel_hv , 8 , 8 , 48 , sse4 ) ;
mc_rep_funcs ( qpel_hv , 8 , 8 , 32 , sse4 ) ;
mc_rep_funcs ( qpel_hv , 8 , 8 , 24 , sse4 ) ;
mc_rep_funcs ( qpel_hv , 8 , 8 , 16 , sse4 ) ;
mc_rep_funcs2 ( qpel_hv , 8 , 8 , 4 , 12 , sse4 ) ;
mc_rep_funcs ( qpel_hv , 10 , 8 , 64 , sse4 ) ;
mc_rep_funcs ( qpel_hv , 10 , 8 , 48 , sse4 ) ;
mc_rep_funcs ( qpel_hv , 10 , 8 , 32 , sse4 ) ;
mc_rep_funcs ( qpel_hv , 10 , 8 , 24 , sse4 ) ;
mc_rep_funcs ( qpel_hv , 10 , 8 , 16 , sse4 ) ;
mc_rep_funcs ( qpel_hv , 10 , 4 , 12 , sse4 ) ;
mc_rep_funcs ( qpel_hv , 12 , 8 , 64 , sse4 ) ;
mc_rep_funcs ( qpel_hv , 12 , 8 , 48 , sse4 ) ;
mc_rep_funcs ( qpel_hv , 12 , 8 , 32 , sse4 ) ;
mc_rep_funcs ( qpel_hv , 12 , 8 , 24 , sse4 ) ;
mc_rep_funcs ( qpel_hv , 12 , 8 , 16 , sse4 ) ;
mc_rep_funcs ( qpel_hv , 12 , 4 , 12 , sse4 ) ;
mc_rep_funcs ( pel_pixels , 8 , 16 , 64 , sse4 )
mc_rep_funcs ( pel_pixels , 8 , 16 , 48 , sse4 )
mc_rep_funcs ( pel_pixels , 8 , 16 , 32 , sse4 )
mc_rep_funcs ( pel_pixels , 8 , 8 , 24 , sse4 )
mc_rep_funcs ( pel_pixels , 10 , 8 , 64 , sse4 )
mc_rep_funcs ( pel_pixels , 10 , 8 , 48 , sse4 )
mc_rep_funcs ( pel_pixels , 10 , 8 , 32 , sse4 )
mc_rep_funcs ( pel_pixels , 10 , 8 , 24 , sse4 )
mc_rep_funcs ( pel_pixels , 10 , 8 , 16 , sse4 )
mc_rep_funcs ( pel_pixels , 10 , 4 , 12 , sse4 )
mc_rep_funcs ( pel_pixels , 12 , 8 , 64 , sse4 )
mc_rep_funcs ( pel_pixels , 12 , 8 , 48 , sse4 )
mc_rep_funcs ( pel_pixels , 12 , 8 , 32 , sse4 )
mc_rep_funcs ( pel_pixels , 12 , 8 , 24 , sse4 )
mc_rep_funcs ( pel_pixels , 12 , 8 , 16 , sse4 )
mc_rep_funcs ( pel_pixels , 12 , 4 , 12 , sse4 )
mc_rep_funcs ( epel_h , 8 , 16 , 64 , sse4 )
mc_rep_funcs ( epel_h , 8 , 16 , 48 , sse4 )
mc_rep_funcs ( epel_h , 8 , 16 , 32 , sse4 )
mc_rep_funcs ( epel_h , 8 , 8 , 24 , sse4 )
mc_rep_funcs ( epel_h , 10 , 8 , 64 , sse4 )
mc_rep_funcs ( epel_h , 10 , 8 , 48 , sse4 )
mc_rep_funcs ( epel_h , 10 , 8 , 32 , sse4 )
mc_rep_funcs ( epel_h , 10 , 8 , 24 , sse4 )
mc_rep_funcs ( epel_h , 10 , 8 , 16 , sse4 )
mc_rep_funcs ( epel_h , 10 , 4 , 12 , sse4 )
mc_rep_funcs ( epel_h , 12 , 8 , 64 , sse4 )
mc_rep_funcs ( epel_h , 12 , 8 , 48 , sse4 )
mc_rep_funcs ( epel_h , 12 , 8 , 32 , sse4 )
mc_rep_funcs ( epel_h , 12 , 8 , 24 , sse4 )
mc_rep_funcs ( epel_h , 12 , 8 , 16 , sse4 )
mc_rep_funcs ( epel_h , 12 , 4 , 12 , sse4 )
mc_rep_funcs ( epel_v , 8 , 16 , 64 , sse4 )
mc_rep_funcs ( epel_v , 8 , 16 , 48 , sse4 )
mc_rep_funcs ( epel_v , 8 , 16 , 32 , sse4 )
mc_rep_funcs ( epel_v , 8 , 8 , 24 , sse4 )
mc_rep_funcs ( epel_v , 10 , 8 , 64 , sse4 )
mc_rep_funcs ( epel_v , 10 , 8 , 48 , sse4 )
mc_rep_funcs ( epel_v , 10 , 8 , 32 , sse4 )
mc_rep_funcs ( epel_v , 10 , 8 , 24 , sse4 )
mc_rep_funcs ( epel_v , 10 , 8 , 16 , sse4 )
mc_rep_funcs ( epel_v , 10 , 4 , 12 , sse4 )
mc_rep_funcs ( epel_v , 12 , 8 , 64 , sse4 )
mc_rep_funcs ( epel_v , 12 , 8 , 48 , sse4 )
mc_rep_funcs ( epel_v , 12 , 8 , 32 , sse4 )
mc_rep_funcs ( epel_v , 12 , 8 , 24 , sse4 )
mc_rep_funcs ( epel_v , 12 , 8 , 16 , sse4 )
mc_rep_funcs ( epel_v , 12 , 4 , 12 , sse4 )
mc_rep_funcs ( epel_hv , 8 , 16 , 64 , sse4 )
mc_rep_funcs ( epel_hv , 8 , 16 , 48 , sse4 )
mc_rep_funcs ( epel_hv , 8 , 16 , 32 , sse4 )
mc_rep_funcs ( epel_hv , 8 , 8 , 24 , sse4 )
mc_rep_funcs2 ( epel_hv , 8 , 8 , 4 , 12 , sse4 )
mc_rep_funcs ( epel_hv , 10 , 8 , 64 , sse4 )
mc_rep_funcs ( epel_hv , 10 , 8 , 48 , sse4 )
mc_rep_funcs ( epel_hv , 10 , 8 , 32 , sse4 )
mc_rep_funcs ( epel_hv , 10 , 8 , 24 , sse4 )
mc_rep_funcs ( epel_hv , 10 , 8 , 16 , sse4 )
mc_rep_funcs ( epel_hv , 10 , 4 , 12 , sse4 )
mc_rep_funcs ( epel_hv , 12 , 8 , 64 , sse4 )
mc_rep_funcs ( epel_hv , 12 , 8 , 48 , sse4 )
mc_rep_funcs ( epel_hv , 12 , 8 , 32 , sse4 )
mc_rep_funcs ( epel_hv , 12 , 8 , 24 , sse4 )
mc_rep_funcs ( epel_hv , 12 , 8 , 16 , sse4 )
mc_rep_funcs ( epel_hv , 12 , 4 , 12 , sse4 )
mc_rep_funcs ( qpel_h , 8 , 16 , 64 , sse4 )
mc_rep_funcs ( qpel_h , 8 , 16 , 48 , sse4 )
mc_rep_funcs ( qpel_h , 8 , 16 , 32 , sse4 )
mc_rep_funcs ( qpel_h , 8 , 8 , 24 , sse4 )
mc_rep_funcs ( qpel_h , 10 , 8 , 64 , sse4 )
mc_rep_funcs ( qpel_h , 10 , 8 , 48 , sse4 )
mc_rep_funcs ( qpel_h , 10 , 8 , 32 , sse4 )
mc_rep_funcs ( qpel_h , 10 , 8 , 24 , sse4 )
mc_rep_funcs ( qpel_h , 10 , 8 , 16 , sse4 )
mc_rep_funcs ( qpel_h , 10 , 4 , 12 , sse4 )
mc_rep_funcs ( qpel_h , 12 , 8 , 64 , sse4 )
mc_rep_funcs ( qpel_h , 12 , 8 , 48 , sse4 )
mc_rep_funcs ( qpel_h , 12 , 8 , 32 , sse4 )
mc_rep_funcs ( qpel_h , 12 , 8 , 24 , sse4 )
mc_rep_funcs ( qpel_h , 12 , 8 , 16 , sse4 )
mc_rep_funcs ( qpel_h , 12 , 4 , 12 , sse4 )
mc_rep_funcs ( qpel_v , 8 , 16 , 64 , sse4 )
mc_rep_funcs ( qpel_v , 8 , 16 , 48 , sse4 )
mc_rep_funcs ( qpel_v , 8 , 16 , 32 , sse4 )
mc_rep_funcs ( qpel_v , 8 , 8 , 24 , sse4 )
mc_rep_funcs ( qpel_v , 10 , 8 , 64 , sse4 )
mc_rep_funcs ( qpel_v , 10 , 8 , 48 , sse4 )
mc_rep_funcs ( qpel_v , 10 , 8 , 32 , sse4 )
mc_rep_funcs ( qpel_v , 10 , 8 , 24 , sse4 )
mc_rep_funcs ( qpel_v , 10 , 8 , 16 , sse4 )
mc_rep_funcs ( qpel_v , 10 , 4 , 12 , sse4 )
mc_rep_funcs ( qpel_v , 12 , 8 , 64 , sse4 )
mc_rep_funcs ( qpel_v , 12 , 8 , 48 , sse4 )
mc_rep_funcs ( qpel_v , 12 , 8 , 32 , sse4 )
mc_rep_funcs ( qpel_v , 12 , 8 , 24 , sse4 )
mc_rep_funcs ( qpel_v , 12 , 8 , 16 , sse4 )
mc_rep_funcs ( qpel_v , 12 , 4 , 12 , sse4 )
mc_rep_funcs ( qpel_hv , 8 , 8 , 64 , sse4 )
mc_rep_funcs ( qpel_hv , 8 , 8 , 48 , sse4 )
mc_rep_funcs ( qpel_hv , 8 , 8 , 32 , sse4 )
mc_rep_funcs ( qpel_hv , 8 , 8 , 24 , sse4 )
mc_rep_funcs ( qpel_hv , 8 , 8 , 16 , sse4 )
mc_rep_funcs2 ( qpel_hv , 8 , 8 , 4 , 12 , sse4 )
mc_rep_funcs ( qpel_hv , 10 , 8 , 64 , sse4 )
mc_rep_funcs ( qpel_hv , 10 , 8 , 48 , sse4 )
mc_rep_funcs ( qpel_hv , 10 , 8 , 32 , sse4 )
mc_rep_funcs ( qpel_hv , 10 , 8 , 24 , sse4 )
mc_rep_funcs ( qpel_hv , 10 , 8 , 16 , sse4 )
mc_rep_funcs ( qpel_hv , 10 , 4 , 12 , sse4 )
mc_rep_funcs ( qpel_hv , 12 , 8 , 64 , sse4 )
mc_rep_funcs ( qpel_hv , 12 , 8 , 48 , sse4 )
mc_rep_funcs ( qpel_hv , 12 , 8 , 32 , sse4 )
mc_rep_funcs ( qpel_hv , 12 , 8 , 24 , sse4 )
mc_rep_funcs ( qpel_hv , 12 , 8 , 16 , sse4 )
mc_rep_funcs ( qpel_hv , 12 , 4 , 12 , sse4 )
# define mc_rep_uni_w(bitd, step, W, opt) \
void ff_hevc_put_hevc_uni_w # # W # # _ # # bitd # # _ # # opt ( uint8_t * _dst , ptrdiff_t dststride , int16_t * _src , \
@ -441,26 +436,26 @@ void ff_hevc_put_hevc_uni_w##W##_##bitd##_##opt(uint8_t *_dst, ptrdiff_t dststri
} \
}
mc_rep_uni_w ( 8 , 6 , 12 , sse4 ) ;
mc_rep_uni_w ( 8 , 8 , 16 , sse4 ) ;
mc_rep_uni_w ( 8 , 8 , 24 , sse4 ) ;
mc_rep_uni_w ( 8 , 8 , 32 , sse4 ) ;
mc_rep_uni_w ( 8 , 8 , 48 , sse4 ) ;
mc_rep_uni_w ( 8 , 8 , 64 , sse4 ) ;
mc_rep_uni_w ( 10 , 6 , 12 , sse4 ) ;
mc_rep_uni_w ( 10 , 8 , 16 , sse4 ) ;
mc_rep_uni_w ( 10 , 8 , 24 , sse4 ) ;
mc_rep_uni_w ( 10 , 8 , 32 , sse4 ) ;
mc_rep_uni_w ( 10 , 8 , 48 , sse4 ) ;
mc_rep_uni_w ( 10 , 8 , 64 , sse4 ) ;
mc_rep_uni_w ( 12 , 6 , 12 , sse4 ) ;
mc_rep_uni_w ( 12 , 8 , 16 , sse4 ) ;
mc_rep_uni_w ( 12 , 8 , 24 , sse4 ) ;
mc_rep_uni_w ( 12 , 8 , 32 , sse4 ) ;
mc_rep_uni_w ( 12 , 8 , 48 , sse4 ) ;
mc_rep_uni_w ( 12 , 8 , 64 , sse4 ) ;
mc_rep_uni_w ( 8 , 6 , 12 , sse4 )
mc_rep_uni_w ( 8 , 8 , 16 , sse4 )
mc_rep_uni_w ( 8 , 8 , 24 , sse4 )
mc_rep_uni_w ( 8 , 8 , 32 , sse4 )
mc_rep_uni_w ( 8 , 8 , 48 , sse4 )
mc_rep_uni_w ( 8 , 8 , 64 , sse4 )
mc_rep_uni_w ( 10 , 6 , 12 , sse4 )
mc_rep_uni_w ( 10 , 8 , 16 , sse4 )
mc_rep_uni_w ( 10 , 8 , 24 , sse4 )
mc_rep_uni_w ( 10 , 8 , 32 , sse4 )
mc_rep_uni_w ( 10 , 8 , 48 , sse4 )
mc_rep_uni_w ( 10 , 8 , 64 , sse4 )
mc_rep_uni_w ( 12 , 6 , 12 , sse4 )
mc_rep_uni_w ( 12 , 8 , 16 , sse4 )
mc_rep_uni_w ( 12 , 8 , 24 , sse4 )
mc_rep_uni_w ( 12 , 8 , 32 , sse4 )
mc_rep_uni_w ( 12 , 8 , 48 , sse4 )
mc_rep_uni_w ( 12 , 8 , 64 , sse4 )
# define mc_rep_bi_w(bitd, step, W, opt) \
void ff_hevc_put_hevc_bi_w # # W # # _ # # bitd # # _ # # opt ( uint8_t * _dst , ptrdiff_t dststride , int16_t * _src , \
@ -480,26 +475,26 @@ void ff_hevc_put_hevc_bi_w##W##_##bitd##_##opt(uint8_t *_dst, ptrdiff_t dststrid
} \
}
mc_rep_bi_w ( 8 , 6 , 12 , sse4 ) ;
mc_rep_bi_w ( 8 , 8 , 16 , sse4 ) ;
mc_rep_bi_w ( 8 , 8 , 24 , sse4 ) ;
mc_rep_bi_w ( 8 , 8 , 32 , sse4 ) ;
mc_rep_bi_w ( 8 , 8 , 48 , sse4 ) ;
mc_rep_bi_w ( 8 , 8 , 64 , sse4 ) ;
mc_rep_bi_w ( 10 , 6 , 12 , sse4 ) ;
mc_rep_bi_w ( 10 , 8 , 16 , sse4 ) ;
mc_rep_bi_w ( 10 , 8 , 24 , sse4 ) ;
mc_rep_bi_w ( 10 , 8 , 32 , sse4 ) ;
mc_rep_bi_w ( 10 , 8 , 48 , sse4 ) ;
mc_rep_bi_w ( 10 , 8 , 64 , sse4 ) ;
mc_rep_bi_w ( 12 , 6 , 12 , sse4 ) ;
mc_rep_bi_w ( 12 , 8 , 16 , sse4 ) ;
mc_rep_bi_w ( 12 , 8 , 24 , sse4 ) ;
mc_rep_bi_w ( 12 , 8 , 32 , sse4 ) ;
mc_rep_bi_w ( 12 , 8 , 48 , sse4 ) ;
mc_rep_bi_w ( 12 , 8 , 64 , sse4 ) ;
mc_rep_bi_w ( 8 , 6 , 12 , sse4 )
mc_rep_bi_w ( 8 , 8 , 16 , sse4 )
mc_rep_bi_w ( 8 , 8 , 24 , sse4 )
mc_rep_bi_w ( 8 , 8 , 32 , sse4 )
mc_rep_bi_w ( 8 , 8 , 48 , sse4 )
mc_rep_bi_w ( 8 , 8 , 64 , sse4 )
mc_rep_bi_w ( 10 , 6 , 12 , sse4 )
mc_rep_bi_w ( 10 , 8 , 16 , sse4 )
mc_rep_bi_w ( 10 , 8 , 24 , sse4 )
mc_rep_bi_w ( 10 , 8 , 32 , sse4 )
mc_rep_bi_w ( 10 , 8 , 48 , sse4 )
mc_rep_bi_w ( 10 , 8 , 64 , sse4 )
mc_rep_bi_w ( 12 , 6 , 12 , sse4 )
mc_rep_bi_w ( 12 , 8 , 16 , sse4 )
mc_rep_bi_w ( 12 , 8 , 24 , sse4 )
mc_rep_bi_w ( 12 , 8 , 32 , sse4 )
mc_rep_bi_w ( 12 , 8 , 48 , sse4 )
mc_rep_bi_w ( 12 , 8 , 64 , sse4 )
# define mc_uni_w_func(name, bitd, W, opt) \
void ff_hevc_put_hevc_uni_w_ # # name # # W # # _ # # bitd # # _ # # opt ( uint8_t * _dst , ptrdiff_t _dststride , \
@ -513,51 +508,51 @@ void ff_hevc_put_hevc_uni_w_##name##W##_##bitd##_##opt(uint8_t *_dst, ptrdiff_t
ff_hevc_put_hevc_uni_w # # W # # _ # # bitd # # _ # # opt ( _dst , _dststride , temp , height , denom , _wx , _ox ) ; \
}
# define mc_uni_w_funcs(name, bitd, opt) \
mc_uni_w_func ( name , bitd , 4 , opt ) ; \
mc_uni_w_func ( name , bitd , 8 , opt ) ; \
mc_uni_w_func ( name , bitd , 12 , opt ) ; \
mc_uni_w_func ( name , bitd , 16 , opt ) ; \
mc_uni_w_func ( name , bitd , 24 , opt ) ; \
mc_uni_w_func ( name , bitd , 32 , opt ) ; \
mc_uni_w_func ( name , bitd , 48 , opt ) ; \
# define mc_uni_w_funcs(name, bitd, opt) \
mc_uni_w_func ( name , bitd , 4 , opt ) \
mc_uni_w_func ( name , bitd , 8 , opt ) \
mc_uni_w_func ( name , bitd , 12 , opt ) \
mc_uni_w_func ( name , bitd , 16 , opt ) \
mc_uni_w_func ( name , bitd , 24 , opt ) \
mc_uni_w_func ( name , bitd , 32 , opt ) \
mc_uni_w_func ( name , bitd , 48 , opt ) \
mc_uni_w_func ( name , bitd , 64 , opt )
mc_uni_w_funcs ( pel_pixels , 8 , sse4 ) ;
mc_uni_w_func ( pel_pixels , 8 , 6 , sse4 ) ;
mc_uni_w_funcs ( epel_h , 8 , sse4 ) ;
mc_uni_w_func ( epel_h , 8 , 6 , sse4 ) ;
mc_uni_w_funcs ( epel_v , 8 , sse4 ) ;
mc_uni_w_func ( epel_v , 8 , 6 , sse4 ) ;
mc_uni_w_funcs ( epel_hv , 8 , sse4 ) ;
mc_uni_w_func ( epel_hv , 8 , 6 , sse4 ) ;
mc_uni_w_funcs ( qpel_h , 8 , sse4 ) ;
mc_uni_w_funcs ( qpel_v , 8 , sse4 ) ;
mc_uni_w_funcs ( qpel_hv , 8 , sse4 ) ;
mc_uni_w_funcs ( pel_pixels , 10 , sse4 ) ;
mc_uni_w_func ( pel_pixels , 10 , 6 , sse4 ) ;
mc_uni_w_funcs ( epel_h , 10 , sse4 ) ;
mc_uni_w_func ( epel_h , 10 , 6 , sse4 ) ;
mc_uni_w_funcs ( epel_v , 10 , sse4 ) ;
mc_uni_w_func ( epel_v , 10 , 6 , sse4 ) ;
mc_uni_w_funcs ( epel_hv , 10 , sse4 ) ;
mc_uni_w_func ( epel_hv , 10 , 6 , sse4 ) ;
mc_uni_w_funcs ( qpel_h , 10 , sse4 ) ;
mc_uni_w_funcs ( qpel_v , 10 , sse4 ) ;
mc_uni_w_funcs ( qpel_hv , 10 , sse4 ) ;
mc_uni_w_funcs ( pel_pixels , 12 , sse4 ) ;
mc_uni_w_func ( pel_pixels , 12 , 6 , sse4 ) ;
mc_uni_w_funcs ( epel_h , 12 , sse4 ) ;
mc_uni_w_func ( epel_h , 12 , 6 , sse4 ) ;
mc_uni_w_funcs ( epel_v , 12 , sse4 ) ;
mc_uni_w_func ( epel_v , 12 , 6 , sse4 ) ;
mc_uni_w_funcs ( epel_hv , 12 , sse4 ) ;
mc_uni_w_func ( epel_hv , 12 , 6 , sse4 ) ;
mc_uni_w_funcs ( qpel_h , 12 , sse4 ) ;
mc_uni_w_funcs ( qpel_v , 12 , sse4 ) ;
mc_uni_w_funcs ( qpel_hv , 12 , sse4 ) ;
mc_uni_w_funcs ( pel_pixels , 8 , sse4 )
mc_uni_w_func ( pel_pixels , 8 , 6 , sse4 )
mc_uni_w_funcs ( epel_h , 8 , sse4 )
mc_uni_w_func ( epel_h , 8 , 6 , sse4 )
mc_uni_w_funcs ( epel_v , 8 , sse4 )
mc_uni_w_func ( epel_v , 8 , 6 , sse4 )
mc_uni_w_funcs ( epel_hv , 8 , sse4 )
mc_uni_w_func ( epel_hv , 8 , 6 , sse4 )
mc_uni_w_funcs ( qpel_h , 8 , sse4 )
mc_uni_w_funcs ( qpel_v , 8 , sse4 )
mc_uni_w_funcs ( qpel_hv , 8 , sse4 )
mc_uni_w_funcs ( pel_pixels , 10 , sse4 )
mc_uni_w_func ( pel_pixels , 10 , 6 , sse4 )
mc_uni_w_funcs ( epel_h , 10 , sse4 )
mc_uni_w_func ( epel_h , 10 , 6 , sse4 )
mc_uni_w_funcs ( epel_v , 10 , sse4 )
mc_uni_w_func ( epel_v , 10 , 6 , sse4 )
mc_uni_w_funcs ( epel_hv , 10 , sse4 )
mc_uni_w_func ( epel_hv , 10 , 6 , sse4 )
mc_uni_w_funcs ( qpel_h , 10 , sse4 )
mc_uni_w_funcs ( qpel_v , 10 , sse4 )
mc_uni_w_funcs ( qpel_hv , 10 , sse4 )
mc_uni_w_funcs ( pel_pixels , 12 , sse4 )
mc_uni_w_func ( pel_pixels , 12 , 6 , sse4 )
mc_uni_w_funcs ( epel_h , 12 , sse4 )
mc_uni_w_func ( epel_h , 12 , 6 , sse4 )
mc_uni_w_funcs ( epel_v , 12 , sse4 )
mc_uni_w_func ( epel_v , 12 , 6 , sse4 )
mc_uni_w_funcs ( epel_hv , 12 , sse4 )
mc_uni_w_func ( epel_hv , 12 , 6 , sse4 )
mc_uni_w_funcs ( qpel_h , 12 , sse4 )
mc_uni_w_funcs ( qpel_v , 12 , sse4 )
mc_uni_w_funcs ( qpel_hv , 12 , sse4 )
# define mc_bi_w_func(name, bitd, W, opt) \
void ff_hevc_put_hevc_bi_w_ # # name # # W # # _ # # bitd # # _ # # opt ( uint8_t * _dst , ptrdiff_t _dststride , \
@ -573,51 +568,51 @@ void ff_hevc_put_hevc_bi_w_##name##W##_##bitd##_##opt(uint8_t *_dst, ptrdiff_t _
height , denom , _wx0 , _wx1 , _ox0 , _ox1 ) ; \
}
# define mc_bi_w_funcs(name, bitd, opt) \
mc_bi_w_func ( name , bitd , 4 , opt ) ; \
mc_bi_w_func ( name , bitd , 8 , opt ) ; \
mc_bi_w_func ( name , bitd , 12 , opt ) ; \
mc_bi_w_func ( name , bitd , 16 , opt ) ; \
mc_bi_w_func ( name , bitd , 24 , opt ) ; \
mc_bi_w_func ( name , bitd , 32 , opt ) ; \
mc_bi_w_func ( name , bitd , 48 , opt ) ; \
# define mc_bi_w_funcs(name, bitd, opt) \
mc_bi_w_func ( name , bitd , 4 , opt ) \
mc_bi_w_func ( name , bitd , 8 , opt ) \
mc_bi_w_func ( name , bitd , 12 , opt ) \
mc_bi_w_func ( name , bitd , 16 , opt ) \
mc_bi_w_func ( name , bitd , 24 , opt ) \
mc_bi_w_func ( name , bitd , 32 , opt ) \
mc_bi_w_func ( name , bitd , 48 , opt ) \
mc_bi_w_func ( name , bitd , 64 , opt )
mc_bi_w_funcs ( pel_pixels , 8 , sse4 ) ;
mc_bi_w_func ( pel_pixels , 8 , 6 , sse4 ) ;
mc_bi_w_funcs ( epel_h , 8 , sse4 ) ;
mc_bi_w_func ( epel_h , 8 , 6 , sse4 ) ;
mc_bi_w_funcs ( epel_v , 8 , sse4 ) ;
mc_bi_w_func ( epel_v , 8 , 6 , sse4 ) ;
mc_bi_w_funcs ( epel_hv , 8 , sse4 ) ;
mc_bi_w_func ( epel_hv , 8 , 6 , sse4 ) ;
mc_bi_w_funcs ( qpel_h , 8 , sse4 ) ;
mc_bi_w_funcs ( qpel_v , 8 , sse4 ) ;
mc_bi_w_funcs ( qpel_hv , 8 , sse4 ) ;
mc_bi_w_funcs ( pel_pixels , 10 , sse4 ) ;
mc_bi_w_func ( pel_pixels , 10 , 6 , sse4 ) ;
mc_bi_w_funcs ( epel_h , 10 , sse4 ) ;
mc_bi_w_func ( epel_h , 10 , 6 , sse4 ) ;
mc_bi_w_funcs ( epel_v , 10 , sse4 ) ;
mc_bi_w_func ( epel_v , 10 , 6 , sse4 ) ;
mc_bi_w_funcs ( epel_hv , 10 , sse4 ) ;
mc_bi_w_func ( epel_hv , 10 , 6 , sse4 ) ;
mc_bi_w_funcs ( qpel_h , 10 , sse4 ) ;
mc_bi_w_funcs ( qpel_v , 10 , sse4 ) ;
mc_bi_w_funcs ( qpel_hv , 10 , sse4 ) ;
mc_bi_w_funcs ( pel_pixels , 12 , sse4 ) ;
mc_bi_w_func ( pel_pixels , 12 , 6 , sse4 ) ;
mc_bi_w_funcs ( epel_h , 12 , sse4 ) ;
mc_bi_w_func ( epel_h , 12 , 6 , sse4 ) ;
mc_bi_w_funcs ( epel_v , 12 , sse4 ) ;
mc_bi_w_func ( epel_v , 12 , 6 , sse4 ) ;
mc_bi_w_funcs ( epel_hv , 12 , sse4 ) ;
mc_bi_w_func ( epel_hv , 12 , 6 , sse4 ) ;
mc_bi_w_funcs ( qpel_h , 12 , sse4 ) ;
mc_bi_w_funcs ( qpel_v , 12 , sse4 ) ;
mc_bi_w_funcs ( qpel_hv , 12 , sse4 ) ;
mc_bi_w_funcs ( pel_pixels , 8 , sse4 )
mc_bi_w_func ( pel_pixels , 8 , 6 , sse4 )
mc_bi_w_funcs ( epel_h , 8 , sse4 )
mc_bi_w_func ( epel_h , 8 , 6 , sse4 )
mc_bi_w_funcs ( epel_v , 8 , sse4 )
mc_bi_w_func ( epel_v , 8 , 6 , sse4 )
mc_bi_w_funcs ( epel_hv , 8 , sse4 )
mc_bi_w_func ( epel_hv , 8 , 6 , sse4 )
mc_bi_w_funcs ( qpel_h , 8 , sse4 )
mc_bi_w_funcs ( qpel_v , 8 , sse4 )
mc_bi_w_funcs ( qpel_hv , 8 , sse4 )
mc_bi_w_funcs ( pel_pixels , 10 , sse4 )
mc_bi_w_func ( pel_pixels , 10 , 6 , sse4 )
mc_bi_w_funcs ( epel_h , 10 , sse4 )
mc_bi_w_func ( epel_h , 10 , 6 , sse4 )
mc_bi_w_funcs ( epel_v , 10 , sse4 )
mc_bi_w_func ( epel_v , 10 , 6 , sse4 )
mc_bi_w_funcs ( epel_hv , 10 , sse4 )
mc_bi_w_func ( epel_hv , 10 , 6 , sse4 )
mc_bi_w_funcs ( qpel_h , 10 , sse4 )
mc_bi_w_funcs ( qpel_v , 10 , sse4 )
mc_bi_w_funcs ( qpel_hv , 10 , sse4 )
mc_bi_w_funcs ( pel_pixels , 12 , sse4 )
mc_bi_w_func ( pel_pixels , 12 , 6 , sse4 )
mc_bi_w_funcs ( epel_h , 12 , sse4 )
mc_bi_w_func ( epel_h , 12 , 6 , sse4 )
mc_bi_w_funcs ( epel_v , 12 , sse4 )
mc_bi_w_func ( epel_v , 12 , 6 , sse4 )
mc_bi_w_funcs ( epel_hv , 12 , sse4 )
mc_bi_w_func ( epel_hv , 12 , 6 , sse4 )
mc_bi_w_funcs ( qpel_h , 12 , sse4 )
mc_bi_w_funcs ( qpel_v , 12 , sse4 )
mc_bi_w_funcs ( qpel_hv , 12 , sse4 )
# endif //ARCH_X86_64 && HAVE_SSE4_EXTERNAL
# define SAO_BAND_FILTER_FUNCS(bitd, opt) \
@ -630,17 +625,17 @@ void ff_hevc_sao_band_filter_32_##bitd##_##opt(uint8_t *_dst, uint8_t *_src, ptr
void ff_hevc_sao_band_filter_48_ # # bitd # # _ # # opt ( uint8_t * _dst , uint8_t * _src , ptrdiff_t _stride_dst , ptrdiff_t _stride_src , \
int16_t * sao_offset_val , int sao_left_class , int width , int height ) ; \
void ff_hevc_sao_band_filter_64_ # # bitd # # _ # # opt ( uint8_t * _dst , uint8_t * _src , ptrdiff_t _stride_dst , ptrdiff_t _stride_src , \
int16_t * sao_offset_val , int sao_left_class , int width , int height )
SAO_BAND_FILTER_FUNCS ( 8 , sse2 ) ;
SAO_BAND_FILTER_FUNCS ( 10 , sse2 ) ;
SAO_BAND_FILTER_FUNCS ( 12 , sse2 ) ;
SAO_BAND_FILTER_FUNCS ( 8 , avx ) ;
SAO_BAND_FILTER_FUNCS ( 10 , avx ) ;
SAO_BAND_FILTER_FUNCS ( 12 , avx ) ;
SAO_BAND_FILTER_FUNCS ( 8 , avx2 ) ;
SAO_BAND_FILTER_FUNCS ( 10 , avx2 ) ;
SAO_BAND_FILTER_FUNCS ( 12 , avx2 ) ;
int16_t * sao_offset_val , int sao_left_class , int width , int height ) ;
SAO_BAND_FILTER_FUNCS ( 8 , sse2 )
SAO_BAND_FILTER_FUNCS ( 10 , sse2 )
SAO_BAND_FILTER_FUNCS ( 12 , sse2 )
SAO_BAND_FILTER_FUNCS ( 8 , avx )
SAO_BAND_FILTER_FUNCS ( 10 , avx )
SAO_BAND_FILTER_FUNCS ( 12 , avx )
SAO_BAND_FILTER_FUNCS ( 8 , avx2 )
SAO_BAND_FILTER_FUNCS ( 10 , avx2 )
SAO_BAND_FILTER_FUNCS ( 12 , avx2 )
# define SAO_BAND_INIT(bitd, opt) do { \
c - > sao_band_filter [ 0 ] = ff_hevc_sao_band_filter_8_ # # bitd # # _ # # opt ; \
@ -662,12 +657,12 @@ void ff_hevc_sao_edge_filter_48_##bitd##_##opt(uint8_t *_dst, uint8_t *_src, ptr
void ff_hevc_sao_edge_filter_64_ # # bitd # # _ # # opt ( uint8_t * _dst , uint8_t * _src , ptrdiff_t stride_dst , int16_t * sao_offset_val , \
int eo , int width , int height ) ; \
SAO_EDGE_FILTER_FUNCS ( 8 , ssse3 ) ;
SAO_EDGE_FILTER_FUNCS ( 8 , avx2 ) ;
SAO_EDGE_FILTER_FUNCS ( 10 , sse2 ) ;
SAO_EDGE_FILTER_FUNCS ( 10 , avx2 ) ;
SAO_EDGE_FILTER_FUNCS ( 12 , sse2 ) ;
SAO_EDGE_FILTER_FUNCS ( 12 , avx2 ) ;
SAO_EDGE_FILTER_FUNCS ( 8 , ssse3 )
SAO_EDGE_FILTER_FUNCS ( 8 , avx2 )
SAO_EDGE_FILTER_FUNCS ( 10 , sse2 )
SAO_EDGE_FILTER_FUNCS ( 10 , avx2 )
SAO_EDGE_FILTER_FUNCS ( 12 , sse2 )
SAO_EDGE_FILTER_FUNCS ( 12 , avx2 )
# define SAO_EDGE_INIT(bitd, opt) do { \
c - > sao_edge_filter [ 0 ] = ff_hevc_sao_edge_filter_8_ # # bitd # # _ # # opt ; \