]> granicus.if.org Git - libvpx/blob - vp8/common/arm/idct_arm.h
Merge commit 'refs/changes/09/809/1' of https://review.webmproject.org/p/libvpx
[libvpx] / vp8 / common / arm / idct_arm.h
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 IDCT_ARM_H
13 #define IDCT_ARM_H
14
15 #if HAVE_ARMV6
16 extern prototype_idct(vp8_short_idct4x4llm_1_v6);
17 extern prototype_idct(vp8_short_idct4x4llm_v6_dual);
18 extern prototype_idct_scalar_add(vp8_dc_only_idct_add_v6);
19 extern prototype_second_order(vp8_short_inv_walsh4x4_1_v6);
20 extern prototype_second_order(vp8_short_inv_walsh4x4_v6);
21
22 #if !CONFIG_RUNTIME_CPU_DETECT
23 #undef  vp8_idct_idct1
24 #define vp8_idct_idct1 vp8_short_idct4x4llm_1_v6
25
26 #undef  vp8_idct_idct16
27 #define vp8_idct_idct16 vp8_short_idct4x4llm_v6_dual
28
29 #undef  vp8_idct_idct1_scalar_add
30 #define vp8_idct_idct1_scalar_add vp8_dc_only_idct_add_v6
31
32 #undef  vp8_idct_iwalsh1
33 #define vp8_idct_iwalsh1 vp8_short_inv_walsh4x4_1_v6
34
35 #undef  vp8_idct_iwalsh16
36 #define vp8_idct_iwalsh16 vp8_short_inv_walsh4x4_v6
37 #endif
38 #endif
39
40 #if HAVE_ARMV7
41 extern prototype_idct(vp8_short_idct4x4llm_1_neon);
42 extern prototype_idct(vp8_short_idct4x4llm_neon);
43 extern prototype_idct_scalar_add(vp8_dc_only_idct_add_neon);
44 extern prototype_second_order(vp8_short_inv_walsh4x4_1_neon);
45 extern prototype_second_order(vp8_short_inv_walsh4x4_neon);
46
47 #if !CONFIG_RUNTIME_CPU_DETECT
48 #undef  vp8_idct_idct1
49 #define vp8_idct_idct1 vp8_short_idct4x4llm_1_neon
50
51 #undef  vp8_idct_idct16
52 #define vp8_idct_idct16 vp8_short_idct4x4llm_neon
53
54 #undef  vp8_idct_idct1_scalar_add
55 #define vp8_idct_idct1_scalar_add vp8_dc_only_idct_add_neon
56
57 #undef  vp8_idct_iwalsh1
58 #define vp8_idct_iwalsh1 vp8_short_inv_walsh4x4_1_neon
59
60 #undef  vp8_idct_iwalsh16
61 #define vp8_idct_iwalsh16 vp8_short_inv_walsh4x4_neon
62 #endif
63 #endif
64
65 #endif