//===-- VecFuncs.def - Library information -------------*- C++ -*-----------===//
//
// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
// See https://llvm.org/LICENSE.txt for license information.
// SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception
//
//===----------------------------------------------------------------------===//

// This .def file will create mappings from scalar math functions to vector
// functions along with their vectorization factor. The current support includes
// such mappings for Accelerate framework, MASS vector library, and SVML library.
// This .def file also allows creating an array of vector functions supported in
// the specified framework or library.

#if defined(TLI_DEFINE_MASSV_VECFUNCS_NAMES)
#define TLI_DEFINE_MASSV_VECFUNCS
#define TLI_DEFINE_VECFUNC(SCAL, VEC, VF) VEC,
#endif

#define FIXED(NL) ElementCount::getFixed(NL)
#define SCALABLE(NL) ElementCount::getScalable(NL)

#if !(defined(TLI_DEFINE_VECFUNC))
#define TLI_DEFINE_VECFUNC(SCAL, VEC, VF) {SCAL, VEC, VF},
#endif

#if defined(TLI_DEFINE_ACCELERATE_VECFUNCS)
// Accelerate framework's Vector Functions

// Floating-Point Arithmetic and Auxiliary Functions
TLI_DEFINE_VECFUNC("ceilf", "vceilf", FIXED(4))
TLI_DEFINE_VECFUNC("fabsf", "vfabsf", FIXED(4))
TLI_DEFINE_VECFUNC("llvm.fabs.f32", "vfabsf", FIXED(4))
TLI_DEFINE_VECFUNC("floorf", "vfloorf", FIXED(4))
TLI_DEFINE_VECFUNC("sqrtf", "vsqrtf", FIXED(4))
TLI_DEFINE_VECFUNC("llvm.sqrt.f32", "vsqrtf", FIXED(4))

// Exponential and Logarithmic Functions
TLI_DEFINE_VECFUNC("expf", "vexpf", FIXED(4))
TLI_DEFINE_VECFUNC("llvm.exp.f32", "vexpf", FIXED(4))
TLI_DEFINE_VECFUNC("expm1f", "vexpm1f", FIXED(4))
TLI_DEFINE_VECFUNC("logf", "vlogf", FIXED(4))
TLI_DEFINE_VECFUNC("llvm.log.f32", "vlogf", FIXED(4))
TLI_DEFINE_VECFUNC("log1pf", "vlog1pf", FIXED(4))
TLI_DEFINE_VECFUNC("log10f", "vlog10f", FIXED(4))
TLI_DEFINE_VECFUNC("llvm.log10.f32", "vlog10f", FIXED(4))
TLI_DEFINE_VECFUNC("logbf", "vlogbf", FIXED(4))

// Trigonometric Functions
TLI_DEFINE_VECFUNC("sinf", "vsinf", FIXED(4))
TLI_DEFINE_VECFUNC("llvm.sin.f32", "vsinf", FIXED(4))
TLI_DEFINE_VECFUNC("cosf", "vcosf", FIXED(4))
TLI_DEFINE_VECFUNC("llvm.cos.f32", "vcosf", FIXED(4))
TLI_DEFINE_VECFUNC("tanf", "vtanf", FIXED(4))
TLI_DEFINE_VECFUNC("asinf", "vasinf", FIXED(4))
TLI_DEFINE_VECFUNC("acosf", "vacosf", FIXED(4))
TLI_DEFINE_VECFUNC("atanf", "vatanf", FIXED(4))

// Hyperbolic Functions
TLI_DEFINE_VECFUNC("sinhf", "vsinhf", FIXED(4))
TLI_DEFINE_VECFUNC("coshf", "vcoshf", FIXED(4))
TLI_DEFINE_VECFUNC("tanhf", "vtanhf", FIXED(4))
TLI_DEFINE_VECFUNC("asinhf", "vasinhf", FIXED(4))
TLI_DEFINE_VECFUNC("acoshf", "vacoshf", FIXED(4))
TLI_DEFINE_VECFUNC("atanhf", "vatanhf", FIXED(4))

#elif defined(TLI_DEFINE_DARWIN_LIBSYSTEM_M_VECFUNCS)
// Darwin libsystem_m vector functions.

// Exponential and Logarithmic Functions
TLI_DEFINE_VECFUNC("exp", "_simd_exp_d2", FIXED(2))
TLI_DEFINE_VECFUNC("llvm.exp.f64", "_simd_exp_d2", FIXED(2))
TLI_DEFINE_VECFUNC("expf", "_simd_exp_f4", FIXED(4))
TLI_DEFINE_VECFUNC("llvm.exp.f32", "_simd_exp_f4", FIXED(4))

