summaryrefslogtreecommitdiff
path: root/gcc/params.def
diff options
context:
space:
mode:
authordberlin <dberlin@138bc75d-0d04-0410-961f-82ee72b054a4>2005-04-06 20:03:15 +0000
committerdberlin <dberlin@138bc75d-0d04-0410-961f-82ee72b054a4>2005-04-06 20:03:15 +0000
commit726e114ce3badf8d02ba54e38ade3dda51039831 (patch)
tree6a06c9e86888c19907695323e00a5fc66d7d3ed5 /gcc/params.def
parent98b93ebbf48d3a2d9cfaa36b6c8ab35aad923be4 (diff)
downloadgcc-726e114ce3badf8d02ba54e38ade3dda51039831.tar.gz
2005-04-06 Daniel Berlin <dberlin@dberlin.org>
* params.def (PARAM_SALIAS_MAX_IMPLICIT_FIELDS): New * params.h (SALIAS_MAX_IMPLICIT_FIELDS): New * doc/invoke.texi: Documnet salias-max-implicit-fields. * tree-ssa-alias.c (struct used_part): Add implicit_uses and explicit_uses members. (get_or_create_used_part_for): Initialize new fields. (fieldoff_compare): New function. (create_overlap_variables_for): Count number of fields, use heuristic to determine whether to create subvars for vars with only implicit uses. Sort the field list by offset and avoid creating duplicate SFT's. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@97746 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'gcc/params.def')
-rw-r--r--gcc/params.def8
1 files changed, 8 insertions, 0 deletions
diff --git a/gcc/params.def b/gcc/params.def
index 2dbc19758e0..6a90a02bae6 100644
--- a/gcc/params.def
+++ b/gcc/params.def
@@ -35,6 +35,14 @@ Software Foundation, 59 Temple Place - Suite 330, Boston, MA
Be sure to add an entry to invoke.texi summarizing the parameter. */
+/* The maximum number of fields in a variable with only implicit uses
+ for which structure aliasing will consider trying to track each
+ field. The default is 5. */
+DEFPARAM (PARAM_SALIAS_MAX_IMPLICIT_FIELDS,
+ "salias-max-implicit-fields",
+ "The maximum number of fields in a structure variable without direct structure accesses that GCC will attempt to track separately",
+ 5, 0, 0)
+
/* The maximum structure size at which the scalar replacement of
aggregates (SRA) pass will perform block copies. The default
value, 0, implies that GCC will select the most appropriate size