plucky (3) cpu_capabilities.3alleg4.gz

Provided by: allegro4-doc_4.4.3.1-5_all bug

NAME

       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 is
                         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.

       You 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:

          if ((cpu_capabilities & (CPU_FPU | CPU_MMX)) ==
              (CPU_FPU | CPU_MMX)) {
             printf("CPU has both an FPU and MMX instructions!\n");
          }

       You  can  read  this  variable  after  you  have  called  check_cpu()  (which  is automatically called by
       allegro_init()).

SEE ALSO

       check_cpu(3alleg4),         cpu_vendor(3alleg4),         cpu_family(3alleg4),         cpu_model(3alleg4),
       cpu_capabilities(3alleg4), allegro_init(3alleg4)