Welcome to mirror list, hosted at ThFree Co, Russian Federation.

github.com/videolan/dav1d.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMartin Storsjö <martin@martin.st>2019-02-01 14:22:58 +0300
committerJanne Grunau <janne-vlc@jannau.net>2019-02-04 15:03:17 +0300
commitad4d1c4383b7705157807f2c364fca3ee3d713ef (patch)
tree9ee67aed3f148516ba7b0b3c0f0880863cf90a6e /src/arm/64/looprestoration.S
parent8a52189f0dfc18ccfa7a17f0e5d97ca4434806f1 (diff)
arm64: looprestoration: Optimize loop termination checks in copy_narrow_neon
Diffstat (limited to 'src/arm/64/looprestoration.S')
-rw-r--r--src/arm/64/looprestoration.S11
1 files changed, 5 insertions, 6 deletions
diff --git a/src/arm/64/looprestoration.S b/src/arm/64/looprestoration.S
index 7588253..cf86134 100644
--- a/src/arm/64/looprestoration.S
+++ b/src/arm/64/looprestoration.S
@@ -498,9 +498,8 @@ function copy_narrow_neon, export=1
add x7, x0, x1
lsl x1, x1, #1
18:
- cmp w4, #8
- b.lt 110f
subs w4, w4, #8
+ b.lt 110f
ld1 {v0.8b}, [x2], #8
st1 {v0.b}[0], [x0], x1
st1 {v0.b}[1], [x7], x1
@@ -513,6 +512,7 @@ function copy_narrow_neon, export=1
b.le 0f
b 18b
110:
+ add w4, w4, #8
asr x1, x1, #1
11:
subs w4, w4, #1
@@ -526,9 +526,8 @@ function copy_narrow_neon, export=1
add x7, x0, x1
lsl x1, x1, #1
24:
- cmp w4, #4
- b.lt 210f
subs w4, w4, #4
+ b.lt 210f
ld1 {v0.4h}, [x2], #8
st1 {v0.h}[0], [x0], x1
st1 {v0.h}[1], [x7], x1
@@ -537,6 +536,7 @@ function copy_narrow_neon, export=1
b.le 0f
b 24b
210:
+ add w4, w4, #4
asr x1, x1, #1
22:
subs w4, w4, #1
@@ -561,9 +561,8 @@ function copy_narrow_neon, export=1
add x7, x0, x1
lsl x1, x1, #1
42:
- cmp w4, #2
- b.lt 41f
subs w4, w4, #2
+ b.lt 41f
ld1 {v0.2s}, [x2], #8
st1 {v0.s}[0], [x0], x1
st1 {v0.s}[1], [x7], x1