diff options
author | Diego Novillo <dnovillo@redhat.com> | 2004-12-10 21:54:42 +0000 |
---|---|---|
committer | Diego Novillo <dnovillo@gcc.gnu.org> | 2004-12-10 16:54:42 -0500 |
commit | 7d5f9cc68fe1e0a920405fe49a0ea3fdf200971e (patch) | |
tree | 14bfdf7a466c4e8af2752e4d606db1e56d86b149 /gcc/tree-dfa.c | |
parent | d49d090735d64081c451de95145981f9cf47ba6f (diff) | |
download | gcc-7d5f9cc68fe1e0a920405fe49a0ea3fdf200971e.zip gcc-7d5f9cc68fe1e0a920405fe49a0ea3fdf200971e.tar.gz gcc-7d5f9cc68fe1e0a920405fe49a0ea3fdf200971e.tar.bz2 |
tree-into-ssa.c (REWRITE_THIS_STMT): Define.
* tree-into-ssa.c (REWRITE_THIS_STMT): Define.
(mark_def_sites): Clear REWRITE_THIS_STMT for statements that
don't need any operands rewritten.
(rewrite_stmt): Ignore statements that don't need to be
rewritten.
(rewrite_operand): Validate that an existing SSA_NAME is
identical to the current reaching definition of the operand.
* tree-dfa.c (mark_call_clobbered_vars_to_rename): New function.
* tree-vectorizer.c (vectorizable_load): Call it.
* tree-flow.h (mark_call_clobbered_vars_to_rename): Declare.
* tree-sra.c (mark_all_v_defs): Also mark VUSEs for renaming.
From-SVN: r92010
Diffstat (limited to 'gcc/tree-dfa.c')
-rw-r--r-- | gcc/tree-dfa.c | 15 |
1 files changed, 15 insertions, 0 deletions
diff --git a/gcc/tree-dfa.c b/gcc/tree-dfa.c index 90ff710..d7ccd69 100644 --- a/gcc/tree-dfa.c +++ b/gcc/tree-dfa.c @@ -1032,3 +1032,18 @@ find_new_referenced_vars (tree *stmt_p) { walk_tree (stmt_p, find_new_referenced_vars_1, NULL, NULL); } + + +/* Mark all call-clobbered variables for renaming. */ + +void +mark_call_clobbered_vars_to_rename (void) +{ + unsigned i; + bitmap_iterator bi; + EXECUTE_IF_SET_IN_BITMAP (call_clobbered_vars, 0, i, bi) + { + tree var = referenced_var (i); + bitmap_set_bit (vars_to_rename, var_ann (var)->uid); + } +} |