diff options
author | dberlin <dberlin@138bc75d-0d04-0410-961f-82ee72b054a4> | 2005-04-06 20:03:15 +0000 |
---|---|---|
committer | dberlin <dberlin@138bc75d-0d04-0410-961f-82ee72b054a4> | 2005-04-06 20:03:15 +0000 |
commit | 726e114ce3badf8d02ba54e38ade3dda51039831 (patch) | |
tree | 6a06c9e86888c19907695323e00a5fc66d7d3ed5 /gcc/params.def | |
parent | 98b93ebbf48d3a2d9cfaa36b6c8ab35aad923be4 (diff) | |
download | gcc-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.def | 8 |
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 |