[LLVMdev] RFC: ThinLTO Impementation Plan

Teresa Johnson tejohnson at google.com
Tue Jul 21 11:35:32 PDT 2015


On Fri, May 15, 2015 at 3:07 PM, Duncan P. N. Exon Smith <
dexonsmith at apple.com> wrote:
>
> > On 2015-May-15, at 07:30, Teresa Johnson <tejohnson at google.com> wrote:
> >>> - ModuleLinker changes to do ThinLTO-specific symbol linking and
> >>> static promotion when necessary. The linkage type of imported
> >>> functions changes to AvailableExternallyLinkage, for example. Statics
> >>> must be promoted in certain cases, and renamed in consistent ways.
> >>
> >> Ah, could have read ahead again; this answers my questions about
> >> referencing global variables with local linkage.
> >>
> >> It also sounds pretty hairy.  Details welcome.
> >
> > It has to be well thought out for sure. We had to do this for LIPO as
> > well so already knew what needed to be done here. I will put together
> > more details in a follow-on email.
>
> A separate thread SGTM.  I think it's a fairly big topic.
>

Wanted to follow up and note that I sent out a detailed description of the
symbol linking and renaming with ThinLTO last week. PTAL when you get a
chance:
http://lists.cs.uiuc.edu/pipermail/llvmdev/2015-July/088025.html

There is a summary table at the end but it looks better formatted in the
pdf attached to that email.

Thanks,
Teresa


>
> Please include information on how you avoid name clashes globally, and
> how you demote the functions back to internal or private linkage before
> the end of the link.
>



-- 
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-dev/attachments/20150721/74761de2/attachment.html>


More information about the llvm-dev mailing list