vp9_idct_arm.h 1.95 KB
Newer Older
John Koleszar's avatar
John Koleszar committed
1
/*
2
 *  Copyright (c) 2010 The WebM project authors. All Rights Reserved.
John Koleszar's avatar
John Koleszar committed
3
 *
4
 *  Use of this source code is governed by a BSD-style license
5
6
 *  that can be found in the LICENSE file in the root of the source
 *  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.
John Koleszar's avatar
John Koleszar committed
9
10
11
 */


12
13
#ifndef VP9_COMMON_ARM_VP9_IDCT_ARM_H_
#define VP9_COMMON_ARM_VP9_IDCT_ARM_H_
John Koleszar's avatar
John Koleszar committed
14
15

#if HAVE_ARMV6
16
17
18
19
20
extern prototype_idct(vp9_short_idct4x4llm_1_v6);
extern prototype_idct(vp9_short_idct4x4llm_v6_dual);
extern prototype_idct_scalar_add(vp9_dc_only_idct_add_v6);
extern prototype_second_order(vp9_short_inv_walsh4x4_1_v6);
extern prototype_second_order(vp9_short_inv_walsh4x4_v6);
John Koleszar's avatar
John Koleszar committed
21

22
#if !CONFIG_RUNTIME_CPU_DETECT
23
24
#undef  vp9_idct_idct1
#define vp9_idct_idct1 vp9_short_idct4x4llm_1_v6
John Koleszar's avatar
John Koleszar committed
25

26
27
#undef  vp9_idct_idct16
#define vp9_idct_idct16 vp9_short_idct4x4llm_v6_dual
John Koleszar's avatar
John Koleszar committed
28

29
30
#undef  vp9_idct_idct1_scalar_add
#define vp9_idct_idct1_scalar_add vp9_dc_only_idct_add_v6
Johann's avatar
Johann committed
31

John Koleszar's avatar
John Koleszar committed
32
#undef  vp8_idct_iwalsh1
33
#define vp8_idct_iwalsh1 vp9_short_inv_walsh4x4_1_v6
John Koleszar's avatar
John Koleszar committed
34
35

#undef  vp8_idct_iwalsh16
36
#define vp8_idct_iwalsh16 vp9_short_inv_walsh4x4_v6
John Koleszar's avatar
John Koleszar committed
37
#endif
38
#endif
John Koleszar's avatar
John Koleszar committed
39
40

#if HAVE_ARMV7
41
42
43
44
45
extern prototype_idct(vp9_short_idct4x4llm_1_neon);
extern prototype_idct(vp9_short_idct4x4llm_neon);
extern prototype_idct_scalar_add(vp9_dc_only_idct_add_neon);
extern prototype_second_order(vp9_short_inv_walsh4x4_1_neon);
extern prototype_second_order(vp9_short_inv_walsh4x4_neon);
John Koleszar's avatar
John Koleszar committed
46

47
#if !CONFIG_RUNTIME_CPU_DETECT
48
49
#undef  vp9_idct_idct1
#define vp9_idct_idct1 vp9_short_idct4x4llm_1_neon
John Koleszar's avatar
John Koleszar committed
50

51
52
#undef  vp9_idct_idct16
#define vp9_idct_idct16 vp9_short_idct4x4llm_neon
John Koleszar's avatar
John Koleszar committed
53

54
55
#undef  vp9_idct_idct1_scalar_add
#define vp9_idct_idct1_scalar_add vp9_dc_only_idct_add_neon
Johann's avatar
Johann committed
56

John Koleszar's avatar
John Koleszar committed
57
#undef  vp8_idct_iwalsh1
58
#define vp8_idct_iwalsh1 vp9_short_inv_walsh4x4_1_neon
John Koleszar's avatar
John Koleszar committed
59
60

#undef  vp8_idct_iwalsh16
61
#define vp8_idct_iwalsh16 vp9_short_inv_walsh4x4_neon
John Koleszar's avatar
John Koleszar committed
62
#endif
63
#endif
John Koleszar's avatar
John Koleszar committed
64
65

#endif