SN Systems Tech Blog


Supporting Regular and Thin LTO with a Single LTO Bitcode Format

ARTICLE BY: Matthew Voss
POSTED: Nov 28, 2019
TAGS: LLVM, LLVM Developers Meeting, LTO, Toolchain

In LLVM versions up to and including 10.0, LTO bitcode files are specialized to either Thin or Regular LTO. As a user or middleware library provider, this increases the complexity. A user must recompile all files for the type of LTO and library providers must ship two versions of their bitcode. This talk outlines Sony Interactive Entertainment’s (SIE) solution: a single LTO bitcode format that can be used with both Thin and Regular LTO backends.


Clang Time Trace Feature

ARTICLE BY: Russell Gallop
POSTED: Sep 25, 2019
TAGS: Clang, Compiler, Toolchain

For many game studios, fast builds are essential to their development process and a lot of time and effort can be spent keeping builds fast. To support this, the PS4 toolchain will shortly support a new Clang feature; time traces. This tells you where the compiler is spending its time, giving you an insight into what the compiler is doing and an insight into your own code.


Targeting a statically compiled program repository with LLVM

ARTICLE BY: Russell Gallop & Phil Camp
POSTED: Jul 17, 2019
TAGS: LLVM Developers Meeting, Toolchain

Following on from the 2016 talk "Demo of a repository for statically compiled programs", this lightning talk will present a brief overview of how LLVM was modified to target a program repository. This includes adding a new target output format and a new optimization pass to skip program elements already present in the repository.