mirror of
https://github.com/g-truc/glm.git
synced 2024-11-10 04:31:47 +00:00
Merged 0.9.7 branch, Factorized GLM_COMPILER_LLVM and GLM_COMPILER_APPLE_CLANG into GLM_COMPILER_CLANG
This commit is contained in:
commit
6271aa1530
@ -255,7 +255,7 @@
|
|||||||
# define GLM_CXX11_STATIC_ASSERT
|
# define GLM_CXX11_STATIC_ASSERT
|
||||||
# endif
|
# endif
|
||||||
|
|
||||||
#elif(GLM_COMPILER & GLM_COMPILER_LLVM)
|
#elif(GLM_COMPILER & GLM_COMPILER_CLANG)
|
||||||
# if(__has_feature(cxx_exceptions))
|
# if(__has_feature(cxx_exceptions))
|
||||||
# define GLM_CXX98_EXCEPTIONS
|
# define GLM_CXX98_EXCEPTIONS
|
||||||
# endif
|
# endif
|
||||||
@ -396,4 +396,4 @@
|
|||||||
# define GLM_CXX11_VARIADIC_TEMPLATES
|
# define GLM_CXX11_VARIADIC_TEMPLATES
|
||||||
# endif
|
# endif
|
||||||
|
|
||||||
#endif//(GLM_COMPILER & GLM_COMPILER_LLVM)
|
#endif//(GLM_COMPILER & GLM_COMPILER_CLANG)
|
||||||
|
@ -630,7 +630,7 @@ namespace detail
|
|||||||
# else
|
# else
|
||||||
return ::isnan(x) != 0;
|
return ::isnan(x) != 0;
|
||||||
# endif
|
# endif
|
||||||
# elif (GLM_COMPILER & (GLM_COMPILER_GCC | GLM_COMPILER_LLVM)) && (GLM_PLATFORM & GLM_PLATFORM_ANDROID) && __cplusplus < 201103L
|
# elif (GLM_COMPILER & (GLM_COMPILER_GCC | GLM_COMPILER_CLANG)) && (GLM_PLATFORM & GLM_PLATFORM_ANDROID) && __cplusplus < 201103L
|
||||||
return _isnan(x) != 0;
|
return _isnan(x) != 0;
|
||||||
# elif GLM_COMPILER & GLM_COMPILER_CUDA
|
# elif GLM_COMPILER & GLM_COMPILER_CUDA
|
||||||
return isnan(x) != 0;
|
return isnan(x) != 0;
|
||||||
@ -664,7 +664,7 @@ namespace detail
|
|||||||
# else
|
# else
|
||||||
return ::isinf(x);
|
return ::isinf(x);
|
||||||
# endif
|
# endif
|
||||||
# elif GLM_COMPILER & (GLM_COMPILER_GCC | GLM_COMPILER_LLVM)
|
# elif GLM_COMPILER & (GLM_COMPILER_GCC | GLM_COMPILER_CLANG)
|
||||||
# if(GLM_PLATFORM & GLM_PLATFORM_ANDROID && __cplusplus < 201103L)
|
# if(GLM_PLATFORM & GLM_PLATFORM_ANDROID && __cplusplus < 201103L)
|
||||||
return _isinf(x) != 0;
|
return _isinf(x) != 0;
|
||||||
# else
|
# else
|
||||||
|
@ -84,7 +84,7 @@ namespace glm
|
|||||||
|
|
||||||
// atan
|
// atan
|
||||||
template <typename genType>
|
template <typename genType>
|
||||||
GLM_FUNC_QUALIFIER genType atan(genType const & y, genType const & x)
|
GLM_FUNC_QUALIFIER genType atan(genType y, genType x)
|
||||||
{
|
{
|
||||||
GLM_STATIC_ASSERT(std::numeric_limits<genType>::is_iec559, "'atan' only accept floating-point input");
|
GLM_STATIC_ASSERT(std::numeric_limits<genType>::is_iec559, "'atan' only accept floating-point input");
|
||||||
|
|
||||||
@ -137,7 +137,7 @@ namespace glm
|
|||||||
using std::asinh;
|
using std::asinh;
|
||||||
# else
|
# else
|
||||||
template <typename genType>
|
template <typename genType>
|
||||||
GLM_FUNC_QUALIFIER genType asinh(genType const & x)
|
GLM_FUNC_QUALIFIER genType asinh(genType x)
|
||||||
{
|
{
|
||||||
GLM_STATIC_ASSERT(std::numeric_limits<genType>::is_iec559, "'asinh' only accept floating-point input");
|
GLM_STATIC_ASSERT(std::numeric_limits<genType>::is_iec559, "'asinh' only accept floating-point input");
|
||||||
|
|
||||||
@ -156,7 +156,7 @@ namespace glm
|
|||||||
using std::acosh;
|
using std::acosh;
|
||||||
# else
|
# else
|
||||||
template <typename genType>
|
template <typename genType>
|
||||||
GLM_FUNC_QUALIFIER genType acosh(genType const & x)
|
GLM_FUNC_QUALIFIER genType acosh(genType x)
|
||||||
{
|
{
|
||||||
GLM_STATIC_ASSERT(std::numeric_limits<genType>::is_iec559, "'acosh' only accept floating-point input");
|
GLM_STATIC_ASSERT(std::numeric_limits<genType>::is_iec559, "'acosh' only accept floating-point input");
|
||||||
|
|
||||||
@ -177,7 +177,7 @@ namespace glm
|
|||||||
using std::atanh;
|
using std::atanh;
|
||||||
# else
|
# else
|
||||||
template <typename genType>
|
template <typename genType>
|
||||||
GLM_FUNC_QUALIFIER genType atanh(genType const & x)
|
GLM_FUNC_QUALIFIER genType atanh(genType x)
|
||||||
{
|
{
|
||||||
GLM_STATIC_ASSERT(std::numeric_limits<genType>::is_iec559, "'atanh' only accept floating-point input");
|
GLM_STATIC_ASSERT(std::numeric_limits<genType>::is_iec559, "'atanh' only accept floating-point input");
|
||||||
|
|
||||||
|
@ -28,7 +28,7 @@
|
|||||||
# pragma message("GLM: CUDA compiler detected")
|
# pragma message("GLM: CUDA compiler detected")
|
||||||
# elif GLM_COMPILER & GLM_COMPILER_VC
|
# elif GLM_COMPILER & GLM_COMPILER_VC
|
||||||
# pragma message("GLM: Visual C++ compiler detected")
|
# pragma message("GLM: Visual C++ compiler detected")
|
||||||
# elif GLM_COMPILER & GLM_COMPILER_LLVM
|
# elif GLM_COMPILER & GLM_COMPILER_CLANG
|
||||||
# pragma message("GLM: Clang compiler detected")
|
# pragma message("GLM: Clang compiler detected")
|
||||||
# elif GLM_COMPILER & GLM_COMPILER_INTEL
|
# elif GLM_COMPILER & GLM_COMPILER_INTEL
|
||||||
# pragma message("GLM: Intel Compiler detected")
|
# pragma message("GLM: Intel Compiler detected")
|
||||||
@ -134,14 +134,14 @@
|
|||||||
#elif defined(GLM_FORCE_CXX98)
|
#elif defined(GLM_FORCE_CXX98)
|
||||||
# define GLM_LANG GLM_LANG_CXX98
|
# define GLM_LANG GLM_LANG_CXX98
|
||||||
#else
|
#else
|
||||||
# if GLM_COMPILER & GLM_COMPILER_LLVM
|
# if GLM_COMPILER & GLM_COMPILER_CLANG
|
||||||
# if __cplusplus >= 201402L // GLM_COMPILER_LLVM34 + -std=c++14
|
# if __cplusplus >= 201402L // GLM_COMPILER_CLANG34 + -std=c++14
|
||||||
# define GLM_LANG GLM_LANG_CXX14
|
# define GLM_LANG GLM_LANG_CXX14
|
||||||
# elif __has_feature(cxx_decltype_auto) && __has_feature(cxx_aggregate_nsdmi) // GLM_COMPILER_LLVM33 + -std=c++1y
|
# elif __has_feature(cxx_decltype_auto) && __has_feature(cxx_aggregate_nsdmi) // GLM_COMPILER_CLANG33 + -std=c++1y
|
||||||
# define GLM_LANG GLM_LANG_CXX1Y
|
# define GLM_LANG GLM_LANG_CXX1Y
|
||||||
# elif __cplusplus >= 201103L // GLM_COMPILER_LLVM33 + -std=c++11
|
# elif __cplusplus >= 201103L // GLM_COMPILER_CLANG33 + -std=c++11
|
||||||
# define GLM_LANG GLM_LANG_CXX11
|
# define GLM_LANG GLM_LANG_CXX11
|
||||||
# elif __has_feature(cxx_static_assert) // GLM_COMPILER_LLVM29 + -std=c++11
|
# elif __has_feature(cxx_static_assert) // GLM_COMPILER_CLANG29 + -std=c++11
|
||||||
# define GLM_LANG GLM_LANG_CXX0X
|
# define GLM_LANG GLM_LANG_CXX0X
|
||||||
# elif __cplusplus >= 199711L
|
# elif __cplusplus >= 199711L
|
||||||
# define GLM_LANG GLM_LANG_CXX98
|
# define GLM_LANG GLM_LANG_CXX98
|
||||||
@ -263,15 +263,8 @@
|
|||||||
// http://gcc.gnu.org/projects/cxx0x.html
|
// http://gcc.gnu.org/projects/cxx0x.html
|
||||||
// http://msdn.microsoft.com/en-us/library/vstudio/hh567368(v=vs.120).aspx
|
// http://msdn.microsoft.com/en-us/library/vstudio/hh567368(v=vs.120).aspx
|
||||||
|
|
||||||
#if GLM_PLATFORM == GLM_PLATFORM_ANDROID || GLM_PLATFORM == GLM_PLATFORM_CYGWIN
|
#if GLM_COMPILER & (GLM_COMPILER_CLANG | GLM_COMPILER_APPLE_CLANG)
|
||||||
# define GLM_HAS_CXX11_STL 0
|
# if defined(_LIBCPP_VERSION) && GLM_LANG & GLM_LANG_CXX11_FLAG
|
||||||
#elif GLM_COMPILER & GLM_COMPILER_LLVM
|
|
||||||
# if __has_include(<__config>) // libc++
|
|
||||||
# include <__config>
|
|
||||||
//# else // libstdc++
|
|
||||||
//# include <bits/c++config.h>
|
|
||||||
# endif
|
|
||||||
# if defined(_LIBCPP_VERSION)// || defined(__GLIBCXX__)
|
|
||||||
# define GLM_HAS_CXX11_STL 1
|
# define GLM_HAS_CXX11_STL 1
|
||||||
# else
|
# else
|
||||||
# define GLM_HAS_CXX11_STL 0
|
# define GLM_HAS_CXX11_STL 0
|
||||||
@ -284,7 +277,7 @@
|
|||||||
#endif
|
#endif
|
||||||
|
|
||||||
// N1720
|
// N1720
|
||||||
#if GLM_COMPILER & GLM_COMPILER_LLVM
|
#if GLM_COMPILER & GLM_COMPILER_CLANG
|
||||||
# define GLM_HAS_STATIC_ASSERT __has_feature(cxx_static_assert)
|
# define GLM_HAS_STATIC_ASSERT __has_feature(cxx_static_assert)
|
||||||
#elif GLM_LANG & GLM_LANG_CXX11_FLAG
|
#elif GLM_LANG & GLM_LANG_CXX11_FLAG
|
||||||
# define GLM_HAS_STATIC_ASSERT 1
|
# define GLM_HAS_STATIC_ASSERT 1
|
||||||
@ -303,11 +296,11 @@
|
|||||||
((GLM_LANG & GLM_LANG_CXX0X_FLAG) && (GLM_COMPILER & GLM_COMPILER_VC) && (GLM_COMPILER >= GLM_COMPILER_VC2012)) || \
|
((GLM_LANG & GLM_LANG_CXX0X_FLAG) && (GLM_COMPILER & GLM_COMPILER_VC) && (GLM_COMPILER >= GLM_COMPILER_VC2012)) || \
|
||||||
((GLM_LANG & GLM_LANG_CXX0X_FLAG) && (GLM_COMPILER & GLM_COMPILER_CUDA)) || \
|
((GLM_LANG & GLM_LANG_CXX0X_FLAG) && (GLM_COMPILER & GLM_COMPILER_CUDA)) || \
|
||||||
((GLM_LANG & GLM_LANG_CXX0X_FLAG) && (GLM_COMPILER & GLM_COMPILER_GCC) && (GLM_COMPILER >= GLM_COMPILER_GCC43)) || \
|
((GLM_LANG & GLM_LANG_CXX0X_FLAG) && (GLM_COMPILER & GLM_COMPILER_GCC) && (GLM_COMPILER >= GLM_COMPILER_GCC43)) || \
|
||||||
((GLM_LANG & GLM_LANG_CXX0X_FLAG) && (GLM_COMPILER & GLM_COMPILER_LLVM) && (GLM_COMPILER >= GLM_COMPILER_LLVM30)))
|
((GLM_LANG & GLM_LANG_CXX0X_FLAG) && (GLM_COMPILER & GLM_COMPILER_CLANG) && (GLM_COMPILER >= GLM_COMPILER_CLANG30)))
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
// N2235
|
// N2235
|
||||||
#if GLM_COMPILER & GLM_COMPILER_LLVM
|
#if GLM_COMPILER & GLM_COMPILER_CLANG
|
||||||
# define GLM_HAS_CONSTEXPR __has_feature(cxx_constexpr)
|
# define GLM_HAS_CONSTEXPR __has_feature(cxx_constexpr)
|
||||||
# define GLM_HAS_CONSTEXPR_PARTIAL GLM_HAS_CONSTEXPR
|
# define GLM_HAS_CONSTEXPR_PARTIAL GLM_HAS_CONSTEXPR
|
||||||
#elif GLM_LANG & GLM_LANG_CXX11_FLAG
|
#elif GLM_LANG & GLM_LANG_CXX11_FLAG
|
||||||
@ -320,7 +313,7 @@
|
|||||||
#endif
|
#endif
|
||||||
|
|
||||||
// N2672
|
// N2672
|
||||||
#if GLM_COMPILER & GLM_COMPILER_LLVM
|
#if GLM_COMPILER & GLM_COMPILER_CLANG
|
||||||
# define GLM_HAS_INITIALIZER_LISTS __has_feature(cxx_generalized_initializers)
|
# define GLM_HAS_INITIALIZER_LISTS __has_feature(cxx_generalized_initializers)
|
||||||
#elif GLM_LANG & GLM_LANG_CXX11_FLAG
|
#elif GLM_LANG & GLM_LANG_CXX11_FLAG
|
||||||
# define GLM_HAS_INITIALIZER_LISTS 1
|
# define GLM_HAS_INITIALIZER_LISTS 1
|
||||||
@ -332,7 +325,7 @@
|
|||||||
#endif
|
#endif
|
||||||
|
|
||||||
// N2544 Unrestricted unions http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2008/n2544.pdf
|
// N2544 Unrestricted unions http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2008/n2544.pdf
|
||||||
#if GLM_COMPILER & GLM_COMPILER_LLVM
|
#if GLM_COMPILER & GLM_COMPILER_CLANG
|
||||||
# define GLM_HAS_UNRESTRICTED_UNIONS __has_feature(cxx_unrestricted_unions)
|
# define GLM_HAS_UNRESTRICTED_UNIONS __has_feature(cxx_unrestricted_unions)
|
||||||
#elif GLM_LANG & (GLM_LANG_CXX11_FLAG | GLM_LANG_CXXMS_FLAG)
|
#elif GLM_LANG & (GLM_LANG_CXX11_FLAG | GLM_LANG_CXXMS_FLAG)
|
||||||
# define GLM_HAS_UNRESTRICTED_UNIONS 1
|
# define GLM_HAS_UNRESTRICTED_UNIONS 1
|
||||||
@ -344,7 +337,7 @@
|
|||||||
#endif
|
#endif
|
||||||
|
|
||||||
// N2346
|
// N2346
|
||||||
#if GLM_COMPILER & GLM_COMPILER_LLVM
|
#if GLM_COMPILER & GLM_COMPILER_CLANG
|
||||||
# define GLM_HAS_DEFAULTED_FUNCTIONS __has_feature(cxx_defaulted_functions)
|
# define GLM_HAS_DEFAULTED_FUNCTIONS __has_feature(cxx_defaulted_functions)
|
||||||
#elif GLM_LANG & GLM_LANG_CXX11_FLAG
|
#elif GLM_LANG & GLM_LANG_CXX11_FLAG
|
||||||
# define GLM_HAS_DEFAULTED_FUNCTIONS 1
|
# define GLM_HAS_DEFAULTED_FUNCTIONS 1
|
||||||
@ -357,7 +350,7 @@
|
|||||||
#endif
|
#endif
|
||||||
|
|
||||||
// N2118
|
// N2118
|
||||||
#if GLM_COMPILER & GLM_COMPILER_LLVM
|
#if GLM_COMPILER & GLM_COMPILER_CLANG
|
||||||
# define GLM_HAS_RVALUE_REFERENCES __has_feature(cxx_rvalue_references)
|
# define GLM_HAS_RVALUE_REFERENCES __has_feature(cxx_rvalue_references)
|
||||||
#elif GLM_LANG & GLM_LANG_CXX11_FLAG
|
#elif GLM_LANG & GLM_LANG_CXX11_FLAG
|
||||||
# define GLM_HAS_RVALUE_REFERENCES 1
|
# define GLM_HAS_RVALUE_REFERENCES 1
|
||||||
@ -369,7 +362,7 @@
|
|||||||
#endif
|
#endif
|
||||||
|
|
||||||
// N2437 http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2007/n2437.pdf
|
// N2437 http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2007/n2437.pdf
|
||||||
#if GLM_COMPILER & GLM_COMPILER_LLVM
|
#if GLM_COMPILER & GLM_COMPILER_CLANG
|
||||||
# define GLM_HAS_EXPLICIT_CONVERSION_OPERATORS __has_feature(cxx_explicit_conversions)
|
# define GLM_HAS_EXPLICIT_CONVERSION_OPERATORS __has_feature(cxx_explicit_conversions)
|
||||||
#elif GLM_LANG & GLM_LANG_CXX11_FLAG
|
#elif GLM_LANG & GLM_LANG_CXX11_FLAG
|
||||||
# define GLM_HAS_EXPLICIT_CONVERSION_OPERATORS 1
|
# define GLM_HAS_EXPLICIT_CONVERSION_OPERATORS 1
|
||||||
@ -382,7 +375,7 @@
|
|||||||
#endif
|
#endif
|
||||||
|
|
||||||
// N2258 http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2007/n2258.pdf
|
// N2258 http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2007/n2258.pdf
|
||||||
#if GLM_COMPILER & GLM_COMPILER_LLVM
|
#if GLM_COMPILER & GLM_COMPILER_CLANG
|
||||||
# define GLM_HAS_TEMPLATE_ALIASES __has_feature(cxx_alias_templates)
|
# define GLM_HAS_TEMPLATE_ALIASES __has_feature(cxx_alias_templates)
|
||||||
#elif GLM_LANG & GLM_LANG_CXX11_FLAG
|
#elif GLM_LANG & GLM_LANG_CXX11_FLAG
|
||||||
# define GLM_HAS_TEMPLATE_ALIASES 1
|
# define GLM_HAS_TEMPLATE_ALIASES 1
|
||||||
@ -395,7 +388,7 @@
|
|||||||
#endif
|
#endif
|
||||||
|
|
||||||
// N2930 http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2009/n2930.html
|
// N2930 http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2009/n2930.html
|
||||||
#if GLM_COMPILER & GLM_COMPILER_LLVM
|
#if GLM_COMPILER & GLM_COMPILER_CLANG
|
||||||
# define GLM_HAS_RANGE_FOR __has_feature(cxx_range_for)
|
# define GLM_HAS_RANGE_FOR __has_feature(cxx_range_for)
|
||||||
#elif GLM_LANG & GLM_LANG_CXX11_FLAG
|
#elif GLM_LANG & GLM_LANG_CXX11_FLAG
|
||||||
# define GLM_HAS_RANGE_FOR 1
|
# define GLM_HAS_RANGE_FOR 1
|
||||||
@ -450,8 +443,8 @@
|
|||||||
# else
|
# else
|
||||||
# define GLM_HAS_OPENMP 0
|
# define GLM_HAS_OPENMP 0
|
||||||
# endif
|
# endif
|
||||||
# elif GLM_COMPILER & GLM_COMPILER_LLVM
|
# elif GLM_COMPILER & GLM_COMPILER_CLANG
|
||||||
# if GLM_COMPILER >= GLM_COMPILER_LLVM38
|
# if GLM_COMPILER >= GLM_COMPILER_CLANG38
|
||||||
# define GLM_HAS_OPENMP 31
|
# define GLM_HAS_OPENMP 31
|
||||||
# else
|
# else
|
||||||
# define GLM_HAS_OPENMP 0
|
# define GLM_HAS_OPENMP 0
|
||||||
@ -510,7 +503,7 @@
|
|||||||
# if GLM_COMPILER & GLM_COMPILER_VC
|
# if GLM_COMPILER & GLM_COMPILER_VC
|
||||||
# define GLM_INLINE __forceinline
|
# define GLM_INLINE __forceinline
|
||||||
# define GLM_NEVER_INLINE __declspec((noinline))
|
# define GLM_NEVER_INLINE __declspec((noinline))
|
||||||
# elif GLM_COMPILER & (GLM_COMPILER_GCC | GLM_COMPILER_LLVM)
|
# elif GLM_COMPILER & (GLM_COMPILER_GCC | GLM_COMPILER_CLANG)
|
||||||
# define GLM_INLINE inline __attribute__((__always_inline__))
|
# define GLM_INLINE inline __attribute__((__always_inline__))
|
||||||
# define GLM_NEVER_INLINE __attribute__((__noinline__))
|
# define GLM_NEVER_INLINE __attribute__((__noinline__))
|
||||||
# elif GLM_COMPILER & GLM_COMPILER_CUDA
|
# elif GLM_COMPILER & GLM_COMPILER_CUDA
|
||||||
@ -590,15 +583,15 @@
|
|||||||
# else
|
# else
|
||||||
# define GLM_VECTOR_CALL
|
# define GLM_VECTOR_CALL
|
||||||
# endif
|
# endif
|
||||||
#elif GLM_COMPILER & (GLM_COMPILER_GCC | GLM_COMPILER_LLVM | GLM_COMPILER_CUDA | GLM_COMPILER_INTEL)
|
#elif GLM_COMPILER & (GLM_COMPILER_GCC | GLM_COMPILER_CLANG | GLM_COMPILER_CUDA | GLM_COMPILER_INTEL)
|
||||||
# define GLM_DEPRECATED __attribute__((__deprecated__))
|
# define GLM_DEPRECATED __attribute__((__deprecated__))
|
||||||
# define GLM_ALIGN(x) __attribute__((aligned(x)))
|
# define GLM_ALIGN(x) __attribute__((aligned(x)))
|
||||||
# define GLM_ALIGNED_STRUCT(x) struct __attribute__((aligned(x)))
|
# define GLM_ALIGNED_STRUCT(x) struct __attribute__((aligned(x)))
|
||||||
# define GLM_ALIGNED_TYPEDEF(type, name, alignment) typedef type name __attribute__((aligned(alignment)))
|
# define GLM_ALIGNED_TYPEDEF(type, name, alignment) typedef type name __attribute__((aligned(alignment)))
|
||||||
# define GLM_RESTRICT_FUNC __restrict__
|
# define GLM_RESTRICT_FUNC __restrict__
|
||||||
# define GLM_RESTRICT __restrict__
|
# define GLM_RESTRICT __restrict__
|
||||||
# if GLM_COMPILER & GLM_COMPILER_LLVM
|
# if GLM_COMPILER & GLM_COMPILER_CLANG
|
||||||
# if GLM_COMPILER >= GLM_COMPILER_LLVM37
|
# if GLM_COMPILER >= GLM_COMPILER_CLANG37
|
||||||
# define GLM_VECTOR_CALL __vectorcall
|
# define GLM_VECTOR_CALL __vectorcall
|
||||||
# else
|
# else
|
||||||
# define GLM_VECTOR_CALL
|
# define GLM_VECTOR_CALL
|
||||||
|
@ -30,7 +30,11 @@ namespace glm
|
|||||||
/// @tparam genType Floating-point scalar or vector types.
|
/// @tparam genType Floating-point scalar or vector types.
|
||||||
///
|
///
|
||||||
/// @see gtc_reciprocal
|
/// @see gtc_reciprocal
|
||||||
|
<<<<<<< HEAD
|
||||||
template <typename genType>
|
template <typename genType>
|
||||||
|
=======
|
||||||
|
template <typename genType>
|
||||||
|
>>>>>>> 0.9.7
|
||||||
GLM_FUNC_DECL genType sec(genType angle);
|
GLM_FUNC_DECL genType sec(genType angle);
|
||||||
|
|
||||||
/// Cosecant function.
|
/// Cosecant function.
|
||||||
@ -48,7 +52,11 @@ namespace glm
|
|||||||
/// @tparam genType Floating-point scalar or vector types.
|
/// @tparam genType Floating-point scalar or vector types.
|
||||||
///
|
///
|
||||||
/// @see gtc_reciprocal
|
/// @see gtc_reciprocal
|
||||||
|
<<<<<<< HEAD
|
||||||
template <typename genType>
|
template <typename genType>
|
||||||
|
=======
|
||||||
|
template <typename genType>
|
||||||
|
>>>>>>> 0.9.7
|
||||||
GLM_FUNC_DECL genType cot(genType angle);
|
GLM_FUNC_DECL genType cot(genType angle);
|
||||||
|
|
||||||
/// Inverse secant function.
|
/// Inverse secant function.
|
||||||
@ -57,7 +65,11 @@ namespace glm
|
|||||||
/// @tparam genType Floating-point scalar or vector types.
|
/// @tparam genType Floating-point scalar or vector types.
|
||||||
///
|
///
|
||||||
/// @see gtc_reciprocal
|
/// @see gtc_reciprocal
|
||||||
|
<<<<<<< HEAD
|
||||||
template <typename genType>
|
template <typename genType>
|
||||||
|
=======
|
||||||
|
template <typename genType>
|
||||||
|
>>>>>>> 0.9.7
|
||||||
GLM_FUNC_DECL genType asec(genType x);
|
GLM_FUNC_DECL genType asec(genType x);
|
||||||
|
|
||||||
/// Inverse cosecant function.
|
/// Inverse cosecant function.
|
||||||
@ -66,7 +78,11 @@ namespace glm
|
|||||||
/// @tparam genType Floating-point scalar or vector types.
|
/// @tparam genType Floating-point scalar or vector types.
|
||||||
///
|
///
|
||||||
/// @see gtc_reciprocal
|
/// @see gtc_reciprocal
|
||||||
|
<<<<<<< HEAD
|
||||||
template <typename genType>
|
template <typename genType>
|
||||||
|
=======
|
||||||
|
template <typename genType>
|
||||||
|
>>>>>>> 0.9.7
|
||||||
GLM_FUNC_DECL genType acsc(genType x);
|
GLM_FUNC_DECL genType acsc(genType x);
|
||||||
|
|
||||||
/// Inverse cotangent function.
|
/// Inverse cotangent function.
|
||||||
@ -75,7 +91,11 @@ namespace glm
|
|||||||
/// @tparam genType Floating-point scalar or vector types.
|
/// @tparam genType Floating-point scalar or vector types.
|
||||||
///
|
///
|
||||||
/// @see gtc_reciprocal
|
/// @see gtc_reciprocal
|
||||||
|
<<<<<<< HEAD
|
||||||
template <typename genType>
|
template <typename genType>
|
||||||
|
=======
|
||||||
|
template <typename genType>
|
||||||
|
>>>>>>> 0.9.7
|
||||||
GLM_FUNC_DECL genType acot(genType x);
|
GLM_FUNC_DECL genType acot(genType x);
|
||||||
|
|
||||||
/// Secant hyperbolic function.
|
/// Secant hyperbolic function.
|
||||||
@ -83,7 +103,11 @@ namespace glm
|
|||||||
/// @tparam genType Floating-point scalar or vector types.
|
/// @tparam genType Floating-point scalar or vector types.
|
||||||
///
|
///
|
||||||
/// @see gtc_reciprocal
|
/// @see gtc_reciprocal
|
||||||
|
<<<<<<< HEAD
|
||||||
template <typename genType>
|
template <typename genType>
|
||||||
|
=======
|
||||||
|
template <typename genType>
|
||||||
|
>>>>>>> 0.9.7
|
||||||
GLM_FUNC_DECL genType sech(genType angle);
|
GLM_FUNC_DECL genType sech(genType angle);
|
||||||
|
|
||||||
/// Cosecant hyperbolic function.
|
/// Cosecant hyperbolic function.
|
||||||
|
@ -103,7 +103,14 @@
|
|||||||
#define GLM_COMPILER_GCC51 0x02000300
|
#define GLM_COMPILER_GCC51 0x02000300
|
||||||
#define GLM_COMPILER_GCC52 0x02000400
|
#define GLM_COMPILER_GCC52 0x02000400
|
||||||
#define GLM_COMPILER_GCC53 0x02000500
|
#define GLM_COMPILER_GCC53 0x02000500
|
||||||
#define GLM_COMPILER_GCC60 0x02000600
|
#define GLM_COMPILER_GCC54 0x02000600
|
||||||
|
#define GLM_COMPILER_GCC60 0x02000700
|
||||||
|
#define GLM_COMPILER_GCC61 0x02000800
|
||||||
|
#define GLM_COMPILER_GCC62 0x02000900
|
||||||
|
#define GLM_COMPILER_GCC70 0x02000A00
|
||||||
|
#define GLM_COMPILER_GCC71 0x02000B00
|
||||||
|
#define GLM_COMPILER_GCC72 0x02000C00
|
||||||
|
#define GLM_COMPILER_GCC80 0x02000D00
|
||||||
|
|
||||||
// CUDA
|
// CUDA
|
||||||
#define GLM_COMPILER_CUDA 0x10000000
|
#define GLM_COMPILER_CUDA 0x10000000
|
||||||
@ -115,17 +122,18 @@
|
|||||||
#define GLM_COMPILER_CUDA65 0x10000090
|
#define GLM_COMPILER_CUDA65 0x10000090
|
||||||
#define GLM_COMPILER_CUDA70 0x100000A0
|
#define GLM_COMPILER_CUDA70 0x100000A0
|
||||||
#define GLM_COMPILER_CUDA75 0x100000B0
|
#define GLM_COMPILER_CUDA75 0x100000B0
|
||||||
|
#define GLM_COMPILER_CUDA80 0x100000C0
|
||||||
|
|
||||||
// LLVM
|
// Clang
|
||||||
#define GLM_COMPILER_LLVM 0x20000000
|
#define GLM_COMPILER_CLANG 0x20000000
|
||||||
#define GLM_COMPILER_LLVM32 0x20000030
|
#define GLM_COMPILER_CLANG32 0x20000030
|
||||||
#define GLM_COMPILER_LLVM33 0x20000040
|
#define GLM_COMPILER_CLANG33 0x20000040
|
||||||
#define GLM_COMPILER_LLVM34 0x20000050
|
#define GLM_COMPILER_CLANG34 0x20000050
|
||||||
#define GLM_COMPILER_LLVM35 0x20000060
|
#define GLM_COMPILER_CLANG35 0x20000060
|
||||||
#define GLM_COMPILER_LLVM36 0x20000070
|
#define GLM_COMPILER_CLANG36 0x20000070
|
||||||
#define GLM_COMPILER_LLVM37 0x20000080
|
#define GLM_COMPILER_CLANG37 0x20000080
|
||||||
#define GLM_COMPILER_LLVM38 0x20000090
|
#define GLM_COMPILER_CLANG38 0x20000090
|
||||||
#define GLM_COMPILER_LLVM39 0x200000A0
|
#define GLM_COMPILER_CLANG39 0x200000A0
|
||||||
|
|
||||||
// Build model
|
// Build model
|
||||||
#define GLM_MODEL_32 0x00000010
|
#define GLM_MODEL_32 0x00000010
|
||||||
@ -167,43 +175,43 @@
|
|||||||
#elif defined(__clang__)
|
#elif defined(__clang__)
|
||||||
# if GLM_PLATFORM & GLM_PLATFORM_APPLE
|
# if GLM_PLATFORM & GLM_PLATFORM_APPLE
|
||||||
# if __clang_major__ == 5 && __clang_minor__ == 0
|
# if __clang_major__ == 5 && __clang_minor__ == 0
|
||||||
# define GLM_COMPILER GLM_COMPILER_LLVM33
|
# define GLM_COMPILER GLM_COMPILER_CLANG33
|
||||||
# elif __clang_major__ == 5 && __clang_minor__ == 1
|
# elif __clang_major__ == 5 && __clang_minor__ == 1
|
||||||
# define GLM_COMPILER GLM_COMPILER_LLVM34
|
# define GLM_COMPILER GLM_COMPILER_CLANG34
|
||||||
# elif __clang_major__ == 6 && __clang_minor__ == 0
|
# elif __clang_major__ == 6 && __clang_minor__ == 0
|
||||||
# define GLM_COMPILER GLM_COMPILER_LLVM35
|
# define GLM_COMPILER GLM_COMPILER_CLANG35
|
||||||
# elif __clang_major__ == 6 && __clang_minor__ >= 1
|
# elif __clang_major__ == 6 && __clang_minor__ >= 1
|
||||||
# define GLM_COMPILER GLM_COMPILER_LLVM36
|
# define GLM_COMPILER GLM_COMPILER_CLANG36
|
||||||
# elif __clang_major__ >= 7
|
# elif __clang_major__ >= 7
|
||||||
# define GLM_COMPILER GLM_COMPILER_LLVM37
|
# define GLM_COMPILER GLM_COMPILER_CLANG37
|
||||||
# else
|
# else
|
||||||
# define GLM_COMPILER GLM_COMPILER_LLVM
|
# define GLM_COMPILER GLM_COMPILER_CLANG
|
||||||
# endif
|
# endif
|
||||||
# else
|
# else
|
||||||
# if __clang_major__ == 3 && __clang_minor__ == 0
|
# if __clang_major__ == 3 && __clang_minor__ == 0
|
||||||
# define GLM_COMPILER GLM_COMPILER_LLVM30
|
# define GLM_COMPILER GLM_COMPILER_CLANG30
|
||||||
# elif __clang_major__ == 3 && __clang_minor__ == 1
|
# elif __clang_major__ == 3 && __clang_minor__ == 1
|
||||||
# define GLM_COMPILER GLM_COMPILER_LLVM31
|
# define GLM_COMPILER GLM_COMPILER_CLANG31
|
||||||
# elif __clang_major__ == 3 && __clang_minor__ == 2
|
# elif __clang_major__ == 3 && __clang_minor__ == 2
|
||||||
# define GLM_COMPILER GLM_COMPILER_LLVM32
|
# define GLM_COMPILER GLM_COMPILER_CLANG32
|
||||||
# elif __clang_major__ == 3 && __clang_minor__ == 3
|
# elif __clang_major__ == 3 && __clang_minor__ == 3
|
||||||
# define GLM_COMPILER GLM_COMPILER_LLVM33
|
# define GLM_COMPILER GLM_COMPILER_CLANG33
|
||||||
# elif __clang_major__ == 3 && __clang_minor__ == 4
|
# elif __clang_major__ == 3 && __clang_minor__ == 4
|
||||||
# define GLM_COMPILER GLM_COMPILER_LLVM34
|
# define GLM_COMPILER GLM_COMPILER_CLANG34
|
||||||
# elif __clang_major__ == 3 && __clang_minor__ == 5
|
# elif __clang_major__ == 3 && __clang_minor__ == 5
|
||||||
# define GLM_COMPILER GLM_COMPILER_LLVM35
|
# define GLM_COMPILER GLM_COMPILER_CLANG35
|
||||||
# elif __clang_major__ == 3 && __clang_minor__ == 6
|
# elif __clang_major__ == 3 && __clang_minor__ == 6
|
||||||
# define GLM_COMPILER GLM_COMPILER_LLVM36
|
# define GLM_COMPILER GLM_COMPILER_CLANG36
|
||||||
# elif __clang_major__ == 3 && __clang_minor__ == 7
|
# elif __clang_major__ == 3 && __clang_minor__ == 7
|
||||||
# define GLM_COMPILER GLM_COMPILER_LLVM37
|
# define GLM_COMPILER GLM_COMPILER_CLANG37
|
||||||
# elif __clang_major__ == 3 && __clang_minor__ == 8
|
# elif __clang_major__ == 3 && __clang_minor__ == 8
|
||||||
# define GLM_COMPILER GLM_COMPILER_LLVM38
|
# define GLM_COMPILER GLM_COMPILER_CLANG38
|
||||||
# elif __clang_major__ == 3 && __clang_minor__ >= 9
|
# elif __clang_major__ == 3 && __clang_minor__ >= 9
|
||||||
# define GLM_COMPILER GLM_COMPILER_LLVM39
|
# define GLM_COMPILER GLM_COMPILER_CLANG39
|
||||||
# elif __clang_major__ >= 4
|
# elif __clang_major__ >= 4
|
||||||
# define GLM_COMPILER GLM_COMPILER_LLVM39
|
# define GLM_COMPILER GLM_COMPILER_CLANG39
|
||||||
# else
|
# else
|
||||||
# define GLM_COMPILER GLM_COMPILER_LLVM
|
# define GLM_COMPILER GLM_COMPILER_CLANG
|
||||||
# endif
|
# endif
|
||||||
# endif
|
# endif
|
||||||
|
|
||||||
@ -247,10 +255,24 @@
|
|||||||
# define GLM_COMPILER (GLM_COMPILER_GCC51)
|
# define GLM_COMPILER (GLM_COMPILER_GCC51)
|
||||||
# elif (__GNUC__ == 5) && (__GNUC_MINOR__ == 2)
|
# elif (__GNUC__ == 5) && (__GNUC_MINOR__ == 2)
|
||||||
# define GLM_COMPILER (GLM_COMPILER_GCC52)
|
# define GLM_COMPILER (GLM_COMPILER_GCC52)
|
||||||
# elif (__GNUC__ == 5) && (__GNUC_MINOR__ >= 3)
|
# elif (__GNUC__ == 5) && (__GNUC_MINOR__ == 3)
|
||||||
# define GLM_COMPILER (GLM_COMPILER_GCC53)
|
# define GLM_COMPILER (GLM_COMPILER_GCC53)
|
||||||
# elif (__GNUC__ >= 6)
|
# elif (__GNUC__ == 5) && (__GNUC_MINOR__ >= 4)
|
||||||
|
# define GLM_COMPILER (GLM_COMPILER_GCC54)
|
||||||
|
# elif (__GNUC__ == 6) && (__GNUC_MINOR__ == 0)
|
||||||
# define GLM_COMPILER (GLM_COMPILER_GCC60)
|
# define GLM_COMPILER (GLM_COMPILER_GCC60)
|
||||||
|
# elif (__GNUC__ == 6) && (__GNUC_MINOR__ == 1)
|
||||||
|
# define GLM_COMPILER (GLM_COMPILER_GCC61)
|
||||||
|
# elif (__GNUC__ == 6) && (__GNUC_MINOR__ >= 2)
|
||||||
|
# define GLM_COMPILER (GLM_COMPILER_GCC62)
|
||||||
|
# elif (__GNUC__ == 7) && (__GNUC_MINOR__ == 0)
|
||||||
|
# define GLM_COMPILER (GLM_COMPILER_GCC70)
|
||||||
|
# elif (__GNUC__ == 7) && (__GNUC_MINOR__ == 1)
|
||||||
|
# define GLM_COMPILER (GLM_COMPILER_GCC71)
|
||||||
|
# elif (__GNUC__ == 7) && (__GNUC_MINOR__ == 2)
|
||||||
|
# define GLM_COMPILER (GLM_COMPILER_GCC72)
|
||||||
|
# elif (__GNUC__ >= 8)
|
||||||
|
# define GLM_COMPILER (GLM_COMPILER_GCC80)
|
||||||
# else
|
# else
|
||||||
# define GLM_COMPILER (GLM_COMPILER_GCC)
|
# define GLM_COMPILER (GLM_COMPILER_GCC)
|
||||||
# endif
|
# endif
|
||||||
@ -321,7 +343,7 @@
|
|||||||
# define GLM_ARCH (GLM_ARCH_SSE3)
|
# define GLM_ARCH (GLM_ARCH_SSE3)
|
||||||
#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_LLVM | GLM_COMPILER_GCC)) || ((GLM_COMPILER & GLM_COMPILER_INTEL) && (GLM_PLATFORM & GLM_PLATFORM_LINUX))
|
#elif (GLM_COMPILER & (GLM_COMPILER_CLANG | GLM_COMPILER_GCC)) || ((GLM_COMPILER & GLM_COMPILER_INTEL) && (GLM_PLATFORM & GLM_PLATFORM_LINUX))
|
||||||
// This is Skylake set of instruction set
|
// This is Skylake set of instruction set
|
||||||
# if defined(__AVX512BW__) && defined(__AVX512F__) && defined(__AVX512CD__) && defined(__AVX512VL__) && defined(__AVX512DQ__)
|
# if defined(__AVX512BW__) && defined(__AVX512F__) && defined(__AVX512CD__) && defined(__AVX512VL__) && defined(__AVX512DQ__)
|
||||||
# define GLM_ARCH (GLM_ARCH_AVX512)
|
# define GLM_ARCH (GLM_ARCH_AVX512)
|
||||||
|
@ -78,6 +78,7 @@ glm::mat4 camera(float Translate, glm::vec2 const & Rotate)
|
|||||||
- Added MIPS CPUs detection
|
- Added MIPS CPUs detection
|
||||||
- Added PowerPC CPUs detection
|
- Added PowerPC CPUs detection
|
||||||
- Use Cuda built-in function for abs function implementation with Cuda compiler
|
- Use Cuda built-in function for abs function implementation with Cuda compiler
|
||||||
|
- Factorized GLM_COMPILER_LLVM and GLM_COMPILER_APPLE_CLANG into GLM_COMPILER_CLANG
|
||||||
|
|
||||||
##### Fixes:
|
##### Fixes:
|
||||||
- Fixed GTX_extended_min_max filename typo #386
|
- Fixed GTX_extended_min_max filename typo #386
|
||||||
@ -96,11 +97,14 @@ glm::mat4 camera(float Translate, glm::vec2 const & Rotate)
|
|||||||
#### [GLM 0.9.7.6](https://github.com/g-truc/glm/tree/0.9.7) - 2016-0X-XX
|
#### [GLM 0.9.7.6](https://github.com/g-truc/glm/tree/0.9.7) - 2016-0X-XX
|
||||||
##### Improvements:
|
##### Improvements:
|
||||||
- Added pkg-config file #509
|
- Added pkg-config file #509
|
||||||
|
- Updated list of compiler versions detected
|
||||||
|
- Improved C++ 11 STL detection #523
|
||||||
|
|
||||||
##### Fixes:
|
##### Fixes:
|
||||||
- Fixed STL for C++11 detection on ICC #510
|
- Fixed STL for C++11 detection on ICC #510
|
||||||
- Fixed missing vec1 overload to length2 and distance2 functions #431
|
- Fixed missing vec1 overload to length2 and distance2 functions #431
|
||||||
- Fixed long long warnings when using C++98 on GCC and Clang #482
|
- Fixed long long warnings when using C++98 on GCC and Clang #482
|
||||||
|
- Fixed scalar reciprocal functions (GTC_reciprocal) #520
|
||||||
|
|
||||||
#### [GLM 0.9.7.5](https://github.com/g-truc/glm/releases/tag/0.9.7.5) - 2016-05-24
|
#### [GLM 0.9.7.5](https://github.com/g-truc/glm/releases/tag/0.9.7.5) - 2016-05-24
|
||||||
##### Improvements:
|
##### Improvements:
|
||||||
|
@ -62,9 +62,30 @@ int test_compiler()
|
|||||||
case GLM_COMPILER_GCC53:
|
case GLM_COMPILER_GCC53:
|
||||||
std::printf("GLM_COMPILER_GCC53\n");
|
std::printf("GLM_COMPILER_GCC53\n");
|
||||||
break;
|
break;
|
||||||
|
case GLM_COMPILER_GCC54:
|
||||||
|
std::printf("GLM_COMPILER_GCC54\n");
|
||||||
|
break;
|
||||||
case GLM_COMPILER_GCC60:
|
case GLM_COMPILER_GCC60:
|
||||||
std::printf("GLM_COMPILER_GCC60\n");
|
std::printf("GLM_COMPILER_GCC60\n");
|
||||||
break;
|
break;
|
||||||
|
case GLM_COMPILER_GCC61:
|
||||||
|
std::printf("GLM_COMPILER_GCC61\n");
|
||||||
|
break;
|
||||||
|
case GLM_COMPILER_GCC62:
|
||||||
|
std::printf("GLM_COMPILER_GCC62\n");
|
||||||
|
break;
|
||||||
|
case GLM_COMPILER_GCC70:
|
||||||
|
std::printf("GLM_COMPILER_GCC70\n");
|
||||||
|
break;
|
||||||
|
case GLM_COMPILER_GCC71:
|
||||||
|
std::printf("GLM_COMPILER_GCC71\n");
|
||||||
|
break;
|
||||||
|
case GLM_COMPILER_GCC72:
|
||||||
|
std::printf("GLM_COMPILER_GCC72\n");
|
||||||
|
break;
|
||||||
|
case GLM_COMPILER_GCC80:
|
||||||
|
std::printf("GLM_COMPILER_GCC80\n");
|
||||||
|
break;
|
||||||
default:
|
default:
|
||||||
std::printf("GCC version not detected\n");
|
std::printf("GCC version not detected\n");
|
||||||
Error += 1;
|
Error += 1;
|
||||||
@ -75,33 +96,33 @@ int test_compiler()
|
|||||||
{
|
{
|
||||||
std::printf("GLM_COMPILER_CUDA\n");
|
std::printf("GLM_COMPILER_CUDA\n");
|
||||||
}
|
}
|
||||||
else if(GLM_COMPILER & GLM_COMPILER_LLVM)
|
else if(GLM_COMPILER & GLM_COMPILER_CLANG)
|
||||||
{
|
{
|
||||||
switch(GLM_COMPILER)
|
switch(GLM_COMPILER)
|
||||||
{
|
{
|
||||||
case GLM_COMPILER_LLVM32:
|
case GLM_COMPILER_CLANG32:
|
||||||
std::printf("GLM_COMPILER_LLVM32\n");
|
std::printf("GLM_COMPILER_CLANG32\n");
|
||||||
break;
|
break;
|
||||||
case GLM_COMPILER_LLVM33:
|
case GLM_COMPILER_CLANG33:
|
||||||
std::printf("GLM_COMPILER_LLVM33\n");
|
std::printf("GLM_COMPILER_CLANG33\n");
|
||||||
break;
|
break;
|
||||||
case GLM_COMPILER_LLVM34:
|
case GLM_COMPILER_CLANG34:
|
||||||
std::printf("GLM_COMPILER_LLVM34\n");
|
std::printf("GLM_COMPILER_CLANG34\n");
|
||||||
break;
|
break;
|
||||||
case GLM_COMPILER_LLVM35:
|
case GLM_COMPILER_CLANG35:
|
||||||
std::printf("GLM_COMPILER_LLVM35\n");
|
std::printf("GLM_COMPILER_CLANG35\n");
|
||||||
break;
|
break;
|
||||||
case GLM_COMPILER_LLVM36:
|
case GLM_COMPILER_CLANG36:
|
||||||
std::printf("GLM_COMPILER_LLVM36\n");
|
std::printf("GLM_COMPILER_CLANG36\n");
|
||||||
break;
|
break;
|
||||||
case GLM_COMPILER_LLVM37:
|
case GLM_COMPILER_CLANG37:
|
||||||
std::printf("GLM_COMPILER_LLVM37\n");
|
std::printf("GLM_COMPILER_CLANG37\n");
|
||||||
break;
|
break;
|
||||||
case GLM_COMPILER_LLVM38:
|
case GLM_COMPILER_CLANG38:
|
||||||
std::printf("GLM_COMPILER_LLVM38\n");
|
std::printf("GLM_COMPILER_CLANG38\n");
|
||||||
break;
|
break;
|
||||||
case GLM_COMPILER_LLVM39:
|
case GLM_COMPILER_CLANG39:
|
||||||
std::printf("GLM_COMPILER_LLVM39\n");
|
std::printf("GLM_COMPILER_CLANG39\n");
|
||||||
break;
|
break;
|
||||||
default:
|
default:
|
||||||
std::printf("LLVM version not detected\n");
|
std::printf("LLVM version not detected\n");
|
||||||
|
Loading…
Reference in New Issue
Block a user