[FFmpeg-devel] [PATCH] avcodec/vp9: ipred_dr_16x16_16 avx2 implementation

gh0st zakne0ne at gmail.com
Sat Jun 10 12:59:19 EEST 2017


Yes, you are right, I'll send a patch with this fixed, thanks.

On Sat, Jun 10, 2017 at 5:35 AM, Ivan Kalvachev <ikalvachev at gmail.com>
wrote:

> On 6/9/17, Ilia Valiakhmetov <zakne0ne at gmail.com> wrote:
> > Signed-off-by: Ilia Valiakhmetov <zakne0ne at gmail.com>
> > ---
> >  libavcodec/x86/vp9dsp_init_16bpp.c    |  2 ++
> >  libavcodec/x86/vp9intrapred_16bpp.asm | 56
> > +++++++++++++++++++++++++++++++++++
> >  2 files changed, 58 insertions(+)
> >
> > diff --git a/libavcodec/x86/vp9dsp_init_16bpp.c
> > b/libavcodec/x86/vp9dsp_init_16bpp.c
> > index d1b8fcd..8d1aa13 100644
> > --- a/libavcodec/x86/vp9dsp_init_16bpp.c
> > +++ b/libavcodec/x86/vp9dsp_init_16bpp.c
> > @@ -52,6 +52,7 @@ decl_ipred_fns(dc,      16, mmxext, sse2);
> >  decl_ipred_fns(dc_top,  16, mmxext, sse2);
> >  decl_ipred_fns(dc_left, 16, mmxext, sse2);
> >  decl_ipred_fn(dl,       16,     16, avx2);
> > +decl_ipred_fn(dr,       16,     16, avx2);
> >  decl_ipred_fn(dl,       32,     16, avx2);
> >
> >  #define decl_ipred_dir_funcs(type) \
> > @@ -136,6 +137,7 @@ av_cold void ff_vp9dsp_init_16bpp_x86(VP9DSPContext
> > *dsp)
> >          init_fpel_func(1, 1,  64, avg, _16, avx2);
> >          init_fpel_func(0, 1, 128, avg, _16, avx2);
> >          init_ipred_func(dl, DIAG_DOWN_LEFT, 16, 16, avx2);
> > +        init_ipred_func(dr, DIAG_DOWN_RIGHT, 16, 16, avx2);
> >          init_ipred_func(dl, DIAG_DOWN_LEFT, 32, 16, avx2);
> >      }
> >
> > diff --git a/libavcodec/x86/vp9intrapred_16bpp.asm
> > b/libavcodec/x86/vp9intrapred_16bpp.asm
> > index 92333bc..7230de2 100644
> > --- a/libavcodec/x86/vp9intrapred_16bpp.asm
> > +++ b/libavcodec/x86/vp9intrapred_16bpp.asm
> > @@ -1170,6 +1170,62 @@ DR_FUNCS 2
> >  INIT_XMM avx
> >  DR_FUNCS 2
> >
> > +%if HAVE_AVX2_EXTERNAL
> > +INIT_YMM avx2
> > +cglobal vp9_ipred_dr_16x16_16, 4, 4, 6, dst, stride, l, a
> [...]
> > +    DEFINE_ARGS dst, stride, stride3, stride5, dst3
>
> You removed one variable, so now the number of
> re-define-args gprs should be 5.
> However the cglobal above have 4 reserved registers.
>
> It used to be  4, 6, 6
> Now it is 4, 4, 6
> I think it should be 4, 5, 6
>
> Do I miss something?
> _______________________________________________
> ffmpeg-devel mailing list
> ffmpeg-devel at ffmpeg.org
> http://ffmpeg.org/mailman/listinfo/ffmpeg-devel
>


More information about the ffmpeg-devel mailing list