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

Peter Collingbourne via llvm-commits llvm-commits at lists.llvm.org
Wed Apr 4 13:28:01 PDT 2018


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 .

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/
> gold-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::ParallelCodeGenParallelismLeve
> l);
>  }
>
>
> _______________________________________________
> llvm-commits mailing list
> llvm-commits at lists.llvm.org
> http://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-commits
>



-- 
-- 
Peter
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20180404/abe50594/attachment.html>


More information about the llvm-commits mailing list