Closed
Description
Dockerfile to reproduce: https://gist.github.com/dergoegge/fc97743028f60719759b5498f5f022bf
Building with clang-19
and -fsantize=address
fails with:
7.574 /bitcoin/src/secp256k1/src/scalar_4x64_impl.h:356:5: error: inline assembly requires more registers than available
7.574 356 | "movq 32(%%rsi), %%r11\n"
7.574 | ^
7.575 /bitcoin/src/secp256k1/src/scalar_4x64_impl.h:356:5: error: inline assembly requires more registers than available
7.575 /bitcoin/src/secp256k1/src/scalar_4x64_impl.h:356:5: error: inline assembly requires more registers than available
7.643 [ 24%] Building CXX object src/CMakeFiles/bitcoin_consensus.dir/uint256.cpp.o
7.722 3 errors generated.
7.738 gmake[3]: *** [src/secp256k1/src/CMakeFiles/secp256k1.dir/build.make:76: src/secp256k1/src/CMakeFiles/secp256k1.dir/secp256k1.c.o] Error 1
7.738 gmake[2]: *** [CMakeFiles/Makefile2:1020: src/secp256k1/src/CMakeFiles/secp256k1.dir/all] Error 2
Since this looks secp256k1 related I tried reproducing on a separate secp build but couldn't. This could very well be a compiler/linker bug.
I am surprised that I'm the only one running into this, we don't have a x86 ASan job anywhere? I think I first observed this sometime mid last year.