From 52613240aef852923fce5bc5134d14713f8ffbf6 Mon Sep 17 00:00:00 2001 From: Jeffrey Walton Date: Fri, 30 Nov 2018 08:22:30 -0500 Subject: [PATCH] Update documentation --- cpu.h | 21 ++++++--------------- 1 file changed, 6 insertions(+), 15 deletions(-) diff --git a/cpu.h b/cpu.h index 972cf3bc..b21ad356 100644 --- a/cpu.h +++ b/cpu.h @@ -610,9 +610,6 @@ void CRYPTOPP_API DetectPowerpcFeatures(); /// \details Runtime support requires compile time support. When compiling with GCC, you may /// need to compile with -mcpu=power4; while IBM XL C/C++ compilers require /// -qarch=pwr6 -qaltivec. Also see PowerPC's _ALTIVEC_ preprocessor macro. -/// \details Atilvec was first available in the early 2000's. However Crypto++ releies heavily -/// on unaligned loads and stores which is a Power7 feature. If the platform lacks Power7 -/// extensions, then the GNUmakefile sets -DCRYPTOPP_DISABLE_POWER7. /// \note This function is only available on PowerPC and PowerPC-64 platforms inline bool HasAltivec() { @@ -626,9 +623,6 @@ inline bool HasAltivec() /// \details Runtime support requires compile time support. When compiling with GCC, you may /// need to compile with -mcpu=power7; while IBM XL C/C++ compilers require /// -qarch=pwr7 -qaltivec. Also see PowerPC's _ALTIVEC_ preprocessor macro. -/// \details Atilvec was first available in the early 2000's. However Crypto++ releies heavily -/// on unaligned loads and stores which is a Power7 feature. If the platform lacks Power7 -/// extensions, then the GNUmakefile sets -DCRYPTOPP_DISABLE_POWER7. /// \note This function is only available on PowerPC and PowerPC-64 platforms inline bool HasPower7() { @@ -642,9 +636,6 @@ inline bool HasPower7() /// \details Runtime support requires compile time support. When compiling with GCC, you may /// need to compile with -mcpu=power8; while IBM XL C/C++ compilers require /// -qarch=pwr8 -qaltivec. Also see PowerPC's _ALTIVEC_ preprocessor macro. -/// \details Atilvec was first available in the early 2000's. However Crypto++ releies heavily -/// on unaligned loads and stores which is a Power7 feature. If the platform lacks Power7 -/// extensions, then the GNUmakefile sets -DCRYPTOPP_DISABLE_POWER7. /// \note This function is only available on PowerPC and PowerPC-64 platforms inline bool HasPower8() { @@ -658,9 +649,6 @@ inline bool HasPower8() /// \details Runtime support requires compile time support. When compiling with GCC, you may /// need to compile with -mcpu=power9; while IBM XL C/C++ compilers require /// -qarch=pwr9 -qaltivec. Also see PowerPC's _ALTIVEC_ preprocessor macro. -/// \details Atilvec was first available in the early 2000's. However Crypto++ releies heavily -/// on unaligned loads and stores which is a Power7 feature. If the platform lacks Power7 -/// extensions, then the GNUmakefile sets -DCRYPTOPP_DISABLE_POWER7. /// \note This function is only available on PowerPC and PowerPC-64 platforms inline bool HasPower9() { @@ -730,15 +718,18 @@ inline bool HasSHA512() /// \details Runtime support requires compile time support. When compiling with GCC, you may /// need to compile with -mcpu=power9; while IBM XL C/C++ compilers require /// -qarch=pwr9 -qaltivec. Also see PowerPC's _ALTIVEC_ preprocessor macro. -/// \details Atilvec was first available in the early 2000's. However Crypto++ relies heavily -/// on unaligned loads and stores which is a Power7 feature. If the platform lacks Power7 -/// extensions, then the GNUmakefile sets -DCRYPTOPP_DISABLE_POWER7. /// \note This function is only available on PowerPC and PowerPC-64 platforms inline bool HasDARN() { if (!g_PowerpcDetectionDone) DetectPowerpcFeatures(); + + // see comments in cpu.cpp +#if defined(__ibmxl__) && defined(__linux__) + return false; +#else return g_hasDARN; +#endif } /// \brief Provides the cache line size