For full conference details, see the website: http://llvm.org/devmtg/2019-10/
Back To Schedule
Tuesday, October 22 • 2:35pm - 3:30pm
Panel: Inter-procedural Optimization (IPO)

Sign up or log in to save this to your schedule, view media, leave feedback and see who's attending!

Interprocedural optimizations (IPOs) have been historically weak in LLVM. The strong reliance on inlining can be seen as a consequence or cause. Since inlining is not always possible (recursion, parallel programs, ...) or beneficial (large functions), the effort to improve IPO has recently seen an upswing again. In order to capitalize this momentum, we would like to talk about the current situation in LLVM, and goals for the immediate, but also distant, future.

We will ask our expert panel questions as follows:
- What are the current and potential problems with IPO?
- How does the new pass manager impact IPO?
- Is function cloning & IPO as an alternative to inlining?
- How does the desired (new PM) pipeline differ from what we have right now?
- How is, and how should, IPO interact with (thin-)LTO and PGO?
- What are the most desirable IPO analyses and optimizations we are lacking today?

This guided panel discussion is a follow-up to the BoF at EuroLLVM'19. Both experts and newcomers are welcome to attend. Questions can be send to the organizers prior to the conference to allow consideration.

avatar for Teresa Johnson

Teresa Johnson

Software Engineer, Google
Teresa Johnson works on compiler optimization at Google. Prior to joining Google in 2011, she developed compiler optimizations for the Itanium compiler at HP, and received a PhD from the University of Illinois at Urbana-Champaign.
avatar for Johannes Doerfert

Johannes Doerfert

Argonne National Laboratory

Philip Reames

Azul Systems
Contributor to LLVM since 2013. Work on the Falcon JIT, a Java bytecode to X86-64 compiler based on LLVM. Mostly contribute to loop transform passes and general infrastructure (most recently atomics in backend) as needed.

Tuesday October 22, 2019 2:35pm - 3:30pm PDT
General Session (LL20ABC)