[llvm] [BOLT][AArch64] Relax calls and branches with fragment clusters (PR #215825)
Adam Bzowski via llvm-commits
llvm-commits at lists.llvm.org
Tue Sep 22 05:13:35 PDT 2026
adam-bzowski-arm wrote:
I tested the newest version and I get the following crash on my chromium build:
```
BOLT-INFO: starting experimental relaxation pass
llvm-bolt: /home/adabzo01/llvm-project/bolt/lib/Passes/LongJmp.cpp:1435: void llvm::bolt::(anonymous namespace)::ClusteredRelaxation::collectOutOfRangeRefer
ences(): Assertion `IsCall && "expected call after branch-chain handling"' failed.
#0 0x0000c57f04301224 llvm::sys::PrintStackTrace(llvm::raw_ostream&, int) (/home/adabzo01/llvm-project/build/bin/llvm-bolt+0x741224)
#1 0x0000c57f042fe670 llvm::sys::RunSignalHandlers() (/home/adabzo01/llvm-project/build/bin/llvm-bolt+0x73e670)
#2 0x0000c57f04301d84 SignalHandler(int, siginfo_t*, void*) Signals.cpp:0:0
#3 0x0000ee6a9ebf5a60 (linux-vdso.so.1+0xa60)
#4 0x0000ee6a9e5b74d8 __pthread_kill_implementation ./nptl/pthread_kill.c:44:76
#5 0x0000ee6a9e56cb3c raise ./signal/../sysdeps/posix/raise.c:27:6
#6 0x0000ee6a9e557e00 abort ./stdlib/abort.c:81:7
#7 0x0000ee6a9e565cc0 __assert_fail_base ./assert/assert.c:93:7
#8 0x0000ee6a9e565d30 __assert_perror_fail ./assert/assert-perr.c:31:1
#9 0x0000c57f0456a8d0 llvm::bolt::(anonymous namespace)::ClusteredRelaxation::run() LongJmp.cpp:0:0
#10 0x0000c57f045668c0 llvm::bolt::LongJmpPass::relaxWithClusters(llvm::bolt::BinaryContext&) (/home/adabzo01/llvm-project/build/bin/llvm-bolt+0x9a68c0)
#11 0x0000c57f0456b134 llvm::bolt::LongJmpPass::runOnFunctions(llvm::bolt::BinaryContext&) (/home/adabzo01/llvm-project/build/bin/llvm-bolt+0x9ab134)
#12 0x0000c57f043efbac llvm::bolt::BinaryFunctionPassManager::runPasses()::$_0::operator()() const BinaryPassManager.cpp:0:0
#13 0x0000c57f043eb014 llvm::bolt::BinaryFunctionPassManager::runPasses() (/home/adabzo01/llvm-project/build/bin/llvm-bolt+0x82b014)
#14 0x0000c57f043ef8fc llvm::bolt::BinaryFunctionPassManager::runAllPasses(llvm::bolt::BinaryContext&) (/home/adabzo01/llvm-project/build/bin/llvm-bolt+0x82
f8fc)
#15 0x0000c57f04386b74 llvm::bolt::RewriteInstance::runOptimizationPasses() (/home/adabzo01/llvm-project/build/bin/llvm-bolt+0x7c6b74)
#16 0x0000c57f0437c560 llvm::bolt::RewriteInstance::run() (/home/adabzo01/llvm-project/build/bin/llvm-bolt+0x7bc560)
#17 0x0000c57f03cee388 main (/home/adabzo01/llvm-project/build/bin/llvm-bolt+0x12e388)
#18 0x0000ee6a9e5584c4 __libc_start_call_main ./csu/../sysdeps/nptl/libc_start_call_main.h:74:3
#19 0x0000ee6a9e558598 call_init ./csu/../csu/libc-start.c:128:20
#20 0x0000ee6a9e558598 __libc_start_main ./csu/../csu/libc-start.c:347:5
#21 0x0000c57f03cecef0 _start (/home/adabzo01/llvm-project/build/bin/llvm-bolt+0x12cef0)
PLEASE submit a bug report to https://github.com/llvm/llvm-project/issues/ and include the crash backtrace and instructions to reproduce the bug.
Stack dump:
0. Program arguments: /home/adabzo01/llvm-project/build/bin/llvm-bolt /home/adabzo01/chromium/src/out/PGOPhase2Google/chrome --relocs --split-functions
--split-all-cold --split-eh --lite=0 --data /home/adabzo01/tools/brbe/google.orig.skip-notes.fdata --reorder-blocks=ext-tsp --reorder-functions=hfsort --dy
no-stats --skip-funcs=^(prep_6tap_neon|put_8tap_neon|prep_8tap_neon|put_6tap_neon)(/[0-9]+)?$ --relax-exp -o /home/adabzo01/fix-relaxation/chrome.google.re$
ax-exp.bolt
Aborted (core dumped)
```
I can share the binary with @labrinea .
https://github.com/llvm/llvm-project/pull/215825
More information about the llvm-commits
mailing list