Squashed 'libraries/glm/' changes from 4fa38c7..4340f3f

4340f3f Fixed C++ language restriction using GLM_FORCE_CXX**
635f607 All 32 bits VC version doesn't support 64 bit intrinsics
bc76648 VC2015 still doesn't fully support C++11
a8237cc Fixed warnings
2117c53 Fixed conflict between GTX_compatibility and GTC_quaternion #286
c556770 Fixed C++98 only build
5331b67 Clean up GLM_MESSAGES compilation log to report only detected capabilities
abcc460 Added GLM_LANG_CXX14_FLAG and GLM_LANG_CXX1Z_FLAG language feature flags, Added C++14 detection
e4ccd06 Second set of fixes for Android #284
c02d031 Fixed merge
ff00603 Fixed unsupported _BitScanForward64 and _BitScanReverse64 in VC10, Fixed Visual C++ 32 bit build #283
459fe3a Fixed Android build issue, STL C++11 is not supported by the NDK #284
c1180c8 New organization idea for SIMD support
bcf1a72 Fixed libc++ detection #284
732b40c Fixed 64 bits integer GTX_string_cast to_string on VC 32 bit compiler
e1a9702 Fixed GTC_integer test
bd2601f Removed warnings
f026e72 Fixed missing explicit convertion when using integer log2 with *vec1 types
38d9997 Fixed C++11 explicit conversion operators detection #282
6a1a673 Fixed C++11 explicit conversion operators detection #282
09083fe Added more log2 tests
28aba54 Fixed scalar uaddCarry build error with Cuda #276
f680d14 Updated version for next release
7af5ec8 Fixed build
6285ed6 Updated API
a1e34d0 Merge branch 'master' of https://github.com/g-truc/glm
0d73f61 Deprecate GTX_bit
a4faece Fixed warnings
57262d1 Fixed dependences
54c8460 Fixed CUDA compilation error #276
ff3872c Reducing header dependences
67964bf Matching headers and implementations
25a5741 Updated readme and doc
a290603 Fixed clang test
83ad80d Fixed clang build
a42f84e Removed GLM_TEST_ENABLE_PERF
0b9b157 Fixed test return type
d79b17b Fixed test compiler error in Clang
98fd37b Fixed build
a6b31d8 Fixed test build
4ee163e Updated section 3.4 SIMD support
cfac6e1 Fixed _tzcnt_u32 build, only with Windows
7e81213 Fixed mod function specialization #281 Fixed bitscan detection
9b250cc Fixed arch detection for Intel compiler
1a2a121 Merge pull request #279 from cjuniet/master
be0c5da size_type and length_type for all types
49b326b Fix MSVC intrinsics detection
3ad3dbc Added overview post code sample
bdd723e Updated deprecated compilers
bbf8857 Updated readme
cdd36af Fixed build
3f48ffe Updated license
c20df07 Updated license
39334f2 Updated doxygen for 0.9.6 API
c273be2 More fixes for doxygen
3aa3da0 Deleted dead files
d276bf3 Doxygen fixes
4f5bd21 Doxygen doc fixes
d12f833 Updated doxygen doc
d65fb97 Added explicit matrix cast to quaternion, updated readme #275
3c0b3c4 Merge pull request #275 from plasmacel/master
e8fbcf7 Optimizations of log2 for ivec4
017e97d Update quaternion.inl
36075c4 Update quaternion.hpp
4581d25 Update quaternion.inl
3b3dcd7 Update quaternion.hpp
117634c Fixed GCC build issue on new alignment types. More simd stuff to vec4
bddce17 Fixed Clang and LLVM detections
9718299 Move GTC_type_aligned to GTX extensions
7621a73 Move GTC_type_aligned to GTX extensions
c79394b More tests and comments for type_aligned
9b96b31 Fixed alignment on Visual C++
5d95353 Added missing types
411511c Completed GTC_type_aligned #266 #257
b062bd9 First step to add GTC_type_aligned
246609b Fix build
011a056 Added AVX2 detection for GLM tests
b5519d3 Fixed SIMD enable for GLM tests
34a98b5 Fixed build
3135560 Updated built-in
0bffce4 Optimized findMSB and findLSB
20bdab3 Branch free refract and reflect
582ea57 Fixed sign for unsigned types #271
38161f0 Further optimized glm::sign for signed and unsigned int #271
f98f2b1 Merge branch 'GTC_integer'
6f8bbec Updated sign
826ce5c Fixed multiline comment warning comment #273
2e70698 Optimized glm::cot #272
b944e3a Merge pull request #272 from plasmacel/master
afd58dc Used std features within GLM without redeclaring
7e3dc0a format fix
e637299 implement cot as tan(pi/2 - angle)
b0b84a3 Optimized sign for vector types #271
883d328 Merge branch 'master' into GTC_integer
fe20b21 Merge pull request #271 from plasmacel/master
7def337 Update func_common.inl
4f47636 Added log2 to GTC_integer
c07b3b2 Fixed float comparison warnings #270
5b911d1 Fixed float comparison warnings #270
8889404 Added integer log2 test
2d50df6 Initial structure for GTC_integer
3adf263 Added GLM_FORCE_EXPLICIT_CTOR to require explicit type conversions #269
9c62eee Added GLM_FORCE_EXPLICIT_CTOR
1a4bc0d Added more geometric function tests
393c1da Clean up
4e95519 Fixed test with VC and disabled lang extension
bcd33a8 Fixed build issue
a66611e Updated doc
066bd1b Deleted unused file
31cee18 Updated GTC extension list
bc5fe52 Removed empty GTC_integer
f8729cd Fixed build on VC2010
9c65087 Fixed build on VC2010
2d48d92 Updated VC support compilers list
8d9c459 Added GLM_HAS_MAKE_SIGNED for C++11 support of make_(un)signed
de5dd23 Updated make_signed and make_unsigned for Clang fixes
18b8e2f Fixed Clang warnings
72cbc4c Fixed uaddCarray and updated tests #253
b90c4c4 Added GLM_HAS_TRIVIAL_QUERIES define
0ff773a Added force CXX98 test
30e7eae Clean up
4564598 Fixed uaddCarray #253. Fixed GCC build errors.
5960196 Clean up white spaces, fix build with VC15
6eb5529 Clean up
372d75d Clean up
991427f Clean up
1dea9c5 Clean up
85a6c8f Avoid useless initialization
6a50a87 Clean up
0b39c3b Clean up
9914308 Clean up
db4be24 Fixed test build on ICC
3716995 Fixed white spaces
141c185 Removed <iostream> in GLM tests, use <cstdio> instead
d606eaf Clean up white spaces
191dbe9 Added dualquat trivially copyable test. #263
16a0c96 Move more performance tests inside GLM_PERF_ENABLE
0b8ca1a Added a CMake option to execute GLM performance tests. Made quat and dualquat trivially constructible #263
b7b8b18 performance test for fast_trigonometry #265
cfce5f4 Merge more precision for fastCos and fastSin #264
c1f47f4 Fixed distance function return type #267
c36f363 Fixed glm::mask function and tests
a604ebd Fixed build
2df3bf7 Merge branch 'trivial' into bitfield
062ee19 Fixed bitfieldInsert and bitfieldExtract
debe75a Added trivially copyable test
f09888a Reverse #257, breaking many vec4 types size (i8vec4, u16vec4 etc)
ee84420 All *mat* types are copyable #263
838bdee All *vec* types are copyable #263
b3bdf83 rename some vars
ef1c33d test perf fastAtan
a7b3fca test perf fastAsin
43387c8 test perf fastAcos
c4b5fa2 test perf fastTan
74cfc74 test perf fastSin
183c714 performance test for glm::fastCos
72a5de2 branchless wrapAngle
b38a8b4 rename three_half_pi() => three_over_two_pi()
710e13a Much more precise fastCos and fastSin
b0c1777 More constants related to pi
a2a6037 More std trivial experiments #263
931e72b Initial std trivial experiments #263
6f3765d First draft of GTC_round
96b6b76 Reorganized change list
377d5a4 Optimized bitCount function
c62b6c7 Added bitcount/pop implementation perf tests
9ecf69a Optimized bitfieldReverse
afb1f6d Optimized bitfieldReverse
41c0087 Fixed GCC build
8a882ff Clean up old workaround
7fb56a2 Clean up dead code
f2996fc Clean up dead code
23d2735 Updated GTX_multiple
4b4b6f6 Removed macros
86eae99 Removed VECTORIZE_VEC for GTX
1cd48f1 Use template instanciation
c5776a7 Merge branch 'master' into vectorize
fc253a0 Fixed Visual C++ 10 build
1331e15 Fixed non C++11 build
e89d596 Merge branch 'master' into vectorize
08b9197 Fixed build
5f60ff6 Fixed build
c839f52 Fix warnings
97e4fd1 Code style clean up
abb5299 Fixed warnings with -pedantic
9fe8bc1 Fixed build
445a388 Merge
2a2cd0b Fixed bad matrix-vector performance in Cuda #257, #258
e8923c9 Fixed bad matrix-vector performance in Cuda #257, #258
dced21e Added multiple 'sign' implementations for integers, unit tests and performancetests.
378074e Merge branch 'vectorize' of https://github.com/g-truc/glm into vectorize
d07a846 Added sign function implementations and performance tests
44382fa Improve mask implementation to support any integer and vector types
a88d893 Updated ceilPowerOfTwo for signed int support
3420d69 Added findLSB tests, faster ceilPowerOfTwo
031eb13 Added powerOfTwo functions
0de2f5c Added powerOfTwo functions
f09d1fd Fix build
097c1f7 Updated GTC_integer
d3b368b Added GTC_integer, deprecated GTX_bit
eaa3b72 Added isPowerOfTwo tests
69274e7 Promoted bitfieldRotate[Right|left] and bitfieldFill[zero|one]
8dd3ec0 Removed bitRevert, duplicated of bitfieldReverse
45c4fbe Fixed build
087d629 Added GTC_bitfield extension, promoted GTX_bit
1b6b818 Updated test
0c52211 Opimization of mask, bitfieldInsert, bitfieldExtract and bitCount
eb915ed Fixed frac and added more roundEven tests
f70ee7e Vectorize many common functions
50cead0 Vectorize outerProduct
cb8250c Fixed unitilized constructor on MacOSX
bf9e445 Added not function
72a2f49 More integer vectorization
0274cb6 Fix build
3344c8e Fixed build error
7cd2103 Fixed Clang compiler detection
44a734d Fixed build
679c765 vectorize bitfieldExtract
2179695 Added usubBorrow tests
fcfc56d Vectorization of usubBorrow and umulExtended, simplified vector relational code
c23cb8c Added GLM_NEVER_INLINE
4fc68ff Replace function instanciations with macros by templates
47a6947 Make detail::functor1 capable to return a different argument value_type than the argument value_type
bf08a0e Replace function instanciations with macros by templates
0042517 Replace function instanciations with macros by templates
3e09970 Updated 'unitialize' doc
0acc67d Hide into detail namespace SIMD internal
790f520 Clean up coding style
f238334 Clean up coding style
bcd07b5 - Added GLM_FORCE_NO_CTOR_INIT
0813fac Updated compiler detection code
d298b34 Add detail namespace for number_of_elements
14d86e5 Removed unsupported compiler defines
327c791 Fixed cases of unspecialized simd
8a1bf44 Completed GTC_vec1
6d1610c Fixed swizzle operators with anonymous unions code path
19e239d Fixed core_setup_message test with Visual C++
85037a1 Fixed GLM_FORCE_SIZE_FUNC and added test #245
b2ce1a7 Clean up formatting for components and swizzle code
093b804 Fixed build
857e7f5 Fixed build
893de94 Fixed build
e6a8904 Fixed lack of consistency of quat and dualquat constructors
284ba46 Fixed spaces
8cb9328 Additional fix for GLM_FORCE_SIZE_FUNC #245
d06db11 Updated GTX_associated_min_max with vec1 support
c2d5425 Fixed GLM_FORCE_SIZE_FUNC support overlook #245. Added uninitiallized constructor to quaternion. Fixed lack of conscistency or quaternion constructors with other types. Various uninitilized constructor optimizations
2df7add Fixed build errors #250
b3b3069 Updated preprocessor options
9387eb4 Refactoring of GLM documentation
d54f2fd Refactoring of GLM documentation
a5f37ff Updated manual: dependencies session
75939a7 Fixed GTX_string_cast to support for integer types #249
ca4ed31 Fixed *vec1 scalar constructor
3556f4a Clean up
8e1cb98 Updated readme.txt
291708c Added GLM_FORCE_SIZE_FUNC to replace .length() by .size() #245
03a0188 Clean up move and initialiazer lists experiments
f9484a6 - Moved template types from 'detail' to 'glm' namespace #239, #244
4ac77c0 Updated readme for issue #238
3839987 Merge pull request #238 from SiliconKiwi/patch-1
0684a5e GTX_range is only available for C++11 compilers #240
7ab7d4b Merge pull request #240 from Jaxan/range
a00fc3f Enable only GLM_GTX_scalar_multiplication for C++11 compiler #242
36af05b Merge pull request #242 from Jaxan/scalars
1e389f8 Fixed implicit conversion from another tvec2 type to another tvec2 #241
62ac078 Adds scalar multiplication for all types
77c704e Adds range support
72a6f35 Fixes typo
a08aca9 Progress on vec1 support
46e61b4 Added test for fastSin #231
b5409fb Update closest_point.inl
ad85092 Update closest_point.hpp
ec513f4 Added GTX_common with isdenomal #223
cccf2af Added vec3 slerp (#237)
0d42f4a Added vec3 slerp #237
4649717 Fixed GCC build #228
3d399aa Remove useless std::move, #219
0613b5c Limited extended integer type redifinition (#233)
bfa893b Fixed signed integer and float linearRand results #230
5f7862e Improved linearRand: support precision and integers (#230)
e419448 Fixed compile problems with glm::max( vec, int ) #232
ac3c2e3 Rely on STL functions for GLM functions using the same prototype #233
4a701c6 Limited extended integer type redifinition (#233)
90acd72 Merge branch '0.9.5'
041276c Fix 'nextafter*' for android build issue. #217
a614e5d Merge branch '0.9.5' of https://github.com/g-truc/glm into 0.9.5
eabeb04 Merge branch '0.9.6'
67c62d8 Merge branch '0.9.6' of https://github.com/g-truc/glm into 0.9.6
3b7aadc Added initial commit for GLM_GTX_matrix_decompose #227
f916339 Rely on C++11 to implement isinf and isnan
96ef6ae Fixed infinite loop in isfinite function with GCC #221
2b747cb Removed last references to GLM_FORCE_RADIANS
fa6bec2 Added swizzle contructor tests
a0743f9 Added full tvec1 support to tvec2
8b7d3da Added vec1 operator tests
d722b39 Added scalar conversion constructor
a957daf Merge branch '0.9.6'
81bdef2 Fixed VC14 compiler warnings
666475a Fixed VC14 compiler warnings
cff845c Use pragma once
7659e90 Fixed merge with 0.9.5
d84fa89 Fixed missing value_type for dual quaternion, Fixed return type of dual quaternion length
9a3f422 - Fixed std::nextafter not supported with C++11 on Android #213
7459161 Updated revision fornext release
6f59e64 Use C++ cast
b5ffd74 merge 0.9.5
a5ab409 Merge branch '0.9.5'
dec4db0 Merge branch '0.9.5'
ae026e6 Merge 0.9.5
842cea8 Merge 0.9.5
9a3d7a1 Fixed build error #190
1077844 Fixed merge
693c1dd Merge 0.9.5 branch
3c562d5 Merge branch '0.9.6' of https://github.com/g-truc/glm into 0.9.6
ea87e50 Merge branch '0.9.5' into 0.9.6
2e90c3e Merge pull request #183 from dachziegel/0.9.6
19d2919 Fixed version #179
9fddf62 include <cuda.h> to make sure CUDA_VERSION is defined
2536c4c added GLM_FUNC_DECL to avoid nvcc warnings
ce43101 Fix merge
49cc8e8 Merge
d3b8b2b Added move contructors and assignment operators (#141)
66efbcc Merge branch '0.9.5' into 0.9.6
14c1c91 Clean up
022a6f3 Merge 0.9.5
8a56033 Merge 0.9.5
bd8836e Merge branch '0.9.5' into 0.9.6
20e7fbc Merge pull request #149 from dustin-biser/0.9.6
00f99d3 Remove unncessary divisions for mat inverses
4f2d7a9 Merge
8a023f7 Removed GTX_int_10_10_10_2, replaced by GTC_packing functions
1b36eb7 Removed GLM_FORCE_RADIANS
0d5dead Removed GLM_FORCE_RADIANS, now it's the default behaviour
6d6c56f Merge branch '0.9.5' into 0.9.6
d016300 Fixed Visual C++ vec4 simd specification code path
5f1bb47 Merge branch '0.9.5' into 0.9.6
07a1abd Added vec4 SSE2 specializations
66ff530 Merge branch '0.9.6' of https://github.com/g-truc/glm into 0.9.6
d9f5e07 Concept prof for vec4 SIMD specialication
ddd1efd Removed deprecated files

git-subtree-dir: libraries/glm
git-subtree-split: 4340f3fa6f3122046ed639041d80906d9340a9ef
Merge commit '8a9c2d0e8d79e0c78e8373f864ef709e2be6a43f'