[PATCH] D130208: [lld-macho] Fix assertion when two symbols at same addr have unwind info
Jez Ng via Phabricator via llvm-commits
llvm-commits at lists.llvm.org
Thu Jul 21 06:43:46 PDT 2022
int3 added inline comments.
================
Comment at: lld/MachO/InputFiles.cpp:1536
+ // infrequently (only when handling the output of `ld -r`).
+ funcSym = findSymbolAtOffset(cast<ConcatInputSection>(funcSym->isec),
+ funcSym->value);
----------------
int3 wrote:
> thakis wrote:
> > We hit this assert in "normal" builds: https://bugs.chromium.org/p/chromium/issues/detail?id=1346125#c1
> >
> > Do you want a repro file for that?
> >
> > Anyways, addressing the assert quickly would be good :) (either revert if hitting this on a normal build is surprising and needs more investigation, or by landing this fix here)
> Just to confirm, are you sure the "normal" build doesn't pull in any 3rd-party lib that could've been passed through `ld -r`?
>
> I wasn't able to generate it the problem via llvm-mc in my testing, but I could certainly have missed something. Repro file wouldn't really help to figure out the compiler flags that trigger it though...
>
> It doesn't look like the assert triggers at all on `chromium_framework` at least, so I think it's safe to say that it's a fairly uncommon code path
> It doesn't look like the assert triggers at all on chromium_framework at least, so I think it's safe to say that it's a fairly uncommon code path
More precisely, an `assert(false)` in this `if` branch doesn't get tripped while linking chromium_framework.
Landing this now, we can tweak the comment as needed later
Repository:
rG LLVM Github Monorepo
CHANGES SINCE LAST ACTION
https://reviews.llvm.org/D130208/new/
https://reviews.llvm.org/D130208
More information about the llvm-commits
mailing list