forked from OSchip/llvm-project
				
			
		
			
				
	
	
		
			32 lines
		
	
	
		
			913 B
		
	
	
	
		
			C++
		
	
	
	
			
		
		
	
	
			32 lines
		
	
	
		
			913 B
		
	
	
	
		
			C++
		
	
	
	
| //===-- MathExtras.cpp - Implement the MathExtras header --------------===//
 | |
| //
 | |
| // Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
 | |
| // See https://llvm.org/LICENSE.txt for license information.
 | |
| // SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception
 | |
| //
 | |
| //===----------------------------------------------------------------------===//
 | |
| //
 | |
| // This file implements the MathExtras.h header
 | |
| //
 | |
| //===----------------------------------------------------------------------===//
 | |
| 
 | |
| #include "llvm/Support/MathExtras.h"
 | |
| 
 | |
| #ifdef _MSC_VER
 | |
| #include <limits>
 | |
| #else
 | |
| #include <math.h>
 | |
| #endif
 | |
| 
 | |
| namespace llvm {
 | |
| 
 | |
| #if defined(_MSC_VER)
 | |
|   // Visual Studio defines the HUGE_VAL class of macros using purposeful
 | |
|   // constant arithmetic overflow, which it then warns on when encountered.
 | |
|   const float huge_valf = std::numeric_limits<float>::infinity();
 | |
| #else
 | |
|   const float huge_valf = HUGE_VALF;
 | |
| #endif
 | |
| 
 | |
| }
 |