Provided by:
manpages-fr-extra_20080618_all 
NOM
OPENSSL_ia32cap - Trouver les capacites des processeurs IA-32
SYNOPSIS
unsigned long *OPENSSL_ia32cap_loc(void);
#define OPENSSL_ia32cap (*(OPENSSL_ia32cap_loc()))
DESCRIPTION
La valeur renvoyee par OPENSSL_ia32cap_loc() est l’adresse d’une
variable qui contient les capacite d’un processeur IA-32 sous la forme
d’un vecteur de bits comme elles apparaissent dans le registre EDX
apres avoir execute l’instruction CPUID avec la valeur d’entree EAX=1
(consultez la note applicative d’Intel #241618). Naturellement, ceci
n’a de sens que pour les plates-formes IA-32[E]. La variable est
normalement definie automatiquement lors de l’initialisation de la
boite a outils, mais peut etre manipulee plus tard pour changer le
comportement de la bibliotheque cryptographique. A ce jour, trois bits
sont significatifs, a savoir le bit #28 qui indique l’Hyperthreading,
utilise pour distinguer les coeurs Intel P4, le bit #26 qui indique la
gestion SSE2, et le bit #4 qui indique la presence d’un compteur
d’horodatage. Par exemple, la suppression du bit #26 a l’execution
desactivera l’utilisation du code optimise pour SSE2 dans la
bibliotheque cryptographique. Vous pouvez avoir besoin de faire ceci si
la cible est un CPU SSE2, mais que le systeme d’exploitation ne gere
pas les extensions SSE2. Meme s’il est possible de modifier la valeur
par programmation, il sera surement plus simple de definir une variable
d’environnement du meme nom avant d’executer l’application, par exemple
X env OPENSSL_ia32cap=0x10 apps/openssl X, pour obtenir le meme
resultat sans avoir a modifier le code source de l’application. Vous
pouvez egalement reconfigurer la boite a outils avec l’option no-sse2
et recompiler.