From ed0bbc22681681a16b7d45b05133c38a0b82006f Mon Sep 17 00:00:00 2001 From: a1xd <68629610+a1xd@users.noreply.github.com> Date: Mon, 29 Mar 2021 18:01:20 -0400 Subject: formatting + file renames --- common/utility.hpp | 30 ++++++++++++++++++++++++++++++ 1 file changed, 30 insertions(+) create mode 100644 common/utility.hpp (limited to 'common/utility.hpp') diff --git a/common/utility.hpp b/common/utility.hpp new file mode 100644 index 0000000..40bc7c4 --- /dev/null +++ b/common/utility.hpp @@ -0,0 +1,30 @@ +#pragma once + +#ifdef _MANAGED + +#include +inline double sqrtsd(double val) { return sqrt(val); } + +#else + +#include +inline double sqrtsd(double val) { + __m128d src = _mm_load_sd(&val); + __m128d dst = _mm_sqrt_sd(src, src); + _mm_store_sd(&val, dst); + return val; +} + +#endif + +inline constexpr double minsd(double a, double b) { + return (a < b) ? a : b; +} + +inline constexpr double maxsd(double a, double b) { + return (b < a) ? a : b; +} + +inline constexpr double clampsd(double v, double lo, double hi) { + return minsd(maxsd(v, lo), hi); +} -- cgit v1.2.3