Mercurial > mplayer.hg
annotate mmx_defs.h @ 13080:1392db522369
updates by Sebastian Kr¸«£mer <mail@skraemer.de>
author | diego |
---|---|
date | Sun, 22 Aug 2004 14:34:37 +0000 |
parents | e9bd97d5c5cc |
children |
rev | line source |
---|---|
2516 | 1 /* |
2 This file contains most common definitions to make MMX stuff | |
3 easy portable between different kinds of mmx clones | |
4 Written By Nick Kurshev <nickols_k@mail.ru> | |
5 */ | |
6 | |
7 #ifndef MMXDEFS_INCLUDED | |
8 #define MMXDEFS_INCLUDED | |
9 | |
10 #include "config.h" | |
11 | |
12 #undef HAVE_MMX1 | |
13 #if defined(HAVE_MMX) && !defined(HAVE_MMX2) && !defined(HAVE_3DNOW) && !defined(HAVE_SSE) | |
14 #define HAVE_MMX1 | |
15 #endif | |
16 | |
17 #undef HAVE_K6_2PLUS | |
18 #if !defined( HAVE_MMX2 ) && defined( HAVE_3DNOW ) | |
19 #define HAVE_K6_2PLUS | |
20 #endif | |
21 | |
22 #ifdef HAVE_SSE2 | |
23 #define MMREG_SIZE 16 | |
24 #else | |
25 #define MMREG_SIZE 8 | |
26 #endif | |
27 | |
28 #ifdef HAVE_3DNOW | |
29 #define PREFETCH "prefetch" | |
30 #define PREFETCHW "prefetchw" | |
2551 | 31 #define PAVGB "pavgusb" |
2516 | 32 #elif defined ( HAVE_MMX2 ) |
33 #define PREFETCH "prefetchnta" | |
34 #define PREFETCHW "prefetcht0" | |
2551 | 35 #define PAVGB "pavgb" |
2516 | 36 #else |
37 #define PREFETCH "/nop" | |
38 #define PREFETCHW "/nop" | |
39 #endif | |
40 | |
2551 | 41 #ifdef HAVE_3DNOW |
2516 | 42 /* On K6 femms is faster of emms. On K7 femms is directly mapped on emms. */ |
43 #define EMMS "femms" | |
44 #else | |
45 #define EMMS "emms" | |
46 #endif | |
47 | |
48 #ifdef HAVE_MMX2 | |
49 #define MOVNTQ "movntq" | |
50 #define SFENCE "sfence" | |
51 #else | |
52 #define MOVNTQ "movq" | |
53 #define SFENCE "/nop" | |
54 #endif | |
55 | |
56 | |
6335
e9bd97d5c5cc
warning & newline fixes by Dominik Mierzejewski <dominik@rangers.eu.org>
arpi
parents:
2551
diff
changeset
|
57 #endif |