cryptopp: fix cpu.cpp.patch
This commit is contained in:
parent
7f9739993f
commit
477209e02c
|
@ -1,283 +1,168 @@
|
|||
diff -uNr cryptopp/cpu.cpp cryptopp.mod/cpu.cpp
|
||||
--- cryptopp/cpu.cpp 2019-04-28 23:36:50.000000000 +0000
|
||||
+++ cryptopp.mod/cpu.cpp 2019-05-10 14:47:58.091890446 +0000
|
||||
@@ -47,7 +47,7 @@
|
||||
--- cryptopp/cpu.cpp 2021-01-01 19:03:59.000000000 +0200
|
||||
+++ cryptopp.mod/cpu.cpp 2021-01-07 14:16:48.145624898 +0200
|
||||
@@ -54,7 +54,7 @@
|
||||
// "$ANDROID_NDK_ROOT/sources/android/cpufeatures".
|
||||
// setenv-android.sh will copy the header and source file
|
||||
// into PWD and the makefile will build it in place.
|
||||
-#if defined(__ANDROID__)
|
||||
+#if 0
|
||||
+#if defined(__ANDROID__) && !defined(__TERMUX__)
|
||||
# include "cpu-features.h"
|
||||
#endif
|
||||
|
||||
@@ -548,264 +548,64 @@
|
||||
@@ -762,6 +762,7 @@
|
||||
|
||||
inline bool CPU_QueryARMv7()
|
||||
{
|
||||
-#if defined(__aarch32__) || defined(__aarch64__)
|
||||
- // ARMv7 or above
|
||||
+#if defined(__arm__) || defined(__aarch32__) || defined(__aarch64__)
|
||||
+#ifndef __TERMUX__
|
||||
#if defined(__ANDROID__) && defined(__arm__)
|
||||
if (((android_getCpuFamily() & ANDROID_CPU_FAMILY_ARM) != 0) &&
|
||||
((android_getCpuFeatures() & ANDROID_CPU_ARM_FEATURE_ARMv7) != 0))
|
||||
@@ -774,11 +775,13 @@
|
||||
// Apple hardware is ARMv7 or above.
|
||||
return true;
|
||||
-#elif defined(__ANDROID__) && defined(__arm__)
|
||||
- if (((android_getCpuFamily() & ANDROID_CPU_FAMILY_ARM) != 0) &&
|
||||
- ((android_getCpuFeatures() & ANDROID_CPU_ARM_FEATURE_ARMv7) != 0))
|
||||
- return true;
|
||||
-#elif defined(__linux__) && defined(__arm__)
|
||||
- if ((getauxval(AT_HWCAP) & HWCAP_ARMv7) != 0)
|
||||
- return true;
|
||||
-#elif defined(__APPLE__) && defined(__arm__)
|
||||
- // Apple hardware is ARMv7 or above.
|
||||
- return true;
|
||||
-#endif
|
||||
+#else
|
||||
return false;
|
||||
#endif
|
||||
+#endif
|
||||
return false;
|
||||
}
|
||||
|
||||
inline bool CPU_QueryNEON()
|
||||
{
|
||||
-#if defined(__ANDROID__) && defined(__aarch64__)
|
||||
- if (((android_getCpuFamily() & ANDROID_CPU_FAMILY_ARM64) != 0) &&
|
||||
- ((android_getCpuFeatures() & ANDROID_CPU_ARM64_FEATURE_ASIMD) != 0))
|
||||
- return true;
|
||||
-#elif defined(__ANDROID__) && defined(__arm__)
|
||||
- if (((android_getCpuFamily() & ANDROID_CPU_FAMILY_ARM) != 0) &&
|
||||
- ((android_getCpuFeatures() & ANDROID_CPU_ARM_FEATURE_NEON) != 0))
|
||||
- return true;
|
||||
-#elif defined(__linux__) && defined(__aarch64__)
|
||||
- if ((getauxval(AT_HWCAP) & HWCAP_ASIMD) != 0)
|
||||
- return true;
|
||||
-#elif defined(__linux__) && defined(__aarch32__)
|
||||
- if ((getauxval(AT_HWCAP2) & HWCAP2_ASIMD) != 0)
|
||||
- return true;
|
||||
-#elif defined(__linux__) && defined(__arm__)
|
||||
- if ((getauxval(AT_HWCAP) & HWCAP_ARM_NEON) != 0)
|
||||
- return true;
|
||||
-#elif defined(__APPLE__) && defined(__aarch64__)
|
||||
- // Core feature set for Aarch32 and Aarch64.
|
||||
+#if defined(__arm__) || defined(__aarch32__) || defined(__aarch64__)
|
||||
+#ifndef __TERMUX__
|
||||
#if defined(__ANDROID__) && defined(__aarch64__)
|
||||
if (((android_getCpuFamily() & ANDROID_CPU_FAMILY_ARM64) != 0) &&
|
||||
((android_getCpuFeatures() & ANDROID_CPU_ARM64_FEATURE_ASIMD) != 0))
|
||||
@@ -800,11 +803,13 @@
|
||||
// Core feature set for Aarch32 and Aarch64.
|
||||
return true;
|
||||
-#endif
|
||||
+#else
|
||||
return false;
|
||||
#endif
|
||||
+#endif
|
||||
return false;
|
||||
}
|
||||
|
||||
inline bool CPU_QueryCRC32()
|
||||
{
|
||||
-#if defined(__ANDROID__) && defined(__aarch64__)
|
||||
- if (((android_getCpuFamily() & ANDROID_CPU_FAMILY_ARM64) != 0) &&
|
||||
- ((android_getCpuFeatures() & ANDROID_CPU_ARM64_FEATURE_CRC32) != 0))
|
||||
- return true;
|
||||
-#elif defined(__ANDROID__) && defined(__aarch32__)
|
||||
- if (((android_getCpuFamily() & ANDROID_CPU_FAMILY_ARM) != 0) &&
|
||||
- ((android_getCpuFeatures() & ANDROID_CPU_ARM_FEATURE_CRC32) != 0))
|
||||
- return true;
|
||||
-#elif defined(__linux__) && defined(__aarch64__)
|
||||
- if ((getauxval(AT_HWCAP) & HWCAP_CRC32) != 0)
|
||||
- return true;
|
||||
-#elif defined(__linux__) && defined(__aarch32__)
|
||||
- if ((getauxval(AT_HWCAP2) & HWCAP2_CRC32) != 0)
|
||||
- return true;
|
||||
-#elif defined(__APPLE__) && defined(__aarch64__)
|
||||
- // No compiler support. CRC intrinsics result in a failed compiled.
|
||||
- return false;
|
||||
-#endif
|
||||
+#ifndef __TERMUX__
|
||||
#if defined(__ANDROID__) && defined(__aarch64__)
|
||||
if (((android_getCpuFamily() & ANDROID_CPU_FAMILY_ARM64) != 0) &&
|
||||
((android_getCpuFeatures() & ANDROID_CPU_ARM64_FEATURE_CRC32) != 0))
|
||||
@@ -823,11 +828,13 @@
|
||||
// No compiler support. CRC intrinsics result in a failed compiled.
|
||||
return false;
|
||||
#endif
|
||||
+#endif
|
||||
return false;
|
||||
}
|
||||
|
||||
inline bool CPU_QueryPMULL()
|
||||
{
|
||||
-#if defined(__ANDROID__) && defined(__aarch64__)
|
||||
- if (((android_getCpuFamily() & ANDROID_CPU_FAMILY_ARM64) != 0) &&
|
||||
- ((android_getCpuFeatures() & ANDROID_CPU_ARM64_FEATURE_PMULL) != 0))
|
||||
- return true;
|
||||
-#elif defined(__ANDROID__) && defined(__aarch32__)
|
||||
- if (((android_getCpuFamily() & ANDROID_CPU_FAMILY_ARM) != 0) &&
|
||||
- ((android_getCpuFeatures() & ANDROID_CPU_ARM_FEATURE_PMULL) != 0))
|
||||
- return true;
|
||||
-#elif defined(__linux__) && defined(__aarch64__)
|
||||
- if ((getauxval(AT_HWCAP) & HWCAP_PMULL) != 0)
|
||||
- return true;
|
||||
-#elif defined(__linux__) && defined(__aarch32__)
|
||||
- if ((getauxval(AT_HWCAP2) & HWCAP2_PMULL) != 0)
|
||||
- return true;
|
||||
-#elif defined(__APPLE__) && defined(__aarch64__)
|
||||
- // No compiler support. PMULL intrinsics result in a failed compiled.
|
||||
- return false;
|
||||
-#endif
|
||||
+#ifndef __TERMUX__
|
||||
#if defined(__ANDROID__) && defined(__aarch64__)
|
||||
if (((android_getCpuFamily() & ANDROID_CPU_FAMILY_ARM64) != 0) &&
|
||||
((android_getCpuFeatures() & ANDROID_CPU_ARM64_FEATURE_PMULL) != 0))
|
||||
@@ -846,11 +853,13 @@
|
||||
// No compiler support. PMULL intrinsics result in a failed compiled.
|
||||
return false;
|
||||
#endif
|
||||
+#endif
|
||||
return false;
|
||||
}
|
||||
|
||||
inline bool CPU_QueryAES()
|
||||
{
|
||||
-#if defined(__ANDROID__) && defined(__aarch64__)
|
||||
- if (((android_getCpuFamily() & ANDROID_CPU_FAMILY_ARM64) != 0) &&
|
||||
- ((android_getCpuFeatures() & ANDROID_CPU_ARM64_FEATURE_AES) != 0))
|
||||
- return true;
|
||||
-#elif defined(__ANDROID__) && defined(__aarch32__)
|
||||
- if (((android_getCpuFamily() & ANDROID_CPU_FAMILY_ARM) != 0) &&
|
||||
- ((android_getCpuFeatures() & ANDROID_CPU_ARM_FEATURE_AES) != 0))
|
||||
- return true;
|
||||
-#elif defined(__linux__) && defined(__aarch64__)
|
||||
- if ((getauxval(AT_HWCAP) & HWCAP_AES) != 0)
|
||||
- return true;
|
||||
-#elif defined(__linux__) && defined(__aarch32__)
|
||||
- if ((getauxval(AT_HWCAP2) & HWCAP2_AES) != 0)
|
||||
- return true;
|
||||
-#elif defined(__APPLE__) && defined(__aarch64__)
|
||||
- unsigned int device, version;
|
||||
- GetAppleMachineInfo(device, version);
|
||||
- return IsAppleMachineARMv8(device, version);
|
||||
-#endif
|
||||
+#ifndef __TERMUX__
|
||||
#if defined(__ANDROID__) && defined(__aarch64__)
|
||||
if (((android_getCpuFamily() & ANDROID_CPU_FAMILY_ARM64) != 0) &&
|
||||
((android_getCpuFeatures() & ANDROID_CPU_ARM64_FEATURE_AES) != 0))
|
||||
@@ -868,11 +877,13 @@
|
||||
#elif defined(__APPLE__) && defined(__aarch64__)
|
||||
return IsAppleMachineARMv8();
|
||||
#endif
|
||||
+#endif
|
||||
return false;
|
||||
}
|
||||
|
||||
inline bool CPU_QuerySHA1()
|
||||
{
|
||||
-#if defined(__ANDROID__) && defined(__aarch64__)
|
||||
- if (((android_getCpuFamily() & ANDROID_CPU_FAMILY_ARM64) != 0) &&
|
||||
- ((android_getCpuFeatures() & ANDROID_CPU_ARM64_FEATURE_SHA1) != 0))
|
||||
- return true;
|
||||
-#elif defined(__ANDROID__) && defined(__aarch32__)
|
||||
- if (((android_getCpuFamily() & ANDROID_CPU_FAMILY_ARM) != 0) &&
|
||||
- ((android_getCpuFeatures() & ANDROID_CPU_ARM_FEATURE_SHA1) != 0))
|
||||
- return true;
|
||||
-#elif defined(__linux__) && defined(__aarch64__)
|
||||
- if ((getauxval(AT_HWCAP) & HWCAP_SHA1) != 0)
|
||||
- return true;
|
||||
-#elif defined(__linux__) && defined(__aarch32__)
|
||||
- if ((getauxval(AT_HWCAP2) & HWCAP2_SHA1) != 0)
|
||||
- return true;
|
||||
-#elif defined(__APPLE__) && defined(__aarch64__)
|
||||
- unsigned int device, version;
|
||||
- GetAppleMachineInfo(device, version);
|
||||
- return IsAppleMachineARMv8(device, version);
|
||||
-#endif
|
||||
+#ifndef __TERMUX__
|
||||
#if defined(__ANDROID__) && defined(__aarch64__)
|
||||
if (((android_getCpuFamily() & ANDROID_CPU_FAMILY_ARM64) != 0) &&
|
||||
((android_getCpuFeatures() & ANDROID_CPU_ARM64_FEATURE_SHA1) != 0))
|
||||
@@ -890,11 +901,13 @@
|
||||
#elif defined(__APPLE__) && defined(__aarch64__)
|
||||
return IsAppleMachineARMv8();
|
||||
#endif
|
||||
+#endif
|
||||
return false;
|
||||
}
|
||||
|
||||
inline bool CPU_QuerySHA2()
|
||||
inline bool CPU_QuerySHA256()
|
||||
{
|
||||
-#if defined(__ANDROID__) && defined(__aarch64__)
|
||||
- if (((android_getCpuFamily() & ANDROID_CPU_FAMILY_ARM64) != 0) &&
|
||||
- ((android_getCpuFeatures() & ANDROID_CPU_ARM64_FEATURE_SHA2) != 0))
|
||||
- return true;
|
||||
-#elif defined(__ANDROID__) && defined(__aarch32__)
|
||||
- if (((android_getCpuFamily() & ANDROID_CPU_FAMILY_ARM) != 0) &&
|
||||
- ((android_getCpuFeatures() & ANDROID_CPU_ARM_FEATURE_SHA2) != 0))
|
||||
- return true;
|
||||
-#elif defined(__linux__) && defined(__aarch64__)
|
||||
- if ((getauxval(AT_HWCAP) & HWCAP_SHA2) != 0)
|
||||
- return true;
|
||||
-#elif defined(__linux__) && defined(__aarch32__)
|
||||
- if ((getauxval(AT_HWCAP2) & HWCAP2_SHA2) != 0)
|
||||
- return true;
|
||||
-#elif defined(__APPLE__) && defined(__aarch64__)
|
||||
- unsigned int device, version;
|
||||
- GetAppleMachineInfo(device, version);
|
||||
- return IsAppleMachineARMv8(device, version);
|
||||
-#endif
|
||||
+#ifndef __TERMUX__
|
||||
#if defined(__ANDROID__) && defined(__aarch64__)
|
||||
if (((android_getCpuFamily() & ANDROID_CPU_FAMILY_ARM64) != 0) &&
|
||||
((android_getCpuFeatures() & ANDROID_CPU_ARM64_FEATURE_SHA2) != 0))
|
||||
@@ -912,11 +925,13 @@
|
||||
#elif defined(__APPLE__) && defined(__aarch64__)
|
||||
return IsAppleMachineARMv8();
|
||||
#endif
|
||||
+#endif
|
||||
return false;
|
||||
}
|
||||
|
||||
inline bool CPU_QuerySHA512()
|
||||
{
|
||||
-// Some ARMv8.4 features are disabled at the moment
|
||||
-#if defined(__ANDROID__) && defined(__aarch64__) && 0
|
||||
- if (((android_getCpuFamily() & ANDROID_CPU_FAMILY_ARM64) != 0) &&
|
||||
- ((android_getCpuFeatures() & ANDROID_CPU_ARM64_FEATURE_SHA512) != 0))
|
||||
- return true;
|
||||
-#elif defined(__ANDROID__) && defined(__aarch32__) && 0
|
||||
- if (((android_getCpuFamily() & ANDROID_CPU_FAMILY_ARM) != 0) &&
|
||||
- ((android_getCpuFeatures() & ANDROID_CPU_ARM_FEATURE_SHA512) != 0))
|
||||
- return true;
|
||||
-#elif defined(__linux__) && defined(__aarch64__)
|
||||
- if ((getauxval(AT_HWCAP) & HWCAP_SHA512) != 0)
|
||||
- return true;
|
||||
-#elif defined(__linux__) && defined(__aarch32__)
|
||||
- if ((getauxval(AT_HWCAP2) & HWCAP2_SHA512) != 0)
|
||||
- return true;
|
||||
-#elif defined(__APPLE__) && defined(__aarch64__) && 0
|
||||
- unsigned int device, version;
|
||||
- GetAppleMachineInfo(device, version);
|
||||
- return IsAppleMachineARMv84(device, version);
|
||||
-#endif
|
||||
+#ifndef __TERMUX__
|
||||
// Some ARMv8.4 features are disabled at the moment
|
||||
#if defined(__ANDROID__) && defined(__aarch64__) && 0
|
||||
if (((android_getCpuFamily() & ANDROID_CPU_FAMILY_ARM64) != 0) &&
|
||||
@@ -935,11 +950,13 @@
|
||||
#elif defined(__APPLE__) && defined(__aarch64__) && 0
|
||||
return false;
|
||||
#endif
|
||||
+#endif
|
||||
return false;
|
||||
}
|
||||
|
||||
inline bool CPU_QuerySHA3()
|
||||
{
|
||||
-// Some ARMv8.4 features are disabled at the moment
|
||||
-#if defined(__ANDROID__) && defined(__aarch64__) && 0
|
||||
- if (((android_getCpuFamily() & ANDROID_CPU_FAMILY_ARM64) != 0) &&
|
||||
- ((android_getCpuFeatures() & ANDROID_CPU_ARM64_FEATURE_SHA3) != 0))
|
||||
- return true;
|
||||
-#elif defined(__ANDROID__) && defined(__aarch32__) && 0
|
||||
- if (((android_getCpuFamily() & ANDROID_CPU_FAMILY_ARM) != 0) &&
|
||||
- ((android_getCpuFeatures() & ANDROID_CPU_ARM_FEATURE_SHA3) != 0))
|
||||
- return true;
|
||||
-#elif defined(__linux__) && defined(__aarch64__)
|
||||
- if ((getauxval(AT_HWCAP) & HWCAP_SHA3) != 0)
|
||||
- return true;
|
||||
-#elif defined(__linux__) && defined(__aarch32__)
|
||||
- if ((getauxval(AT_HWCAP2) & HWCAP2_SHA3) != 0)
|
||||
- return true;
|
||||
-#elif defined(__APPLE__) && defined(__aarch64__) && 0
|
||||
- unsigned int device, version;
|
||||
- GetAppleMachineInfo(device, version);
|
||||
- return IsAppleMachineARMv84(device, version);
|
||||
-#endif
|
||||
+#ifndef __TERMUX__
|
||||
// Some ARMv8.4 features are disabled at the moment
|
||||
#if defined(__ANDROID__) && defined(__aarch64__) && 0
|
||||
if (((android_getCpuFamily() & ANDROID_CPU_FAMILY_ARM64) != 0) &&
|
||||
@@ -958,11 +975,13 @@
|
||||
#elif defined(__APPLE__) && defined(__aarch64__) && 0
|
||||
return false;
|
||||
#endif
|
||||
+#endif
|
||||
return false;
|
||||
}
|
||||
|
||||
inline bool CPU_QuerySM3()
|
||||
{
|
||||
-// Some ARMv8.4 features are disabled at the moment
|
||||
-#if defined(__ANDROID__) && defined(__aarch64__) && 0
|
||||
- if (((android_getCpuFamily() & ANDROID_CPU_FAMILY_ARM64) != 0) &&
|
||||
- ((android_getCpuFeatures() & ANDROID_CPU_ARM64_FEATURE_SM3) != 0))
|
||||
- return true;
|
||||
-#elif defined(__ANDROID__) && defined(__aarch32__) && 0
|
||||
- if (((android_getCpuFamily() & ANDROID_CPU_FAMILY_ARM) != 0) &&
|
||||
- ((android_getCpuFeatures() & ANDROID_CPU_ARM_FEATURE_SM3) != 0))
|
||||
- return true;
|
||||
-#elif defined(__linux__) && defined(__aarch64__)
|
||||
- if ((getauxval(AT_HWCAP) & HWCAP_SM3) != 0)
|
||||
- return true;
|
||||
-#elif defined(__linux__) && defined(__aarch32__)
|
||||
- if ((getauxval(AT_HWCAP2) & HWCAP2_SM3) != 0)
|
||||
- return true;
|
||||
-#elif defined(__APPLE__) && defined(__aarch64__) && 0
|
||||
- unsigned int device, version;
|
||||
- GetAppleMachineInfo(device, version);
|
||||
- return IsAppleMachineARMv84(device, version);
|
||||
-#endif
|
||||
+#ifndef __TERMUX__
|
||||
// Some ARMv8.4 features are disabled at the moment
|
||||
#if defined(__ANDROID__) && defined(__aarch64__) && 0
|
||||
if (((android_getCpuFamily() & ANDROID_CPU_FAMILY_ARM64) != 0) &&
|
||||
@@ -981,11 +1000,13 @@
|
||||
#elif defined(__APPLE__) && defined(__aarch64__) && 0
|
||||
return false;
|
||||
#endif
|
||||
+#endif
|
||||
return false;
|
||||
}
|
||||
|
||||
inline bool CPU_QuerySM4()
|
||||
{
|
||||
-// Some ARMv8.4 features are disabled at the moment
|
||||
-#if defined(__ANDROID__) && defined(__aarch64__) && 0
|
||||
- if (((android_getCpuFamily() & ANDROID_CPU_FAMILY_ARM64) != 0) &&
|
||||
- ((android_getCpuFeatures() & ANDROID_CPU_ARM64_FEATURE_SM4) != 0))
|
||||
- return true;
|
||||
-#elif defined(__ANDROID__) && defined(__aarch32__) && 0
|
||||
- if (((android_getCpuFamily() & ANDROID_CPU_FAMILY_ARM) != 0) &&
|
||||
- ((android_getCpuFeatures() & ANDROID_CPU_ARM_FEATURE_SM4) != 0))
|
||||
- return true;
|
||||
-#elif defined(__linux__) && defined(__aarch64__)
|
||||
- if ((getauxval(AT_HWCAP) & HWCAP_SM4) != 0)
|
||||
- return true;
|
||||
-#elif defined(__linux__) && defined(__aarch32__)
|
||||
- if ((getauxval(AT_HWCAP2) & HWCAP2_SM4) != 0)
|
||||
- return true;
|
||||
-#elif defined(__APPLE__) && defined(__aarch64__) && 0
|
||||
- unsigned int device, version;
|
||||
- GetAppleMachineInfo(device, version);
|
||||
- return IsAppleMachineARMv84(device, version);
|
||||
-#endif
|
||||
+#ifndef __TERMUX__
|
||||
// Some ARMv8.4 features are disabled at the moment
|
||||
#if defined(__ANDROID__) && defined(__aarch64__) && 0
|
||||
if (((android_getCpuFamily() & ANDROID_CPU_FAMILY_ARM64) != 0) &&
|
||||
@@ -1004,6 +1025,7 @@
|
||||
#elif defined(__APPLE__) && defined(__aarch64__) && 0
|
||||
return false;
|
||||
#endif
|
||||
+#endif
|
||||
return false;
|
||||
}
|
||||
|
||||
|
|
Loading…
Reference in New Issue