swiftwasm/swift

Unlock LTO

Opened this issue · 0 comments

This is an umbrella issue to track our work in high-level for link-time optimization (LTO)

Motivation

  • Reduce startup time by reducing code size
    • Code size is a critical part of reducing initial (un-cached) startup time as it affects download size and compilation time inside Wasm engine.
  • Gain more performance speedup by utilizing cross module information

Sub-tasks

  • Embed bitcode info in stdlib and corelibs object files
  • Adjust SwiftPM and swift-driver to properly propagate LTO options
  • TBD