Skip to content

Commit 03ebdd0

Browse files
committed
Merge bitcoin/bitcoin#32437: crypto: disable ASan for sha256_sse4 with Clang
4e8ab5e crypto: disable ASan for sha256_sse4 with Clang (fanquake) Pull request description: This also fails to compile when optimisations are being used, see: bitcoin/bitcoin#31913. So just disable ASan under any optimisation level. Closes #31913. ACKs for top commit: maflcko: lgtm ACK 4e8ab5e davidgumberg: Tested ACK bitcoin/bitcoin@4e8ab5e laanwj: Code review ACK 4e8ab5e Tree-SHA512: 680fb424f43b35730e03e0c7443c80445a2cf423d4f9161414ea22fea0b955f49197f8a96d1241896d981c6c13814d3eb7b5e4d8c9138813fb69e437ac4768ea
2 parents 95bb305 + 4e8ab5e commit 03ebdd0

File tree

1 file changed

+6
-2
lines changed

1 file changed

+6
-2
lines changed

src/crypto/sha256_sse4.cpp

Lines changed: 6 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -13,13 +13,17 @@
1313
namespace sha256_sse4
1414
{
1515
void Transform(uint32_t* s, const unsigned char* chunk, size_t blocks)
16-
#if defined(__clang__) && !defined(__OPTIMIZE__)
16+
#if defined(__clang__)
1717
/*
1818
clang is unable to compile this with -O0 and -fsanitize=address.
19-
See upstream bug: https://github.com/llvm/llvm-project/issues/92182
19+
See upstream bug: https://github.com/llvm/llvm-project/issues/92182.
20+
This also fails to compile with -O2, -fcf-protection & -fsanitize=address.
21+
See https://github.com/bitcoin/bitcoin/issues/31913.
2022
*/
23+
#if __has_feature(address_sanitizer)
2124
__attribute__((no_sanitize("address")))
2225
#endif
26+
#endif
2327
{
2428
static const uint32_t K256 alignas(16) [] = {
2529
0x428a2f98, 0x71374491, 0xb5c0fbcf, 0xe9b5dba5,

0 commit comments

Comments
 (0)