36         __mmask8 invalid1 = _mm512_cmp_pd_mask(x, dbl_min, _CMP_LT_OQ);
 
   37         __mmask8 invalid2 = _mm512_cmp_pd_mask(x, dbl_max, _CMP_NLE_UQ);
 
   38         if( _mm512_kortestz(invalid1, invalid2) )
 
   40                 __mmask8 invalid = invalid1 | invalid2;
 
   41                 throw domain_error( DEMsg(
"v1logd", x, invalid) );
 
   43         return  v1logd_core(x);
 
   48         __mmask8 invalid1 = _mm512_cmp_pd_mask(x, dbl_min, _CMP_LT_OQ);
 
   49         __mmask8 invalid2 = _mm512_cmp_pd_mask(x, dbl_max, _CMP_NLE_UQ);
 
   50         if( _mm512_kortestz(invalid1, invalid2) )
 
   52                 __mmask8 invalid = invalid1 | invalid2;
 
   53                 throw domain_error( DEMsg(
"v1log10d", x, invalid) );
 
   56         return _mm512_mul_pd(x, log10e);
 
   61         __mmask8 invalid1 = _mm512_cmp_pd_mask(x, mone, _CMP_LE_OQ);
 
   62         __mmask8 invalid2 = _mm512_cmp_pd_mask(x, dbl_max, _CMP_NLE_UQ);
 
   63         if( _mm512_kortestz(invalid1, invalid2) )
 
   65                 __mmask8 invalid = invalid1 | invalid2;
 
   66                 throw domain_error( DEMsg(
"v1log1pd", x, invalid) );
 
   68         return  v1log1pd_core(x);
 
   71 inline v16sf 
v1logf(v16sf x)
 
   73         __mmask16 invalid1 = _mm512_cmp_ps_mask(x, flt_min, _CMP_LT_OQ);
 
   74         __mmask16 invalid2 = _mm512_cmp_ps_mask(x, flt_max, _CMP_NLE_UQ);
 
   75         if( _mm512_kortestz(invalid1, invalid2) )
 
   77                 __mmask16 invalid = invalid1 | invalid2;
 
   78                 throw domain_error( DEMsg(
"v1logf", x, invalid) );
 
   80         return v1logf_core(x);
 
   85         __mmask16 invalid1 = _mm512_cmp_ps_mask(x, flt_min, _CMP_LT_OQ);
 
   86         __mmask16 invalid2 = _mm512_cmp_ps_mask(x, flt_max, _CMP_NLE_UQ);
 
   87         if( _mm512_kortestz(invalid1, invalid2) )
 
   89                 __mmask16 invalid = invalid1 | invalid2;
 
   90                 throw domain_error( DEMsg(
"v1log10f", x, invalid) );
 
   93         return _mm512_mul_ps(x, log10ef);
 
   98         __mmask16 invalid1 = _mm512_cmp_ps_mask(x, monef, _CMP_LE_OQ);
 
   99         __mmask16 invalid2 = _mm512_cmp_ps_mask(x, flt_max, _CMP_NLE_UQ);
 
  100         if( _mm512_kortestz(invalid1, invalid2) )
 
  102                 __mmask16 invalid = invalid1 | invalid2;
 
  103                 throw domain_error( DEMsg(
"v1log1pf", x, invalid) );
 
  105         return v1log1pf_core(x);
 
  110 inline v4df 
v1logd(v4df x)
 
  112         v4df invalid1 = _mm256_cmp_pd(x, dbl_min, _CMP_LT_OQ);
 
  113         v4df invalid2 = _mm256_cmp_pd(x, dbl_max, _CMP_NLE_UQ);
 
  114         v4df invalid = _mm256_or_pd(invalid1, invalid2);
 
  115         if( ! _mm256_testz_pd(invalid, invalid) )
 
  116                 throw domain_error( DEMsg(
"v1logd", x, invalid) );
 
  117         return v1logd_core(x);
 
  122         v4df invalid1 = _mm256_cmp_pd(x, dbl_min, _CMP_LT_OQ);
 
  123         v4df invalid2 = _mm256_cmp_pd(x, dbl_max, _CMP_NLE_UQ);
 
  124         v4df invalid = _mm256_or_pd(invalid1, invalid2);
 
  125         if( ! _mm256_testz_pd(invalid, invalid) )
 
  126                 throw domain_error( DEMsg(
"v1log10d", x, invalid) );
 
  128         return _mm256_mul_pd(x, log10e);
 
  133         v4df invalid1 = _mm256_cmp_pd(x, mone, _CMP_LE_OQ);
 
  134         v4df invalid2 = _mm256_cmp_pd(x, dbl_max, _CMP_NLE_UQ);
 
  135         v4df invalid = _mm256_or_pd(invalid1, invalid2);
 
  136         if( ! _mm256_testz_pd(invalid, invalid) )
 
  137                 throw domain_error( DEMsg(
"v1log1pd", x, invalid) );
 
  138         return v1log1pd_core(x);
 
  141 inline v8sf 
