[swift-dev] -whole-module-optimization with -Onone

Ben Asher benasher44 at gmail.com
Thu Dec 1 15:33:14 CST 2016


Okay I think that worked! And just to clarify, you meant set
SWIFT_OPTIMIZATION_LEVEL = -Owholemodule and OTHER_SWIFT_FLAGS = -Onone ?

I'll file a radar this afternoon with some details and DM you the number.

Thanks again!

Ben

On Thu, Dec 1, 2016 at 1:10 PM, Jordan Rose <jordan_rose at apple.com> wrote:

> Xcode needs to know that you're building in WMO mode, so rather than
> putting -whole-module-optimization in your "Other Swift Flags", put -Onone
> there. It's an ugly hack but it should work in the near term.
>
> We do want to work to make this drastic speed difference go away, so if
> you're able we (at Apple) would love to have a source drop of your Swift 3
> project, for additional data on where the problems are. Mind filing a Radar?
>
> Best,
> Jordan
>
>
> > On Dec 1, 2016, at 11:51, Ben Asher via swift-dev <swift-dev at swift.org>
> wrote:
> >
> > Hello! Someone recently tipped me off to using
> -whole-module-optimization flag with -Onone for use during debug builds to
> speed up compile times. In our project, the speedup feels quite dramatic,
> but when it gets to the linking step (after compiling both Swift and Obj-C
> in the project) it fails because ld can't find the individual object files
> that normally get emitted during the debug-type build presumably because
> -whole-module-optimization only emits one (and this isn't a normal
> "-Owholemodule"-type build which works fine).
> >
> > I can't seem to reproduce this outside of Xcode, but I was curious if
> anyone has tried this and knows of a workaround to get
> -whole-module-optimization to work with -Onone in Xcode?
> >
> > I'm currently using Xcode 8.1 (App Store build) and Swift 3 on macOS
> Sierra.
> >
> > Thanks!
> >
> > Ben
> > _______________________________________________
> > swift-dev mailing list
> > swift-dev at swift.org
> > https://lists.swift.org/mailman/listinfo/swift-dev
>
>


-- 
Ben
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://lists.swift.org/pipermail/swift-dev/attachments/20161201/4f82afff/attachment.html>


More information about the swift-dev mailing list