[swift-evolution] ABI of throwing
    Brent Royal-Gordon 
    brent at architechies.com
       
    Tue Aug  9 02:27:21 CDT 2016
    
    
  
> On Aug 7, 2016, at 9:36 PM, Chris Lattner via swift-evolution <swift-evolution at swift.org> wrote:
> 
>>  However, as linked above, someone did for Microsoft platforms (for Microsoft-platform-style errors) and found that there is an impact. 
> 
> C++ and Swift are completely different languages in this respect, so the analysis doesn’t translate over.
I believe the language in question was a native-compiled C# variant, not C++.
However, I suspect the numbers from Midori's experiment may not hold up in Swift. Midori used a generational mark-and-sweep garbage collector, so it didn't need to write implicit `finally` blocks to release objects owned by stack frames. Swift would. That could easily eat up the promised 7% code size savings, and the reduced ability to jump past frames could similarly damage the speed improvements.
I'm not saying I have the numbers to prove that it does; I don't. But given our different constraints, there are good reasons to doubt we'd see the same results.
-- 
Brent Royal-Gordon
Architechies
    
    
More information about the swift-evolution
mailing list