[PATCH] D33540: [PM/ThinLTO] Port the ThinLTO pipeline (both components) to the new PM.

Chandler Carruth via llvm-commits llvm-commits at lists.llvm.org
Tue Jun 27 15:01:00 PDT 2017


I thought Tim landed something that used this? But maybe misremembering. I
don't think I have a Clang patch outstanding... +Tim Shen
<timshen at google.com>

On Tue, Jun 27, 2017 at 2:52 PM Teresa Johnson via llvm-commits <
llvm-commits at lists.llvm.org> wrote:

>
>
> On Thu, May 25, 2017, 2:43 PM Chandler Carruth via Phabricator <
> reviews at reviews.llvm.org> wrote:
>
>> chandlerc marked an inline comment as done.
>> chandlerc added a comment.
>>
>> In https://reviews.llvm.org/D33540#764460, @tejohnson wrote:
>>
>> > > I hoisted the ThinLTO stop point pre-link above the partial inliner
>> and the RPO function attr inference. Partial inlining isn't going to make
>> the code smaller and it seems better to just do that once post-link.
>> >
>> > Added davidxl to comment on this change. It seems like doing some
>> partial inlining during the pre-link for ThinLTO will have an effect on the
>> importing. Also, it is pre-link (as well as post-link) in the old pass
>> pipeline, so this would introduce an inconsistency between the pass
>> pipelines. May be better to keep it in the same places, and evaluate the
>> effect of removing it from the pre-link pass pipeline separately?
>>
>>
>> Well, partial inliner isn't run at all yet. So my hope was it can get
>> moved around later.
>>
>> I somewhat wanted to make the split line up with the simplification split
>> that is already there in the pipeline. But if you feel strongly we need to
>> keep these exactly the same, I can essentially copy the extra passes into
>> the tail of the thinlto prelink stuff.
>>
>>
>>
>> ================
>> Comment at: lib/Passes/PassBuilder.cpp:708
>> +ModulePassManager
>> +PassBuilder::buildThinLTOPreLinkDefaultPipeline(OptimizationLevel Level,
>> +                                                bool DebugLogging) {
>> ----------------
>> tejohnson wrote:
>> > I don't see this getting invoked.
>> Yeah, the original patch had a change to Clang, but I wanted to get a
>> submittable LLVM-focused version.
>>
>
> Dehao just noticed that it still isn't be invoked, other than from the
> manual pipeline setup for testing. Do you still have your clang side
> changes around that you could submit? Or let me know if you prefer I add
> that.
> Teresa
>
>
>> I'll add support for parsing these pipelines much like we support parsing
>> 'default<O2>' and such so that we have some coverage of stuff.
>>
>>
>> https://reviews.llvm.org/D33540
>>
>>
>>
>> _______________________________________________
> llvm-commits mailing list
> llvm-commits at lists.llvm.org
> http://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-commits
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20170627/acb06c87/attachment.html>


More information about the llvm-commits mailing list