Update secp256k1 subtree to latest master #34412
pull fanquake wants to merge 2 commits into bitcoin:master from fanquake:secp256k1_subtree_update changing 37 files +328 −218-
fanquake commented at 4:07 pm on January 26, 2026: memberUpdates the secp256k1 subtree to latest master (https://github.com/bitcoin-core/secp256k1/commit/14e56970cba37ffe4ee992c1e08707a16e22e345).
-
DrahtBot commented at 4:07 pm on January 26, 2026: contributor
The following sections might be updated with supplementary metadata relevant to reviewers and maintainers.
Code Coverage & Benchmarks
For details see: https://corecheck.dev/bitcoin/bitcoin/pulls/34412.
Reviews
See the guideline for information on the review process.
If your review is incorrectly listed, please copy-paste <!–meta-tag:bot-skip–> into the comment that the bot should ignore.
LLM Linter (✨ experimental)
Possible places where named args for integral literals may be used (e.g.
func(x, /*named_arg=*/0)in C++, andfunc(x, named_arg=0)in Python):- secp256k1_gej_double_var(&d, a, NULL) in src/secp256k1/src/ecmult_impl.h
- secp256k1_gej_double_var(r, r, NULL) in src/secp256k1/src/ecmult_impl.h
- secp256k1_gej_add_ge_var(&buckets[buc], &buckets[buc], &pt[point_state.input_pos], NULL) in src/secp256k1/src/ecmult_impl.h
- secp256k1_gej_add_ge_var(&buckets[buc], &buckets[buc], &tmp, NULL) in src/secp256k1/src/ecmult_impl.h
- secp256k1_gej_add_var(&running_sum, &running_sum, &buckets[buc], NULL) in src/secp256k1/src/ecmult_impl.h
2026-01-27 09:58:37
-
2fccbea3c8
Squashed 'src/secp256k1/' changes from d543c0d917..14e56970cb
14e56970cb Merge bitcoin-core/secp256k1#1794: ecmult: Use size_t for array indices c7a52400d6 Merge bitcoin-core/secp256k1#1809: release cleanup: bump version after 0.7.1 ae7eb729c0 release cleanup: bump version after 0.7.1 1a53f4961f Merge bitcoin-core/secp256k1#1808: Prepare for 0.7.1 20a209f11c release: prepare for 0.7.1 c4b6a81a60 changelog: update in preparation for the v0.7.1 release ebb35882da Merge bitcoin-core/secp256k1#1796: bench: fail early if user inputs invalid value for SECP256K1_BENCH_ITERS c09215f7af bench: fail early if user inputs invalid value for SECP256K1_BENCH_ITERS 471e3a130d Merge bitcoin-core/secp256k1#1800: sage: verify Eisenstein integer connection for GLV constants 29ac4d8491 sage: verify Eisenstein integer connection for GLV constants 4721e077b4 Merge bitcoin-core/secp256k1#1793: doc/bench: added help text for SECP256K1_BENCH_ITERS env var for bench_ecmult bd5ced1fe1 doc/bench: added help text for SECP256K1_BENCH_ITERS env var for bench_ecmult 47eb70959a ecmult: Use size_t for array indices in _odd_multiplies_table bb1d199de5 ecmult: Use size_t for array indices into tables 2d9137ce9d Merge bitcoin-core/secp256k1#1764: group: Avoid using infinity field directly in other modules f9a944ff2d Merge bitcoin-core/secp256k1#1790: doc: include arg -DSECP256K1_USE_EXTERNAL_DEFAULT_CALLBACKS=ON for cmake 0406cfc4d1 doc: include arg -DUSE_EXTERNAL_DEFAULT_CALLBACKS=1 for cmake 8d445730ec Merge bitcoin-core/secp256k1#1783: Add VERIFY_CHECKs and documentation that flags must be 0 or 1 aa2a39c1a7 Merge bitcoin-core/secp256k1#1778: doc/bench: Added cmake build options to bench error messages 540fec8ae9 Merge bitcoin-core/secp256k1#1788: test: split monolithic ellswift test into independent cases d822b29021 test: split monolithic ellswift test into independent cases ae00c552df Add VERIFY_CHECKs that flags are 0 or 1 5c75183344 Merge bitcoin-core/secp256k1#1784: refactor: remove ret from secp256k1_ec_pubkey_serialize be5e4f02fd Merge bitcoin-core/secp256k1#1779: Add ARG_CHECKs to ensure "array of pointers" elements are non-NULL 3daab83a60 refactor: remove ret from secp256k1_ec_pubkey_serialize 8bcda186d2 test: Add non-NULL checks for "pointer of array" API functions 5a08c1bcdc Add ARG_CHECKs to ensure "array of pointers" elements are non-NULL 3b5b03f301 doc/bench: Added cmake build options to bench error messages e7f7083b53 Merge bitcoin-core/secp256k1#1774: refactor: split up internal pubkey serialization function into compressed/uncompressed variants b6c2a3cd77 Merge bitcoin-core/secp256k1#1761: ecmult_multi: reduce strauss memory usage by 30% f5e815f430 remove secp256k1_eckey_pubkey_serialize function 0d3659c547 use new `_eckey_pubkey_serialize{33,65}` functions in modules (ellswift,musig) adb76f82ea use new `_eckey_pubkey_serialize{33,65}` functions in public API fc7458ca3e introduce `secp256k1_eckey_pubkey_serialize{33,65}` functions c8206b1ce6 Merge bitcoin-core/secp256k1#1771: ci: Use Python virtual environment in "x86_64-macos-native" job f252da7e6e ci: Use Python virtual environment in "x86_64-macos-native" job 115b135fe8 Merge bitcoin-core/secp256k1#1763: bench: Use `ALIGNMENT` macro instead of hardcoded value 2f73e5281d group: Avoid using infinity field directly in other modules 153eea20c2 bench: Use `ALIGNMENT` macro instead of hardcoded value 26166c4f5f ecmult_multi: reduce strauss memory usage by 30% 7a2fff85e8 Merge bitcoin-core/secp256k1#1758: ci: Drop workaround for Valgrind older than 3.20.0 43e7b115f7 Merge bitcoin-core/secp256k1#1759: ci: Switch to macOS 15 Sequoia Intel-based image 8bc50b72ff ci: Switch to macOS 15 Sequoia Intel-based image c09519f0e3 ci: Drop workaround for Valgrind older than 3.20.0 git-subtree-dir: src/secp256k1 git-subtree-split: 14e56970cba37ffe4ee992c1e08707a16e22e345 -
Update secp256k1 subtree to latest master 26fbe10873
-
fanquake force-pushed on Jan 27, 2026
-
fanquake marked this as ready for review on Jan 27, 2026
-
sedited approved
-
sedited commented at 12:54 pm on January 27, 2026: contributorACK 26fbe10873e727c5f345a6130e819772a321d924
-
hebasto commented at 5:07 pm on January 27, 2026: member
My Guix build:
0$ uname -m && find guix-build-$(git rev-parse --short=12 HEAD)/output/ -type f -print0 | env LC_ALL=C sort -z | xargs -r0 sha256sum 1aarch64 2704413b776726e62cdb84b9aae9bc8a4f6f1ca2e4e77e1caf8c22caa2f594dc0 guix-build-26fbe10873e7/output/aarch64-linux-gnu/SHA256SUMS.part 380c7f3208936ae18c3433c8e4e9fc6ae36b6bbb1de8abe68326a89078d8251e7 guix-build-26fbe10873e7/output/aarch64-linux-gnu/bitcoin-26fbe10873e7-aarch64-linux-gnu-debug.tar.gz 48fd8a6691d0b7cd82eb53af75055c43d44c08dbafcd0153c5187a31914b40b97 guix-build-26fbe10873e7/output/aarch64-linux-gnu/bitcoin-26fbe10873e7-aarch64-linux-gnu.tar.gz 5287e92fef81cb6b55c35a40945f5585626535cf9a9b8e46ebb269ac356438929 guix-build-26fbe10873e7/output/arm-linux-gnueabihf/SHA256SUMS.part 644aea62976142cdb2df3cb754f44d0271d9e3496e36c7f0f55a0145c3261bbec guix-build-26fbe10873e7/output/arm-linux-gnueabihf/bitcoin-26fbe10873e7-arm-linux-gnueabihf-debug.tar.gz 7784aaa151311f0ca46a0f47027b0312eb60f39af1328f34e1f17779cf463517f guix-build-26fbe10873e7/output/arm-linux-gnueabihf/bitcoin-26fbe10873e7-arm-linux-gnueabihf.tar.gz 8ebd6e8f3486a9709471141a16581fdcd547e23c6b532e51ff1c8d771b0528a42 guix-build-26fbe10873e7/output/arm64-apple-darwin/SHA256SUMS.part 9760b9c9f9930f6dd3d3c08a28085e557c32bf4450a2c32077b42ce94913bdb5e guix-build-26fbe10873e7/output/arm64-apple-darwin/bitcoin-26fbe10873e7-arm64-apple-darwin-codesigning.tar.gz 104cb4647f30ba2469f13459ab408d77f1a8e63cf9079f5b04cdac61fbd817a9f2 guix-build-26fbe10873e7/output/arm64-apple-darwin/bitcoin-26fbe10873e7-arm64-apple-darwin-unsigned.tar.gz 114dd0d1fa10dd181eb69b5a214cbc2b6fb033594e54ed23f2e5c88f9e3303e7da guix-build-26fbe10873e7/output/arm64-apple-darwin/bitcoin-26fbe10873e7-arm64-apple-darwin-unsigned.zip 121d6bdb9cc08715e1db06b821744cbf4e9806bb4b0739fff5a9c0a1e74130bc7d guix-build-26fbe10873e7/output/dist-archive/bitcoin-26fbe10873e7.tar.gz 13d8cc6ebb4b7e4598eef808d488bfb80cd4daceaf848b9991f9bdb27378350167 guix-build-26fbe10873e7/output/powerpc64-linux-gnu/SHA256SUMS.part 1467d3fb867c46f1731b21cda5ec022cdfd584353920f80d8b61233727fe9cb23a guix-build-26fbe10873e7/output/powerpc64-linux-gnu/bitcoin-26fbe10873e7-powerpc64-linux-gnu-debug.tar.gz 151c8299f8b533f2d20ee64517da7006c6d5a0f24ca508aca1266a63a87b53e0f3 guix-build-26fbe10873e7/output/powerpc64-linux-gnu/bitcoin-26fbe10873e7-powerpc64-linux-gnu.tar.gz 16f40fc8f46a114efa56231a8de37b6f35e127b2dcb98bd13cd2d12377e321b750 guix-build-26fbe10873e7/output/riscv64-linux-gnu/SHA256SUMS.part 17da5bd39ad76b6d2dc5e660c43968d17cd0373dd4ec957dc5fb28f760e99ca0c2 guix-build-26fbe10873e7/output/riscv64-linux-gnu/bitcoin-26fbe10873e7-riscv64-linux-gnu-debug.tar.gz 18711d4c62443fb526a465d79c55ffe684da92f4a3e50147804e39a24b1a035afb guix-build-26fbe10873e7/output/riscv64-linux-gnu/bitcoin-26fbe10873e7-riscv64-linux-gnu.tar.gz 194f93c2191efe3b68440dfe866c9a8ad5e6bce34aa8bcf2ad008c5b78190734ba guix-build-26fbe10873e7/output/x86_64-apple-darwin/SHA256SUMS.part 20cc789ec028671266e712b02b6fbe30c917679a39daad28dc25f248babe1cebf0 guix-build-26fbe10873e7/output/x86_64-apple-darwin/bitcoin-26fbe10873e7-x86_64-apple-darwin-codesigning.tar.gz 2124926d56e5572248e4a82b0ae94173a9d464b1588ab953f54f1c5eae5e1fa033 guix-build-26fbe10873e7/output/x86_64-apple-darwin/bitcoin-26fbe10873e7-x86_64-apple-darwin-unsigned.tar.gz 22758682fcdd597bc3ce93d348dd82779e4ecc131349715ce2b38e4e972b15b8af guix-build-26fbe10873e7/output/x86_64-apple-darwin/bitcoin-26fbe10873e7-x86_64-apple-darwin-unsigned.zip 23d567104d5df6de0054f89e3d427e04834ad850d40fc9fb728356e9830f6b8497 guix-build-26fbe10873e7/output/x86_64-linux-gnu/SHA256SUMS.part 24dfdf3505697786572058a86ef4ba4e7545d820ca10c29a6609547d1e2dafb679 guix-build-26fbe10873e7/output/x86_64-linux-gnu/bitcoin-26fbe10873e7-x86_64-linux-gnu-debug.tar.gz 252a34a7ab8f4773eb4299f67b0d9955017ed639305c7ff8914a7f4874144b59fd guix-build-26fbe10873e7/output/x86_64-linux-gnu/bitcoin-26fbe10873e7-x86_64-linux-gnu.tar.gz 26f4f2f37cfbe308ae44347c426fb5d4e30f2b7026726184c8a336c37c0cd2cd9b guix-build-26fbe10873e7/output/x86_64-w64-mingw32/SHA256SUMS.part 277297ca3c5267f2ea3774065589bc318813c8a707fce7a89ee58e5e5971168aa8 guix-build-26fbe10873e7/output/x86_64-w64-mingw32/bitcoin-26fbe10873e7-win64-codesigning.tar.gz 28f375620b872efeff27cf55a5e9938a64d6bc7655179eac40c7bcd1dcb37afbf6 guix-build-26fbe10873e7/output/x86_64-w64-mingw32/bitcoin-26fbe10873e7-win64-debug.zip 2955c11f3836adba955ccde60b36d9b597912222f475ac1125ae7e8daa6a83c4b0 guix-build-26fbe10873e7/output/x86_64-w64-mingw32/bitcoin-26fbe10873e7-win64-setup-unsigned.exe 30681c284e589e1649d5b251fdf1e8d0f0cd1bf773922600e7841c6759a62bfe7b guix-build-26fbe10873e7/output/x86_64-w64-mingw32/bitcoin-26fbe10873e7-win64-unsigned.zip -
hebasto approved
-
hebasto commented at 5:09 pm on January 27, 2026: memberACK 26fbe10873e727c5f345a6130e819772a321d924.
-
sipa commented at 9:26 pm on January 27, 2026: memberMaster, or the just-released 0.7.1?
-
fanquake commented at 10:02 pm on January 27, 2026: memberMaster.
-
w0xlt commented at 6:01 am on January 28, 2026: contributor
-
fanquake merged this on Jan 28, 2026
-
fanquake closed this on Jan 28, 2026
-
fanquake deleted the branch on Jan 28, 2026
-
achow101 commented at 7:12 pm on January 28, 2026: member
This introduced new warnings on GCC 15.2.1:
0In file included from /home/ava/bitcoin/bitcoin/experimentation/src/pubkey.cpp:9: 1/home/ava/bitcoin/bitcoin/experimentation/src/secp256k1/include/secp256k1.h:352:84: error: trailing whitespace [-Werror=trailing-whitespace=] 2 352 | * has been configured with --enable-external-default-callbacks (GNU Autotools) or 3In file included from /home/ava/bitcoin/bitcoin/experimentation/src/secp256k1/include/secp256k1_ellswift.h:4, 4 from /home/ava/bitcoin/bitcoin/experimentation/src/pubkey.cpp:10: 5/home/ava/bitcoin/bitcoin/experimentation/src/secp256k1/include/secp256k1.h:352:84: error: trailing whitespace [-Werror=trailing-whitespace=] 6 352 | * has been configured with --enable-external-default-callbacks (GNU Autotools) or 7cc1plus: all warnings being treated as errors 8make[2]: *** [src/CMakeFiles/bitcoin_consensus.dir/build.make:163: src/CMakeFiles/bitcoin_consensus.dir/pubkey.cpp.o] Error 1 9make[1]: *** [CMakeFiles/Makefile2:1004: src/CMakeFiles/bitcoin_consensus.dir/all] Error 2 10make[1]: *** Waiting for unfinished jobs.... -
hebasto commented at 8:17 pm on January 28, 2026: member
This introduced new warnings on GCC 15.2.1:
0In file included from /home/ava/bitcoin/bitcoin/experimentation/src/pubkey.cpp:9: 1/home/ava/bitcoin/bitcoin/experimentation/src/secp256k1/include/secp256k1.h:352:84: error: trailing whitespace [-Werror=trailing-whitespace=] 2 352 | * has been configured with --enable-external-default-callbacks (GNU Autotools) or 3In file included from /home/ava/bitcoin/bitcoin/experimentation/src/secp256k1/include/secp256k1_ellswift.h:4, 4 from /home/ava/bitcoin/bitcoin/experimentation/src/pubkey.cpp:10: 5/home/ava/bitcoin/bitcoin/experimentation/src/secp256k1/include/secp256k1.h:352:84: error: trailing whitespace [-Werror=trailing-whitespace=] 6 352 | * has been configured with --enable-external-default-callbacks (GNU Autotools) or 7cc1plus: all warnings being treated as errors 8make[2]: *** [src/CMakeFiles/bitcoin_consensus.dir/build.make:163: src/CMakeFiles/bitcoin_consensus.dir/pubkey.cpp.o] Error 1 9make[1]: *** [CMakeFiles/Makefile2:1004: src/CMakeFiles/bitcoin_consensus.dir/all] Error 2 10make[1]: *** Waiting for unfinished jobs....
github-metadata-mirror
This is a metadata mirror of the GitHub repository bitcoin/bitcoin. This site is not affiliated with GitHub. Content is generated from a GitHub metadata backup.
generated: 2026-03-15 15:13 UTC
This is a metadata mirror of the GitHub repository bitcoin/bitcoin. This site is not affiliated with GitHub. Content is generated from a GitHub metadata backup.
generated: 2026-03-15 15:13 UTC
This site is hosted by @0xB10C
More mirrored repositories can be found on mirror.b10c.me
More mirrored repositories can be found on mirror.b10c.me