From 8a908ac6b1ee28850827530d0d007eb62dfce348 Mon Sep 17 00:00:00 2001 From: eschnett Date: Fri, 18 Jan 2013 22:45:50 +0000 Subject: Provide C++ wrapper for madd (multiply-add) git-svn-id: https://svn.cct.lsu.edu/repos/numrel/LSUThorns/Vectors/trunk@78 105869f7-3296-0410-a4ea-f4349344b45a --- src/vectors.h | 15 +++++++++++++++ 1 file changed, 15 insertions(+) diff --git a/src/vectors.h b/src/vectors.h index 08b9f91..8ed8528 100644 --- a/src/vectors.h +++ b/src/vectors.h @@ -297,6 +297,11 @@ struct vecprops { { return x/y; } + static inline CCTK_ATTRIBUTE_ALWAYS_INLINE + vector_t madd (vector_t const& x, vector_t const& y, vector_t const& z) + { + return x*y+z; + } }; template<> @@ -348,6 +353,11 @@ struct vecprops { { return k4div(x,y); } + static inline CCTK_ATTRIBUTE_ALWAYS_INLINE + vector_t madd (vector_t const& x, vector_t const& y, vector_t const& z) + { + return k4madd(x,y,z); + } }; template<> @@ -399,6 +409,11 @@ struct vecprops { { return k8div(x,y); } + static inline CCTK_ATTRIBUTE_ALWAYS_INLINE + vector_t madd (vector_t const& x, vector_t const& y, vector_t const& z) + { + return k8madd(x,y,z); + } }; template -- cgit v1.2.3