arm/aarch64: vp9lpf: Calculate !hev directly
authorMartin Storsjö <martin@martin.st>
Thu, 12 Jan 2017 14:52:33 +0000 (16:52 +0200)
committerMartin Storsjö <martin@martin.st>
Sat, 11 Mar 2017 11:14:48 +0000 (13:14 +0200)
commitf0ecbb13cf1cf706a1350dad657219dc7b3c131e
treecb74533c73c2f2426a33a7476ebc367a46a196ae
parent148cc0bb890839bc2a9cda514c5e71acc39eb374
arm/aarch64: vp9lpf: Calculate !hev directly

Previously we first calculated hev, and then negated it.

Since we were able to schedule the negation in the middle
of another calculation, we don't see any gain in all cases.

Before:                     Cortex A7      A8      A9     A53  A53/AArch64
vp9_loop_filter_v_4_8_neon:     147.0   129.0   115.8    89.0         88.7
vp9_loop_filter_v_8_8_neon:     242.0   198.5   174.7   140.0        136.7
vp9_loop_filter_v_16_8_neon:    500.0   419.5   382.7   293.0        275.7
vp9_loop_filter_v_16_16_neon:   971.2   825.5   731.5   579.0        453.0
After:
vp9_loop_filter_v_4_8_neon:     143.0   127.7   114.8    88.0         87.7
vp9_loop_filter_v_8_8_neon:     241.0   197.2   173.7   140.0        136.7
vp9_loop_filter_v_16_8_neon:    497.0   419.5   379.7   293.0        275.7
vp9_loop_filter_v_16_16_neon:   965.2   818.7   731.4   579.0        452.0

This is cherrypicked from libav commit
e1f9de86f454861b69b199ad801adc2ec6c3b220.

Signed-off-by: Martin Storsjö <martin@martin.st>
libavcodec/aarch64/vp9lpf_neon.S
libavcodec/arm/vp9lpf_neon.S