diff options
author | Eric Botcazou <ebotcazou@adacore.com> | 2021-08-04 15:07:17 +0200 |
---|---|---|
committer | Pierre-Marie de Rodat <derodat@adacore.com> | 2021-10-01 06:13:35 +0000 |
commit | c4f826d933368a60087f9bcc72c798cf005a6636 (patch) | |
tree | 6e2bb4d07bfc258a69f8777f90ef59d4b58cbeba | |
parent | 2e0782a9fab99f32f08b9dc3d8167360425ecb95 (diff) | |
download | gcc-c4f826d933368a60087f9bcc72c798cf005a6636.zip gcc-c4f826d933368a60087f9bcc72c798cf005a6636.tar.gz gcc-c4f826d933368a60087f9bcc72c798cf005a6636.tar.bz2 |
[Ada] Document that gnatmem requires fixed-position executables
gcc/ada/
* doc/gnat_ugn/gnat_and_program_execution.rst (gnatmem): Document
that it works only with fixed-position executables.
-rw-r--r-- | gcc/ada/doc/gnat_ugn/gnat_and_program_execution.rst | 14 |
1 files changed, 8 insertions, 6 deletions
diff --git a/gcc/ada/doc/gnat_ugn/gnat_and_program_execution.rst b/gcc/ada/doc/gnat_ugn/gnat_and_program_execution.rst index c4f186e..24ef9d6 100644 --- a/gcc/ada/doc/gnat_ugn/gnat_and_program_execution.rst +++ b/gcc/ada/doc/gnat_ugn/gnat_and_program_execution.rst @@ -3680,8 +3680,9 @@ execution of this erroneous program: The ``gnatmem`` utility monitors dynamic allocation and deallocation activity in a program, and displays information about incorrect deallocations and possible sources of memory leaks. - It is designed to work in association with a static runtime library - only and in this context provides three types of information: + It is designed to work for fixed-position executables in association + with a static runtime library only and in this context provides three + types of information: * General information concerning memory management, such as the total number of allocations and deallocations, the amount of allocated @@ -3711,15 +3712,16 @@ execution of this erroneous program: $ gnatmem [ switches ] [ DEPTH ] user_program - The program must have been linked with the instrumented version of the + The user program must be linked with the instrumented version of the allocation and deallocation routines. This is done by linking with the :file:`libgmem.a` library. For correct symbolic backtrace information, - the user program should be compiled with debugging options - (see :ref:`Switches_for_gcc`). For example to build :file:`my_program`: + the user program should also both be compiled with debugging options + (see :ref:`Switches_for_gcc`) and be linked at a fixed position. For + example to build :file:`my_program` with ``gnatmake``: :: - $ gnatmake -g my_program -largs -lgmem + $ gnatmake -g my_program -largs -lgmem -no-pie As library :file:`libgmem.a` contains an alternate body for package ``System.Memory``, :file:`s-memory.adb` should not be compiled and linked |