From 13512d11483d5a6b34f027d7ad3dec7526fd56c1 Mon Sep 17 00:00:00 2001 From: firewave Date: Fri, 3 Oct 2025 14:57:13 +0200 Subject: [PATCH 1/2] CI-unixish.yml: use LTO in the callgrind step --- .github/workflows/CI-unixish.yml | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/.github/workflows/CI-unixish.yml b/.github/workflows/CI-unixish.yml index d6800a82..d297ff58 100644 --- a/.github/workflows/CI-unixish.yml +++ b/.github/workflows/CI-unixish.yml @@ -149,7 +149,8 @@ jobs: rm -f 1.5.1.tar.gz make clean - make -j$(nproc) CXXOPTS="-O2 -g3" simplecpp + # TODO: we could also use -O3 but that causes a performance regression with GCC + make -j$(nproc) CXXOPTS="-O2 -g3 -flto" LDOPTS="-flto" simplecpp VALGRIND_TOOL=callgrind SIMPLECPP_PATH=simplecpp-1.5.1 ./selfcheck.sh >callgrind.log || (cat callgrind.log && false) cat callgrind.log From 337870b0acd4a5c57547114dd73a8977102e4af0 Mon Sep 17 00:00:00 2001 From: firewave Date: Sat, 1 Nov 2025 14:28:20 +0100 Subject: [PATCH 2/2] s --- .github/workflows/CI-unixish.yml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/.github/workflows/CI-unixish.yml b/.github/workflows/CI-unixish.yml index d297ff58..7c42fd8b 100644 --- a/.github/workflows/CI-unixish.yml +++ b/.github/workflows/CI-unixish.yml @@ -156,7 +156,7 @@ jobs: # PGO - start make clean - make -j$(nproc) CXXOPTS="-O2 -g3 -fprofile-generate" LDOPTS="-fprofile-generate" simplecpp + make -j$(nproc) CXXOPTS="-O2 -g3 -flto -fprofile-generate" LDOPTS="-flto -fprofile-generate" simplecpp SIMPLECPP_PATH=simplecpp-1.5.1 ./selfcheck.sh >/dev/null if compgen -G "default_*.profraw" > /dev/null; then @@ -164,7 +164,7 @@ jobs: fi make clean - make -j$(nproc) CXXOPTS="-O2 -g3 -fprofile-use" LDOPTS="-fprofile-use" simplecpp + make -j$(nproc) CXXOPTS="-O2 -g3 -flto -fprofile-use" LDOPTS="-flto -fprofile-use" simplecpp VALGRIND_TOOL=callgrind SIMPLECPP_PATH=simplecpp-1.5.1 ./selfcheck.sh >callgrind_pgo.log || (cat callgrind_pgo.log && false) cat callgrind_pgo.log # PGO - end