/* * Copyright 2010-2015 Branimir Karadzic. All rights reserved. * License: http://www.opensource.org/licenses/BSD-2-Clause */ #ifndef BX_FLOAT4_T_H_HEADER_GUARD #define BX_FLOAT4_T_H_HEADER_GUARD #include "bx.h" #define BX_FLOAT4_FORCE_INLINE BX_FORCE_INLINE #define BX_FLOAT4_INLINE static inline #if defined(__SSE2__) || (BX_COMPILER_MSVC && (BX_ARCH_64BIT || _M_IX86_FP >= 2) ) # include "float4_sse.h" #elif defined(__ARM_NEON__) && !BX_COMPILER_CLANG # include "float4_neon.h" #elif BX_COMPILER_CLANG \ && !BX_PLATFORM_EMSCRIPTEN \ && !BX_PLATFORM_IOS \ && BX_CLANG_HAS_EXTENSION(attribute_ext_vector_type) # include "float4_langext.h" #else # ifndef BX_FLOAT4_WARN_REFERENCE_IMPL # define BX_FLOAT4_WARN_REFERENCE_IMPL 0 # endif // BX_FLOAT4_WARN_REFERENCE_IMPL # if BX_FLOAT4_WARN_REFERENCE_IMPL # pragma message("************************************\nUsing SIMD reference implementation!\n************************************") # endif // BX_FLOAT4_WARN_REFERENCE_IMPL # include "float4_ref.h" #endif // #endif // BX_FLOAT4_T_H_HEADER_GUARD