|
|
|
@ -16,7 +16,7 @@ namespace detail |
|
|
|
|
uint8 data[size]; |
|
|
|
|
} type; |
|
|
|
|
}; |
|
|
|
|
/*
|
|
|
|
|
|
|
|
|
|
template <typename T, std::size_t size> |
|
|
|
|
struct storage<T, size, true> |
|
|
|
|
{ |
|
|
|
@ -24,7 +24,7 @@ namespace detail |
|
|
|
|
uint8 data[size]; |
|
|
|
|
} type; |
|
|
|
|
}; |
|
|
|
|
*/ |
|
|
|
|
|
|
|
|
|
# if GLM_ARCH & GLM_ARCH_SSE2_BIT |
|
|
|
|
template <> |
|
|
|
|
struct storage<float, 16, true> |
|
|
|
@ -43,6 +43,31 @@ namespace detail |
|
|
|
|
{ |
|
|
|
|
typedef glm_uvec4 type; |
|
|
|
|
}; |
|
|
|
|
/*
|
|
|
|
|
# else |
|
|
|
|
typedef union __declspec(align(16)) glm_128 |
|
|
|
|
{ |
|
|
|
|
unsigned __int8 data[16]; |
|
|
|
|
} glm_128; |
|
|
|
|
|
|
|
|
|
template <> |
|
|
|
|
struct storage<float, 16, true> |
|
|
|
|
{ |
|
|
|
|
typedef glm_128 type; |
|
|
|
|
}; |
|
|
|
|
|
|
|
|
|
template <> |
|
|
|
|
struct storage<int, 16, true> |
|
|
|
|
{ |
|
|
|
|
typedef glm_128 type; |
|
|
|
|
}; |
|
|
|
|
|
|
|
|
|
template <> |
|
|
|
|
struct storage<unsigned int, 16, true> |
|
|
|
|
{ |
|
|
|
|
typedef glm_128 type; |
|
|
|
|
}; |
|
|
|
|
*/ |
|
|
|
|
# endif |
|
|
|
|
|
|
|
|
|
# if (GLM_ARCH & GLM_ARCH_AVX_BIT) |
|
|
|
|