diff options
Diffstat (limited to 'mathfuncs_fabs.h')
-rw-r--r-- | mathfuncs_fabs.h | 2 |
1 files changed, 2 insertions, 0 deletions
diff --git a/mathfuncs_fabs.h b/mathfuncs_fabs.h index baf5f33..4baec9b 100644 --- a/mathfuncs_fabs.h +++ b/mathfuncs_fabs.h @@ -76,6 +76,7 @@ namespace vecmathlib { template<typename realvec_t> typename realvec_t::intvec_t mathfuncs<realvec_t>::vml_ilogb(realvec_t x) { + // TODO: Check SLEEF 2.80 algorithm intvec_t e = lsr(as_int(x) & IV(FP::exponent_mask), FP::mantissa_bits); intvec_t r = e - IV(FP::exponent_offset); r = ifthen(convert_bool(e), r, IV(std::numeric_limits<int_t>::min())); @@ -164,6 +165,7 @@ namespace vecmathlib { template<typename realvec_t> realvec_t mathfuncs<realvec_t>::vml_ldexp(realvec_t x, intvec_t n) { + // TODO: Check SLEEF 2.80 algorithm realvec_t r = as_float(as_int(x) + (n << I(FP::mantissa_bits))); r = ifthen((as_int(x) & IV(FP::exponent_mask)) == IV(I(0)), x, r); return r; |