Merge pull request #39 from NumScale/simd_fix_x86_predef_redefinition_and_fix_doc

Fix SIMD x86 predef redefinition (on AMD cpus) and fix doc
This commit is contained in:
Rene Rivera
2015-12-08 10:25:38 -06:00
4 changed files with 23 additions and 11 deletions

View File

@ -77,12 +77,24 @@ http://www.boost.org/LICENSE_1_0.txt)
# error "Multiple SIMD architectures detected, this cannot happen!" # error "Multiple SIMD architectures detected, this cannot happen!"
#endif #endif
#if defined(BOOST_HW_SIMD_X86_AVAILABLE) #if defined(BOOST_HW_SIMD_X86_AVAILABLE) && defined(BOOST_HW_SIMD_X86_AMD_AVAILABLE)
# define BOOST_HW_SIMD BOOST_HW_SIMD_X86 // If both standard _X86 and _X86_AMD are available,
// then take the biggest version of the two!
# if BOOST_HW_SIMD_X86 >= BOOST_HW_SIMD_X86_AMD
# define BOOST_HW_SIMD BOOST_HW_SIMD_X86
# else
# define BOOST_HW_SIMD BOOST_HW_SIMD_X86_AMD
# endif
#endif #endif
#if defined(BOOST_HW_SIMD_X86_AMD_AVAILABLE) #if !defined(BOOST_HW_SIMD)
# define BOOST_HW_SIMD BOOST_HW_SIMD_X86_AMD // At this point, only one of these two is defined
# if defined(BOOST_HW_SIMD_X86_AVAILABLE)
# define BOOST_HW_SIMD BOOST_HW_SIMD_X86
# endif
# if defined(BOOST_HW_SIMD_X86_AMD_AVAILABLE)
# define BOOST_HW_SIMD BOOST_HW_SIMD_X86_AMD
# endif
#endif #endif
#if defined(BOOST_HW_SIMD_ARM_AVAILABLE) #if defined(BOOST_HW_SIMD_ARM_AVAILABLE)

View File

@ -67,7 +67,7 @@ http://www.boost.org/LICENSE_1_0.txt)
[[`__FMA__`] [BOOST_HW_SIMD_X86_FMA3_VERSION]] [[`__FMA__`] [BOOST_HW_SIMD_X86_FMA3_VERSION]]
[[`__AVX2__`] [BOOST_HW_SIMD_x86_AVX2_VERSION]] [[`__AVX2__`] [BOOST_HW_SIMD_X86_AVX2_VERSION]]
] ]
*/ */

View File

@ -33,13 +33,13 @@ http://www.boost.org/LICENSE_1_0.txt)
[table [table
[[__predef_symbol__] [__predef_version__]] [[__predef_symbol__] [__predef_version__]]
[[`__SSE4A__`] [BOOST_HW_SIMD_x86_SSE4A_VERSION]] [[`__SSE4A__`] [BOOST_HW_SIMD_X86_SSE4A_VERSION]]
[[`__FMA4__`] [BOOST_HW_SIMD_x86_FMA4_VERSION]] [[`__FMA4__`] [BOOST_HW_SIMD_X86_FMA4_VERSION]]
[[`__XOP__`] [BOOST_HW_SIMD_x86_XOP_VERSION]] [[`__XOP__`] [BOOST_HW_SIMD_X86_XOP_VERSION]]
[[`BOOST_HW_SIMD_X86`] [BOOST_HW_SIMD_x86]] [[`BOOST_HW_SIMD_X86`] [BOOST_HW_SIMD_X86]]
] ]
[note This predef includes every other x86 SIMD extensions and also has other [note This predef includes every other x86 SIMD extensions and also has other

View File

@ -30,9 +30,9 @@ http://www.boost.org/LICENSE_1_0.txt)
#define BOOST_HW_SIMD_X86_AMD_SSE4A_VERSION BOOST_VERSION_NUMBER(4, 0, 0) #define BOOST_HW_SIMD_X86_AMD_SSE4A_VERSION BOOST_VERSION_NUMBER(4, 0, 0)
/*` /*`
[heading `BOOST_HW_SIMD_X86_XOP_VERSION`] [heading `BOOST_HW_SIMD_X86_FMA4_VERSION`]
[@https://en.wikipedia.org/wiki/XOP_instruction_set XOP] x86 extension (AMD specific). [@https://en.wikipedia.org/wiki/FMA_instruction_set#FMA4_instruction_set FMA4] x86 extension (AMD specific).
Version number is: *5.1.0*. Version number is: *5.1.0*.
*/ */