// Trigonometric Functions
TLI_DEFINE_VECFUNC("acos", "_simd_acos_d2", FIXED(2))
TLI_DEFINE_VECFUNC("acosf", "_simd_acos_f4", FIXED(4))
TLI_DEFINE_VECFUNC("asin", "_simd_asin_d2", FIXED(2))
TLI_DEFINE_VECFUNC("asinf", "_simd_asin_f4", FIXED(4))

TLI_DEFINE_VECFUNC("atan", "_simd_atan_d2", FIXED(2))
TLI_DEFINE_VECFUNC("atanf", "_simd_atan_f4", FIXED(4))
TLI_DEFINE_VECFUNC("atan2", "_simd_atan2_d2", FIXED(2))
TLI_DEFINE_VECFUNC("atan2f", "_simd_atan2_f4", FIXED(4))

TLI_DEFINE_VECFUNC("cos", "_simd_cos_d2", FIXED(2))
TLI_DEFINE_VECFUNC("llvm.cos.f64", "_simd_cos_d2", FIXED(2))
TLI_DEFINE_VECFUNC("cosf", "_simd_cos_f4", FIXED(4))
TLI_DEFINE_VECFUNC("llvm.cos.f32", "_simd_cos_f4", FIXED(4))

TLI_DEFINE_VECFUNC("sin", "_simd_sin_d2", FIXED(2))
TLI_DEFINE_VECFUNC("llvm.sin.f64", "_simd_sin_d2", FIXED(2))
TLI_DEFINE_VECFUNC("sinf", "_simd_sin_f4", FIXED(4))
TLI_DEFINE_VECFUNC("llvm.sin.f32", "_simd_sin_f4", FIXED(4))

// Floating-Point Arithmetic and Auxiliary Functions
TLI_DEFINE_VECFUNC("cbrt", "_simd_cbrt_d2", FIXED(2))
TLI_DEFINE_VECFUNC("cbrtf", "_simd_cbrt_f4", FIXED(4))
TLI_DEFINE_VECFUNC("erf", "_simd_erf_d2", FIXED(2))
TLI_DEFINE_VECFUNC("erff", "_simd_erf_f4", FIXED(4))
TLI_DEFINE_VECFUNC("pow", "_simd_pow_d2", FIXED(2))
TLI_DEFINE_VECFUNC("llvm.pow.f64", "_simd_pow_d2", FIXED(2))
TLI_DEFINE_VECFUNC("powf", "_simd_pow_f4", FIXED(4))
TLI_DEFINE_VECFUNC("llvm.pow.f32", "_simd_pow_f4", FIXED(4))

// Hyperbolic Functions
TLI_DEFINE_VECFUNC("sinh", "_simd_sinh_d2", FIXED(2))
TLI_DEFINE_VECFUNC("sinhf", "_simd_sinh_f4", FIXED(4))
TLI_DEFINE_VECFUNC("cosh", "_simd_cosh_d2", FIXED(2))
TLI_DEFINE_VECFUNC("coshf", "_simd_cosh_f4", FIXED(4))
TLI_DEFINE_VECFUNC("tanh", "_simd_tanh_d2", FIXED(2))
TLI_DEFINE_VECFUNC("tanhf", "_simd_tanh_f4", FIXED(4))
TLI_DEFINE_VECFUNC("asinh", "_simd_asinh_d2", FIXED(2))
TLI_DEFINE_VECFUNC("asinhf", "_simd_asinh_f4", FIXED(4))
TLI_DEFINE_VECFUNC("acosh", "_simd_acosh_d2", FIXED(2))
TLI_DEFINE_VECFUNC("acoshf", "_simd_acosh_f4", FIXED(4))
TLI_DEFINE_VECFUNC("atanh", "_simd_atanh_d2", FIXED(2))
TLI_DEFINE_VECFUNC("atanhf", "_simd_atanh_f4", FIXED(4))

#elif defined(TLI_DEFINE_LIBMVEC_X86_VECFUNCS)
// GLIBC Vector math Functions

TLI_DEFINE_VECFUNC("sin", "_ZGVbN2v_sin", FIXED(2))
TLI_DEFINE_VECFUNC("sin", "_ZGVdN4v_sin", FIXED(4))

TLI_DEFINE_VECFUNC("sinf", "_ZGVbN4v_sinf", FIXED(4))
TLI_DEFINE_VECFUNC("sinf", "_ZGVdN8v_sinf", FIXED(8))

