cpu_capabilities (3) Linux Manual Page
cpu_capabilities – Contains the capability flags of the CPU. Allegro game programming library.
Synopsis
#include <allegro.h> extern int cpu_capabilities;
Description
Contains CPU flags indicating what features are available on the current CPU. The flags can be any combination of these:
CPU_ID – Indicates that the "cpuid" instruction isYou can check for multiple features by OR-ing the flags together. For example, to check if the CPU has an FPU and MMX instructions available, you’d do:
available. If this is set, then all Allegro CPU
variables are 100% reliable, otherwise there
may be some mistakes.
CPU_FPU – An FPU is available.
CPU_IA64 – Running on Intel 64 bit CPU
CPU_AMD64 – Running on AMD 64 bit CPU
CPU_MMX – Intel MMX instruction set is available.
CPU_MMXPLUS – Intel MMX+ instruction set is available.
CPU_SSE – Intel SSE instruction set is available.
CPU_SSE2 – Intel SSE2 instruction set is available.
CPU_SSE3 – Intel SSE3 instruction set is available.
CPU_3DNOW – AMD 3DNow! instruction set is available.
CPU_ENH3DNOW – AMD Enhanced 3DNow! instruction set is
available.
CPU_CMOV – Pentium Pro "cmov" instruction is available.
if ((cpu_capabilities & (CPU_FPU | CPU_MMX)) ==You can read this variable after you have called check_cpu() (which is automatically called by allegro_init()).
(CPU_FPU | CPU_MMX)) {
printf("CPU has both an FPU and MMX instructions!\n");
}
