blob: b94380a5e526274cd12ae29b0ea15e5c6c162212 [file] [log] [blame]
``incremental``
Compiles each Swift source in the module separately, resulting in better
parallelism in the build. The compiler emits additional information into
the build directory improving rebuild performance when small changes are made
to the source between rebuilds. This is the best option to use while
iterating on changes in a project.
``wholemodule``
Whole-module optimizations are slowest to compile, but results in the most
optimized library. The entire context is loaded into once instance of the
compiler, so there is no parallelism across source files in the module.
``singlefile``
Compiles each source in a Swift modules separately, resulting in better
parallelism. Unlike the ``incremental`` build mode, no additional information
is emitted by the compiler during the build, so rebuilding after making small
changes to the source file will not run faster. This option should be used
sparingly, preferring ``incremental`` builds, unless working around a compiler
bug.