TLI_DEFINE_VECFUNC("llvm.sin.f64", "_ZGVbN2v_sin", FIXED(2))
TLI_DEFINE_VECFUNC("llvm.sin.f64", "_ZGVdN4v_sin", FIXED(4))

TLI_DEFINE_VECFUNC("llvm.sin.f32", "_ZGVbN4v_sinf", FIXED(4))
TLI_DEFINE_VECFUNC("llvm.sin.f32", "_ZGVdN8v_sinf", FIXED(8))

TLI_DEFINE_VECFUNC("cos", "_ZGVbN2v_cos", FIXED(2))
TLI_DEFINE_VECFUNC("cos", "_ZGVdN4v_cos", FIXED(4))

TLI_DEFINE_VECFUNC("cosf", "_ZGVbN4v_cosf", FIXED(4))
TLI_DEFINE_VECFUNC("cosf", "_ZGVdN8v_cosf", FIXED(8))

TLI_DEFINE_VECFUNC("llvm.cos.f64", "_ZGVbN2v_cos", FIXED(2))
TLI_DEFINE_VECFUNC("llvm.cos.f64", "_ZGVdN4v_cos", FIXED(4))

TLI_DEFINE_VECFUNC("llvm.cos.f32", "_ZGVbN4v_cosf", FIXED(4))
TLI_DEFINE_VECFUNC("llvm.cos.f32", "_ZGVdN8v_cosf", FIXED(8))

TLI_DEFINE_VECFUNC("pow", "_ZGVbN2vv_pow", FIXED(2))
TLI_DEFINE_VECFUNC("pow", "_ZGVdN4vv_pow", FIXED(4))

TLI_DEFINE_VECFUNC("powf", "_ZGVbN4vv_powf", FIXED(4))
TLI_DEFINE_VECFUNC("powf", "_ZGVdN8vv_powf", FIXED(8))

TLI_DEFINE_VECFUNC("__pow_finite", "_ZGVbN2vv___pow_finite", FIXED(2))
TLI_DEFINE_VECFUNC("__pow_finite", "_ZGVdN4vv___pow_finite", FIXED(4))

TLI_DEFINE_VECFUNC("__powf_finite", "_ZGVbN4vv___powf_finite", FIXED(4))
TLI_DEFINE_VECFUNC("__powf_finite", "_ZGVdN8vv___powf_finite", FIXED(8))

TLI_DEFINE_VECFUNC("llvm.pow.f64", "_ZGVbN2vv_pow", FIXED(2))
TLI_DEFINE_VECFUNC("llvm.pow.f64", "_ZGVdN4vv_pow", FIXED(4))

TLI_DEFINE_VECFUNC("llvm.pow.f32", "_ZGVbN4vv_powf", FIXED(4))
TLI_DEFINE_VECFUNC("llvm.pow.f32", "_ZGVdN8vv_powf", FIXED(8))

TLI_DEFINE_VECFUNC("exp", "_ZGVbN2v_exp", FIXED(2))
TLI_DEFINE_VECFUNC("exp", "_ZGVdN4v_exp", FIXED(4))

TLI_DEFINE_VECFUNC("expf", "_ZGVbN4v_expf", FIXED(4))
TLI_DEFINE_VECFUNC("expf", "_ZGVdN8v_expf", FIXED(8))

TLI_DEFINE_VECFUNC("__exp_finite", "_ZGVbN2v___exp_finite", FIXED(2))
TLI_DEFINE_VECFUNC("__exp_finite", "_ZGVdN4v___exp_finite", FIXED(4))

TLI_DEFINE_VECFUNC("__expf_finite", "_ZGVbN4v___expf_finite", FIXED(4))
TLI_DEFINE_VECFUNC("__expf_finite", "_ZGVdN8v___expf_finite", FIXED(8))

TLI_DEFINE_VECFUNC("llvm.exp.f64", "_ZGVbN2v_exp", FIXED(2))
TLI_DEFINE_VECFUNC("llvm.exp.f64", "_ZGVdN4v_exp", FIXED(4))

TLI_DEFINE_VECFUNC("llvm.exp.f32", "_ZGVbN4v_expf", FIXED(4))
TLI_DEFINE_VECFUNC("llvm.exp.f32", "_ZGVdN8v_expf", FIXED(8))

TLI_DEFINE_VECFUNC("log", "_ZGVbN2v_log", FIXED(2))
TLI_DEFINE_VECFUNC("log", "_ZGVdN4v_log", FIXED(4))

