Skip to content
0:00 / 0:00

#llvm#sil#swiftintermediatelanguage

2015 LLVM Developers’ Meeting: Joseph Groff & Chris Lattner “Swift's High-Level IR: A Case Study..."

LLVM

18K subscribers • 15 videos on Hallway

YouTube
  • Recommended by 2 people: 1 in engineering communities and 1 curated list.
  • Presented by Joseph Groff & Chris Lattner, Apple
  • Linked in the descriptionSlides on llvm.org

Advanced. Deep dive for people who know the field.

25K views10 years ago2 recommendations

Systems programmingProgramming languagesCompilers and interpretersSwiftLanguage design and type systems

Joseph Groff and Chris Lattner discuss the design, motivations, and optimizations of the Swift Intermediate Language.

LLVM.org/devmtg/2015-10/ — Swift's High-Level IR: A Case Study of Complementing LLVM IR with Language-Specific Optimization - Joseph Groff & Chris Lattner, Apple Slides: llvm.org/devmtg/2015-10/slides/GroffLattner-SILHighLevelIR.p… — The Swift programming language is built on LLVM and uses LLVM IR and the LLVM backend for code generation, but it also contains a new high-level IR called SIL to model the semantics of the language (and perform optimizations) at a higher level. In this talk, we discuss the motivations and applications of SIL, including high-level semantic analyses and transformations such as flow-dependent diagnostics, devirtualization, specialization, reference counting optimization, and TBAA, and we compare SIL's design with that of LLVM IR. — Videos Filmed & Edited by Bash Films: BashFilms.com

Why it's here

2 people recommend this

What people say. Highly recommended as a deep dive into compiler design and Swift's intermediate representation.

u/ENTROPYINTENSIFIESin r/swift • Recommends

“Swift's High-Level IR: A Case Study” — From the LLVM developers’ conference

programming-talkscurated list on GitHubRecommends

Under “Swift”

Swift's High-Level IR: A Case Study... 00:55:37 by **Joe Groff & Chris Lattner** (2015) A

u/mttdin r/ProgrammingLanguages • Mentions

On “A new compiler backend called Cranelift uses basic block parameters instead of phi nodes. How do the two approaches compare?”

…re - https://github.com/apple/swift/blob/master/docs/SIL.rst - https://github.com/apple/swift/blob/master/docs/HighLevelSILOptimizations.rst - https://github.com/apple/swift/blob/master/docs/Serialization.rst - Swift's High-Level IR: A Case Study of Complementing LLVM IR with Language-Specific Optimization - Joseph Groff & Chris Lattner, Apple - link to this video - http://llvm.org/devmtg/2015-10/slides/GroffLattner-SILHighLevelIR.pdf - Introduction to Swift Intermediate Language — Alex Blewitt - link to this video For another perspective, see also "Compiling with Continuations, or without? Whatever." (https://www.cs.purdue.edu/~rompf/papers/cong-preprint201811.pdf; where "Maurer et al. 19" refers to the…