1/* 2 * Copyright (c) 2010 The WebM project authors. All Rights Reserved. 3 * 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. 9 */ 10 11 12#ifndef RECON_ARM_H 13#define RECON_ARM_H 14 15#if HAVE_ARMV6 16extern prototype_recon_block(vp8_recon_b_armv6); 17extern prototype_recon_block(vp8_recon2b_armv6); 18extern prototype_recon_block(vp8_recon4b_armv6); 19 20extern prototype_copy_block(vp8_copy_mem8x8_v6); 21extern prototype_copy_block(vp8_copy_mem8x4_v6); 22extern prototype_copy_block(vp8_copy_mem16x16_v6); 23 24#if !CONFIG_RUNTIME_CPU_DETECT 25#undef vp8_recon_recon 26#define vp8_recon_recon vp8_recon_b_armv6 27 28#undef vp8_recon_recon2 29#define vp8_recon_recon2 vp8_recon2b_armv6 30 31#undef vp8_recon_recon4 32#define vp8_recon_recon4 vp8_recon4b_armv6 33 34#undef vp8_recon_copy8x8 35#define vp8_recon_copy8x8 vp8_copy_mem8x8_v6 36 37#undef vp8_recon_copy8x4 38#define vp8_recon_copy8x4 vp8_copy_mem8x4_v6 39 40#undef vp8_recon_copy16x16 41#define vp8_recon_copy16x16 vp8_copy_mem16x16_v6 42#endif 43#endif 44 45#if HAVE_ARMV7 46extern prototype_recon_block(vp8_recon_b_neon); 47extern prototype_recon_block(vp8_recon2b_neon); 48extern prototype_recon_block(vp8_recon4b_neon); 49 50extern prototype_copy_block(vp8_copy_mem8x8_neon); 51extern prototype_copy_block(vp8_copy_mem8x4_neon); 52extern prototype_copy_block(vp8_copy_mem16x16_neon); 53 54extern prototype_recon_macroblock(vp8_recon_mb_neon); 55 56extern prototype_build_intra_predictors(vp8_build_intra_predictors_mby_neon); 57extern prototype_build_intra_predictors(vp8_build_intra_predictors_mby_s_neon); 58 59#if !CONFIG_RUNTIME_CPU_DETECT 60#undef vp8_recon_recon 61#define vp8_recon_recon vp8_recon_b_neon 62 63#undef vp8_recon_recon2 64#define vp8_recon_recon2 vp8_recon2b_neon 65 66#undef vp8_recon_recon4 67#define vp8_recon_recon4 vp8_recon4b_neon 68 69#undef vp8_recon_copy8x8 70#define vp8_recon_copy8x8 vp8_copy_mem8x8_neon 71 72#undef vp8_recon_copy8x4 73#define vp8_recon_copy8x4 vp8_copy_mem8x4_neon 74 75#undef vp8_recon_copy16x16 76#define vp8_recon_copy16x16 vp8_copy_mem16x16_neon 77 78#undef vp8_recon_recon_mb 79#define vp8_recon_recon_mb vp8_recon_mb_neon 80 81#undef vp8_recon_build_intra_predictors_mby 82#define vp8_recon_build_intra_predictors_mby vp8_build_intra_predictors_mby_neon 83 84#undef vp8_recon_build_intra_predictors_mby_s 85#define vp8_recon_build_intra_predictors_mby_s vp8_build_intra_predictors_mby_s_neon 86 87#endif 88#endif 89 90#endif 91