TLI_DEFINE_VECFUNC("logf", "_ZGVbN4v_logf", FIXED(4))
TLI_DEFINE_VECFUNC("logf", "_ZGVdN8v_logf", FIXED(8))

TLI_DEFINE_VECFUNC("__log_finite", "_ZGVbN2v___log_finite", FIXED(2))
TLI_DEFINE_VECFUNC("__log_finite", "_ZGVdN4v___log_finite", FIXED(4))

TLI_DEFINE_VECFUNC("__logf_finite", "_ZGVbN4v___logf_finite", FIXED(4))
TLI_DEFINE_VECFUNC("__logf_finite", "_ZGVdN8v___logf_finite", FIXED(8))

TLI_DEFINE_VECFUNC("llvm.log.f64", "_ZGVbN2v_log", FIXED(2))
TLI_DEFINE_VECFUNC("llvm.log.f64", "_ZGVdN4v_log", FIXED(4))

TLI_DEFINE_VECFUNC("llvm.log.f32", "_ZGVbN4v_logf", FIXED(4))
TLI_DEFINE_VECFUNC("llvm.log.f32", "_ZGVdN8v_logf", FIXED(8))

#elif defined(TLI_DEFINE_MASSV_VECFUNCS)
// IBM MASS library's vector Functions

// Floating-Point Arithmetic and Auxiliary Functions
TLI_DEFINE_VECFUNC("cbrt", "__cbrtd2", FIXED(2))
TLI_DEFINE_VECFUNC("cbrtf", "__cbrtf4", FIXED(4))
TLI_DEFINE_VECFUNC("pow", "__powd2", FIXED(2))
TLI_DEFINE_VECFUNC("llvm.pow.f64", "__powd2", FIXED(2))
TLI_DEFINE_VECFUNC("powf", "__powf4", FIXED(4))
TLI_DEFINE_VECFUNC("llvm.pow.f32", "__powf4", FIXED(4))

// Exponential and Logarithmic Functions
TLI_DEFINE_VECFUNC("exp", "__expd2", FIXED(2))
TLI_DEFINE_VECFUNC("llvm.exp.f64", "__expd2", FIXED(2))
TLI_DEFINE_VECFUNC("expf", "__expf4", FIXED(4))
TLI_DEFINE_VECFUNC("llvm.exp.f32", "__expf4", FIXED(4))
TLI_DEFINE_VECFUNC("exp2", "__exp2d2", FIXED(2))
TLI_DEFINE_VECFUNC("llvm.exp2.f64", "__exp2d2", FIXED(2))
TLI_DEFINE_VECFUNC("exp2f", "__exp2f4", FIXED(4))
TLI_DEFINE_VECFUNC("llvm.exp2.f32", "__exp2f4", FIXED(4))
TLI_DEFINE_VECFUNC("expm1", "__expm1d2", FIXED(2))
TLI_DEFINE_VECFUNC("expm1f", "__expm1f4", FIXED(4))
TLI_DEFINE_VECFUNC("log", "__logd2", FIXED(2))
TLI_DEFINE_VECFUNC("llvm.log.f64", "__logd2", FIXED(2))
TLI_DEFINE_VECFUNC("logf", "__logf4", FIXED(4))
TLI_DEFINE_VECFUNC("llvm.log.f32", "__logf4", FIXED(4))
TLI_DEFINE_VECFUNC("log1p", "__log1pd2", FIXED(2))
TLI_DEFINE_VECFUNC("log1pf", "__log1pf4", FIXED(4))
TLI_DEFINE_VECFUNC("log10", "__log10d2", FIXED(2))
TLI_DEFINE_VECFUNC("llvm.log10.f64", "__log10d2", FIXED(2))
TLI_DEFINE_VECFUNC("log10f", "__log10f4", FIXED(4))
TLI_DEFINE_VECFUNC("llvm.log10.f32", "__log10f4", FIXED(4))
TLI_DEFINE_VECFUNC("log2", "__log2d2", FIXED(2))
TLI_DEFINE_VECFUNC("llvm.log2.f64", "__log2d2", FIXED(2))
TLI_DEFINE_VECFUNC("log2f", "__log2f4", FIXED(4))
TLI_DEFINE_VECFUNC("llvm.log2.f32", "__log2f4", FIXED(4))

