aboutsummaryrefslogtreecommitdiff
path: root/gcc/doc
diff options
context:
space:
mode:
authorBen Elliston <bje@au.ibm.com>2004-10-27 21:02:16 +0000
committerBen Elliston <bje@gcc.gnu.org>2004-10-28 07:02:16 +1000
commit61b5800161f855eb1028cd76ad200bd0d63b2b77 (patch)
tree13fd3cfcb73f6650e4dab5d9115c569183d1183a /gcc/doc
parent72111a1f4bb7d88865ee53bdc2fc26db58c534ca (diff)
downloadgcc-61b5800161f855eb1028cd76ad200bd0d63b2b77.zip
gcc-61b5800161f855eb1028cd76ad200bd0d63b2b77.tar.gz
gcc-61b5800161f855eb1028cd76ad200bd0d63b2b77.tar.bz2
params.def (PARAM_SRA_MAX_STRUCTURE_SIZE): New.
* params.def (PARAM_SRA_MAX_STRUCTURE_SIZE): New. (PARAM_SRA_FIELD_STRUCTURE_RATIO): Likewise. * params.h (SRA_MAX_STRUCTURE_SIZE): New. (SRA_FIELD_STRUCTURE_RATIO): Likewise. * tree-sra.c: Include "params.h". (decide_block_copy): Use new parameters. * doc/invoke.texi (Optimize Options): Document new SRA pass parameters sra-max-structure-size and sra-field-structure-ratio. [testsuite] * gcc.dg/tree-ssa/sra-1.c: Pass --param sra-max-structure-size. From-SVN: r89711
Diffstat (limited to 'gcc/doc')
-rw-r--r--gcc/doc/invoke.texi13
1 files changed, 13 insertions, 0 deletions
diff --git a/gcc/doc/invoke.texi b/gcc/doc/invoke.texi
index 990b83c..ceeae22 100644
--- a/gcc/doc/invoke.texi
+++ b/gcc/doc/invoke.texi
@@ -5313,6 +5313,19 @@ In each case, the @var{value} is an integer. The allowable choices for
@var{name} are given in the following table:
@table @gcctabopt
+@item sra-max-structure-size
+The maximum structure size, in bytes, at which the scalar replacement
+of aggregates (SRA) optimization will perform block copies. The
+default value, 0, implies that GCC will select the most appropriate
+size itself.
+
+@item sra-field-structure-ratio
+The treshold ratio (as a percentage) between instantiated fields and
+the complete structure size. We say that if the ratio of the number
+of bytes in instantiated fields to the number of bytes in the complete
+structure exceeds this parameter, then block copies are not used. The
+default is 75.
+
@item max-crossjump-edges
The maximum number of incoming edges to consider for crossjumping.
The algorithm used by @option{-fcrossjumping} is @math{O(N^2)} in