[llvm] [BOLT][AArch64] Relax calls and branches with fragment clusters (PR #215825)
Rafael Auler via llvm-commits
llvm-commits at lists.llvm.org
Wed Sep 9 19:03:41 PDT 2026
rafaelauler wrote:
@labrinea
I tested this new stack but it broke for me and generated out-of-range calls, I bisected the problem to commit "refactor branch collection and get rid of relax-plt". It dropped the containment guard from the adjacent-cluster long-thunk reuse:
if (ReuseCluster) {
auto It = ReuseCluster->CallThunks.find(TargetSymbol);
- if (It != ReuseCluster->CallThunks.end() &&
- llvm::is_contained(*ReuseThunkList, It->second)) {
+ if (It != ReuseCluster->CallThunks.end()) {
BinaryFunction *Thunk = It->second;
That guard was the "only reuse if the neighbor actually hosts this thunk" check. Without it, reuse becomes transitive.
https://github.com/llvm/llvm-project/pull/215825
More information about the llvm-commits
mailing list