[LLVMdev] module passes that eliminate unused global symbols
justin.holewinski at gmail.com
Mon May 20 14:09:55 PDT 2013
Internalize and GlobalDCE should be what you need.
On Mon, May 20, 2013 at 4:20 PM, Frank Winter <fwinter at jlab.org> wrote:
> My module contains one function that calls a handful of functions in
> another module (which contains a huge collection of functions). The goal is
> to make the module 'self-contained', i.e. no calls across module
> boundaries, and as minimal as possible, i.e. it does not contain any
> function which is not called directly or indirectly from the original
> function. So, I linked in the callee module to the caller module and ran
> the internalize pass to filter/mark the non-external global symbols. Is
> this a good first step towards the goal? How can I eliminate unused global
> symbols or make the module minimal (with the existing (trunk) passes)?
> Ideally only the (directly or indirectly) referenced symbols survive. Is
> this possible or do I need to develop such passes?
> LLVM Developers mailing list
> LLVMdev at cs.uiuc.edu http://llvm.cs.uiuc.edu
-------------- next part --------------
An HTML attachment was scrubbed...
More information about the llvm-dev