Utilisation des routines mathématiques fastmath
Remonter à fastmath.h
Fichier d'en-tête
fastmath.h
Catégorie
Routine Math
Description
Les routines FastMath sont des routines mathématiques à performances élevées qui ne vérifient pas la plupart des conditions d'erreur et n'appellent jamais matherr. Elles sont codées pour une vitesse maximale. Ces fonctions ne sont jamais exportées depuis la RTLDLL, ce qui signifie qu'elles sont toujours liées directement dans le fichier PE qui est créé.
Lorsque vous incluez fastmath.h, les fonctions mathématiques suivantes sont remappées en fonctions fastmath.
Routine Math |
Routine Fastmath |
Routine Math |
Routine Fastmath |
acos |
_fm_acos |
asin |
_fm_asin |
atan |
_fm_atan |
atan2 |
_fm_atan2 |
cos |
_fm_cos |
cosh |
_fm_cosh |
exp |
_fm_exp |
fabs |
_fm_fabs |
asin |
_fm_asin |
atan |
_fm_atan |
atan2 |
_fm_atan2 |
cos |
_fm_cos |
cosh |
_fm_cosh |
exp |
_fm_exp |
fabs |
_fm_fabs |
frexp |
_fm_frexp |
hypot |
_fm_hypot |
ldexp |
_fm_ldexp |
log |
_fm_log |
log10 |
_fm_log10 |
sin |
_fm_sin |
sinh |
_fm_sinh |
sqrt |
_fm_sqr |
tan |
_fm_tan |
tanh |
_fm_tanh |
sincos |
_fm_sincos |
acosl |
_fm_acosl |
asinl |
_fm_asinl |
atan2l |
_fm_atan2l |
atanl |
_fm_atanl |
coshl |
_fm_coshl |
cosl |
_fm_cosl |
expl |
_fm_expl |
fabsl |
_fm_fabsl |
frexpl |
_fm_frexpl |
hypotl |
_fm_hypotl |
ldexpl |
_fm_ldexpl |
log10l |
_fm_log10l |
logl |
_fm_logl |
sinhl |
_fm_sinhl |
sinl |
_fm_sinl |
sqrtl |
_fm_sqrtl |
tanhl |
_fm_tanhl |
tanl |
_fm_tanl |
sincosl |
_fm_sincosl |
atanhl |
_fm_atanhl |
acoshl |
_fm_acoshl |
asinhl |
_fm_asinhl |
Si vous ne voulez pas que les noms des fonctions C standard soient remappées en versions FastMath, définissez alors _FM_NO_REMAP. Les routines FastMath peuvent toujours être appelées avec leurs noms _fm_xxx.
Les fonctions supplémentaires suivantes sont disponibles dans FastMath ; elles ne sont pas directement supportées dans la RTL normale :
void _FMAPI _fm_sincos(double __a, double *__x, double *__y);
void _FMAPI _fm_sincosl(long double __a, long double *__x, long double *__y);
long double _FMAPI _fm_atanhl (long double __x);
long double _FMAPI _fm_acoshl (long double __x);
long double _FMAPI _fm_asinhl (long double __x);
__inline void _fm_fwait(void)
unsigned int _FMAPI _fm_init(void);
_fm_fwait est une fonction inline spéciale qui exécute une instruction FWAIT intrinsèque.
_Fm_init est une fonction qui peut être appelée pour masquer toutes les exceptions fpu avant d'utiliser les routines FastMath.