summaryrefslogtreecommitdiff
path: root/libavcodec/arm/h264cmc_neon.S
diff options
context:
space:
mode:
authorMason Carter <void.main.argc.argv@gmail.com>2013-12-14 17:32:57 -0800
committerMartin Storsjö <martin@martin.st>2013-12-20 14:53:42 +0200
commitb254490bdabb21bd517c05b1a68717f9952ac8c4 (patch)
tree76f3e4fd665c99068b04ad99673a310bc42ba1ed /libavcodec/arm/h264cmc_neon.S
parent832e19063209a5f355af733d1a45f5051f49ce33 (diff)
vc1: arm: Add NEON no_rnd chroma MC
Apply David Conrad's old patch to the modern codebase. http://ffmpeg.org/pipermail/ffmpeg-devel/2009-April/059877.html Signed-off-by: Martin Storsjö <martin@martin.st>
Diffstat (limited to 'libavcodec/arm/h264cmc_neon.S')
-rw-r--r--libavcodec/arm/h264cmc_neon.S13
1 files changed, 13 insertions, 0 deletions
diff --git a/libavcodec/arm/h264cmc_neon.S b/libavcodec/arm/h264cmc_neon.S
index 15301f8fb9..3183dd8d82 100644
--- a/libavcodec/arm/h264cmc_neon.S
+++ b/libavcodec/arm/h264cmc_neon.S
@@ -39,6 +39,9 @@ function ff_\type\()_\codec\()_chroma_mc8_neon, export=1
add r6, r6, r7, lsl #1
vld1.16 {d22[],d23[]}, [r6,:16]
.endif
+ .ifc \codec,vc1
+ vmov.u16 q11, #28
+ .endif
A muls r7, r4, r5
T mul r7, r4, r5
@@ -183,6 +186,9 @@ function ff_\type\()_\codec\()_chroma_mc4_neon, export=1
add r6, r6, r7, lsl #1
vld1.16 {d22[],d23[]}, [r6,:16]
.endif
+ .ifc \codec,vc1
+ vmov.u16 q11, #28
+ .endif
A muls r7, r4, r5
T mul r7, r4, r5
@@ -396,3 +402,10 @@ endconst
h264_chroma_mc4 put, rv40
h264_chroma_mc4 avg, rv40
#endif
+
+#if CONFIG_VC1_DECODER
+ h264_chroma_mc8 put, vc1
+ h264_chroma_mc8 avg, vc1
+ h264_chroma_mc4 put, vc1
+ h264_chroma_mc4 avg, vc1
+#endif