Fix PP-logic for clang/win and Intel/Win.

See https://gist.github.com/dodheim/918e9dc480fe39e590c3af2ceb706e1b.
This commit is contained in:
jzmaddock
2016-04-03 18:49:59 +01:00
parent c4e847b9fd
commit 05271ba3be

View File

@@ -8,8 +8,8 @@
#ifndef BOOST_MP_DETAIL_BITSCAN_HPP
#define BOOST_MP_DETAIL_BITSCAN_HPP
#if defined(BOOST_MSVC) && (defined(_M_IX86) || defined(_M_X64))
#include <Intrin.h>
#if (defined(BOOST_MSVC) || (defined(__clang__) && defined(__c2__)) || (defined(BOOST_INTEL) && defined(_MSC_VER))) && (defined(_M_IX86) || defined(_M_X64))
#include <intrin.h>
#endif
namespace boost{ namespace multiprecision{ namespace detail{
@@ -38,7 +38,7 @@ inline unsigned find_msb(Unsigned mask, const mpl::int_<0>&)
return --index;
}
#if defined(BOOST_MSVC) && (defined(_M_IX86) || defined(_M_X64))
#if (defined(BOOST_MSVC) || (defined(__clang__) && defined(__c2__)) || (defined(BOOST_INTEL) && defined(_MSC_VER))) && (defined(_M_IX86) || defined(_M_X64))
#pragma intrinsic(_BitScanForward,_BitScanReverse)