+2018-11-18 Sandra Loosemore <sandra@codesourcery.com>
+
+ PR other/40498
+ * doc/extend.texi (Common Function Attributes): Document that
+ no_instrument_function applies to -p and -pg, too.
+ * doc/invoke.texi (Instrumentation Options): Add cross-references
+ to docs for -p, -pg, and -finstrument-functions.
+
2018-11-18 Alan Modra <amodra@gmail.com>
* config/gnu-user.h (GNU_USER_TARGET_CRTI): Define.
@item no_instrument_function
@cindex @code{no_instrument_function} function attribute
@opindex finstrument-functions
-If @option{-finstrument-functions} is given, profiling function calls are
+@opindex p
+@opindex pg
+If any of @option{-finstrument-functions}, @option{-p}, or @option{-pg} are
+given, profiling function calls are
generated at entry and exit of most user-compiled functions.
Functions with this attribute are not so instrumented.
@table @gcctabopt
@cindex @command{prof}
+@cindex @command{gprof}
@item -p
+@itemx -pg
@opindex p
-Generate extra code to write profile information suitable for the
-analysis program @command{prof}. You must use this option when compiling
-the source files you want data about, and you must also use it when
-linking.
-
-@cindex @command{gprof}
-@item -pg
@opindex pg
Generate extra code to write profile information suitable for the
-analysis program @command{gprof}. You must use this option when compiling
+analysis program @command{prof} (for @option{-p}) or @command{gprof}
+(for @option{-pg}). You must use this option when compiling
the source files you want data about, and you must also use it when
linking.
+You can use the function attribute @code{no_instrument_function} to
+suppress profiling of individual functions when compiling with these options.
+@xref{Common Function Attributes}.
+
@item -fprofile-arcs
@opindex fprofile-arcs
Add code so that program flow @dfn{arcs} are instrumented. During
interrupt routines, and any functions from which the profiling functions
cannot safely be called (perhaps signal handlers, if the profiling
routines generate output or allocate memory).
+@xref{Common Function Attributes}.
@item -finstrument-functions-exclude-file-list=@var{file},@var{file},@dots{}
@opindex finstrument-functions-exclude-file-list