Vector Builtin 数学関数一覧¶
コンパイラがループを自動ベクトル化した際に使用するsin、cosなどの数学関数をベクトル型を引数として直接呼び出すことができます。
math.hに対応する関数群¶
関数のプロトタイプ宣言 |
対応する関数 |
---|---|
void __builtin_vec_acos(vector dest, vector src[, __vm mask][, int vl]) |
double acos(double) |
void __builtin_vec_acosf(vector dest, vector src [, __vm mask][, int vl]) |
float acosf(float) |
void __builtin_vec_acosh(vector dest, vector src [, __vm mask][, int vl]) |
double acosh(double) |
void __builtin_vec_acoshf(vector dest, vector src [, __vm mask][, int vl]) |
float acoshf(float) |
void __builtin_vec_asin(vector dest, vector src [, __vm mask][, int vl]) |
double asin(double) |
void __builtin_vec_asinf(vector dest, vector src [, __vm mask][, int vl]) |
float asinf(float) |
void __builtin_vec_asinh(vector dest, vector src [, __vm mask][, int vl]) |
double asinh(double) |
void __builtin_vec_asinhf(vector dest, vector src [, __vm mask][, int vl]) |
float asinhf(float) |
void __builtin_vec_atan(vector dest, vector src [, __vm mask][, int vl]) |
double atan(double) |
void __builtin_vec_atan2(vector dest, vector src1, vector src2 [, __vm mask][, int vl]) |
double atan2(double, double) |
void __builtin_vec_atan2f(vector dest, vector src1, vector src2 [, __vm mask][, int vl]) |
float atan2(float, float) |
void __builtin_vec_atanf(vector dest, vector src [, __vm mask][, int vl]) |
float atanf(float) |
void __builtin_vec_atanh(vector dest, vector src [, __vm mask][, int vl]) |
double atanh(double) |
void __builtin_vec_atanhf(vector dest, vector src [, __vm mask][, int vl]) |
float atanhf(float) |
void __builtin_vec_cbrt(vector dest, vector src [, __vm mask][, int vl]) |
double cbrt(double) |
void __builtin_vec_cbrtf(vector dest, vector src [, __vm mask][, int vl]) |
float cbrtf(float) |
void __builtin_vec_cos(vector dest, vector src [, __vm mask][, int vl]) |
double cos(double) |
void __builtin_vec_cosd(vector dest, vector src [, __vm mask][, int vl]) |
double cosd(double) |
void __builtin_vec_cosdf(vector dest, vector src [, __vm mask][, int vl]) |
float cosdf(float) |
void __builtin_vec_cosf(vector dest, vector src [, __vm mask][, int vl]) |
float cosf(float) |
void __builtin_vec_cosh(vector dest, vector src [, __vm mask][, int vl]) |
double cosh(double) |
void __builtin_vec_coshf(vector dest, vector src [, __vm mask][, int vl]) |
float coshf(float) |
void __builtin_vec_cotan(vector dest, vector src [, __vm mask][, int vl]) |
double cotan(double) |
void __builtin_vec_cotanf(vector dest, vector src [, __vm mask][, int vl]) |
float cotanf(float) |
void __builtin_vec_erf(vector dest, vector src [, __vm mask][, int vl]) |
double erf(double) |
void __builtin_vec_erfc(vector dest, vector src [, __vm mask][, int vl]) |
double erfc(double) |
void __builtin_vec_erfcf(vector dest, vector src [, __vm mask][, int vl]) |
float erfcf(float) |
void __builtin_vec_erff(vector dest, vector src [, __vm mask][, int vl]) |
float erff(float) |
void __builtin_vec_exp(vector dest, vector src [, __vm mask][, int vl]) |
double exp(double) |
void __builtin_vec_exp10(vector dest, vector src [, __vm mask][, int vl]) |
double exp10(double) |
void __builtin_vec_exp10f(vector dest, vector src [, __vm mask][, int vl]) |
float exp10f(float) |
void __builtin_vec_expc10(vector dest, vector src [, __vm mask][, int vl]) |
double expc10(double) |
void __builtin_vec_expc10f(vector dest, vector src [, __vm mask][, int vl]) |
float expc10f(float) |
void __builtin_vec_expc2(vector dest, vector src [,__vm mask][, int vl]) |
double expc2(double) |
void __builtin_vec_expc2f(vector dest, vector src [, __vm mask][, int vl]) |
float expc2f(float) |
void __builtin_vec_exp2(vector dest, vector src [, __vm mask][, int vl]) |
double exp2(double) |
void __builtin_vec_exp2f(vector dest, vector src [, __vm mask][, int vl]) |
float exp2f(float) |
void __builtin_vec_expf(vector dest, vector src [, __vm mask][, int vl]) |
float expf(float) |
void __builtin_vec_expm1(vector dest, vector src [, __vm mask][, int vl]) |
double expm1(double) |
void __builtin_vec_expm1f(vector dest, vector src [, __vm mask][, int vl]) |
float expm1f(float) |
void __builtin_vec_gamma(vector dest, vector src [, __vm mask][, int vl]) |
double gamma(double) |
void __builtin_vec_gammaf(vector dest, vector src [, __vm mask][, int vl]) |
float gammaf(float) |
void __builtin_vec_lgamma(vector dest, vector src [, __vm mask][, int vl]) |
double lgamma(double) |
void __builtin_vec_lgammaf(vector dest, vector src [, __vm mask][, int vl]) |
float lgammaf(float) |
void __builtin_vec_log(vector dest, vector src [, __vm mask][, int vl]) |
double log(double) |
void __builtin_vec_log10(vector dest, vector src [, __vm mask][, int vl]) |
double log10(double) |
void __builtin_vec_log10f(vector dest, vector src [, __vm mask][, int vl]) |
float log10f(float) |
void __builtin_vec_log2(vector dest, vector src [, __vm mask][, int vl]) |
double log2(double) |
void __builtin_vec_log2f(vector dest, vector src [, __vm mask][, int vl]) |
float log2f(float) |
void __builtin_vec_logf(vector dest, vector src [, __vm mask][, int vl]) |
float logf(float) |
void __builtin_vec_pow(vector dest, vector src1, vector src2 [, __vm mask][, int vl]) |
double pow(double) |
void __builtin_vec_powf(vector dest, vector src1, vector src2 [, __vm mask][, int vl]) |
float powf(float) |
void __builtin_vec_rsqrt(vector dest, vector src [, __vm mask][, int vl]) |
double rsqrt(double) |
void __builtin_vec_rsqrtf(vector dest, vector src [, __vm mask][, int vl]) |
float rsqrtf(float) |
void __builtin_vec_sin(vector dest, vector src [, __vm mask][, int vl]) |
double sin(double) |
void __builtin_vec_sind(vector dest, vector src [, __vm mask][, int vl]) |
double sind(double) |
void __builtin_vec_sindf(vector dest, vector src [, __vm mask][, int vl]) |
float sindf(float) |
void __builtin_vec_sinf(vector dest, vector src [, __vm mask][, int vl]) |
float sinf(float) |
void __builtin_vec_sinh(vector dest, vector src [, __vm mask][, int vl]) |
double sinh(double) |
void __builtin_vec_sinhf(vector dest, vector src [, __vm mask][, int vl]) |
float sinhf(float) |
void __builtin_vec_sqrt(vector dest, vector src [, __vm mask][, int vl]) |
double sqrt(double) |
void __builtin_vec_sqrtf(vector dest, vector src [, __vm mask][, int vl]) |
float sqrtf(float) |
void __builtin_vec_tan(vector dest, vector src [, __vm mask][, int vl]) |
double tan(double) |
void __builtin_vec_tanf(vector dest, vector src [, __vm mask][, int vl]) |
float tanf(float) |
void __builtin_vec_tanh(vector dest, vector src [, __vm mask][, int vl]) |
double tanh(double) |
void __builtin_vec_tanhf(vector dest, vector src [, __vm mask][, int vl]) |
float tanhf(float) |
void __builtin_vec_tgamma(vector dest, vector src [, __vm mask][, int vl]) |
double tgamma(double) |
void __builtin_vec_tgammaf(vector dest, vector src [, __vm mask][, int vl]) |
float tgammaf(float) |
高精度のべき乗関数¶
関数のプロトタイプ宣言 |
---|
void __builtin_vec_highreso_pow(vector dest, vector src1, vector src2 [, __vm mask][, int vl]) |
void __builtin_vec_highreso_powf(vector dest, vector src1, vector src2 [, __vm mask][, int vl]) |
ベクトル浮動小数点除算関数¶
関数のプロトタイプ宣言 |
---|
void __builtin_vec_fdiv(vector dest, vector src1, vector src2 [, __vm mask][, int vl]) |
void __builtin_vec_fdivf(vector dest, vector src1, vector src2 [, __vm mask][, int vl]) |
void __builtin_vec_fdiv_lp(vector dest, vector src1, vector src2 [, __vm mask][, int vl]) (低精度高速版) |
void __builtin_vec_fdivf_lp(vector dest, vector src1, vector src2 [, __vm mask][, int vl]) (低精度高速版) |