[llvm-commits] Patch, enable reusing a module pass manager across multiple modules

Eric Christopher echristo at gmail.com
Tue Nov 13 16:17:57 PST 2012


On Tue, Nov 13, 2012 at 4:05 PM, Pedro Artigas <partigas at apple.com> wrote:

> Hello All,
>
> Keeping the state is better because we do not need to reallocate several
> data structures, if you can just reuse the existing ones compile time will
> be better as the allocation of the module passes is going to be amortized
> over a larger number of modules. That is, assuming allocation time is
> greater than initialization and finalization time, you win for every module
> but the first.
>
>
Sure, provided your compilation strategy is "everything is a single module,
just split up".


> The idea is that we will compile many modules together and save compile
> time by reusing the module passes data structures.
>
>
Isn't this what we have llvm-link for (or the library equivalent)? This is
why I asked the question.


> Note that (I forgot to mention in the original message) the current
> implementation is just a skeleton and module passes would have to be
> changed to the new scheme to materialize any compile time savings, but the
> change is a step towards that (without it the idea cannot work).
>
>
Understood.

-eric
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20121113/0ada8b9f/attachment.html>


More information about the llvm-commits mailing list