mirror of
https://github.com/bitcoin/bitcoin.git
synced 2026-01-19 23:03:45 +01:00
Merge bitcoin/bitcoin#29407: build: remove confusing and inconsistent disable-asm option
f8a06f7a02doc: remove references to disable-asm option now that it's gone (Cory Fields)376f0f6d07build: remove confusing and inconsistent disable-asm option (Cory Fields) Pull request description: 1. It didn't actually disable asm usage in our code. Regardless of the setting, asm is used in random.cpp and support/cleanse.cpp. 2. The value wasn't forwarded to libsecp as a user might have reasonably expected. 3. We now have the DISABLE_OPTIMIZED_SHA256 define which is what disable-asm actually did in practice. If there is any desire, we can hook DISABLE_OPTIMIZED_SHA256 up to a new configure option that actually does what it says. Additionally, this is one of the last (THE last?) remaining uses of autoconf defines in our crypto code. As such it seems like low-hanging fruit. ACKs for top commit: fanquake: ACKf8a06f7a02Tree-SHA512: 4a99c2130225acbe9dc7399ed572a04ca155cbfa3eef8178a632ba533017d264691e6482cceb1d8f9c5d768619d99a2466dea4b82b27b18b872bceae91b92fbb
This commit is contained in:
@@ -50,10 +50,8 @@ LIBBITCOIN_WALLET_TOOL=libbitcoin_wallet_tool.a
|
||||
endif
|
||||
|
||||
LIBBITCOIN_CRYPTO = $(LIBBITCOIN_CRYPTO_BASE)
|
||||
if USE_ASM
|
||||
LIBBITCOIN_CRYPTO_SSE4 = crypto/libbitcoin_crypto_sse4.la
|
||||
LIBBITCOIN_CRYPTO += $(LIBBITCOIN_CRYPTO_SSE4)
|
||||
endif
|
||||
if ENABLE_SSE41
|
||||
LIBBITCOIN_CRYPTO_SSE41 = crypto/libbitcoin_crypto_sse41.la
|
||||
LIBBITCOIN_CRYPTO += $(LIBBITCOIN_CRYPTO_SSE41)
|
||||
|
||||
@@ -26,13 +26,11 @@
|
||||
#endif
|
||||
|
||||
#if defined(__x86_64__) || defined(__amd64__) || defined(__i386__)
|
||||
#if defined(USE_ASM)
|
||||
namespace sha256_sse4
|
||||
{
|
||||
void Transform(uint32_t* s, const unsigned char* chunk, size_t blocks);
|
||||
}
|
||||
#endif
|
||||
#endif
|
||||
|
||||
namespace sha256d64_sse41
|
||||
{
|
||||
@@ -574,7 +572,7 @@ bool SelfTest() {
|
||||
}
|
||||
|
||||
#if !defined(DISABLE_OPTIMIZED_SHA256)
|
||||
#if defined(USE_ASM) && (defined(__x86_64__) || defined(__amd64__) || defined(__i386__))
|
||||
#if (defined(__x86_64__) || defined(__amd64__) || defined(__i386__))
|
||||
/** Check whether the OS has enabled AVX registers. */
|
||||
bool AVXEnabled()
|
||||
{
|
||||
@@ -597,7 +595,7 @@ std::string SHA256AutoDetect(sha256_implementation::UseImplementation use_implem
|
||||
TransformD64_8way = nullptr;
|
||||
|
||||
#if !defined(DISABLE_OPTIMIZED_SHA256)
|
||||
#if defined(USE_ASM) && defined(HAVE_GETCPUID)
|
||||
#if defined(HAVE_GETCPUID)
|
||||
bool have_sse4 = false;
|
||||
bool have_xsave = false;
|
||||
bool have_avx = false;
|
||||
@@ -654,7 +652,7 @@ std::string SHA256AutoDetect(sha256_implementation::UseImplementation use_implem
|
||||
ret += ",avx2(8way)";
|
||||
}
|
||||
#endif
|
||||
#endif // defined(USE_ASM) && defined(HAVE_GETCPUID)
|
||||
#endif // defined(HAVE_GETCPUID)
|
||||
|
||||
#if defined(ENABLE_ARM_SHANI)
|
||||
bool have_arm_shani = false;
|
||||
|
||||
Reference in New Issue
Block a user