0.9.7
intrinsic_common.hpp
Go to the documentation of this file.
1 
29 #pragma once
30 
31 #include "setup.hpp"
32 
33 #if(!(GLM_ARCH & GLM_ARCH_SSE2))
34 # error "SSE2 instructions not supported or enabled"
35 #else
36 
37 namespace glm{
38 namespace detail
39 {
40  __m128 sse_abs_ps(__m128 x);
41 
42  __m128 sse_sgn_ps(__m128 x);
43 
44  //floor
45  __m128 sse_flr_ps(__m128 v);
46 
47  //trunc
48  __m128 sse_trc_ps(__m128 v);
49 
50  //round
51  __m128 sse_nd_ps(__m128 v);
52 
53  //roundEven
54  __m128 sse_rde_ps(__m128 v);
55 
56  __m128 sse_rnd_ps(__m128 x);
57 
58  __m128 sse_ceil_ps(__m128 v);
59 
60  __m128 sse_frc_ps(__m128 x);
61 
62  __m128 sse_mod_ps(__m128 x, __m128 y);
63 
64  __m128 sse_modf_ps(__m128 x, __m128i & i);
65 
66  //GLM_FUNC_QUALIFIER __m128 sse_min_ps(__m128 x, __m128 y)
67 
68  //GLM_FUNC_QUALIFIER __m128 sse_max_ps(__m128 x, __m128 y)
69 
70  __m128 sse_clp_ps(__m128 v, __m128 minVal, __m128 maxVal);
71 
72  __m128 sse_mix_ps(__m128 v1, __m128 v2, __m128 a);
73 
74  __m128 sse_stp_ps(__m128 edge, __m128 x);
75 
76  __m128 sse_ssp_ps(__m128 edge0, __m128 edge1, __m128 x);
77 
78  __m128 sse_nan_ps(__m128 x);
79 
80  __m128 sse_inf_ps(__m128 x);
81 
82 }//namespace detail
83 }//namespace glm
84 
85 #include "intrinsic_common.inl"
86 
87 #endif//GLM_ARCH
Definition: _noise.hpp:40
OpenGL Mathematics (glm.g-truc.net)