diff options
author | dnovillo <dnovillo@138bc75d-0d04-0410-961f-82ee72b054a4> | 2007-11-08 00:01:38 +0000 |
---|---|---|
committer | dnovillo <dnovillo@138bc75d-0d04-0410-961f-82ee72b054a4> | 2007-11-08 00:01:38 +0000 |
commit | f5ef996258725dd451733c21e2bba88c87019646 (patch) | |
tree | 06efa0a928d92fb0ec421d6bddae19cebfe2145b /gcc/tree-flow.h | |
parent | a7905afa00a185861ad143eea26089abd5dbb966 (diff) | |
download | gcc-f5ef996258725dd451733c21e2bba88c87019646.tar.gz |
PR 33870
* tree.h (struct tree_struct_field_tag): Add field in_nested_struct.
(SFT_IN_NESTED_STRUCT): Define.
* tree-dfa.c (dump_subvars_for): Show offset of each
sub-var.
* tree-flow.h (struct fieldoff): Add field in_nested_struct.
* tree-ssa-structalias.c (struct variable_info): Likewise.
(push_fields_onto_fieldstack): If OFFSET is positive,
set in_nested_struct.
(create_variable_info_for): Copy setting of
in_nested_struct from the field offset object.
(set_uids_in_ptset): Set SFT_IN_NESTED_STRUCT from the
variable info object.
* tree-ssa-operands.c (add_vars_for_offset): If VAR
belongs to a nested structure, adjust OFFSET by
SFT_OFFSET(VAR).
testsuite/ChangeLog
* gcc.c-torture/execute/pr33870.x: Remove.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@129976 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'gcc/tree-flow.h')
-rw-r--r-- | gcc/tree-flow.h | 4 |
1 files changed, 4 insertions, 0 deletions
diff --git a/gcc/tree-flow.h b/gcc/tree-flow.h index 3421c14b97d..1b63e95d3bd 100644 --- a/gcc/tree-flow.h +++ b/gcc/tree-flow.h @@ -1159,6 +1159,10 @@ struct fieldoff /* Field. */ tree decl; + /* True if this field is inside a structure nested inside the base + containing object. */ + unsigned int in_nested_struct : 1; + /* Offset from the base of the base containing object to this field. */ HOST_WIDE_INT offset; |