From ba05a4c640783dd8a67fb946531940a68d79b906 Mon Sep 17 00:00:00 2001 From: James Yu Date: Wed, 15 Jan 2014 16:20:34 +0800 Subject: [PATCH] VP9 common for ARMv8 by using NEON intrinsics 19 Delete vp9_dc_only_idct_add_neon.c The function was merged with vp9_short_idct4x4_1_add (later vp9_idct4x4_1_add) in d2de1ca and should have been deleted then. Change-Id: Ie58ba3dd9dc7330a8f1238dd7dd71c9ed4639b94 Signed-off-by: James Yu --- .../arm/neon/vp9_dc_only_idct_add_neon.asm | 69 ------------------- vp9/vp9_common.mk | 1 - 2 files changed, 70 deletions(-) delete mode 100644 vp9/common/arm/neon/vp9_dc_only_idct_add_neon.asm diff --git a/vp9/common/arm/neon/vp9_dc_only_idct_add_neon.asm b/vp9/common/arm/neon/vp9_dc_only_idct_add_neon.asm deleted file mode 100644 index 60a0d98c5..000000000 --- a/vp9/common/arm/neon/vp9_dc_only_idct_add_neon.asm +++ /dev/null @@ -1,69 +0,0 @@ -; -; Copyright (c) 2013 The WebM project authors. All Rights Reserved. -; -; Use of this source code is governed by a BSD-style license and patent -; grant that can be found in the LICENSE file in the root of the source -; tree. All contributing project authors may be found in the AUTHORS -; file in the root of the source tree. -; - - - EXPORT |vp9_dc_only_idct_add_neon| - ARM - REQUIRE8 - PRESERVE8 - - AREA ||.text||, CODE, READONLY, ALIGN=2 - -;void vp9_dc_only_idct_add_neon(int input_dc, uint8_t *pred_ptr, -; uint8_t *dst_ptr, int pitch, int stride) -; -; r0 int input_dc -; r1 uint8_t *pred_ptr -; r2 uint8_t *dst_ptr -; r3 int pitch -; sp int stride - -|vp9_dc_only_idct_add_neon| PROC - - ; generate cospi_16_64 = 11585 - mov r12, #0x2d00 - add r12, #0x41 - - ; dct_const_round_shift(input_dc * cospi_16_64) - mul r0, r0, r12 ; input_dc * cospi_16_64 - add r0, r0, #0x2000 ; +(1 << ((DCT_CONST_BITS) - 1)) - asr r0, r0, #14 ; >> DCT_CONST_BITS - - ; dct_const_round_shift(out * cospi_16_64) - mul r0, r0, r12 ; out * cospi_16_64 - add r0, r0, #0x2000 ; +(1 << ((DCT_CONST_BITS) - 1)) - asr r0, r0, #14 ; >> DCT_CONST_BITS - - ; ROUND_POWER_OF_TWO(out, 4) - add r0, r0, #8 ; + (1 <<((4) - 1)) - asr r0, r0, #4 ; >> 4 - - vdup.16 q0, r0; ; duplicate a1 - ldr r12, [sp] ; load stride - - vld1.32 {d2[0]}, [r1], r3 - vld1.32 {d2[1]}, [r1], r3 - vld1.32 {d4[0]}, [r1], r3 - vld1.32 {d4[1]}, [r1] - - vaddw.u8 q1, q0, d2 ; a1 + pred_ptr[c] - vaddw.u8 q2, q0, d4 - - vqmovun.s16 d2, q1 ; clip_pixel - vqmovun.s16 d4, q2 - - vst1.32 {d2[0]}, [r2], r12 - vst1.32 {d2[1]}, [r2], r12 - vst1.32 {d4[0]}, [r2], r12 - vst1.32 {d4[1]}, [r2] - - bx lr - ENDP ; |vp9_dc_only_idct_add_neon| - - END diff --git a/vp9/vp9_common.mk b/vp9/vp9_common.mk index 256045983..c7a2bfe44 100644 --- a/vp9/vp9_common.mk +++ b/vp9/vp9_common.mk @@ -134,7 +134,6 @@ VP9_COMMON_SRCS-$(HAVE_SSSE3) += common/x86/vp9_idct_ssse3_x86_64.asm endif VP9_COMMON_SRCS-$(HAVE_NEON_ASM) += common/arm/neon/vp9_loopfilter_16_neon_asm$(ASM) -VP9_COMMON_SRCS-$(HAVE_NEON_ASM) += common/arm/neon/vp9_dc_only_idct_add_neon$(ASM) VP9_COMMON_SRCS-$(HAVE_NEON_ASM) += common/arm/neon/vp9_mb_lpf_neon$(ASM) VP9_COMMON_SRCS-$(HAVE_NEON_ASM) += common/arm/neon/vp9_save_reg_neon$(ASM) VP9_COMMON_SRCS-$(HAVE_NEON_ASM) += common/arm/neon/vp9_reconintra_neon$(ASM) -- 2.40.0