arch/SVE/MathFunctions.h
Go to the documentation of this file.
1 // This file is part of Eigen, a lightweight C++ template library
2 // for linear algebra.
3 //
4 // Copyright (C) 2020, Arm Limited and Contributors
5 //
6 // This Source Code Form is subject to the terms of the Mozilla
7 // Public License v. 2.0. If a copy of the MPL was not distributed
8 // with this file, You can obtain one at http://mozilla.org/MPL/2.0/.
9 
10 #ifndef EIGEN_MATH_FUNCTIONS_SVE_H
11 #define EIGEN_MATH_FUNCTIONS_SVE_H
12 
13 #include "../../InternalHeaderCheck.h"
14 
15 namespace Eigen {
16 namespace internal {
17 
18 template <>
19 EIGEN_STRONG_INLINE PacketXf pexp<PacketXf>(const PacketXf& x) {
20  return pexp_float(x);
21 }
22 
23 template <>
24 EIGEN_STRONG_INLINE PacketXf plog<PacketXf>(const PacketXf& x) {
25  return plog_float(x);
26 }
27 
28 template <>
29 EIGEN_STRONG_INLINE PacketXf psin<PacketXf>(const PacketXf& x) {
30  return psin_float(x);
31 }
32 
33 template <>
34 EIGEN_STRONG_INLINE PacketXf pcos<PacketXf>(const PacketXf& x) {
35  return pcos_float(x);
36 }
37 
38 // Hyperbolic Tangent function.
39 template <>
40 EIGEN_STRONG_INLINE PacketXf ptanh<PacketXf>(const PacketXf& x) {
42 }
43 } // end namespace internal
44 } // end namespace Eigen
45 
46 #endif // EIGEN_MATH_FUNCTIONS_SVE_H
EIGEN_DEFINE_FUNCTION_ALLOWING_MULTIPLE_DEFINITIONS Packet psin_float(const Packet &x)
PacketXf plog< PacketXf >(const PacketXf &x)
PacketXf ptanh< PacketXf >(const PacketXf &x)
EIGEN_DEFINE_FUNCTION_ALLOWING_MULTIPLE_DEFINITIONS Packet pcos_float(const Packet &x)
EIGEN_DEFINE_FUNCTION_ALLOWING_MULTIPLE_DEFINITIONS Packet pexp_float(const Packet _x)
T generic_fast_tanh_float(const T &a_x)
EIGEN_DEFINE_FUNCTION_ALLOWING_MULTIPLE_DEFINITIONS Packet plog_float(const Packet _x)
PacketXf pcos< PacketXf >(const PacketXf &x)
PacketXf pexp< PacketXf >(const PacketXf &x)
PacketXf psin< PacketXf >(const PacketXf &x)
: InteropHeaders
Definition: Core:139