From fa2cca847f597fe6a909564c3ed2357cda0ca6a2 Mon Sep 17 00:00:00 2001 From: Christophe Riccio Date: Thu, 13 Jun 2013 16:37:00 +0000 Subject: [PATCH 1/3] Fixed use of intrinsics in pure mode #92 --- glm/core/func_integer.inl | 16 +++++++++------- 1 file changed, 9 insertions(+), 7 deletions(-) diff --git a/glm/core/func_integer.inl b/glm/core/func_integer.inl index 07533550..ad8b1fe8 100644 --- a/glm/core/func_integer.inl +++ b/glm/core/func_integer.inl @@ -26,10 +26,12 @@ /// @author Christophe Riccio /////////////////////////////////////////////////////////////////////////////////// +#if(GLM_ARCH != GLM_ARCH_PURE) #if(GLM_COMPILER & GLM_COMPILER_VC) -#include -#pragma intrinsic(_BitScanReverse) -#endif +# include +# pragma intrinsic(_BitScanReverse) +#endif//(GLM_COMPILER & GLM_COMPILER_VC) +#endif//(GLM_ARCH != GLM_ARCH_PURE) namespace glm { @@ -521,7 +523,6 @@ namespace glm } // findMSB -/* #if((GLM_ARCH != GLM_ARCH_PURE) && (GLM_COMPILER & GLM_COMPILER_VC)) template @@ -538,7 +539,7 @@ namespace glm _BitScanReverse(&Result, Value); return int(Result); } - +/* // __builtin_clz seems to be buggy as it crasks for some values, from 0x00200000 to 80000000 #elif((GLM_ARCH != GLM_ARCH_PURE) && (GLM_COMPILER & GLM_COMPILER_GCC) && (GLM_COMPILER >= GLM_COMPILER_GCC40)) @@ -560,8 +561,9 @@ namespace glm // return 31 - __builtin_clzl(Value); } -#else */ +#else + /* SSE implementation idea __m128i const Zero = _mm_set_epi32( 0, 0, 0, 0); @@ -606,7 +608,7 @@ namespace glm return MostSignificantBit; } } -//#endif//(GLM_COMPILER) +#endif//(GLM_COMPILER) template GLM_FUNC_QUALIFIER detail::tvec2 findMSB From 119b36c4f2b26ca6d74d85a5fe6d24e769ff7b99 Mon Sep 17 00:00:00 2001 From: Christophe Riccio Date: Thu, 13 Jun 2013 16:41:39 +0000 Subject: [PATCH 2/3] Updated revision number for GLM 0.9.4.5 release --- glm/core/setup.hpp | 2 +- readme.txt | 5 +++++ 2 files changed, 6 insertions(+), 1 deletion(-) diff --git a/glm/core/setup.hpp b/glm/core/setup.hpp index a059441b..d052a5b4 100644 --- a/glm/core/setup.hpp +++ b/glm/core/setup.hpp @@ -36,7 +36,7 @@ #define GLM_VERSION_MAJOR 0 #define GLM_VERSION_MINOR 9 #define GLM_VERSION_PATCH 4 -#define GLM_VERSION_REVISION 3 +#define GLM_VERSION_REVISION 5 /////////////////////////////////////////////////////////////////////////////////////////////////// // Platform diff --git a/readme.txt b/readme.txt index 15978bfc..40abf154 100644 --- a/readme.txt +++ b/readme.txt @@ -36,6 +36,11 @@ GLM is a header only library, there is nothing to build, just include it. More informations in GLM manual: http://glm.g-truc.net/glm.pdf +================================================================================ +GLM 0.9.4.5: 2013-06-XX +-------------------------------------------------------------------------------- +- Fixed inclusion of intrinsics in "pure" mode #92 + ================================================================================ GLM 0.9.4.4: 2013-05-29 -------------------------------------------------------------------------------- From 4688f896f955970ab027b2026777b059d730b3bd Mon Sep 17 00:00:00 2001 From: Christophe Riccio Date: Thu, 13 Jun 2013 16:50:27 +0000 Subject: [PATCH 3/3] Fixed language detection on GCC when the C++0x mode isn't enabled #95 --- glm/core/setup.hpp | 8 ++++++-- readme.txt | 1 + 2 files changed, 7 insertions(+), 2 deletions(-) diff --git a/glm/core/setup.hpp b/glm/core/setup.hpp index d052a5b4..eb11115e 100644 --- a/glm/core/setup.hpp +++ b/glm/core/setup.hpp @@ -434,8 +434,12 @@ #else # if(__cplusplus >= 201103L) # define GLM_LANG GLM_LANG_CXX11 -# elif(((GLM_COMPILER & GLM_COMPILER_GCC) == GLM_COMPILER_GCC) && defined(__GXX_EXPERIMENTAL_CXX0X__)) -# define GLM_LANG GLM_LANG_CXX0X +# elif((GLM_COMPILER & GLM_COMPILER_GCC) == GLM_COMPILER_GCC) +# if defined(__GXX_EXPERIMENTAL_CXX0X__) +# define GLM_LANG GLM_LANG_CXX0X +# else +# define GLM_LANG GLM_LANG_CXX98 +# endif # elif(((GLM_COMPILER & GLM_COMPILER_VC) == GLM_COMPILER_VC) && defined(_MSC_EXTENSIONS)) # define GLM_LANG GLM_LANG_CXXMS # elif(((GLM_COMPILER & GLM_COMPILER_VC) == GLM_COMPILER_VC) && !defined(_MSC_EXTENSIONS)) diff --git a/readme.txt b/readme.txt index 40abf154..7c066843 100644 --- a/readme.txt +++ b/readme.txt @@ -40,6 +40,7 @@ http://glm.g-truc.net/glm.pdf GLM 0.9.4.5: 2013-06-XX -------------------------------------------------------------------------------- - Fixed inclusion of intrinsics in "pure" mode #92 +- Fixed language detection on GCC when the C++0x mode isn't enabled #95 ================================================================================ GLM 0.9.4.4: 2013-05-29