| 
						
						
							
								
							
						
						
					 | 
					 | 
					@ -202,7 +202,7 @@ | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					#		define GLM_COMPILER GLM_COMPILER_INTEL13 | 
					 | 
					 | 
					 | 
					#		define GLM_COMPILER GLM_COMPILER_INTEL13 | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					#	elif __INTEL_COMPILER == 1400 | 
					 | 
					 | 
					 | 
					#	elif __INTEL_COMPILER == 1400 | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					#		define GLM_COMPILER GLM_COMPILER_INTEL14 | 
					 | 
					 | 
					 | 
					#		define GLM_COMPILER GLM_COMPILER_INTEL14 | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					#	elif __INTEL_COMPILER >= 1500 | 
					 | 
					 | 
					 | 
					#	elif __INTEL_COMPILER == 1500 | 
				
			
			
				
				
			
		
	
		
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					#		define GLM_COMPILER GLM_COMPILER_INTEL15 | 
					 | 
					 | 
					 | 
					#		define GLM_COMPILER GLM_COMPILER_INTEL15 | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					#	elif __INTEL_COMPILER >= 1600 | 
					 | 
					 | 
					 | 
					#	elif __INTEL_COMPILER >= 1600 | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					#		define GLM_COMPILER GLM_COMPILER_INTEL16 | 
					 | 
					 | 
					 | 
					#		define GLM_COMPILER GLM_COMPILER_INTEL16 | 
				
			
			
		
	
	
		
		
			
				
					| 
						
							
								
							
						
						
							
								
							
						
						
					 | 
					 | 
					@ -374,7 +374,7 @@ | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					///////////////////////////////////////////////////////////////////////////////////
 | 
					 | 
					 | 
					 | 
					///////////////////////////////////////////////////////////////////////////////////
 | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					// Platform
 | 
					 | 
					 | 
					 | 
					// Platform
 | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					
 | 
					 | 
					 | 
					 | 
					
 | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					// User defines: GLM_FORCE_PURE GLM_FORCE_SSE2 GLM_FORCE_SSE3 GLM_FORCE_AVX GLM_FORCE_AVX2
 | 
					 | 
					 | 
					 | 
					// User defines: GLM_FORCE_PURE GLM_FORCE_SSE2 GLM_FORCE_SSE3 GLM_FORCE_AVX GLM_FORCE_AVX2 GLM_FORCE_AVX2
 | 
				
			
			
				
				
			
		
	
		
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					
 | 
					 | 
					 | 
					 | 
					
 | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					#define GLM_ARCH_PURE		0x0000 | 
					 | 
					 | 
					 | 
					#define GLM_ARCH_PURE		0x0000 | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					#define GLM_ARCH_ARM		0x0001 | 
					 | 
					 | 
					 | 
					#define GLM_ARCH_ARM		0x0001 | 
				
			
			
		
	
	
		
		
			
				
					| 
						
						
						
							
								
							
						
					 | 
					 | 
					@ -384,9 +384,12 @@ | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					#define GLM_ARCH_SSE4		0x0010 | 
					 | 
					 | 
					 | 
					#define GLM_ARCH_SSE4		0x0010 | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					#define GLM_ARCH_AVX		0x0020 | 
					 | 
					 | 
					 | 
					#define GLM_ARCH_AVX		0x0020 | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					#define GLM_ARCH_AVX2		0x0040 | 
					 | 
					 | 
					 | 
					#define GLM_ARCH_AVX2		0x0040 | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					 | 
					 | 
					 | 
					 | 
					#define GLM_ARCH_AVX512		0x0080 // Skylake set
 | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					
 | 
					 | 
					 | 
					 | 
					
 | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					#if defined(GLM_FORCE_PURE) | 
					 | 
					 | 
					 | 
					#if defined(GLM_FORCE_PURE) | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					#	define GLM_ARCH GLM_ARCH_PURE | 
					 | 
					 | 
					 | 
					#	define GLM_ARCH GLM_ARCH_PURE | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					 | 
					 | 
					 | 
					 | 
					#elif defined(GLM_FORCE_AVX512) | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					 | 
					 | 
					 | 
					 | 
					#	define GLM_ARCH (GLM_ARCH_AVX512 | GLM_ARCH_AVX2 | GLM_ARCH_AVX | GLM_ARCH_SSE4 | GLM_ARCH_SSE3 | GLM_ARCH_SSE2) | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					#elif defined(GLM_FORCE_AVX2) | 
					 | 
					 | 
					 | 
					#elif defined(GLM_FORCE_AVX2) | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					#	define GLM_ARCH (GLM_ARCH_AVX2 | GLM_ARCH_AVX | GLM_ARCH_SSE4 | GLM_ARCH_SSE3 | GLM_ARCH_SSE2) | 
					 | 
					 | 
					 | 
					#	define GLM_ARCH (GLM_ARCH_AVX2 | GLM_ARCH_AVX | GLM_ARCH_SSE4 | GLM_ARCH_SSE3 | GLM_ARCH_SSE2) | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					#elif defined(GLM_FORCE_AVX) | 
					 | 
					 | 
					 | 
					#elif defined(GLM_FORCE_AVX) | 
				
			
			
		
	
	
		
		
			
				
					| 
						
						
						
							
								
							
						
					 | 
					 | 
					@ -398,7 +401,10 @@ | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					#elif defined(GLM_FORCE_SSE2) | 
					 | 
					 | 
					 | 
					#elif defined(GLM_FORCE_SSE2) | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					#	define GLM_ARCH (GLM_ARCH_SSE2) | 
					 | 
					 | 
					 | 
					#	define GLM_ARCH (GLM_ARCH_SSE2) | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					#elif (GLM_COMPILER & (GLM_COMPILER_APPLE_CLANG | GLM_COMPILER_LLVM | GLM_COMPILER_GCC)) || ((GLM_COMPILER & GLM_COMPILER_INTEL) && (GLM_PLATFORM & GLM_PLATFORM_LINUX)) | 
					 | 
					 | 
					 | 
					#elif (GLM_COMPILER & (GLM_COMPILER_APPLE_CLANG | GLM_COMPILER_LLVM | GLM_COMPILER_GCC)) || ((GLM_COMPILER & GLM_COMPILER_INTEL) && (GLM_PLATFORM & GLM_PLATFORM_LINUX)) | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					#	if defined(__AVX2__) | 
					 | 
					 | 
					 | 
					//	This is Skylake set of instruction set
 | 
				
			
			
				
				
			
		
	
		
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					 | 
					 | 
					 | 
					 | 
					#	if defined(__AVX512BW__) && defined(__AVX512F__) && defined(__AVX512CD__) && defined(__AVX512VL__) && defined(__AVX512DQ__) | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					 | 
					 | 
					 | 
					 | 
					#		define GLM_ARCH (GLM_ARCH_AVX512 | GLM_ARCH_AVX2 | GLM_ARCH_AVX | GLM_ARCH_SSE3 | GLM_ARCH_SSE2) | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					 | 
					 | 
					 | 
					 | 
					#	elif defined(__AVX2__) | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					#		define GLM_ARCH (GLM_ARCH_AVX2 | GLM_ARCH_AVX | GLM_ARCH_SSE3 | GLM_ARCH_SSE2) | 
					 | 
					 | 
					 | 
					#		define GLM_ARCH (GLM_ARCH_AVX2 | GLM_ARCH_AVX | GLM_ARCH_SSE3 | GLM_ARCH_SSE2) | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					#	elif defined(__AVX__) | 
					 | 
					 | 
					 | 
					#	elif defined(__AVX__) | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					#		define GLM_ARCH (GLM_ARCH_AVX | GLM_ARCH_SSE3 | GLM_ARCH_SSE2) | 
					 | 
					 | 
					 | 
					#		define GLM_ARCH (GLM_ARCH_AVX | GLM_ARCH_SSE3 | GLM_ARCH_SSE2) | 
				
			
			
		
	
	
		
		
			
				
					| 
						
							
								
							
						
						
						
					 | 
					 | 
					
  |