diff --git a/gcc/ChangeLog b/gcc/ChangeLog index 3b8e28f3708..c60e891b126 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 7711e1f7406..b29e5b25446 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