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 RECON_X86_H 13 #define RECON_X86_H 14 15 /* Note: 16 * 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 20 */ 21 22 #if HAVE_MMX 23 extern prototype_recon_block(vp8_recon_b_mmx); 24 extern prototype_copy_block(vp8_copy_mem8x8_mmx); 25 extern prototype_copy_block(vp8_copy_mem8x4_mmx); 26 extern prototype_copy_block(vp8_copy_mem16x16_mmx); 27 28 29 #if !CONFIG_RUNTIME_CPU_DETECT 30 #undef vp8_recon_recon 31 #define vp8_recon_recon vp8_recon_b_mmx 32 33 #undef vp8_recon_copy8x8 34 #define vp8_recon_copy8x8 vp8_copy_mem8x8_mmx 35 36 #undef vp8_recon_copy8x4 37 #define vp8_recon_copy8x4 vp8_copy_mem8x4_mmx 38 39 #undef vp8_recon_copy16x16 40 #define vp8_recon_copy16x16 vp8_copy_mem16x16_mmx 41 42 #endif 43 #endif 44 45 #if HAVE_SSE2 46 extern prototype_recon_block(vp8_recon2b_sse2); 47 extern prototype_recon_block(vp8_recon4b_sse2); 48 extern prototype_copy_block(vp8_copy_mem16x16_sse2); 49 50 #if !CONFIG_RUNTIME_CPU_DETECT 51 #undef vp8_recon_recon2 52 #define vp8_recon_recon2 vp8_recon2b_sse2 53 54 #undef vp8_recon_recon4 55 #define vp8_recon_recon4 vp8_recon4b_sse2 56 57 #undef vp8_recon_copy16x16 58 #define vp8_recon_copy16x16 vp8_copy_mem16x16_sse2 59 60 #endif 61 #endif 62 #endif 63