clarify *_offsets.asm differences
[libvpx.git] / vp8 / common / x86 / idct_x86.h
blobf6e568cdcddb1a03b13b8e26f3763adcef418f97
1 /*
2 * Copyright (c) 2010 The WebM project authors. All Rights Reserved.
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 */
12 #ifndef IDCT_X86_H
13 #define IDCT_X86_H
15 /* Note:
17 * This platform is commonly built for runtime CPU detection. If you modify
18 * any of the function mappings present in this file, be sure to also update
19 * them in the function pointer initialization code
22 #if HAVE_MMX
23 extern prototype_idct(vp8_short_idct4x4llm_1_mmx);
24 extern prototype_idct(vp8_short_idct4x4llm_mmx);
25 extern prototype_idct_scalar_add(vp8_dc_only_idct_add_mmx);
27 extern prototype_second_order(vp8_short_inv_walsh4x4_mmx);
28 extern prototype_second_order(vp8_short_inv_walsh4x4_1_mmx);
30 #if !CONFIG_RUNTIME_CPU_DETECT
31 #undef vp8_idct_idct1
32 #define vp8_idct_idct1 vp8_short_idct4x4llm_1_mmx
34 #undef vp8_idct_idct16
35 #define vp8_idct_idct16 vp8_short_idct4x4llm_mmx
37 #undef vp8_idct_idct1_scalar_add
38 #define vp8_idct_idct1_scalar_add vp8_dc_only_idct_add_mmx
40 #undef vp8_idct_iwalsh16
41 #define vp8_idct_iwalsh16 vp8_short_inv_walsh4x4_mmx
43 #undef vp8_idct_iwalsh1
44 #define vp8_idct_iwalsh1 vp8_short_inv_walsh4x4_1_mmx
46 #endif
47 #endif
49 #if HAVE_SSE2
51 extern prototype_second_order(vp8_short_inv_walsh4x4_sse2);
53 #if !CONFIG_RUNTIME_CPU_DETECT
55 #undef vp8_idct_iwalsh16
56 #define vp8_idct_iwalsh16 vp8_short_inv_walsh4x4_sse2
58 #endif
60 #endif
64 #endif