mirror of
https://github.com/g-truc/glm.git
synced 2024-11-22 08:54:35 +00:00
Merge pull request #1098 from gottfriedleibniz/fix/arm
few ARM fixes #1098
This commit is contained in:
commit
43f2a5258b
@ -121,8 +121,10 @@ namespace glm {
|
|||||||
}
|
}
|
||||||
#endif // CXX11
|
#endif // CXX11
|
||||||
|
|
||||||
|
namespace detail
|
||||||
|
{
|
||||||
template<qualifier Q>
|
template<qualifier Q>
|
||||||
struct detail::compute_inverse<4, 4, float, Q, true>
|
struct compute_inverse<4, 4, float, Q, true>
|
||||||
{
|
{
|
||||||
GLM_FUNC_QUALIFIER static mat<4, 4, float, Q> call(mat<4, 4, float, Q> const& m)
|
GLM_FUNC_QUALIFIER static mat<4, 4, float, Q> call(mat<4, 4, float, Q> const& m)
|
||||||
{
|
{
|
||||||
@ -245,5 +247,6 @@ namespace glm {
|
|||||||
return r;
|
return r;
|
||||||
}
|
}
|
||||||
};
|
};
|
||||||
|
}//namespace detail
|
||||||
}//namespace glm
|
}//namespace glm
|
||||||
#endif
|
#endif
|
||||||
|
@ -499,7 +499,7 @@ namespace detail {
|
|||||||
vec<4, int, Q>
|
vec<4, int, Q>
|
||||||
call(vec<4, int, Q> const& a, vec<4, int, Q> const& b)
|
call(vec<4, int, Q> const& a, vec<4, int, Q> const& b)
|
||||||
{
|
{
|
||||||
vec<4, uint, Q> Result;
|
vec<4, int, Q> Result;
|
||||||
Result.data = vaddq_s32(a.data, b.data);
|
Result.data = vaddq_s32(a.data, b.data);
|
||||||
return Result;
|
return Result;
|
||||||
}
|
}
|
||||||
@ -593,7 +593,7 @@ namespace detail {
|
|||||||
cmp = vpminq_u32(cmp, cmp);
|
cmp = vpminq_u32(cmp, cmp);
|
||||||
uint32_t r = cmp[0];
|
uint32_t r = cmp[0];
|
||||||
#else
|
#else
|
||||||
uint32x2_t cmpx2 = vpmin_u32(vget_low_f32(cmp), vget_high_f32(cmp));
|
uint32x2_t cmpx2 = vpmin_u32(vget_low_u32(cmp), vget_high_u32(cmp));
|
||||||
cmpx2 = vpmin_u32(cmpx2, cmpx2);
|
cmpx2 = vpmin_u32(cmpx2, cmpx2);
|
||||||
uint32_t r = cmpx2[0];
|
uint32_t r = cmpx2[0];
|
||||||
#endif
|
#endif
|
||||||
@ -612,7 +612,7 @@ namespace detail {
|
|||||||
cmp = vpminq_u32(cmp, cmp);
|
cmp = vpminq_u32(cmp, cmp);
|
||||||
uint32_t r = cmp[0];
|
uint32_t r = cmp[0];
|
||||||
#else
|
#else
|
||||||
uint32x2_t cmpx2 = vpmin_u32(vget_low_f32(cmp), vget_high_f32(cmp));
|
uint32x2_t cmpx2 = vpmin_u32(vget_low_u32(cmp), vget_high_u32(cmp));
|
||||||
cmpx2 = vpmin_u32(cmpx2, cmpx2);
|
cmpx2 = vpmin_u32(cmpx2, cmpx2);
|
||||||
uint32_t r = cmpx2[0];
|
uint32_t r = cmpx2[0];
|
||||||
#endif
|
#endif
|
||||||
@ -631,7 +631,7 @@ namespace detail {
|
|||||||
cmp = vpminq_u32(cmp, cmp);
|
cmp = vpminq_u32(cmp, cmp);
|
||||||
uint32_t r = cmp[0];
|
uint32_t r = cmp[0];
|
||||||
#else
|
#else
|
||||||
uint32x2_t cmpx2 = vpmin_u32(vget_low_f32(cmp), vget_high_f32(cmp));
|
uint32x2_t cmpx2 = vpmin_u32(vget_low_u32(cmp), vget_high_u32(cmp));
|
||||||
cmpx2 = vpmin_u32(cmpx2, cmpx2);
|
cmpx2 = vpmin_u32(cmpx2, cmpx2);
|
||||||
uint32_t r = cmpx2[0];
|
uint32_t r = cmpx2[0];
|
||||||
#endif
|
#endif
|
||||||
|
Loading…
Reference in New Issue
Block a user