From ccd2a21e3be089003826a9fd46a821925c9a6168 Mon Sep 17 00:00:00 2001 From: Hans-Peter Nilsson Date: Fri, 8 Feb 2008 02:43:52 +0000 Subject: [PATCH] extend.texi (Function Attributes): Mention asm ("") as method to keep calls. * doc/extend.texi (Function Attributes) : Mention asm ("") as method to keep calls. From-SVN: r132182 --- gcc/ChangeLog | 5 +++++ gcc/doc/extend.texi | 11 +++++++++++ 2 files changed, 16 insertions(+) diff --git a/gcc/ChangeLog b/gcc/ChangeLog index 3b8e28f37088..c60e891b1264 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,8 @@ +2008-02-08 Hans-Peter Nilsson + + * doc/extend.texi (Function Attributes) : Mention + asm ("") as method to keep calls. + 2008-02-07 Manuel Lopez-Ibanez PR other/32754 diff --git a/gcc/doc/extend.texi b/gcc/doc/extend.texi index 7711e1f74062..b29e5b254467 100644 --- a/gcc/doc/extend.texi +++ b/gcc/doc/extend.texi @@ -2519,6 +2519,17 @@ Functions with this attribute will not be so instrumented. @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 causes 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 +(@pxref{Extended Asm}) in the called function, to serve as a special +side-effect. @item nonnull (@var{arg-index}, @dots{}) @cindex @code{nonnull} function attribute -- 2.47.2