[clang] [clang-repl] Fix PLT offset too large linker error on ARM (PR #78959)

Martin Storsjö via cfe-commits cfe-commits at lists.llvm.org
Tue Jan 23 05:00:08 PST 2024


mstorsjo wrote:

> > I don't really know more about the issue that requires --long-plt at the moment and why it's only needed for clang-repl
> 
> clang-repl binary size is ~3.7G in debug mode and this seems to exceed the branch range of default ARM PLT slots. The instruction sequence that's necessary for long-range PLT slots is likely more expensive. I guess this situation is too much of an edge-case to make the effort and detect it upfront, so they just bail out if it happens an ask for the flag.

Right, I see. Though - why is this only an issue for the clang-repl binary and not the other clang-based ones? Does it happen to hit some maximum when it uses both everything that is in normal clang, plus all the JIT stuff? (Normally I would expect LLDB to be the largest one, as it includes much of Clang, but that's also always split into a separate liblldb.so.)

https://github.com/llvm/llvm-project/pull/78959


More information about the cfe-commits mailing list