58b466f8d2e88c1bbc4b420c72e0ec82c72fe0e8
[alexxy/gromacs.git] / include / x86_cpu.h
1 #ifndef _x86_cpu_h
2 #define _x86_cpu_h
3
4 #ifdef HAVE_CONFIG_H
5 #include <config.h>
6 #endif
7
8 extern int cpu_capabilities;
9 #define UNKNOWN_CPU           0
10
11 #if (defined USE_SSE || defined USE_3DNOW)
12
13 #define VENDOR_AMD   0x68747541
14 #define VENDOR_INTEL 0x756e6547
15 #define FLAGS_SUPPORT_SSE 0x02000000
16 #define FLAGS_SUPPORT_EXT_3DNOW 0xc0000000
17 /* Flags for x86 and future processor capabilities */
18 #define X86_CPU               1
19 #define X86_SSE_SUPPORT       (1 << 1)
20 #define X86_3DNOW_SUPPORT     (1 << 2)
21
22 #include <x86_sse.h>
23 #include <x86_3dnow.h>
24
25 int check_x86cpu(FILE *log);
26
27 /* Assembly routines in gmxcpuid.s */
28 void x86_cpuid(int,unsigned long *,unsigned long *,unsigned long *,unsigned long *);
29
30 #endif
31
32 #endif