// Trigonometric Functions
TLI_DEFINE_VECFUNC("sin", "__sind2", FIXED(2))
TLI_DEFINE_VECFUNC("llvm.sin.f64", "__sind2", FIXED(2))
TLI_DEFINE_VECFUNC("sinf", "__sinf4", FIXED(4))
TLI_DEFINE_VECFUNC("llvm.sin.f32", "__sinf4", FIXED(4))
TLI_DEFINE_VECFUNC("cos", "__cosd2", FIXED(2))
TLI_DEFINE_VECFUNC("llvm.cos.f64", "__cosd2", FIXED(2))
TLI_DEFINE_VECFUNC("cosf", "__cosf4", FIXED(4))
TLI_DEFINE_VECFUNC("llvm.cos.f32", "__cosf4", FIXED(4))
TLI_DEFINE_VECFUNC("tan", "__tand2", FIXED(2))
TLI_DEFINE_VECFUNC("tanf", "__tanf4", FIXED(4))
TLI_DEFINE_VECFUNC("asin", "__asind2", FIXED(2))
TLI_DEFINE_VECFUNC("asinf", "__asinf4", FIXED(4))
TLI_DEFINE_VECFUNC("acos", "__acosd2", FIXED(2))
TLI_DEFINE_VECFUNC("acosf", "__acosf4", FIXED(4))
TLI_DEFINE_VECFUNC("atan", "__atand2", FIXED(2))
TLI_DEFINE_VECFUNC("atanf", "__atanf4", FIXED(4))
TLI_DEFINE_VECFUNC("atan2", "__atan2d2", FIXED(2))
TLI_DEFINE_VECFUNC("atan2f", "__atan2f4", FIXED(4))

// Hyperbolic Functions
TLI_DEFINE_VECFUNC("sinh", "__sinhd2", FIXED(2))
TLI_DEFINE_VECFUNC("sinhf", "__sinhf4", FIXED(4))
TLI_DEFINE_VECFUNC("cosh", "__coshd2", FIXED(2))
TLI_DEFINE_VECFUNC("coshf", "__coshf4", FIXED(4))
TLI_DEFINE_VECFUNC("tanh", "__tanhd2", FIXED(2))
TLI_DEFINE_VECFUNC("tanhf", "__tanhf4", FIXED(4))
TLI_DEFINE_VECFUNC("asinh", "__asinhd2", FIXED(2))
TLI_DEFINE_VECFUNC("asinhf", "__asinhf4", FIXED(4))
TLI_DEFINE_VECFUNC("acosh", "__acoshd2", FIXED(2))
TLI_DEFINE_VECFUNC("acoshf", "__acoshf4", FIXED(4))
TLI_DEFINE_VECFUNC("atanh", "__atanhd2", FIXED(2))
TLI_DEFINE_VECFUNC("atanhf", "__atanhf4", FIXED(4))


#elif defined(TLI_DEFINE_SVML_VECFUNCS)
// Intel SVM library's Vector Functions

TLI_DEFINE_VECFUNC("sin", "__svml_sin2", FIXED(2))
TLI_DEFINE_VECFUNC("sin", "__svml_sin4", FIXED(4))
TLI_DEFINE_VECFUNC("sin", "__svml_sin8", FIXED(8))

TLI_DEFINE_VECFUNC("sinf", "__svml_sinf4", FIXED(4))
TLI_DEFINE_VECFUNC("sinf", "__svml_sinf8", FIXED(8))
TLI_DEFINE_VECFUNC("sinf", "__svml_sinf16", FIXED(16))

TLI_DEFINE_VECFUNC("llvm.sin.f64", "__svml_sin2", FIXED(2))
TLI_DEFINE_VECFUNC("llvm.sin.f64", "__svml_sin4", FIXED(4))
TLI_DEFINE_VECFUNC("llvm.sin.f64", "__svml_sin8", FIXED(8))

TLI_DEFINE_VECFUNC("llvm.sin.f32", "__svml_sinf4", FIXED(4))
TLI_DEFINE_VECFUNC("llvm.sin.f32", "__svml_sinf8", FIXED(8))
TLI_DEFINE_VECFUNC("llvm.sin.f32", "__svml_sinf16", FIXED(16))

TLI_DEFINE_VECFUNC("cos", "__svml_cos2", FIXED(2))
TLI_DEFINE_VECFUNC("cos", "__svml_cos4", FIXED(4))
TLI_DEFINE_VECFUNC("cos", "__svml_cos8", FIXED(8))

TLI_DEFINE_VECFUNC("cosf", "__svml_cosf4", FIXED(4))
TLI_DEFINE_VECFUNC("cosf", "__svml_cosf8", FIXED(8))
TLI_DEFINE_VECFUNC("cosf", "__svml_cosf16", FIXED(16))

TLI_DEFINE_VECFUNC("llvm.cos.f64", "__svml_cos2", FIXED(2))
TLI_DEFINE_VECFUNC("llvm.cos.f64", "__svml_cos4", FIXED(4))
TLI_DEFINE_VECFUNC("llvm.cos.f64", "__svml_cos8", FIXED(8))

TLI_DEFINE_VECFUNC("llvm.cos.f32", "__svml_cosf4", FIXED(4))
TLI_DEFINE_VECFUNC("llvm.cos.f32", "__svml_cosf8", FIXED(8))
TLI_DEFINE_VECFUNC("llvm.cos.f32", "__svml_cosf16", FIXED(16))

TLI_DEFINE_VECFUNC("pow", "__svml_pow2", FIXED(2))
TLI_DEFINE_VECFUNC("pow", "__svml_pow4", FIXED(4))
TLI_DEFINE_VECFUNC("pow", "__svml_pow8", FIXED(8))

TLI_DEFINE_VECFUNC("powf", "__svml_powf4", FIXED(4))
TLI_DEFINE_VECFUNC("powf", "__svml_powf8", FIXED(8))
TLI_DEFINE_VECFUNC("powf", "__svml_powf16", FIXED(16))

TLI_DEFINE_VECFUNC("__pow_finite", "__svml_pow2", FIXED(2))
TLI_DEFINE_VECFUNC("__pow_finite", "__svml_pow4", FIXED(4))
TLI_DEFINE_VECFUNC("__pow_finite", "__svml_pow8", FIXED(8))

TLI_DEFINE_VECFUNC("__powf_finite", "__svml_powf4", FIXED(4))
TLI_DEFINE_VECFUNC("__powf_finite", "__svml_powf8", FIXED(8))
TLI_DEFINE_VECFUNC("__powf_finite", "__svml_powf16", FIXED(16))

TLI_DEFINE_VECFUNC("llvm.pow.f64", "__svml_pow2", FIXED(2))
TLI_DEFINE_VECFUNC("llvm.pow.f64", "__svml_pow4", FIXED(4))
TLI_DEFINE_VECFUNC("llvm.pow.f64", "__svml_pow8", FIXED(8))

TLI_DEFINE_VECFUNC("llvm.pow.f32", "__svml_powf4", FIXED(4))
TLI_DEFINE_VECFUNC("llvm.pow.f32", "__svml_powf8", FIXED(8))
TLI_DEFINE_VECFUNC("llvm.pow.f32", "__svml_powf16", FIXED(16))

TLI_DEFINE_VECFUNC("exp", "__svml_exp2", FIXED(2))
TLI_DEFINE_VECFUNC("exp", "__svml_exp4", FIXED(4))
TLI_DEFINE_VECFUNC("exp", "__svml_exp8", FIXED(8))

TLI_DEFINE_VECFUNC("expf", "__svml_expf4", FIXED(4))
TLI_DEFINE_VECFUNC("expf", "__svml_expf8", FIXED(8))
TLI_DEFINE_VECFUNC("expf", "__svml_expf16", FIXED(16))

TLI_DEFINE_VECFUNC("__exp_finite", "__svml_exp2", FIXED(2))
TLI_DEFINE_VECFUNC("__exp_finite", "__svml_exp4", FIXED(4))
TLI_DEFINE_VECFUNC("__exp_finite", "__svml_exp8", FIXED(8))

TLI_DEFINE_VECFUNC("__expf_finite", "__svml_expf4", FIXED(4))
TLI_DEFINE_VECFUNC("__expf_finite", "__svml_expf8", FIXED(8))
TLI_DEFINE_VECFUNC("__expf_finite", "__svml_expf16", FIXED(16))

TLI_DEFINE_VECFUNC("llvm.exp.f64", "__svml_exp2", FIXED(2))
TLI_DEFINE_VECFUNC("llvm.exp.f64", "__svml_exp4", FIXED(4))
TLI_DEFINE_VECFUNC("llvm.exp.f64", "__svml_exp8", FIXED(8))

TLI_DEFINE_VECFUNC("llvm.exp.f32", "__svml_expf4", FIXED(4))
TLI_DEFINE_VECFUNC("llvm.exp.f32", "__svml_expf8", FIXED(8))
TLI_DEFINE_VECFUNC("llvm.exp.f32", "__svml_expf16", FIXED(16))

TLI_DEFINE_VECFUNC("log", "__svml_log2", FIXED(2))
TLI_DEFINE_VECFUNC("log", "__svml_log4", FIXED(4))
TLI_DEFINE_VECFUNC("log", "__svml_log8", FIXED(8))

TLI_DEFINE_VECFUNC("logf", "__svml_logf4", FIXED(4))
TLI_DEFINE_VECFUNC("logf", "__svml_logf8", FIXED(8))
TLI_DEFINE_VECFUNC("logf", "__svml_logf16", FIXED(16))

TLI_DEFINE_VECFUNC("__log_finite", "__svml_log2", FIXED(2))
TLI_DEFINE_VECFUNC("__log_finite", "__svml_log4", FIXED(4))
TLI_DEFINE_VECFUNC("__log_finite", "__svml_log8", FIXED(8))

TLI_DEFINE_VECFUNC("__logf_finite", "__svml_logf4", FIXED(4))
TLI_DEFINE_VECFUNC("__logf_finite", "__svml_logf8", FIXED(8))
TLI_DEFINE_VECFUNC("__logf_finite", "__svml_logf16", FIXED(16))

TLI_DEFINE_VECFUNC("llvm.log.f64", "__svml_log2", FIXED(2))
TLI_DEFINE_VECFUNC("llvm.log.f64", "__svml_log4", FIXED(4))
TLI_DEFINE_VECFUNC("llvm.log.f64", "__svml_log8", FIXED(8))

TLI_DEFINE_VECFUNC("llvm.log.f32", "__svml_logf4", FIXED(4))
TLI_DEFINE_VECFUNC("llvm.log.f32", "__svml_logf8", FIXED(8))
TLI_DEFINE_VECFUNC("llvm.log.f32", "__svml_logf16", FIXED(16))

TLI_DEFINE_VECFUNC("log2", "__svml_log22", FIXED(2))
TLI_DEFINE_VECFUNC("log2", "__svml_log24", FIXED(4))
TLI_DEFINE_VECFUNC("log2", "__svml_log28", FIXED(8))

TLI_DEFINE_VECFUNC("log2f", "__svml_log2f4", FIXED(4))
TLI_DEFINE_VECFUNC("log2f", "__svml_log2f8", FIXED(8))
TLI_DEFINE_VECFUNC("log2f", "__svml_log2f16", FIXED(16))

TLI_DEFINE_VECFUNC("__log2_finite", "__svml_log22", FIXED(2))
TLI_DEFINE_VECFUNC("__log2_finite", "__svml_log24", FIXED(4))
TLI_DEFINE_VECFUNC("__log2_finite", "__svml_log28", FIXED(8))

TLI_DEFINE_VECFUNC("__log2f_finite", "__svml_log2f4", FIXED(4))
TLI_DEFINE_VECFUNC("__log2f_finite", "__svml_log2f8", FIXED(8))
TLI_DEFINE_VECFUNC("__log2f_finite", "__svml_log2f16", FIXED(16))

TLI_DEFINE_VECFUNC("llvm.log2.f64", "__svml_log22", FIXED(2))
TLI_DEFINE_VECFUNC("llvm.log2.f64", "__svml_log24", FIXED(4))
TLI_DEFINE_VECFUNC("llvm.log2.f64", "__svml_log28", FIXED(8))

TLI_DEFINE_VECFUNC("llvm.log2.f32", "__svml_log2f4", FIXED(4))
TLI_DEFINE_VECFUNC("llvm.log2.f32", "__svml_log2f8", FIXED(8))
TLI_DEFINE_VECFUNC("llvm.log2.f32", "__svml_log2f16", FIXED(16))

TLI_DEFINE_VECFUNC("log10", "__svml_log102", FIXED(2))
TLI_DEFINE_VECFUNC("log10", "__svml_log104", FIXED(4))
TLI_DEFINE_VECFUNC("log10", "__svml_log108", FIXED(8))

TLI_DEFINE_VECFUNC("log10f", "__svml_log10f4", FIXED(4))
TLI_DEFINE_VECFUNC("log10f", "__svml_log10f8", FIXED(8))
TLI_DEFINE_VECFUNC("log10f", "__svml_log10f16", FIXED(16))

TLI_DEFINE_VECFUNC("__log10_finite", "__svml_log102", FIXED(2))
TLI_DEFINE_VECFUNC("__log10_finite", "__svml_log104", FIXED(4))
TLI_DEFINE_VECFUNC("__log10_finite", "__svml_log108", FIXED(8))

TLI_DEFINE_VECFUNC("__log10f_finite", "__svml_log10f4", FIXED(4))
TLI_DEFINE_VECFUNC("__log10f_finite", "__svml_log10f8", FIXED(8))
TLI_DEFINE_VECFUNC("__log10f_finite", "__svml_log10f16", FIXED(16))

TLI_DEFINE_VECFUNC("llvm.log10.f64", "__svml_log102", FIXED(2))
TLI_DEFINE_VECFUNC("llvm.log10.f64", "__svml_log104", FIXED(4))
TLI_DEFINE_VECFUNC("llvm.log10.f64", "__svml_log108", FIXED(8))

TLI_DEFINE_VECFUNC("llvm.log10.f32", "__svml_log10f4", FIXED(4))
TLI_DEFINE_VECFUNC("llvm.log10.f32", "__svml_log10f8", FIXED(8))
TLI_DEFINE_VECFUNC("llvm.log10.f32", "__svml_log10f16", FIXED(16))

TLI_DEFINE_VECFUNC("sqrt", "__svml_sqrt2", FIXED(2))
TLI_DEFINE_VECFUNC("sqrt", "__svml_sqrt4", FIXED(4))
TLI_DEFINE_VECFUNC("sqrt", "__svml_sqrt8", FIXED(8))

TLI_DEFINE_VECFUNC("sqrtf", "__svml_sqrtf4", FIXED(4))
TLI_DEFINE_VECFUNC("sqrtf", "__svml_sqrtf8", FIXED(8))
TLI_DEFINE_VECFUNC("sqrtf", "__svml_sqrtf16", FIXED(16))

TLI_DEFINE_VECFUNC("__sqrt_finite", "__svml_sqrt2", FIXED(2))
TLI_DEFINE_VECFUNC("__sqrt_finite", "__svml_sqrt4", FIXED(4))
TLI_DEFINE_VECFUNC("__sqrt_finite", "__svml_sqrt8", FIXED(8))

TLI_DEFINE_VECFUNC("__sqrtf_finite", "__svml_sqrtf4", FIXED(4))
TLI_DEFINE_VECFUNC("__sqrtf_finite", "__svml_sqrtf8", FIXED(8))
TLI_DEFINE_VECFUNC("__sqrtf_finite", "__svml_sqrtf16", FIXED(16))

TLI_DEFINE_VECFUNC("exp2", "__svml_exp22", FIXED(2))
TLI_DEFINE_VECFUNC("exp2", "__svml_exp24", FIXED(4))
TLI_DEFINE_VECFUNC("exp2", "__svml_exp28", FIXED(8))

TLI_DEFINE_VECFUNC("exp2f", "__svml_exp2f4", FIXED(4))
TLI_DEFINE_VECFUNC("exp2f", "__svml_exp2f8", FIXED(8))
TLI_DEFINE_VECFUNC("exp2f", "__svml_exp2f16", FIXED(16))

TLI_DEFINE_VECFUNC("llvm.exp2.f64", "__svml_exp22", FIXED(2))
TLI_DEFINE_VECFUNC("llvm.exp2.f64", "__svml_exp24", FIXED(4))
TLI_DEFINE_VECFUNC("llvm.exp2.f64", "__svml_exp28", FIXED(8))

TLI_DEFINE_VECFUNC("llvm.exp2.f32", "__svml_exp2f4", FIXED(4))
TLI_DEFINE_VECFUNC("llvm.exp2.f32", "__svml_exp2f8", FIXED(8))
TLI_DEFINE_VECFUNC("llvm.exp2.f32", "__svml_exp2f16", FIXED(16))

TLI_DEFINE_VECFUNC("__exp2_finite", "__svml_exp22", FIXED(2))
TLI_DEFINE_VECFUNC("__exp2_finite", "__svml_exp24", FIXED(4))
TLI_DEFINE_VECFUNC("__exp2_finite", "__svml_exp28", FIXED(8))

TLI_DEFINE_VECFUNC("__exp2f_finite", "__svml_exp2f4", FIXED(4))
TLI_DEFINE_VECFUNC("__exp2f_finite", "__svml_exp2f8", FIXED(8))
TLI_DEFINE_VECFUNC("__exp2f_finite", "__svml_exp2f16", FIXED(16))

#else
#error "Must choose which vector library functions are to be defined."
#endif

#undef TLI_DEFINE_VECFUNC
#undef TLI_DEFINE_ACCELERATE_VECFUNCS
#undef TLI_DEFINE_DARWIN_LIBSYSTEM_M_VECFUNCS
#undef TLI_DEFINE_LIBMVEC_X86_VECFUNCS
#undef TLI_DEFINE_MASSV_VECFUNCS
#undef TLI_DEFINE_SVML_VECFUNCS
#undef TLI_DEFINE_MASSV_VECFUNCS_NAMES
