github.com/searKing/golang/go@v1.2.117/os/signal/cgo/include/boost/predef/hardware/simd/x86.h (about)

     1  /*
     2  Copyright Charly Chevalier 2015
     3  Copyright Joel Falcou 2015
     4  Distributed under the Boost Software License, Version 1.0.
     5  (See accompanying file LICENSE_1_0.txt or copy at
     6  http://www.boost.org/LICENSE_1_0.txt)
     7  */
     8  
     9  #ifndef BOOST_PREDEF_HARDWARE_SIMD_X86_H
    10  #define BOOST_PREDEF_HARDWARE_SIMD_X86_H
    11  
    12  #include <boost/predef/version_number.h>
    13  #include <boost/predef/hardware/simd/x86/versions.h>
    14  
    15  /* tag::reference[]
    16  = `BOOST_HW_SIMD_X86`
    17  
    18  The SIMD extension for x86 (*if detected*).
    19  Version number depends on the most recent detected extension.
    20  
    21  [options="header"]
    22  |===
    23  | {predef_symbol} | {predef_version}
    24  
    25  | `+__SSE__+` | {predef_detection}
    26  | `+_M_X64+` | {predef_detection}
    27  | `_M_IX86_FP >= 1` | {predef_detection}
    28  
    29  | `+__SSE2__+` | {predef_detection}
    30  | `+_M_X64+` | {predef_detection}
    31  | `_M_IX86_FP >= 2` | {predef_detection}
    32  
    33  | `+__SSE3__+` | {predef_detection}
    34  
    35  | `+__SSSE3__+` | {predef_detection}
    36  
    37  | `+__SSE4_1__+` | {predef_detection}
    38  
    39  | `+__SSE4_2__+` | {predef_detection}
    40  
    41  | `+__AVX__+` | {predef_detection}
    42  
    43  | `+__FMA__+` | {predef_detection}
    44  
    45  | `+__AVX2__+` | {predef_detection}
    46  |===
    47  
    48  [options="header"]
    49  |===
    50  | {predef_symbol} | {predef_version}
    51  
    52  | `+__SSE__+` | BOOST_HW_SIMD_X86_SSE_VERSION
    53  | `+_M_X64+` | BOOST_HW_SIMD_X86_SSE_VERSION
    54  | `_M_IX86_FP >= 1` | BOOST_HW_SIMD_X86_SSE_VERSION
    55  
    56  | `+__SSE2__+` | BOOST_HW_SIMD_X86_SSE2_VERSION
    57  | `+_M_X64+` | BOOST_HW_SIMD_X86_SSE2_VERSION
    58  | `_M_IX86_FP >= 2` | BOOST_HW_SIMD_X86_SSE2_VERSION
    59  
    60  | `+__SSE3__+` | BOOST_HW_SIMD_X86_SSE3_VERSION
    61  
    62  | `+__SSSE3__+` | BOOST_HW_SIMD_X86_SSSE3_VERSION
    63  
    64  | `+__SSE4_1__+` | BOOST_HW_SIMD_X86_SSE4_1_VERSION
    65  
    66  | `+__SSE4_2__+` | BOOST_HW_SIMD_X86_SSE4_2_VERSION
    67  
    68  | `+__AVX__+` | BOOST_HW_SIMD_X86_AVX_VERSION
    69  
    70  | `+__FMA__+` | BOOST_HW_SIMD_X86_FMA3_VERSION
    71  
    72  | `+__AVX2__+` | BOOST_HW_SIMD_X86_AVX2_VERSION
    73  |===
    74  
    75  */ // end::reference[]
    76  
    77  #define BOOST_HW_SIMD_X86 BOOST_VERSION_NUMBER_NOT_AVAILABLE
    78  
    79  #undef BOOST_HW_SIMD_X86
    80  #if !defined(BOOST_HW_SIMD_X86) && defined(__MIC__)
    81  #   define BOOST_HW_SIMD_X86 BOOST_HW_SIMD_X86_MIC_VERSION
    82  #endif
    83  #if !defined(BOOST_HW_SIMD_X86) && defined(__AVX2__)
    84  #   define BOOST_HW_SIMD_X86 BOOST_HW_SIMD_X86_AVX2_VERSION
    85  #endif
    86  #if !defined(BOOST_HW_SIMD_X86) && defined(__AVX__)
    87  #   define BOOST_HW_SIMD_X86 BOOST_HW_SIMD_X86_AVX_VERSION
    88  #endif
    89  #if !defined(BOOST_HW_SIMD_X86) && defined(__FMA__)
    90  #   define BOOST_HW_SIMD_X86 BOOST_HW_SIMD_X86_FMA_VERSION
    91  #endif
    92  #if !defined(BOOST_HW_SIMD_X86) && defined(__SSE4_2__)
    93  #   define BOOST_HW_SIMD_X86 BOOST_HW_SIMD_X86_SSE4_2_VERSION
    94  #endif
    95  #if !defined(BOOST_HW_SIMD_X86) && defined(__SSE4_1__)
    96  #   define BOOST_HW_SIMD_X86 BOOST_HW_SIMD_X86_SSE4_1_VERSION
    97  #endif
    98  #if !defined(BOOST_HW_SIMD_X86) && defined(__SSSE3__)
    99  #   define BOOST_HW_SIMD_X86 BOOST_HW_SIMD_X86_SSSE3_VERSION
   100  #endif
   101  #if !defined(BOOST_HW_SIMD_X86) && defined(__SSE3__)
   102  #   define BOOST_HW_SIMD_X86 BOOST_HW_SIMD_X86_SSE3_VERSION
   103  #endif
   104  #if !defined(BOOST_HW_SIMD_X86) && (defined(__SSE2__) || defined(_M_X64) || (defined(_M_IX86_FP) && _M_IX86_FP >= 2))
   105  #   define BOOST_HW_SIMD_X86 BOOST_HW_SIMD_X86_SSE2_VERSION
   106  #endif
   107  #if !defined(BOOST_HW_SIMD_X86) && (defined(__SSE__) || defined(_M_X64) || (defined(_M_IX86_FP) && _M_IX86_FP >= 1))
   108  #   define BOOST_HW_SIMD_X86 BOOST_HW_SIMD_X86_SSE_VERSION
   109  #endif
   110  #if !defined(BOOST_HW_SIMD_X86) && defined(__MMX__)
   111  #   define BOOST_HW_SIMD_X86 BOOST_HW_SIMD_X86_MMX_VERSION
   112  #endif
   113  
   114  #if !defined(BOOST_HW_SIMD_X86)
   115  #   define BOOST_HW_SIMD_X86 BOOST_VERSION_NUMBER_NOT_AVAILABLE
   116  #else
   117  #   define BOOST_HW_SIMD_X86_AVAILABLE
   118  #endif
   119  
   120  #define BOOST_HW_SIMD_X86_NAME "x86 SIMD"
   121  
   122  #endif
   123  
   124  #include <boost/predef/detail/test.h>
   125  BOOST_PREDEF_DECLARE_TEST(BOOST_HW_SIMD_X86, BOOST_HW_SIMD_X86_NAME)