comparison DEPENDENCIES/generic/include/boost/uuid/detail/config.hpp @ 102:f46d142149f5

Whoops, finish that update
author Chris Cannam
date Mon, 07 Sep 2015 11:13:41 +0100
parents
children
comparison
equal deleted inserted replaced
101:c530137014c0 102:f46d142149f5
1 /*
2 * Copyright Andrey Semashev 2013.
3 * Distributed under the Boost Software License, Version 1.0.
4 * (See accompanying file LICENSE_1_0.txt or copy at
5 * http://www.boost.org/LICENSE_1_0.txt)
6 */
7 /*!
8 * \file uuid/detail/config.hpp
9 *
10 * \brief This header defines configuration macros for Boost.UUID.
11 */
12
13 #ifndef BOOST_UUID_DETAIL_CONFIG_HPP_INCLUDED_
14 #define BOOST_UUID_DETAIL_CONFIG_HPP_INCLUDED_
15
16 #include <boost/config.hpp>
17
18 #ifdef BOOST_HAS_PRAGMA_ONCE
19 #pragma once
20 #endif
21
22 #if !defined(BOOST_UUID_NO_SIMD)
23
24 #if defined(__GNUC__) && defined(__SSE2__)
25
26 // GCC and its pretenders go here
27 #ifndef BOOST_UUID_USE_SSE2
28 #define BOOST_UUID_USE_SSE2
29 #endif
30
31 #if defined(__SSE3__) && !defined(BOOST_UUID_USE_SSE3)
32 #define BOOST_UUID_USE_SSE3
33 #endif
34
35 #if defined(__SSE4_1__) && !defined(BOOST_UUID_USE_SSE41)
36 #define BOOST_UUID_USE_SSE41
37 #endif
38
39 #elif defined(_MSC_VER) && (defined(_M_X64) || (defined(_M_IX86) && defined(_M_IX86_FP) && _M_IX86_FP >= 2))
40
41 #ifndef BOOST_UUID_USE_SSE2
42 #define BOOST_UUID_USE_SSE2
43 #endif
44
45 #elif !defined(BOOST_UUID_USE_SSE41) && !defined(BOOST_UUID_USE_SSE3) && !defined(BOOST_UUID_USE_SSE2)
46
47 #define BOOST_UUID_NO_SIMD
48
49 #endif
50
51 // More advanced ISA extensions imply less advanced are also available
52 #if !defined(BOOST_UUID_USE_SSE3) && defined(BOOST_UUID_USE_SSE41)
53 #define BOOST_UUID_USE_SSE3
54 #endif
55
56 #if !defined(BOOST_UUID_USE_SSE2) && defined(BOOST_UUID_USE_SSE3)
57 #define BOOST_UUID_USE_SSE2
58 #endif
59
60 #endif // !defined(BOOST_UUID_NO_SIMD)
61
62 #endif // BOOST_UUID_DETAIL_CONFIG_HPP_INCLUDED_