On Fri, 20 Nov 2015, Richard Henderson wrote: > I'd be perfectly happy to deprecate and later completely remove basic asm > within functions.
We've explictly promised (directed to kernel people IIRC) that the empty basic asm; 'asm ("")', has forward-compatible outlining magic, so people would not have to keep adding ever-new attributes like noinline,noclone to avoid finding their functions "spilling over", so please exclude that. To wit, from extend.texi: @item noinline @cindex @code{noinline} function attribute This function attribute prevents a function from being considered for inlining. @c Don't enumerate the optimizations by name here; we try to be @c future-compatible with this mechanism. If the function does not have side-effects, there are optimizations other than inlining that cause function calls to be optimized away, although the function call is live. To keep such calls from being optimized away, put @smallexample asm (""); @end smallexample @noindent (@pxref{Extended Asm}) in the called function, to serve as a special side-effect. brgds, H-P