[FFmpeg-devel] [PATCH] lavc/aarch64: h264qpel, add lowpass_8 based functions
Mikhail Nitenko
mnitenko at gmail.com
Thu Dec 7 17:37:50 EET 2023
On Thu, 7 Dec 2023 at 18:03, Martin Storsjö <martin at martin.st> wrote:
>
> Hi,
>
> On Mon, 4 Dec 2023, Mikhail Nitenko wrote:
>
> > ---
>
> I think the patch subject is missing to tell that this adds 10 bit
> functions?
>
> > I remodeled the patch (as Martin once suggested), it doesn't
> > go to 32bits in lowpass_8_10 and is also using the much
> > faster lowpass_8_10_v.
> >
> > libavcodec/aarch64/h264qpel_init_aarch64.c | 91 +++-
> > libavcodec/aarch64/h264qpel_neon.S | 532 +++++++++++++++++++++
> > 2 files changed, 621 insertions(+), 2 deletions(-)
>
> I think the patch overall looks good to me, thanks! I can try to push it a
> bit later.
>
> > diff --git a/libavcodec/aarch64/h264qpel_neon.S b/libavcodec/aarch64/h264qpel_neon.S
> > index f4475d96f9..31130a57fd 100644
> > --- a/libavcodec/aarch64/h264qpel_neon.S
> > +++ b/libavcodec/aarch64/h264qpel_neon.S
> > @@ -933,3 +933,535 @@ endfunc
> >
> > h264_qpel16 put
> > h264_qpel16 avg
> > +
> > +//trashes v0-v5
> > +.macro lowpass_8_10 r0, r1, r2, r3, d0, d1
> > + ext v2.16B, \r0\().16B, \r1\().16B, #4
>
> This patch uses upper case element specifiers like .16B here; we
> reformatted our assembly to consistenty use lower case element specifiers
> in 184103b3105f02f1189fa0047af4269e027dfbd6 (also see
> 7f905f3672da4f1fa28d7cccf1fef7f9984e0480); I can apply this change
> mechanically on this patch before pushing it.
Oh, and /sligthly/ unrelated, macros names in libavcodec/aarch64/neon.S
use uppercase, should they also be lowercase then or are they fine?
>
> // Martin
>
--
Mikhail
More information about the ffmpeg-devel
mailing list