Home | History | Annotate | Download | only in arm
      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
     16 extern prototype_recon_block(vp8_recon_b_armv6);
     17 extern prototype_recon_block(vp8_recon2b_armv6);
     18 extern prototype_recon_block(vp8_recon4b_armv6);
     19 
     20 extern prototype_copy_block(vp8_copy_mem8x8_v6);
     21 extern prototype_copy_block(vp8_copy_mem8x4_v6);
     22 extern 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
     46 extern prototype_recon_block(vp8_recon_b_neon);
     47 extern prototype_recon_block(vp8_recon2b_neon);
     48 extern prototype_recon_block(vp8_recon4b_neon);
     49 
     50 extern prototype_copy_block(vp8_copy_mem8x8_neon);
     51 extern prototype_copy_block(vp8_copy_mem8x4_neon);
     52 extern prototype_copy_block(vp8_copy_mem16x16_neon);
     53 
     54 extern prototype_recon_macroblock(vp8_recon_mb_neon);
     55 
     56 extern prototype_build_intra_predictors(vp8_build_intra_predictors_mby_neon);
     57 extern 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