diff options
author | dnovillo <dnovillo@138bc75d-0d04-0410-961f-82ee72b054a4> | 2007-02-08 16:55:43 +0000 |
---|---|---|
committer | dnovillo <dnovillo@138bc75d-0d04-0410-961f-82ee72b054a4> | 2007-02-08 16:55:43 +0000 |
commit | ce4a3cadf918fcff308983780f7585cc1a156a81 (patch) | |
tree | 462b7ce003c31e7ef7c5f0d111647eb55bddfdfb /gcc/tree-ssa-live.c | |
parent | 0b4337472ae18e4d89e9a56683fb98541df101a0 (diff) | |
download | gcc-ce4a3cadf918fcff308983780f7585cc1a156a81.tar.gz |
PR 30562
* tree-flow.h (struct var_ann_d): Remove field 'is_used'.
Update all users.
* tree-ssa-alias.c (compute_is_aliased): Remove. Update all
users.
(init_alias_info):
* tree-ssa-live.c (remove_unused_locals): Do not remove
TREE_ADDRESSABLE variables.
* tree-ssa-structalias.c (compute_points_to_sets): Tidy.
* tree-ssa-operands.c (add_virtual_operand): Remove argument
FOR_CLOBBER. Update all users.
If VAR has an associated alias set, add a virtual operand for
it if no alias is found to conflict with the memory reference.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@121715 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'gcc/tree-ssa-live.c')
-rw-r--r-- | gcc/tree-ssa-live.c | 14 |
1 files changed, 8 insertions, 6 deletions
diff --git a/gcc/tree-ssa-live.c b/gcc/tree-ssa-live.c index 0113b1b36e7..7e98e2cf8e8 100644 --- a/gcc/tree-ssa-live.c +++ b/gcc/tree-ssa-live.c @@ -502,18 +502,20 @@ remove_unused_locals (void) cell = &TREE_CHAIN (*cell); } - /* Remove unused variables from REFERENCED_VARs. As an special exception - keep the variables that are believed to be aliased. Those can't be - easily removed from the alias sets and and operand caches. - They will be removed shortly after next may_alias pass is performed. */ + /* Remove unused variables from REFERENCED_VARs. As a special + exception keep the variables that are believed to be aliased. + Those can't be easily removed from the alias sets and operand + caches. They will be removed shortly after the next may_alias + pass is performed. */ FOR_EACH_REFERENCED_VAR (t, rvi) if (!is_global_var (t) && !MTAG_P (t) && TREE_CODE (t) != PARM_DECL && TREE_CODE (t) != RESULT_DECL && !(ann = var_ann (t))->used - && !ann->is_aliased && !is_call_clobbered (t) && !ann->symbol_mem_tag) - remove_referenced_var (t); + && !ann->symbol_mem_tag + && !TREE_ADDRESSABLE (t)) + remove_referenced_var (t); } |