Commit 70317b25 authored by Martin Storsjö's avatar Martin Storsjö

arm/aarch64: vp9itxfm: Skip loading the min_eob pointer when it won't be used

In the half/quarter cases where we don't use the min_eob array, defer
loading the pointer until we know it will be needed.

This is cherrypicked from libav commit
3a0d5e20.
Signed-off-by: 's avatarMartin Storsjö <martin@martin.st>
parent b7a565fe
...@@ -1483,7 +1483,6 @@ function ff_vp9_idct_idct_32x32_add_neon, export=1 ...@@ -1483,7 +1483,6 @@ function ff_vp9_idct_idct_32x32_add_neon, export=1
b.eq idct32x32_dc_add_neon b.eq idct32x32_dc_add_neon
movrel x10, idct_coeffs movrel x10, idct_coeffs
movrel x12, min_eob_idct_idct_32, 2
mov x15, x30 mov x15, x30
...@@ -1508,6 +1507,8 @@ function ff_vp9_idct_idct_32x32_add_neon, export=1 ...@@ -1508,6 +1507,8 @@ function ff_vp9_idct_idct_32x32_add_neon, export=1
cmp w3, #135 cmp w3, #135
b.le idct32x32_half_add_neon b.le idct32x32_half_add_neon
movrel x12, min_eob_idct_idct_32, 2
.irp i, 0, 8, 16, 24 .irp i, 0, 8, 16, 24
add x0, sp, #(\i*64) add x0, sp, #(\i*64)
.if \i > 0 .if \i > 0
......
...@@ -889,8 +889,6 @@ function ff_vp9_\txfm1\()_\txfm2\()_16x16_add_neon, export=1 ...@@ -889,8 +889,6 @@ function ff_vp9_\txfm1\()_\txfm2\()_16x16_add_neon, export=1
push {r4-r8,lr} push {r4-r8,lr}
.ifnc \txfm1\()_\txfm2,idct_idct .ifnc \txfm1\()_\txfm2,idct_idct
vpush {q4-q7} vpush {q4-q7}
.else
movrel r8, min_eob_idct_idct_16 + 2
.endif .endif
@ Align the stack, allocate a temp buffer @ Align the stack, allocate a temp buffer
...@@ -914,6 +912,8 @@ A and r7, sp, #15 ...@@ -914,6 +912,8 @@ A and r7, sp, #15
ble idct16x16_quarter_add_neon ble idct16x16_quarter_add_neon
cmp r3, #38 cmp r3, #38
ble idct16x16_half_add_neon ble idct16x16_half_add_neon
movrel r8, min_eob_idct_idct_16 + 2
.endif .endif
.irp i, 0, 4, 8, 12 .irp i, 0, 4, 8, 12
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment