diff options
Diffstat (limited to 'src/third_party/boost-1.56.0/boost/math/tools/detail/polynomial_horner3_8.hpp')
-rw-r--r-- | src/third_party/boost-1.56.0/boost/math/tools/detail/polynomial_horner3_8.hpp | 112 |
1 files changed, 0 insertions, 112 deletions
diff --git a/src/third_party/boost-1.56.0/boost/math/tools/detail/polynomial_horner3_8.hpp b/src/third_party/boost-1.56.0/boost/math/tools/detail/polynomial_horner3_8.hpp deleted file mode 100644 index d0198bf3456..00000000000 --- a/src/third_party/boost-1.56.0/boost/math/tools/detail/polynomial_horner3_8.hpp +++ /dev/null @@ -1,112 +0,0 @@ -// (C) Copyright John Maddock 2007. -// Use, modification and distribution are subject to the -// Boost Software License, Version 1.0. (See accompanying file -// LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt) -// -// This file is machine generated, do not edit by hand - -// Unrolled polynomial evaluation using second order Horners rule -#ifndef BOOST_MATH_TOOLS_POLY_EVAL_8_HPP -#define BOOST_MATH_TOOLS_POLY_EVAL_8_HPP - -namespace boost{ namespace math{ namespace tools{ namespace detail{ - -template <class T, class V> -inline V evaluate_polynomial_c_imp(const T*, const V&, const mpl::int_<0>*) -{ - return static_cast<V>(0); -} - -template <class T, class V> -inline V evaluate_polynomial_c_imp(const T* a, const V&, const mpl::int_<1>*) -{ - return static_cast<V>(a[0]); -} - -template <class T, class V> -inline V evaluate_polynomial_c_imp(const T* a, const V& x, const mpl::int_<2>*) -{ - return static_cast<V>(a[1] * x + a[0]); -} - -template <class T, class V> -inline V evaluate_polynomial_c_imp(const T* a, const V& x, const mpl::int_<3>*) -{ - return static_cast<V>((a[2] * x + a[1]) * x + a[0]); -} - -template <class T, class V> -inline V evaluate_polynomial_c_imp(const T* a, const V& x, const mpl::int_<4>*) -{ - return static_cast<V>(((a[3] * x + a[2]) * x + a[1]) * x + a[0]); -} - -template <class T, class V> -inline V evaluate_polynomial_c_imp(const T* a, const V& x, const mpl::int_<5>*) -{ - V x2 = x * x; - V t[2]; - t[0] = static_cast<V>(a[4] * x2 + a[2]); - t[1] = static_cast<V>(a[3] * x2 + a[1]); - t[0] *= x2; - t[0] += static_cast<V>(a[0]); - t[1] *= x; - return t[0] + t[1]; -} - -template <class T, class V> -inline V evaluate_polynomial_c_imp(const T* a, const V& x, const mpl::int_<6>*) -{ - V x2 = x * x; - V t[2]; - t[0] = a[5] * x2 + a[3]; - t[1] = a[4] * x2 + a[2]; - t[0] *= x2; - t[1] *= x2; - t[0] += static_cast<V>(a[1]); - t[1] += static_cast<V>(a[0]); - t[0] *= x; - return t[0] + t[1]; -} - -template <class T, class V> -inline V evaluate_polynomial_c_imp(const T* a, const V& x, const mpl::int_<7>*) -{ - V x2 = x * x; - V t[2]; - t[0] = static_cast<V>(a[6] * x2 + a[4]); - t[1] = static_cast<V>(a[5] * x2 + a[3]); - t[0] *= x2; - t[1] *= x2; - t[0] += static_cast<V>(a[2]); - t[1] += static_cast<V>(a[1]); - t[0] *= x2; - t[0] += static_cast<V>(a[0]); - t[1] *= x; - return t[0] + t[1]; -} - -template <class T, class V> -inline V evaluate_polynomial_c_imp(const T* a, const V& x, const mpl::int_<8>*) -{ - V x2 = x * x; - V t[2]; - t[0] = a[7] * x2 + a[5]; - t[1] = a[6] * x2 + a[4]; - t[0] *= x2; - t[1] *= x2; - t[0] += static_cast<V>(a[3]); - t[1] += static_cast<V>(a[2]); - t[0] *= x2; - t[1] *= x2; - t[0] += static_cast<V>(a[1]); - t[1] += static_cast<V>(a[0]); - t[0] *= x; - return t[0] + t[1]; -} - - -}}}} // namespaces - -#endif // include guard - |