[llvm] r314963 - Enabling new pass manager in LTO (and thinLTO) link step.

Teresa Johnson via llvm-commits llvm-commits at lists.llvm.org
Wed Apr 4 13:36:11 PDT 2018


On Wed, Apr 4, 2018 at 1:28 PM, Peter Collingbourne via llvm-commits <
llvm-commits at lists.llvm.org> wrote:

> Was this change ever reviewed? (I see the reviews.llvm.org link, but that
> seems to point to a clang change). It seems to be missing a test, can you
> add one? It can probably be modelled on llvm/test/tools/llvm-lto2/X86/pipeline.ll
> .
>

I searched through some old email and the gold-plugin.cpp change was
original part of this patch. I asked for a test but specifically asked for
one to make sure it was passed via the driver, which is what got added.

Teresa


> Peter
>
> On Wed, Oct 4, 2017 at 6:48 PM, Sean Fertile via llvm-commits <
> llvm-commits at lists.llvm.org> wrote:
>
>> Author: sfertile
>> Date: Wed Oct  4 18:48:42 2017
>> New Revision: 314963
>>
>> URL: http://llvm.org/viewvc/llvm-project?rev=314963&view=rev
>> Log:
>> Enabling new pass manager in LTO (and thinLTO) link step.
>>
>> Adds the option 'new-pass-manager' to the gold pluggin to enable using the
>> new pass manager during the lto/thinlto link step.
>>
>> Patch by Graham Yiu.
>>
>>  Differential Revision: https://reviews.llvm.org/D38517
>>
>> Modified:
>>     llvm/trunk/tools/gold/gold-plugin.cpp
>>
>> Modified: llvm/trunk/tools/gold/gold-plugin.cpp
>> URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/tools/gold/go
>> ld-plugin.cpp?rev=314963&r1=314962&r2=314963&view=diff
>> ============================================================
>> ==================
>> --- llvm/trunk/tools/gold/gold-plugin.cpp (original)
>> +++ llvm/trunk/tools/gold/gold-plugin.cpp Wed Oct  4 18:48:42 2017
>> @@ -183,6 +183,8 @@ namespace options {
>>    static std::vector<const char *> extra;
>>    // Sample profile file path
>>    static std::string sample_profile;
>> +  // New pass manager
>> +  static bool new_pass_manager = false;
>>
>>    static void process_plugin_option(const char *opt_)
>>    {
>> @@ -242,6 +244,8 @@ namespace options {
>>        DisableVerify = true;
>>      } else if (opt.startswith("sample-profile=")) {
>>        sample_profile= opt.substr(strlen("sample-profile="));
>> +    } else if (opt == "new-pass-manager") {
>> +      new_pass_manager = true;
>>      } else {
>>        // Save this option to pass to the code generator.
>>        // ParseCommandLineOptions() expects argv[0] to be program name.
>> Lazily
>> @@ -805,6 +809,9 @@ static std::unique_ptr<LTO> createLTO()
>>    if (!options::sample_profile.empty())
>>      Conf.SampleProfile = options::sample_profile;
>>
>> +  // Use new pass manager if set in driver
>> +  Conf.UseNewPM = options::new_pass_manager;
>> +
>>    return llvm::make_unique<LTO>(std::move(Conf), Backend,
>>                                  options::ParallelCodeGenParal
>> lelismLevel);
>>  }
>>
>>
>> _______________________________________________
>> llvm-commits mailing list
>> llvm-commits at lists.llvm.org
>> http://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-commits
>>
>
>
>
> --
> --
> Peter
>
> _______________________________________________
> llvm-commits mailing list
> llvm-commits at lists.llvm.org
> http://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-commits
>
>


-- 
Teresa Johnson |  Software Engineer |  tejohnson at google.com |  408-460-2413
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20180404/43b7db9b/attachment.html>


More information about the llvm-commits mailing list