Back to home page

EIC code displayed by LXR

 
 

    


File indexing completed on 2025-01-18 09:48:05

0001 /*
0002 Copyright Charly Chevalier 2015
0003 Copyright Joel Falcou 2015
0004 Distributed under the Boost Software License, Version 1.0.
0005 (See accompanying file LICENSE_1_0.txt or copy at
0006 http://www.boost.org/LICENSE_1_0.txt)
0007 */
0008 
0009 #ifndef BOOST_PREDEF_HARDWARE_SIMD_ARM_H
0010 #define BOOST_PREDEF_HARDWARE_SIMD_ARM_H
0011 
0012 #include <boost/predef/version_number.h>
0013 #include <boost/predef/hardware/simd/arm/versions.h>
0014 
0015 /* tag::reference[]
0016 = `BOOST_HW_SIMD_ARM`
0017 
0018 The SIMD extension for ARM (*if detected*).
0019 Version number depends on the most recent detected extension.
0020 
0021 [options="header"]
0022 |===
0023 | {predef_symbol} | {predef_version}
0024 
0025 | `+__ARM_NEON__+` | {predef_detection}
0026 | `+__aarch64__+` | {predef_detection}
0027 | `+_M_ARM+` | {predef_detection}
0028 | `+_M_ARM64+` | {predef_detection}
0029 |===
0030 
0031 [options="header"]
0032 |===
0033 | {predef_symbol} | {predef_version}
0034 
0035 | `+__ARM_NEON__+` | BOOST_HW_SIMD_ARM_NEON_VERSION
0036 | `+__aarch64__+` | BOOST_HW_SIMD_ARM_NEON_VERSION
0037 | `+_M_ARM+` | BOOST_HW_SIMD_ARM_NEON_VERSION
0038 | `+_M_ARM64+` | BOOST_HW_SIMD_ARM_NEON_VERSION
0039 |===
0040 
0041 */ // end::reference[]
0042 
0043 #define BOOST_HW_SIMD_ARM BOOST_VERSION_NUMBER_NOT_AVAILABLE
0044 
0045 #undef BOOST_HW_SIMD_ARM
0046 #if !defined(BOOST_HW_SIMD_ARM) && (defined(__ARM_NEON__) || defined(__aarch64__) || defined (_M_ARM) || defined (_M_ARM64))
0047 #   define BOOST_HW_SIMD_ARM BOOST_HW_SIMD_ARM_NEON_VERSION
0048 #endif
0049 
0050 #if !defined(BOOST_HW_SIMD_ARM)
0051 #   define BOOST_HW_SIMD_ARM BOOST_VERSION_NUMBER_NOT_AVAILABLE
0052 #else
0053 #   define BOOST_HW_SIMD_ARM_AVAILABLE
0054 #endif
0055 
0056 #define BOOST_HW_SIMD_ARM_NAME "ARM SIMD"
0057 
0058 #endif
0059 
0060 #include <boost/predef/detail/test.h>
0061 BOOST_PREDEF_DECLARE_TEST(BOOST_HW_SIMD_ARM, BOOST_HW_SIMD_ARM_NAME)