Skip site navigation (1)Skip section navigation (2)

FreeBSD Manual Pages

  
 
  

home | help
cpu_capabilities(3)		 Allegro manual 	     cpu_capabilities(3)

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 ex-
     ample, 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  au-
     tomatically called by allegro_init()).

SEE ALSO
     check_cpu(3),  cpu_vendor(3),  cpu_family(3),  cpu_model(3),  cpu_capabili-
     ties(3), allegro_init(3)

Allegro 			  version 4.4.3 	     cpu_capabilities(3)

Want to link to this manual page? Use this URL:
<https://man.freebsd.org/cgi/man.cgi?query=cpu_capabilities&sektion=3&manpath=FreeBSD+Ports+15.1.quarterly>

home | help