Commit f5a9ad25 by Patrick Bernardi Committed by Pierre-Marie de Rodat

[Ada] Update user manual for the -D binder switch

2018-05-28  Patrick Bernardi  <bernardi@adacore.com>

gcc/ada/

	* doc/gnat_ugn/building_executable_programs_with_gnat.rst: Update the
	description of the -D binder switch to reflect current usage.
	* gnat_ugn.texi: Regenerate.

From-SVN: r260824
parent 6a890c58
2018-05-28 Patrick Bernardi <bernardi@adacore.com>
* doc/gnat_ugn/building_executable_programs_with_gnat.rst: Update the
description of the -D binder switch to reflect current usage.
* gnat_ugn.texi: Regenerate.
2018-05-28 Gary Dismukes <dismukes@adacore.com> 2018-05-28 Gary Dismukes <dismukes@adacore.com>
* exp_ch3.adb: Minor reformatting * exp_ch3.adb: Minor reformatting
......
...@@ -6198,28 +6198,25 @@ be presented in subsequent sections. ...@@ -6198,28 +6198,25 @@ be presented in subsequent sections.
.. index:: -D (gnatbind) .. index:: -D (gnatbind)
:switch:`-D{nn}[k|m]` :switch:`-D{nn}[k|m]`
This switch can be used to change the default secondary stack size value Set the default secondary stack size to ``nn``. The suffix indicates whether
to a specified size ``nn``, which is expressed in bytes by default, or the size is in bytes (no suffix), kilobytes (``k`` suffix) or megabytes
in kilobytes when suffixed with ``k`` or in megabytes when suffixed (``m`` suffix).
with ``m``.
The secondary stack holds objects of unconstrained types that are returned by
The secondary stack is used to deal with functions that return a variable functions, for example unconstrained Strings. The size of the secondary stack
sized result, for example a function returning an unconstrained can be dynamic or fixed depending on the target.
String. There are two ways in which this secondary stack is allocated.
For most targets, the secondary stack grows on demand and is implemented as
For most targets, the secondary stack grows on demand and is allocated a chain of blocks in the heap. In this case, the default secondary stack size
as a chain of blocks in the heap. The -D option is not very determines the initial size of the secondary stack for each task and the
relevant. It only give some control over the size of the allocated smallest amount the secondary stack can grow by.
blocks (whose size is the minimum of the default secondary stack size value,
and the actual size needed for the current allocation request). For Ravenscar, ZFP, and Cert run-times the size of the secondary stack is
fixed. This switch can be used to change the default size of these stacks.
For certain targets, notably VxWorks 653 and bare board targets, The default secondary stack size can be overridden on a per-task basis if
the secondary stack is allocated by carving off a chunk of the primary task individual tasks have different secondary stack requirements. This is
stack. By default this is a fixed percentage of the primary task stack as achieved through the Secondary_Stack_Size aspect that takes the size of the
defined by System.Parameter.Sec_Stack_Percentage. This can be overridden per secondary stack in bytes.
task using the Secondary_Stack_Size pragma/aspect. The -D option is used to
define the size of the environment task's secondary stack.
.. index:: -e (gnatbind) .. index:: -e (gnatbind)
......
...@@ -3,7 +3,7 @@ ...@@ -3,7 +3,7 @@
@setfilename gnat_ugn.info @setfilename gnat_ugn.info
@documentencoding UTF-8 @documentencoding UTF-8
@ifinfo @ifinfo
@*Generated by Sphinx 1.3.6.@* @*Generated by Sphinx 1.4.6.@*
@end ifinfo @end ifinfo
@settitle GNAT User's Guide for Native Platforms @settitle GNAT User's Guide for Native Platforms
@defindex ge @defindex ge
...@@ -21,7 +21,7 @@ ...@@ -21,7 +21,7 @@
@copying @copying
@quotation @quotation
GNAT User's Guide for Native Platforms , April 25, 2018 GNAT User's Guide for Native Platforms , May 22, 2018
AdaCore AdaCore
...@@ -15512,27 +15512,25 @@ When they do not already have such a pragma. ...@@ -15512,27 +15512,25 @@ When they do not already have such a pragma.
@item @code{-D@emph{nn}[k|m]} @item @code{-D@emph{nn}[k|m]}
This switch can be used to change the default secondary stack size value Set the default secondary stack size to @code{nn}. The suffix indicates whether
to a specified size @code{nn}, which is expressed in bytes by default, or the size is in bytes (no suffix), kilobytes (@code{k} suffix) or megabytes
in kilobytes when suffixed with @code{k} or in megabytes when suffixed (@code{m} suffix).
with @code{m}.
The secondary stack holds objects of unconstrained types that are returned by
The secondary stack is used to deal with functions that return a variable functions, for example unconstrained Strings. The size of the secondary stack
sized result, for example a function returning an unconstrained can be dynamic or fixed depending on the target.
String. There are two ways in which this secondary stack is allocated.
For most targets, the secondary stack grows on demand and is implemented as
For most targets, the secondary stack grows on demand and is allocated a chain of blocks in the heap. In this case, the default secondary stack size
as a chain of blocks in the heap. The -D option is not very determines the initial size of the secondary stack for each task and the
relevant. It only give some control over the size of the allocated smallest amount the secondary stack can grow by.
blocks (whose size is the minimum of the default secondary stack size value,
and the actual size needed for the current allocation request). For Ravenscar, ZFP, and Cert run-times the size of the secondary stack is
fixed. This switch can be used to change the default size of these stacks.
For certain targets, notably VxWorks 653 and bare board targets, The default secondary stack size can be overridden on a per-task basis if
the secondary stack is allocated by carving off a chunk of the primary task individual tasks have different secondary stack requirements. This is
stack. By default this is a fixed percentage of the primary task stack as achieved through the Secondary_Stack_Size aspect that takes the size of the
defined by System.Parameter.Sec_Stack_Percentage. This can be overridden per secondary stack in bytes.
task using the Secondary_Stack_Size pragma/aspect. The -D option is used to
define the size of the environment task's secondary stack.
@end table @end table
@geindex -e (gnatbind) @geindex -e (gnatbind)
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment