summaryrefslogtreecommitdiffstats
path: root/vec_float_avx.h
diff options
context:
space:
mode:
Diffstat (limited to 'vec_float_avx.h')
-rw-r--r--vec_float_avx.h7
1 files changed, 5 insertions, 2 deletions
diff --git a/vec_float_avx.h b/vec_float_avx.h
index d6e0e24..a6dd04f 100644
--- a/vec_float_avx.h
+++ b/vec_float_avx.h
@@ -567,6 +567,7 @@ namespace vecmathlib {
realvec asinh() const { return MF::vml_asinh(*this); }
realvec atan() const { return MF::vml_atan(*this); }
realvec atanh() const { return MF::vml_atanh(*this); }
+ realvec cbrt() const { return MF::vml_cbrt(*this); }
realvec ceil() const { return _mm256_ceil_ps(v); }
realvec copysign(realvec y) const { return MF::vml_copysign(*this, y); }
realvec cos() const { return MF::vml_cos(*this); }
@@ -582,11 +583,14 @@ namespace vecmathlib {
realvec fmax(realvec y) const { return _mm256_max_ps(v, y.v); }
realvec fmin(realvec y) const { return _mm256_min_ps(v, y.v); }
realvec fmod(realvec y) const { return MF::vml_fmod(*this, y); }
+ realvec hypot(realvec y) const { return MF::vml_hypot(*this, y); }
intvec_t ilogb() const { return MF::vml_ilogb(*this); }
boolvec_t isfinite() const { return MF::vml_isfinite(*this); }
boolvec_t isinf() const { return MF::vml_isinf(*this); }
boolvec_t isnan() const { return MF::vml_isnan(*this); }
boolvec_t isnormal() const { return MF::vml_isnormal(*this); }
+ realvec ldexp(int_t n) const { return MF::vml_ldexp(*this, n); }
+ realvec ldexp(intvec_t n) const { return MF::vml_ldexp(*this, n); }
realvec log() const { return MF::vml_log(*this); }
realvec log10() const { return MF::vml_log10(*this); }
realvec log1p() const { return MF::vml_log1p(*this); }
@@ -608,14 +612,13 @@ namespace vecmathlib {
r *= RV(1.5) - RV(0.5)*x * r*r; // one Newton iteration (see vml_rsqrt)
return r;
}
- realvec scalbn(int_t n) const { return MF::vml_scalbn(*this, n); }
- realvec scalbn(intvec_t n) const { return MF::vml_scalbn(*this, n); }
boolvec_t signbit() const { return v; }
realvec sin() const { return MF::vml_sin(*this); }
realvec sinh() const { return MF::vml_sinh(*this); }
realvec sqrt() const { return _mm256_sqrt_ps(v); }
realvec tan() const { return MF::vml_tan(*this); }
realvec tanh() const { return MF::vml_tanh(*this); }
+ realvec trunc() const { return _mm256_round_ps(v, _MM_FROUND_TO_ZERO); }
};
OpenPOWER on IntegriCloud