@ -326,9 +326,9 @@ function ff_pix_abs16_y2_neon, export=1
/ / w4 i n t h
/ / initialize b u f f e r s
ld1 { v1 . 1 6 b } , [ x2 ] , x3 / / L o a d p i x2
movi v29 . 8 h , #0 / / c l e a r t h e a c c u m u l a t o r
movi v28 . 8 h , #0 / / c l e a r t h e a c c u m u l a t o r
add x5 , x2 , x3 / / p i x2 + s t r i d e
cmp w4 , #4
b. l t 2 f
@ -339,29 +339,25 @@ function ff_pix_abs16_y2_neon, export=1
/ / avg2 ( a , b ) = ( ( ( a ) + ( b ) + 1 ) > > 1 )
/ / abs( x ) = ( x < 0 ? ( - x ) : ( x ) )
ld1 { v1 . 1 6 b } , [ x2 ] , x3 / / L o a d p i x2 f o r f i r s t i t e r a t i o n
ld1 { v2 . 1 6 b } , [ x5 ] , x3 / / L o a d p i x3 f o r f i r s t i t e r a t i o n
ld1 { v2 . 1 6 b } , [ x2 ] , x3 / / L o a d p i x3 f o r f i r s t i t e r a t i o n
ld1 { v0 . 1 6 b } , [ x1 ] , x3 / / L o a d p i x1 f o r f i r s t i t e r a t i o n
urhadd v30 . 1 6 b , v1 . 1 6 b , v2 . 1 6 b / / R o u n d i n g h a l v i n g a d d , f i r s t i t e r a t i o n
ld1 { v4 . 1 6 b } , [ x2 ] , x3 / / L o a d p i x2 f o r s e c o n d i t e r a t i o n
ld1 { v5 . 1 6 b } , [ x5 ] , x3 / / L o a d p i x3 f o r s e c o n d i t e a r t i o n
ld1 { v5 . 1 6 b } , [ x2 ] , x3 / / L o a d p i x3 f o r s e c o n d i t e a r t i o n
uabal v29 . 8 h , v0 . 8 b , v30 . 8 b / / A b s o l u t e d i f f e r e n c e o f l o w e r h a l f , f i r s t i t e r a t i o n
uabal2 v28 . 8 h , v0 . 1 6 b , v30 . 1 6 b / / A b s o l u t e d i f f e r e n c e o f u p p e r h a l f , f i r s t i t e r a t i o n
ld1 { v3 . 1 6 b } , [ x1 ] , x3 / / L o a d p i x1 f o r s e c o n d i t e r a t i o n
urhadd v27 . 1 6 b , v4 . 1 6 b , v5 . 1 6 b / / R o u n d i n g h a l v i n g a d d , s e c o n d i t e r a t i o n
ld1 { v7 . 1 6 b } , [ x2 ] , x3 / / L o a d p i x2 f o r t h i r d i t e r a t i o n
ld1 { v20 . 1 6 b } , [ x5 ] , x3 / / L o a d p i x3 f o r t h i r d i t e r a t i o n
urhadd v27 . 1 6 b , v2 . 1 6 b , v5 . 1 6 b / / R o u n d i n g h a l v i n g a d d , s e c o n d i t e r a t i o n
ld1 { v20 . 1 6 b } , [ x2 ] , x3 / / L o a d p i x3 f o r t h i r d i t e r a t i o n
uabal v29 . 8 h , v3 . 8 b , v27 . 8 b / / A b s o l u t e d i f f e r e n c e o f l o w e r h a l f f o r s e c o n d i t e r a t i o n
uabal2 v28 . 8 h , v3 . 1 6 b , v27 . 1 6 b / / A b s o l u t e d i f f e r e n c e o f u p p e r h a l f f o r s e c o n d i t e r a t i o n
ld1 { v6 . 1 6 b } , [ x1 ] , x3 / / L o a d p i x1 f o r t h i r d i t e r a t i o n
urhadd v26 . 1 6 b , v7 . 1 6 b , v20 . 1 6 b / / R o u n d i n g h a l v i n g a d d , t h i r d i t e r a t i o n
ld1 { v22 . 1 6 b } , [ x2 ] , x3 / / L o a d p i x2 f o r f o u r t h i t e r a t i o n
ld1 { v23 . 1 6 b } , [ x5 ] , x3 / / L o a d p i x3 f o r f o u r t h i t e r a t i o n
urhadd v26 . 1 6 b , v5 . 1 6 b , v20 . 1 6 b / / R o u n d i n g h a l v i n g a d d , t h i r d i t e r a t i o n
ld1 { v1 . 1 6 b } , [ x2 ] , x3 / / L o a d p i x3 f o r f o u r t h i t e r a t i o n
uabal v29 . 8 h , v6 . 8 b , v26 . 8 b / / A b s o l u t e d i f f e r e n c e o f l o w e r h a l f f o r t h i r d i t e r a t i o n
uabal2 v28 . 8 h , v6 . 1 6 b , v26 . 1 6 b / / A b s o l u t e d i f f e r e n c e o f u p p e r h a l f f o r t h i r d i t e r a t i o n
ld1 { v21 . 1 6 b } , [ x1 ] , x3 / / L o a d p i x1 f o r f o u r t h i t e r a t i o n
sub w4 , w4 , #4 / / h - = 4
urhadd v25 . 1 6 b , v22 . 1 6 b , v23 . 1 6 b / / R o u n d i n g h a l v i n g a d d
urhadd v25 . 1 6 b , v20 . 1 6 b , v1 . 1 6 b / / R o u n d i n g h a l v i n g a d d
cmp w4 , #4
uabal v29 . 8 h , v21 . 8 b , v25 . 8 b / / A b s o l u t e d i f f e r e n c e o f l o w e r h a l f f o r f o u r t h i t e r a t i o n
uabal2 v28 . 8 h , v21 . 1 6 b , v25 . 1 6 b / / A b s o l u t e d i f f e r e n c e o f u p p e r h a l f f o r f o u r t h i t e r a t i o n
@ -372,11 +368,11 @@ function ff_pix_abs16_y2_neon, export=1
/ / iterate b y o n e
2 :
ld1 { v1 . 1 6 b } , [ x2 ] , x3 / / L o a d p i x2
ld1 { v2 . 1 6 b } , [ x5 ] , x3 / / L o a d p i x3
ld1 { v2 . 1 6 b } , [ x2 ] , x3 / / L o a d p i x3
subs w4 , w4 , #1
ld1 { v0 . 1 6 b } , [ x1 ] , x3 / / L o a d p i x1
urhadd v30 . 1 6 b , v1 . 1 6 b , v2 . 1 6 b / / R o u n d i n g h a l v i n g a d d
mov v1 . 1 6 b , v2 . 1 6 b / / S h i f t p i x3 - > p i x2
uabal v29 . 8 h , v30 . 8 b , v0 . 8 b
uabal2 v28 . 8 h , v30 . 1 6 b , v0 . 1 6 b