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 LOOPFILTER_ARM_H 13 #define LOOPFILTER_ARM_H 14 15 #if HAVE_ARMV6 16 extern prototype_loopfilter_block(vp8_loop_filter_mbv_armv6); 17 extern prototype_loopfilter_block(vp8_loop_filter_bv_armv6); 18 extern prototype_loopfilter_block(vp8_loop_filter_mbh_armv6); 19 extern prototype_loopfilter_block(vp8_loop_filter_bh_armv6); 20 extern prototype_loopfilter_block(vp8_loop_filter_mbvs_armv6); 21 extern prototype_loopfilter_block(vp8_loop_filter_bvs_armv6); 22 extern prototype_loopfilter_block(vp8_loop_filter_mbhs_armv6); 23 extern prototype_loopfilter_block(vp8_loop_filter_bhs_armv6); 24 25 #if !CONFIG_RUNTIME_CPU_DETECT 26 #undef vp8_lf_normal_mb_v 27 #define vp8_lf_normal_mb_v vp8_loop_filter_mbv_armv6 28 29 #undef vp8_lf_normal_b_v 30 #define vp8_lf_normal_b_v vp8_loop_filter_bv_armv6 31 32 #undef vp8_lf_normal_mb_h 33 #define vp8_lf_normal_mb_h vp8_loop_filter_mbh_armv6 34 35 #undef vp8_lf_normal_b_h 36 #define vp8_lf_normal_b_h vp8_loop_filter_bh_armv6 37 38 #undef vp8_lf_simple_mb_v 39 #define vp8_lf_simple_mb_v vp8_loop_filter_mbvs_armv6 40 41 #undef vp8_lf_simple_b_v 42 #define vp8_lf_simple_b_v vp8_loop_filter_bvs_armv6 43 44 #undef vp8_lf_simple_mb_h 45 #define vp8_lf_simple_mb_h vp8_loop_filter_mbhs_armv6 46 47 #undef vp8_lf_simple_b_h 48 #define vp8_lf_simple_b_h vp8_loop_filter_bhs_armv6 49 #endif 50 #endif 51 52 #if HAVE_ARMV7 53 extern prototype_loopfilter_block(vp8_loop_filter_mbv_neon); 54 extern prototype_loopfilter_block(vp8_loop_filter_bv_neon); 55 extern prototype_loopfilter_block(vp8_loop_filter_mbh_neon); 56 extern prototype_loopfilter_block(vp8_loop_filter_bh_neon); 57 extern prototype_loopfilter_block(vp8_loop_filter_mbvs_neon); 58 extern prototype_loopfilter_block(vp8_loop_filter_bvs_neon); 59 extern prototype_loopfilter_block(vp8_loop_filter_mbhs_neon); 60 extern prototype_loopfilter_block(vp8_loop_filter_bhs_neon); 61 62 #if !CONFIG_RUNTIME_CPU_DETECT 63 #undef vp8_lf_normal_mb_v 64 #define vp8_lf_normal_mb_v vp8_loop_filter_mbv_neon 65 66 #undef vp8_lf_normal_b_v 67 #define vp8_lf_normal_b_v vp8_loop_filter_bv_neon 68 69 #undef vp8_lf_normal_mb_h 70 #define vp8_lf_normal_mb_h vp8_loop_filter_mbh_neon 71 72 #undef vp8_lf_normal_b_h 73 #define vp8_lf_normal_b_h vp8_loop_filter_bh_neon 74 75 #undef vp8_lf_simple_mb_v 76 #define vp8_lf_simple_mb_v vp8_loop_filter_mbvs_neon 77 78 #undef vp8_lf_simple_b_v 79 #define vp8_lf_simple_b_v vp8_loop_filter_bvs_neon 80 81 #undef vp8_lf_simple_mb_h 82 #define vp8_lf_simple_mb_h vp8_loop_filter_mbhs_neon 83 84 #undef vp8_lf_simple_b_h 85 #define vp8_lf_simple_b_h vp8_loop_filter_bhs_neon 86 #endif 87 #endif 88 89 #endif 90