public inbox for gcc-patches@gcc.gnu.org
 help / color / mirror / Atom feed
* [Ada] Clarify documentation for Stack_Usage
@ 2019-09-17  8:06 Pierre-Marie de Rodat
  0 siblings, 0 replies; only message in thread
From: Pierre-Marie de Rodat @ 2019-09-17  8:06 UTC (permalink / raw)
  To: gcc-patches; +Cc: Bob Duff

[-- Attachment #1: Type: text/plain, Size: 387 bytes --]

Clarify the documentation for Stack_Usage (both comments in the code,
and user documentation) to note that tools like Valgrind won't work.

Tested on x86_64-pc-linux-gnu, committed on trunk

2019-09-17  Bob Duff  <duff@adacore.com>

gcc/ada/

	* doc/gnat_ugn/gnat_and_program_execution.rst: Clarify
	documentation.
	* gnat_ugn.texi: Regenerate.
	* libgnat/s-stausa.ads: Clarify comments.

[-- Attachment #2: patch.diff --]
[-- Type: text/x-diff, Size: 2113 bytes --]

--- gcc/ada/doc/gnat_ugn/gnat_and_program_execution.rst
+++ gcc/ada/doc/gnat_ugn/gnat_and_program_execution.rst
@@ -3396,8 +3396,11 @@ adding a switch to ``gnatbind``, as:
 
       $ gnatbind -u0 file
 
-With this option, at each task termination, its stack usage is  output on
+With this option, at each task termination, its stack usage is output on
 :file:`stderr`.
+Note that this switch is not compatible with tools like
+Valgrind and DrMemory; they will report errors.
+
 It is not always convenient to output the stack usage when the program
 is still running. Hence, it is possible to delay this output until program
 termination. for a given number of tasks specified as the argument of the

--- gcc/ada/gnat_ugn.texi
+++ gcc/ada/gnat_ugn.texi
@@ -21,7 +21,7 @@
 
 @copying
 @quotation
-GNAT User's Guide for Native Platforms , Sep 13, 2019
+GNAT User's Guide for Native Platforms , Sep 14, 2019
 
 AdaCore
 
@@ -23321,8 +23321,11 @@ $ gnatbind -u0 file
 @end example
 @end quotation
 
-With this option, at each task termination, its stack usage is  output on
+With this option, at each task termination, its stack usage is output on
 @code{stderr}.
+Note that this switch is not compatible with tools like
+Valgrind and DrMemory; they will report errors.
+
 It is not always convenient to output the stack usage when the program
 is still running. Hence, it is possible to delay this output until program
 termination. for a given number of tasks specified as the argument of the

--- gcc/ada/libgnat/s-stausa.ads
+++ gcc/ada/libgnat/s-stausa.ads
@@ -67,6 +67,11 @@ package System.Stack_Usage is
    --  Type of the stack analyzer tool. It is used to fill a portion of the
    --  stack with Pattern, and to compute the stack used after some execution.
 
+   --  Note that Fill_Stack writes data past the current top of the stack
+   --  (i.e. at addresses less than the stack pointer register, assuming the
+   --  stack grows downward). Therefore, this package is incompatible with
+   --  tools like Valgrind and DrMemory.
+
    --  Usage:
 
    --  A typical use of the package is something like:


^ permalink raw reply	[flat|nested] only message in thread

only message in thread, other threads:[~2019-09-17  8:06 UTC | newest]

Thread overview: (only message) (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2019-09-17  8:06 [Ada] Clarify documentation for Stack_Usage Pierre-Marie de Rodat

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).