recon_arm.h revision 79f15823c34ae1e423108295e416213200bb280f
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