OLD | NEW |
| (Empty) |
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 VP9_COMMON_X86_VP9_POSTPROC_X86_H_ | |
13 #define VP9_COMMON_X86_VP9_POSTPROC_X86_H_ | |
14 | |
15 #ifdef __cplusplus | |
16 extern "C" { | |
17 #endif | |
18 | |
19 /* Note: | |
20 * | |
21 * This platform is commonly built for runtime CPU detection. If you modify | |
22 * any of the function mappings present in this file, be sure to also update | |
23 * them in the function pointer initialization code | |
24 */ | |
25 | |
26 #if HAVE_MMX | |
27 extern prototype_postproc_inplace(vp9_mbpost_proc_down_mmx); | |
28 extern prototype_postproc(vp9_post_proc_down_and_across_mmx); | |
29 extern prototype_postproc_addnoise(vp9_plane_add_noise_mmx); | |
30 | |
31 #if !CONFIG_RUNTIME_CPU_DETECT | |
32 #undef vp9_postproc_down | |
33 #define vp9_postproc_down vp9_mbpost_proc_down_mmx | |
34 | |
35 #undef vp9_postproc_downacross | |
36 #define vp9_postproc_downacross vp9_post_proc_down_and_across_mmx | |
37 | |
38 #undef vp9_postproc_addnoise | |
39 #define vp9_postproc_addnoise vp9_plane_add_noise_mmx | |
40 | |
41 #endif | |
42 #endif | |
43 | |
44 | |
45 #if HAVE_SSE2 | |
46 extern prototype_postproc_inplace(vp9_mbpost_proc_down_xmm); | |
47 extern prototype_postproc_inplace(vp9_mbpost_proc_across_ip_xmm); | |
48 extern prototype_postproc(vp9_post_proc_down_and_across_xmm); | |
49 extern prototype_postproc_addnoise(vp9_plane_add_noise_wmt); | |
50 | |
51 #if !CONFIG_RUNTIME_CPU_DETECT | |
52 #undef vp9_postproc_down | |
53 #define vp9_postproc_down vp9_mbpost_proc_down_xmm | |
54 | |
55 #undef vp9_postproc_across | |
56 #define vp9_postproc_across vp9_mbpost_proc_across_ip_xmm | |
57 | |
58 #undef vp9_postproc_downacross | |
59 #define vp9_postproc_downacross vp9_post_proc_down_and_across_xmm | |
60 | |
61 #undef vp9_postproc_addnoise | |
62 #define vp9_postproc_addnoise vp9_plane_add_noise_wmt | |
63 | |
64 | |
65 #endif | |
66 #endif | |
67 | |
68 #ifdef __cplusplus | |
69 } // extern "C" | |
70 #endif | |
71 | |
72 #endif // VP9_COMMON_X86_VP9_POSTPROC_X86_H_ | |
OLD | NEW |