2 ; Copyright (c) 2010 The WebM project authors. All Rights Reserved.
4 ; Use of this source code is governed by a BSD-style license
5 ; that can be found in the LICENSE file in the root of the source
6 ; tree. An additional intellectual property rights grant can be found
7 ; in the file PATENTS. All contributing project authors may
8 ; be found in the AUTHORS file in the root of the source tree.
12 EXPORT |vp8_sad16x16_neon|
13 EXPORT |vp8_sad16x8_neon|
19 AREA ||.text||
, CODE
, READONLY
, ALIGN=2
21 ; r0 unsigned char *src_ptr
23 ; r2 unsigned char *ref_ptr
25 |vp8_sad16x16_neon|
PROC
100 vld1.8
{q4}, [r2
], r3
102 vabal.u8 q12
, d6
, d14
103 vabal.u8 q13
, d7
, d15
105 vld1.8
{q1}, [r0
], r1
106 vld1.8
{q5}, [r2
], r3
111 vld1.8
{q2}, [r0
], r1
112 vld1.8
{q6}, [r2
], r3
114 vabal.u8 q12
, d2
, d10
115 vabal.u8 q13
, d3
, d11
120 vabal.u8 q12
, d4
, d12
121 vabal.u8 q13
, d5
, d13
123 vabal.u8 q12
, d6
, d14
124 vabal.u8 q13
, d7
, d15
126 vadd.u16 q0
, q12
, q13
139 ;==============================
140 ;unsigned int vp8_sad16x8_c(
141 ; unsigned char *src_ptr,
143 ; unsigned char *ref_ptr,
145 |vp8_sad16x8_neon|
PROC
146 vld1.8
{q0}, [r0
], r1
147 vld1.8
{q4}, [r2
], r3
149 vld1.8
{q1}, [r0
], r1
150 vld1.8
{q5}, [r2
], r3
155 vld1.8
{q2}, [r0
], r1
156 vld1.8
{q6}, [r2
], r3
158 vabal.u8 q12
, d2
, d10
159 vabal.u8 q13
, d3
, d11
161 vld1.8
{q3}, [r0
], r1
162 vld1.8
{q7}, [r2
], r3
164 vabal.u8 q12
, d4
, d12
165 vabal.u8 q13
, d5
, d13
167 vld1.8
{q0}, [r0
], r1
168 vld1.8
{q4}, [r2
], r3
170 vabal.u8 q12
, d6
, d14
171 vabal.u8 q13
, d7
, d15
173 vld1.8
{q1}, [r0
], r1
174 vld1.8
{q5}, [r2
], r3
179 vld1.8
{q2}, [r0
], r1
180 vld1.8
{q6}, [r2
], r3
182 vabal.u8 q12
, d2
, d10
183 vabal.u8 q13
, d3
, d11
185 vld1.8
{q3}, [r0
], r1
186 vld1.8
{q7}, [r2
], r3
188 vabal.u8 q12
, d4
, d12
189 vabal.u8 q13
, d5
, d13
191 vabal.u8 q12
, d6
, d14
192 vabal.u8 q13
, d7
, d15
194 vadd.u16 q0
, q12
, q13