[llvm-commits] Improvements to PassManager

Kostya Serebryany kcc at google.com
Wed Nov 28 02:33:49 PST 2012


On Wed, Nov 28, 2012 at 8:26 AM, Kostya Serebryany <kcc at google.com> wrote:

>
>
> On Tue, Nov 27, 2012 at 6:17 PM, Kostya Serebryany <kcc at google.com> wrote:
>
>>
>>
>> On Mon, Nov 26, 2012 at 10:23 PM, Kostya Serebryany <kcc at google.com>wrote:
>>
>>>
>>>
>>> On Mon, Nov 26, 2012 at 9:39 PM, Pedro Artigas <partigas at apple.com>wrote:
>>>
>>>>
>>>> Hello All,
>>>>
>>>>
>>>> To summarize the thread and make sure everybody is on the same page I
>>>> will repeat some information below.
>>>>
>>>> - doInitialization and doFinalization are expected to be called
>>>> before/after runOn???? for each pass on a given module, if more than one
>>>> module exist in the compilation it will be called multiple times. No other
>>>> assumption exists. (that is, for example, doFinalization may be called
>>>> before or after runOn??? of other, unrelated, passes)
>>>>
>>>> - ASAN violates this model and it is currently being fixed to split the
>>>> part that does transformations on the module in doFinalization into a
>>>> separate module pass (where the code to transform will be called in the run
>>>> function on the module and, therefore, has proper ordering with other
>>>> passes)
>>>>
>>>
>>> I've implemented part of the fix in asan, hope to finish it this week.
>>>
>>
>> The rest of the fix is sent for review:
>>  http://llvm-reviews.chandlerc.com/D137
>> http://llvm-reviews.chandlerc.com/D138
>>
>
> Any objections against this change?
> Pedro mentions a similar problem in tsan pass, but I want to resolve this
> one first.
>
>
Done r168781 and 168782.
If the problem still exists with the tsan pass, let's discuss it in another
thread.

--kcc
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20121128/25a5f930/attachment.html>


More information about the llvm-commits mailing list