v1logf(v8sf x)
 
  143         v8sf invalid1 = _mm256_cmp_ps(x, flt_min, _CMP_LT_OQ);
 
  144         v8sf invalid2 = _mm256_cmp_ps(x, flt_max, _CMP_NLE_UQ);
 
  145         v8sf invalid = _mm256_or_ps(invalid1, invalid2);
 
  146         if( ! _mm256_testz_ps(invalid, invalid) )
 
  147                 throw domain_error( DEMsg(
"v1logf", x, invalid) );
 
  148         return v1logf_core(x);
 
  153         v8sf invalid1 = _mm256_cmp_ps(x, flt_min, _CMP_LT_OQ);
 
  154         v8sf invalid2 = _mm256_cmp_ps(x, flt_max, _CMP_NLE_UQ);
 
  155         v8sf invalid = _mm256_or_ps(invalid1, invalid2);
 
  156         if( ! _mm256_testz_ps(invalid, invalid) )
 
  157                 throw domain_error( DEMsg(
"v1log10f", x, invalid) );
 
  159         return _mm256_mul_ps(x, log10ef);
 
  164         v8sf invalid1 = _mm256_cmp_ps(x, monef, _CMP_LE_OQ);
 
  165         v8sf invalid2 = _mm256_cmp_ps(x, flt_max, _CMP_NLE_UQ);
 
  166         v8sf invalid = _mm256_or_ps(invalid1, invalid2);
 
  167         if( ! _mm256_testz_ps(invalid, invalid) )
 
  168                 throw domain_error( DEMsg(
"v1log1pf", x, invalid) );
 
  169         return v1log1pf_core(x);
 
  172 #endif // __AVX512F__ 
  219 void vlog(
const double x[], 
double y[], 
long nlo, 
long nhi)
 
  226 void vlog10(
const double x[], 
double y[], 
long nlo, 
long nhi)
 
  233 void vlog1p(
const double x[], 
double y[], 
long nlo, 
long nhi)
 
  261 void vlog(
double *y, 
double x0, 
double x1, 
double x2, 
double x3)
 
  276 void vlog(
double *y, 
double x0, 
double x1, 
double x2, 
double x3, 
double x4, 
double x5, 
double x6, 
double x7)
 
  281 void vlog10(
double *y, 
double x0, 
double x1, 
double x2, 
double x3, 
double x4, 
double x5, 
double x6, 
double x7)
 
  286 void vlog1p(
double *y, 
double x0, 
double x1, 
double x2, 
double x3, 
double x4, 
double x5, 
double x6, 
double x7)
 
#define V1FUN_PD_8(FUN, V)
sys_float wr_log1pf(sys_float x)
void vlog10(const double x[], double y[], long nlo, long nhi)
sys_float wr_log10f(sys_float x)
void vlog1p(const double x[], double y[], long nlo, long nhi)
double wr_log10d(double x)
void vlog(const double x[], double y[], long nlo, long nhi)
sys_float wr_logf(sys_float x)
void vecfun(const T x[], T y[], long nlo, long nhi, T(*scalfun1)(T), V(*)(V))
#define V1FUN_PS_4(FUN, V)
#define V1FUN_PD_4(FUN, V)
#define DEBUG_ENTRY(funcname)
double wr_log1pd(double x)
#define V1FUN_PS_8(FUN, V)
#define V1FUN_PS_16(FUN, V)