mirror of
https://github.com/gwm17/implot.git
synced 2024-11-22 18:28:53 -05:00
add #include <immintrin.h> fallback
This commit is contained in:
parent
3e96fd7c02
commit
5ed9e78676
|
@ -51,9 +51,12 @@
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
#if defined __SSE__ || defined __x86_64__ || defined _M_X64
|
#if defined __SSE__ || defined __x86_64__ || defined _M_X64
|
||||||
static IMPLOT_INLINE float ImInvSqrt(float x) { return _mm_cvtss_f32(_mm_rsqrt_ss(_mm_set_ss(x))); }
|
#ifndef IMGUI_ENABLE_SSE
|
||||||
|
#include <immintrin.h>
|
||||||
|
#endif
|
||||||
|
static IMPLOT_INLINE float ImInvSqrt(float x) { return _mm_cvtss_f32(_mm_rsqrt_ss(_mm_set_ss(x))); }
|
||||||
#else
|
#else
|
||||||
static IMPLOT_INLINE float ImInvSqrt(float x) { return 1.0f / sqrtf(x); }
|
static IMPLOT_INLINE float ImInvSqrt(float x) { return 1.0f / sqrtf(x); }
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
#define IMPLOT_NORMALIZE2F_OVER_ZERO(VX,VY) do { float d2 = VX*VX + VY*VY; if (d2 > 0.0f) { float inv_len = ImInvSqrt(d2); VX *= inv_len; VY *= inv_len; } } while (0)
|
#define IMPLOT_NORMALIZE2F_OVER_ZERO(VX,VY) do { float d2 = VX*VX + VY*VY; if (d2 > 0.0f) { float inv_len = ImInvSqrt(d2); VX *= inv_len; VY *= inv_len; } } while (0)
|
||||||
|
|
Loading…
Reference in New Issue
Block a user