Merge "Skip computation of distortion in vp8_pick_inter_mode if active_map is used"
[libvpx.git] / vp8 / encoder / x86 / quantize_x86.h
blobbbe475f8cc79065cc19566051bca5e2f67ee6be8
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 and patent
5 * grant that can be found in the LICENSE file in the root of the source
6 * tree. All contributing project authors may be found in the AUTHORS
7 * file in the root of the source tree.
8 */
10 #ifndef QUANTIZE_X86_H
11 #define QUANTIZE_X86_H
14 /* Note:
16 * This platform is commonly built for runtime CPU detection. If you modify
17 * any of the function mappings present in this file, be sure to also update
18 * them in the function pointer initialization code
20 #if HAVE_MMX
22 #endif /* HAVE_MMX */
25 #if HAVE_SSE2
26 extern prototype_quantize_block(vp8_regular_quantize_b_sse2);
27 extern prototype_quantize_block(vp8_fast_quantize_b_sse2);
29 #if !CONFIG_RUNTIME_CPU_DETECT
31 #undef vp8_quantize_quantb
32 #define vp8_quantize_quantb vp8_regular_quantize_b_sse2
34 #undef vp8_quantize_fastquantb
35 #define vp8_quantize_fastquantb vp8_fast_quantize_b_sse2
37 #endif /* !CONFIG_RUNTIME_CPU_DETECT */
39 #endif /* HAVE_SSE2 */
42 #if HAVE_SSSE3
43 extern prototype_quantize_block(vp8_fast_quantize_b_ssse3);
45 #if !CONFIG_RUNTIME_CPU_DETECT
47 #undef vp8_quantize_fastquantb
48 #define vp8_quantize_fastquantb vp8_fast_quantize_b_ssse3
50 #endif /* !CONFIG_RUNTIME_CPU_DETECT */
52 #endif /* HAVE_SSSE3 */
55 #if HAVE_SSE4_1
56 extern prototype_quantize_block(vp8_regular_quantize_b_sse4);
58 #if !CONFIG_RUNTIME_CPU_DETECT
60 #undef vp8_quantize_quantb
61 #define vp8_quantize_quantb vp8_regular_quantize_b_sse4
63 #endif /* !CONFIG_RUNTIME_CPU_DETECT */
65 #endif /* HAVE_SSE4_1 */
67 #endif /* QUANTIZE_X86_H */