diff --git a/glm/detail/type_vec4.inl b/glm/detail/type_vec4.inl index 5f282ea5..d2580918 100644 --- a/glm/detail/type_vec4.inl +++ b/glm/detail/type_vec4.inl @@ -68,6 +68,7 @@ namespace detail return tvec4(a.x / b.x, a.y / b.y, a.z / b.z, a.w / b.w); } }; +<<<<<<< HEAD template struct compute_vec4_mod @@ -122,6 +123,8 @@ namespace detail return tvec4(a.x >> b.x, a.y >> b.y, a.z >> b.z, a.w >> b.w); } }; +======= +>>>>>>> simd }//namespace detail // -- Implicit basic constructors -- @@ -373,7 +376,11 @@ namespace detail template GLM_FUNC_QUALIFIER tvec4 & tvec4::operator-=(tvec1 const & v) { +<<<<<<< HEAD return (*this = detail::compute_vec4_sub::call(*this, tvec4(v))); +======= + return (*this = detail::compute_vec4_sub::call(*this, tvec4(v.x))); +>>>>>>> simd } template @@ -394,7 +401,11 @@ namespace detail template GLM_FUNC_QUALIFIER tvec4 & tvec4::operator*=(tvec1 const & v) { +<<<<<<< HEAD return (*this = detail::compute_vec4_mul::call(*this, tvec4(v))); +======= + return (*this = detail::compute_vec4_mul::call(*this, tvec4(v.x))); +>>>>>>> simd } template @@ -415,14 +426,22 @@ namespace detail template GLM_FUNC_QUALIFIER tvec4 & tvec4::operator/=(tvec1 const & v) { +<<<<<<< HEAD return (*this = (detail::compute_vec4_div::call(*this, tvec4(v)))); +======= + return (*this = detail::compute_vec4_div::call(*this, tvec4(v.x))); +>>>>>>> simd } template template GLM_FUNC_QUALIFIER tvec4 & tvec4::operator/=(tvec4 const & v) { +<<<<<<< HEAD return (*this = (detail::compute_vec4_div::call(*this, tvec4(v)))); +======= + return (*this = detail::compute_vec4_div::call(*this, tvec4(v))); +>>>>>>> simd } // -- Increment and decrement operators -- @@ -718,7 +737,7 @@ namespace detail template GLM_FUNC_QUALIFIER tvec4 operator/(tvec1 const & v1, tvec4 const & v2) { - return tvec4(v1) /= v2; + return tvec4(v1.x) /= v2; } template @@ -736,9 +755,9 @@ namespace detail } template - GLM_FUNC_QUALIFIER tvec4 operator%(tvec4 const & v, tvec1 const & scalar) + GLM_FUNC_QUALIFIER tvec4 operator%(tvec4 const & v1, tvec1 const & v2) { - return tvec4(v) %= scalar; + return tvec4(v1) %= v2.x; } template @@ -750,7 +769,7 @@ namespace detail template GLM_FUNC_QUALIFIER tvec4 operator%(tvec1 const & scalar, tvec4 const & v) { - return tvec4(scalar) %= v; + return tvec4(scalar.x) %= v; } template @@ -762,13 +781,13 @@ namespace detail template GLM_FUNC_QUALIFIER tvec4 operator&(tvec4 const & v, T scalar) { - return tvec4(v) %= scalar; + return tvec4(v) &= scalar; } template GLM_FUNC_QUALIFIER tvec4 operator&(tvec4 const & v, tvec1 const & scalar) { - return tvec4(v) %= scalar; + return tvec4(v) &= scalar; } template @@ -778,9 +797,9 @@ namespace detail } template - GLM_FUNC_QUALIFIER tvec4 operator&(tvec1 const & scalar, tvec4 const & v) + GLM_FUNC_QUALIFIER tvec4 operator&(tvec1 const & v1, tvec4 const & v2) { - return tvec4(scalar) &= v; + return tvec4(v1.x) &= v2; } template @@ -796,21 +815,21 @@ namespace detail } template - GLM_FUNC_QUALIFIER tvec4 operator|(tvec4 const & v, tvec1 const & scalar) + GLM_FUNC_QUALIFIER tvec4 operator|(tvec4 const & v1, tvec1 const & v2) { - return tvec4(v) |= scalar; + return tvec4(v1) |= v2.x; } template GLM_FUNC_QUALIFIER tvec4 operator|(T scalar, tvec4 const & v) { - return tvec4(v) |= scalar; + return tvec4(scalar) |= v; } template - GLM_FUNC_QUALIFIER tvec4 operator|(tvec1 const & scalar, tvec4 const & v) + GLM_FUNC_QUALIFIER tvec4 operator|(tvec1 const & v1, tvec4 const & v2) { - return tvec4(v) |= scalar; + return tvec4(v1.x) |= v2; } template @@ -826,21 +845,21 @@ namespace detail } template - GLM_FUNC_QUALIFIER tvec4 operator^(tvec4 const & v, tvec1 const & scalar) + GLM_FUNC_QUALIFIER tvec4 operator^(tvec4 const & v1, tvec1 const & v2) { - return tvec4(v) ^= scalar; + return tvec4(v1) ^= v2.x; } template GLM_FUNC_QUALIFIER tvec4 operator^(T scalar, tvec4 const & v) { - return tvec4(v) ^= scalar; + return tvec4(scalar) ^= v; } template - GLM_FUNC_QUALIFIER tvec4 operator^(tvec1 const & scalar, tvec4 const & v) + GLM_FUNC_QUALIFIER tvec4 operator^(tvec1 const & v1, tvec4 const & v2) { - return tvec4(v) ^= scalar; + return tvec4(v1.x) ^= v2; } template @@ -856,9 +875,9 @@ namespace detail } template - GLM_FUNC_QUALIFIER tvec4 operator<<(tvec4 const & v, tvec1 const & scalar) + GLM_FUNC_QUALIFIER tvec4 operator<<(tvec4 const & v1, tvec1 const & v2) { - return tvec4(v) <<= scalar; + return tvec4(v1) <<= v2.x; } template @@ -868,9 +887,9 @@ namespace detail } template - GLM_FUNC_QUALIFIER tvec4 operator<<(tvec1 const & scalar, tvec4 const & v) + GLM_FUNC_QUALIFIER tvec4 operator<<(tvec1 const & v1, tvec4 const & v2) { - return tvec4(scalar) <<= v; + return tvec4(v1.x) <<= v2; } template @@ -886,9 +905,9 @@ namespace detail } template - GLM_FUNC_QUALIFIER tvec4 operator>>(tvec4 const & v, tvec1 const & scalar) + GLM_FUNC_QUALIFIER tvec4 operator>>(tvec4 const & v1, tvec1 const & v2) { - return tvec4(v) >>= scalar; + return tvec4(v1) >>= v2.x; } template @@ -898,9 +917,9 @@ namespace detail } template - GLM_FUNC_QUALIFIER tvec4 operator>>(tvec1 const & scalar, tvec4 const & v) + GLM_FUNC_QUALIFIER tvec4 operator>>(tvec1 const & v1, tvec4 const & v2) { - return tvec4(scalar) >>= v; + return tvec4(v1.x) >>= v2; } template