Fixed build error #190
This commit is contained in:
@@ -170,7 +170,7 @@ namespace glm
|
|||||||
/// @tparam genType Floating-point or integer; scalar or vector types.
|
/// @tparam genType Floating-point or integer; scalar or vector types.
|
||||||
///
|
///
|
||||||
/// @see <a href="http://www.opengl.org/sdk/docs/manglsl/xhtml/min.xml">GLSL min man page</a>
|
/// @see <a href="http://www.opengl.org/sdk/docs/manglsl/xhtml/min.xml">GLSL min man page</a>
|
||||||
/// @see <a href="http://www.opengl.org/registry/doc/GLSLangSpec.4.20.8.pdf">GLSL 4.20.8 specification, section 8.3 Common Functions</a><<<<<<< HEAD
|
/// @see <a href="http://www.opengl.org/registry/doc/GLSLangSpec.4.20.8.pdf">GLSL 4.20.8 specification, section 8.3 Common Functions</a>
|
||||||
template <typename genType>
|
template <typename genType>
|
||||||
GLM_FUNC_DECL genType min(
|
GLM_FUNC_DECL genType min(
|
||||||
genType const & x,
|
genType const & x,
|
||||||
|
|||||||
@@ -32,36 +32,33 @@ namespace detail{
|
|||||||
//length
|
//length
|
||||||
GLM_FUNC_QUALIFIER __m128 sse_len_ps(__m128 x)
|
GLM_FUNC_QUALIFIER __m128 sse_len_ps(__m128 x)
|
||||||
{
|
{
|
||||||
__m128 dot0 = sse_dot_ps(x, x);
|
__m128 dot0 = sse_dot_ps(x, x);
|
||||||
__m128 sqt0 = _mm_sqrt_ps(dot0);
|
__m128 sqt0 = _mm_sqrt_ps(dot0);
|
||||||
return sqt0;
|
return sqt0;
|
||||||
}
|
}
|
||||||
|
|
||||||
//distance
|
//distance
|
||||||
GLM_FUNC_QUALIFIER __m128 sse_dst_ps(__m128 p0, __m128 p1)
|
GLM_FUNC_QUALIFIER __m128 sse_dst_ps(__m128 p0, __m128 p1)
|
||||||
{
|
{
|
||||||
__m128 sub0 = _mm_sub_ps(p0, p1);
|
__m128 sub0 = _mm_sub_ps(p0, p1);
|
||||||
__m128 len0 = sse_len_ps(sub0);
|
__m128 len0 = sse_len_ps(sub0);
|
||||||
return len0;
|
return len0;
|
||||||
}
|
}
|
||||||
|
|
||||||
//dot
|
//dot
|
||||||
GLM_FUNC_QUALIFIER __m128 sse_dot_ps(__m128 v1, __m128 v2)
|
GLM_FUNC_QUALIFIER __m128 sse_dot_ps(__m128 v1, __m128 v2)
|
||||||
{
|
{
|
||||||
<<<<<<< HEAD
|
|
||||||
# if(GLM_ARCH & GLM_ARCH_AVX)
|
# if(GLM_ARCH & GLM_ARCH_AVX)
|
||||||
=======
|
return _mm_dp_ps(v1, v2, 0xff);
|
||||||
# if((GLM_ARCH & GLM_ARCH_AVX) == GLM_ARCH_AVX)
|
# else
|
||||||
>>>>>>> 0.9.5
|
__m128 mul0 = _mm_mul_ps(v1, v2);
|
||||||
return _mm_dp_ps(v1, v2, 0xff);
|
__m128 swp0 = _mm_shuffle_ps(mul0, mul0, _MM_SHUFFLE(2, 3, 0, 1));
|
||||||
# else
|
__m128 add0 = _mm_add_ps(mul0, swp0);
|
||||||
__m128 mul0 = _mm_mul_ps(v1, v2);
|
__m128 swp1 = _mm_shuffle_ps(add0, add0, _MM_SHUFFLE(0, 1, 2, 3));
|
||||||
__m128 swp0 = _mm_shuffle_ps(mul0, mul0, _MM_SHUFFLE(2, 3, 0, 1));
|
__m128 add1 = _mm_add_ps(add0, swp1);
|
||||||
__m128 add0 = _mm_add_ps(mul0, swp0);
|
return add1;
|
||||||
__m128 swp1 = _mm_shuffle_ps(add0, add0, _MM_SHUFFLE(0, 1, 2, 3));
|
# endif
|
||||||
__m128 add1 = _mm_add_ps(add0, swp1);
|
|
||||||
return add1;
|
|
||||||
# endif
|
|
||||||
}
|
}
|
||||||
|
|
||||||
// SSE1
|
// SSE1
|
||||||
|
|||||||
Reference in New Issue
Block a user