Thought Evan was saying something about a resetPass call maybe instead of the doInit/run/doFini scheme? I'm not sure if there have been offline talks in addition.<div><br></div><div>-eric</div><div class="gmail_extra">
<br><br><div class="gmail_quote">On Wed, Nov 14, 2012 at 2:40 PM, Pedro Artigas <span dir="ltr"><<a href="mailto:partigas@apple.com" target="_blank">partigas@apple.com</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
Hello All,<br>
<br>
Yesterday's e-mail caused some concerns, therefore we improved the patch to re-write all in-tree projects to use the doInitialization/run/doFinalization scheme for module passes just like it is done for function passes.<br>

<br>
Right now no passes follow this model but the skeleton should make it clear how the model operates and how to adapt module passes to follow the model, the idea is that a pass would do basic immutable allocation and variable set up in the constructor, would do minimal variable set up on the doInitialization and doFinalization would free all the extra memory allocated to store the state of the prior module, bringing the module pass to the state right after construction so it can be reused for a future module.<br>

<br>
Hope this is clear now,<br>
<br>
Thanks<br>
<span class="HOEnZb"><font color="#888888"><br>
Pedro<br>
<br>
</font></span><br>_______________________________________________<br>
llvm-commits mailing list<br>
<a href="mailto:llvm-commits@cs.uiuc.edu">llvm-commits@cs.uiuc.edu</a><br>
<a href="http://lists.cs.uiuc.edu/mailman/listinfo/llvm-commits" target="_blank">http://lists.cs.uiuc.edu/mailman/listinfo/llvm-commits</a><br>
<br></blockquote></div><br></div>