Provided by:
manpages-fr-extra_20080921_all 
NOM
OPENSSL_ia32cap - Trouver les capacitA~Xs des processeurs IA-32
SYNOPSIS
unsigned long *OPENSSL_ia32cap_loc(void);
#define OPENSSL_ia32cap (*(OPENSSL_ia32cap_loc()))
DESCRIPTION
La valeur renvoyA~Xe par OPENSSL_ia32cap_loc() est l’adresse d’une
variable qui contient les capacitA~X d’un processeur IA-32 sous la
forme d’un vecteur de bits comme elles apparaissent dans le registre
EDX aprA~Xs avoir exA~XcutA~X l’instruction CPUID avec la valeur
d’entrA~Xe 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 dA~Xfinie automatiquement lors de
l’initialisation de la boA~Xte A~ outils, mais peut A~Xtre manipulA~Xe
plus tard pour changer le comportement de la bibliothA~Xque
cryptographique. A~X ce jour, trois bits sont significatifs, A~ savoir
le bit #28 qui indique l’Hyperthreading, utilisA~X pour distinguer les
coeurs Intel P4, le bit #26 qui indique la gestion SSE2, et le bit #4
qui indique la prA~Xsence d’un compteur d’horodatage. Par exemple, la
suppression du bit #26 A~ l’exA~Xcution dA~Xsactivera l’utilisation du
code optimisA~X pour SSE2 dans la bibliothA~Xque cryptographique. Vous
pouvez avoir besoin de faire ceci si la cible est un CPU SSE2, mais que
le systA~Xme d’exploitation ne gA~Xre pas les extensions SSE2. MA~Xme
s’il est possible de modifier la valeur par programmation, il sera
sA~Xrement plus simple de dA~Xfinir une variable d’environnement du
mA~Xme nom avant d’exA~Xcuter l’application, par exemple AX env
OPENSSL_ia32cap=0x10 apps/openssl AX, pour obtenir le mA~Xme rA~Xsultat
sans avoir A~ modifier le code source de l’application. Vous pouvez
A~Xgalement reconfigurer la boA~Xte A~ outils avec l’option no-sse2 et
recompiler.