[llvm-dev] objc object file generated for gnustep runtime for ELF target is too big

David Chisnall via llvm-dev llvm-dev at lists.llvm.org
Wed Sep 28 01:43:30 PDT 2016


On 27 Sep 2016, at 19:00, Perevalov Alexey <Alexey.Perevalov at hotmail.com> wrote:
> 
> in disassembler output and in final binary, but these protocol aren't used in sample. Neither front end nor linker got rid of it.
> You wrote definitions will be unique, but it didn't strip out unnecessary .objc_protocol and depended fields.
> (frankly saying after strip -s I didn't see .objc_protocol, but still find all selector and protocol names in strings output ;)
> 
> And it's look like a bug.

This is a known issue and is unavoidable with the current ABI.  I’m currently working on a replacement GNUstep Objective-C ABI that takes advantage of some features of linkers that weren’t available when the original GNU Objective-C ABI was created, but it’s spare-time (unfunded) work, so is taking a while.  With the current prototype, there are a lot of space savings but it’s nowhere near ready for release.

David

P.S. This thread is being sent to two mailing lists, neither of which is the correct one.  For future reference, cfe-dev is the correct list for development issues relating to the clang front end.


More information about the llvm-dev mailing list