[PATCH] D43841: Add an option to disable tail-call optimization for escaping blocks

Akira Hatanaka via Phabricator via cfe-commits cfe-commits at lists.llvm.org
Wed Feb 28 12:58:34 PST 2018


ahatanak added a comment.

This is limited to escaping blocks because disabling tail-call optimizations for all blocks might impact performance. The user is claiming that non-escaping blocks are often used in areas that are performance-sensitive (for example, dispatch_sync() and -[NSArray enumerateObjectsUsingBlock:] in a tight loop), so disabling tail-call optimization indiscriminately can cause performance degradation (and clients might decide not to use the command line option because of that).


https://reviews.llvm.org/D43841





More information about the cfe-commits mailing list