ref: f143a8119129411522a3c153b0bff6514c3a165d
parent: 999bc003018877a992ce59c1e26cbd6bb45b7991
parent: a465076e02aece158093ebe55f30c3420ab1ad14
author: Johann <johannkoenig@google.com>
date: Fri Oct 1 02:18:53 EDT 2010
Merge "Fix valgrind errors in the NEON loop filters."
--- a/vp8/common/arm/neon/mbloopfilterverticaledge_uv_neon.asm
+++ b/vp8/common/arm/neon/mbloopfilterverticaledge_uv_neon.asm
@@ -67,9 +67,10 @@
sub sp, sp, #32
vld1.s8 {d4[], d5[]}, [r12] ; thresh
- vst1.u8 {q3}, [sp]!
+ mov r12, sp
+ vst1.u8 {q3}, [r12]!
+ vst1.u8 {q10}, [r12]!
ldr r12, _mbvlfuv_coeff_
- vst1.u8 {q10}, [sp]!
; vp8_filter_mask
vabd.u8 q11, q3, q4 ; abs(p3 - p2)
@@ -164,8 +165,6 @@
vqsub.s8 q7, q7, q2 ; qs0 = vp8_signed_char_clamp(qs0 - Filter1)
vld1.u8 {d5}, [r12]! ;#27
-
- sub sp, sp, #32
vqadd.s8 q6, q6, q13 ; ps0 = vp8_signed_char_clamp(ps0 + Filter2)
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
--- a/vp8/common/arm/neon/mbloopfilterverticaledge_y_neon.asm
+++ b/vp8/common/arm/neon/mbloopfilterverticaledge_y_neon.asm
@@ -63,11 +63,12 @@
vtrn.8 q7, q8
vtrn.8 q9, q10
- vld1.s8 {d2[], d3[]}, [r3] ; limit
- vst1.u8 {q3}, [sp]!
vld1.s8 {d4[], d5[]}, [r12] ; thresh
+ vld1.s8 {d2[], d3[]}, [r3] ; limit
+ mov r12, sp
+ vst1.u8 {q3}, [r12]!
+ vst1.u8 {q10}, [r12]!
ldr r12, _mbvlfy_coeff_
- vst1.u8 {q10}, [sp]!
; vp8_filter_mask
vabd.u8 q11, q3, q4 ; abs(p3 - p2)
@@ -150,7 +151,6 @@
vld1.u8 {d6}, [r12]! ;#18
sub r0, r0, r1, lsl #4
- sub sp, sp, #32
add r2, r0, r1