diff options
author | W. J. van der Laan <laanwj@protonmail.com> | 2021-09-09 15:51:57 +0200 |
---|---|---|
committer | W. J. van der Laan <laanwj@protonmail.com> | 2021-09-09 15:52:26 +0200 |
commit | 020c2b7609d037fe4d1bb321419d8d455716d6fb (patch) | |
tree | 268c3b5666eff284f6f0c6ccdcc13ce8055a2446 | |
parent | fac71810914497611c7e23c02ef035098e478359 (diff) | |
parent | fa309ee61c09726a8780acaea94502712f817921 (diff) | |
download | bitcoin-020c2b7609d037fe4d1bb321419d8d455716d6fb.tar.xz |
Merge bitcoin/bitcoin#22923: test: Switch multiprocess to clang i686 build
fa309ee61c09726a8780acaea94502712f817921 bench: Fix 32-bit compilation failure in addrman bench (MarcoFalke)
fae0295a799499268caca9c385ac4d7061543980 ci: Switch multiprocess to i686 build (MarcoFalke)
Pull request description:
Building for i686 with clang helps to catch bugs early for:
* The OSS-Fuzz i686 clang libFuzzer build
* The arm 32-bit native clang build
Fixes #22889
ACKs for top commit:
hebasto:
ACK fa309ee61c09726a8780acaea94502712f817921
Tree-SHA512: 581820d319aae2fcd4dd44979ee3d4164a575f0438476890aa2a7447f1392a5da26766cd6ab954530499b54f66eec2417bdeefdd7efb19bc27dd679cd2b9d0ce
-rw-r--r-- | .cirrus.yml | 4 | ||||
-rwxr-xr-x | ci/test/00_setup_env_i686_multiprocess.sh (renamed from ci/test/00_setup_env_native_multiprocess.sh) | 7 | ||||
-rw-r--r-- | src/bench/addrman.cpp | 4 |
3 files changed, 9 insertions, 6 deletions
diff --git a/.cirrus.yml b/.cirrus.yml index 392babc556..d15d24491c 100644 --- a/.cirrus.yml +++ b/.cirrus.yml @@ -233,7 +233,7 @@ task: FILE_ENV: "./ci/test/00_setup_env_native_fuzz.sh" task: - name: '[multiprocess, DEBUG] [focal]' + name: '[multiprocess, i686, DEBUG] [focal]' << : *GLOBAL_TASK_TEMPLATE container: image: ubuntu:focal @@ -242,7 +242,7 @@ task: env: << : *CIRRUS_EPHEMERAL_WORKER_TEMPLATE_ENV MAKEJOBS: "-j8" - FILE_ENV: "./ci/test/00_setup_env_native_multiprocess.sh" + FILE_ENV: "./ci/test/00_setup_env_i686_multiprocess.sh" task: name: '[no wallet] [bionic]' diff --git a/ci/test/00_setup_env_native_multiprocess.sh b/ci/test/00_setup_env_i686_multiprocess.sh index 8869b2a083..f7f65f6e3a 100755 --- a/ci/test/00_setup_env_native_multiprocess.sh +++ b/ci/test/00_setup_env_i686_multiprocess.sh @@ -6,11 +6,12 @@ export LC_ALL=C.UTF-8 -export CONTAINER_NAME=ci_native_multiprocess +export HOST=i686-pc-linux-gnu +export CONTAINER_NAME=ci_i686_multiprocess export DOCKER_NAME_TAG=ubuntu:20.04 -export PACKAGES="cmake python3 python3-pip llvm clang" +export PACKAGES="cmake python3 python3-pip llvm clang g++-multilib" export DEP_OPTS="DEBUG=1 MULTIPROCESS=1" export GOAL="install" -export BITCOIN_CONFIG="--enable-debug CC=clang CXX=clang++" # Use clang to avoid OOM +export BITCOIN_CONFIG="--enable-debug CC='clang -m32' CXX='clang++ -m32' LDFLAGS='--rtlib=compiler-rt -lgcc_s'" export TEST_RUNNER_ENV="BITCOIND=bitcoin-node" export PIP_PACKAGES="lief" diff --git a/src/bench/addrman.cpp b/src/bench/addrman.cpp index 8fbb68c04c..e5dd571a4c 100644 --- a/src/bench/addrman.cpp +++ b/src/bench/addrman.cpp @@ -5,6 +5,7 @@ #include <addrman.h> #include <bench/bench.h> #include <random.h> +#include <util/check.h> #include <util/time.h> #include <optional> @@ -110,7 +111,8 @@ static void AddrManGood(benchmark::Bench& bench) * we want to do the same amount of work in every loop iteration. */ bench.epochs(5).epochIterations(1); - const size_t addrman_count{bench.epochs() * bench.epochIterations()}; + const uint64_t addrman_count{bench.epochs() * bench.epochIterations()}; + Assert(addrman_count == 5U); std::vector<std::unique_ptr<CAddrMan>> addrmans(addrman_count); for (size_t i{0}; i < addrman_count; ++i) { |