[swift-dev] copy-on-write proposal

Erik Eckstein eeckstein at apple.com
Wed Oct 12 13:29:58 CDT 2016


> On Oct 12, 2016, at 11:19 AM, Alexis <abeingessner at apple.com> wrote:
> 
> I’m having trouble figuring something out: is all of this contingent on all of the relevant operations being completely inlined into a single function at the SIL level? Could failing to inline a standard library function lead to performance cliffs? I understand this is generally true of inlining and dead-code elimination; but I’m wondering how this affects the abstractions we expose. Can we know that some things will “always” work, even if parts aren’t inlined?

Yes, also these optimizations heavily rely on inlining. I would say that originally almost everything is inside a called function, just think of all the generated getters/setters. But usually this is not a problem because most of the relevant functions are quite small and always inlined anyway.


> 
>> On Oct 11, 2016, at 7:48 PM, Erik Eckstein via swift-dev <swift-dev at swift.org> wrote:
>> 
>> This is a proposal for representing copy-on-write buffers in SIL. Actually it’s still a draft for a proposal. It also heavily depends on how we move forward with SIL ownership.
>> <CopyOnWrite.rst>
>> If you have any comments, please let me know.
>> 
>> Erik
>> 
>> 
>> _______________________________________________
>> swift-dev mailing list
>> swift-dev at swift.org
>> https://lists.swift.org/mailman/listinfo/swift-dev
> 



More information about the swift-dev mailing list