1
0
mirror of https://git.ffmpeg.org/ffmpeg.git synced 2026-10-24 02:09:03 +03:00

aarch64/h26x: share the weighted qpel hv vertical tail up to 8 wide

No functional changes.
This commit is contained in:
Zhao Zhili
2026-09-30 19:23:54 +08:00
committed by Zhao Zhili
parent e79dcfabf0
commit dd04dc6fc6

View File

@@ -5384,46 +5384,41 @@ DISABLE_I8MM
QPEL_UNI_W_HV_4
.endm
function hevc_put_hevc_qpel_uni_w_hv4_8_end_neon
ldr d16, [sp]
ldr d17, [sp, x10]
.macro qpel_uni_w_hv_tail type, step
ldr \type\()16, [sp]
ldr \type\()17, [sp, x10]
add sp, sp, x10, lsl #1
ldr d18, [sp]
ldr d19, [sp, x10]
ldr \type\()18, [sp]
ldr \type\()19, [sp, x10]
add sp, sp, x10, lsl #1
ldr d20, [sp]
ldr d21, [sp, x10]
ldr \type\()20, [sp]
ldr \type\()21, [sp, x10]
add sp, sp, x10, lsl #1
ldr d22, [sp]
ldr \type\()22, [sp]
add sp, sp, x10
1:
qpel_uni_w_hv4_end_step d23, v16, v17, v18, v19, v20, v21, v22, v23
1: \step \type\()23, v16, v17, v18, v19, v20, v21, v22, v23
b.eq 2f
qpel_uni_w_hv4_end_step d16, v17, v18, v19, v20, v21, v22, v23, v16
\step \type\()16, v17, v18, v19, v20, v21, v22, v23, v16
b.eq 2f
qpel_uni_w_hv4_end_step d17, v18, v19, v20, v21, v22, v23, v16, v17
\step \type\()17, v18, v19, v20, v21, v22, v23, v16, v17
b.eq 2f
qpel_uni_w_hv4_end_step d18, v19, v20, v21, v22, v23, v16, v17, v18
\step \type\()18, v19, v20, v21, v22, v23, v16, v17, v18
b.eq 2f
qpel_uni_w_hv4_end_step d19, v20, v21, v22, v23, v16, v17, v18, v19
\step \type\()19, v20, v21, v22, v23, v16, v17, v18, v19
b.eq 2f
qpel_uni_w_hv4_end_step d20, v21, v22, v23, v16, v17, v18, v19, v20
\step \type\()20, v21, v22, v23, v16, v17, v18, v19, v20
b.eq 2f
qpel_uni_w_hv4_end_step d21, v22, v23, v16, v17, v18, v19, v20, v21
\step \type\()21, v22, v23, v16, v17, v18, v19, v20, v21
b.eq 2f
qpel_uni_w_hv4_end_step d22, v23, v16, v17, v18, v19, v20, v21, v22
\step \type\()22, v23, v16, v17, v18, v19, v20, v21, v22
b.hi 1b
2:
QPEL_UNI_W_HV_END
ret
.endm
function hevc_put_hevc_qpel_uni_w_hv4_8_end_neon
qpel_uni_w_hv_tail d, qpel_uni_w_hv4_end_step
endfunc
// hv6: process 6 pixels (4 + 2), use 8-element loads/stores
@@ -5454,45 +5449,7 @@ endfunc
.endm
function hevc_put_hevc_qpel_uni_w_hv6_8_end_neon
ldr q16, [sp]
ldr q17, [sp, x10]
add sp, sp, x10, lsl #1
ldr q18, [sp]
ldr q19, [sp, x10]
add sp, sp, x10, lsl #1
ldr q20, [sp]
ldr q21, [sp, x10]
add sp, sp, x10, lsl #1
ldr q22, [sp]
add sp, sp, x10
1:
qpel_uni_w_hv6_end_step q23, v16, v17, v18, v19, v20, v21, v22, v23
b.eq 2f
qpel_uni_w_hv6_end_step q16, v17, v18, v19, v20, v21, v22, v23, v16
b.eq 2f
qpel_uni_w_hv6_end_step q17, v18, v19, v20, v21, v22, v23, v16, v17
b.eq 2f
qpel_uni_w_hv6_end_step q18, v19, v20, v21, v22, v23, v16, v17, v18
b.eq 2f
qpel_uni_w_hv6_end_step q19, v20, v21, v22, v23, v16, v17, v18, v19
b.eq 2f
qpel_uni_w_hv6_end_step q20, v21, v22, v23, v16, v17, v18, v19, v20
b.eq 2f
qpel_uni_w_hv6_end_step q21, v22, v23, v16, v17, v18, v19, v20, v21
b.eq 2f
qpel_uni_w_hv6_end_step q22, v23, v16, v17, v18, v19, v20, v21, v22
b.hi 1b
2:
QPEL_UNI_W_HV_END
ret
qpel_uni_w_hv_tail q, qpel_uni_w_hv6_end_step
endfunc
.macro QPEL_UNI_W_HV_8
@@ -5520,45 +5477,7 @@ endfunc
.endm
function hevc_put_hevc_qpel_uni_w_hv8_8_end_neon
ldr q16, [sp]
ldr q17, [sp, x10]
add sp, sp, x10, lsl #1
ldr q18, [sp]
ldr q19, [sp, x10]
add sp, sp, x10, lsl #1
ldr q20, [sp]
ldr q21, [sp, x10]
add sp, sp, x10, lsl #1
ldr q22, [sp]
add sp, sp, x10
1:
qpel_uni_w_hv8_end_step q23, v16, v17, v18, v19, v20, v21, v22, v23
b.eq 2f
qpel_uni_w_hv8_end_step q16, v17, v18, v19, v20, v21, v22, v23, v16
b.eq 2f
qpel_uni_w_hv8_end_step q17, v18, v19, v20, v21, v22, v23, v16, v17
b.eq 2f
qpel_uni_w_hv8_end_step q18, v19, v20, v21, v22, v23, v16, v17, v18
b.eq 2f
qpel_uni_w_hv8_end_step q19, v20, v21, v22, v23, v16, v17, v18, v19
b.eq 2f
qpel_uni_w_hv8_end_step q20, v21, v22, v23, v16, v17, v18, v19, v20
b.eq 2f
qpel_uni_w_hv8_end_step q21, v22, v23, v16, v17, v18, v19, v20, v21
b.eq 2f
qpel_uni_w_hv8_end_step q22, v23, v16, v17, v18, v19, v20, v21, v22
b.hi 1b
2:
QPEL_UNI_W_HV_END
ret
qpel_uni_w_hv_tail q, qpel_uni_w_hv8_end_step
endfunc
// hv12: process 12 pixels = 8 + 4