• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
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 VARIANCE_ARM_H
13 #define VARIANCE_ARM_H
14 
15 #if HAVE_ARMV7
16 extern prototype_sad(vp8_sad4x4_neon);
17 extern prototype_sad(vp8_sad8x8_neon);
18 extern prototype_sad(vp8_sad8x16_neon);
19 extern prototype_sad(vp8_sad16x8_neon);
20 extern prototype_sad(vp8_sad16x16_neon);
21 
22 //extern prototype_variance(vp8_variance4x4_c);
23 extern prototype_variance(vp8_variance8x8_neon);
24 extern prototype_variance(vp8_variance8x16_neon);
25 extern prototype_variance(vp8_variance16x8_neon);
26 extern prototype_variance(vp8_variance16x16_neon);
27 
28 //extern prototype_subpixvariance(vp8_sub_pixel_variance4x4_c);
29 extern prototype_subpixvariance(vp8_sub_pixel_variance8x8_neon);
30 //extern prototype_subpixvariance(vp8_sub_pixel_variance8x16_c);
31 //extern prototype_subpixvariance(vp8_sub_pixel_variance16x8_c);
32 extern prototype_subpixvariance(vp8_sub_pixel_variance16x16_neon);
33 extern prototype_variance(vp8_variance_halfpixvar16x16_h_neon);
34 extern prototype_variance(vp8_variance_halfpixvar16x16_v_neon);
35 extern prototype_variance(vp8_variance_halfpixvar16x16_hv_neon);
36 
37 //extern prototype_getmbss(vp8_get_mb_ss_c);
38 extern prototype_variance(vp8_mse16x16_neon);
39 extern prototype_sad(vp8_get16x16pred_error_neon);
40 //extern prototype_variance2(vp8_get8x8var_c);
41 //extern prototype_variance2(vp8_get16x16var_c);
42 extern prototype_sad(vp8_get4x4sse_cs_neon);
43 
44 #if !CONFIG_RUNTIME_CPU_DETECT
45 #undef  vp8_variance_sad4x4
46 #define vp8_variance_sad4x4 vp8_sad4x4_neon
47 
48 #undef  vp8_variance_sad8x8
49 #define vp8_variance_sad8x8 vp8_sad8x8_neon
50 
51 #undef  vp8_variance_sad8x16
52 #define vp8_variance_sad8x16 vp8_sad8x16_neon
53 
54 #undef  vp8_variance_sad16x8
55 #define vp8_variance_sad16x8 vp8_sad16x8_neon
56 
57 #undef  vp8_variance_sad16x16
58 #define vp8_variance_sad16x16 vp8_sad16x16_neon
59 
60 //#undef  vp8_variance_var4x4
61 //#define vp8_variance_var4x4 vp8_variance4x4_c
62 
63 #undef  vp8_variance_var8x8
64 #define vp8_variance_var8x8 vp8_variance8x8_neon
65 
66 #undef  vp8_variance_var8x16
67 #define vp8_variance_var8x16 vp8_variance8x16_neon
68 
69 #undef  vp8_variance_var16x8
70 #define vp8_variance_var16x8 vp8_variance16x8_neon
71 
72 #undef  vp8_variance_var16x16
73 #define vp8_variance_var16x16 vp8_variance16x16_neon
74 
75 //#undef  vp8_variance_subpixvar4x4
76 //#define vp8_variance_subpixvar4x4 vp8_sub_pixel_variance4x4_c
77 
78 #undef  vp8_variance_subpixvar8x8
79 #define vp8_variance_subpixvar8x8 vp8_sub_pixel_variance8x8_neon
80 
81 //#undef  vp8_variance_subpixvar8x16
82 //#define vp8_variance_subpixvar8x16 vp8_sub_pixel_variance8x16_c
83 
84 //#undef  vp8_variance_subpixvar16x8
85 //#define vp8_variance_subpixvar16x8 vp8_sub_pixel_variance16x8_c
86 
87 #undef  vp8_variance_subpixvar16x16
88 #define vp8_variance_subpixvar16x16 vp8_sub_pixel_variance16x16_neon
89 
90 #undef  vp8_variance_halfpixvar16x16_h
91 #define vp8_variance_halfpixvar16x16_h vp8_variance_halfpixvar16x16_h_neon
92 
93 #undef  vp8_variance_halfpixvar16x16_v
94 #define vp8_variance_halfpixvar16x16_v vp8_variance_halfpixvar16x16_v_neon
95 
96 #undef  vp8_variance_halfpixvar16x16_hv
97 #define vp8_variance_halfpixvar16x16_hv vp8_variance_halfpixvar16x16_hv_neon
98 
99 //#undef  vp8_variance_getmbss
100 //#define vp8_variance_getmbss vp8_get_mb_ss_c
101 
102 #undef  vp8_variance_mse16x16
103 #define vp8_variance_mse16x16 vp8_mse16x16_neon
104 
105 #undef  vp8_variance_get16x16prederror
106 #define vp8_variance_get16x16prederror vp8_get16x16pred_error_neon
107 
108 //#undef  vp8_variance_get8x8var
109 //#define vp8_variance_get8x8var vp8_get8x8var_c
110 
111 //#undef  vp8_variance_get16x16var
112 //#define vp8_variance_get16x16var vp8_get16x16var_c
113 
114 #undef  vp8_variance_get4x4sse_cs
115 #define vp8_variance_get4x4sse_cs vp8_get4x4sse_cs_neon
116 #endif
117 
118 #endif
119 
120 #endif
121