summaryrefslogtreecommitdiff
path: root/libavcodec/arm/h264dsp_neon.S
diff options
context:
space:
mode:
Diffstat (limited to 'libavcodec/arm/h264dsp_neon.S')
-rw-r--r--libavcodec/arm/h264dsp_neon.S19
1 files changed, 19 insertions, 0 deletions
diff --git a/libavcodec/arm/h264dsp_neon.S b/libavcodec/arm/h264dsp_neon.S
index 274a547f26..5fed6848d8 100644
--- a/libavcodec/arm/h264dsp_neon.S
+++ b/libavcodec/arm/h264dsp_neon.S
@@ -237,6 +237,7 @@ function ff_h264_h_loop_filter_chroma_neon, export=1
h264_loop_filter_start
sub r0, r0, #2
+h_loop_filter_chroma420:
vld1.32 {d18[0]}, [r0], r1
vld1.32 {d16[0]}, [r0], r1
vld1.32 {d0[0]}, [r0], r1
@@ -271,6 +272,24 @@ function ff_h264_h_loop_filter_chroma_neon, export=1
bx lr
endfunc
+function ff_h264_h_loop_filter_chroma422_neon, export=1
+ h264_loop_filter_start
+ push {r4, lr}
+ add r4, r0, r1
+ add r1, r1, r1
+ sub r0, r0, #2
+
+ bl h_loop_filter_chroma420
+
+ ldr r12, [sp, #8]
+ ldr r12, [r12]
+ vmov.32 d24[0], r12
+ sub r0, r4, #2
+
+ bl h_loop_filter_chroma420
+ pop {r4, pc}
+endfunc
+
@ Biweighted prediction
.macro biweight_16 macs, macd