[LLVMdev] Postponing more passes in LTO

Daniel Stewart stewartd at codeaurora.org
Thu Sep 18 06:54:54 PDT 2014


If the notes about that pipeline are still around, I’d love to hear about/look at it. I’d like to investigate some changes to LTO, but certainly want to know what has already been discussed/discovered about the flow.

 

Daniel

 

From: Eric Christopher [mailto:echristo at gmail.com] 
Sent: Wednesday, September 17, 2014 10:32 AM
To: Daniel Stewart; Chandler Carruth; Dan Gohman; Bob Wilson
Cc: llvmdev at cs.uiuc.edu
Subject: Re: [LLVMdev] Postponing more passes in LTO

 

 

 

On Wed, Sep 17, 2014 at 6:46 AM, Daniel Stewart <stewartd at codeaurora.org <mailto:stewartd at codeaurora.org> > wrote:

Looking at the existing flow of passes for LTO, it appears that most all passes are run on a per file basis, before the call to the gold linker. I’m looking to get people’s feedback on whether there would be an advantage to waiting to run a number of these passes until the linking stage. For example, I believe I saw a post a little while back about postponing vectorization until the linking stage. It seems to me that there could be an advantage to postponing (some) passes until the linking stage, where the entire graph is available. In general, what do people think about the idea of a different flow of LTO where more passes are postponed until the linking stage? 

 

 

I think there needs to be some amount of cleanup before cross module inlining otherwise you're going to lose a lot of inlining chances that you'd have had. It's a bit of a tradeoff. I remember working up a pipeline with Chandler and Dan at one point and I believe Bob was in on the discussion too. I don't have notes of the actual pipeline so I'm adding them all to the thread to pipe up :)

 

-eric

 

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.llvm.org/pipermail/llvm-dev/attachments/20140918/e2173d18/attachment.html>


More information about the llvm-dev mailing list