Bring Chromium's macOS toolchain up to speed
- Mentors
- Sreeja Kamishetty, Stephen, Nico Weber
- Organization
- Chromium
- Technologies
- c++, macos, Mach-O
- Topics
- developer tools, performance, toolchain, llvm, Linkers
Chromium uses LLVM’s LLD linker in its build process. This project aims to continue my previous work on the macOS version of LLD (ld64.lld) to bring performance improvements and better support for recently added features in the Mach-O format. This reduces developer time spent on waiting for rebuilds and the new features improve program load times.
While LLD is generally considered fast – especially compared to Apple’s older linker – the mold project has shown that significant speedups are possible. By processing input files in parallel, we can eliminate the biggest bottleneck. A faster SHA256 implementation will aid in computing code signatures. I will also focus on fixing the last problems preventing chained fixups from being enabled by default. Lastly, if time permits, I’m interested in improving Clang warnings.