[www] r296530 - Add LLD "Improve Code Layout" projects to the list of Open Projects

Sean Silva via llvm-commits llvm-commits at lists.llvm.org
Tue Feb 28 18:18:35 PST 2017


Thanks for adding this, one comment inline:

On Tue, Feb 28, 2017 at 2:29 PM, Mehdi Amini via llvm-commits <
llvm-commits at lists.llvm.org> wrote:

> Author: mehdi_amini
> Date: Tue Feb 28 16:29:43 2017
> New Revision: 296530
>
> URL: http://llvm.org/viewvc/llvm-project?rev=296530&view=rev
> Log:
> Add LLD "Improve Code Layout" projects to the list of Open Projects
>
> Modified:
>     www/trunk/OpenProjects.html
>
> Modified: www/trunk/OpenProjects.html
> URL: http://llvm.org/viewvc/llvm-project/www/trunk/
> OpenProjects.html?rev=296530&r1=296529&r2=296530&view=diff
> ============================================================
> ==================
> --- www/trunk/OpenProjects.html (original)
> +++ www/trunk/OpenProjects.html Tue Feb 28 16:29:43 2017
> @@ -42,6 +42,11 @@
>            LLDB public API</a>
>        </li>
>      </ul>
> +    <ul><a href="http://lldb.llvm.org/">LLD</a>
>

s/lldb/lld/ :)

-- Sean Silva


> +      <li><a href="#lld_layout">Improve Code Layout</a>
> +      </li>
> +    </ul>
> +
>    </li>
>    <li><a href="#what">What is this?</a></li>
>    <li><a href="#subprojects">LLVM Subprojects: Clang and more</a></li>
> @@ -436,6 +441,57 @@ Welcome prospective Google Summer of Cod
>  </div>
>
>  <!-- ***********************************************************************
> -->
> +<div class="www_subsection">
> +  <a>LLD</a>
> +</div>
> +<!-- ***********************************************************************
> -->
> +
> +<!-- ***********************************************************************
> -->
> +<div class="www_subsubsection">
> +  <a name="lld_layout">Improve Code Layout</a>
> +</div>
> +<!-- ***********************************************************************
> -->
> +
> +<div class="www_text">
> +  <p><b>Description of the project: </b>
> +       The goal for the project is trying to improve the
> layout/performances of the
> +       generated executable. The primary object format considered for the
> project
> +       is ELF but this can be extended to other object formats. The
> project will
> +       touch both LLVM and lld.
> +       <ul>
> +               <li>Warm-up: lld already provides an option to
> (--symbol-ordering file)
> +                       which takes a symbol ordering file (presumably
> collected from a
> +                       profiler) and builds a layout. This aims to reduce
> startup times. It
> +                       would be nice to provide scripts to profile the
> applications/process
> +                       various profilers output to produce an order
> file/evaluate the
> +                       impact of the feature (as it has been tested only
> on a small class
> +                       of applications). There's already some work in the
> area but nothing
> +                       has been integrated in the LLVM build system for
> ELF. Ideally a
> +                       motivated student would do the
> benchmarking/analysis before the GSoC
> +                       starts to familiarize with the problem.</li>
> +               <li>The meat: Use/extend profile informations generated by
> LLVM to help
> +                       the linker laying out functions. An obvious way
> (what gcc uses, [1])
> +                       is to pass values to the linker using special
> `.note` sections. The
> +                       linker then can reconstruct the call graph and
> apply an algorithm
> +                       like the one described in [2] (this is just a
> starting point, other
> +                       alternatives can be explored).</li>
> +       </ul>
> +  </p>
> +  <p>
> +       Possible extension: Xray can be used to provide data (it's unclear
> whether
> +       this is feasible easily, see David's comment in [3]).
> +  </p>
> +  <p><b>Contact Person:</b>Davide Italiano</p>
> +
> +  <ul>
> +    <li>[1] http://sourceware.org/ml/binutils/2011-03/msg00043.html</li>
> +    <li>[2] http://dl.acm.org/citation.cfm?id=93550</li>
> +    <li>[3] http://lists.llvm.org/pipermail/llvm-dev/2017-
> January/109114.html</li>
> +  </ul>
> +</div>
> +
> +
> +<!-- ***********************************************************************
> -->
>  <div class="www_sectiontitle">
>    <a name="what">What is this?</a>
>  </div>
>
>
> _______________________________________________
> 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/20170228/a275e6cc/attachment.html>


More information about the llvm-commits mailing list