arm: remove duplicate functions
[libvpx.git] / vp8 / common / arm / neon / dc_only_idct_add_neon.asm
blob49ba05fb0ec5bc47422a9a6ea82694b457db975d
2 ; Copyright (c) 2010 The WebM project authors. All Rights Reserved.
4 ; Use of this source code is governed by a BSD-style license and patent
5 ; grant that can be found in the LICENSE file in the root of the source
6 ; tree. All contributing project authors may be found in the AUTHORS
7 ; file in the root of the source tree.
11 EXPORT |vp8_dc_only_idct_add_neon|
12 ARM
13 REQUIRE8
14 PRESERVE8
16 AREA ||.text||, CODE, READONLY, ALIGN=2
17 ;void vp8_dc_only_idct_add_neon(short input_dc, unsigned char *pred_ptr,
18 ; unsigned char *dst_ptr, int pitch, int stride)
19 ; r0 input_dc
20 ; r1 pred_ptr
21 ; r2 dst_ptr
22 ; r3 pitch
23 ; sp stride
24 |vp8_dc_only_idct_add_neon| PROC
25 add r0, r0, #4
26 asr r0, r0, #3
27 ldr r12, [sp]
28 vdup.16 q0, r0
30 vld1.32 {d2[0]}, [r1], r3
31 vld1.32 {d2[1]}, [r1], r3
32 vld1.32 {d4[0]}, [r1], r3
33 vld1.32 {d4[1]}, [r1]
35 vaddw.u8 q1, q0, d2
36 vaddw.u8 q2, q0, d4
38 vqmovun.s16 d2, q1
39 vqmovun.s16 d4, q2
41 vst1.32 {d2[0]}, [r2], r12
42 vst1.32 {d2[1]}, [r2], r12
43 vst1.32 {d4[0]}, [r2], r12
44 vst1.32 {d4[1]}, [r2]
46 bx lr
48 ENDP
49 END